MacOSXMacOSX ではログインにシェルを介さないため、ログイン中のプロセス全体で環境変数を共有したい場合には ~/.MacOSX/enviroment.plist を使う。この方式はこの方式で筋が通っているのだけど、他の Unix 環境とシェルの設定ファイルを共有しつつ、できるかぎり同じことを書く手間を省きたい。ということで environment.plist を自動生成する。シェルの起動中は環境変数が見えているのだから、それを書き出してやればよい。 #!/usr/local/bin/zsh VARS=(PATH GAUCHE_LOAD_PATH SCALA_HOME) mkdir -p ~/.MacOSX exec > ~/.MacOSX/environment.plist cat "http://www.apple.com/DTDs/ PropertyList-1.0.dtd