本節では、インデントのカウントおよび挿入に使用されるプリミティブ関数について説明します。以降の節で扱う関数では、これらのプリミティブ関数を使用します。関連する関数については、表示テキストのサイズを参照してください。
この関数は、現在の行のインデント(すなわち、最初の非空白文字の水平位置)を返します。内容がすべて空白である場合は、行末の水平位置となります。
この関数では、buffer-invisibility-spec
で不可視テキストを省略記号として表示するように指定しない限り、不可視テキストの幅は 0 とみなされます。不可視テキストを参照してください。
この関数は、column に到達するまで、ポイントからタブとスペースでインデントを行います。minimum が指定されており、かつ nil
でない場合は、たとえ column
を超えることになっても、少なくともその数だけのスペースが挿入されます。それ以外の場合、ポイントがすでに column を超えているなら、この関数は何も行いません。戻り値は、挿入されたインデントが終了する列番号です。
挿入された空白文字は、周囲のテキスト(通常は直前のテキストのみ)からテキストプロパティを継承します。テキストプロパティのスティッキネスを参照してください。
この変数が nil
以外の場合、インデント関数はスペースだけでなくタブも挿入できます。そうでない場合は、スペースのみを挿入します。この変数を設定すると、自動的に現在のバッファ内でバッファローカルになります。