Vim:如何跳转到当前段落的第一行/最后一行?

ust*_*sta 14 vim

有了{}我可以跳到段落的开头/结尾(空行),但是如何转到段落的第一行/最后一行呢?

Ian*_*ory 6

映射一些新命令:

第一行开头:

:map f {)
Run Code Online (Sandbox Code Playgroud)

段落的最后一行开头:

:map l }(
Run Code Online (Sandbox Code Playgroud)

然后使用fl导航.您可能想要选择备用键.

  • 即使您将其限制为普通模式,为什么要覆盖f和l的默认行为?当然,选择其他东西,然后使用nnoremap.我也会选择{j和} k. (11认同)
  • 如果段落之前或之后没有空行,则不起作用. (3认同)
  • 您可能不想重新映射这些密钥,但我确实说过"您可能想要选择备用密钥":-) (2认同)
  • @frabjous:谢谢,`{j`和`} k`的效果更好,但它们也不是完美的。如果段落的第一行是缓冲区的第一行,则前者将不执行;如果段落的最后一行是缓冲区的最后一行,则后者将不执行。 (2认同)

Bre*_*t Y 6

转到段落第一个单词的开头: {w

转到段落的最后一个单词的末尾: }ge