Мне очень нравится поведение YankRing, которое позволяет мне получить доступ к последним вещам, которые у меня есть y
anked или d
eleted или c
повешены, не задумываясь.Vim Повторить точечный (".") Буфер команды?
Однако дополнительная функция, подобная этой, полностью отсутствует для команды повторения .
, чаще всего, когда я печатаю то, что я действительно хочу повторить, а затем случайно переписывая это редактирование, нажав x
, чтобы что-то убрать.
Часто можно получить некоторое время, пока визуально-режим дергает то, что я только что напечатал, но это не идеально.
Должно быть очень легко запомнить последние несколько команд.
Вопрос в том, насколько возможно извлечь из Vim представление последней команды, содержащейся в любых магазинах, которые будут делать .
, прежде чем он сдуется?
Если это так, как я боюсь, единственный способ - подключить плагин к каждой команде, которая может что-то редактировать, и использовать ее таким образом, чтобы хранить наш собственный повторитель. Это действительно нецелесообразно, потому что я уже представляю, сколько других плагинов будет разбито. Но я все равно действительно хочу эту функцию, если это возможно.
Связанный вопрос [Более мощная версия точки (повтор)] (http://stackoverflow.com/q/16722566). – glts
@glts Я написал, что ... это похоже, но требует подготовки, начиная запись –
Просто научитесь использовать [регистры] (http://stackoverflow.com/questions/1497958/how-to-use-vim-registers? rq = 1) и другие встроенные функции vim imo. Так много плагинов, которые «исправляют» вещи, которые не нуждаются в исправлении. Оператор Dot отлично работает с регистрами. Например, вы можете 'qp' вставить регистр' q' и повторить с '.', но любые изменения, такие как' x', не изменят то, что вы сохранили в любых регистрах, отличных от дефолта. Еще одно замечательное сообщение для прочитайте [здесь] (http://stackoverflow.com/questions/1218390/what-is-your-most-productive-shortcut-with-vim?rq=1) –