在emacs中重构一个大文件

时间:2011-04-03 14:33:00

标签: emacs refactoring bookmarks

我正在Emacs的一个文件中重构一大段代码。

在大型emacs缓冲区中简化跳转到多个位置的最佳方法是什么? 目前我正在使用搜索(C-S)和自定义评论 - “标记”。 这变得非常不可靠。

理想情况下,我希望在多个缓冲区中打开相同的文件,因此我可以使用C-X B在它们之间切换。

你有什么解决方案?

5 个答案:

答案 0 :(得分:7)

  • 您正在寻找的是Indirect-Buffers

  • 就我个人而言,我发现拆分我的窗口(C-x 2)是一个很大的帮助。

  • 还会想到bookmarks

答案 1 :(得分:3)

请参阅Emacs Bookmarks

转到特定书签会自动切换到正确的缓冲区(书签与缓冲区相关联)。

答案 2 :(得分:2)

注册对于标记和跳转到位置非常有用。如果您在任何时候只有少量的标记要记住和记住,那么使用单字符寄存器可能比命名书签更快。

  • C-x r SPC 运行point-to-register
  • C-x r j 运行jump-to-register

当提示输入注册时,您可以输入任何字符。

答案 3 :(得分:0)

使用autonamed bookmarks。每次创建书签时都无需指定名称 - 只需按一下键即可。就像使用 C-SPC 来设置标记一样,但书签(默认情况下)是持久的;标记不是。

使用Bookmark+,您还可以将书签(包括自动发布的书签)组织成套等。例如,以各种方式标记它们。

答案 4 :(得分:0)

可视书签对于这种情况非常有用。您可以获取HTTP Basic Authentication或使用

进行安装
(global-set-key (kbd "<f5>") 'bm-toggle)
(global-set-key (kbd "<f7>") 'bm-next)
(global-set-key (kbd "<f6>") 'bm-previous)

并将其添加到您的配置中。

f5

现在,文件中的任何位置按f5并在那里创建标记。如果您要将其删除,只需再次按f6即可。

您可以创建任意数量的标记,现在使用f7&amp; {{1}}你可以快速前往任何你想要的地方。