【问题标题】:Vim open file under cursor [duplicate]Vim在光标下打开文件[重复]
【发布时间】:2010-05-17 10:06:09
【问题描述】:

可能重复:
Open file from complete path under cursor in Vim

假设我有以下文件树:

/
  include/
    library/
      a.hpp
      b.hpp
  src/
    a.cpp
    b.cpp

还有以下/src/a.cpp文件:

#include "a.hpp"
#include "b.hpp"

我总是在根目录打开 Vim。因此,当我想加载 a.hpp 时,我会这样做:

:tabnew include/library/a.hpp

或:

:tabnew **/a.hpp

我想映射 <F4> 以使用递归搜索在新选项卡中打开光标下的文件。

我尝试了以下映射命令:

:map <F4> :tabnew **/expand("<cfile>")<cr>

但显然,这是行不通的,因为它会尝试打开文件 "/expand("

关于我如何做到这一点的任何线索?

谢谢。

【问题讨论】:

    标签: vim


    【解决方案1】:

    :help gf 给出了如何实现这一点的提示。

    :nmap &lt;F4&gt; :tabe **/&lt;cfile&gt;&lt;cr&gt;

    &lt;cfile&gt; 似乎在映射中自动展开。

    【讨论】:

    • 这不起作用(也不起作用),因为&lt;cfile&gt; 是由:execute 命令评估的,而不是在使用映射时评估的。
    • 呸,你是对的。当您在光标位于测试用例上时定义地图时,它工作正常;)
    • 我刚刚发现它,然后看到了您的编辑!无论如何,谢谢;)我会接受的。
    • 我已清理此答案以删除不正确的信息以供将来搜索。
    • 我会使用&lt;C-w&gt;gf
    猜你喜欢
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 2016-05-26
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 2011-01-26
    • 1970-01-01
    相关资源
    最近更新 更多