如何绑定要在另一个Emacs窗口中执行的击键?

如何绑定要在另一个Emacs窗口中执行的击键?,emacs,Emacs,现在我真的很高兴知道Emacs可以代替Netbeans用于我的Java Web开发和J2ME开发。我需要一些习惯。当它发生的时候,它是非常有趣的 现在我需要在Shell窗口中发送一个命令,即antdeploy,我想将它绑定到,比如说,F5。我该怎么做?因为每次我这样做时,它都在活动缓冲区中执行。因此,在按下F5之前,我必须切换到该shell。我可以在任何窗口中按F5,但它在特定的shell窗口中执行吗 谢谢。您可以实现以下功能 (defun my-ant-run () (interactiv

现在我真的很高兴知道Emacs可以代替Netbeans用于我的Java Web开发和J2ME开发。我需要一些习惯。当它发生的时候,它是非常有趣的

现在我需要在Shell窗口中发送一个命令,即
antdeploy
,我想将它绑定到,比如说,
F5
。我该怎么做?因为每次我这样做时,它都在活动缓冲区中执行。因此,在按下
F5
之前,我必须切换到该shell。我可以在任何窗口中按
F5
,但它在特定的shell窗口中执行吗


谢谢。

您可以实现以下功能

(defun my-ant-run ()
  (interactive)
  (unless (get-buffer "shell-ant-run")
(shell (get-buffer-create "shell-ant-run")))
  (process-send-string (get-buffer-process "shell-ant-run") "ant deploy\n"))
并将其绑定到F5

  (global-set-key [f5] 'my-ant-run)

一切正常。现在,假设命令
antdeploy
应该在某个文件夹中启动,比如说,
e:\Project\CerdasCAT
,我如何实现这一点?对不起,我已经开始工作了。使用此代码(这是一个MS Windows环境):
(进程发送字符串(获取缓冲区进程“CerdasCAT”)“e:\ncd e:/\u Siswa/Rukli/CerdasCAT\nant deploy\n”)