如何在Emacs中的文件之间导航?

时间:2016-12-23 11:46:33

标签: emacs navigation

我有几个属于项目的Ada文件。规范是.ads文件,.adb文件中的代码等。关键是我想从文件中的函数“跳转”到该函数的声明,或者从变量到其类型的定义,我应该在Emacs中实现哪个配置?

2 个答案:

答案 0 :(得分:0)

C-h r访问Emacs手册,然后i tag TAB。这列出了Emacs手册中与标签有关的页面(节点)。

例如,选择find-tag,将您带到节点Find Tag

答案 1 :(得分:0)

不幸的是,这在Emacs中并不是一个直截了当的问题。问题是,emacs具有多个功能,可以在这方面提供帮助,这使得很难提供具体的例子。但是,您可能希望使用google和emacs信息页面查看以下内容

  • Ada模式。我不是ada程序员,但我会从这种模式开始。将其配置并首先运行。
  • Projectile是一个不同的流行emacs包,用于处理项目。在项目文件中导航变得容易
  • 标签。保持标签“索引”的“原始”方式可以提供各种文件位置/定义,使其易于跳转。一定要查看linux'全局'标签支持,这比旧的传统emacs ctags好一点。
  • i菜单。一个方便的内置emacs功能,可用于提供动态菜单功能。它可以设置为使用标记文件(以及其他方法),并可以提供您想要的大部分内容。
  • Speedbar。提供有用的文件和标签显示窗口,当您需要跳转时非常有用。

不要忘记查看包存档 - 确保至少添加了melpa存档并查找与ada相关的包。

关键是要慢慢建立你的配置,并努力自己去做。您可以随意从任何存储库和可以找到的在线示例中借用示例和一些代码,但请尽量确保您了解它的作用。学习曲线开始时是陡峭的,但如果你坚持下去,它的水平会非常快。尽量避免仅仅剪切和粘贴一些你不理解的代码的诱惑 - 你几乎肯定会遇到冲突,如果你不理解代码,你将无法修复它。

emacs的一个主要好处是,您可以使用您想要的工作流程,而不是被迫学习编辑器或编辑设计者强加的任意工作流程。这很棒,但是可能需要一些时间来调整并将它们带到您想要的位置。时间是值得的。