当我退出vim时,显示屏会恢复到我进入之前看到的任何内容。在非vim vi上,除了底线外,你保持vi屏幕完整。
vim中是否有允许后一种行为的选项?
答案 0 :(得分:5)
Vim使用名为备用屏幕的终端功能在其中编写UI,并在退出时恢复原始shell内容(从中启动Vim)。这由两个ANSI转义序列控制(参见how does vi restore terminal content after quitting it)。
您可以通过清除相应的终端设置从Vim中禁用它。将以下内容放入~/.vimrc
:
set t_ti= t_te=
或者,您也可以在终端中禁用此功能;至少多路复用器screen
和tmux
允许这样做。有关详细信息,请参阅Prevent Applications Like Vim and Less Clearing Screen on Exit。
答案 1 :(得分:0)
可能是您正在寻找的,只需将以下命令粘贴到.vimrc即可。我是从网上的某个地方得到的。
" Return to last edit position when opening files
autocmd BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif