概要
こちらの記事のale版です。
https://qiita.com/hidelafoglia/items/7f42b83788acab9a60ba
aleというvimの非同期lintプラグイン上で、
PHP_CodeSnifferというPHPのコード静的解析チェッカーを通す。
そのときのコーディング規約を「PSR-2」とします。
前提条件
下記インストール済み
- vim
- ale.vim
- PHP_CodeSniffer
設定
説明
通常状態だと、aleから、phpcs(PHP_CodeSnifferを呼び出すコマンド)を呼び出してくれないことがあるので、.vimrcでパスを指定。
また、phpcsは複数のコーディング規約でチェックすることが出来るため、どの規約でチェックさせるのかを.vimrcで設定しなければならない。
phpcs確認
zsh
まず、phpcsがどこにあるか確認して下さい。
pearで入れているとこんな感じになります。
$ which phpcs
/Users/ユーザ名/pear/bin/phpcs
次に、現在インストール済みのphpcsが使えるコーディング規約を確認して下さい。
$ phpcs -i
The installed coding standards are MySource, PEAR, PSR1, PSR2, Squiz and Zend
PSR2がなければ、アップデートお願いします。
.vimrc設定
.vimrc
" 今回はglobal設定を想定します。
" phpで使うチェッカーの種類を指定
" デフォルト設定だと、phpcs以外のチェッカーも動いてしまいます。
let g:ale_linters = {
\ 'php': ['phpcs'],
\}
" phpcsコマンドの設定
" どこからphpcsを実行するのか。
" which phpcsの結果を入れます。
let g:ale_php_phpcs_executable = '/Users/ユーザ名/pear/bin/phpcs'
" コーディング規約の指定
" phpcs -i で返ってきた値を使えます。
let g:ale_php_phpcs_standard = 'PSR2'
" グローバルで設定する
let g:ale_php_phpcs_use_global = 1
動作確認
PSR2
PSR2.Classesから呼び出されている!
PEAR
.vimrc
let g:ale_php_phpcs_standard = 'PEAR'
に切り替えて、PEARになるのか動作確認
PEAR.Classesから呼び出されている!
参考
ale/doc/ale-php.txt
https://github.com/w0rp/ale/blob/7086586b1776d2b5f3bf87a7f0c25595a5d7e1b0/doc/ale-php.txt