Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

vim7.4からvim8.0にあげたら.vimrcの"set expandtab"が効かなくなった

$
0
0

はじめに

先日10年ぶりにvimのメジャーヴァージョンがアップしました。
http://vim-jp.org/blog/2016/09/13/vim8-release.html
早速vimのヴァージョンを7.4から8.0にあげました。
しかし、7.4では効いていた.vimrcのset expandtabが効かず、tabを押すとスペース展開してくれずにtabがそのまま挿入されてしまいました。

原因と解決方法

とりあえずgithubで問い合わせてみました。
問い合わせたときのチケット
https://github.com/vim/vim/issues/1078

set expandtabが効かなかったのは.vimrcにset pasteを記載してあったことが原因でした。
問い合わせに対応してくださった方が

The whole point of set paste is to disable things like mappings, wordwrap, indenting, etc. (and prevents, that a tab is replaced by the equivalent number of spaces). That is a setting that shouldn't be set in your .vimrc, only temporarily. You might want to read up the help on it :h 'paste', :h 'pastetoggle' and similar. If you have further questions, please ask on the appropriate forums, like the vim-use ml or vi.stackexchange.com

という回答をくださったので、vimのhelpを参照してみると確かにset pasteは一時的に使うのが好ましいのですね。
http://vim-jp.org/vimdoc-ja/options.html#'paste'

set pasteに'expandtab' is resetの効力があるなんて知りませんでした。。。

neovimでも確認

vim8.0と同様.vimrcにset pasteを記載してあるとset expandtabが効かないようです。
set pasteは.vimrcから消しましょう。

結論

helpはちゃんと読もうということですね。
でもvim7.4ではなんで動いてたんだろう?


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>