Как запустить "emacsformacosx" в терминале - PullRequest
25 голосов
/ 05 февраля 2012

Я использую MAC OX 10.6 и устанавливаю emacs отсюда http://emacsformacosx.com/

Я хочу знать, как запустить его в терминале, чтобы мой ecb мог открыть текущий каталог

Ответы [ 5 ]

33 голосов
/ 26 февраля 2013

На самом деле это довольно просто, просто запустите его из терминала следующим образом:

/Applications/Emacs.app/Contents/MacOS/Emacs -nw

опция -nw означает запуск emacs без фрейма графического интерфейса.

Вы можете поместить в свою оболочку следующее (на моем mac .zshenv):

alias Emacs="/Applications/Emacs.app/Contents/MacOS/Emacs -nw"

Тогда у меня просто две команды:

Emacs: для emacsверсия 24

emacs: для яблочной версии emacs

Конечно, вы можете просто псевдоним Emacs.app для emacs, но это позволяет мне настроить их по-разному - например, Emacs24 позволяет мне использовать list-пакеты и пр.Emacs 22 игнорирует большую часть этого, поэтому я всегда могу вернуться к «голому металлу» Emacs, если это будет необходимо.Ваше использование может отличаться, но если вы не помните аргументы emacs, вы можете найти их, выполнив следующее:

emacs --help

Некоторые интересные из них:

Emacs.app --fullscreen
Emacs.app --line-spacing
Emacs.app --vertical-scroll-bars

Более подробная информация здесь:http://www.gnu.org/software/emacs/manual/html_node/emacs/Option-Index.html#Option-Index

9 голосов
/ 07 февраля 2012

Ответ от @Toymakerii хороший, но вы также можете подумать о добавлении:

export PATH=/Applications/Emacs.app/Contents/MacOS/bin:$PATH

Таким образом, вы можете использовать emacsclient для открытия файлов в уже запущенном экземпляре Emacs:

emacsclient -t SOMEFILE   # Open SOMEFILE in a terminal frame
emacsclient -c SOMEFILE   # Open SOMEFILE in a new graphical frame

В зависимости от вашей версии Emacs, вам может потребоваться добавить в ~/.emacs.d/init.el (или ~/.emacs, если вы старомодно) следующее:

(require 'server)
(unless (server-running-p)
  (server-start))
6 голосов
/ 09 октября 2012

В моем ~/.profile у меня есть следующее:

function emacs
{
    if [ -e "$@" ]
    then
        command open -a emacs "${@}"
    else
        touch "$@"
        command open -a emacs "${@}"
    fi
}

(Причиной наличия функции является то, что она также работает, когда указанный файл еще не существует, когда запускается emacs)

3 голосов
/ 24 января 2013

Проще всего сделать

open /Applications/Emacs.app --args foo

Тогда псевдоним будет

alias emacs=open /Applications/Emacs.app --args "${@}"

или в формате csh / tcsh

alias emacs 'open /Applications/Emacs.app --args $1'

edit: похоже, нужен полный путь, чтобы открыть правильный файл ... Я не знаю, если это проблема с Emacs.app или с tcsh

3 голосов
/ 05 февраля 2012

По умолчанию терминал открывает / usr / bin / emacs в OS X. Вы можете изменить это поведение, изменив то, что будет делать команда "emacs". Откройте ~ / .profile и введите следующее:

alias emacs=open /Applications/Emacs.app

При следующем открытии приглашения это изменение будет активным. (или вы можете запустить «source ~ / .profile»)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...