276

vimでのプログラミング私はよく何かを探しに行き、それをヤンクしてから、元の場所に戻って挿入し、変更します。

問題は、検索して見つけた後、元の場所に戻る方法を手動で見つける必要があることです。

最後の検索を開始したときの場所に自動的に戻る方法はありますか?

4

7 に答える 7

425

Ctrl+O前の場所に移動します。検索する前に場所がわからない。

編集:また、`.最後に行った変更に移動します。

于 2008-09-10T12:47:51.957 に答える
97

``検索/ジャンプする前にいた正確な位置に戻るか、検索/ジャンプ''する前にいた行の先頭に戻るために使用します。

于 2008-09-17T14:55:51.047 に答える
43

私はいつもそれがマークを設定することによって行いました。

  1. コマンドモードで、m[文字]を押します。たとえば、マーク識別子としてamaを使用して、現在の行にマークを設定します。

  2. マークに戻るには、'[文字]を押します。たとえば'a、手順1で設定したラインマークに戻ります。ラインをマークした行の列位置に戻るには、`aback-tick [letter])を使用します。

現在設定されているすべてのマークを表示するには、と入力し:marksます。


少し関係のないメモで、私はマークについて別の気の利いたことを発見しました。

を実行してマークbにジャンプするとしますmb。Vimは、マークb'にジャンプする前に、マーク(一重引用符)を、現在の行に自動的に設定します。

つまり'b、そのマークにジャンプしてから、''(2つの一重引用符)を実行して、前の場所に戻ることができます。

:marksすべてのマークのリストを表示するコマンドを使用して、これを誤って発見しました。

于 2008-09-10T12:46:50.493 に答える
41

:help jumplistこのすべてが非常によく説明されているので、ぜひ読んでください。

于 2008-09-26T11:46:57.580 に答える
33

CTRL+OCTRL+I、前後にジャンプします。

于 2012-10-03T09:56:47.270 に答える
8

私はこれを使用します:

nnoremap / ms/
nnoremap ? ms?

/その後、またはを使用して何かを検索すると?、 ですばやく戻ることができます`s。文字を好きな文字に置き換えることができsます。

于 2012-05-01T00:45:16.217 に答える
7

最も簡単な方法は、でマークを設定してから、でマークにm[letter]戻ることです。'[letter]

于 2008-09-10T12:47:43.783 に答える