LoginSignup
7

More than 5 years have passed since last update.

Vimの自動保存で読み込み専用や名前がない場合に警告が出ないようにする設定

Last updated at Posted at 2013-11-12

Vimの自動保存、便利ですね。バージョン管理システムが普通になった時代ならではですね。

さて、通常の自動保存の設定は、みんな大好きvim-users.jpにもある通り

.vimrc
set autowrite
set updatetime=500

autocmd CursorHold *  wall
autocmd CursorHoldI *  wall

ぐらいで事足りるんですが、読み込み専用やファイル名がない場合に警告が出てうざいです。

なので、関数でラップしてそのような場合は保存を呼び出さないようにしました。

.vimrc
set autowrite
set updatetime=500

function s:AutoWriteIfPossible()
  if &modified && !&readonly && bufname('%') !=# '' && &buftype ==# '' && expand("%") !=# ''
    write
  endif
endfunction

autocmd CursorHold * call s:AutoWriteIfPossible()
autocmd CursorHoldI * call s:AutoWriteIfPossible()

と、.vimrcに書いてください。

おしまい。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7