MacVim и Mercurial регистрация - PullRequest
8 голосов
/ 28 октября 2010

Я пытаюсь использовать MacVim в качестве редактора по умолчанию (очевидно, на моем Mac).Я бы хотел, чтобы MacVim редактировал сообщения коммита, когда я hg ci.К сожалению, когда я делаю это (либо устанавливая EDITOR=mvim или alias vi='mvim'), MacVim выскакивает с пустым сообщением (то есть ни с одним из шаблонов в нижней половине), и когда я сохраняю это сообщение о коммите, я получаю сообщение об ошибке "abort:пустое сообщение о фиксации ".

Есть ли способ использовать MacVim (предположительно через mvim) для редактирования сообщений фиксации при проверке изменений в Mercurial?

Спасибо за чтение, и яс нетерпением жду ответов.

Брайан

Ответы [ 2 ]

11 голосов
/ 28 октября 2010

Set EDITOR='mvim -f', в соответствии с советами из FAQ для работы с Git:

Как я могу использовать MacVim для редактирования сообщений Git commit?

Добавить следующую строку в файл ~/.profile:

export EDITOR='mvim -f -c "au VimLeave * !open -a Terminal"'

Последняя часть гарантирует, что Терминал снова получает фокус после закрытия сообщения фиксации. (Обратите внимание, что вам нужно поместить скрипт mvim в свой путь, чтобы это работало.)

0 голосов
/ 14 июня 2011

Если у вас есть несколько SCM на компьютере (например, вы должны работать с Subversion и Mercurial, как я), вы можете дифференцировать редактор, используя HGEDITOR вместо более общего EDITOR env. Например, у меня установлены следующие переменные окружения:

export HGEDITOR='mvim -f -c "au VimLeave * !open -a Terminal"'
export SVN_EDITOR='mvim -f -c "au VimLeave * !open -a Terminal"'

В этом случае это бессмысленно, потому что конфигурация одинакова, но это просто для иллюстрации.

Это, конечно, также поднимает вопрос о том, что вы можете установить EDITOR и получить его в качестве значения по умолчанию для ваших различных приложений, которые его используют, а затем переопределить его специфичной для приложения переменной для тех приложений, которым нужно что-то другое. Я склонен использовать переменные, специфичные для приложения, просто чтобы быть ... тщательным, я думаю (некоторые могут назвать это чем-то другим:).

...