Наразі у мене є два подібних способи замінити весь буфер на якийсь інший текст (скажімо, у буфер обміну).
Спосіб №1:
видалити всі рядки:
:%d
.вставити текст: "+P(або подібне
:put+
:).
Спосіб №2:
візуально виділити всі рядки: ggVG.
вставити текст: "+P.
Однак я, здається, не міг знайти спосіб ведення вогню з однією командою. Найбільш близьким, який я знайшов, є :change
команда. Але це, схоже, не працює з регістрами. Звичайно, я можу створити якусь функцію та / або скласти ключ для цього. Але перш ніж я зміг зробити всі ці налаштування, я хочу переконатися:
Чи є якась вбудована команда для заміни діапазону рядків на інший текст? Мовляв, ви могли
:%replace+
б замінити весь буфер текстом у буфері обміну?
1,$s/\_./\=@+
це не рішення: Р, :%d|put+
ближче, але не зовсім там.
1,$s/\_.*/\=@+
, де \_.
відповідає будь-якому символу, включаючи новий рядок.
:%d|put+
підходить до законопроекту. Це коротко і запам'ятовується. Інша команда - це занадто таємничий вигляд, щоб запам'ятати і ввести правильно.