Vi & Vim

Вопросы и ответы для людей, использующих семейства текстовых редакторов vi и Vim

1
Есть ли способ конвертировать литерал регулярного выражения Vim в различные магические режимы?
Если у меня есть магическое регулярное выражение Vim в строковом литерале, есть ли способ преобразовать все регулярное выражение в альтернативное представление, использующее другой магический режим, чтобы я мог вставить это эквивалентное регулярное выражение в исходный код? Например, если я хочу преобразовать этот шаблон магического режима: '\m-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>' в очень магический режим, …

2
Есть ли поиск и замена истории в vim?
Мы можем получить историю поиска и замены в IDE и текстовых редакторах. Аналогично, есть ли история поиска или способ получить ранее найденное выражение в vim?
14 search 

1
Как переместить курсор на правильный уровень отступа, не выходя из режима вставки?
Например, у меня есть этот код JavaScript. Символ |представляет позицию курсора, и он находится на пустой строке. function a() { console.log("a"); function b() { console.log("b"); function c() { console.log("c"); } | c(); } b(); } После запрошенной операции содержимое будет выглядеть так: function a() { console.log("a"); function b() { console.log("b"); …

1
Почему мои окна прокручиваются вместе?
У меня два открытых окна в одном буфере, и я хочу редактировать две части одного и того же файла одновременно. Я не могу, потому что окна прокручиваются вместе. Я noscrollbindпоставил, поэтому я смущен этим. Что еще может быть причиной этого? Если я начну новый сеанс, то проблема исчезнет. Я бы …

1
Для autocmd в ftplugin я должен использовать сопоставление с шаблоном или <буфер>?
У меня есть autocmd для файлов TeX и Markdown для автоматического сохранения файла. Ничего необычного autocmd CursorHold *.tex,*.md w Однако, поскольку пользовательские настройки для этих файлов увеличились, я разделил их на ftplugin/tex.vimи ftplugin/markdown.vim: " ftplugin/tex.vim autocmd CursorHold *.tex w " ftplugin/markdown.vim autocmd CursorHold *.md w Теперь эти файлы поставляются только …
14 autocmd  filetype 

1
Можно ли получить соответствующую строку после вызова: search ()
В vimscript-функции мне нужно назначить соответствующую строку переменной l:matchedпосле вызова, search()и мне интересно, есть ли более короткий путь, чем то, что я сейчас делаю: let l:pattern = '\v^Foo: \zs.*' let l:line = search(l:pattern) let l:line_text = getline(l:line) let l:matched = matchstr(l:line, l:pattern) В идеале я бы хотел что-то вроде let …
14 vimscript  search 

3
Как пометить вкладки tmux названием файла, отредактированного в vim?
Всякий раз, когда я открываю сеанс tmux в терминале, все вкладки, содержащие сеансы vim, помечаются vim. У меня вопрос: как настроить его для обозначения вкладок tmux названием отредактированного файла или что-то вроде того, что vim | test.cppиспользуется в качестве заголовка рассматриваемых вкладок.
14 vimrc  terminal  tmux 

2
Форма курсора под vim + tmux
Как я могу иметь разные формы курсора при запуске vim внутри tmux под cygwin? БЕЗ tmux этих строк будет достаточно для достижения того, что я хочу: let &amp;t_SI = "\e[5 q" let &amp;t_EI = "\e[2 q" Но как-то мой tmux ломает его - курсор имеет форму блока независимо от того, …
14 tmux  cygwin 

1
Сложить выделенные строки
Как я могу сложить и развернуть выбранные линии в визуальном режиме? Допустим, у меня есть три абзаца, и я хочу сложить первые или последние два в одну строку: Test ==== Lorem Ipsum es simplemente el texto de relleno de las imprentas y archivos de texto. Lorem Ipsum ha sido el …

3
Редактируйте разные слова одновременно, одну и ту же строку, как в Sublime Text, с множественным выбором
Можно ли редактировать более одного слова одновременно, которые находятся на одной строке? Например, допустим, у меня есть это: Spam and Eggs is all you need for a healthy breakfast и я хотел бы изменить строку на: organic_Spam and organic_Eggs is all you need for a healthy breakfast Я хотел бы …

1
Как я могу изменить цвет линии, выделенной с помощью опции «курсорная линия»?
Я могу выделить текущую строку, как эта :set cursorline, которая подчеркивает текущую строку. Однако я бы хотел выделить всю линию более светлым цветом. Как я могу добиться этого взгляда?

1
Как исключить определенные расширения файлов из завершения?
Есть ли способ настроить vim относительно того, какие типы файлов он считает «подходящими» для открытия? Позвольте мне уточнить на примере. Представьте, что вы работаете над латексным документом. Как только вы соберете свой файл, в вашем каталоге будет следующее (наряду с другими файлами, связанными со сборкой): X.aux X.log X.out X.pdf X.tex …

3
Могу ли я сделать так, чтобы Vim также сохранял «небольшие удаления» в регистре «1?
Недавно я удалил плагин YankRing из моей установки отчасти потому, что он вызывал некоторые проблемы с макросами, но в основном потому, что я решил, что будет лучше научиться использовать регистры Vim вместо этого - в частности, способ, которым удаленный текст изначально сохраняется в регистре "1и затем сдвинуты вверх через "2, …
14 register 

2
Автоматически добавлять закрывающее "или" при вставке, но только если курсор уже не находится внутри строки
Я определил в себе сопоставления vimrcдля автоматического ввода закрывающих скобок и фигурных скобок при вводе открывающих скобок с помощью inoremap ( ()&lt;esc&gt;i. Я хотел бы сделать то же самое для "и ', но только когда курсор в данный момент находится не внутри строки - так как внутри строки ', вероятно, …


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.