it-swarm-ja.com

Vimで(ジャンプする代わりに)偶発的な「マーク」の上書きを元に戻す方法は?

'eの代わりにmeを押すと、マーク「e」がジャンプする代わりに現在の位置で上書きされました。元に戻すにはどうすればよいですか?

6
Vi.

:delmarks eは特定のマークを削除します。 :delm eと省略できます。

wiki から:

Command          Description
:delmarks a      delete mark a
:delmarks a-d    delete marks a, b, c, d
:delmarks abxy   delete marks a, b, x, y
:delmarks aA     delete marks a, A
:delmarks!       delete all lowercase marks for the current buffer (a-z)

あなたのコメントに対処するには:

マークの履歴を保存するには、:wv[iminfo][!] [file]を使用して viminfo ファイルを作成する必要があります。

Viminfoファイルは以下を保存するために使用されます。
-コマンドライン履歴。
-検索文字列の履歴。
-入力行の履歴。
-空でないレジスタの内容。
-いくつかのファイルのマーク。
-ファイルマーク、ファイル内の場所を指します。
-最後の検索/置換パターン(「n」および「&」の場合)。
-バッファリスト。
-グローバル変数。

これは:rv[iminfo][!] [file]で読み戻すことができます。

マークを保存するためにviminfoファイルを使用することには大きな注意点があります。大文字または数字のマークのみを格納します。 Not小文字マーク。

ファイルがバッファリストに残っている限り、小文字の「a」から「z」が記憶されます。バッファリストからファイルを削除すると、そのすべてのマークが失われます。マークを含む行を削除すると、そのマークは消去されます。

2
embedded.kyle

マークを新しい場所で「上書き」すると、元に戻すことはできません。あなたができる最善のことはおそらく押すことです ctrl-o カーソルが古い場所に来るまで、マークを再度作成します。

1
Heptite