emacs 手册的这一部分指出,重新访问文件是从语义数据库加载标签的默认方式,但是(在第二段中)可以访问标签信息而无需再次打开该文件。它是否需要另一个程序连接到提到的 API 或是否有内置设置?我想也许搜索油门设置会做到这一点,但似乎没有帮助。如果它确实需要另一个程序,是否存在这样的应用程序?
例如,如果我打开 foo.cpp 和 foo.h,我可以使用 semantic-analyze-proto-impl-toggle 在定义/实现之间来回跳转。当我关闭 emacs 时,我可以调查 ~/.emacs.d/semanticdb/ 的内容并确保 foo.cpp 中的标签已保存。
然后,在新的 emacs 会话中打开 foo.h 并尝试跳转到定义的实现。在我在缓冲区中打开 foo.cpp 之前,我会收到“找不到合适的实现”消息。
我希望它立即工作。如果文件没有打开,我认为 emacs 应该将它加载到一个新的缓冲区中并带我去那里!