emacsでタグジャンプ

先輩に教えてもらって、とても便利だったので公開します。
フレームワークsymfonyに触れてから1ヶ月以上経ちますが、実際の仕事に入ると、先日行っていたaskeetチュートリアルの内容とは比べ物にならない量のロジックやファイルを作っていくことになります。関数を見て、「あれ、これどこで定義してたんだっけ」と困ったときに、このタグジャンプを使うと簡単に関数定義場所に飛んでくれるので役立ちます。

この手順はphp用のパッチを当てる方法です。

ctagsのインストール

$ wget http://kent.dl.sourceforge.net/sourceforge/ctags/ctags-5.6.tar.gz
$ tar -xvf ctags-5.6.tar.gz
$ wget http://svn.bitflux.ch/repos/public/misc/ctags-php5.patch
$ mv ctags-php5.patch ctags-5.6

パッチを当てる

$ cd ctags-5.6
$ patch php.c ctags-php5.patch

コンパイルの設定

$ ./configure –prefix=”/”
$ make
$ make install
$ make clean

無事インストールされましたら次にTAGSファイルを作ります

symfonyプロジェクトのホームディレクトリにmake_tagsというファイルをつくります

make_tagsの中身は

/bin/ctags -e -R –langmap=PHP:.php.inc –php-types=c+f
/symfony_project_home_dir
/bin/ctags -a -e -R –langmap=PHP:.php.inc –php-types=c+f
/pear_dir/symfony

とします。
/symfony_project_home_dirと
/pear_dir/symfony
は自分の環境に合わせて書き換えます。

これでmake_tagsを実行すれば、完了です。

タグジャンプを行うには、関数の定義場所を知りたい関数にカーソルを合わせ、
M-.
で実行できます。
最初の実行ではファイルの場所を聞かれますが、これはプロジェクトのホームディレクトリを指定すればok。
次回からは楽々ジャンプ。

これでいちいちファイルを探っていくストレスをdelete!

1 件のコメント so far »

  1. by スタートアップ研修記 » emacs、とあるファイルの文字コードが変だったので調べてみた, on 10.31.08 @ 3:04 PM

     

    [...] もしかしたら私の前に相談していた先輩が解決したかもしれない!と思い聞きにいってみたのですが、まだ未解決とのこと。 なのでこれは探すしかないとググっていると、一部を聞いていた別の先輩が上記のサイトを発見して教えてくれました! どうやらauto-coding-functionsの所為だったみたいですね。 上記の設定をしてあげると、見事文字化けせずにファイルを読み込むことができました! 私はemacsを使って仕事をしているので、とても助かりました。 しかし設定ファイルに設定を書くたびにemacsの愛着度が増しますね(笑) ちなみに先日はタグジャンプの設定もしてみました♪これからもemacsと共に成長しながら仕事や勉強を頑張っていきたいと思います! [...]

Comment RSS · TrackBack URI

コメントをどうぞ

名前: (Required)

eMail: (Required)

Website:

Comment:

Spam Protection by WP-SpamFree