我使用OS X 10.8,和我以前釀造安裝的emacs的一個較新的版本比一個隨OS X.
較新的emacs的二進制文件安裝在/usr/local/bin
(24.2.1)中,以及/usr/bin
(22.1.1)中的舊版「隨附的osx」。
我更新了我的$PATH
env變量,並在其中加上了/usr/local/bin
。它在我的shell中工作正常(即鍵入emacs
運行24.2.1版本),但是當git打開編輯器時,emacs版本是22.1.1。
是不是git應該使用$PATH
找到我想要使用的編輯器?
附加信息:
$ type -a emacs
emacs is /usr/local/bin/emacs
emacs is /usr/bin/emacs
emacs is /usr/local/bin/emacs
$ env
PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
SHELL=/bin/zsh
PAGER=most
EDITOR=emacs -nw
_=/usr/bin/env
請注意,我不希望把我的編輯器的絕對路徑直接在我的git的conf,因爲我用在多個系統中,這CONF。
編輯:這是一個有點我.zshrc
:
# Mac OS X
if [ `uname` = "Darwin" ]; then
# Brew binaries
PATH="/usr/local/bin":"/usr/local/sbin":$PATH
else # Everyone else (Linux)
# snip
fi
所以,是的,我會在第一if
添加一行export EDITOR='/usr/local/bin emacs -nw'
,但我想明白爲什麼git
是不是用我的PATH
變量:)
是的,它應該從路徑中選取編輯器。你把這個調整到了你的PATH? '.zshrc'?也許它需要進入'.zshenv'。 IIRC,'.zshrc'只能在交互式shell中找到。 – jszakmeister
git打開編輯器時的參數和工作路徑是什麼?也許你應該檢查你的倉庫配置文件。 – cfy
把'PATH'調整到'.zshenv'中並沒有解決問題,並且emacs 22.1.1總是用於我使用的任何命令或我所在的回購(我檢查了我的回購配置,沒有編輯器的蹤跡那裏有相關的配置)。 –