Як вставити з декількох буферів обміну vim, не виходячи з режиму вставки?


8

Припустимо, ви вводите vim і є 5 загальних виразів, які потрібно вставляти в текст знову і знову.

Чи є спосіб сказати vim вставляти з декількох буферів, не виходячи з режиму вставки?

Відповіді:


20

Програмований ctrl-r регістр дозволяє вставити вміст регістра, не виходячи з режиму вставки.

Ctrl+ r" Покласти з регістра за замовчуванням

Ctrl+ rd Покласти з реєстру d

До речі, у vim вони називаються "регістри", а не "буфери", а дієслово - "поставити", а не "вставити". (Нагадування, для отримання візуального вибору в регістр d ви б використовували "dy)


Це чудово! Крім того, як ви відформатували текст, щоб він виглядав як кнопки клавіатури? Я щось шукав у поширених запитаннях про розмітку SuperUser, але не знайшов.
Натан Лонг

1
Спробуйте з тегом <kbd>.
danadam

2

Вам потрібні ці вирази, які походять з буфера обміну?

Ви можете легко зробити щось подібне:

:iab some_unique_string foo bar baz

І vim замінить "some_unique_string" на "foo bar baz", як тільки ви ввійдете в режим вставки.


1

Якщо це завжди однакові вирази, наприклад, в програмі Java-програми, такі як "приватний статичний недійсний основний (String ... args)"), ви можете використовувати плагін, як snipmate . Ви можете налаштувати його, щоб ви могли просто ввести "main <Tab>", і він розгорнеться до потрібного довгого коду Java, і він має більш круті функції ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.