レタスのかわをぜんぶむく

ぜんぶむきます

Vimでctagsを使う、またはMacPortsを入れる

ctags導入

せっかくNERDTreeやminibufexplを導入しても
タグジャンプがなければただの窓付きエディタなので
その弱点を補うためのツール導入。

ctagsでタグファイル作ればタグジャンプ出来るだろと
思ったけど、Macにデフォルトで入っているctagsは使えな
やりたいことが出来ないようなので、ちゃんとしたctagsを入れる。

Exuberant Ctagsを入れると色々捗るらしいのでそれを入れる。
と思って実施したらportコマンド通ってない、ないやんけ…
ということでMacPorts導入。

MacPorts

MacPorts/HomeBrew二大巨塔だと勝手に思っているけど
yumとかapt-getみたいなCUIベースのパッケージマネージャ。
個人的にMacPortsが好きなのでそれを使う。

https://www.macports.org/install.php

事前にXCodeと関連ツール入れてねと言われるので素直に従う。
XCode入れたあとは、MacPorts.pkgを使ってインストール。
お手軽。

多分問題ないけど、MacPorts自体のアップデートも確認する

sudo port selfupdate

ctags

以下のコマンドを実行。パスワードを求められたら入れる。

sudo port install ctags

試しに

$ ctags --version
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
  Compiled: Nov 22 2014, 13:15:05
  Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
  Optional compiled features: +wildcards, +regex

うむ、入っている。

実食

このままだとctags入れるだけマンになるので試そう。
試しにチェックするのはこちら。

github.com

いつの間にか3.0になってたCakePHP
お仕事で使ってた頃は2.x系だった気がする。いや1.xか?
ギッハブの右側からzipでDLしてきて、そのままDownloads内で展開。

ターミナルツールでそのディレクトリまで入っていって

$ctags -R --languages=PHP --langmap=PHP:.php.inc --php-types=c+f+d+v

終わり。
それぞれのパラメータの意味は

-R : ディレクトリ内を再帰的にチェック
--languages=PHP : 言語設定をPHPに
--langmap=PHP:.php.inc : PHPとして認識するファイルの拡張子として .php, .inc を設定
--php-types=c+f+d+v : タグ付けの設定を詳細に設定 (c : クラス, f : メソッド, d : 定数, v : 変数)

このディレクトリでvimを開く。

$ alias mvim="/Applications/MacVim.app/Contents/MacOS/Vim -g"
$ mvim

うまくいけばこうなっているはず。
f:id:uskey:20150814032658p:plain

適当なファイルを開いて(多分今回はbootstrap.php)
エディタ上からCtrl+]で定義元にジャンプ。
戻るときはCtrl+tで元に戻る。

IDEでは当たり前の機能だけど、エディタから利用出来ると
軽さもあいまって使いやすさもひとしお。
これでだいぶ使いやすくなったかな。