Pull to refresh

Comments 36

<Шутка про то, что каждый программист должен написать свой текстовый редактор>

Всё это, насколько понимаю, есть в куче других редакторов, например в SynWrite. Чем ваш редактор лучше — я не понял.

Одним из факторов, тормозящих изучение языка регулярных выражений, я считаю некоторую недоработанность существующих в данной области программ и сред разработки.

Толсто Чтение мануала и ковыряние примеров — и никаких проблем. Из статьи совершенно не видно, что по этому редактору можно изучить или понять регэкспы лучше, чем по мануалам.
Вовсе не утверждаю, что мой редактор единственный в своём роде, но в нём есть ряд фич, которых мне не хватило в других.

Например, если взять Visual Studio, то со многострочным поиском дела там обстоят не идеально, а иногда из-за незаметно вклинившегося пробела не получалось найти именно то, что нужно.

Вы видели где-нибудь ещё, чтобы по соответствиям поиска можно было перемещаться обычным скроллом, а не нажимать кнопки вперёд и назад?
Написать свой редактор, это, конечно здорово, но вот найти причины, чтобы пересесть на него, например, с SublimeText будет не просто. А про то, как парсить XML с помощью регулярных выражений хорошо написано вот тут: stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags#comment1618100_1732454. Опять же, у SublimeText куча возможностей по парсингу текста и его преобразованию.
Возможно, Sublime достаточно хорошо расширяется с помощью плагинов, но по умолчанию не нашёл я в нём хотя бы даже многострочного поиска, не говоря уже об отображении спецсимволов в поле ввода образца для поиска. Это касается и Notepad++.

Думаю, стоит на деле сравнить программы прежде, чем делать выводы. Поверьте, не на пустом месте я сделал новый редактор… ;)
просто shift+enter для перевода каретки в поле поиска или как-то так.
Ценю чувство юмора в людях :)
На платформе .NET класс для работы с регулярными выражениями называется Regex, отсюда и «реджекс»
Мои познания английского не столь велики, но даже гугл читает Regex как «Реджекс» ))
Regex — от regular, а не от rejection или чего-то такого.
На самом деле, нет однозначно верного произношения regex (хотя «регэкс» все же считается основным): 1, 2, 3 и 4.

Да, от regular expression логично произносить «регэкс».
Но тип char, к примеру, произносится и как «кар», и как «чар», несмотря на очевидное сокращение от character.
Таки да. Кстати, то же самое с названием персонажей игр — «чар».
У игр понять причину проще — «Чар» ассоциируется с «Чародеем», даже, если многие про себя думают «Чарактер».
Если вы имеете в виду ассоциацию с файлами, то нужно запустить программу с администраторскими правами (Run as administrator).
Современные версии Windows не позволяют вносить изменения в соответствующие разделы реестра приложениям без администраторских привилегий.
Последний пример с парсингом и подстановками я делаю обычно в екселе.
— Не хватает функциональности текстового редактора?
— Напишите плагин!
Согласен. Notepad++ и плагины на него!
Не кроссплатформенный же.
Согласен. Sublime Text и плагины на него!
Писать велосипеды всегда интересно. Но вот заголовок «Сверхэффективная» тут явно не к месту
Лучше сначала попробовать, чем делать замечания, не оценив сути :)
Выше уже упоминал NotePad++
+1
При этом искать по регуляркам он может из коробки

Да и сотни других редакторов позволяют всё выше описанное.
Что касается многострочного поиска/замены — всегда можно скопировать многострочный текст и вставить в поле для поиска и будет работать как многострочный. Или теже регулярки с этим справляются.

Однако я перешел на Komodo Edit из-за перехода на Linux. В Komodo Edit тоже всё это есть из коробки. Разве что скролла нет для «удобного» перемещения. Мне удобнее нажимать F3 или Shift+F3 для перемещения по совпадениям. А для подсвечивания слов: CTRL+F, CRTL+D.
Скрины
поиск и замена
image
совпадения
image


Я привел в пример инструменты (редакторы), которыми я пользуюсь. А таких редакторов/IDE очень много и почти все они умеют подобное.

ЗЫ Для составления и освоения регулярок лучше всего подходит regex101.com/
Конечно после изучения основ.
«Мне удобнее нажимать F3 или Shift+F3 для перемещения по совпадениям.»

А вы пробовали скролить? Сколько раз нужно нажать на клавишу, чтобы добраться до 500-го вхождения из тысячи, если соответствия неравномерно распределены по тексту?

На вкус и цвет товарищей нет) Никого не заставляю пользоваться. Но прежде чем говорить, что я сделал велосипед, покатайтесь на нём… Быть может, получился мотоцикл?..
И часто такое необходимо?

Ради одного раз в году для поиска среди 1000 совпадений ставить новый инструмент, который не работает на Linux и лишаться тысячи других возможностей?

Ну и как определить по скроллу, что надо именно 42 вхождение?
Кто мешает поставить закладку в данном месте?
Кто мешает запомнить строку, и перейти к строке, вместо порядкового номера совпадения?

Ну и сейчас модно и удобно использовать визуальный скролл, как например в Sublime Text или Komodo Edit. На котором визуально подсвечиваются найденные места. Это намного удобнее:
image

Пока ваше предложение выглядит как трёхколёсный велосипед с квадратными колёсами. Не убедительно. Лучше действительно, как выше советовали, напишите плагины для известных IDE.
Полагаю, что у вас Линукс, поэтому вы не можете запустить Poet. Однако не стоит оценивать приложение по единственной фиче.
Смею заверить, что, например, докинг (разделение на несколко окошек), хоть и есть во множестве редакторов, в поэте реализован намного более удобным образом, чем обычно. А в каком редакторе вы встречали Рифмоплёт? :)

Насчёт визуального скролла — можно запросто уменьшить шрифт (Ctrl + колёсико мыши) и увидеть подсвеченные места, а затем также просто вернуть размер шрифта на рабочий.
Судя по описанию отличный редактор. Мне тоже постоянно не хватает подобных возможностей и тоже задумываюсь о своём велосипеде. Жду продолжения темы!
Боюсь, что это ещё сложнее, чем регулярные выражения :)
Люди!
Понимаю, что всё это мы уже видели не раз и не два… Но ведь это совершенно не значит, что новое нельзя сделать лучше!

Моя цель — разработать приложение совершенное в мелочах, на них даже не сразу обратишь внимание.
Лишь прочувствовав детали можно объективно оценить удобство и качество программы.
Сколько запускается ваш редактор на холодную на слабом компьютере (2гб RAM, какой нибудь дешевый селерон года 2008)?
Юзер дождется?

Упал на старте с
System.TypeInitializationException: The type initializer for 'Poet.Modules.GlobalizationManager' threw an exception. ---> System.UnauthorizedAccessException: Access to the path 'E:\$RECYCLE.BIN\S-1-5-18' is denied.



Что ему нужно в моей корзине?
Странно)) А из какого каталога вы его запускаете?
Sign up to leave a comment.

Articles