エディタと言えば私は長らく Emacs を使っているわけですが、「やはり他の環境ももっと使ってみなければ!」と強く感じているので、重い腰を上げて他のエディタを使う準備をすることにした。
Emacs から離れられない大きな理由の 1 つが Tramp で、ssh 越しに遠隔地のファイルを編集することが多い私には欠かせない逸品。 しかし、こういう機能を持ったエディタは他に知らないので、これ自体が足かせになるわけで… まずはこの機能の代替品探しから始めることに。
インストール
リモートのファイルが手元にあるように見えれば、どのエディタを使っても良いことになる。
そこで、sshfs
をまずは試してみることに。
Mac 用について調べてみたところ、下記をインストールすればよさげ。
このページにある OSXFUSE, SSHFS パッケージをダウンロードしてインストール。 特に問題なくインストール完了。
試してみる
手近な ssh ログインできるホストで試してみる。
mkdir ~/mnt
sshfs host:/path/to/dir ~/mnt
ls -l ~/mnt
ファイルリストが表示された。
使い終わったら普通に umount すれば接続解除される。
umount ~/mnt
多段 ssh
踏み台を踏んだ先にあるファイルを編集するため、多段 ssh の設定を行う。
~/.ssh/config
に下記の設定を追加。
Host remote-host
ProxyCommand ssh gateway-host nc %h %p
ServerAliveInterval 15 # タイムアウトさせないための設定
接続するときは下記のように指定する。
sshfs -o reconnect remote-host:/path/to/dir ~/mnt
上記のコマンドをエイリアス登録などしておけば OK。 これでリモートのファイルを普通に編集できるようになった。