¿Abrir la nueva ventana / pestaña Terminal.app con un perfil determinado desde la línea de comandos o AppleScript?

6

Cuando inicio sesión en mi Mac, quiero abrir automáticamente una nueva ventana de Terminal.app con un perfil determinado, por ejemplo, Monitor , que tiene un comando de inicio y varias configuraciones de apariencia. Pensé que sería muy fácil hacerlo desde AppleScript o desde la línea de comandos (a través de osascript ), así que puedo agregar un script a mis elementos de inicio de sesión, pero resulta que esto no es tan trivial después de varios intentos.

Mi mejor manera actual es el siguiente AppleScript:

tell application "Terminal"
    set origSettings to default settings
    set default settings to settings set "Monitor"
    activate
    tell application "System Events" to keystroke "n" using command down
    set default settings to origSettings
end tell

Sin embargo, quiero saber si hay una forma más sencilla de hacerlo sin depender de los scripts de UI (con los Eventos del Sistema) o de jugar con el default settings de mi Terminal.

applescript (osascript) para cambiar el perfil de Terminal.app parecía prometedor, pero es para cuando ya hay una ventana de Terminal abierta . No tengo idea de cómo crear una nueva pestaña o ventana de Terminal con su current settings especificado. El comando do script , que crea una nueva ventana, desafortunadamente ignora el conjunto de comandos de inicio en el perfil, haciéndome recurrir a los scripts de UI.

También encontré este script: enlace que nuevamente se basa en la interfaz de usuario scripting Debido a que algunas de mis máquinas utilizan una configuración regional que no es en inglés, prefiero seguir las pulsaciones de teclas en lugar de las etiquetas de menú.

    
pregunta netj 02.03.2014 - 22:29

2 respuestas

1

Es posible que me falte el punto, pero ¿no puede exportar el perfil como un archivo .terminal y agregarlo a sus elementos de inicio de sesión?

Exportar:

Agregueelarchivoexportadoaloselementosdeiniciodesesión:

    
respondido por el beroe 05.09.2014 - 08:34
2

¿Puedes ejecutar el comando de inicio con do script ?

tell application "Terminal"
    do script "emacs"
    set current settings of selected tab of window 1 to settings set "Grass"
end tell

Si alguien más no necesita ejecutar ningún comando de inicio, puedes usar do script "" para abrir una nueva ventana:

tell application "Terminal"
    do script ""
    set current settings of selected tab of window 1 to settings set "Grass"
end tell

O también puedes usar do script "" al cambiar default settings :

tell application "Terminal"
    set old to default settings
    set default settings to settings set "Grass"
    do script ""
    set default settings to old
    activate
end tell
    
respondido por el user495470 03.03.2014 - 22:13

Lea otras preguntas en las etiquetas