Это продолжение поста «Литература в компьютерную эпоху». Можно сказать, логическое продолжение, поскольку одной из претензий к нему было: «Допустим, вы правы, и художественные тексты могут потребовать адаптации и вариативности, хотя бабушка надвое сказала… Однако хотелось бы взглянуть».

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

Кто не помнит или не читал, в родительском посте речь шла об:
а) адаптированности и
б) вариативности художественных текстов.

При попытке написать код понятие адаптированности пришлось уточнить: выяснилось, что адаптированность сводится к сокращениям текста, что можно использовать для других нужд. Поэтому вместо адаптированности возникла краткость – объем сокращений, регулируемый, как изначально предполагалось, ползунком.

Вариативность также претерпела изменение, превратившись в две самостоятельных возможности:
1) собственно вариативность,
2) интерактивность.

Вариативность – наличие нескольких вариантов. Поскольку она также регулируется ползунком, напрашиваются варианты по степени изменения какого-либо качества, например: предназначенные для читателей разных возрастов или градуированные по мрачности описаний, от радужных надежд к черной мизантропии. Пригоден любой критерий, который можно расположить в порядке убывания-возрастания. Варианты можно не связывать с убыванием-возрастанием, но в таком случае становится неоправданным наличие ползунка со шкалой.

Интерактивность (спасибо читателям начального поста за подсказки и полезные ссылки) – возможность выбора варианта посредством ответа на вопрос. Соответственно, интерактивность регулируется не ползунком, а диалогом, вследствие чего имеет иерархическую структуру.

Вот интерфейс домученной мной программки «Jum-Reader», с двумя ползунками (краткость и вариативность) и возможностью ответить на поставленный вопрос (интерактивность):



Скачать «Jum-Reader» можно здесь. К нему (в папке «Examples») прилагаются два файла – единственные в данном формате на сегодняшний день. Не исключено, они останутся единственными и на день Страшного Суда.

Как видно из скриншота, наиболее подходящим для демонстрации мне показалось небезызвестное народное произведение «Колобок». В первом файле реализованы краткость и вариативность. Поскольку в классика никакой вариативности не знает, пришлось досочинить сказку на современный лад. Стоит заметить, что сокращение классического текста пошло «Колобку» на пользу: по моему мнению, полный вариант безнадежно затянут, тогда как сокращенный – то, что доктор прописал. Лаконичная форма данного произведения более соответствует минимализму ее смыслового содержания. Во втором файле к краткости и вариативности добавлена интерактивность (для чего пришлось прибавить нетрадиционные концовки с гибелью Колобка еще до того, как он добрался до Лисы). Тем самым продемонстрированы полные возможности формата.

Теперь о нем самом, то есть формате jum.

Его реализация заурядна (требовать от меня как программиста чего-то большего попросту бессмысленно). За основу взят текстовый формат (txt) в Юникоде, в текст добавлены теги. При изменении положения ползунка, отвечающего за краткость, удаляется текст, относящийся к положениям меньше текущего. При изменении положения ползунка, отвечающего за вариативность, удаляются все варианты, кроме текущего. Число уровней краткости и вариативности (то есть количество делений ползунка) записывается в файле в виде параметра. Интерактивность реализована по принципу вложенных друг в друга скобок (для вывода на экран система считывает текст на текущем уровне иерархии). Плюс стандартное текстовое форматирование.

Вот образчик кода с интерактивностью, использовавшийся при тестировании продукта (теги краткости, вариативности и форматирования в данном примере отсутствуют):



Полное описание формата jum находится в «Справке» программы.

Собственно, это все. И, пожалуйста, не спрашивайте: имеется читалка «Jum-Reader», где в таком случае инструмент по созданию текстов «Jum-Writer»? Я в курсе проблемы, однако не уверен, стоит ли к ней подступаться до того, как прояснится мера читательского интереса к формату jum. Когда названная мера прояснится, вопрос, вероятно, отпадет сам собой.

Комментарии (15)


  1. DeXPeriX
    13.04.2015 15:12
    +1

    Если хотите создать новый хороший формат, то почему не улучшили какой-нибудь существующий? Например, в русскоязычном сегменте популярен FB2, который в свою очередь похож на HTML/XML.


    1. mikejum Автор
      13.04.2015 15:18

      Да, я имею некоторое (поверхностное) представление о fb2. Но такая мысль мне в голову не пришла. К тому же хотелось свои силы попробовать.


    1. k12th
      13.04.2015 15:20

      Ничего не имею против FB2, но почему тогда не EPUB, который и вовсе является HTML (+ манифест).


      1. DeXPeriX
        13.04.2015 15:29

        FB2, EPUB — не вижу глобальной разницы. Главное, это проверенные годами форматы с нужным функционалом, базируются на полноценном HTML. А не свой велосипед…


        1. k12th
          13.04.2015 15:30

          Я так понимаю, что ни одну FB2 вы текстовым редактором не открывали?:)


          1. DeXPeriX
            13.04.2015 15:45

            Открывал. XML, как XML. Да, много своих доп. тэгов, типа «empty-line», «title-info» и т.д. Но основная разметка текста похожа на HTML. Те же ссылки через тэг «a», параграфы — «p». Об оформлении текста типа i, b, emphasis вообще молчу.


            1. k12th
              13.04.2015 15:49

              1. DeXPeriX
                13.04.2015 15:57

                Ок, ок, убедили. FB2 — подмножество XML и, строго говоря, оно не HTML. А названия тэгов — просто похожи, а не те же самые. Но поменяло ли это что-нибудь в контексте создания своего велосипеда, вместо улучшения уже существующего?


                1. k12th
                  13.04.2015 16:09

                  Да.
                  На EPUB все то же самое можно сделать существующими средствами, не вводя новых тэгов. И поддерживать это будут любые мало-мальски приличные читалки.


                  1. DeXPeriX
                    13.04.2015 19:15

                    Ага, спасибо. Так бы сразу и сказали, что epub поддерживает интерактивность. Из коробки. И поддерживается всеми читалками. Тогда автору топика сразу прямой конкурент, который уже имеет своё место под солнцем.


    1. mikejum Автор
      13.04.2015 15:22

      К слову, вот этого момента не понимаю. На fb2 реализовано большое количество читалок. А возможности, которые заложены в мой формат, требуют некоторых специальных элементов интерфейса. Как быть-то? Не понимаю.


      1. DeXPeriX
        13.04.2015 15:27

        По факту у Вас всё-равно получается новый формат, и он требует элементов интерфейса. А в текст просто ввести свои дополнительные теги. Т.е. изначально формат будет читать только Ваша читалка. Авторам остальных читалок нужно будет запрограммировать только разницу в форматах…


        1. mikejum Автор
          13.04.2015 15:32

          Да, можно было так, согласен. Не сообразил.


  1. DeXPeriX
    13.04.2015 15:53
    +1

    В комментариях к вашему предыдущему посту уже писали про визуальные новеллы. От себя добавлю текстовые квесты (например, хорош интерпритатор Instead). Таким образом бьются Ваши тезисы «вариативность» и «интерактивность».

    Остаётся непокрытой только краткость, хотя при желании в новелле или квесте её тоже можно сделать. Но нужно ли? Если я школьник, мне нужна Ромео и Джульетта в 3 страницах, то я просто качаю и читаю вариант на 3 страницы. Если мне интересно насладиться творчеством Шекспира — то беру полный. И, мне кажется, вероятность переключения между этими вариантами в процессе чтения не очень велика.


    1. mikejum Автор
      13.04.2015 16:07

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

      Да, о Шекспире. Имей он возможность воспользоваться интерактивным форматом, не исключено, что-то из этого и выжал бы. И «Ромео с Джульеттой», сокращенные самим автором, выглядели бы предпочтительней, чем обрезанные неизвестно кем. Это я не в порядке самооправдания — так, к слову.