Web系エンジニア必須の環境設定 <その2>ssh接続 は全てsshrc
移転しました。
前回の続き。
週に1度でもサーバーにssh接続して作業するなら生のsshを使わずにsshrcにしましょう、と。普通にsshをするとvimの設定なんかの全ての設定がサーバーの設定に依存する。vimでサーバーファイルを編集していて、いつものキーバインドを使っても「アレ?効かない!」なんてことが少なからずイラっとさせる。
これを解消するのがsshrc。sshした際に手元の管理ファイルをサーバー側で一旦読み込んでくれる。抜ければ元に戻る。サーバー側の設定を一切汚さずに自分好みの設定ができるという優れもの。
いちいちサーバー側にGitHubに入れたdotfilesをcloneして使う、とやる例を見たことあるけど、面倒臭過ぎるだろそれ。
設定環境:MacOS
公式ページ
github.com
インストール方法
$ brew install sshrc
終わり。
設定ファイルを作る。
vimrc以外にもいろいろ読み込む場合に備えてsshrc用のフォルダを作ってそこに全てのsshrc設定を入れ込む。ただし64kb以上を入れ込むとブロックされるのでご注意を。
$ cd $ mkdir ~/.sshrc.d $ cp .vimrc ~/.sshrc.d/.vimrc $ vim ~/.sshrc.d/.vimrc いろいろ編集する
コピーしたファイル.sshrc.d/.vimrcの中身を編集してサーバーに持って行きたい設定だけにする。例えばキーバインドの設定だけを残してNeoBundleとかは全て削除する、とか。いちいちサーバーに接続した先のカラースキームまで気にしないわ、とお考えならその設定を削った方がいい。
これでsshrcをした際にsshrc.d配下のvimrc が読み込まれる。
.sshrcファイルを作る。
$ cd $ vim .sshrc
.sshrcの中身に以下を貼り付けて保存する。
export VIMINIT="let \$MYVIMRC='$SSHHOME/.sshrc.d/.vimrc' | source \$MYVIMRC"
これで設定は終わり。
サーバーに接続して設定が読み込まれるか確かめる。コマンドはsshrc
$ sshrc my_name@myserver.com
しょうもないストレス無し!快適!であればaliasに設定してsshすればいつでもsshrcとなるようにする。
alias ssh='sshrc'
以上です。