FuelPHPが自動で生成してくれるコードがPSRに準拠したものではないので、PHP Coding Standard Fixerを使ってある程度自動で直せるようにすることにしました
インストール
導入方法はThe PHP Coding Standards Fixerに書いてあるとおりで、http://cs.sensiolabs.org/get/php-cs-fixer.pharをダウンロードして好きなところに置くだけです
homeディレクトリにインストールする場合
sudo wget http://cs.sensiolabs.org/get/php-cs-fixer.phar -O ~/php-cs-fixer
sudo chmod a+x ~/php-cs-fixer
Vimから実行する
出来るだけ手間を掛けずに使いたいのでVimから実行出来るようにします
これもstephpy/vim-php-cs-fixer · GitHubに書いてあるとおりにやればOK、簡単です
インストール
vimのプラグイン管理はpathogen.vimを使っているのでgit submoduleコマンドでインストールします
git submodule add https://github.com/stephpy/vim-php-cs-fixer.git vimfiles/bundle/vim-php-cs-fixer
設定
$ vim ~/.vimrc
let g:php_cs_fixer_path = "~/php-cs-fixer" " php-cs-fixerをインストールした場所を指定
let g:php_cs_fixer_level = "all" " which level ?
let g:php_cs_fixer_config = "default" " configuration
let g:php_cs_fixer_php_path = "php" " Path to PHP
let g:php_cs_fixer_fixers_list = "" " List of fixers
let g:php_cs_fixer_enable_default_mapping = 1 " Enable the mapping by default (<leader>pcd)
let g:php_cs_fixer_dry_run = 0 " Call command with dry-run option
let g:php_cs_fixer_verbose = 0 " Return the output of command if 1, else an inline information.
nnoremap <silent><leader>pcd :call PhpCsFixerFixDirectory()<CR>
nnoremap <silent><leader>pcf :call PhpCsFixerFixFile()<CR>
これで完了です
コーディング規約に合わせた修正を行いたいファイルを開き[¥pcf]を押せば修正されます
FuelPHPが自動生成したファイルに実行してみるとこんな感じになります
PHP Coding Standard Fixer · 54b6cfe · nobuhiko/mylogbook · GitHub
class名、classの{}の位置、if文の{}の位置、などが修正されました
意識してコーディング規約に合わせるのは手間がかかる作業なので自動化出来るのはとても助かりますねヽ(´ー`)ノ
コメント