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

vimrcを編集したら自動で反映する

$
0
0

表題どおりの件です。

基本的な設定

ひとまず自分がvimrcの頭に記載している設定を掲載
詳細は下に

vimrc
" init all settingssetall&
" init autocmd
autocmd!" set script encodingscriptencoding utf-8" tiny と small では これ以上 vimrc を読み込まないif!1|finish|endif" This is vim, not vi.setnocompatible" syntax hilightsyntax enable
" auto reload .vimrc
augroup source-vimrc
  autocmd!
  autocmd BufWritePost *vimrc source $MYVIMRC |setfoldmethod=marker
  autocmd BufWritePost *gvimrc if has('gui_running') source $MYGVIMRC
augroup END

koara-local/dotvim

vimrcの再読み込み

少なくとも再読み込みに必要なのは以下の設定
vimrcと名前のつくファイルを更新したら、source $MYVIMRC を実行

vimrc
" auto reload .vimrc
augroup source-vimrc
  autocmd!
  autocmd BufWritePost *vimrc source $MYVIMRC |setfoldmethod=marker
  autocmd BufWritePost *gvimrc if has('gui_running') source $MYGVIMRC
augroup END

参考:
Hack #74: 簡単にvimrcを編集する
Vimでvimrcを編集しやすくする記述とvimrcのリロードでモードラインの設定が無視される問題

普段gvimは使わないのでよく知りませんが、
gvimの場合は、sourceするだけでは反映されない設定があるようなので
tyruさんの、restart.vim あたりをつかうと捗るらしいです(要検証

tyru/restart.vim

参考:
[vim]現在の状態を復元して gVim を再起動する

再読み込み前に設定をリセット

ただこれだけだと、例えば set expandtabなどをコメントアウトした場合に、
Tabが入力される状態に戻ってくれなかったりする。( set noexpandtabとしないといけない )

ちょっとそれは面倒なので、再読み込みのたびに最初に設定をデフォルトに戻す。

vimrc
" init all settingssetall&

これで set expandtabをコメントアウトか削除するだけで、すぐにTabが入力される状態になった。
ついでにgroup設定のされていない autocmdもリセットしているけれども、必要性は不明

vimrc
" init autocmd
autocmd!

ついでにすぐにvimrcを開けるようにする

自分は ,vでvimrcを開くようにしています。

vimrc
" Edit vimrc
nmap ,v :edit $MYVIMRC<CR>

Viewing all articles
Browse latest Browse all 5608

Trending Articles



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