VimでPython

インデントとかシンタックスハイライティングとか。

インデントに関してはpythonファイルとして読み込まれたファイルにpython式のインデントを施す為に、下記の設定を。

  1. ~/.vim/ftplugin/python.vimを作成
  2. 下記内容を記述
set tabstop=8
set expandtab
set shiftwidth=4
set softtabstop=4

シンタックスハイライトはバージョンによってはデフォルトで有効になっている。

有効になっていない場合は下記の設定を。

設定ファイルは/etc/vimrcか、できれば、ホームディレクトリの.vimrc

syntax on 

黒画面でやるなら下記設定を追加するといい感じにカラーリング。

set background=dark

vimでフォーマット

vim - Reformat a Python file to have 4 space indentations - Stack Overflow

↑このページだと、いい感じにしてくれるPythonスクリプト?として、下記のものが紹介されている。

Reindent 0.1.0 : Python Package Index

:%! reindent

autopep8 1.2.4 : Python Package Index

:%! autopep8 -

あとはVimプラグインとして、汎用のフォーマッタ?もあるようだ。

GitHub - Chiel92/vim-autoformat: Provide easy code formatting in Vim by integrating existing code formatters.

↑のプラグインVimにNeoBundleとかでインストールして、言語ごとのフォーマッタ(前述のautopep8とか)インストールした後、

:Autoformat

で整形。

Python限定ならautopep8 1.2.4 : Python Package Index入れるだけでも楽かな?