何か不可解な挙動に遭遇した時にソースを参照する、ということはよくやるのですが、そういう頻繁に発生するタスクは効率よくこなしたいものです。
まず、私の場合は参照するソースは FreeBSD の ports システムが /usr/ports に展開されています。インストールするものは大抵 ports 経由となっています。
例えば PostgreSQL のソースを参照したい場合は
% cd /usr/ports/databases/postgresql83-server
% sudo make patch
% cd `make -VWRKSRC`
という手順で、ソースの展開されたディレクトリに移動できます。ソースファイルが手元になければ make patch の部分で勝手に外から取ってきます。
実際には、三行目は pushd make -VWRKSRC とディレクトリスタックに積むようにしてあり、さらに pdw というエイリアスを作って楽をしています。
あとは、grep(1) なり ack なりで、ソースの探索を開始! というわけ。

コメントする