May 11, 2016

NeovimとNeomakeでGoの文法チェックをする

NeomakeNeovimのjob-controlに対応したSyntasticの代わりとして使えるプラグインです。

パッケージマネージャはdein.vimを使っています。

plugins.tomlに下記を追記します。

[[plugins]]
repo = 'neomake/neomake'
hook_add = '''
  autocmd! BufWritePost * Neomake
'''

plugins_lazy.tomlに下記を追記します。デフォルトではgogolintgovetでのチェックになっていますが、errcheckを追加しています。

[[plugins]]
repo = 'fatih/vim-go'
on_ft = 'go'
hook_source = '''
  let g:go_fmt_command = 'goimports'
  let s:goargs = go#package#ImportPath(expand('%:p:h'))
  let g:neomake_go_errcheck_maker = {
    \ 'args': ['-abspath', s:goargs],
    \ 'append_file': 0,
    \ 'errorformat': '%f:%l:%c:\ %m, %f:%l:%c\ %#%m',
    \ }
  let g:neomake_go_enabled_makers = ['golint', 'govet', 'errcheck']
'''

下記のようにerrcheckの結果が表示されます。

neomake

© Yuya Kusakabe 2011-2022

Powered by Hugo & Kiss.