グリフレス文字とは、文字通りに表示されるのではなく、例えば16進数コードを含むボックスとして表示されるなど、特殊な形式で表示される文字のことである。これには、明示的にグリフレスとして定義された文字のほか、(グラフィカルディスプレイにおいて)利用可能なフォントがない文字や、(テキストターミナルにおいて)ターミナルの符号化方式でエンコードできない文字が含まれる。
glyphless-display-mode
マイナーモードを使用すると、現在のバッファ内でグリフのない文字の表示を便利に切り替えることができます。このモードを有効にすると、すべてのグリフのない文字は、その文字名の略称を表示するボックスとして表示されます。
よりきめ細かな(およびグローバルな)制御を行うには、この変数を使用できます。この変数の値は、グリフレス文字とその表示方法を定義する文字テーブルです。各エントリは、以下の表示方法のいずれかである必要があります:
nil文字を通常通りに表示する。
zero-widthその文字を表示しないでください。
thin-spaceグラフィックディスプレイでは幅1ピクセル、テキスト端末では幅1文字の細いスペースを表示します。
empty-box空のボックスを表示します。
hex-code文字のUnicodeコードポイントを16進数表記で含むボックスを表示してください。
その文字列を含むボックスを表示します。文字列に含まれるASCII文字は最大6文字までとします。例外として、文字列が1文字のみの場合、テキストモード端末ではその文字がボックスなしで表示されます。これにより、こうした「頭字語」を、端末で表示できない文字の置換文字として扱うことが可能になります。
(graphical . text)グラフィカルディスプレイでは graphical で、テキスト端末では text で表示します。graphical と text はいずれも、上述の表示方法のいずれかである必要があります。
thin-space、empty-box、hex-code、およびASCII文字列の表示方法は、glyphless-charのグリフで描画されます。テキスト端末では、角括弧 ‘[]’ によってボックスがエミュレートされます。
char-tableには追加のスロットが1つあり、利用可能なフォントで表示できない文字や、端末の符号化方式でエンコードできない文字をどのように表示するかを決定します。その値は、zero-widthを除く上記の表示方法のいずれかである必要があります。
文字がアクティブなディスプレイテーブルに nil
以外のエントリを持っている場合、そのディスプレイテーブルが適用されます。この場合、Emacs は glyphless-char-display を一切参照しません。
このユーザーオプションを使用すると、類似した文字のグループに対して glyphless-char-display を便利に設定できます。Lisp
コードから直接値を設定しないでください。この値は、glyphless-char-display
を更新するカスタム :set 関数(カスタマイズ変数の定義 を参照)を介してのみ有効になります。
その値は、要素 (group . method) のアリストであるべきであり、ここで group は文字のグループを指定するシンボル、method
はそれらの表示方法を指定するシンボルである。
group は、以下のいずれかである必要があります:
c0-controlASCII制御文字 U+0000 から
U+001F まで(改行文字とタブ文字を除く。通常は ‘^A’ のようなエスケープシーケンスとして表示される。The
GNU Emacs Manual の How
Text Is Displayed を参照)。
c1-control非ASCIIの非印字文字 U+0080 ~
U+009F(通常は ‘\230’ のような8進エスケープシーケンスとして表示される)。
format-controlU+200E LEFT-TO-RIGHT MARK などの Unicode 一般カテゴリ [Cf] の文字のうち、U+00AD SOFT HYPHEN のように図形画像を持つ文字を除いたもの。
bidi-controlこれは format-control のサブセットですが、U+2069 POP DIRECTIONAL ISOLATE や U+202A LEFT-TO-RIGHT EMBEDDING など、双方向書式制御に関連する文字のみが含まれています。双方向表示 を参照してください。
U+200E LEFT-TO-RIGHT MARK などの Unicode 一般カテゴリ [Cf] の文字のうち、U+00AD SOFT HYPHEN のように図形画像を持つ文字を除いたもの。
variation-selectors同一のコードポイントに対して異なるグリフ(通常は絵文字)を選択するために用いられる、UnicodeのVS-1からVS-256(U+FE00からU+FE0FおよびU+E0100からU+E01EF)。
no-font適切なフォントが存在しない文字、端末の符号化方式で符号化できない文字、またはテキストモード端末にグリフが存在しない文字。
method 記号は、zero-width、thin-space、empty-box、または hex-code のいずれかである必要があります。これらは、前述の glyphless-char-display と同じ意味を持ちます。