Domanda

Ho uno script utente che sarebbe molto più utile se potesse modificare dinamicamente parte della sua esecuzione in base a ciò che l'utente desiderava.Passare semplici interruttori risolverebbe facilmente questo problema ma non vedo alcun modo per farlo.

Ho anche provato a incorporare una parola chiave nel nome dello script, ma Xcode copia lo script in un nome file dall'aspetto guid prima dell'esecuzione, quindi non funzionerà neanche questo.

Quindi qualcuno conosce un modo per chiamare uno script utente con una sorta di argomento?(a parte il normale %%%var%%% variabili)


MODIFICARE:

Gli script utente sono accessibili tramite il menu script nella barra dei menu di Xcode (tra i menu Finestra e Guida).La mia domanda non riguarda gli script della fase di compilazione "esegui script".Mi scuso per aver lasciato la cosa un po' ambigua.

È stato utile?

Soluzione

Non puoi passare parametri agli script utente: invece, gli script utente operano sul contesto in cui stai lavorando (ad es.il file selezionato, il testo selezionato, ecc.).

Dovresti utilizzare il contesto per determinare cosa vuole veramente l'utente.

Altri suggerimenti

Gli script utente sono accessibili tramite il menu script nella barra dei menu di Xcode (tra i menu Finestra e Guida).Non sapevo come altro chiamarli.Ciò che sto chiedendo non sono script di fase di compilazione "esegui script".

Suppongo che potresti fare qualcosa del genere:

#!/bin/bash
result=$( osascript << END
tell app "System Events"
  set a to display dialog "What shall be the result?" default answer ""
end tell
return text returned of a
END
)
# do stuff with $result

Sono presenti script di utilità integrati che consentono di richiedere all'utente e acquisire la risposta.

È possibile, ad esempio, richiedere una stringa e quindi eseguire una determinata attività in base a essa.

Il prompt della stringa è:

STRING = `%%%{PBXUtilityScriptsPath}%%%/AskUserForStringDialog "DefaultString" "DefaultWindowName"`

Se noti, stai semplicemente chiamando un applescript che hanno scritto utilizzando un percorso statico.Potresti scrivere la tua finestra di dialogo AppleScript e posizionarla lì se lo desideri e ignorare la necessità della ingombrante sintassi osascript.Ce ne sono altri (per file, cartelle, applicazioni, ecc.)

Documentazione sugli script utente

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top