Terminalで新しいタブを開いてsshを実行するAppleScript
クライアント側でscreen使ってて、サーバ側でもscreen使ってると自分がどのマシンで作業しているのかわからなくなったりする。
有名な記事だけど、ここで紹介されてる、ssh_screenっていうzshの関数を定義しておくと、sshしたときに新しいウィンドウを開いて、そのウィンドウ名をログイン先のホスト名に設定してくれるから便利。なんだけど、ログイン先でもscreen使ってる場合、混乱が起きる。キーバインドの問題だ。
ネットを調べた感じだと、みんな、サーバ毎にscreenのキーバインドを変えることで対処してるみたい。でもぼくは、キーバインドを変えるってことにすごく抵抗があるわけ。
どうしたもんかと悩んでいたら閃いた。LeopardのTerminal.appはタブ機能があるじゃないかと。そこで、新しいタブを開いて、sshを実行してくれるAppleScriptを書いてみた。
インタプリタ?っぽく書いてるけど、事前にコンパイルとかした方がいいんだろうか?AppleScriptはよくわからん。
使い方は、
alias ssh="~/bin/tabbed-ssh"
とでもエイリアス切って、あとは、いつも通りのsshの使い方でok。
話は変わって、今回、AppleScriptを始めて書いたのだけど、これ難しいな。
do script with command cmd in selected tab of the front window
inとかtoとかofとか。まあ、ぼくの英語の前置詞の知識が乏しいんだけなんだけど。あと、theとか意味わかんねー。ちなみに、このtheは省略しても動作するっぽい。冗長なシンタックスシュガーっていう認識でいいの?こんなの始めて。
自然言語に似せたプログラミング言語ってのは、一般の人には易しいのかも知れないけど、プログラマにとってみたら苦痛だよな。