Common Lisp 的 Man 或 javadoc 风格的文档

2024-03-04

是否有任何类型的常见 lisp 文档,例如 javadoc、man 甚至类似智能感知的弹出窗口?我刚刚开始学习common lisp,手上记忆力不够。

我正在使用 emacs 和 slime——它有制表符补全功能,但看起来信息量不大。

Thanks!


以防万一这个问题是想问参考资料在哪里——网上有几个超规格可用。如果您在 Google 上搜索“hyperspec function-name”之类的内容,您很有可能会找到其中之一。

http://clhs.lisp.se/Front/index.htm http://clhs.lisp.se/Front/index.htm

http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/FrontMatter/index.html http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/FrontMatter/index.html

例如。

根据您的编辑器,您通常可以将其配置为也显示超规范内容。在 Emacs 中使用 SLIME 你可以做到M-x slime-hyperspec-lookup RET symbol-to-look-for

另一个方便的工具是apropos- 通过跑步(apropos "substring-in-the-symbol-name")您将获得与“符号名称中的子字符串”匹配的所有符号的列表。

SLIME 本身提供了良好的自动补全功能。可能会让您困惑的是,默认键可能绑定到您的系统未分派到 Emacs 的某些内容(例如 M-TAB),以便将其重新绑定到您可以执行的其他操作(在您的 .emacs 文件中):

(define-key lisp-mode-map (kbd "C-x .")
  'slime-complete-symbol)
(define-key lisp-mode-map (kbd "C-x /")
  'slime-complete-form)
(define-key lisp-mode-map (kbd "C-x ,")
  'slime-fuzzy-complete-symbol)

此外,Emacs 自己提供“词汇”补全 - 如果你按 M-/,这将尝试将单词补全为具有相同后缀的单词 - 它的工作效果出奇的好,特别是当你必须输入长变量/函数名称时:)

Also, SLIME binds C-c C-d f to slime-describe-function-at-point and C-c C-d d to slime-describe-symbol-at-point and C-c C-v d to slime-describe-presentation-at-point.

此外...经过相当长的一段时间后,我得到了一个启示...如果您在包含错误堆栈跟踪的缓冲区中按 RET 键,指向堆栈条目,它将显示内部变量的值函数在该堆栈级别。如果当该点位于这些变量中的任何一个上时按 RET,它将打开一个描述该变量的缓冲区。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Common Lisp 的 Man 或 javadoc 风格的文档 的相关文章

  • gradle build Javadoc 任务因“未知标签:attr”而失败

    我正在尝试建立android autofittextview https github com grantland android autofittextview使用 gradle 从命令行进行项目 然而 每次都失败并出现以下错误 User
  • 有没有自动更新Javadoc的工具?

    我工作的代码库 很混乱 这种混乱的一方面是我们有大量方法 其签名不再与关联的 Javadoc 匹配 例如 param foo public void doFoo int bar 我不喜欢生成的 Javadoc 因为它几乎总是毫无价值 但我确
  • PhpDocs:链接到“@deprecated”标签描述中的另一个方法?

    是否可以链接到另一个方法 类 属性 等 在我的项目内联内 deprecated标签 像这样 Method description deprecated 1 0 Reason for deprecation use link newMetho
  • 与 emacs/slime 的其他 Lisp/Scheme 实现等效的 'lein swank'

    我一直在使用 emacs slime 来编码 lisp 但是使用 Clojure 我发现了 lein swank 我必须说它非常有用 因为我可以连接到运行 clojure 的服务器 其他 Lisp 实现怎么样 哪些 Lisp 实现提供了与
  • Django Sphinx 自动模块——基础知识 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个包含多个大型应用程序的项目 其中设置和应用程序文件是分开的 目录结构是这样的 项目名 init py apps init py
  • 阅读宏:你用它们做什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在类Unix操作系统下方便的运行SBCL代码?

    David James 写了问题和答案 我将对其进行编辑以符合 Stackoverflow 标准 使用 SBCL 您可以将 Lisp 代码编译为机器代码 像 Java net C 甚至 C 一样 您将需要运行时 所以有两种方法来编译 Com
  • 如何记录 Delphi 中引发的异常? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我经常调用一个函数Foo并想知道这个函数可能会抛出什么异常 为了找出答案 我然后研究了实施Foo 但这还不够 Foo确实可能调用一个函数Bar这
  • 防止 LISP 中的终端输出

    我想运行一个函数 但不让它在终端中输出结果 例如 set A B 正常返回B在控制台中如下所示 gt gt gt set A B B gt gt gt A B 我不希望它返回任何东西 我仍然希望该函数能够完成它应该做的事情 只是默默地 gt
  • Common Lisp 中的(随机)不那么随机?

    好的 最后一个问题 我将用 Common Lisp 完成我的猜数游戏 D 每当游戏开始 或者在第一个游戏之后开始新游戏 时 都会调用以下函数 Play the game defun play If it s their first time
  • Eclipse Helios 不显示 Javadoc

    我最近买了一台新计算机 并在其中安装了 Eclipse Helios 之前 在我的旧计算机上 当我使用控制辅助 Ctrl 空格 并突出显示建议的方法时 该方法的 Javadoc 经常出现在控制辅助弹出窗口的一侧 其中包含方法描述和参数等 然
  • F# 中的非类型化/类型化代码引用与宏卫生之间是否存在关系?

    我想知道 F 中的非类型 类型代码引用与宏系统的卫生之间是否存在关系 他们是否用各自的语言解决相同的问题 或者它们是不同的关注点 元编程方面是唯一的相似之处 即使在这方面 也存在很大的差异 您可以将宏的转换器视为从语法到语法的函数 就像您可
  • 展开方案中的函数

    Goal 实施unfold仅使用两个参数的函数 论据 第一个参数是 f 它接受某种类型 I 的初始值并返回 nil 或两个元素的 cons 对 这两个元素中的第一个是某种类型 A 的列表中的下一个元素 下一个初始值又是某些类型 I 第二个参
  • 在 Lisp 解释过程中,“读者”的任务是什么?

    我想知道 读者 在解释 编译 Lisp 程序期间的目的 或者更准确地说 是 读者 的任务 从我刚刚完成的问题前研究来看 在我看来 读者 特别是本例中的 Clojure 可以被视为 语法预处理器 它的主要职责是读取器宏和原始形式的扩展 所以
  • 在哪里记录 C 或 C++ 中的函数? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我有一个包含多个文件的 C 程序 所以我有 例如 stuff c它实现了一些功能 并且stuff h与函数原型 我应该如何在注释中记录功能 我应
  • 宏扩展可以包含(声明...)表达式吗?

    Common Lisp Hyperspec 规定 宏形式不能扩展为声明 声明表达式必须显示为它们引用的形式的实际子表达式 我对 扩展到 的含义感到困惑 由于显而易见的原因 如下宏将不起作用 defmacro optimize fully d
  • 为什么在基于 Lisp 的语言中习惯上将许多右括号放在一行上?

    通常代码如下所示 one thing another thing arg1 f arg5 r another thing arg1 f arg5 r 为什么不喜欢这样 one thing another thing arg1 f arg5
  • 我应该在 javadoc 类和方法注释中写什么?

    我目前已经创建了一个应用程序 需要一些帮助来为其编写 javadoc 这是代码 import java lang import java util import java io import java net author Name HER
  • 对于案例,这些表达案例的方法中哪种最好?

    这些都有效 defun testcaseexpr thecase case thecase foo format t matched foo bar format t matched bar funk format t matched fu
  • Javadoc 错误 - java.lang.reflect.InitationTargetException

    我正在尝试从 yDoc 库生成 uml 图 它基本上使用 Javadoc 来解析 Java 源文件 但是 当我尝试从终端 OS X 执行命令时 出现以下错误 javadoc error In doclet class ydoc doclet

随机推荐