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