common-lisp - 在 Slime 的检查器中,检查完一个元素后,我怎样才能回到对象列表?
问题描述
我正在使用 Slime (Emacs) 和 Common Lisp (SBCL)。在计算一个表达式之后,REPL 返回一个 CL 对象列表:
(#<BOOKMARK-ENTRY {1009AFB963}> #<BOOKMARK-ENTRY {1009AFD5A3}>
#<BOOKMARK-ENTRY {1009AFDB53}> #<BOOKMARK-ENTRY {1009AFE0E3}>
#<BOOKMARK-ENTRY {1009AFE683}> #<BOOKMARK-ENTRY {1009AFEC23}>
#<BOOKMARK-ENTRY {1009AFF173}> #<BOOKMARK-ENTRY {1009AFF753}>
#<BOOKMARK-ENTRY {1009AFFCD3}> #<BOOKMARK-ENTRY {1009B00233}>
#<BOOKMARK-ENTRY {1009B00783}> #<BOOKMARK-ENTRY {1009B00CE3}>
#<BOOKMARK-ENTRY {1009B01253}> #<BOOKMARK-ENTRY {1009B01823}>
#<BOOKMARK-ENTRY {1009B01DD3}> #<BOOKMARK-ENTRY {1009B02393}>
#<BOOKMARK-ENTRY {1009B028B3}> #<BOOKMARK-ENTRY {1009B02E13}>
#<BOOKMARK-ENTRY {1009B03373}> #<BOOKMARK-ENTRY {1009B03903}>
#<BOOKMARK-ENTRY {1009B03EB3}> #<BOOKMARK-ENTRY {1009B04453}>
#<BOOKMARK-ENTRY {1009B049F3}> #<BOOKMARK-ENTRY {1009B04F23}>
#<BOOKMARK-ENTRY {1009B054A3}> #<BOOKMARK-ENTRY {1009B05AB3}>
#<BOOKMARK-ENTRY {1009B05FF3}> #<BOOKMARK-ENTRY {1009B06513}>
#<BOOKMARK-ENTRY {1009B06A83}> #<BOOKMARK-ENTRY {1009B07133}>
#<BOOKMARK-ENTRY {1009B076B3}> #<BOOKMARK-ENTRY {1009B07C13}>
#<BOOKMARK-ENTRY {1009B08213}>)
如果我单击以检查列表,则会打开一个新窗口,其中列出了所有对象:
#<CONS {1009AFCBB7}>
--------------------
A proper list:
0: #<BOOKMARK-ENTRY {1009AFB963}>
1: #<BOOKMARK-ENTRY {1009AFD5A3}>
2: #<BOOKMARK-ENTRY {1009AFDB53}>
3: #<BOOKMARK-ENTRY {1009AFE0E3}>
4: #<BOOKMARK-ENTRY {1009AFE683}>
5: #<BOOKMARK-ENTRY {1009AFEC23}>
6: #<BOOKMARK-ENTRY {1009AFF173}>
7: #<BOOKMARK-ENTRY {1009AFF753}>
8: #<BOOKMARK-ENTRY {1009AFFCD3}>
9: #<BOOKMARK-ENTRY {1009B00233}>
10: #<BOOKMARK-ENTRY {1009B00783}>
11: #<BOOKMARK-ENTRY {1009B00CE3}>
12: #<BOOKMARK-ENTRY {1009B01253}>
13: #<BOOKMARK-ENTRY {1009B01823}>
14: #<BOOKMARK-ENTRY {1009B01DD3}>
15: #<BOOKMARK-ENTRY {1009B02393}>
16: #<BOOKMARK-ENTRY {1009B028B3}>
17: #<BOOKMARK-ENTRY {1009B02E13}>
18: #<BOOKMARK-ENTRY {1009B03373}>
19: #<BOOKMARK-ENTRY {1009B03903}>
20: #<BOOKMARK-ENTRY {1009B03EB3}>
21: #<BOOKMARK-ENTRY {1009B04453}>
22: #<BOOKMARK-ENTRY {1009B049F3}>
23: #<BOOKMARK-ENTRY {1009B04F23}>
24: #<BOOKMARK-ENTRY {1009B054A3}>
25: #<BOOKMARK-ENTRY {1009B05AB3}>
26: #<BOOKMARK-ENTRY {1009B05FF3}>
27: #<BOOKMARK-ENTRY {1009B06513}>
28: #<BOOKMARK-ENTRY {1009B06A83}>
29: #<BOOKMARK-ENTRY {1009B07133}>
30: #<BOOKMARK-ENTRY {1009B076B3}>
31: #<BOOKMARK-ENTRY {1009B07C13}>
32: #<BOOKMARK-ENTRY {1009B08213}>
如果我单击任何对象(书签条目),我将看到我想要的带有插槽值的信息,例如:
#<BOOKMARK-ENTRY {1009B01253}>
--------------------
Class: #<STANDARD-CLASS NYXT:BOOKMARK-ENTRY>
--------------------
Group slots by inheritance [ ]
Sort slots alphabetically [X]
All Slots:
[ ] ANNOTATION = ""
[ ] DATE = @2021-07-21T19:13:02.981953-03:00
[ ] SEARCH-URL = ""
[ ] SHORTCUT = ""
[ ] TAGS = ("certo" "deu" "tudo" "white" "yankee")
[ ] TITLE = ""
[ ] URL = #<QURI.URI.HTTP:URI-HTTPS https://en.wikipedia.org/wiki/Yankee_White>
[set value] [make unbound]
好的。但是我如何留下这些信息并返回到以前的信息呢?
我的意思是屏幕:
```lisp
#<CONS {1009AFCBB7}>
--------------------
A proper list:
0: #<BOOKMARK-ENTRY {1009AFB963}>
.
.
.
32: #<BOOKMARK-ENTRY {1009B08213}>
?
有这个命令吗?是什么名字?有按键绑定吗?
谢谢。
解决方案
使用后C-h m
,我设法在此缓冲区中找到了slime-inspector-pop
绑定的命令。l
为了说明,让我们访问编号为 #26 的对象:
26: #<BOOKMARK-ENTRY {100B847933}>
我按下return
它,我得到:
#<BOOKMARK-ENTRY {100B847933}>
--------------------
Class: #<STANDARD-CLASS NYXT:BOOKMARK-ENTRY>
--------------------
Group slots by inheritance [ ]
Sort slots alphabetically [X]
All Slots:
[ ] ANNOTATION = ""
[ ] DATE = @2021-07-03T10:42:53.050403-03:00
[ ] SEARCH-URL = ""
[ ] SHORTCUT = ""
[ ] TAGS = ("CNN")
[ ] TITLE = ""
[ ] URL = #<QURI.URI.HTTP:URI-HTTPS https://www.cnnbrasil.com.br/>
[set value] [make unbound]
要回来,我只是这样做l
。因此,我回到了前一个窗口,但有细微的差别。现在,列表中的对象名称略有不同@13
:
26: @13=#<BOOKMARK-ENTRY {100B847933}>
如果我的解释没有错,这表明该对象已被检查并且它是要访问的列表中的第 13 个对象。
推荐阅读
- sql - SQl 查询以获取类似于图像的输出
- random - 如何纠正 TypeError 与选择()缺少 1 个必需的位置参数:“人口”
- java - 如何将“对象”转换为未知的自定义数据类型/类对象?
- java - 如何在 Android 中的多个活动和片段中保留对象?
- node.js - mongodb 连接大约需要 10 秒
- python - 据称正确的 SPARQL 查询(Wikidata)在 Python 中没有产生任何结果
- python - 有没有办法使用熊猫将多个标志列汇总为一个?
- python-3.x - 如何从python数组创建对象
- python - 使用 numpy 数组 Pandas 修改数据框中多列的快速方法
- r - 如何在 RStudio 中创建未堆叠的点图?