Notepad курсор на несколько строк
Как можно использовать несколько курсоров в Notepad ++?
У меня будет пара значений, разделенных табуляцией. Мне нужно написать запрос для всех этих значений. Например, если я получу файл Excel с такими значениями:
Я хочу скопировать весь этот фрагмент данных в Notepad ++ и написать запрос, вставив сразу все значения.
Я делал это с моим предыдущим текстовым редактором Ultraedit. Можно ли это сделать с помощью Notepad ++?
Я все время делаю это с помощью Notepad ++, но застрял с UltraEdit в этой работе . Как мне сделать это с помощью UltraEdit? :)
Да: просто нажмите и удерживайте Alt клавишу, щелкните и перетащите, чтобы выбрать строки, столбцы которых вы хотите отредактировать, и начните вводить текст.
Вы также можете перейти в « Настройки»> «Настройки . » и на вкладке « Редактирование » включить одновременное редактирование, чтобы разрешить одновременное редактирование нескольких отдельных областей или столбцов текста.
Это гораздо более интуитивно понятно, так как вы можете видеть свои изменения в реальном времени по мере ввода.
@Wouter: Это все еще есть для меня в v6.2 . если его нет в v5.2, то может быть что-то еще не так, но я не могу комментировать дальше.
@BoltClock: Круто! Где-то между версиями v5.2 и v6.2 эта функция должна была быть добавлена. Или, может быть, он на мгновение потерялся где-то перед этим :)
В том месте, где вы хотите добавить текст, выполните:
Shift + Alt + down arrow
и выберите нужные строки. Затем введите. Вводимый вами текст будет вставлен во все выбранные вами строки.
это даже лучший ответ! не забудьте использовать shift + alt для любого действия, такого как вырезание, копирование!
Вы можете добавлять / редактировать контент на нескольких строках с помощью кнопки управления. Это функция множественного редактирования в Notepad ++, нам нужно включить ее в настройках. Нажмите и удерживайте элемент управления, выберите места, где вы хотите ввести текст, отпустите элемент управления и начните вводить текст, это обновит текст во всех местах, выбранных ранее.
Notepad ++ теперь также обрабатывает несколько курсоров.
Зайдите в «Настройки» => «Настройки» => «Редактирование» и отметьте «Включить» в «Множественные настройки редактирования». Затем просто используйте Ctrl + щелчок, чтобы использовать несколько курсоров.
Вы можете использовать Edit > Column Editor. для вставки текста в текущую и последующие строки. Ярлык есть Alt + C .
Notepad ++ имеет мощный движок регулярных выражений, способный по желанию искать и заменять шаблоны.
В вашем сценарии:
Щелкните пункт меню Search \ Replace .
Заполните поле "Найти" шаблоном поиска:
Заполните шаблон замены:
Щелкните Replace All кнопку.
Я использую регулярное выражение для этих типов правок уже более 10 лет, но многие люди исправляют регулярное выражение, которое сбивает с толку или затрудняет изучение
Самый простой способ решить вашу проблему (без обращения к другому редактору и изучения регулярного выражения) - это записать макрос.
Честно говоря, макросы в N ++ спасли мне около года жизни.
В Notepad ++ есть только редактирование столбцов. Это не совсем то же самое, что и несколько курсоров.
Изменить: По-видимому, где-то около Notepad ++ версии 6.x было добавлено редактирование с несколькими курсорами, но в Sublime все еще есть еще несколько дополнительных функций для него, например «выбрать следующее вхождение».
редактирование npp с несколькими курсорами далеко не так хорошо, как многострочное редактирование sublime.
Исправление: редактирование npp с несколькими курсорами далеко не так хорошо, как многострочное редактирование sublime по умолчанию . Библиотека scintilla поддерживает все функции, которые поддерживает Sublime. Любой пользователь может загрузить плагин, такой как nppscripts или pythonscript, чтобы получить доступ к базовой структуре npp и сопоставить эти сценарии с сочетаниями клавиш, имитируя все возвышенные команды. Для тех, кто не хочет утруждать себя настройкой своего редактора, обязательно заплатите за возвышенное.
Для этого вы можете использовать плагин ConyEdit. Когда ConyEdit работает в фоновом режиме, выполните следующие действия:
I will have a couple of tab delimited values . I need to write a query for all of these values. For example, if I get an Excel file with values like this:
I want to copy this whole piece of data into Notepad++ and write the query, inserting all the values at once.
I used to do it with my previous text editor Ultraedit. Can this be done using Notepad++?
9 Answers 9
Yes: simply press and hold the Alt key, click and drag to select the lines whose columns you wish to edit, and begin typing.
You can also go to Settings > Preferences. , and in the Editing tab, turn on multi-editing, to enable selection of multiple separate regions or columns of text to edit at once.
It's much more intuitive, as you can see your edits live as you type.
@Wouter: It's still there for me in v6.2. if it isn't present in v5.2 then something else may be wrong, but I can't comment further.
@BoltClock: Cool! Somewhere between version v5.2 and v6.2 that feature must have been added. Or maybe it got lost momentarily somewhere before that :)
In the position where you want to add text, do:
Shift + Alt + down arrow
and select the lines you want. Then type. The text you type is inserted on all of the lines you selected.
You can add/edit content on multiple lines by using control button. This is multi edit feature in Notepad++, we need to enable it from settings. Press and hold control, select places where you want to enter text, release control and start typing, this will update the text at all the places selected previously.
Notepad++ also handles multiple cursors now.
Go into Settings => Preferences => Editing and check "Enable" in "Multi editing settings" Then, just use Ctrl+click to use multiple cursors.
You can use Edit > Column Editor. to insert text at the current and following lines. The shortcut is Alt + C .
Notepad++ has a powerful regex engine, capable to search and replace patterns at will.
In your scenario:
Click the menu item Search\Replace.
Fill the 'Find what' field with the search pattern:
Fill the replace pattern:
Click the Replace All button.
I've been using regex for these types of edits for 10+ years, but many people fix regex confusing or difficult to learn
- Place your cursor at the start of your text, click the 'record' button in the ribbon, and then edit just that one row of text. You may only use arrow keys or ctrl+arrow keys to move around characters/words rather than clicking with your mouse. The 'home' and 'end' keys are also useful.
- When you're finished with that one line, move your cursor (again without using the mouse) to the start of the next line.
- Click the 'stop recording' button.
- Click the 'play macro' button to check that it works on the next line as expected.
- Click the 'run macro multiple times' to do it again, and again, and again. :P
Honestly, macros in N++ have saved about a year of my life.
Notepad++ only has column editing. This is not completely the same as multiple cursors.
Edit: Apparently somewhere around Notepad++ version 6.x multi-cursor editing got added, but there are still a few more advanced features for it in Sublime, like "select next occurrence".
Correction: the multi-cursor editing of npp is nowhere near as good as multiline editing of sublime by default. The scintilla library allows for all functionality that sublime supports. Any user can download a plugin such as nppscripts or pythonscript to access the underlying npp framework and map those scripts to keyboard shortcuts, emulating all sublime commands. For those who don't want to bother configuring their editor, by all means pay for sublime.
I understand where you're coming from but it isn't fair to ask a regular user to have to script the underlying editor framework for a normal feature. I'd agree with you if a plugin already did this (if I had more time I'd make one). Also this recent post sourceforge.net/p/scintilla/feature-requests/1085 says "highlight next" might be easy to do, but you still can't have arrow key functionality. I wonder how easy "skip" would be to implement as well? Highlight next, skip next, and arrows can all be helpful at times.
У меня будет несколько значений с разделителями табуляции. Мне нужно написать запрос для всех этих значений. Например, если я получаю файл Excel с такими значениями:
Я хочу скопировать весь этот кусок данных в Notepad++ и написать запрос, вставив сразу все значения.
Раньше я делал это в своем предыдущем текстовом редакторе Ultraedit. Можно ли это сделать с помощью Notepad++?
Я делаю это все время с Notepad ++, но в этой работе застрял с UltraEdit . Как мне это сделать с UltraEdit? :)
Да: просто нажмите и удерживайте клавишу Alt , щелкните и перетащите, чтобы выбрать строки, столбцы которых вы хотите отредактировать, и начните печатать.
Вы также можете перейти в раздел Настройки > Настройки. и на вкладке Редактирование включить мультиредактирование, чтобы разрешить выбор нескольких отдельных областей или столбцов текста для редактировать сразу.
Это гораздо более интуитивно понятно, так как вы можете видеть свои правки в реальном времени, когда печатаете.
2013 здесь, версия 5.2: нет (больше) вкладки «Редактирование» или параметра множественного редактирования.
@Wouter: У меня он все еще есть в версии 6.2 . если его нет в версии 5.2, возможно, что-то еще не так, но я не могу комментировать дальше.
@BoltClock: Круто! Где-то между версиями v5.2 и v6.2 эта функция должна была быть добавлена. Или, может быть, он на мгновение потерялся где-то перед этим :)
В том месте, где вы хотите добавить текст, выполните:
Shift + Alt + down arrow
И выберите нужные строки. Затем введите. Вводимый текст вставляется во все выбранные вами строки.
Это еще лучший ответ! не забудьте использовать Shift+Alt для любого действия, такого как вырезание, копирование!
Вы можете добавлять/редактировать содержимое нескольких строк с помощью кнопки управления. Это функция мультиредактирования в Notepad++, нам нужно включить ее в настройках. Нажмите и удерживайте элемент управления, выберите места, где вы хотите ввести текст, отпустите элемент управления и начните печатать, это обновит текст во всех местах, выбранных ранее.
Notepad++ также теперь поддерживает несколько курсоров.
Перейдите в «Настройки» => «Настройки» => «Редактирование» и установите флажок «Включить» в «Настройках мультиредактирования». Затем просто используйте Ctrl + щелчок, чтобы использовать несколько курсоров.
Вы можете использовать Edit > Column Editor. для вставки текста в текущую и последующие строки. Ярлык Alt + C .
Notepad ++ имеет мощный механизм регулярных выражений, способный искать и заменять шаблоны по желанию.
В вашем сценарии:
Щелкните пункт меню Поиск\Заменить.
Заполните поле «Найти что» шаблоном поиска:
Заполните шаблон замены:
Я использую регулярные выражения для этих типов правок более 10 лет, но многие люди исправляют регулярные выражения, которые сбивают с толку или сложны для изучения.
Самый простой способ решить вашу проблему (без использования другого редактора или изучения регулярных выражений) — записать макрос.
Честно говоря, макросы в N++ спасли мне около года жизни.
Notepad++ поддерживает только редактирование столбцов. Это не совсем то же самое, что несколько курсоров.
Редактировать: по-видимому, где-то в Notepad ++ версии 6.x было добавлено редактирование с несколькими курсорами, но в Sublime все еще есть несколько дополнительных функций, таких как «выбрать следующее вхождение».
Многокурсорное редактирование npp далеко не так хорошо, как многострочное редактирование возвышенного.
Исправление: редактирование npp с несколькими курсорами далеко не так хорошо, как многострочное редактирование возвышенного по по умолчанию. Библиотека scintilla позволяет использовать все функции, поддерживаемые возвышенным. Любой пользователь может загрузить плагин, такой как nppscripts или pythonscript, чтобы получить доступ к базовой инфраструктуре npp и сопоставить эти сценарии с сочетаниями клавиш, эмулируя все возвышенные команды. Для тех, кто не хочет заморачиваться с настройкой своего редактора, обязательно заплатите за возвышенное.
Для этого вы можете использовать плагин ConyEdit. Когда ConyEdit работает в фоновом режиме, выполните следующие действия:
Какой самый быстрый способ добавить текст в начало и конец каждой строки?
Следуй этим шагам:
- Нажмите Ctrl + H , чтобы открыть диалоговое окно "Найти / заменить".
- Выберите параметр Regular expression в нижней части диалогового окна.
Чтобы добавить слово, например test , в начало каждой строки:
Чтобы добавить слово, например test , в конец каждой строки:
Что ж, я публикую это спустя столько времени, но это будет проще всего.
Чтобы добавить текст в начало / определенное-место-от начала для всех строк, просто щелкните там и нажмите ALT + C, и вы получите поле ниже. Введите свой текст и нажмите ОК, и готово.
Чтобы добавить определенный текст в конец всех строк, нажмите CTRL + F и выберите ЗАМЕНИТЬ. Вы получите следующее поле. В поле «найти что» введите «$» и введите в тексте «заменить на». Убедитесь, что вы выбрали «регулярное выражение» в режиме поиска (слева вниз). Наконец, нажмите «заменить все», и все готово.
Вы можете сделать это автоматически в Блокноте ++ (добавлять текст в начало и / или конец каждой строки) с помощью одного регулярного выражения в поле «Заменить» ( Ctrl + H ):
Объяснение: Выражение $1 во вводе Заменить на обозначает все символы, которые включают круглые скобки (.*) в Найти что регулярный экспрессин.
Надеюсь, это поможет.
Вот мой ответ. Добавить ');' в конец каждой строки я делаю «Найти: $» и «Заменить на: \);» нужно совершить побег;
Notepad ++ имеет очень мощные возможности редактирования. (Сегодня я ищу аналогичную функцию в Sublime Text), но для Notepad ++ просто удерживайте Alt при перетаскивании мыши. То, что вы вводите, заменит выбранный столбец в каждой строке. Чтобы вставить без замены существующего текста, используйте Alt-Shift .
- Переместите курсор в начало первой строки
- Удерживая Alt + Shift , используйте курсорную клавишу down , чтобы расширить выделение до конца блока.
Это позволяет печатать одновременно в каждой строке.
Я нашел решение выше, здесь.
Я думаю, это намного проще, чем использовать регулярное выражение.
Пожалуйста, найдите снимок экрана ниже, на котором можно добавить новое слово в начало и конец строки одним выстрелом.
Просто в поле "Найти что:" введите \r . Это означает «Концы ряда». В поле «Заменить на:» вы указываете то, что хотите, например .xml
Если у вас есть несколько строк, и вы хотите добавить этот текст в конец каждой строки, вам необходимо разметить параметр «. соответствует новой строке» в групповом поле «Режим поиска».
У вас есть список имен файлов, но вы хотите добавить расширение, например .xml. Это было бы то, что вам нужно сделать, и бац! Один выстрел!:
Чтобы сделать это за один раз:
- Скопируйте и вставьте следующий пример текста в окно блокнота ++:
- Нажмите Ctrl + H в окне блокнота ++.
- В поле Найти введите: ^(.+)$ . Здесь ^ обозначает начало строки. $ представляет конец строки. (. +) означает любой символ между началом и концом строки, и это будет группа 1.
- В поле Заменить на введите: WhateverFrontText(\1)WhatEverEndText . Здесь (\ 1) означает любой текст в строке.
- Установите флажокПеренести
- Режим поиска: регулярное выражение
- Результат:
- Снимок экрана с параметрами и результатом блокнота ++:
Чтобы добавить другой текст в конец каждой строки, вы можете использовать для этого плагин ConyEdit.
Когда ConyEdit работает в фоновом режиме, выполните следующие действия.
- используйте командную строку cc.gl a , чтобы получить строки и сохранить их в массиве с именем a.
- используйте командную строку cc.aal //$a для добавления после каждой строки, используя содержимое массива a.
Пример
Если у вас тысячи строк, я думаю, самый простой способ выглядит так:
-выберите строку, которая является начальной точкой для вашего курсора
- удерживая alt + shift , выберите строку, которая является конечной точкой для вашего курсора
Вот и все. Теперь у вас есть гигантский курсор. Во все эти строки можно писать что угодно.
Блокнот ++ Добавить слово в начало каждой строки
Следуйте этой инструкции, чтобы писать что угодно в начале каждой строки с помощью Notepad ++.
Нажмите Cntrl + H , чтобы открыть диалоговое окно "Найти / заменить".
Теперь введите ^ в текстовое поле Найти (введите ^ без пробелов).
Введите что-нибудь (например, в нашем примере я пишу «Джон») в текстовое поле Заменить на (введите текст на один / несколько пробелов для добавления одного / нескольких пробелов после текста в каждой строке)
Выберите вариант Регулярное выражение .
Поместите курсор в первую строку вашего файла, чтобы убедиться, что затронуты все строки
Блокнот ++ Добавить текст в конец каждой строки
Следуйте этой инструкции, чтобы написать что-нибудь в конце каждой строки с помощью Notepad ++.
Нажмите Cntrl + H , чтобы открыть диалоговое окно "Найти / заменить".
Теперь введите $ в текстовое поле Найти (введите $ без пробелов).
Введите что-нибудь (например, в нашем примере я пишу «Джон») в текстовое поле Заменить на (введите один / несколько пробелов для добавления одного / нескольких пробелов перед текстом в каждой строке)
Выберите вариант Регулярное выражение .
Поместите курсор в первую строку вашего файла, чтобы убедиться, что затронуты все строки
Для всех руководств по Notepadd ++: ПОСЕТИТЬ :)
Откройте Notepad ++, затем нажмите Ctrl + F .
Выберите регулярное выражение
* Найти что: «^» (который представляет собой индекс каждой строки - «ПРЕФИКС»).
Заменить на "anyText" *
Для Суффикса в каждой строке: выполните те же действия, что и выше, «Замените ^ на $». Вот и все.
Во многих текстовых редакторах, предназначенных для программистов, если у пользователя есть выделение, которое занимает более 1 строки, и он нажимает клавишу TAB , эти строки имеют отступ на 1 TAB ( или количество пробелов, в зависимости от того, как настроен редактор).
Однако это не похоже на поведение Notepad ++ по умолчанию. Есть ли способ сделать это в Notepad ++ или есть плагин, который позволяет мне это сделать?
Изменить: после дополнительного тестирования SHIFT - TAB правильно удаляет отступы строк, как ожидалось, но только вкладка просто вставляет вкладку, где бы ни находился карат. Это в версии 5.4.5 Unicode
Проблема была в плагине QuickText. После его удаления отступ работал как обычно.
Проблема с новой версией QuickText, похоже, заключается в том, что она настроена на реакцию на клавишу TAB . Ранее было установлено использование CTRL - ENTER . Если вы измените комбинацию клавиш в средстве сопоставления клавиш, ваша клавиша TAB должна снова начать работать, и QuickText также должен работать (с любой новой клавишей, которую вы назначили).
Capslock + Tab для одновременного отступа нескольких строк. Сначала выделите текст.
Он отлично работает с моей версией 5.4.5 Notepad ++. Я просто выделяю несколько строк и нажимаю TAB .
Если вы хотите заменить TAB на SPACE , вам нужно перейти в «Настройки»> «Настройки» и выбрать вкладку «Редактировать компоненты». Затем установите флажок Заменить пробелами в разделе «Настройка вкладок».
Обновление : в более новой версии Notepad ++ этот параметр находится в разделе «Настройки»> «Настройки»> «Язык».
У меня Notepad ++ 5.3.1 (UNICODE). Я не занимался магией, и у меня все работает, как вы описали.
Может это зависит от (программирования / разметки / . ) "языка"?
Просто установите подключаемый модуль NppAutoIndent, выберите Плагины> NppAutoIndent> Игнорировать язык , а затем Плагины> NppAutoIndent> Smart Indent .
Notepad ++ будет автоматически вставлять последующие отступы только в том случае, если вы вручную сделаете отступ для первой строки в блоке; в противном случае вы можете изменить отступ в коде постфактум, используя TextFX> TextFX Edit> Reindent C ++ code.
В Notepad ++ v6.1.8 (Unicode) он работает после удаления плагина QuickText.
Чтобы увеличить отступ - нажмите и удерживайте TAB
Чтобы уменьшить отступ - нажмите и удерживайте TAB + SHIFT
Если вы используете QuickText и любите нажимать для него Tab, в противном случае вы можете изменить клавишу отступа.
Перейдите в Настройки> Shortcup Mapper> Scintilla Command. Посмотрите на цифру 10.
- Я изменил 10 на: CTRL + ALT + RIGHT и
- 11 на: CTRL + ALT + LEFT .
Теперь я думаю, что это даже лучше, чем по умолчанию TABL / SHIFT + TAB .
Читайте также: