phpfolding.vimでPHPのメソッドを折りたたむ

2012年8月19日

Vim

Vimには標準で、let php_folding=1 という設定があります。

この設定はクラスやメソッドの折りたたみが有効になり便利なのですが、neocomplecacheとの相性が良くないようで、設定すると補完が非常に遅くなることがあります。私の環境では、メソッド名の編集時に補完が遅くなることが多いです。

neocomplecacheの補完速度を優先させるため、let php_folding=1 は使用せずに運用していましたが、折りたたみがないとやはり不便です。

今回紹介するphpfolding.vimプラグインは、PHPのメソッドやPHPDocを折りたたむプラグインです。neocomplecacheとの相性も良いようで、補完速度に影響を感じることはありません。

動作確認環境

  • Vim7.3

目次

  1. インストール
  2. .vimrc
  3. 使い方

インストール

phpfolding.vimはgithubからダウンロードします。pathogen,Vundle系プラグインを使用されている方は、~/.vim/bundle 以下に配置します。ちなみに私はneobundleを使用しています。neobundleのインストール方法はこちら

cd ~/.vim/bundle
git clone https://github.com/everzet/phpfolding.vim.git

.vimrc

.vimrcなどで let php_folding=1 を設定している方は設定を削除して無効にしておきます。

phpfolding.vim は、filetype が php のファイルしか折りたたみません。filetype が php 以外のファイルに折りたたみを適用したい場合、下記のように設定します。

augroup vimrc
  autocmd FileType phpunit EnableFastPHPFolds
augroup END

使い方

phpfoldingはインストールすると自動で有効になり、PHPファイルを開いた際にメソッドが折りたたまれます。
下記のキーで折りたたみを制御できます。よく使用するものだけ抜粋します。詳細は :help fold-commands を参照してください。

zo
カーソルの下の折畳を一段階開く。

zO
カーソルの下の折畳を再帰的に全て開く。

zR
全ての折畳を開く。

zc
カーソルの下の折畳を一段階閉じる。

zC
カーソルの下の折畳を再帰的に全て閉じる。

zM
全ての折畳を閉じる。

-技術ブログ
-