想实现的功能: emacs快捷键,快速打开外部图形界面程序,比如linux的terminal或者nautilus。而且保证emacs关闭后,该外部命令进程不会退出。
我会设置emacs快捷键。shell-command命令我也了解,嫌弃它操作不直接。 谁能指导一下如何实现上述功能,非常感谢。
已结,谢谢楼下有缘人。期望答案在5楼,经实验ok。
想实现的功能: emacs快捷键,快速打开外部图形界面程序,比如linux的terminal或者nautilus。而且保证emacs关闭后,该外部命令进程不会退出。
我会设置emacs快捷键。shell-command命令我也了解,嫌弃它操作不直接。 谁能指导一下如何实现上述功能,非常感谢。
已结,谢谢楼下有缘人。期望答案在5楼,经实验ok。
counsel
这个插件里的 counsel-linux-app
Mac 下用 M-!
(shell-command
)和 open(1)
:
M-! open -a Terminal
M-! open -a 'Google Chrome'
打开之后的程序与 Emacs 就没关系了,所以 Emacs 退出也无没关系。此外也可以用 AppleScript,但仅仅需要打开应用的话,没多少必要。
如果是在Linux下的话,需要用nohup命令吧 M-! nohup xterm & 经测试,在ubuntu16.04+emacs25.1上是可以的
我原本的意思,是想要设置一个快捷键,来快速开启外部命令。 M-!我知道办法。但是我不能(或者不会)把“M-! command”设置成快捷键。
写一个命令,再绑定按键。
;; 定义命令
(defun open-some-app ()
(interactive)
;; M-! 对应 shell-command
(shell-command "command"))
;; 绑定按键
(global-set-key some-key 'open-some-app)
之前就是这种方法,可是没成功。应该是因为在windows系统做的试验,晕脑了吧。 明天去公司用linux主机试验一下。 谢谢你的答案。
如果是debain或ubuntu的话,试试 GitHub - lujun9972/el-start-menu: start-menu for executing external program like in windows
哈哈,看起来我们大emacs又干掉了program launcher,以后程序又可以少装一个了:wink: