iTerm2の別ウィンドウで新しいtmuxセッションを開始するには?

iTerm2の別ウィンドウで新しいtmuxセッションを開始するには?

iTerm2の別ウィンドウでtmuxセッションを開始したいと思います。これで、セッションを開始するための独自の構成スクリプトを作成しています。

tmux new-session -s dev -n main -d
tmux send-keys -t dev "cd $DL" C-m
tmux split-window -h -t dev
tmux split-window -v -t dev -p 30
tmux resize-pane -x 70 -y 20
tmux attach -t dev

これで新しいセッションが開始されますが、ウィンドウはiTerm2の新しい独立したウィンドウではなく、スクリプトを実行するウィンドウにあります。

そのため、tmux new-session -s dev -n main -d最初の行()をに変更しましたが、tmux -CC new -t devセッションが新しいウィンドウで開始されても分割とサイズ変更はできませんでした。新しいウィンドウで新しいセッションを開くようです。

ディレクトリの変更、ウィンドウの分割など、すべての初期設定を新しいウィンドウで起動するにはどうすればよいですか?

ベストアンサー1

AppleScriptを使用すると、次のことができます。

$ cat a.bash
#!/bin/bash
osascript - "$@" <<EOF
on run argv
tell application "iTerm"
    activate
    set new_term to (create window with default profile)
    tell new_term
        tell the current session
            repeat with arg in argv
               write text arg
            end repeat
        end tell
    end tell
end tell
end run
EOF

これは、引数を別のiterm2端末に渡すスクリプトを提供します。

たとえば、

$ ./a.bash "echo 'hello iterm2'"

   iterm2によって開始されたss

引用する

おすすめ記事