【发布时间】:2017-12-29 11:35:24
【问题描述】:
我见过很多例子,其中 (set-interval "my-method" n) 函数用于在浏览器中每 n 秒调用一次函数,但我无法运行 set-interval 函数。
如果我使用:
(ql:quickload :parenscript)
(use-package :parenscript)
(use-package: ps-window-wd-symbols)
我遇到很多命名空间冲突,@987654324@ 仍然是一个未定义的函数。
我也尝试过(ps:unobfuscate-package "ps-window-wd-symbols"),它返回 NIL 并且什么都不做。
这样做的正确方法是什么?
更新:使用(apropos "set-interval") 提供:
(apropos "set-interval")
SET-INTERVAL
SMACKJACK::SET-INTERVAL
PS-WINDOW-WD-SYMBOLS:SET-INTERVAL
所以它在两个地方提供。尝试(smackjack::set-interval NIL NIL) 也会导致未定义函数错误。
使用 M-. 在我的主项目命名空间中返回“No known Symbol”。
【问题讨论】:
-
如果这些示例在您可以编译和运行的代码中,也许您可以使用 slime 来查找符号的定义 (
M-.),这将为您提供关于它在哪里的线索。您是否尝试过使用(apropos "SET-INTERVAL")?我是否正确理解您正在尝试查找导出此符号的包? -
另外你确定
(set-interval a b)通常没有a是一个函数(不是一个字符串)和b毫秒数,或者我在api上不清楚 -
Apropos 告诉我它是由 Smackjack 和 ~ps-windows-wd-symbols~ 提供的。我将尝试重新混淆 ~ps-windows-wd-symbols~ 并具体指定 smackjack。
-
我已经更新了主要问题。
-
您在第二个
use-package表单中放错了:。我想这是一个错字。
标签: lisp common-lisp parenscript