もた日記

くだらないことを真面目にやる

Vimメモ : filetypeの確認

filetype


Vimを使っているとautocmd FileType rubyみたいな書き方を見るがFileTypeがよくわからなかったので調べてみる。ヘルプでは以下のよう書かれている。

Vimは編集しているファイルの形式を検出することができる。これはファイル名をチェ
ックしたり、場合によってはファイル内に特定のテキストがあるかを調べることで実現
されている。


filetypeの有効化


filetypeの検出を有効化するためには下記行をvimrcに追加する。

filetype on

プラグインのロードやインデントのロードも有効化するためには下記行を追加する。

filetype plugin indent on


filetypeの確認


現在編集しているファイルのfiletypeを確認するためには下記コマンドを実行する。

:set filetype?

または

:echo &filetype

例えば、test.rbを編集している場合はrubyと表示される。
わざわざコマンドを実行するの大変なのでvimrcに下記行を追加してステータスラインに表示することもできる。

set laststatus=2
set statusline=%y "または%Y


filetype一覧の確認


そもそもどのようなfiletypeが定義されているのかを確認するためには下記コマンドを実行する。

 :echo glob($VIMRUNTIME . '/ftplugin/*.vim')
 :echo glob($VIMRUNTIME . '/indent/*.vim')
 :echo glob($VIMRUNTIME . '/syntax/*.vim')

あるいは下記コマンドを実行すると拡張子との関係が確認できる。

 :autocmd filetypedetect


拡張子によるfiletype検出の追加


拡張子によるfiletypeの検出を追加するために下記のような行をvimrcに追加する。

autocmd BufNewFile,BufRead *.rb setfiletype ruby

実践Vim 思考のスピードで編集しよう!

実践Vim 思考のスピードで編集しよう!