чем полезна кнопка multiple cursors
Функционал VSCode для повышения продуктивности
Перевод серии статей Сергиу Мурешана «VSCode productivity features».
Сегодня редакторы кода имеют столько особенностей, что изучить их все довольно сложно. Эта серия статей призвана помочь вам понять и, надеюсь, начать использовать функционал VSCode, с помощью которого вы сможете работать быстрее, а качество вашего кода повысится.
Множественные курсоры в Visual Studio Code
Множественные курсоры очень впечатляют не-программистов, но в нашем мире они довольно давно. Многие люди знают об этом, но не используют полный потенциал этой фичи. Давайте разберемся, что можно делать с множественными курсорами.
1) Добавить курсор над/под (CTRL+ALT+↑/↓)
Это простой функционал, но он прячется за странным сочетанием клавиш, которое переворачивает ваш рабочий стол в направлении стрелки (в Windows). Я всегда переназначаю это сочетание, заменяя его на CTRL+SHIFT+↑/↓.
A post shared by CodeVault (@codevault) on Nov 8, 2018 at 4:28am PST
2) Добавить курсор к следующему вхождению (CTRL+D)
Просто выделите нужный текст, а затем нажмите указанные клавиши. Это добавит курсор к следующему вхождению выделенного текста, после чего вы сможете редактировать оба сразу. Это поможет вам действительно быстро редактировать код.
A post shared by CodeVault (@codevault) on Oct 5, 2018 at 10:38am PDT
3) Добавить множественные курсоры ко всем вхождениям выделенного текста (CTRL+SHIFT+L)
Механизм тот же, что и в примере выше, но курсоры добавляются ко всем вхождениям выделенного текста в текущем файле. Эта функция может служить для по-настоящему быстрого поиска и замены.
A post shared by CodeVault (@codevault) on Oct 12, 2018 at 5:01am PDT
4) Отменить последнюю операцию курсора (CTRL+U)
Вот об этой функции я долго не догадывался. Здесь все довольно просто. Если вы случайно добавили слишком много курсоров (лишний раз нажав CTRL+D), с помощью CTRL+U вы можете отменить последнее добавление. Это спасет вас от необходимости проходить весь путь выделения и добавления курсоров (теперь только нужных) заново.
A post shared by CodeVault (@codevault) on Nov 9, 2018 at 3:17am PST
Функции поиска в Visual Studio Code
Знаете ли вы, что, помимо поиска строк (в текущем документе или во всех документах), в Visual Studio Code есть еще четыре варианта поиска? Давайте их рассмотрим!
1) Поиск файла (CTRL + P)
Если вы знаете имя файла, то можно сократить время его поиска. Вам не нужно открывать менеджер файлов и выбирать там нужный. Просто нажмите CTRL + P, наберите полное имя или часть имени файла, и VSCode будет автоматически искать этот файл в вашем текущем рабочем пространстве. Он отобразит все файлы, в названии которых содержится указанное вами имя (уже открытые файлы будут вверху списка).
A post shared by CodeVault (@codevault) on Oct 13, 2018 at 5:09am PDT
2) Поиск символа (CTRL + T)
Если вы знаете, к примеру, имя приватной функции, но не знаете точно, где она находится, вам может пригодиться это сочетание клавиш. Просто нажмите их (или откройте палитру команд и поставьте префикс #) и введите имя функции. Вы получите список символов с указанием на местоположение их файлов.
A post shared by CodeVault (@codevault) on Oct 16, 2018 at 4:02am PDT
3) Поиск локального символа (CTRL + SHIFT + O)
Похоже на предыдущий вариант, только поиск происходит по текущему файлу. Также можно открыть палитру команд и ввести @.
А если вы введете в строке поиска @:, то сгруппируете функции по типу значков. Так вам будет легче найти нужную, если вы не знаете ее полного имени.
A post shared by CodeVault (@codevault) on Nov 11, 2018 at 2:49am PST
4) Поиск по ссылке (SHIFT + F12)
Б этой фиче стоит знать, потому что она позволяет очень быстро искать по упоминаниям (ссылкам). Введя это сочетание клавиш, вы получите всплывающее окно, где будут отображаться не только все места, где используется символ, но и
15 строк кода, чтобы было понятно, как он используется. Вам не придется перемещаться по файлам, чтобы проверить, та ли это ссылка, что вам нужна.
A post shared by CodeVault (@codevault) on Nov 10, 2018 at 1:44am PST
Навигация по коду в Visual Studio Code
Функции навигации в VS Code выглядят довольно просто, но, на первый взгляд, не кажутся сильно полезными. Поэтому я вам советую перед чтением этого раздела переместить свою мышь на другую от себя сторону. Это заставит вас начать использовать сочетания клавиш, о которых пойдет речь, и поверьте мне, за несколько часов использования вы забудете, что еще недавно не знали о них. Вы поймете, насколько они эффективны!
1) Назад / вперед (ALT + ← / →)
Самый быстрый способ переместиться из одной части файла в другую – с помощью этого сочетания клавиш. Некоторые могут возразить, мол, CTRL + TAB делает то же самое, но эта функция более полная. Она сохраняет историю о местах одного файла, и эта история сохраняется даже после применения данного шортката (вы можете перемещаться туда-сюда, а история не изменится).
Основы множественных курсоров
Существуют ли какие-либо руководства, учебные пособия или примеры, иллюстрирующие его основные функции?
В дополнение к описанию использования @bastibe я использую несколько курсоров для добавления или удаления текста в начале / конце группы строк:
Вы можете использовать forward-word и forward sentence т. Д. Для перемещения вперед и назад по линиям, что позволяет редактировать четвертое слово в каждой строке, даже если текст в каждой строке не идентичен.
В качестве примера, я делаю такую работу постоянно:
C-u M-! ls / test-dat / pp5 / * fsa RETURN
И вуаля, вы преобразовали листинг файла в код, чтобы прочитать этот листинг. Это на самом деле гораздо сложнее описать, чем на самом деле сделать!
У меня есть два варианта использования multiple-cursors :
Второй вариант использования заменил большинство использований макросов для меня. Вместо того, чтобы записывать макрос, а затем применять его в нескольких местах, я помещал курсор в каждое место и просто выполнял операцию во всех местах одновременно.
Я нашел следующее, чтобы быть полезным:
гу-гоу к полукоксу
расширить регион
Это действительно полезно по той же причине: iy когда под каждым курсором есть несколько разные строки, и вы, возможно, захотите выбрать строку в кавычках под точкой или подобным.
пользовательские вещи
Это вещи, которые просто elisp в моем конфиге, но я считаю полезным. Вероятно, не написано мной.
Номер приращения в точке
Это либо пришло от SO, либо от emacswiki. Не уверен, какой. Это довольно полезно само по себе, а также при использовании в сочетании с mc/insert-numbers
Несколько курсоров в коде Visual Studio [закрыто]
Как вы можете создать несколько курсоров при редактировании в VS Code? Я интересуюсь как macOS, так и Windows.
Нажмите Alt и нажмите. Это работает на Windows и Linux *, и должно работать на Mac.
В Visual Studio Code 0.2 теперь доступны дополнительные функции с несколькими курсорами:
Улучшения с несколькими курсорами
Ctrl+D ( Cmd+D на Mac) выбирает следующее вхождение слова под курсором или текущего выделения,
Ctrl+K Ctrl+D перемещает последний добавленный курсор на следующее вхождение слова под курсором или текущего выбора.
По умолчанию команды используют matchCase. Если виджет поиска открыт, то настройки виджета поиска (matchCase / matchWholeWord) будут использоваться для определения следующего вхождения
Ctrl+U ( Cmd+U на Mac), чтобы отменить последнее действие курсора, поэтому, если вы добавили слишком много курсоров или допустили ошибку, вы можете нажмите Ctrl+U ( Cmd+U на Mac), чтобы вернуться к предыдущему состоянию курсора. Добавление курсора вверх или вниз ( Ctrl+Alt+Up / Ctrl+Alt+Down ) ( Cmd+Alt+Up / Cmd+Alt+Down на Mac) теперь показывает последний добавленный курсор, чтобы упростить работу с несколькими курсорами на более чем 1 высоте области просмотра одновременно (т.е. выберите 300 строк и только 80 поместится в область просмотра).
Это значительно упрощает введение нескольких курсоров.
* Конфликт перетаскивания в Linux:
Become multi-armed with CLion’s multiple cursors
Sometimes effectiveness is how quickly you can type. For example, having code appear simultaneously in multiple places can come in handy. In this blog post, we are going to explain how CLion can help you do this with its multiple cursors feature. We’ll also identify some scenarios when it’s better to go with refactorings or code generation instead.
Multiple cursors: Essentials
The idea is simple – you put the caret in several different places in a file and start editing all of them at once. This works for all the languages supported in CLion, including C, C++, CMake scripting, JavaScript, XML, HTML, Python, Swift and more. Sounds cool, doesn’t it?
Some useful shortcuts:
First option works in the situations like in the following example:
And second one can be handy in the case like below:
If you wish to select all occurrences at once, press Shift+Ctrl+Alt+J (Lin/Win) or ^⌘G (macOS).
Multiple cursors and smart actions
Lots of editing actions work nicely with multiple cursors:
Yet there are more exciting actions that work with multiple cursors as well:
The context for the action is detected by the most recently set cursor, and the result is applied to all the cursors at once. Example:
When not to use multiple cursors
While the feature looks superhandy and cool, there are scenarios when it’s better to avoid it and use other IDE features instead.
Scenario 1:
Generate menu ( Alt+Insert (Lin/Win) or ⌘N (macOS)) is even more powerful and allows you to get constructors/destructors, equality/relational/stream output operators, implement/override functions and generate definitions.
Scenario 2:
Use Rename refactoring to change variables, parameters, functions, macros, and other names. This will help you to:
Scenario 3:
Extract Function is another useful refactoring, which can save you from redundant multiple changes in similar code blocks.
Scenario 4:
The good thing about the refactorings in comparison with multiple cursors is that they work on the whole project and not just recent file.
Try multiple cursors
Give multiple cursors a try in CLion, get a feel for situations where they’re useful for you and when they’re not, and soon they will become a great new addition to your C and C++ development arsenal!
Приемы редактирования текста в VS Code: мультикурсор
При работе с текстовыми файлами часто возникает необходимость массового редактирования некоторых фрагментов. С простыми случаями (заменить ‘abc’ на ‘def’) справляется интуитивно понятная функция автозамены, которая есть в любом распространённом редакторе. Но что делать, если Вам нужно, например, найти все слова, начинающиеся на букву «t», и поменять их местами со словом, которое идет после них?
Мультикурсор через поиск
Теперь мы можем нажать Alt-Enter, и редактор вставит по курсору в каждом месте, где был найден искомый фрагмент:
Обратите внимание, что курсоры можно перемещать стрелками, а также выделять фрагменты, зажимая Shift. Так как Ctrl со стрелками позволяет перемещаться до конца слова, нажатием Ctrl-Shift-вправо я могу выделить каждое найденное слово:
после выделения слова я дополнительно выделил еще один символ, чтобы «захватить» последующий пробел или знак препинания
Теперь можно вырезать выделенные фрагменты (Ctrl-X), переместиться на одно слово вправо (Ctrl-вправо) и вставить их (Ctrl-V). Если количество курсоров при вставке осталось неизменным, то каждый вырезанный фрагмент будет вставлен на своё место:
Конечно, пример «высосан из пальца», но есть немало задач, где этот способ будет полезен. Например, найти и заменить все email-адреса в тексте, исправить тэги в html или xml файле, поменять местами колонки в файле csv.
Вставка мультикурсора вручную
Множественные курсоры можно также вставить вручную, командами Ctrl-D (следующий совпадающий с выделенным фрагмент) и Ctrl-Shift-L (вставить курсоры в каждый фрагмент, совпадающий с выделенным). Например, я выделил фрагмент ‘текст’ и два раза нажал Ctrl-D:
Кстати, вам не нужно заучивать сочетания клавиш, которые я упомянул. Достаточно лишь запомнить «магическую» команду Ctrl-Shift-P, которая даёт доступ ко всем командам:
Причём поиск «умный», позволяет находить команды по первым буквам, например:
В эта статье я рассказал лишь о нескольких функциях, которыми обладает этот редактор. Вы можете найти больше полезной информации на официальном сайте: Visual Studio Code Tips and Tricks. Поделитесь в комментариях, какие функции и расширения VS Code Вы считаете самыми полезными.
MS, Libreoffice & Google docs
477 постов 12.9K подписчиков
Правила сообщества
2. Публиковать посты соответствующие тематике сообщества
3. Проявлять уважение к пользователям
4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.
По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях
Обозвать среду разработки текстовым редактором? Это что-то новенькое! ))
\b начало слова, а \W это не буквы, а то что Вы описали, можно в принципе одной регуляркой обойтись
Все таки идея поприятнее в плане ux/ui
Привет. Вот такой вопрос возник. При изучении регулярных выражений (отработке навыков) самым непростым является поиск задач для решения, ка ни странно. Хочет спросить, нет ли задач по теме?
Спасибо ТС, но уже давно есть «Sublime Text» с тоннами плагинов под любые задачи. Все описанное выше там присутствует.
Чем он лучше обычной IDE? Той же VS.
Или, чем он лучше других текстовых редакторов типо notepad++?
Открой уже для себя TeXstudio!
Мировая слава народа русского
Что хотели, то и получили: к чему привела жадность торговцев деревом, фанерой и OSB
«Я не злопамятный, я просто злой и у меня память хорошая». И, мне кажется, события этого строительного сезона не только я, но и многие люди будут помнить ещё ой как долго.
Бизнес и совесть малосовместимые категории и строительный сезон 2021 года это вполне наглядно продемонстрировал. После практически годичного сидения людей по домам производители и торговцы решили воспользоваться ажиотажем на зарубежных рынках и устроить тоже самое, только в два раза хуже у нас.
Парадокс заключается в том, что в пике цена на OSB доходила до 3600 за лист. То есть каждому не распрощавшемуся с мечтой о стройке россиянину лист фанеры обходился в три с половиной раза дороже, чем американцам.
К середине лета многие оптовые базы и розничные магазины и сами были не рады такому повышению. Они ещё держались на старых запасах, но к августу пришлось закупать материалы по максимальным ценникам.
И тут произошло следующее: почти все понадеялись на дальнейший рост цен на фоне ажиотажа в США и закупились фанерой по максимуму. например, один крупнооптовый областной склад фанеры купил фанеры более чем на 75 миллионов рублей. Не отстали в закупках сетевые магазины.
А цена возьми и упади.
Оказалось, что спрос в США на самом деле не такой уж и высокий. Там люди тоже не дураки, деньги считать умеют, поэтому качели спроса моментально качнулись в отрицательную сторону.
К чему это привело?
Вот к чему: в магазинах и на базах скопилось фанеры, купленной по заоблачной цене, практически на весь следующий сезон.
Строители-предприниматели на оптовом складе берут уже по 615 рублей. То есть цена скакнула вниз практически до минимального уровня.
А в магазинах нет ни одного человека. Все проходят мимо и качают головой.
Многие уже начали обзванивать предпринимателей:
— Не хотите у нас приобрести?
А ведь до следующего сезона как минимум 4,5 месяца. Они будут сидеть и смотреть на свою «золотую» фанеру.
Так что я совсем не злопамятный или всё же.