Обновите emacs, который поставляется с OS X

11

Есть ли способ обновить редактор терминала emacs, который поставляется с OS X? Я мог удалить двоичные файлы и установить Emacs, используя dmgпакет, но идея состояла в том, чтобы обновить его до более новой версии с помощью некоторой команды.

nbro
источник

Ответы:

12

Apple контролирует, когда / если они обновляются, emacsпоэтому большинство людей просто устанавливают более новую версию инструмента и изменяют переменную PATH, чтобы новая версия была найдена первой и работала по умолчанию.

Если вам нравится этот звук, я рекомендую установить Homebrew :

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Затем установите Emacs:

brew install emacs

Добавьте ссылку, чтобы она работала как emacsв Терминале:

ln -s /usr/local/Cellar/emacs/24.5/Emacs.app /Applications

Это установит «стабильную» версию. На момент написания статьи это 24,5:

» brew info emacs
emacs: stable 24.5 (bottled), devel 25.0-dev, HEAD
GNU Emacs text editor
https://www.gnu.org/software/emacs/

Это значительно новее (24.5.1), чем версия, поставляемая с El Capitan (22.1.1):

» emacs --version
GNU Emacs 22.1.1
Отменить
источник
Однако это не значит, что, набрав emacs в Terminal, Apple сначала найдет его. Также вы должны объяснить, почему вы используете Homebrew, а не бинарный emacs, и почему вы не можете просто скопировать этот emacs поверх Apple
user151019
2
@ Марк, потому что это гораздо удобнее, чем ... на самом деле что-нибудь еще. Проверка, найдет ли он сначала версию HB.
Отменить
После тестирования есть еще одна команда, чтобы связать это. Отредактировано, спасибо.
Отменить
конечно, вам нужно больше, чем это, поскольку вы emacs в приложениях не по пути
user151019
Идея заключалась не в том, чтобы установить другой emacs, поскольку у меня уже есть .app и файл по умолчанию, а установка нового была бы просто нелепой ... Я действительно хотел обновить файл по умолчанию.
nbro
0

Это можно сделать, но лучше не делать этого. Некоторые каталоги, в том числе / usr / bin, обновляются и контролируются Apple, поэтому любые изменения там будут удаляться при обновлении ОС, также в El Capitan и выше этого пути заблокированы SiP, и поэтому вам придется пройти через несколько циклов в chnage файлы там.

$ ls -lO /usr/bin/emacs
-r-xr-xr-x  1 root  wheel  restricted,compressed 35581744 Jan 13 20:12 /usr/bin/emacs

Однако на практике в этом нет необходимости. Установите новый emacs в местах, к которым у вас есть доступ, например, для командной строки в / usr / local / bin или ~ / bin - или в версиях GUI в / Applications или ~ / Applications. / usr / local / bin - это путь по умолчанию, поэтому во всех случаях вам нужно отредактировать путь, чтобы поместить каталог, содержащий emacs, перед / usr / bin.

user151019
источник
-4

При использовании команды brew правильная команда, brew upgrade emacsдаже если вы сделали a brew update, при установке будет установлена ​​Emacs 25, более старая версия.

Просто делюсь своим опытом.

TimWirtjes
источник
Не могли бы вы быть более конкретным в своем вопросе относительно того, что вы делаете, что вы ожидаете и что вы получаете.
Тони Уильямс
Проверено на macOS 11.13.6: brew upgrade emacsпотерпит неудачу, если emacs не имеет установленной brew install emacsверсии brew, установит самую последнюю версию (прямо сейчас emacs-26.1_1).
Nohillside