pythonのパッケージ管理に引き続き、 開発環境設定を進めてみる。
pythonのコード規約がわかっていないので、
規約を覚える意味でもプラグイン導入してみる。
導入は必須に近いツールな気がするが。。
以下を導入してみます。
コード解析ツール(flake8, flake8-vim)
pythonパッケージ
$ pip3 install flake8
vimパッケージ
.vimrcのNeoBundleのプラグイン記載部分に追記。
設定は以下ブログの設定を頂きました。
Vimメモ : flake8でPythonのコードをチェックする - もた日記
" python 構文エラーの検出 NeoBundle 'andviro/flake8-vim' "------------------------- " [python] vim-flake8 "------------------------ autocmd BufWritePost *.py call Flake8() " 保存時にチェックする let g:flake8_quickfix_location="topleft" " Quickfixの位置 let g:flake8_quickfix_height=7 " Quickfixの高さ let g:flake8_show_in_gutter=1 " 左端にシンボルを表示 let g:flake8_show_in_file=1 " ファイル内にマークを表示
コード解析によるエラーコード参考URL
Introduction — pycodestyle 2.4.0 documentation
Error / Violation Codes — flake8 3.5.0 documentation
コード解析関連ツール(autopep8, vim-autopep8, ale)
コード解析エラーを一部自動修正するプラグイン(tell-k/vim-autopep8)と コード解析結果をコード修正中にも非同期に反映させてくれる(w0rp/ale) も導入する。使って見てまた、変えるかもしれないけど。
pythonパッケージ
$ pip3 install autopep8
vimパッケージ
.vimrcのNeoBundleのパッケージ記載部分にに以下を追記
NeoBundle 'tell-k/vim-autopep8' NeoBundle 'w0rp/ale'
非同期チェックの方は、Lintツールが正しく設定してあれば、 インストールのみでうまく動作するみたい。
プラグイン導入までに試したこと
Flake8-vimをインストールしてみる
Flake8-vimというflake8-vimと同じようなプラグイン(作者は同じ)
をいれてみたが、vimを開いた時点で以下のエラーが出力されてしまい、
うまく動作せず。
error: PyFlake.vim required vim compiled with +python
vimではpython3を使いたいのにpython2を使ってね。
と言われて、詰んだ。
githubをみたら、Flake8-vimは2013年で更新が止まっているっぽい。
flake8-vimは問題なく動いたので、Flake8-vimは~/.vim/bundleから手動で削除した。
synstasticにpythonの設定を追記して試してみる
以下を設定を.vimrcに設定して、動作確認してみたりした。
let g:syntastic_python_checkers = ["flake8"]
動作違和感はなかったけど、
vim-flake8はflake8専用だし、手軽かもってどっかのブログに書いてたので、
思い直してこちらを使うのはやめた。rubyの方がsynstasticを使っている。