답변:
이것을 자동화하는 정말 칙칙하고 버그가있는 방법이 있지만 어쨌든 게시 할 것입니다.
iTerm2의 환경 설정 (프로필 패널)에서 새 프로필을 생성 할 수 있습니다. "LargeFont"라고 부르겠습니다. ⌘ = 를 눌러 기본 복제본에서 복제 할 수 있습니다 .
새로 만든 프로필의 텍스트 창에 표시 할 글꼴 크기를 설정하십시오.
이제 트릭이 있습니다. AppleScript를 사용하여 글꼴 크기 또는 터미널 세션의 프로파일을 변경할 수는 없지만 (적어도 방법을 찾지 못했습니다) AppleScript를 사용하여 모든 세션에서 명령을 실행할 수 있으며 iTerm2에는 사용자 정의 이스케이프 시퀀스가 있습니다. 세션의 프로파일 변경을 지원합니다 echo
.
따라서 다음을 실행할 수 있습니다.
echo -e "\033]50;SetProfile=LargeFont\a"
열린 모든 세션에서 터미널의 프로필을 "LargeText"로 변경하십시오.
이제 AppleScript를 사용하여 열린 모든 세션의 실행을 자동화 할 수 있습니다.
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
각 세션에 텍스트를 문자 그대로 기록하므로 탭 중 하나에서 일부 텍스트 편집기를 열면 작동하지 않으며 코드 / 구성 파일에 echo 명령을 붙여 넣습니다. 대신에. 탭 중 하나에서 ping 명령을 실행중인 경우 작동하지 않습니다.
쉘에서 실행중인 대화식 항목이 없는지 확인해야합니다.
쉘 히스토리에 이러한 명령이 남아 있습니다. 명령 앞에 공백 (예 echo -e ...
:) 을 추가하여이를 무시할 수 있습니다 . 이것은 적어도 zsh에서 작동합니다.
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"
}
따라서 다음과 같이 사용할 수 있습니다.
iterm_change_profile LargeFont
또한 큰 글꼴이있는 프로파일에서 작은 글꼴로 프로파일을 변경하면 iTerm의 창이 크기가 크게 조정되는 단점이 있습니다.
그러나 다시 말하지만, 정말 칙칙한 방법입니다.