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


7.2 ポイント位置の変更

文字の挿入以上のことを行うには、ポイントを移動する方法について知る必要があります(Pointを参照してください)。キーボードのコマンドC-fC-bC-nC-pは、それぞれ右・左・下・上にポイントを移動します。ほとんどのキーボードにある矢印キー — RIGHTLEFTDOWNUPでもポイントを移動できます。しかし多くのEmacsユーザーは矢印キーより、コントロールキーのほうが速いと考えています。なぜなら矢印キーを押すためにそれらが配置されている領域に手を動かす必要があるからです。

ポイントを移動したい場所でマウスの左ボタンをクリックしてもポイントを移動できます。Emacsは、さらに洗練された方法でポイントを移動する、さまざまなキーボードコマンドを提供します。

C-f

1文字前方(forward)に移動します (forward-char)。

RIGHT

このコマンド(right-char)はC-fと同様に振る舞います。例外はポイントのあるパラグラフがright-to-leftの場合です。Bidirectional Editingを参照してください。

C-b

1文字後方(backward)に移動します (backward-char)。

LEFT

このコマンド(left-char)はC-bと同様に振る舞います。例外は現在のパラグラフがright-to-leftの場合です。Bidirectional Editingを参照してください。

C-n
DOWN

スクリーンに表示された行で1行下に移動します(next-line)。このコマンドは横方向の位置を変更しないよう試みます。そのため行の途中でコマンドを開始すると、次の行の途中に移動することになります。

C-p
UP

スクリーンに表示された行で1行上に移動します(previous-line)。このコマンドはC-nと同様、行内の位置を保ちます。

C-a
Home

行の先頭に移動します(move-beginning-of-line)。

C-e
End

行の最後に移動します(move-end-of-line)。

M-f

1単語前方に移動します(forward-word)。Wordsを最終してください。

C-RIGHT
M-RIGHT

このコマンド(right-word)はM-fと同様に振る舞います。例外は現在のパラグラフがright-to-leftの場合、1語後方に移動することになります。Bidirectional Editingを参照してください。

M-b

1単語後方に移動します(backward-word)。Wordsを参照してください。

C-LEFT
M-LEFT

このコマンド(left-word)はM-bと同様に振る舞います。例外は現在のパラグラフがright-to-leftの場合、1語前方に移動することになります。Bidirectional Editingを参照してください。

M-r

スクリーン上のテキストを移動させることなく、ポイントの位置をウィンドウ上で中央にもっとも近いテキスト行の左端に移動します。連続して呼び出すと、最上行の左端、最下行の左端へと循環的にポイントを移動します(move-to-window-line-top-bottom)。

数引数はスクリーンの行の何行目にポイントを移動するか指定します。数値はウィンドウの最上行から数えた行数です(0は最上行を意味します)。負の引数は最下行から数えた行数です(-1は最下行を意味します。数引数については詳細は、Argumentsを参照してください。

M-<

バッファーの先頭に移動します(beginning-of-buffer)。数引数nが与えられた場合、最上行からn/10に移動します。グラフィカルなディスプレイでは、C-HOMEで同じことを行うことができます。

M->

バッファーの最後に移動します(end-of-buffer)。グラフィカルなディスプレイでは、C-ENDで同じことを行うことができます。

C-v
PageDown
next

画面を1画面前方にスクロールします。もし必要ならポイントをスクリーン上の位置に移動します(scroll-up-command)。Scrollingを参照してください。

M-v
PageUp
prior

画面を1画面後方にスクロールします。もし必要ならポイントをスクリーン上の位置に移動します(scroll-down-command)。Scrollingを参照してください。

M-g c

数値nを読み取り、ポイントをバッファー位置nに移動します。1を指定するとバッファーの先頭に移動します。

M-g M-g
M-g g

数値nを読み、ポイントをバッファーの先頭からn行目に移動します。行に1を指定するとバッファーの先頭に移動します。もしポイントがバッファーの数字の上または直後にある場合、その数がnのデフォルトになります。ミニバッファーで単にRETを押すと、その数が使われます。数値のプレフィクス引数でnを指定してM-g M-gに与えることもできます。単にプレフィクス引数を与えた場合のM-g M-gの動作については、Select Bufferを参照してください。

M-g TAB

数値nを読み取り、現在行のn列目に移動します。列0は最左列です。プレフィクス引数とともに呼び出された場合、引数で指定された数の列に移動します。

C-x C-n

カレントバッファー内の現在ポイントがある列をC-nC-p半恒久的な目標列(semipermanent goal column)として使用します。目標列が有効な場合、これらのコマンドで垂直に移動すると、その列もしくはできる限り近い列に移動しようと試みます。目標列はキャンセルされるまで有効です。

C-u C-x C-n

目標列をキャンセルします。それ以降のC-nC-pは通常どおり水平位置を保とうと試みます。

バッファーのテキストがウィンドウの幅より長い場合、通常Emacsは2行以上のスクリーン行(screen lines)で表示します。便宜上、C-nC-pそしてdownupも、同様にスクリーン行にしたがってポイントを移動します。これらのコマンドを論理行(logical lines)(たとえばバッファーのテキスト行)にしたがって移動させるには、line-move-visualnilをセットします。そうすると論理行が複数のスクリーン行となるような場合、カーソルは追加されたスクリーン行をスキップします。詳細はContinuation Linesを参照してください。line-move-visualなどの変数をセットする方法については、Variablesを参照してください。

C-nC-pと異なり、ほとんどのEmacsコマンドは論理的な行に作用します。たとえばC-a (move-beginning-of-line)やC-e (move-end-of-line)は、論理行の先頭もしくは最後に移動します。C-nC-pのようにスクリーン行に作用するコマンドの場合、わたしたちはそれを示すようにします。

line-move-visualnilの場合、変数track-eolにも非nil値をセットできます。そうすると論理行の行末でC-nC-pを開始すると、次の論理行の行末に移動します。通常track-eolnilです。

通常C-nをバッファーの最後の行で使用した場合、バッファーの最後でストップします。しかし変数next-line-add-newlinesに非nil値をセットした場合、バッファーの最後の行でC-nを押すと、行を追加してその行に移動します。


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