ZebroidДокументацияОбработка текстовРазбивка статей

Разбивка статей

В программе: Обработка текстов → Разбивка статей
Инструмент Разбивка статей позволяет разбивать большие статьи на более мелкие по нужным пользователю признакам. Так же этот инструмент применяется после импорта текстовых файлов, для их последующей разбивки на отдельные статьи.


Разбивка статей и больших файлов


Существует несколько типов разбивки:

  1. По размеру
  2. По признаку
  3. По спец. тегам

Так же, помимо этого, в не зависимости от типа разбивки (кроме разбивки по спец. тегам), есть дополнительные опции которые отвечают за размещение новых статей:

  • Новые посты создавать рядом либо делать дочерними
  • Если новые посты делаются дочерними, то есть возможность активировать опцию Форумный формат, которая будет текст первой статьи оставлять в теме, т.е. получится что первая статья — это шапка темы на форуме, а все остальные — комментарии к этой статье.




Тип разбивки По размеру имеет следующий набор опций:

  • Размер статьи от — желаемый размер будущих статей. Можно указывать как в символах, так и в словах. К примеру: если вы имеете статью в 3000 символов и указали размер 1500, тогда должно получится 2 статьи по 1500 символов (или коло того, в зависимости от остальных параметров)
  • Обрезать по — признак, который необходимо искать программе после указанного количества символов (слов), чтобы разрезать статью. Эта опция необходима, чтобы статьи были красиво разрезаны и не обрывались на полуслове.
  • Не оставлять хвосты — если активирована эта опция, то последняя статья, которая получится в результате разрезания гарантировано не будет меньше половины указанного пользователем размера. К примеру: вы имеете статью в 3500 символов и указали размер 1500, то, чтобы не получилось 3 статьи по 1500 -1500 — 500, программа последнюю прикрепит в предпоследней и получится 2 статьи 1500 — 2000.




Тип разбивки По признаку имеет следующий набор опций:

  • Тип признака — определяет что именно должно выступать в роли признака для разбивки
  • Опция Регулярное выражение — определяет нужно ли программе тестовый признак рассматривать как регулярное выражение
  • Опция Не удалять признак — определяет нужно ли удалять признак из текста при разбивке

Для тех, кто знаком с регулярными выражением следующая информация может быть интересной: если в регулярном выражении есть одна группа — тогда результат совпадения этой группы — будет названием статьи (в независимости от того, какие опции стоят в автоназвании), а если есть 2 группы — тогда первая группа будет удалена из текста (если неактивна опция Не удалять признак), а первая — название статьи.

Кнопка возле опции «Регулярное выражение» вызывает конструктор регулярных выражений.




Тип разбивки По спец. тегам имеет возможность разбивать статьи с определением структуры категорий/подкатегорий (хотя это не обязательно). Опции:

  • Тег категории — не обязательный тег, который указывает на начало категории в тексте
  • Тег подкатегории — не обязательный тег (если не указан тег категории), который указывает на начало подкатегории в тексте
  • Тег поста — обязательный тег, который указывает на начало поста в тексте

Разбивка осуществляется таким образом, что содержимое тега — это название категории/подкатегории/поста, а всё что идёт за ним и до следующего подходящего тега — текст. Пример текста, который будет корректно разбит с настройками по умолчанию на категории, подкатегории и посты:

Категория 1

Подкатегория 1

Пост 1

Текст поста

Пост 2

Текст поста

Подкатегория 2

Пост 3

Текст поста

Пост 4

Текст поста

Пост 5

Текст поста

Категория 2

Подкатегория 3

Пост 6

Текст поста

Пост 7

Текст поста




Название



Формирование названий статьям после разбивки


Для каждой новой статьи после разбивки нужно сформировать название. Есть несколько вариантов:

  • Название по шаблону — в этом случае программа даёт названия выходя из указанного пользователем шаблона. Шаблон поддерживает макросы {TITLE} — название статьи которую разбивают и {COUNTER} — счетчик для определения части статьи
  • Автоназвание — название формируется по правилам из блока «Автоназвание по», которое позволяет брать название из текста, либо из одного из указанных пользователем варианта
  • Название по регулярному выражению — название берется из текста основываясь на пользовательском регулярном выражении

При использовании режима «Автоназвание», для многих из вариантов выбора слов для названий активна опция «Черный список». Черный список — это файл со списком слов, которые, по вашему мнению должны указывать на неподходящие для выбора в названиях статей. Так же стоит упомянуть, что усложнение условий поиска подходящих слов (по длине предложения или по наличию меток) уменьшает скорость работы программы.

При подборе названий в режиме «Автоназвания» по списку слов, если активирована опция «Список файлов», то программа будет брать из списка пути к файлам, открывать их и использовать для выбора названий. Этот способ существует для тех случаев, когда список слов слишком большой, чтобы вставлять его в окно программы.




Ссылки



Вкладка "Ссылки"


Если у вас есть необходимость добавить ссылки на другие части разбитого документа — тогда вам нужно активировать опцию «Вставлять ссылки на части статьи» и правильно настроить место и код для вставки.

С местом для вставки всё просто — можно вставлять либо в начало статьи, либо в конец статьи, либо одновременно и туда и туда.

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

После этого ознакомьтесь со списком поддерживаемых макросов:

  • [FULL_LIST_ITEM]...[/FULL_LIST_ITEM] — макрос блока, внутри которого содержится шаблон элемента списка. Если этот макрос присутствует в коде — тогда программа сгенерирует весь список ссылок на все части разбитой статьи
  • [PREV_ITEM]...[/PREV_ITEM] — макрос блока для шаблона элемента предыдущей части статьи
  • [NEXT_ITEM]...[/NEXT_ITEM] — макрос блока для шаблона элемента следующей части статьи
  • {ITEM_TITLE} — макрос вместо которого подставится название статьи
  • {ITEM_URL} — макрос вместо которого подставится ссылка на статью

Примеры:


Код для вывода все частей одним списком:

    [FULL_LIST_ITEM]
  • {ITEM_TITLE}
  • [/FULL_LIST_ITEM]

Код для вывода ссылок только на предыдущую и следующую части:

    [PREV_ITEM]
  • Предыдущая
  • [/PREV_ITEM] [NEXT_ITEM]
  • Следующая
  • [/NEXT_ITEM]