我想做一个非常简单的脚本,在视觉上选择光标下的单词,然后调用另一个函数(来自已经存在的vim插件),这取决于这个选择。
我试过这个:
function! ThisWord()
normal! vaw
" some other function that I'm not calling yet
endfunction
map <leader>a :execute ThisWord()<CR>
但是,例如,如果我在单词'main'中执行此操作(在文件末尾附近),则从文件顶部选择直到相关单词(包括它)。
如何只选择光标下的单词?
这与here提到的'<
和'>
标记有关吗?
或者execute
是否以某种方式使用不同的坐标?
答案 0 :(得分:1)
1)通过call Funcxxx()
2)
它从文件顶部选择直到相关单词 (包括它)。
这是由插件功能还是您的nromal! vaw
?
3)'< '>
是基于行的标记。你不能将它们用于选定的单词。
4)你应该检查插件中的功能,参数是什么。如果它适用于'< '>
之类的范围,则无法选择单词并传递给该函数。因为该功能可能在整个行上做一些事情。
答案 1 :(得分:0)
您可以尝试使用此代替normal
命令:
let s:wordUnderCursor = expand("<cword>")
编辑:看起来我误解了这个问题。