vim:添加可点击标签

时间:2011-10-07 10:38:16

标签: vim hyperlink

我知道在emacs中可以插入某种“可点击的文本”。即您可以插入一个文本,当用户按下Enter键时,会打开另一个文件。

vim有这样的东西吗?

3 个答案:

答案 0 :(得分:4)

这是可能的,但是特定于文件类型。一个最好的例子是vim自己的帮助系统,它不比具有特定映射的不可修改的缓冲区更好。

有关此类链接的示例,请参阅vimwikivimorgmode

答案 1 :(得分:4)

对于简单的临时案例,您可以编写一个函数,根据光标下的单词打开某个文件。然后,您可以将此功能映射到双击事件。

例如:

function! CustomLoad()
    let word = expand("<cword>")
    let path = "/path/to/file/to/be/opened"
    if ( word == "special_keyword" && filereadable(path) )
        sil exe "split " . path
    endif
endfunction

使用以下方式映射:

nnoremap <2-LeftMouse> :call CustomLoad()<CR>

因此,如果文件special_keyword可读,则双击(在正常模式下)将会打开文件/path/to/file/to/be/opened。您可以为不同的关键字添加多个案例,或者根据需要对关键字进行一些文本处理以生成文件名。 (请注意,filereadable条件不是必需的,但可能是个好主意。)

希望这有帮助。

答案 2 :(得分:1)

另一个简单的解决方案是编写文件名并使用gf转到文件Ctrl+w,f以在拆分窗口中打开文件,或Ctrl+w,f,g在文件夹中打开文件。请注意,该文件必须已存在。有关其他一些提示,请参阅this vim wikia entry