Yak shaving logs


My life is just yak shaving.

シンタックスをチェックしてくれるvim-syntasticをvimに導入する

2017/04/23 #vim #vim-syntastic #ruybocop #vimrc

By Yusuke Takita


こんにちは。Takitaです。

開発マシンを新しくしてvimrcなどの設定を見直したのでvim-syntasticの設定をまとめておきます。
前は scrooloose/syntastic だったのですが、最近リポジトリ名が変わったのかな?

vim-syntastic

シンタックスをチェックしてくれるvimプラグインです。
さまざまな拡張子のファイルに対応しています。

install

ぼくは dein.vim でプラグインを管理しており、
.dein.toml にプラグインを記載してそこを vimrc からロードする、
といった感じでプラグインを管理しているので .dein.toml に以下を記載します。

[[plugins]]
repo = 'vim-syntastic/syntastic'

vim-syntasticの設定

基本的に README に沿って設定します。
READMEと違うのはシンタックスチェックをする対象ファイルの設定と、エラー/ワーニング時のマークです。
エラー/ワーニング時のマークのデフォルトは、 >> な感じになっているので、ばってんとワーニングマークにしています。

マークについてはここを参考にさせてもらいました。

" --------------------------------
" syntastic
" --------------------------------
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*

let g:syntastic_always_populate_loc_list = 0
let g:syntastic_auto_loc_list = 0
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

let g:syntastic_mode_map = { 'mode': 'active', 'active_filetypes': [
  \ 'ruby', 'javascript','coffee', 'scss', 'html', 'haml', 'slim', 'sh',
  \ 'spec', 'vim', 'zsh', 'sass', 'eruby'] }

let g:syntastic_javascript_checkers=['eslint']
let g:syntastic_coffee_checkers = ['coffeelint']
let g:syntastic_scss_checkers = ['scss_lint']
let g:syntastic_ruby_checkers = ['rubocop']

let g:syntastic_error_symbol='✗'
let g:syntastic_style_error_symbol = '✗'
let g:syntastic_warning_symbol = '⚠'
let g:syntastic_style_warning_symbol = '⚠'

rubyのチェックは rubocop にする

こういう感じでrubyのシンタックスチェックはrubyでやると一行設定を入れてやればOKです。

let g:syntastic_ruby_checkers = ['rubocop']

新しいマシンにしてシステムにrubocopを入れてなかったので( いつも bundle install --path vendor/bundle してるので )、なかなかrubocopのチェックが気がずに困りましたが、普通に gem install cubocop すれば動くようになりました。

syntasticmodemapできるファイルの一覧が見たい

少しググったけどなさそうです。
ソースを見る限り、以下のディレクトリにあるものはチェックできそうなので、
必要なものがあればここを確認して vimrc に入れると良いでしょう。

https://github.com/vim-syntastic/syntastic/tree/master/syntax_checkers

設定するとこんな感じになります

https://gyazo.com/fd6b8ff26213a57183a6f700412af45c


2017/10/31 hamlのシンタックスチェッカーの入れ方について別の記事に記載しました。
vim-syntasticにhaml-lintを入れてhamlのシンタックスチェックをする

このエントリーをはてなブックマークに追加

categories


最新記事


tags