Next: Indentation, Previous: Sorting, Up: Text [Contents][Index]
列関数は文字位置(バッファー先頭から数えた文字数)と列位置(行先頭から数えたスクリーン文字数)を変換する関数です。
これら列関数はスクリーン上占める列数に応じて各文字を数えます。これはコントロール文字はctl-arrow
の値に応じて2列または4列を、タブはtab-width
の値と、タブが始まる列の位置に依存する列数を占めるものとして数えられることを意味します。Usual Displayを参照してください。
列数計算はウィンドウ幅と水平スクロール量を無視します。結果として列値は任意に大きくなる可能性があります。最初(または左端)の列は0と数えられます。列値は不可視性を別としてオーバーレイとテキストプロパティを無視します。
この関数は左マージンを0として列単位で数えたポイントの水平位置をリターンする。列の位置はカレント行の開始からポイントまでの間の文字の表示上の表現すべての幅の和。
この関数はカレント行のcolumnにポイントを移動する。columnの計算には行の開始からポイントまでの文字の表示上の表現の幅が考慮される。
インタラクティブに呼び出された際には、columnはプレフィクス数引数の値。columnが整数でなければエラーがシグナルされる。
列columnがタブのような複数列を占める文字の中間にあるために列を移動することが不可能な場合には、ポイントはその文字の終端に移動される。しかしforceが非nil
、かつcolumnがタブの中間にあるなら、(indent-tabs-mode
がnil
なら)move-to-column
はタブをスペースに変換するか、(それ以外なら)その前に十分なスペースを挿入するので正確に列columnに移動することができる。それ以外の複数列文字については分割する手段がないので、force指定に関わらず異常を引き起こす恐れがある。
その行が列columnに達するほど長くない場合にも引数forceは効果をもつ。columnがt
ならその列に達するよう行端に空白を追加することを意味する。
リターン値は実際に移動した列番号。