gpt4 book ai didi

vim - 有没有办法在 Vim 的命令中引用当前选定的文本?

转载 作者:行者123 更新时间:2023-12-04 22:24:06 26 4
gpt4 key购买 nike

在我的 C 头文件中说我想包含另一个尚未创建的文件:

#include "AnotherFile.h" /*not being created yet*/

现在,我在可视模式下选择文件,
#include " AnotherFile.h "

如何使用我选择的名称创建一个新文件?我是说,
:e  {something that  refers to what I selected} 

最佳答案

我能想到的最接近的是创建一个函数:

function! W() range
execute "e " . getline("'<")[getpos("'<")[2]-1:getpos("'>")[2]]
endfu

然后您可以选择单词并输入 :call W() + enter,这将打开新的缓冲区。

编辑 如果修改了包含 #include 的缓冲区,上面的函数将无法正常工作。在这种情况下,以下函数更适合:
function! W() range
let l:fileName = getline("'<")[getpos("'<")[2]-1:getpos("'>")[2]]
new
execute "w " . l:fileName
endfu

编辑 2 您也可以尝试键入 :e <cfile> (请参阅 :help <cfile> )。

编辑 3 最后,在 :help gf 下你发现隐藏
If you do want to edit a new file, use: >
:e <cfile>
To make gf always work like that:
:map gf :e <cfile><CR>

关于vim - 有没有办法在 Vim 的命令中引用当前选定的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8515493/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com