Я хочу швидко налаштувати параметр Vim 'paste', вставити текст і повернутись до попереднього значення 'paste'.
У типовому випадку використання вміст буфера обміну ОС вставляється буквально, незалежно від перезапису режиму вставки, який може бути активним, наприклад автоматичним відступом, і без зміни стану Vim. Іншим випадком використання було б дозволити макросистемі ОС вводити натискання клавіш у Vim та інтерпретувати їх як буквальний текст.
Це, очевидно, узагальнює інші варіанти - загальна ідея полягає у встановленні деяких варіантів, але лише протягом тривалості однієї поїздки через режим вставки.
В основному я хочу прив'язати послідовність ключів (скажімо _i) до макросу, який це робить
:set paste
i…<Esc>
:set nopaste
де i…<Esc>я маю на увазі переключитись на режим вставки (як у iкоманді) та відновити макрос після повернення до командного режиму, за винятком того, що я хочу закінчити 'paste'все ще активний, якщо він був активний попередньо. Як я можу це зробити?
Примітка. Вміст буфера обміну ОС відображається в "*регістр . Коли це працює, 'paste'варіант не дуже корисний. Мотиваційний сценарій цього питання є для тих часів, коли умови для "*підтримки реєстру не виконуються - Vim не компілюється з +xterm_clipboardфункцією, або він працює в терміналі, такому як Screen або через SSH, який ізолює його від оточуючого X-сервера.
+або*зареєструвати?