Блокнот ++ Мульти редактирование

Как я могу использовать несколько курсоров в Notepad ++?

У меня будет пара значений, разделенных табуляцией. Мне нужно написать запрос для всех этих значений. Например, если я получу файл Excel с такими значениями:

1234 xyz pqr
2345 sdf kkk
...

Я хочу скопировать весь этот фрагмент данных в Notepad ++ и написать запрос, вставив сразу все значения.

Нравится:

Insert into tbl (1234, xyz) where clm = 'pqr'
Insert into tbl (2345, sdf) where clm = 'kkk'
...

Раньше я делал это с моим предыдущим текстовым редактором Ultraedit. Можно ли это сделать с помощью Notepad ++?


person Anu    schedule 10.08.2010    source источник
comment
Э ... Используйте SublimeText. :)   -  person Praveen Kumar Purushothaman    schedule 09.02.2016
comment
Я все время делаю это с помощью Notepad ++, но в этой работе я застрял с UltraEdit ... Как мне сделать это с помощью UltraEdit? :)   -  person Ron Jensen    schedule 14.11.2017


Ответы (9)


Да: просто нажмите и удерживайте клавишу Alt, щелкните и перетащите, чтобы выбрать строки, столбцы которых вы хотите отредактировать, и начните вводить текст.

Вы также можете перейти в Настройки> Настройки ... и на вкладке Редактирование включить одновременное редактирование, чтобы разрешить выбор нескольких отдельных областей или столбцов текста для редактировать сразу.

Это гораздо более интуитивно понятно, так как вы можете видеть свои правки в реальном времени по мере ввода.

person BoltClock    schedule 10.08.2010
comment
2013 здесь, v5.2: (больше нет) вкладки редактирования или опции одновременного редактирования. - person Wouter; 19.02.2013
comment
@Wouter: Это все еще есть для меня в v6.2 ... если его нет в v5.2, то может быть что-то еще не так, но я не могу комментировать дальше. - person BoltClock; 19.02.2013
comment
@BoltClock: Круто! Эта функция должна была быть добавлена ​​где-то между версиями v5.2 и v6.2. А может, он где-то на мгновение потерялся где-то перед этим :) - person Wouter; 19.02.2013
comment
@Wouter: Подождите, я только что понял, насколько старая версия 5.2 ... она даже старше, чем этот ответ! Клянусь, это была последняя и лучшая в какой-то момент времени ... как долго я использую эту штуку ?! - person BoltClock; 19.02.2013
comment
Демонстрацию можно увидеть здесь: notepad-plus-plus.org/features/multi -editing.html. Похоже на старую версию, но я пробовал ее в v6.4.5, и она работала нормально. - person brazilianldsjaguar; 29.05.2014
comment
@brazilianldsjaguar: Ух ты, анимированные демоверсии, я такого никогда не видел - это круто. Да, это давняя функция, и я не верю, что она исчезнет в ближайшее время. - person BoltClock; 29.05.2014
comment
Это было то, чего я просто не мог узнать до сих пор. Я должен отметить, что alt + стрелки вверх и вниз также работают с текущей позиции курсора. Теперь вопрос только в том, можно ли каким-то образом использовать клавиши со стрелками для перемещения нескольких курсоров, таких как возвышенный текст и инструменты разработчика Chrome. - person pcnate; 11.02.2016
comment
alt+up/down у меня не сработало. Вместо этого мне пришлось использовать alt+shift+up/down. v6.9.1 - person AXO; 08.05.2016

В том месте, где вы хотите добавить текст, выполните:

Shift + Alt + down arrow

и выберите нужные строки. Затем введите. Вводимый вами текст будет вставлен во все выбранные вами строки.

person devlin carnate    schedule 20.06.2016
comment
Поистине лучший ответ здесь. - person Etienne Gautier; 11.01.2018
comment
это даже лучший ответ! не забудьте использовать shift + alt для любого действия, такого как вырезание, копирование! - person Gaurav; 09.07.2020
comment
Давно искал эту фичу, спасибо! - person michal.hubczyk; 21.07.2020

Вы можете добавлять / редактировать контент на нескольких строках с помощью кнопки управления. Это функция множественного редактирования в Notepad ++, нам нужно включить ее в настройках. Нажмите и удерживайте элемент управления, выберите места, где вы хотите ввести текст, отпустите элемент управления и начните вводить текст, это обновит текст во всех местах, выбранных ранее.

введите описание изображения здесь

Ссылка: http://notepad-plus-plus.org/features/multi-editing.html

person MoHaN K RaJ    schedule 06.11.2013
comment
Мне нравится созданная вами гифка. Спасибо за это. - person Julien; 12.12.2019
comment
Именно этого я и хотел. Спасибо. - person Sol; 04.03.2020
comment
Есть ли способ создать и установить положение курсора дублирующего курсора без мыши? - person a.t.; 24.09.2020
comment
Спасибо! Обратите внимание, что ссылка устарела. Вот тот, который работает: cathrinewilhelmsen.net/2015/12/03 / блокнот-мульти-редактирование - person jciloa; 26.11.2020
comment
Ссылка (март 2021 г.): npp-user-manual.org/docs/editing / # одновременное редактирование - person padaleiana; 24.03.2021

Notepad ++ теперь также обрабатывает несколько курсоров.

Зайдите в «Настройки» = ›Настройки =› Редактирование и установите флажок «Включить» в настройках «Множественное редактирование». Затем просто используйте Ctrl + щелчок, чтобы использовать несколько курсоров.

Демонстрация функции на официальном сайте здесь: https://npp-user-manual.org/docs/editing/

person Balmipour    schedule 12.10.2015
comment
безупречный ответ2 - person Gaurav; 09.07.2020
comment
Данная ссылка теперь мертва, новая ссылка здесь: npp-user-manual.org/docs/ редактирование - person Raj Parmar; 21.10.2020

Вы можете использовать Edit > Column Editor... для вставки текста в текущую и последующие строки. Ярлык - Alt + C.

person Niels van der Rest    schedule 10.08.2010

Notepad ++ имеет мощный механизм регулярных выражений, способный по желанию искать и заменять шаблоны.

В вашем сценарии:

  1. Щелкните пункт меню Поиск \ Заменить ...

  2. Заполните поле "Найти что" шаблоном поиска:

    ^(\d{4})\s+(\w{3})\s+(\w{3})$
    
  3. Заполните шаблон замены:

    Insert into tbl (\1, \2) where clm = \3
    
  4. Нажмите кнопку Replace All.

И это все.

NotePad ++ заменить снимок экрана окна

person Alberto De Caro    schedule 06.11.2013
comment
Я использую регулярное выражение для этих типов правок уже более 10 лет, но многие люди исправляют регулярное выражение, которое сбивает с толку или затрудняет изучение. - person raider33; 10.06.2020

The easiest method to solve your problem (without going to a different editor or learning regex) is to record a macro.

  • Поместите курсор в начало текста, нажмите кнопку «Запись» на ленте, а затем отредактируйте только эту строку текста. Вы можете использовать только клавиши со стрелками или ctrl + клавиши со стрелками для перемещения по символам / словам, а не щелкать мышью. Также полезны клавиши «домой» и «конец».
  • Когда вы закончите с этой строкой, переместите курсор (снова без использования мыши) в начало следующей строки.
  • Нажмите кнопку «Остановить запись».
  • Нажмите кнопку «Воспроизвести макрос», чтобы убедиться, что он работает на следующей строке, как ожидалось.
  • Щелкните "запустить макрос несколько раз", чтобы сделать это снова, и снова, и снова ...: P
One advantage of this over 'multi-editing' cursors is you don't have to manually click and place cursors on every single row. The second advantage is that you can work with tab-delimited data that doesn't have consistent size/length - just use ctrl+left/right to skip words.

Honestly, macros in N++ have saved about a year of my life.

person cr45hin    schedule 07.11.2013

В Notepad ++ есть только редактирование столбцов. Это не совсем то же самое, что и несколько курсоров.

В Sublime Text есть чудесная реализация этого, возможно, стоит проверить ...
Это относительно новый редактор (2011 г.), который довольно быстро набирает популярность: http://www.google.com/Trends/explore#q=Notepad%2B%2B%2C%20Sublime%20Text&cmpt=q

Изменить: По-видимому, где-то около Notepad ++ версии 6.x было добавлено редактирование с несколькими курсорами, но в Sublime для него все еще есть несколько дополнительных функций, таких как «выбрать следующее вхождение».

person Wouter    schedule 19.02.2013
comment
редактирование npp с несколькими курсорами далеко не так хорошо, как многострочное редактирование sublime. - person th1rdey3; 17.06.2013
comment
Исправление: редактирование npp с несколькими курсорами далеко не так хорошо, как многострочное редактирование sublime по default. Библиотека scintilla поддерживает все функции, которые поддерживает Sublime. Любой пользователь может загрузить плагин, такой как nppscripts или pythonscript, чтобы получить доступ к базовой структуре npp и сопоставить эти сценарии с сочетаниями клавиш, имитируя все возвышенные команды. Для тех, кто не хочет утруждать себя настройкой своего редактора, обязательно платите за возвышенное. - person user2867288; 19.06.2014
comment
Я понимаю, откуда вы пришли, но было бы несправедливо просить обычного пользователя написать сценарий базовой структуры редактора для нормальной функции. Я бы согласился с вами, если бы плагин уже делал это (если бы у меня было больше времени, я бы его сделал). Также это недавнее сообщение sourceforge.net/p/scintilla/feature-requests/1085 говорит, что выделение следующего может быть легко сделать, но у вас по-прежнему нет функциональности клавиш со стрелками. Интересно, насколько легко было бы реализовать пропуск? Выделите следующий, пропустите следующий, и стрелки иногда могут быть полезны. - person ShawnFumo; 08.01.2015

Для этого вы можете использовать плагин ConyEdit. Когда ConyEdit работает в фоновом режиме, выполните следующие действия:

  1. используйте командную строку cc.spc /\t/ a, чтобы разделить текст на столбцы и сохранить их в двумерном массиве.
  2. используйте команду cc.p для печати, используя содержимое массива.
person Dick    schedule 15.07.2018