カーソルの動かし方1

Emacsで文字を入力する方法は簡単である。aのキーを押せば、aの文字が入力 される。大文字のAは、SHIFT-aであるSHIFT-というのは、 SHIFTキー(たいていキーボードの 左右にある、ShiftもしくはSHIFTと書いてあるキーである。) と同時に押すという意味である。 また、改行はリターンキーである。入力される場所は、やってみればわかるが、 画面上でチカチカ点滅しているもの (カーソル,またはキャレットという.本来はキャレットが正しいが歴史的理由から本講義ではカーソルと呼ぶ) があるところに入力される。入力されると、カーソ ルは次の文字の所に移動している。厳密には、カーソルの直前に文字が入力さ れている。これさえわかっていれば、どんな入力も可能である。しかし、間違 えた時は、それらを訂正する必要がある。たとえば、
    printf("Hello world");
と打とうと思った時に
    printf("Hello world";
のように、``)''を付け忘れた時は、Deleteキー (たいていキーボード右上の方にある、DeleteまたはDELと書いてあるキーである。 を押して、``;''を消して、
    printf("Hello world"
としてから、``);''と打てばよい。なお、設定によってはDeleteキーではなく、 BS(Back Space)キー(たいていキーボード右上の方にあるBack SpaceあるいはBS と書いてあるキーである) で消える場合もある。

では、次に、
    print("Hello world");
のように、``printf''の``f''を忘れていた時は、どうすればよいだろうか。 このとき、後ろからずっと消していって、``print''の後ろに``f''をつけても よいが、それではあまりに効率が悪すぎる。このような時には、C-bで、 カーソルを行上で左へ1文字づつ動かせるので、``(''のところまで持っていき、 そこで``f''を打つと、``(''の直前に``f''が入り、
    printf("Hello world");
となる。この時、カーソルは相変わらず``(''の上にある。すなわち、文字は カーソル位置の文字の直前に挿入される。

つぎに、これ以降の入力を続けるために、カーソルを行の一番後ろまで持って いきたい。このとき、C-fを打つと、行上で右へ1文字づつカーソルが 移動する。

このように、Emacsでは、基本的にコントロールキー+あるキーでカーソルを 移動する。主なカーソルの移動方法を以下にまとめる。各自、どう動くか試し てみてほしい。また、カーソルの移動方法ではないが、画面を動かすのに便利 なものも挙げておく。

キー動作
C-f1文字右へ(先へ)カーソルを移動する
C-b1文字左へ(前へ)カーソルを移動する
C-n1行下へ(次行へ)カーソルを移動する
C-p1行上へ(前行へ)カーソルを移動する
C-a行の先頭へカーソルを移動する
C-e行の最後へカーソルを移動する
M-<ファイルの先頭へカーソルを移動する
M->ファイルの最後へカーソルを移動する
Deleteカーソルの直前の文字の削除
C-dカーソルの位置の文字の削除
C-kその行後方をすべて削除。ただし、行末の場合次の行とつなげる
C-vファイルの次の1画面分を見る
M-vファイルの前の1画面分を見る
C-l今の1画面を再表示する。カーソル位置がほぼ画面の中央付近になる
C-s文字列をカーソル位置から下方向へ検索する
C-r文字列をカーソル位置から上方向へ検索する


ここで、C-sと、C-rの使い方は他と異なるが、便利なので、簡 単に触れておく。ここでいう検索は、ワープロなどとは若干異なる、インクリ メンタルサーチというものである。C-sを打つと、画面最下行に、
    I-search:
と出る。カーソル位置は変わらないが、これからの入力はこの後ろに続いては いる。ここで、aと打つと、カーソルより下方向で一番最初に出てくるa のところまでカーソルが移動する。次に、 bと打つ。今度は、一番最初にbが出てくる位置ではなくて、 一番最初にabと出てくる位置までカーソルが移動する。続けて、 cdefgと打てば、abcdefgがある位置までカーソルが移動する。 ない場合は、ピッとなって、カーソルは移動しない。また、求める abcdefgがこれではない場合、もう一度C-sを打つと、次の abcdefgにカーソルが移動する。これで検索が可能である。検索を終る には、ESCキーを打つ。また、カーソルを移動させると、検索から抜け る。もし、これを忘れて、C-g(詳しくは後述)などを打つと、カーソルは検索を始める 前の位置まで戻ってしまう。

一回検索から抜けて、もう一度同じ検索をしたい場合は、
    C-s C-s
とすればよい。ここでは、C-sについて説明したが、C-rについ ても操作は同じである。ただし、検索する方向がカーソルより上方向である。 もう一度同じ検索をしたい場合は、
    C-r C-r
とする。この辺は、やってみて感じをつかまないとわからないので、とりあえ ずやってみて欲しい。


前[ファイルの読み込み、書き出し]  次[キャンセル、再表示]
戻る