Emacs/ファイル, バッファの操作/広範囲でのテキストカーソルの移動

基本的なテキストカーソルの移動に関しては1.4.2 に示しましたが,編集作業においては広範囲にわたってテキストカーソルを移動する場合もあります.表2.6にカーソルの移動に関するキー操作を示します.


表 2.6: 画面の移動,再表示
分類 キー操作 意味
移動 C-v 1画面分次へ移動
M-v 1画面分前へ移動
M-< バッファの先頭に移動
M-> バッファの最後に移動
M-x goto-line カーソルを指定した位置に移動
その他 C-x l バッファ内の総行数を表示
C-l 画面の再表示


画面の前後移動 -- (M-vC-vM-<M->)

Emacsのウィンドウの大きさには限りがあるため,編集しているバッファが大きい場合はそのバッファの一部しか見ることができません.現在ウィンドウに表示されている部分の前後を表示するには,M-vC-vを入力します.M-vによって現在表示されている画面の1画面分前に, C-vによって現在表示されている画面から1画面分後に移動できます.また,M-<M->を入力することによって,バッファの先頭,最後に移動できます.


行指定の移動 -- (M-x goto-line)

特定の行にカーソルを移動したい場合,M-x goto-lineと入力して<RET>を押すと,カーソルを移動する行番号を指定できます.

Goto line: _

数字を入力してから<RET> を押すと,指定した行の先頭にカーソルが移動します. LaTeXのファイル,およびJavaやC言語のソースコードを編集した後に platexコマンドやコンパイルを実行すると,何行目にエラーがあるというメッセージが出力されますので,修正の際にM-x goto-lineを利用すると効率よく作業できます.

また,C-x lと入力すると,バッファ全体が何行あり,現在カーソルが文頭,文末より何行目に位置しているかが表示されます.次にC-xlの実行例を示します.

Page has 7 lines (3 + 4)

この例では,最初の3はカーソルの前にある行数,4 はカーソルの後にある行数を意味します.

C-x lを入力する際,誤ってC-x C-lと入力してしまうと,他のコマンド(M-x downcase-region)が実行されるのでリージョン内の英文の大文字がすべて小文字に変わってしまいます.このようなときはUndo機能(C-x u)を利用すればもとに戻せます.


画面の再表示 -- (C-l)

画面表示が乱れたときには,C-lで画面を再表示できます.また,カーソルのある行がウィンドウの中央に移動します.