web-dev-qa-db-ja.com

OS X MountainLionのemacsおよびCocoaアプリからUnix環境にアクセスする

私はMacでemacsを使用していますが、homebrewを使用してEmacsのCocoaバージョンをインストールしています。 1つの問題は、「Unixパス」を表示するために、パスを.profileから.MacOSX/environment.plistに複製する必要があることです。

私は自分の.profileでこれを使ってそれを行います:

# PATH for emacs and cocoa apps
/etc/profile begin
if [ -x /usr/libexec/path_helper ]; then
  eval `/usr/libexec/path_helper -s`
  defaults write $HOME/.MacOSX/environment PATH "$PATH"
fi

以前は機能していましたが、MountainLionをインストールすると機能しなくなりました。このバージョンで変更されたと書かれているマニュアルが見つかりません。

Mountain LionのカカオアプリケーションからUNIXパスを確認する方法を知っている人はいますか?

5
FCo

この質問に正式に答えるには:.MacOSX/environment.plistが機能しなくなった(?)か、少なくとも確実に機能しない可能性があります。 Spotlightによって起動されたアプリでは機能しませんでした。ただし、文書化されています: ランタイム構成ガイドライン:環境変数

これに代わる方法は、launchctlを使用することです。これにより、GUIアプリが環境変数にアクセスできるようになります。たとえば、これによりシェルのPATHが環境にコピーされます。

launchctl setenv PATH $PATH

$PATHに変更を加える場合は、影響を受けるアプリを再起動する必要があります。上記の構文を使用する場合は、再起動する必要はありません。ただし、/etc/launchd.confを変更した場合は、再起動する必要があります。参照: OS Xで環境変数を設定しますか?-スタックオーバーフロー

4
slhck