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

30.4.1 フレームパラメータへのアクセス

これらの関数を使用すると、フレームのパラメータ値を読み取ったり変更したりできます。

関数: frame-parameter frame parameter

この関数は、frameのパラメータparameter(シンボル)の値を返します。frameがnilである場合は、選択されたフレームのパラメータを返します。frameにparameterの設定がない場合は、この関数はnilを返します。

関数: frame-parameters &optional frame

関数 frame-parameters は、frame のすべてのパラメータとその値を列挙したアリストを返します。frame が nil であるか、あるいは省略されている場合は、選択されたフレームのパラメータを返します。

関数: modify-frame-parameters frame alist

この関数は、alistの要素に基づいてフレームframeを変更します。alistの各要素は(parm . value)の形式をしており、ここでparmはパラメータ名を示すシンボルです。alistでパラメータを指定しない場合、その値は変更されません。frameがnilである場合、選択されたフレームがデフォルトとなります。

一部のパラメータは、特定の種類のディスプレイ上のフレームにおいてのみ意味を持ちます(Framesを参照)。alistにframeのディスプレイでは意味を持たないパラメータが含まれている場合、この関数はフレームのパラメータリスト内のその値を変更しますが、それ以外の場合は無視します。

alist で、frame の新しいサイズに影響を与えうるパラメータを複数指定した場合、フレームの最終的なサイズは使用するツールキットによって異なる可能性があります。例えば、フレームに今後「なし」ではなくメニューおよび/またはツールバーを設けるよう指定し、同時にフレームの新しい高さを指定した場合、必然的にフレームの高さの再計算が行われます。概念的には、このような場合、この関数は明示的な高さの指定を優先させようとします。ただし、最終的にツールキットによってメニューやツールバーが追加(または削除)された場合、この意図が覆される可能性は否定できません。

この関数の呼び出し箇所で frame-inhibit-implied-resize(暗黙的なフレームリサイズを参照)を nil 以外の値にバインドすることで、ここで概説した問題が解消される場合があります。しかし、場合によっては、まさにそのようなバインドが問題の影響を受けることもあります。

関数: set-frame-parameter frame parm value

この関数は、フレームパラメータ parm を指定した value に設定します。frame が nil の場合は、選択中のフレームがデフォルトとなります。

関数: modify-all-frames-parameters alist

この関数は、既存のすべてのフレームのフレームパラメータをalistに従って変更し、次にdefault-frame-alist(および必要に応じてinitial-frame-alist)を修正して、今後作成されるフレームにも同じパラメータ値を適用します。