转到 Vim 中的中间行

转到 Vim 中的中间行

我知道0转到行首并$转到行末,但是中间有什么东西吗?

答案1

:call cursor(0, len(getline('.'))/2)

答案2

打字gm可以做到这一点,但它会按屏幕行移动(见:help gm)。为了使其与文本行一起工作,可以重新映射此命令:

map gm :call cursor(0, virtcol('$')/2)<CR>

答案3

这是一个可以尊重硬标签和多字节字符的解决方案。

:exe 'normal '.(virtcol('$')/2).'|'

答案4

这里是我发现的最佳解决方案。准确跳转到行的中间不太实用。移动到中间后,您很可能仍需要将光标移动几个位置。如果您可以跳转到特定字符会怎样?许多人只是搜索该字符,然后点击“下一个”直到找到它。这很慢。Easy-motion 插件提供了更好的解决方案。

我最喜欢的是<leader><leader>s您想要跳转到的字符。Easy Motion 将所有匹配项替换为不同的字母供您选择。请参阅教程。这是一个改变生活的插件...

相关内容