Emacs 可以在它自己的 GUI 窗口或终端内启动(使用标志-nw
)。
哪些功能或工作流程优势仅在一种模式或另一种模式下可用?即,如果用户习惯使用一种模式,他们会错过什么?
答案1
即使没有可用的 X,终端界面也能正常工作,例如,当您不想安装 Emacs 的机器上通过 ssh 工作时,或者要修复 X 配置时,或者在硬件文本终端上工作时。(对于远程情况,如果您可以在本地运行 Emacs,则可以使用流浪汉例如,打开host.example.com:/path/to/file
——请参阅章节远程文件在手册中。
终端界面可以在里面运行屏幕或者tmux,这样您就可以让实例保持运行并远程连接到它。
X 界面显然可以做终端界面无法做到的事情,比如显示图像、使用不同的字体、使用更多的颜色、显示精美的菜单甚至工具栏、理解终端可能不允许通过的组合键、更精细地访问鼠标、直接访问 X 剪贴板和其他选择、在显示器上显示多个窗口(用 Emacs 的说法是框架)......
从 GNU Emacs 23(或 XEmacs 21)开始,您不必选择在 X 和终端之间:您可以从单个 Emacs 实例打开任意数量的文本终端和任意数量的 X 显示器上的框架。通常的方法是运行 Emacs 服务器并使用以下命令连接到它emacsclient -nw
在当前文本终端上打开一个新框架或emacsclient -c
在当前 X 显示器上打开一个新框架。在 Emacs 中,您可以使用make-frame-on-display
和make-frame-on-device
。
答案2
我在模式下遇到了一些与字体颜色和按键绑定有关的问题-nw
,我没有调查,但我猜这取决于终端。无论如何,如果可能的话,我倾向于使用 GUI 模式,而且我看不出该-nw
模式有什么好处。
答案3
在终端模式下,可以分离会话并重新连接使用screen
虽然我不使用 emacs/xemacs,但我偶尔会使用 VIM/GVIM,而且我更喜欢 GUI 版本,因为它滚动起来更流畅,而且我不需要调整术语的大小,这样我的桌面就会假定我想要所有窗口都是那个大小。
答案4
如果您在终端中使用 Emacs 并打开了多个垂直框架,则您无法从一个框架中突出显示和复制多行文本;所有框架中的文本都将被突出显示,因为它们都位于一个终端窗口中。
在 GUI 中,框架位于单独的窗口元素中,因此突出显示受到每个框架内的限制。