有没有办法从emacs中查看常见的lisp函数及其文档的参数?或者还要查看所有可用功能的列表?
答案 0 :(得分:7)
SLIME自动加载eldoc-mode
- 这是在迷你缓冲区中显示函数参数的模式。如果您的意思是cl
Emacs Lisp库,您可以使用 M-x eldoc-mode
加载它。
另一个有用的SLIME功能是 C-c C-d C-d - 这会弹出一个新缓冲区,其中包含有关该功能的文档。
这些也很有用:
slime-who-specializes
slime-who-binds
slime-who-calls
slime-who-macroexpands
slime-who-references
slime-who-sets
slime-calls-who
slime-who-specializes
slime-who-binds
slime-who-calls
slime-who-macroexpands
slime-who-references
slime-who-sets
slime-calls-who
他们的名字应该是显而易见的。
Addidionally,SLIME有一个auto-complete
插件,可以在下拉菜单中显示文档和函数参数(好吧,类似),在视觉上类似于Visual Studio或Eclipse的工作方式。我认为它叫ac-slime
,可以通过ELPA安装。
答案 1 :(得分:1)
您可以使用documentation
获取函数的文档。 (以下示例获取有关函数list
的信息。)
(documentation 'list 'function)
"Returns constructs and returns a list of its arguments."
要获取参数列表,某些包中通常存在依赖于实现的函数arglist
。您可以使用(apropos 'arglist)
搜索此功能。这将为您提供名称包含arglist
的所有实习符号的列表。
例如在CMUCL中它是(swank-backend::arglist 'list)
,在CLISP中它只是(arglist 'list)
等。
N.B。如果您使用SLIME,则无论如何都应该看到下面的可用参数。
答案 2 :(得分:0)
排序。手册GNU Emacs Common Lisp Emulation
附带GNU Emacs - 主{(1}}级)信息菜单中的CL
。请参阅功能索引以获取已记录功能的列表。但是文档有些不完整,它仅记录了Emacs实现,有时与Common Lisp规范不同。
有关该语言的详细信息,请参阅Common Lisp文档。
答案 3 :(得分:0)
以下所有内容均来自http://cl-cookbook.sourceforge.net/emacs-ide.html
Q2。从Emacs中查看HyperSpec
Q2我喜欢在Emacs中访问HyperSpec,但为什么必须使用外部浏览器?为什么 我不能只看到Emacs中的HyperSpec吗?
A2如果您使用Emacs附加软件包W3(或提供类似功能的W3M),您可以显示HTML页面 在Emacs里面。一旦安装了W3和HyperSpec,请使用类似于以下内容的代码来访问 Shift-F1键中的HyperSpec:
(global-set-key [(shift f1)]
'(lambda ()
(interactive)
(let ((browse-url-browser-function
'browse-url-w3)
(common-lisp-hyperspec-root
"file://c:/home/docs/Hyperspec/")
(common-lisp-hyperspec-symbol-table
(concat common-lisp-hyperspec-root
"Data/Map_Sym.txt"))
(hyperspec-prog
"c:/home/site/ilisp/extra/hyperspec"))
(load-library hyperspec-prog)
(common-lisp-hyperspec
(thing-at-point 'symbol)))))
请注意,上面代码中的“let”将browse-url-browser-function设置为仅适用于HyperSpec的W3。您可以 要么全局设置变量(如果要始终使用W3或其他特定浏览器),要么本地设置(如果你 想要使用特定的浏览器,而不是默认的浏览器。)