PyRegs: анализатор регулярных выражений Python 3

в 14:42, , рубрики: python, python3, regex, regular expressions, tkinter, метки: , , ,

Когда не стало Kodos

Беда пришла неожиданно. Из Debian Wheezy изъяли старый, добрый PyQt3. А с ним на покой отправился и Kodos — мой любимый дебаггер регулярных выражений Питона. Много лет он помогал тестировать красивые и жуткие конструкци и тот факт, что apt-get install kodos больше не работает, вызвал желание немедленно исправить это досадное недоразумение.

Pyregs

Под капотом

PyRegs писался с нуля и компоненты выбирались с целью «чтобы работало долго и без лишних танцев с бубном». Python 2.7 под определение долго уже не подходит по той простой причине, что в какой-то момент времени его уберут из дистрибутивов GNU/Linux и стандартных пакетов других OS, полностью заменив на Python 3.х. PyQT, PySide, PyWx, PyGObject и т.д. — отличные решения, но танцев с бубном скорее не избежать: в одной ОС что-то есть и работает, в другой — нет или не работает. Но зачем использовать сторонние решения, когда

Tkinter is Python's de-facto standard GUI (Graphical User Interface) package.

У tkinter немало подводных камней, начиная с того, что Python-код транслируется в команды tcl и заканчивая отсутствием некоторых стандартных виджетов вроде tooltip. Чем не вызов программисту?! :) Таким образом выбор технологий стал очевидным: Python 3 + tkinter.

Что получилось

Пользователям Kodos интерфейс покажется очень знакомым:

PyRegs: анализатор регулярных выражений Python 3

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

PyRegs: анализатор регулярных выражений Python 3

Из невидимых глазу особенностей — обработка текста происходит в отдельном потоке, благодаря чему GUI не подвисает и показывает кол-ва обработанного текста в процентах (на практике — такое случается лишь с ооочень сложными выражениями и очень длинным текстом).

Камрады!

Прошу вашего внимания, советов, замечаний и идей. Попробовать PyRegs очень просто:

$ apt-get install python3-tk
$
$ virtualenv env -p python3
$ pip install pyregs
$ pyregs

Или: github.com/BasicWolf/pyregs

Благодарю за внимание!

Автор: BasicWolf

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js