Новая вкладка в iTerm2
Я использую версию Iterm2 Build 3.0.4 Я хочу создать псевдоним, чтобы открыть новую вкладку из командной строки (в bash) Я попробовал этот код:
function tab () {
osascript &>/dev/null <<EOF
activate application "iTerm"
tell application "System Events" to keystroke "t" using command down
tell application "iTerm" to tell session -1 of current terminal to write text "pwd"
EOF
}
но это не работает. Кто-нибудь может решить проблему с этой версией (или более новой версией)?
2 ответа
iTerm2 v3 обладает значительно улучшенной поддержкой AppleScript, поэтому теперь вы можете создавать вкладки напрямую, без необходимости нажатия клавиш:
tab() {
osascript &>/dev/null <<EOF
tell application "iTerm"
activate
tell current window to set tb to create tab with default profile
tell current session of current window to write text "pwd"
end tell
EOF
}
Чтобы разделить новую вкладку по горизонтали (как вы могли бы получить, нажав addD), добавьте:
tell current session of current window to split horizontally with same profile
Написать pwd
на новый сеанс, созданный разделением (нижняя половина новой вкладки):
tab() {
osascript &>/dev/null <<EOF
tell application "iTerm"
activate
tell current window to set tb to create tab with default profile
tell current session of current window to set newSplit to split horizontally with same profile
tell newSplit
select
write text "pwd"
end tell
end tell
EOF
}
Чтобы просмотреть доступные команды AppleScript iTerm2, откройте Script Editor.app
, Выбрать File > Open Dictionary...
, а потом iTerm.app
,
Также рассмотрим мой ttab
CLI, который упаковывает создание вкладок / окон вместе с расширенными функциями для обоих Terminal.app
а также iTerm2.app
(но он не поддерживает разбиение вкладки).
tell application "iTerm"
activate
tell current window to create tab with default profile
tell session of current tab of current window
select
write text "pwd"
end tell
конец скажи