我知道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 将所有匹配项替换为不同的字母供您选择。请参阅教程。这是一个改变生活的插件...