Vi & Vim

Питання та відповіді для людей, які використовують сім'ї редакторів vi та vim

1
Як я можу перейти до наступного "абзацу"?
Зараз я працюю з деякими блоками тексту, довжиною понад 1000 рядків. Чи є простий спосіб перейти до початку наступного абзацу? На даний момент я вирішую пошук двох послідовних символів нового рядка: /\n\n Інше рішення було б vip Esc j vip v виберіть i n p aragraph (який також підведе вас …

3
Як я можу змусити "n" йти вперед, навіть якщо я почав пошук з "?" або "#"?
Vim має (принаймні) два набори команд, які шукають у протилежних напрямках. Введіть, /а потім шаблон буде шукати вперед через документ; введіть ?і тоді шаблон буде шукати назад. Такий же взаємозв'язок існує між командами *та #. Що мені не подобається, що ці команди також задають напрямок пошуку для команд nта Nкоманд. …

4
Який найзручніший спосіб роботи з різними клавіатурами in vim?
Мені іноді потрібно писати грецькі слова, але коли я використовую грецьку клавіатуру, натискання, скажімо, <C-p>буде розумітися як, <C-π>а не як команда, яку я маю намір. Це можна виправити за допомогою :map <C-p> <C-π>. Чи можу я це зробити для всіх листів, не складаючи список усіх? PS. Складання списку всіх не …

1
Які відмінності між командами map, noremap, skrav та noreabbrev?
Ці команди певним чином перетворюють один набір натискань клавіш на інший, але я дещо нечіткий, на якому з найбільш підходящих для певної ситуації. Крім того, існують і !варіанти їх. Наразі моє використання їх є досить випадковим, тож чи можу я знати, які підводні камені пов'язані з кожним? Зокрема, примітки про …

2
Аргументи заміни функції
Під час рефакторингу коду було б корисно мати можливість міняти аргументами функції. Зміна наприклад: func(foo[0], bar(), baz.spam) в func(baz.spam, foo[0], bar()) Чи є спосіб змінити аргументи ліворуч / праворуч, зберігаючи дужки та коми функції? Зауважте, це може стати досить func(baz->spam, foo[0], bar(a, b, c))сприятливим, якщо ви хочете врахувати аргументи, які …
19 macro  refactor 

8
Як автоматично вимкнути "hlsearch" після того, як я закінчу пошук?
Мені подобається налаштування "hlsearch", але після того, як я закінчу пошук, мені здається, що це неприємно. Особливо, якщо я шукаю те, що має багато збігів. Я знаю, що можу це відключити :set nohlsearch Але це займає цілих 16 натискань клавіш, і що ще більше дратує, я повинен увімкнути його для …
19 search  highlight 

2
Яке відношення між vi, nvi та vim?
На деяких оніксах я колись знайшов команду з назвою nvi. Це був vi-подібний редактор, без особливих функціональних можливостей. Може, це була вилка старої vi? У будь-якому разі, які viверсії є вилами інших, а які - незалежні розробки? Чи є у них "родинне дерево", схоже на уніксеси?

6
Чи можу я з'єднати рядки з комою (чи іншим символом)?
Я знаю, що можу з'єднати рядки у Vim з Jкількома його варіантами ( gJтощо); Jбуде "Видалити відступ і вставити до двох пробілів" . Але чи існує також прямий спосіб вставити інший символ замість двох пробілів? Наприклад, кома ( ,) або кома та пробіл ( ,)? Подано: 8 9 10 32 …

1
Встановлення TAB на 2 пробіли
Я переглянув різні відповіді, з яких випливає, що встановлення наступного в .vimrc було б доречним, щоб змусити вставки вкладки стати пробілами. filetype plugin indent on " On pressing tab, insert 2 spaces set expandtab " show existing tab with 2 spaces width set tabstop=2 set softtabstop=2 " when indenting with …


2
Замініть рядок без зміни регістру?
З - за жолобник мовою домену конкретного я працюю з, я часто постає завдання (вибірково, чи не глобально) заміни termабо TERMз wordабо WORD, відповідно. Це означає, що я шукаю регістронезавісімого для term, і ви хочете , щоб замінити це word , зберігаючи при цьому великі букви / нижній регістр оригіналу …
18 substitute 

5
Після копіювання візуального вибору на клавіатуру поверніться у вихідне місце
Мій курсор знаходиться в середині абзацу, коли я раптом вирішу, що мені потрібно скопіювати цей абзац: Тому я набираю vipпункт, щоб обрати візуально абзац: Тепер я намагаюся cmd+Cскопіювати до буфера обміну (це може залежати від вашої системи, але не має стосуватися центрального питання моєї публікації), який залишає мій курсор на …

1
Як отримати фактичну висоту та ширину Vim?
winheight()і winwidth()повернути кількість стовпців / рядків у поточному вікні. Що я шукаю, це щось ближче до фактичної висоти та ширини області редагування або відображеної області, якщо працювати в терміналі. Проблема з winheight()і в winwidth()тому , що співвідношення сторін розраховані з цих значень поза зв'язком з фактичним співвідношенням сторін. :echo winwidth('%') …

5
Чи можна передавати команди vim на vim?
Я хочу запустити наступну оболонку. wea-this is the end of the second word | vim j exit 0 Я сподівався, що він передасть ключові штрихи w(переміщення слова вперед), то e(кінець слова), то a(додавання), то -this is the end of the second word(текст) до імені документа Vim, jякий вже містить слова. …
18 invocation 

1
Чи велика кількість змушує vim працювати повільно?
Це здається справді вибагливим питанням, але у мене є файл Python, у якому є число, яке має тисячу цифр, і цей файл, здається, працює дуже повільно, я не впевнений, чи відбувається якась обробка, що я я не знаю про це. Я натискаю лінію вгору jі є певна пауза ~ 1 …

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