【发布时间】:2015-11-05 11:41:07
【问题描述】:
我正在切换到 emacs,并且在配置我的 emacs 环境的过程中,我坚持实现我曾经在 eclipse 和 IntelliJ 中拥有的功能。使用 alt 左/右键在代码中来回移动。
我希望它能够在所有主要模式和所有缓冲区中工作(不仅适用于 java 或任何特定语言)。例如,
说我在 file1.txt 的开头(比如p1)。我搜索一些文本并转到file1.txt 中的第 10 行(p2)。然后我打开另一个文件file2.txt 并重复相同的操作,从第 1 行(p3)开始,然后转到第 10 行(p4)。在Alt + Left 和Alt + right(或任何其他类似的键绑定)上,我应该能够在p1 <-> p2 <-> p3 <-> p4 位置之间循环
我知道以下内容。
- ctags/etags 生成标签的具体方法,跳转到函数然后返回。但我希望它适用于文本文件和许多无法生成或不值得生成 ctags 的文件,因为我很少使用它们,例如从 cmake 构建生成的 Makefile 等。
- 问题、答案和 cmets https://superuser.com/questions/241939/how-to-jump-back-to-the-last-position-of-the-cursor-in-emacs , In Emacs, how to go back to previous line position after using semantic Jump to Symbol? 其中提到了有关使用标记环和寄存器的答案 存储标记。但是在最初尝试这种方法后,我发现 有一次,如果我向前走,然后向后走,我会从收银机里弹出东西。 我需要它永远在那里(:D)
- 我读到了关于冰柱的非常糟糕的文章,有点犹豫要不要尝试 它。
我错过了任何其他方法?任何插件或任何东西?实现这一点有点复杂。我希望这是一个常见问题,并希望存在一些 elisp 代码来解决这个问题。
【问题讨论】:
-
听起来很有用。如果这样的包不存在是的,使用
pre-command-hook在相关命令之前保存点位置应该相对容易实现。
标签: emacs navigation elisp code-navigation