循环通过光标位置

时间:2014-09-04 14:14:07

标签: emacs

在Vim中,我可以转到光标所在的先前位置。 此外,我可以在位置列表中来回移动(C-o用于向后跟踪,C-i用于向前跟踪。

emacs中是否有类似的功能? C-u C-SPC仅在列表中后退。

2 个答案:

答案 0 :(得分:0)

如果您使用Icicles,则可以使用命令icicle-goto-marker在这些位置之间循环。默认情况下,它在 Icicle 模式下绑定到C-- C-SPCC-SPC,没有前缀参数设置标记)。

您可以键入与这些位置附近的某些文字匹配的文字,以缩小骑行候选人的范围。您可以通过不同方式对候选人进行排序,因此您可以按不同顺序循环。你可以直接去任何位置,不用骑车,通过匹配它的文字。

在Emacs中有两种这样的职位:

  • global-mark-ring - 在每个标记缓冲区中有一个位置的单个环。
  • mark-ring - 每缓冲区响铃。也就是说,每个缓冲区在该缓冲区内具有相关的mark-ring个位置。

用于在global-mark-ring上的位置之间导航的 Icicles 命令是icicle-goto-global-marker。默认情况下,它以 Icicle 模式绑定到C-- C-x C-SPCC-x C-SPC,没有前缀参数弹出全局标记)。

答案 1 :(得分:0)

您可以尝试http://www.emacswiki.org/emacs-en/pointhistory.el

来自文档内文档的引文:

提供两个环pointhistory-ringpointhistory-auto-ring来记住点的位置。 如果命令在长距离上移动点,则先前的点位置存储在pointhistory-auto-ring中。 您可以通过命令pointhistory-auto-backward(绑定到 M-S-up )返回到这些点位置。如果您意外移动了点并希望返回上一个位置,这将非常有用。

如果你想记住一个点位以供以后使用,你可以调用pointhistory-point2ring(绑定到 M - + )。 按 M-up M-down 可在存储的点位置旋转。