Está bien, he descubierto una solución:
Para establecer el tema del terminal mediante programación, debe escribir en las preferencias de su sistema. Así que la forma más sencilla que encontré para hacer esto fue extraer las preferencias de usuario de un mac existente primero. Esto supone que ya ha importado su archivo .terminal
a los perfiles de la Terminal en su máquina existente. Entonces, primero en el mac existente, debes ejecutar el siguiente (Mi tema se llama Material-Tema, reemplaza esa parte por la tuya) :
plutil -extract Window\ Settings.Material-Theme xml1 -o - ~/Library/Preferences/com.apple.Terminal.plist > theme.xml
Esto creará un archivo theme.xml
para que lo uses en tu script. Lo siguiente es editar un poco el archivo. Esto podría ser automatizado, pero si eres como yo solo necesitas hacer esta parte una vez, así que lo hice manualmente. Abra el archivo y elimine el xml circundante en la parte superior e inferior para que solo tenga el dictado, el mío se parecía a esto para referencia: enlace .
Ahora, en su script en la nueva máquina, puede ejecutar lo siguiente para insertar este tema en sus preferencias de usuario:
theme=$(<theme.xml)
plutil -replace Window\ Settings.Material-Theme -xml "$theme" ~/Library/Preferences/com.apple.Terminal.plist
defaults write com.apple.Terminal "Default Window Settings" -string "Material-Theme"
defaults write com.apple.Terminal "Startup Window Settings" -string "Material-Theme"
Ahora, después de ejecutar lo anterior, cuando cierras completamente la aplicación Terminal y la reinicias, tu tema debería ser el predeterminado. ¡Este proceso probablemente se puede mejorar pero esto funcionó para mí!
Tenga en cuenta que es posible que también desee ejecutar defaults read com.apple.Terminal
y comprobar si hay otras claves que sean relevantes para su tema. En mi caso, encontré "NSWindow Frame TTWindow Material-Theme" = "0 327 640 450 0 0 1280 777 ";
, así que mi script incluye esto también como defaults write com.apple.Terminal "NSWindow Frame TTWindow Material-Theme" -string "0 327 640 450 0 0 1280 777 "