我想改进 emacs-eclim 并在当前编辑的项目中通过 java 类型添加增量搜索(Eclipse 中的 Shift-Ctrl-H)。
我可以调用 eclim-java-find 变体以在 *eclim: find 缓冲区中获取结果。
但我的问题来了:
如何实现一种行为,让用户输入一个 minibuffer(带有提示)并在每个 minibuffer 更改(新/删除字符)上调用一些其他函数,并将当前 minibuffer 内容作为参数或其他访问当前搜索字符串。
例如,您可以向 中添加一个函数post-command-hook
。在每个命令之后调用它(键入一个字符也是一个命令:)self-insert-command
。然后,您的函数可以使用该函数检查 minibuffer 的内容minibuffer-contents
。
只是不要忘记post-command-hook
在搜索命令完成后删除您的功能。您可以使用minibuffer-setup-hook
和minibuffer-exit-hook
来控制附加您的功能。
只是不要忘记在搜索命令完成时从minibuffer-setup-hook
/中删除您的附加功能。minibuffer-exit-hook
:)