Next: , Previous: , Up: 基本的な編集コマンド   [Contents][Index]


8.8 継続行

バッファー内のテキストの行 — 論理行(logical line) — がウィンドウに収まらないほど長い場合、Emacsがそれを2行以上のスクリーン行(screen lines)で表示するときがあります(visual lines: とも呼ぶ)。これは行の折り返し(line wrapping)または継続(continuation)と呼ばれ、論理行は継続された行(continued line)と呼ばれます。グラフィカルなディスプレイでは、Emacsは行の折り返しをウィンドウの左右のフリンジ(fringes、縁)の小さな曲矢印で示します。テキスト端末では、Emacsは右の余白に‘\’を表示して行の折り返しを示します。

ほとんどのコマンドは、スクリーン行ではなく論理行にたいして作用します。たとえばC-kは論理行をkillします。前に説明したように、C-n (next-line)とC-p (previous-line)は特別な例外です。これらはスクリーン行にたいしてポイントを上下に移動させます(ポイント位置の変更を参照してください)。

Emacsはオプションで長い論理行を継続するかわりに、切り詰める(truncate)ことができます。これは論理行が1つのスクリーン行を占めることを意味します。もし論理行がウィンドウ幅より長い場合、行の残りは表示されません。グラフィカルなディスプレイでは切り詰められた行は、右フリンジの小さな直矢印で示されます。テキスト端末では右余白の‘$’で示されます。行の切り詰めを参照してください。

デフォルトでは継続行はウィンドウの右端で折り返されます。折り返しが単語の途中で発生すると、継続された行は読むのが難しくなります。普通の解決策は、行が長くなりすぎる前に改行を挿入することです。もしお好みなら、行が長くなりすぎたときにEmacsが自動的に改行を挿入するように、Auto Fillモードを使うことができます。テキストのフィルを参照してください。

多くの長い論理行を含むファイルを編集する必要があり、それらすべてを改行で分割するのが実用的でない場合があります。そのようなケースでは単語折り返し(word wrapping)が有効なVisual Lineモードを使うことができます。これは長い行を正確にウィンドウの右端で折り返すのではなく、ウィンドウの右端に一番近い単語境界(スペースやタブなど)で折り返します。Visual Lineモードでは、C-aC-nC-kなどの編集コマンドも、論理行ではなくスクリーン行を処理するように再定義されます。Visual Lineモードを参照してください。