2

私は OS X 10.8 を使用しており、brew を使用して、OS X に同梱されているものよりも新しいバージョンの emacs をインストールしました。

新しい emacs バイナリは/usr/local/bin(24.2.1) にインストールされ、古い「shipped-with-osx」は (22.1.1) にインストールされ/usr/binます。

$PATH環境変数を前に追加して更新/usr/local/binしました。私のシェルでは問題なく動作しますが (つまり、入力emacsすると 24.2.1 バージョンが実行されます)、git でエディターを開くと、emacs のバージョンは 22.1.1 になります。

$PATH使用したいエディターを見つけるためにgit を使用することになっていませんか?

追加情報:

$ 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

複数のシステムでこの conf を使用しているため、エディターの絶対パスを git 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

はい、export EDITOR='/usr/local/bin emacs -nw'最初の に行を追加できますが、変数を使用しないif理由を理解したいと思います:)gitPATH

4

2 に答える 2

2

Installing git 1.8.0 fixed the issue.

Old version was 1.7.9.6 (Apple Git-31.1). This is weird as I didn't find any references to this kind of problem in the changelogs.

于 2012-11-10T22:55:15.213 に答える
0

最も簡単な修正方法は、環境変数にフル パスを設定することです。

OSX はデフォルトで bash(1) を使用するため、すべての対話型 bash シェルの変数を設定するためにexport EDITOR=/usr/local/bin/emacs -nwどこかに固執します。.bash_profile

于 2012-11-09T11:18:53.427 に答える