GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/emacs/Environment.html ・ emacs-doc.conao3.com

C.4 環境変数

環境はオペレーティングシステムの機能であり、名前と値を持つ変数の集合で構成されています。各変数は環境変数と呼ばれます。環境変数の名前は大文字と小文字を区別し、通常は大文字のみが使用されます。値はすべてテキスト文字列です。

環境が有用なのは、サブプロセスが親プロセスから自動的に環境を継承する点にあります。つまり、ログインシェルで環境変数を設定すれば、実行するすべてのプログラム(Emacsを含む)がそれを自動的に認識できるということです。Emacsのサブプロセス(シェル、コンパイラ、バージョン管理プログラムなど)も同様に、Emacsから環境を継承します。

Emacs内では、コマンド M-x getenv は環境変数の名前を読み取り、その値をエコーエリアに出力します。M-x setenv はEmacs環境に変数を設定し、C-u M-x setenv は変数を削除します。(‘$’ による環境変数の置換は、ファイル名と同様に値に対しても機能します。$ を含むファイル名を参照してください。)変数 initial-environment には、Emacsが継承した初期環境が格納されています。

Emacs外で環境変数を設定する方法は、オペレーティングシステム、特に使用しているシェルによって異なります。例えば、Bashを使って環境変数 ORGANIZATION を ‘not very much’ に設定する方法は以下の通りです。

export ORGANIZATION="not very much"

それでは、cshまたはtcshでのやり方は以下の通りです。

setenv ORGANIZATION "not very much"

EmacsがX Window Systemを使用している場合、Xを制御する各種環境変数がEmacsでも有効になります。詳細については、Xのドキュメントを参照してください。