На самом деле я хочу скопировать выделенный текст из файла a в Vim и вставить в несколько различных частей файла b. Но когда я вставляю в файл b, это происходит один раз, а затем буфер пуст. Я хочу, чтобы эта часть текста была в буфере всегда, поскольку мне нужно вставить ее в еще несколько частей, и для этого мне нужно каждый раз копировать файл, а затем вставлять в этот файл b. Есть ли способ сохранить этот текст в буфере всегда?
Всего 1 ответ
Вы путаете терминологию vim здесь. Из Вики Вим :
Буфер - это файл, загруженный в память для редактирования.
То, что вы подразумеваете под buffer
на самом деле является register
. Регистр по умолчанию перезаписывается множеством операций, которые удаляют текст (например, x/c/d
), потому что они хранят удаленный текст там. Но вы можете скопировать 100 тыс. Строк текста в именованные регистры следующим образом:
"a100000yy
Это объединяет все эти строки в регистр.
Теперь перейдите к файлу B и сначала удалите 100К строк, которые вы хотите изменить. Поместите курсор на первую строку, которую нужно изменить, и сделайте:
100000dd
Затем мы вставим строки из файла A:
"aP
Обратите внимание, что это заглавная P
Для получения дополнительной информации о возможностях регистрации перейдите по этой ссылке: https://www.tutorialspoint.com/vim/vim_registers.htm