shell:调用emacsclient

时间:2016-01-20 20:49:18

标签: bash emacs

在调用emacsclient时,是否可以重用backgrounded的emacsclient窗口?

这里有一些背景信息(我主要在终端模式下使用emacs,而不是gui帧)

当计算机启动时,将启动emacs守护程序。 在OS X终端中,当我想打开文件时,我会emacsclient /filename -nw

现在当我想做bash的东西时,我按下C-z到背景emacs。 现在,emacs出现在jobs命令中。 fg命令也会 让它重新出现。

但是当我在bash中浏览时,我会看到另一个要打开的文件。 现在,如何使用单个命令重用最小化的emacsclient会话?

1 个答案:

答案 0 :(得分:1)

是的,请将其放在.bashrc

ec() {
    kill %emacsclient 2> /dev/null
    emacsclient -nw --eval '(find-file "'"$PWD/$1"'")'
}

使用ec file.txt打开文件。这有点hacky,但我认为它会做你想要的。

我打开文件find-file,以便在您关闭Emacs窗口(C-x C-c)后保持打开状态。然后,当您打开一个新文件时,我会杀死旧的Emacs窗口并打开一个新窗口。结果是旧文件永远保持打开状态,因此您似乎重用了Emacs窗口。