ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

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'

以上です。

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com