Vi & Vim

19
Как я могу заставить gx распознавать полные URL в vim?

По умолчанию, если буфер в vim содержит URL-адрес, например http://www.google.com, gxв обычном режиме откроется браузер с этим URL-адресом. Это очень удобно. Однако если URL имеет параметры URL (например http://www.google.com/search?q=stuff), то параметры URL пропускаются (то есть просто...

19
Как сделать регулярные выражения не жадными?

Я пытаюсь использовать регулярные выражения для замены текста в файле (заменить полный URL-адрес просто протокол / домен /): :%s/\(https\?:\/\/.*?\/\).*/\1/gc К сожалению .*?не совпадает строка, даже пытаясь уйти от ?квантификатора? Как избежать использования жадного квантификатора в...

19
Откройте .md файлы как Markdown

Vim по умолчанию открывает все файлы .md в виде кода "modula2". Я никогда не слышал о modula2 и не планирую им пользоваться. Как я могу сказать vim всегда обращаться foo.mdс Markdown (как если бы я печатал :set...

19
Выясните, какой плагин отвечает за привязку ключа

Я собирался ответить на вопрос, но понял, что мой ответ зависит от привязки ключа, предоставленной плагином, который я установил. Еще хуже, я не знаю, какой плагин это обеспечивает. Единственный способ решить эту проблему, который я знаю, - это «бинарный поиск» моих установленных плагинов, отключив...

19
Какая связь между vi, nvi и vim?

В некоторых UNIX-системах иногда я обнаруживал команду с именем nvi. Это был редактор в стиле vi, без особой функциональности. Может быть, это была вилка старого vi? В любом случае, какие viверсии являются ответвлением от других, а какие являются независимыми разработками? Есть ли у них...

19
Как я могу заставить 'n' идти вперед, даже если я начал искать с '?' или '#'?

Vim имеет (как минимум) два набора команд, которые ищут в противоположных направлениях. Ввод, /а затем шаблон будет искать вперед в документе для шаблона; набрав, ?а затем шаблон будет искать в обратном направлении. Же зависимость существует между *и #командами. То , что мне не нравится то , что...

19
Как я применяю команду ко всем строкам?

Если я хочу сделать отступ для всех строк в документе, я могу напечатать, >Gчтобы применить его к текущей строке и ниже, а затем и >ggприменить ее к строкам выше. Есть ли комбинация, которую я могу использовать, чтобы просто применить >ко всем линиям...

19
Как автоматически отключить «hlsearch» после завершения поиска?

Мне нравится настройка "hlsearch", но после того, как я закончу поиск, я нахожу это противным. Особенно, если я ищу что-то, что имеет много совпадений. Я знаю, что могу отключить это с :set nohlsearch Но это занимает целых 16 нажатий клавиш, и что еще более досадно, я должен снова включить его для...

19
Как остановить запись в командной строке?

Когда я записываю макрос с помощью qи все готово, я могу набрать: q остановить запись, если я нахожусь в нормальном или визуальном режиме. <c-o>q остановить запись, если я в режиме вставки. .. Как остановить запись, если мой макрос заканчивается в командном режиме?...

19
Как сделать так, чтобы Vim поместил курсор в начале символа табуляции вместо конца?

Откройте пустой буфер и вставьте символ табуляции, затем выйдите в нормальный режим. Когда вы поместите курсор (обычный режим) на вкладку, он будет справа от пробела. Я ищу способ, чтобы курсор был слева от пробела....

19
Понимание комбинации CTRL-U

В этом ответе я столкнулся с CTRL-Uвызовом используемой функции после :и до фактического имени функции. :nnoremap <buffer> <cr> :<C-U>call append('.', repeat([''],v:count1))<cr> Вот что говорит помощь: CTRL-U Scroll window Upwards in the buffer. The number of lines comes...

19
Как определить собственное всплывающее окно / меню в vimrc

Назначение каждой полезной функции для клавиши хорошо работает для часто используемых инструментов, но есть некоторые операции, которые я использую настолько редко, что я бы предпочел назначить их некоторым всплывающим меню, определенным в моем vimrc. Я видел плагины, такие как CtrlP, открывающие...

19
Аргументы функций подкачки

При рефакторинге кода было бы полезно поменять аргументы функций. Изменение, например: func(foo[0], bar(), baz.spam) в func(baz.spam, foo[0], bar()) Есть ли способ поменять местами аргументы влево / вправо, оставив в скобках функции и запятые? Обратите внимание, что это может стать довольно...

19
Какой самый удобный способ работы с разными клавиатурами в vim?

Иногда мне нужно писать греческие слова, но когда я использую греческую клавиатуру, удар, скажем, <C-p>будет пониматься как, <C-π>а не как команда, которую я намереваюсь. Это можно исправить с помощью :map <C-p> <C-π>. Могу ли я сделать это для всех писем без составления...

19
Как я могу перейти к следующему «абзацу»?

Сейчас я работаю с некоторыми блоками текста длиной более 1000 строк. Есть ли простой способ перейти к началу следующего абзаца? Мой обходной путь на данный момент - поиск двух последовательных символов новой строки: /\n\n Другой обходной путь будет vip Esc j vip v isually выберите I ˝n˝ р aragraph...

19
Установите другой цвет курсора для выделенного слова

С текущей цветовой схемой, которую я использовал, трудно найти, где находится курсор при навигации по результатам поиска. Цвет выделения и цвет курсора смешиваются, что затрудняет поиск курсора. Как установить другой цвет курсора, когда он находится на выделенном слове?...

19
Каковы различия между командами map, noremap, abbrev и noreabbrev?

Эти команды каким-то образом преобразуют один набор нажатий клавиш в другой, но я не совсем понимаю, какой из них наиболее подходит для некоторой ситуации. Кроме того, есть !варианты их. На данный момент я использую их довольно случайно, поэтому я могу знать, с какими подводными камнями связан...

19
Самый простой способ запустить Vim в приватном режиме

Я хочу иметь возможность легко запускать Vim в приватном режиме. Давайте определим приватный режим как тот, который использует этот набор команд: set history=0 set nobackup set nomodeline set noshelltemp set noswapfile set noundofile set nowritebackup set secure set viminfo="" Дайте мне знать,...

18
Как я могу установить 64-битный Vim на Windows?

На странице загрузок Vim написано, что 64-разрядная версия больше не поддерживается: Win64 32-битная версия Vim отлично работает на 64-битных окнах. Был 64-разрядный двоичный файл, но он не использовался много, и обслуживание прекратилось. Это нормально, я полагаю, за исключением того, что...

18
Что такое «[Командная строка]», которая иногда появляется, когда я пытаюсь выйти, и как я могу быстро выйти из нее?

Иногда, когда я пытаюсь выйти из Vim, я получаю что-то похожее на это: Я не уверен, как я случайно вызвал это, но мой текущий метод для избежания этого состоит в том, чтобы нажать случайные ключи, и в конечном счете это уходит. Два вопроса: Как я вызываю его (я использую :qдля выхода из Vim)...