4

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

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

我怎样才能emacs作为一个单独的进程运行,以便我可以继续使用终端而不打开第二个?

4

3 回答 3

9

您可以通过在命令后面附加一个 & 符号来在后台启动任何程序,emacs &.

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

于 2013-07-31T13:47:59.943 回答
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 shell,或M-x compile(用于make等...),或M-x gdb用于调试器。

emacs您通常在工作日开始时开始单曲。您可以使用emacsclient(或将您的EDITOR环境变量设置为)其他版本使用相同的emacs.

于 2013-07-31T13:49:24.293 回答
0

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

start /b emacs Main.hs
于 2021-02-07T02:39:18.740 回答