Как открыть emacs gui/ide из mac терминала?
Я пытаюсь открыть файлы на emacs за пределами терминала. Я предпочитаю среду gui/ide, когда я кодирую вместо того, чтобы делать это через терминал. Первоначально я думал, что ввод emacs filename.py
откроет этот файл через Emacs.app, однако он разрешил мне редактировать файл через терминал. Когда это не сработало, я изучил редактирование файлов .profile и .emacs в своем домашнем каталоге, но это было бесполезно.
Возможно, это более интуитивно понятное, чем то, что я читал, но я не могу понять это. Любая помощь приветствуется.
Ответы
Ответ 1
Предполагая, что Emacs установлен из Homebrew следующим образом:
brew install emacs --with-cocoa
Просто введите следующую команду, чтобы открыть Emacs.app из терминала:
open -a Emacs filename.py
Если вы хотите, чтобы все файлы, открытые в том же фрейме, вместо новых фреймов, поместите это в ваш файл .emacs
:
(setq ns-pop-up-frames nil)
Ответ 2
Лучший способ открыть файлы в Emacs с терминала - это команда emacsclient
, которая откроет файл в вашем существующем приложении Emacs (что предотвратит время запуска). Если вы находитесь на OSX и вы установили Emacs через Homebrew, двоичный файл emacsclient
уже настроен. (В вашей конфигурации Emacs вы должны указать (server-start)
где-нибудь.)
Если вы действительно хотите развернуть новый экземпляр приложения GUI, вы можете настроить свою собственную оболочку script и поместить ее в PATH
где-то до существующего двоичного файла emacs
. Похоже, вы используете Homebrew, который устанавливает двоичный файл emacs
как следующую оболочку script:
#!/bin/bash
/usr/local/Cellar/emacs/24.3/Emacs.app/Contents/MacOS/Emacs -nw "[email protected]"
-nw
- это то, что не позволяет Emacs открываться в режиме графического интерфейса. Вы можете создать свою собственную оболочку emacs
script и оставить -nw
:
#!/bin/bash
/usr/local/Cellar/emacs/24.3/Emacs.app/Contents/MacOS/Emacs "[email protected]"
Ответ 3
Чтобы сделать то, что вы хотите, вам нужно найти местоположение фактического двоичного файла, содержащегося в Emacs.app, и использовать его как команду вместо emacs. Скорее всего, он на
/path/to/Emacs.app/Contents/MacOS/Emacs
Что, если у вас есть Emacs.app в папке Applications, как это было бы типично, было бы
/Applications/Emacs.app/Contents/MacOS/Emacs
Чтобы настроить его с помощью более короткой команды, вы можете попробовать добавить в свой .profile(я не знаю, какую оболочку вы используете) следующую строку или любой ее эквивалент для вашей оболочки (это работает для bash и zsh, по крайней мере):
alias emacsgui='/Applications/Emacs.app/Contents/MacOS/Emacs'
Ответ 4
Нужно связать emacs с /Applications, если это еще не сделано,
brew linkapps emacs
чтобы связать emacs с symlink emacs, установленными в Cellar. После символической ссылки вы можете открыть emacs с помощью
open -a emacs
как уже указывал @katspaugh
Ответ 5
Современный способ сделать это - установить Emacs с помощью Homebrew Cask:
brew cask install emacs
Источник: этот комментарий лидера проекта Homebrew Майка МакКуэйда, который гласит:
Поддержка cocoa для Emacs не будет принята. Это обеспечивается brew cask install emacs
.
Ответ 6
@qaphla, я считаю, что вам понадобится "exec" в этом объявлении alias, то есть -
alias emacsgui='exec '/Applications/Emacs.app/Contents/MacOS/Emacs' '