Vim - 移动到具有相同缓冲区的其他 window 时调用缓冲区事件
Vim - calling buffer events when moving to other window with same buffer
如果我在 vim 中打开一个文件并使用命令“:split”,它会将同一个缓冲区分成两个 windows。
在我的 vimrc 中我有这个命令:
autocmd BufEnter * set cursorline
autocmd BufEnter * set cursorcolumn
autocmd BufLeave * set nocursorline
autocmd BufLeave * set nocursorcolumn
不幸的是,当我从一个 window 移动到另一个 window 时,如果 window 持有相同的缓冲区,它们不会被执行。
当我移动到另一个 window 时,即使缓冲区相同,我如何执行这些命令?
改用WinEnter
/WinLeave
。由于前者不会在启动时触发,您可能还需要 VimEnter
。
请注意,也有插件解决方案仅在当前 window 中显示 'cursorline'
,例如我的 CursorLineCurrentWindow plugin (the next version 2.00 will support 'cursorcolumn'
and 'wincolor'
as well) and cursorline_current.vim plugin.
如果我在 vim 中打开一个文件并使用命令“:split”,它会将同一个缓冲区分成两个 windows。
在我的 vimrc 中我有这个命令:
autocmd BufEnter * set cursorline
autocmd BufEnter * set cursorcolumn
autocmd BufLeave * set nocursorline
autocmd BufLeave * set nocursorcolumn
不幸的是,当我从一个 window 移动到另一个 window 时,如果 window 持有相同的缓冲区,它们不会被执行。
当我移动到另一个 window 时,即使缓冲区相同,我如何执行这些命令?
改用WinEnter
/WinLeave
。由于前者不会在启动时触发,您可能还需要 VimEnter
。
请注意,也有插件解决方案仅在当前 window 中显示 'cursorline'
,例如我的 CursorLineCurrentWindow plugin (the next version 2.00 will support 'cursorcolumn'
and 'wincolor'
as well) and cursorline_current.vim plugin.