21

我正在尝试在终端外的 emacs 上打开文件。当我编码而不是通过终端进行编码时,我更喜欢 gui/ide 环境。我最初认为键入emacs filename.py会通过 Emacs.app 打开该文件,但它只允许我通过终端编辑文件。当这不起作用时,我考虑在我的主目录中编辑 .profile 和 .emacs 文件,但这无济于事。

也许这比我读过的更直观,但我似乎无法弄清楚。任何帮助表示赞赏。

4

6 回答 6

37

假设您从Homebrew安装了 Emacs,如下所示:

brew install emacs --with-cocoa

只需键入以下命令即可从终端打开 Emacs.app:

open -a Emacs filename.py

如果您希望在同一框架中打开所有文件,而不是新框架,请将其放入您的.emacs文件中:

(setq ns-pop-up-frames nil)
于 2013-08-21T09:54:00.083 回答
8

从终端打开 Emacs 文件的最佳方式是使用emacsclient命令,该命令将在您现有的 Emacs 应用程序中打开文件(防止启动时间)。如果你在 OSX 上并且你通过 Homebrew 安装了 Emacs,那么emacsclient二进制文件已经设置好了。(在您的 Emacs 配置中,您必须包含(server-start)某处。)

如果您确实想启动一个新的 GUI 应用程序实例,您可以设置自己的 shell 脚本并将其放在PATH现有emacs二进制文件之前的某个位置。听起来您正在使用 Homebrew,它将emacs二进制文件设置为以下 shell 脚本:

#!/bin/bash
/usr/local/Cellar/emacs/24.3/Emacs.app/Contents/MacOS/Emacs -nw  "$@"

-nw就是阻止 Emacs 在 GUI 模式下打开的原因。您可以制作自己的emacsshell 脚本并省略-nw

#!/bin/bash
/usr/local/Cellar/emacs/24.3/Emacs.app/Contents/MacOS/Emacs "$@"
于 2013-08-21T04:14:39.923 回答
5

为了做你想做的事,你需要找到 Emacs.app 中包含的实际二进制文件的位置,并将其用作命令而不是 emacs。最有可能的是,它在

/path/to/Emacs.app/Contents/MacOS/Emacs

如果您的 Applications 文件夹中有 Emacs.app ,这通常是

/Applications/Emacs.app/Contents/MacOS/Emacs

要使用更短的命令进行设置,您可以尝试将以下行添加到您的 .profile (我不知道您使用什么 shell),或者它对您的 shell 具有的任何等效项(这适用于 bash 和 zsh,至少):

alias emacsgui='/Applications/Emacs.app/Contents/MacOS/Emacs'
于 2013-08-21T02:43:27.640 回答
5

解决这个问题的现代方法是使用Homebrew Cask安装 Emacs :

brew cask install emacs

资料来源: Homebrew 项目负责人 Mike McQuaid 的评论,内容如下:

不接受 Cocoa 对 Emacs 的支持。这是由 提供的brew cask install emacs

于 2019-03-01T00:00:26.540 回答
2

One should link emacs to /Applications if not already done,

brew linkapps emacs

to link the emacs to symlink emacs installed in Cellar. Once symlinked, you can open emacs by

open -a emacs

as already pointed out by @katspaugh

于 2015-04-26T09:49:02.217 回答
0

brew 不再有 cask 命令。我使用过brew install emacs并且可以在我的应用程序目录中找到安装的 Emacs 应用程序。您也可以前往https://emacsformacosx.com并下载 .dmg 文件。

于 2021-10-30T00:40:49.200 回答