Системный Блокъ

@sysblok · ai · Russian · active

Subscribers 11.6K Subscribers, last 30 days: 11.6K → 11.6K +0 24h
Reach per post (ERR) 21.5%2.5K avg views
Posting 2.3/week last 1 day ago
Reactions per 1K views 19.3 ❤ 🔥 👍
edited

Эволюция художественного текста, или Как подружить Гоголя и Git Как на одной странице показать, что менялось в «Ревизоре» между редакциями? DH-исследователь Евгений Дуненков сделал для этого интерактивный инструмент и в своем блоге рассказал, как над ним работал и с какими сложностями столкнулся. Постановка задачи Есть много текстов, которые постоянно меняются. Например, код или юридические документы: в Git или «КонсультантПлюс» можно сравнить разные редакции программы или закона. Художественный текст тоже эволюционирует: от набросков до академического издания, через правки, редактуру и цензуру. Но читатель, за исключением редких примечаний, видит лишь один кадр, а целиком процесс наблюдают только текстологи. Евгений Дуненков решил показать эту эволюцию на одной интерактивной странице, где версии можно переключать и наблюдать, как одна превращается в другую. Для этого он сделал карту версий (какие они, как связаны и где мы сейчас) и «плеер перехода», в котором исходная версия шаг за шагом превращается в целевую, а вставки и удаления подсвечены. Материалом стало явление 6 третьего действия «Ревизора»: пьеса хорошо изучена, ее версиям в академическом издании посвящен целый том. Как это сделано Получить работающий прототип удалось не сразу. Исследователь рассказывает, как он пришел к удачному результату путем проб и ошибок. Сначала он пытался сделать один универсальный скрипт, но тот оказался громоздким и медленным. Тогда он разделил подсчет различий и визуализацию на модули и попал в порочный круг: как считать и хранить правки, трудно решить, не зная, как заработает визуализатор, а писать визуализатор, не зная входных данных, слишком сложно. Выходом стал новый формат хранения. Так появился TDJ (Text Dynamics JSON): версии в виде списков токенов и правки для каждого перехода. Модуль TDJ Builder на Python сам находит различия между версиями и записывает их в этот формат. Как загрузить свой текст Инструмент, который разработал Евгений Дуненков, может использовать каждый. Если вы хотите воспроизвести его работу на редакциях другого текста, нужно собрать txt-файлы версий, описать их связи в yaml-конфигурации, запустить TDJ Builder и загрузить результат в визуализатор. Подробнее о том, как шла работа, — в полной версии блога. Время чтения: 20 минут 🤖 «Системный Блокъ» @sysblok

Views over time

01K2K3K31 Oct 07:2612 Nov 09:292.6K31 Oct 07:26: 0 views11 Nov 19:43: 2,620 views12 Nov 09:29: 2,650 views
Snapshots we took after posting.
WhenViews
31 Oct 2026, 07:260
11 Nov 2026, 19:432.6K
12 Nov 2026, 09:292.6K

Who shared this post

Posts in other channels we index that link to this one. (Forwards with a hidden source can't be traced.)

Nobody yet.