eval-expression 如何弹窗显示历史记录,并根据当前的输入对历史记录进行搜索?

就像是 ivy 包中的 counsel-M-x 那样,可以弹窗显示,并根据输入进行搜索。

image

不过搜索的不是命令,而是搜索历史记录。

研究一下 consult吧,应该可以做。

C-r 就可以搜索历史

C-r 没有反应,但是 M-r 可以搜索。但是只能搜索最靠近的一个。能不能像 counsel-M-x 那样,以 mini-buffer 的形式显示结果。

而且我没有找到 eamacs 29 把 eval-expression history 储存在哪里?

原理上是可以的,但是在 emacs 29.0 中我没有找到这个 eval-expression 的 history list 存储在什么地方

read-expression-history

1 个赞

非常感谢。你比 chatgpt 厉害多了,这东西给我在哪里乱回答。

可以参考一下 GPT4 的输出:

如果你启用了 counsel-mode,进入eval-expressionC-r 会执行 (counsel-minibuffer-history)。效果如下

非常感谢。我自己用 ivy-read 手撕了一个出来,没想到有现成的

gpt4 感觉好厉害呀。你是开了 Pro 版吗?

不过好像关闭后并不会丢失历史记录。

是开了会员,GPT4胡说八道的情况相比GPT3.5有所改善。所以在询问一个自己不知道的东西时,GPT4的输出会更可靠一些。