Vim -允许使用新修改的文件退出

ddrv8njm  于 2023-08-05  发布在  其他
关注(0)|答案(2)|浏览(98)

Vim的默认行为似乎是,如果缓冲区被修改,:q将引发错误,即使修改,:q!也将退出缓冲区。我想改变:q的行为,这样它只会在缓冲区被修改并且与现有文件相关联时引发错误。换句话说,如果创建了新的缓冲区(例如,被:new:e nonexistentfile.txt)修改而没有写入,我希望:q放弃这些更改。

66bbxpm5

66bbxpm51#

我认为你想要的是创建临时缓冲区。

command! Scratch new | setlocal buftype=nofile bufhidden=hide noswapfile

字符串
只需发出:Scatch命令以创建临时缓冲区

ufj5ltwl

ufj5ltwl2#

自动使没有备份文件的缓冲区不提示保存(而有备份文件的缓冲区将继续提示):

augroup nofilename_nofile
  autocmd!
  " Don't prompt for saving buffers with no file
  autocmd BufEnter * if eval('@%') == '' && &buftype == '' | setlocal buftype=nofile | end
augroup END

字符串

相关问题