Недавно я удалил плагин YankRing из моей установки отчасти потому, что он вызывал некоторые проблемы с макросами, но в основном потому, что я решил, что будет лучше научиться использовать регистры Vim вместо этого - в частности, способ, которым удаленный текст изначально сохраняется в регистре "1
и затем сдвинуты вверх через "2
, "3
и т.д. , как сделаны дальнейшие делеции очень полезно.
Однако, когда удаление / изменение удаляет менее одной строки текста, оно вместо этого сохраняется в "-
небольшом регистре удаления (с некоторыми исключениями для некоторых команд перемещения). Если последующие небольшие удаления сделаны, этот бит текста теряется.
Можно ли заставить Vim хранить все удаления в реестре "1
?
nnoremap d "1d
почти работает, но вы в конечном итоге с текстом в обоих регистрах "1
и "2
.
Я не возражаю против того, будет ли затронута функциональность небольшого регистра удаления. Предложение изменить свое поведение для сохранения небольших удалений в именованном регистре определенно не будет полезным ответом - это то, чем я сейчас занимаюсь.
У меня есть пробное решение, которое работает для
d
команды с движениями и в визуальном режиме. Это еще не полностью надежное решение (например,d[count]d
не работает и не работает[count]D
), но оно почти полностью охватывает все мои реальные случаи использования.Он работает, устанавливая функцию оператора клиента, которая:
Смотрите
:help map-operator
объяснение того, как работают операторские функции.источник
y
и,c
ноc
мой nvim не входит в режим вставки после действия ... В настоящее время я должен,execute l
иstartinsert
это не является правильным исправлением (какc$
бы поставить курсор в неправильное положение). Есть идеи?Посмотрите Запрос на извлечение в редакторе neovim :
[RFC] Добавить опцию для использования нумерованных регистров для небольших удалений # 8169
Я попытался добавить
smalldel
опцию, которая позволяет вам настроить минимальное количество удаленных символов, которые будут помещены в пронумерованные регистры "1 .." 9Следующий выпуск neovim после слияния PR (если это произойдет) будет содержать эту опцию.
источник