vim quickfix避免缓冲区更改

vim quickfix避免缓冲区更改,vim,Vim,我正在使用vimgrep和cw在quickfix缓冲区中打开搜索结果。每次我在“快速修复”列表中选择一行时,光标都会移动到新的文件缓冲区。如何避免这种情况并将光标始终保持在快速修复列表中?您可以使用:cnext和:cprevious与p组合使用(重点放在上一个窗口) 要将它们绑定到例如cn和cp,您可以执行以下操作: nnoremap <silent> <Leader>cn :cnext<CR><C-w>p nnoremap <silent&

我正在使用
vimgrep
cw
quickfix
缓冲区中打开搜索结果。每次我在“快速修复”列表中选择一行时,光标都会移动到新的文件缓冲区。如何避免这种情况并将光标始终保持在快速修复列表中?

您可以使用
:cnext
:cprevious
p
组合使用(重点放在上一个窗口)

要将它们绑定到例如
cn
cp
,您可以执行以下操作:

nnoremap <silent> <Leader>cn :cnext<CR><C-w>p
nnoremap <silent> <Leader>cp :cprevious<CR><C-w>p
nnoremap cn:cnextp
nnoremap cp:cpreviousp

假设您正在使用
来“在快速修复列表中选择一行”,您只需在快速修复窗口中重新映射
,以便在跳转到匹配行后返回上一个窗口

确保在上有
文件类型插件缩进,并将下面的行添加到
~/.vim/ftplugin/qf.vim

nnoremap <buffer> <CR> <CR><C-w>p
nnoremap p

有没有办法通过编辑.vimrc而不是.vim/ftplugin/qf.vim来实现这一点?@LorinHochstein
:autocmd文件类型qf nnoremap p