Pregunta

Tengo una secuencia de comandos de usuario que sería mucho más útil si pudiera cambiar dinámicamente parte de su ejecución dependiendo de lo que quiera el usuario.Pasar interruptores simples resolvería fácilmente este problema, pero no veo ninguna forma de hacerlo.

También intenté insertar una palabra clave en el nombre del script, pero Xcode copia el script a un nombre de archivo con apariencia de guía antes de la ejecución, por lo que tampoco funcionará.

Entonces, ¿alguien conoce alguna forma de llamar a un script de usuario con algún tipo de argumento?(aparte de lo normal %%%var%%% variables)


EDITAR:

Se puede acceder a los scripts de usuario a través del menú de scripts en la barra de menú de Xcode (entre los menús Ventana y Ayuda).Mi pregunta no es sobre los scripts de la fase de compilación "ejecutar script".Mis disculpas por dejar eso un tanto ambiguo.

¿Fue útil?

Solución

No puede pasar parámetros a los scripts de usuario; en cambio, los scripts de usuario operan en el contexto en el que está trabajando (p. ej.el archivo seleccionado, el texto seleccionado, etc.).

Debe utilizar el contexto para determinar lo que el usuario realmente quiere.

Otros consejos

Se puede acceder a los scripts de usuario a través del menú de scripts en la barra de menú de Xcode (entre los menús Ventana y Ayuda).No estaba seguro de cómo llamarlos.Lo que estoy preguntando no son scripts de fase de compilación de "ejecutar script".

Supongo que podrías hacer algo como esto:

#!/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

Hay scripts de utilidad integrados que le permiten avisar al usuario y capturar la respuesta.

Podría solicitar una cadena, por ejemplo, y luego, en función de ella, realizar una determinada tarea.

El mensaje de cadena es:

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

Si te das cuenta, simplemente estás llamando a un Applescript que escribieron usando una ruta estática.Puede escribir su propio cuadro de diálogo de AppleScript y colocarlo allí si lo desea y evitar la necesidad de una engorrosa sintaxis de osascript.Hay otros (para archivos, carpetas, aplicaciones, etc)

Documentación de scripts de usuario

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top