Vim 使用 input() 和嵌套命令执行命令
Vim exec command with input() and nested command
我想创建一个 vim 命令,它正在等待输入 THEN,它将在第一个命令后自动执行 ':cw'。
这是我的尝试:
noremap <C-p> :exec ":ProjectGrep /".input('Search: ')"/ src/**"<CR>:cw
但是':cw'并没有在命令之后执行,它完成了输入()。
将以下代码段添加到您的 vimrc
中,使 Vim 在存在有效 errors/locations:
时打开 quickfix/location window
augroup qf
autocmd!
autocmd QuickFixCmdPost [^l]* cwindow
autocmd QuickFixCmdPost l* lwindow
augroup END
该片段解决了我认为是您的潜在问题(在您执行搜索命令后自动打开 quickfix window),但不是您的实际问题。
无论如何,cwindow
应该是您的 :ProjectGrep
命令调用的函数中的最后一个命令;不在映射级别。
我想创建一个 vim 命令,它正在等待输入 THEN,它将在第一个命令后自动执行 ':cw'。
这是我的尝试:
noremap <C-p> :exec ":ProjectGrep /".input('Search: ')"/ src/**"<CR>:cw
但是':cw'并没有在命令之后执行,它完成了输入()。
将以下代码段添加到您的 vimrc
中,使 Vim 在存在有效 errors/locations:
augroup qf
autocmd!
autocmd QuickFixCmdPost [^l]* cwindow
autocmd QuickFixCmdPost l* lwindow
augroup END
该片段解决了我认为是您的潜在问题(在您执行搜索命令后自动打开 quickfix window),但不是您的实际问题。
无论如何,cwindow
应该是您的 :ProjectGrep
命令调用的函数中的最后一个命令;不在映射级别。