0

如何获得具有精确定位的滚动条?

为了说明我的意思:

  1. C-h C-f(阅读 GNU Emacs 常见问题解答)

  2. 现在尝试定位缓冲区内容,使以开头的段落This is the version ...位于顶部。使用默认滚动条,您需要多次重绘才能做到这一点。或者你左键单击光标定位然后C-lC-l

  3. 现在回到你以前去过的地方。这对于常规滚动条是不可能的。

我想要的是只需单击高度的滚动条,This is the version ...将这条线放置在第 2 步的顶部。然后返回我来自的位置,我右键单击(实际上没有移动鼠标)。

过去,我一直在安装 Emacs 时使用类似 Athena小部件的选项来获取此类滚动条,请参阅它们的描述。但我想知道现在是否有更好或更现代的方法来做到这一点。毕竟,我更喜欢使用标准发行版。

也许,甚至根本不需要更改滚动条,而是使用左边缘。毕竟,鼠标点击边缘被识别为<left-fringe>

M-x emacs-version
GNU Emacs 23.3.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.10) 2012-09-21 在 batsu 上,由 Debian 修改

4

2 回答 2

1

对于这个任务,我按C-l一次,两次,三次。它们将在中上下之间切换。

于 2013-01-11T02:25:50.263 回答
1

也许改变使用习惯会有所帮助?一些 Emacs 用户建议完全禁用滚动条并专门使用键盘导航 Emacs。(这个习惯也有利于在 shell 中使用 Emacs。)

Emacs 提供了大量的导航快捷方式。例如,为了在大量缓冲区空间上下跳跃,您有:

C-v scroll-up

M-v scroll-down

M-} forward-paragraph

M-{ backward-paragaph

C-x ] forward-page

C-x [ backward-page

但是,我认为到目前为止最有用的导航命令是:

C-s isearch-forward

C-r isearch-backward

在 Emacs 中,搜索非常便宜,它是工作流程中不可或缺的一部分,通过使用参考词作为快速搜索的锚点,到达缓冲区中的不同点通常要快得多,而不是离开到达鼠标的主行。击中C-sC-r重复将点移动到连续匹配。(您甚至可以通过在搜索时点击来切换到正则表达式搜索,M-r以使搜索更加强大。)

您已经提到C-l C-l在缓冲区顶部查看当前行。

现在,如果你想回到以前的位置,你可以使用

C-u C-x

跳回标记。上述所有导航命令都将它们的起始位置推到一个“标记环”上,这意味着您不仅可以跳回一个位置,重复点击C-u C-x还会带您回到许多以前的位置。

于 2013-01-10T22:12:58.893 回答