Я нажал на 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)
Чтобы ответить на ваш комментарий:
Чтобы сохранить историю ваших отметок, вам нужно написать файл viminfo, используя :wv[iminfo][!] [file]
.
Файл viminfo используется для хранения:
- История командной строки.
- История поиска строки.
- История ввода строки.
- Содержимое непустых регистров.
- Знаки для нескольких файлов.
- Файловые метки, указывающие на места в файлах.
- Последний шаблон поиска / замены (для 'n' и '&').
- Список буферов.
- Глобальные переменные.
Это можно прочитать с помощью :rv[iminfo][!] [file]
.
Существует большое предостережение относительно использования файла viminfo
для хранения ваших отметок. Он будет хранить только заглавные или числовые метки. Не строчные буквы.
Строчные буквы 'a -' z запоминаются до тех пор, пока файл остается в списке буферов. Если вы удалите файл из списка буферов, все его метки будут потеряны. Если вы удаляете строку, содержащую метку, эта метка стирается.
После того как вы "перезаписали" метку новым местоположением, ее нельзя отменить. Лучшее, что вы можете сделать, это, возможно, нажать ctrl - o, пока курсор не окажется в старом месте, и снова создать метку.