変数varの値とドキュメントを表示します(describe-variable
)。
変数varの値をvalueに変更します。
変数の値を調べるには、C-h v
(describe-variable
)を使用します。これはミニバッファーを使用して補完つきで変数名を読み取り、、変数の値とドキュメントの両方を表示します。たとえば、
C-h v fill-column RET
これは以下のような出力を表示します:
fill-column is a variable defined in ‘C source code’. Its value is 70 Automatically becomes buffer-local when set. This variable is safe as a file local variable if its value satisfies the predicate ‘integerp’. Probably introduced at or before Emacs version 18. Documentation: Column beyond which automatic line-wrapping should happen. Interactively, you can set the buffer local value using C-x f. You can customize this variable.
‘You can customize the variable’の行は、この変数がユーザーオプションであることを示します。C-h vはユーザーオプションだけに制限されません。これはカスタマイズ可能でない変数にも使用できます。
特定のカスタマイズ可能な変数をセットする一番簡単な方法は、M-x set-variableです。これはミニバッファーで変数名を読み取り(補完つき)、次にミニバッファーを使用して新しい値にたいするLisp式を読み取ります(M-nを使用してミニバッファーで編集するために、古い値を挿入することができます)。たとえば、
M-x set-variable RET fill-column RET 75 RET
これはfill-column
を75にセットします。
M-x set-variableはカスタマイズ可能な変数に制限されていますが、以下のようなLisp式で任意の変数をセットできます:
(setq fill-column 75)
このような式を実行するには、M-:
(eval-expression
)とタイプして、ミニバッファーで式を入力します(Emacs Lisp式の評価を参照してください)。かわりに*scratch*バッファーに移動して、式をタイプしてからC-jとタイプすることもできます(Lisp Interactionバッファーを参照してください)。
変数のセットは、Emacsのカスタマイズと同様、特に明記しない限りは、カレントEmacsセッションだけに影響します。将来のセッションのために変数を変更する唯一の方法は、初期化ファイルにそれを記述することです(Emacs初期化ファイルを参照してください)。
initファイルでカスタマイズ可能な変数をセットしていてCustomizeインターフェイスを使いたくない場合には、たとえば以下のようにsetopt
を使うことができます:
(setopt fill-column 75)
これはsetq
と同じように機能しますが、その変数に特別なセッター関数(setter
function)があれば、setopt
は自動的にそちらを実行します。一方カスタマイズ可能ではない変数にsetopt
を使うこともできますが、setq
を使うより効率性に劣ります。