从终端运行emacs作为单独的进程

时间:2013-07-31 13:43:27

标签: linux bash unix emacs terminal

当我运行emacs文本编辑器时,进程没有返回,所以我不能使用显然是默认行为的终端。

我找不到man中的开关或命令,但我知道这很简单。

如何将emacs作为单独的流程运行,以便我可以继续使用终端而无需打开第二个终端?

3 个答案:

答案 0 :(得分:7)

您可以通过在命令emacs &附加&符号来在后台启动任何程序。

有一个用于处理后台进程的整个框架,例如参见man jobsdisownfgbg,并在运行时尝试Ctrl-Z进程,它将暂停它并为您提供终端,允许您在前台或后台随意恢复该过程。通常,当您的shell关闭时,所有这些程序都将结束,disown允许您在结束会话后告诉程序继续运行。

答案 1 :(得分:2)

emacs --help命令给你一个提示:

   --batch             do not do interactive display; implies -q

所以运行emacs --batch(或者emacs --execute somecommand )。

如果您有一个桌面(或某些X11显示器)并希望emacs打开一个X11窗口并返回一个shell提示符,请在后台运行它(例如emacs &),尽可能多的评论

我发现在emacs中启动程序(或shell)非常有用,例如使用Emacs命令:M-x shellM-x compile(对于make等...),或M-x gdb用于调试器。

您通常在一个工作日开始时开始一个emacs。对于使用相同emacsclient的其他版本,您可以使用EDITOR(或为其设置emacs环境变量)。

答案 2 :(得分:0)

我想补充一点,Windows 确实有一个等效于 *nix 的 & 用于在单独的进程中启动程序:

start /b emacs Main.hs