次: , 前: Filling, 上: Text


31.12 詰め込みのための余白

— ユーザオプション: fill-prefix

このバッファローカルな変数は、普通のテキスト行の先頭に現れ、 詰め込み時には無視すべきテキストの文字列(詰め込み接頭辞)を指定する。 詰め込み接頭辞で始まらない行は段落の開始行とみなすため、 詰め込み接頭辞のあとに余分に白文字があるとそれらも段落の開始行とみなす。 詰め込み接頭辞で始まりそのあとに余分な白文字がない行は、 いっしょに詰め込める普通のテキスト行である。

左端余白がある場合には、左端余白のあとに詰め込み接頭辞が続く。

— ユーザオプション: fill-column

このバッファローカルな変数は、詰め込んだ行の最大幅を指定する。 この値は整数であり、コラム数であること。 自動詰め込み(auto-fill)モード(see Auto Filling)を含めて すべての詰め込み/幅揃え/中央揃えを行うコマンドは、 この変数に影響される。

特に他人のために書いているテキストでは、 fill-columnを70未満にするべきである。 さもないと、人によっては快適に読むには行が長すぎて、 テキストが不恰好に見える。

— 変数: default-fill-column

この変数の値は、バッファでfill-columnの値を設定していない場合の fill-columnのデフォルト値である。 これは(default-value 'fill-column)と同じである。

default-fill-columnのデフォルト値は70である。

— コマンド: set-left-margin from to margin

fromからtoまでのテキストの 属性left-marginを値marginにする。 自動詰め込み(auto-fill)モードがオンであると、 このコマンドは、当該領域を再詰め込みして新たな余白に適合するようにする。

— コマンド: set-right-margin from to margin

fromからtoまでのテキストの 属性right-marginを値marginにする。 自動詰め込み(auto-fill)モードがオンであると、 このコマンドは、当該領域を再詰め込みして新たな余白に適合するようにする。

— 機能: current-left-margin

この関数は、ポイントの周りのテキストを詰め込むときに使う 正しい左端余白の値を返す。 その値は、現在行の最初の文字の属性left-marginの値(なければ0) と変数left-marginの値の和である。

— 機能: current-fill-column

この関数は、ポイントの周りのテキストを詰め込むときに使う 正しい詰め込み幅を返す。 その値は、変数fill-columnの値から ポイント直後の文字の属性right-marginの値を引いたものである。

— コマンド: move-to-left-margin &optional n force

この関数は、ポイントを現在行の左端余白へ移動する。 移動先のコラム位置は関数current-left-marginを呼び出して決定する。 引数nnil以外であると、 move-to-left-marginn−1先の行へまず移動する。

forcenil以外であると、 行の字下げが左端余白の値に一致しないときには、 字下げを修正することを指示する。

— 機能: delete-to-left-margin from to

この関数は、fromからtoまでのテキストから 左端余白分の字下げを取りさる。 削除する字下げ量は、current-left-marginを呼び出して決定する。 この関数が白文字以外を削除することは絶対にない。

— 機能: indent-to-left-margin

これは、基本(fundamental)モード、テキスト(text)モードなどが使う デフォルトのindent-line-functionである。 その効果は、変数left-marginの値で指定した位置から 現在行が始まるように字下げを調整することである。 それには白文字の挿入や削除が伴う。

— 変数: left-margin

この変数は、左端余白コラムの起点を指定する。 基本(fundamental)モードでは、C-jがこのコラム位置に字下げする。 この変数に設定すると自動的にバッファローカルになる。

— 変数: fill-nobreak-predicate

この変数は、特定の箇所では行分けしない方法をメジャーモードに提供する。 その値は関数であること。 この関数は、引数なしで行分け予定箇所にポイントを置いて呼び出される。 この関数がnil以外を返すと、当該箇所では行分けしない。