Vimで(ジャンプではなく)偶然の「マーク」の上書きを元に戻す方法は?


6

私は押しました me の代わりに 'e マーク "e"は現在位置にジャンプするのではなく、現在位置で上書きされます。元に戻す方法は?

回答:


2

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

から ウィキ

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ファイルは次のものを格納するために使用されます。
- コマンドライン履歴
- 検索文字列の履歴
- 入力行の履歴
- 空でないレジスタの内容
- 複数のファイルをマークします。
- ファイル内の位置を指すファイルマーク。
- 最後の検索/置換パターン( 'n'と '&'の場合)。
- バッファリスト
- グローバル変数

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

を使用することに大きな警告があります viminfo あなたのマークを保存するためのファイル。大文字または数字のマークのみが格納されます。 ではない 小文字のマーク

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


いいえ。マークを元の位置に戻してジャンプしたいだけです。誤って「クイックロード」ではなく「クイックセーブ」を使用し、上書きされたセーブファイルを復元したいようなものです。 Vimでそれが不可能であるならば、それを前もって準備する方法(すなわち、Vimに各マークスロットのためにいくらかの履歴を保存させる)。
Vi.

1

新しい場所でマークを「上書き」した後は、元に戻すことはできません。あなたができる最善のことはおそらく押すことです Ctrlキーを押しながら - カーソルが古い位置にくるまでマークを付け直します。


これを元に戻すことができるようにするにはどうすればいいですか?マークを保存したりジャンプしたりするたびに停止して考えることはしたくありません。
Vi.

私があなたに伝えようとしているのは、Vimがそれをしないこと、そしてそれをするためのメカニズムを提供しないことです。誰かがそれを行うVimスクリプト/プラグインを作成しようとしたかどうかを確かめることができますが、私はそれが漠然としたGoogle検索でそれを見ませんでした。
Heptite
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.