Использование Aquamacs для РЕДАКТОРА в Subversion

1700
alyssackwan

Можно ли использовать Aquamacs в качестве редактора для Subversion. Например, если я сделаю

svn propedit svn:ignore . 

и у меня переменная EDITOR установлена ​​в "emacs", она будет использовать GNU emacs для редактора, чтобы редактировать это свойство.

В моем профиле

alias emacs="open -a /Applications/Aquamacs.app/" 

Так зовет

emacs foo.bar 

открывает файл в Aquamacs.

Установка переменной EDITOR в значение «emacs» не позволяет использовать Aquamacs. Установка для редактора '' open -a /Applications/Aquamacs.app/ '' открывает файл в Aquamacs, но поскольку open не является командой блокировки (я предполагаю), Subversion сразу же продолжается в терминале, как будто ничего не было поступил. Другими словами, он не ждет редактирования пользователя.

Я не могу узнать, можно ли вызвать open, чтобы он блокировался, или есть другая команда в OSX Terminal. Очевидно, я не знаю, сработает ли блокирование, с какой это стороны?

1

2 ответа на вопрос

5
Doug Harris

Вы должны установить свой РЕДАКТОР emacsclientвместо Emacs. Это клиентский интерфейс для внутреннего сервера emacs.

Конфигурация (один раз):

  • установить $EDITORв истощение:export EDITOR=emacsclient
  • положить (server-start)в свой .emacsфайл запуска

При запуске svn commit, crontabили другой команды, которая использует $EDITOR, файл будет открыт в Emacs. Когда вы закончите редактирование, нажмите, C-x #чтобы вернуть управление svn, crontabи т.д.

Взгляните на этот вопрос о stackoverflow и документации по emacs на сервере emacs и вызове emacsclient .


Обновление: я использую стандартную сборку Emacs, а не Aquamacs, поэтому я погуглил, чтобы узнать, нужны ли какие-либо специальные приемы для Aquamacs и emacsclient. В FAQ по emacs wiki Aquamacs я нашел этот фрагмент:

Чтобы использовать инструменты командной строки «aquamacs» и «emacsclient», в строке меню Aquamacs выберите «Инструменты-> Установить инструменты командной строки». Если вы обновляете Aquamacs, вам может потребоваться переустановить инструменты командной строки.

Я полагаю, что если вы этого не сделаете, вы будете использовать то, emacsclientчто поставляется с OS X, и это может не посылать правильное сообщение в Aquamacs.re-установить инструменты командной строки.

4
revher

Это похоже на работу:

export EDITOR="/usr/bin/open -n -W -a /Applications/Aquamacs.app" 
Чтобы использовать Aquamacs с Git, я должен был применить это и установить для core.editor значение emacsclient. Dror 11 лет назад 0