2016-05-25 2 views
1

Когда я хочу, чтобы скопировать строку и вставьте его в текущей строке после удаления содержимого текущей строки, я в конечном итоге вставляя ту же линию, что был удален, как запись буфера обмена получает изменилось после нажатия дКак получить доступ к старым записям Vim Clipboard?

ответ

6

Вы можете получить доступ к предыдущему содержимому безымянного регистра с регистрами "1 к "9:

"3p 

Регистрация "0 всегда содержит последнюю явный yank:

"0p 

И вы можете вытащить в названный регистр "a до "z. Если вы хотите сохранить фрагмент кода для последующего использования, с помощью именованных регистров является очень хорошая идея:

"ey 
"ep 

См :help registers.

+0

Итак, где хранится второй последний yank? Кажется, он не хранится в 1 для меня? – spharish

2

Для замены текущая строка с тем, что находится в буфере обмена, вы можете выбрать эту строку и вставить. т.е. сделать

сдвигаvр

1

В дополнение к информации, представленной о регистрах уже, вы можете ввести

:reg 

, чтобы получить список того, что в настоящее время хранится во всех регистрах.

Вы можете использовать код 2-символа, который отображается слева (начиная с " например. "2) с последующим p в то время как в обычном режиме, чтобы вставить содержимое этого регистра.

+0

Есть ли способ узнать содержимое регистра без ввода: reg, как последнее в 0, второе последнее в 1 и т. Д. Потому что мне часто требуется второе последнее значение? – spharish

+0

Я не уверен в yanks, но удаленный контент будет храниться в последовательных регистрах. Поэтому '' 0' всегда будет содержать последний yank (если не указан другой регистр). '' 1' будет содержать содержимое последней команды удаления или изменения. Если после этого вы сделаете еще одно удаление, содержимое регистра '' 1' переместится в '' 2', а недавно удаленное содержимое переместится на '' 1'. – Shinkawa91

 Смежные вопросы

  • Нет связанных вопросов^_^