Existe uma maneira realmente ruim e de buggy de automatizar isso, mas eu publicarei de qualquer maneira.
Você pode criar um novo perfil nas preferências do iTerm2 (o painel Perfil). Vamos chamá-lo de "LargeFont". Você pode cloná-lo do padrão pressionando ⌘ = .
Defina o tamanho da fonte que você deseja exibir no painel de texto do perfil recém-criado.
Agora, aqui está o truque. Você não pode alterar o tamanho da fonte ou o perfil das sessões do terminal usando o AppleScript (pelo menos não encontrei uma maneira), mas você pode executar comandos em todas as sessões usando o AppleScript, e há uma sequência de escape personalizada no iTerm2 que suporta alteração de perfis para a sessão em que foi echo
editado.
Então, você pode executar isso:
echo -e "\033]50;SetProfile=LargeFont\a"
em todas as sessões abertas para alterar o perfil do terminal para "LargeText".
Agora podemos usar o AppleScript para automatizar a execução de todas as sessões abertas:
tell application "iTerm"
repeat with theTerminal in terminals
tell theTerminal
repeat with theSession in sessions
tell theSession
write text "echo -e '\\033]50;SetProfile=LargeText\\a'"
end tell
end repeat
end tell
end repeat
end tell
Observe que ele apenas grava o texto (literalmente) em cada sessão, portanto, se você tiver algum editor de texto aberto em uma das suas guias - ele não funcionará e colará o comando echo no seu arquivo de código / configuração em vez de. Se você tiver um comando ping em execução em uma das guias - ele também não funcionará.
Você deve se certificar de que não haja nada interativo em execução em nenhuma das suas conchas.
Você também terá esses comandos no histórico do seu shell. Você pode ignorá-lo adicionando um espaço antes do próprio comando (como echo -e ...
), isso funciona pelo menos no zsh.
Aqui está a função zsh:
function iterm_change_profile() {
osascript -e "
tell application \"iTerm\"
repeat with theTerminal in terminals
tell theTerminal
repeat with theSession in sessions
tell theSession
write text \" echo -e \\\"\\\\033]50;SetProfile=$1\\\\a\\\"\"
end tell
end repeat
end tell
end repeat
end tell"
}
Então você pode usá-lo assim:
iterm_change_profile LargeFont
Também há uma desvantagem: quando você altera o perfil de fonte com fonte maior para fonte menor, a janela do iTerm é redimensionada significativamente.
Mas, novamente, é uma maneira realmente de merda.