Next: , Up: Basic   [Contents][Index]


7.1 テキストの挿入

普通のグラフィック文字(graphic character)(例 ‘a’、‘B’、‘3’、‘=’)は、対応するキーをタイプして挿入することができます。これによりバッファーのポイント位置に文字が追加されます。挿入によりポイントは前方に移動するので、ポイントは挿入された文字の直後になります。Pointを参照してください。

行を終了して新しい行を開始するにはRET(newline)を入力します(キーボードでRETキーは、ReturnEnterというラベルがついているかもしれませんが、このマニュアルではRETと呼ぶことにします)。このコマンドは改行文字をバッファーに挿入してから、メジャーモードに基づきインデント(Indentationを参照してください)を行います。ポイントが行末にある場合には、新しく空行を作成してから新しい行をインデントします。もしポイントが行の途中にある場合、行はその位置で分割されます。自動インデントをオフにするには、Electric Indentモード(Indent Convenienceを参照してください)を無効にするか、自動インデントを行わず改行だけを挿入するC-jを入力します。

マニュアルの後ろで説明しますが、マイナーモード(minor modes)を利用することにより、Emacsが挿入を処理する方法を変更できます。たとえばAuto Fillモードというマイナーモードは行が長くなりすぎたとき自動的に行を分割します(see Filling)。Overwrite modeというマイナーモードは、既存の文字を右方に押しやるかわりに、既存の文字を置き換え(上書き)ます。Minor Modesを参照してください。

対応するキーを押して挿入できるのはグラフィック文字だけです。他のキーは編集コマンドとして動作し、文字自体の挿入はしません。たとえば、デフォルトではDELは、コマンドdelete-backward-charを実行します(違うコマンドにバインドされているモードもあります)。このキーはリテラルの‘DEL’(ASCIIの文字コード127)を入力する訳ではありません。

非グラフィック文字や、キーボードがサポートしていない文字を挿入するには、最初にC-q (quoted-insert)で文字をクォート(quote)します。C-qの使い方は2つあります:

8進のかわりに10進や16進を使うには、変数read-quoted-char-radixに、10や16をセットします。もし基数が16の場合、aからfは文字コードの一部として扱われます。大文字小文字は区別されません。

かわりにコマンドC-x 8 RET (insert-char)を使うこともできます。これはミニバッファーを使って、Unicode名かコードポイント(code-point)の入力を求めます。もし名前を入力する時、コマンドが補完機能を提供します(Completionを参照してください)。コードポイントを入力する場合、それは16進(Unicodeの規約による)、または指定した基数の数字(例 #o23072 (octal); Integer Basics in The Emacs Lisp Reference Manualを参照してください)であるべきです。このコマンドは対応する文字をバッファーに挿入します。たとえば以下の2つはどちらも無限記号(infinity sign: Unicode code-point U+221E)を挿入します。

C-x 8 RET infinity RET
C-x 8 RET 221e RET

C-qまたはC-x 8 RETへの数引数は、文字のコピーを何個挿入するかを指定します(Argumentsを参照してください)。