【发布时间】:2013-07-05 02:38:31
【问题描述】:
模式:我使用 linum 表示行号,使用包 linum-relative 表示相对行号。如果重要的话,我也在使用视觉线模式。这些是灵活的。
目前,单行(即没有换行符的文本)仅被编号为一行,无论它被换行多少次。我想知道是否有办法更改编号以尊重这些包装。所以,例如,
263 This is all in
a single line
without newlines
可能变成:
263 This is all in
264 a single line
265 without newlines
并且,在相对模式下:
0 This is all in
a single line
without newlines
可能变成:
-1 This is all in
0 a single line
1 without newlines
我真的只想要相对模式的变化,但不介意它是否溢出到绝对模式。
对两者都有效的切换更改将是最有用的 - 这样,用户可以具体选择何时或使用哪种模式来关闭或打开它。
【问题讨论】:
-
你能澄清一下目标吗?当像
forward-line这样的命令不尊重它们时,我不确定我是否看到了假行号的目的。另外,当您想使用goto-line时,我认为 263a、b、c 等会更容易混淆 -
像
next-line这样的交互式命令多年来一直尊重换行符;你的意思是goto-line?当您考虑相对行号的用例时,该请求开始有意义。想象一下,看着一条很长的缠绕线。当前视线编号为 0,下一条视线编号为 1,依此类推。可以使用C-u 15 down访问相关第 15 行的有趣文本。这是我现在不使用鼠标或不反复按下向下箭头就无法做到的事情。 -
虽然我可以理解您使用相对编号的用例,但如果目标是缓冲区导航,我认为有比 C-u # up/down 更好的解决方案。
-
我正在使用邪恶的相对行号。有了 relative,我可以立即查看是否必须移动,例如,向下或向上移动 15,然后输入
15j或k(实际上,由于 colemak,15e或u,但我怀疑这很重要) .我正在尝试将 j/k 设置为previous-line/next-line以便它尊重换行。问题(为此我提出了这个问题)是相对行号没有,所以如果它是换行的文本,我必须注意行数。
标签: emacs