次: , 前: Overlays, 上: Display


38.9 表示幅

すべての文字が同じ表示幅ではありませんから、 これらの関数で文字の表示幅を検査できます。 関連する関数については、Primitive IndentとSee Screen Lines

— 機能: char-width char

この関数は、文字charを選択されているウィンドウで カレントバッファに表示した場合のコラム幅を返す。

— 機能: string-width string

この関数は、文字列stringを選択されているウィンドウで カレントバッファに表示した場合のコラム幅を返す。

— 機能: truncate-string-to-width string width &optional start-column padding

この関数は、幅widthに収まる文字列stringの部分を 新たな文字列として返す。

stringが幅widthに満たない場合、 stringの終りで結果は終る。 string内の1つの複数コラム文字がコラムwidthを越える場合には、 その文字は結果に含めない。 したがって、結果はwidthより短くなりえるがそれを越えることはない。

省略可能な引数start-columnは、開始コラムを指定する。 これがnil以外であると、文字列のはじめの start-columnコラムを結果から省く。 string内の1つの複数コラム文字がコラムstart-columnを越える場合には、 その文字は結果に含めない。

省略可能な引数paddingnil以外であると、 結果の文字列の先頭や末尾に付加して ちょうどwidthコラムにするためのパディング文字である。 widthより短くなる場合に 結果の末尾にパディング文字を使う。 複数コラム文字がコラムstart-columnを越える場合には、 結果の先頭にパディング文字を使う。

          (truncate-string-to-width "\tab\t" 12 4)
               => "ab"
          (truncate-string-to-width "\tab\t" 12 4 ?\ )
               => "    ab  "