我使用vim 8.1s的终端功能为vim创建了一个编译器窗口。
它显示了发生任何情况时编译器的输出。
但是现在,我只想在终端窗口内的错误行上按Enter键,然后立即在主代码窗口内打开该文件,就像大多数编辑器一样。
为此,我需要能够读取光标下的当前行,以检查它是否是格式正确的错误以及是否会立即转到该文件。
那么如何在终端输出窗口内的光标下读取当前行?
答案 0 :(得分:0)
终端是一项新功能,但Vim几乎从一开始就具有编译(:help :make
)和错误解析功能(:help quickfix
)。 Vim可以理解许多常见:compiler
的输出,您也可以定义自己的:help write-compiler-plugin
。
因此,如果您的编译器具有正常的可解析输出,那么这是推荐的方法。
另一方面,如果您有充分的理由坚持原来的计划,那也是可能的。最后的终端缓冲区的工作方式类似于Vim中的其他(文本)缓冲区。使用映射时,首先需要跳出终端模式(cp。:help Terminal-mode
)。然后,Vimscript可以照常提取文本:
:let line = getline('.')
:let word = expand('<cword>')
在光标下抓取工作