我试图在Emacs Lisp源代码中将函数和变量的Emacs位置定义放在buffer的顶行,而不是在帮助缓冲区中查找它们的中心行。
我的意思是:在通过‘`describe function’查找一个函数后,你会得到一个帮助缓冲区,如果这样的函数已经在Emacs Lisp源文件中定义了,你可以选择在这样的文件名上按RET,并被带到那个函数的定义。然而,这样的定义将定位在屏幕的中心线上,而我希望它位于顶线,以查看其实现的更多内容。
我试着查找我可以推荐的功能。describe-mode' for Help said RET was bound tohelp-follow‘,我已经准备好建议这样的函数,但从它的定义来看,它只是一个占位符,我认为:
(defun help-follow ()
"Follow cross-reference at point.
For the cross-reference format, see `help-make-xrefs'."
(interactive)
(error "No cross-reference here"))有什么帮助吗?我使用的是Viper+Vimpulse,我不知道这是否会改变什么。
谢谢。
发布于 2012-02-05 22:50:36
在我看来,相关函数是help-button-action (它调用help-do-xref),因此您可能希望在找到外部参照后使用advise that来设置所需的点。
发布于 2012-02-05 23:05:06
您可能希望使用find-function转到函数的源代码。
它使用一个变量find-function-recenter-line,它是开始显示函数定义的行号。默认情况下,它的值是1,这应该正是您所需要的。
函数的描述是声明后的注释,因此您实际上不需要describe-function。
https://stackoverflow.com/questions/9149987
复制相似问题