按照这个食谱,我准备了这个搜索命令:
(shell-command "grep . /tmp/listoffiles | xargs grep -n mystring" 1)
如果我使用eval-last-sexp
( ^++ x)运行它e,则在命令之后将出现一个包含匹配项的列表,其格式与grep-mode
. 但是这个缓冲区不在,grep-mode
所以我不能自动跳转到所需的文件/行。
我想要的是:我将使用一个缓冲区来输入我的搜索命令;转到其中一个命令的末尾,然后按下组合键将触发一个功能run-grep-in-other-buffer
。此函数必须执行以下操作:
- 在 处评估搜索命令
point
,如下所示eval-last-sexp
- 创建一个新缓冲区
- 在新缓冲区中输出搜索命令的结果
- 将新缓冲区设置为
grep-mode
- 激活新缓冲区。
我lisp
的真的很有限。我怎么能做到这一点?