【问题标题】:Vim exec command with input() and nested command带有 input() 和嵌套命令的 Vim exec 命令
【发布时间】:2015-07-07 15:11:38
【问题描述】:

我想创建一个等待输入 THEN 的 vim 命令,它将在第一个命令之后自动执行 ':cw'。

这是我的尝试:

noremap <C-p> :exec ":ProjectGrep /".input('Search: ')"/ src/**"<CR>:cw

但是 ':cw' 在命令之后没有执行,它完成了 input()。

【问题讨论】:

    标签: vim eclim


    【解决方案1】:

    将以下 sn-p 添加到您的 vimrc 以使 Vim 在存在有效错误/位置时打开快速修复/位置窗口:

    augroup qf
        autocmd!
        autocmd QuickFixCmdPost [^l]* cwindow
        autocmd QuickFixCmdPost l* lwindow
    augroup END
    

    虽然 sn-p 解决了我认为是您的根本问题(在您的搜索命令后自动打开 quickfix 窗口),但不是您的实际问题。

    无论如何,cwindow 应该是你的:ProjectGrep 命令调用的函数中的最后一个命令;不在映射级别。

    【讨论】:

    • 谢谢,更干净了。我最终通过编写函数实现了它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-11
    • 1970-01-01
    • 2022-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多