Как выбрать между скобками (или кавычки или …) в Vim?

Это нормально, быть Мортом

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

211
задан Randall 22 July 2016 в 07:26
поделиться

7 ответов

Используйте любую клавишу навигации, которую хотите поместить в круглые скобки, затем вы можете использовать yi ( или yi) , чтобы скопировать все, что находится в соответствии паренсы. Это также работает с квадратными скобками (например, yi] ) и фигурными скобками. В дополнение к y , вы также можете удалить или изменить текст (например, ci) , di] ).

Я пробовал это с двойным и одиночным- цитаты, и, похоже, он там тоже работает. Для ваших данных я делаю:

write (*, '(a)') 'Computed solution coefficients:'

Переместите курсор на C , затем введите yi '. Переместите курсор в пустую строку, нажмите p и получите

Computed solution coefficients:

Как отметила CMS , это также работает для выбора визуального режима - просто используйте vi) , vi} , vi ' и т. Д.

264
ответ дан 23 November 2019 в 04:32
поделиться

To select between the single quotes I usually do a vi' ("select inner single quotes").

Inside a parenthesis block, I use vib ("select inner block")

Inside a curly braces block you can use viB ("capital B")

To make the selections "inclusive" (select also the quotes, parenthesis or braces) you can use a instead of i.

You can read more about the Text object selections on the manual, or :help text-objects within vim.

258
ответ дан 23 November 2019 в 04:32
поделиться

Этот метод выбора встроен и подробно описан в справке Vim. Он охватывает теги XML и многое другое.

См. : текстовые объекты справки .

27
ответ дан 23 November 2019 в 04:32
поделиться

Используйте стрелки или hjkl , чтобы перейти к одному из выражений брекетинга, затем v , чтобы выбрать визуальный (т.е. выбор) режим, затем % , чтобы перейти к другой скобке.

7
ответ дан 23 November 2019 в 04:32
поделиться

Для выбора в одинарных кавычках используйте vi '.

Для выбора в круглых скобках используйте vi (.

20
ответ дан 23 November 2019 в 04:32
поделиться

Write a Vim function in .vimrc using the searchpair built-in function:

searchpair({start}, {middle}, {end} [, {flags} [, {skip}
            [, {stopline} [, {timeout}]]]])
    Search for the match of a nested start-end pair.  This can be
    used to find the "endif" that matches an "if", while other
    if/endif pairs in between are ignored.
    [...]

(http://vimdoc.sourceforge.net/htmldoc/eval.html)

3
ответ дан 23 November 2019 в 04:32
поделиться

Простая раскладка клавиатуры в vim решит эту проблему. карта viq F ”lvf” hh Эта команда выше сопоставляет viq с клавишами для поиска между кавычками. Замени "" любым символом и создай свои раскладки. Вставьте это в vimrc во время запуска, и вы сможете использовать его каждый раз.

-6
ответ дан 23 November 2019 в 04:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: