0

我正在切换到 emacs,并且在配置我的 emacs 环境的过程中,我坚持实现我曾经在 eclipse 和 IntelliJ 中拥有的功能。使用 alt 左/右键在代码中来回移动。

我希望它能够跨所有主要模式和所有缓冲区工作(不仅适用于 java 或任何特定语言)。例如,假设我在 file1.txt(say p1) 的开头。我搜索一些文本并转到第 10 行(p2file1.txt。然后我打开另一个文件,file2.txt重复相同的操作,从第 1( p3) 行开始,然后转到第 10( p4) 行。在Alt + LeftAlt + right(或任何其他类似的键绑定)时,我应该能够在位置之间循环p1 <-> p2 <-> p3 <-> p4

我知道以下内容。

  1. ctags/etags 生成标签的具体方法,跳转到函数然后返回。但我希望它适用于文本文件和许多无法生成或不值得生成 ctags 的文件,因为我很少使用它们,例如从 cmake 构建生成的 Makefile 等。
  2. https://superuser.com/questions/241939/how-to-jump-back-to-the-last-position-of-the-cursor-in-emacs中的问题、答案和评论 , 在 Emacs 中,如何去使用语义跳转到符号后回到上一行位置? 其中提到了有关使用标记环和寄存器存储标记的答案。但是在最初尝试这种方法之后,我发现一旦我前进,然后后退,我就会从寄存器中弹出一些东西。我需要它永远在那里(:D)
  3. 我读过关于冰柱的非常糟糕的东西,有点犹豫要不要尝试。

我错过了任何其他方法吗?任何插件或任何东西?实现这一点有点复杂。我希望这是一个常见问题,并希望存在一些 elisp 代码来解决这个问题。

4

1 回答 1

0

也许这很有用。也许不是 https://github.com/joodland/bm

(setq-default
bm-recenter nil
bm-highlight-style 'bm-highlight-line-and-fringe
bm-cycle-all-buffers t
bm-in-lifo-order t)
;; (global-set-key (kbd "M-.") 'bm-toggle); you need set mark before you jump 
;; (global-set-key (kbd "M-/")   'bm-next)
;; (global-set-key (kbd "M-,") 'bm-previous)

我知道 evil-mode Co evil-jump-backward Ci evil-jump-forward 每当你使用 gg G / 它可以记住最后一个位置

于 2015-11-05T03:06:13.757 回答