私の開発環境
こんにちは、お昼ご飯担当の熊谷です。今日のお昼ご飯は学食にてピラフセットなるものを食べました。見た目はハヤシライス、味は普通でした。しかし、思えばここ久しくスパイシーチキンを食べておりません。もうスパイシーチキンは卒業したと思っている私ではあるのですが、何かをきっかけにまた戻ってしまうような気がしないでもありません。ここだけの話、時々あの味が恋しくなります。
さて、今回は私の現在の開発環境を紹介したいと思います。紹介というほど珍しいもの等は使用していませんで極々一般的なものしか使用していないのでつまらないかもしれませんが、まあネタということで。
1. PuTTY(sshクライアント)
2. GNU Screen
3. Vim
4. Subversion
以上4つ、私にとっては最低限必要なものです。
まずPuTTYですが、Windowsでは定番のSSHクライアントソフトです。メインな環境をLinuxやMacにしてしまいたい気持ちは十二分にあるのですが、あんなにがんばってインストールしたUbuntuはVAIO type TZではパワーマネージメント関係がまだ不十分でファンコントロールがうまくいかないので常用できないし、MacはMacで小さいノートが発表されないし、そんなことでなんだかんだいいながらWindowsを使っています。そんなことでPuTTYは必須です。同じようなものでPoderosaもあるわけですが、こちらは256colorに対応していないので見た目重視な私には残念ながら使えません。
ちなみに、使用しているのはPuTTY ごった煮版です。
次にGNU Screenです。これは仮想端末マネージャと呼ばれるもので、一つの端末内で複数の端末をエミュレートできるものです。Poderosaのようにタブで端末を管理していくものであればこういったものは必要ないかもしれませんが、とにかく一度使えばその便利さが実感できると思います。 複数の端末を切り替えることはもちろん、セッションの維持、画面分割等々便利な機能がそろっています。私的に一番重要なのはセッションの維持で、突然ネットワークが切れたとしても「screen -dR」とか打つと切れる前の状態に復帰することができます。これはものすごく便利。
.screenrc(設定ファイル)はというと、あちこちからコピペし編集して、今現在は以下のようになっています。
startup_message off
attrcolor b ".I"
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
term xterm-256color
defbce "on"
defscrollback 3000
msgminwait 0
hardstatus alwayslastline "[%Y-%m-%d %c] %`%-w%{=b bw}%n %t%{-}%+w $STY"
bind r eval 'echo "Resize window"' 'command -c resize'
bind -c resize ^] command
bind -c resize j eval 'resize +1' 'command -c resize'
bind -c resize k eval 'resize -1' 'command -c resize'
bind . next
bind , prev
bind w windowlist -b
bind ^w windowlist -b
vbell off
ちなみに、256colorに対応させるには--enable-colors256でコンパイルするのを忘れずに。
次にVim。これは定番のエディタですね。元々私はemacs派、Windowsではxyzzyを使用していました。しかし、ssh経由でVimを仕方なく使用しているうちにVimを使用するようになりました。しかし、使いこなしているかというとまだ全然だめなお子様です。最近、ようやくhjklでカーソルを移動するようになってきました(まだカーソルキーの使用率の方が多いですが。。。)。
ちなみ、使用しているpluginで欠かせないのはminibufexpl.vimです。これは現在使用しているバッファを画面上部にリスト表示してくれます。各バッファをタブのように切り替えることができます。Vim7からはタブに対応しているわけですが、私的にはこちらの方が使い勝手が良いです。
そして、最後にSubversionです。いうまでもなくソースコード等を管理するバージョン管理システムです。各プロジェクトのソースコードはもちろんのこと、.vimrcや.screenrcといった各ドットファイル(いわゆる設定ファイル)もこれで管理しています。自分のサーバにリポジトリを作成して作業環境でチェックアウト。どの環境でもすぐ私好みの設定で開発(操作)できます。
以上が私の開発環境になります。実はこの他にもシェルとしてzshを使っているのですが、まだ全然使いこなせていないので今回は省略しました。究極のシェルともいわれているzsh、今度はこれを使いこなせるようにがんばりたいです。