【发布时间】:2011-05-12 10:52:21
【问题描述】:
我试图编辑我的初始化文件。有什么方法可以快速跳转到已经加载/需要的其他 .el 文件的函数定义?
我记得这样做过一次,但不记得如何...
【问题讨论】:
标签: emacs
我试图编辑我的初始化文件。有什么方法可以快速跳转到已经加载/需要的其他 .el 文件的函数定义?
我记得这样做过一次,但不记得如何...
【问题讨论】:
标签: emacs
M-x find-function RET (function name) RET
我发现 C-h C-f 为 find-function 提供了很好的键绑定(假设 C-h f 默认绑定到 describe-function)
(global-set-key (kbd "C-h C-f") 'find-function)
【讨论】:
find-function-at-point(至少在emacs 23 中)。我将它绑定到 C-h C-f 并且效果很好!
find-function-on-key、find-variable和find-library。
(add-hook 'emacs-lisp-mode-hook (lambda () (local-set-key (kbd "M-.") 'find-function-at-point)))
As of emacs-25.1,有一个新的通用函数xref-find-definitions。 xref 内置包提供了一个用于在代码中导航定义的通用 框架。可能每种模式都需要一些时间来调整这个框架的自定义功能,但至少,emacs-lisp-mode 已经移植了。
【讨论】:
find-function-at-pointAFAIK 并没有相反的东西,这真的让我很恼火。现在它按我想要的方式工作! (xref-find-definitions 的倒数是xref-pop-marker-stack)
add-log.el.tar.gz 创建了一个目录,当我执行 ctags -eR . 和 etags add-log.el.tar.gz 时,生成的 TAGS 文件没有定义。
etags [options] file1 file2 ...,然后从 emacs 内部执行 M-. 以访问标签。要转到标签的下一个匹配项,请执行M-,。
【讨论】:
M-. :) 不是M-x .
find-function 是要走的路。另一种方法是使用 C-h f,然后单击缓冲区*Help* 中的文件名。
【讨论】: