A resposta anterior não funciona mais na última versão do iTerm2 (3), pois terminal
foi descontinuado. A nova abordagem é usar create window with profile
.
No entanto, isso não funciona como esperado: enquanto o iTerm estiver em execução, ele abrirá a nova janela usando o perfil apropriado. Mas se o iTerm não estiver sendo executado, ele abrirá uma janela usando o perfil padrão e, em seguida, abrirá a segunda janela com o outro perfil fornecido. Eu criei o seguinte script para resolver isso:
-- this script will start/activate iTerm (close the default window if the app had been newly started), then open a new session with a desired profile
on is_running(appName)
tell application "System Events" to (name of processes) contains appName
end is_running
set iTermRunning to is_running("iTerm2")
tell application "iTerm"
activate
if not (iTermRunning) then
delay 0.5
close the current window
end if
create window with profile "xxxxxx"
end tell
Claro, teria sido muito fácil se o iTerm suportasse parâmetros de linha de comando. Espero que ele em algum momento .