"*І "+регістри для буфера обміну системи ( :help registers). Залежно від вашої системи вони можуть робити різні речі. Наприклад, у системах, які не використовують X11, як OSX або Windows, "*регістр використовується для читання та запису в буфер обміну системи. У системах X11 можна використовувати обидва регістри. Ознайомтеся :help x11-selectionз детальнішою інформацією, але в основному "*це аналог PRIMARY вибору X11 (який, як правило, копіює речі, які ви вибираєте мишею, і вставляє за допомогою середньої кнопки миші) і "+є аналогом вибору CL11BOARD X11 (який належить до буфера обміну).
Якщо все, що перейшло вам над головою, спробуйте скопіювати "*yyабо "+yyскопіювати рядок у буфер обміну вашої системи. Якщо припустити, що у вас є відповідні варіанти компіляції, той чи інший повинен працювати. Ви можете переробити це на щось більш зручне для вас. Наприклад, ви можете помістити vnoremap <C-c> "*yв ~ / .vimrc так, що ви зможете візуально вибрати і натиснути Ctrl+, cщоб підтягнути до буфера обміну вашої системи.
Майте на увазі, що копіювання / вставлення з буфера обміну системи не працюватиме, якщо :echo has('clipboard')повернеться 0. У цьому випадку vim не компілюється з +clipboardфункцією, і вам доведеться встановити іншу версію або перекомпілювати її. Деякі дистрибутиви Linux надають мінімальну установку vim за замовчуванням, але, як правило, якщо встановити пакет vim-gtkчи vim-gtk3пакет, ви можете отримати додаткові функції.
Ви також можете ознайомитися з 'clipboard'варіантом, описаним на :help cb. У цьому випадку ви можете :set clipboard=unnamedабо :set clipboard=unnamedplusзробити всі операції по янь / видаленню автоматично копіювати в буфер обміну системи. Це може спричинити незручності в деяких випадках, коли ви зберігаєте щось інше в буфері обміну, оскільки це скасує це.
Для вставки можна скористатися "+pабо "*p(знову ж таки, залежно від вашої системи та / або потрібного вибору), або ви можете зіставити їх на щось інше. Я набираю їх явно, але часто опиняюсь у режимі вставки. Якщо ви перебуваєте в режимі вставки, ви все одно можете вставити їх з належним відступом, використовуючи <C-r><C-p>*або <C-r><C-p>+. Див :help i_CTRL-R_CTRL-P.
Також варто згадати pasteваріант vim ( :help paste). Це перетворює vim у спеціальний "режим вставки", який вимикає кілька інших параметрів, що дозволяє вам легко вставити в vim за допомогою емулятора термінала або знайомого клавіша для мультиплексора. Просто введіть, :set pasteщоб увімкнути його, вставте ваш вміст і введіть його, :set nopasteщоб вимкнути його. Крім того, ви можете використовувати pastetoggleопцію, щоб встановити код клавіші, який перемикає режим ( :help pastetoggle). Я рекомендую використовувати регістри замість цих варіантів, але якщо вони все ще занадто страшно, це може бути зручним рішенням, коли ви вдосконалюєте свої vim відбивні.
Дивіться :help clipboardдетальну інформацію.