master
Сортировщик: + Введен Проводник для выбора папки-источника
+ иконки ~ Менеджер Архивов: Анализ файлов...
~ Менеджер Архивов: картинка на кнопку Запаковать
Смена картинок и добавление новых Валидатор: + Создание списков валидных и не валидных файлов
+ иконки ~ макет для Менеджера Архивов - Распаковка
~ Введена поддержка ссылок и xmlns:l="http://www.w3.org/1999/xlink" и xmlns:xlink="http://www.w3.org/1999/xlink". ~ Иправил баг: не после комплексной правки метаданных для архивов не отображалась комплексная информация описания книги для Корректора и Дубликатора.
ПОЛНАЯ переделка всех инструментов! Заготовка редактора метаданных Дубликатор - ДО удаления 4-го интеллектуального режима сравнения
Менеджер Файлов: + Справка ~ Готовые шаблоны подстановки
+ первый код заготовки
~ сменил app-иконку
Общее: + Для Автокорректора Корректора и Дубликатора улучшен алгоритм правки языка русский, украинский и белорусский книг. Много книг на этих языках имеют тэг языка другого языка. Теперь, например, если книга – на русском языке, но тэг <lang> содержит признак белорусского языка (be), то он заменяется на русский (ru). И такая корректировка происходит для всех этих 3-х языков. + Автокорректор Корректора и Дубликатора обрабатывает «по полной программе» только невалидные файлы. Валидные же файлы просматриваются на предмет соответствия тэгов <lang> книг на русском, украинском или белорусском языках идентификаторам ru, uk и be соответственно. В случае, если идентификаторы языка для валидных книг этих 3-х языков не соответствуют языку книги, то в тэг <lang> заносится настоящий идентификатор языка книги. Вся остальная корректировка для валидных книг не производится. Автокорректор + Теперь обрабатываются только невалидные файлы. Эта проверка на валидность заметно ускорит работу Автокорректора на большом количестве книг. + Исправление неверно заданной кодировки “wutf-8” в fb2 файлах на “utf-8”. + Улучшена обработка ссылок. ~ Полностью переделаны (улучшены и оптимизированы) все функции (регулярные выражения). + Удаление <empty-line/> между </section> и <section> + Полностью переделан алгоритм корректировки Эпиграфов. Скорость обработки увеличена. + Преобразование Эпиграфа с вложенным Эпиграфом в Цитату с Автором: <subtitle>...</subtitle><cite><p><emphasis>Текст</emphasis></p><text-author>Достоевский.</text-author></cite> + Обработка Эпиграфа с вложенным Эпиграфом и Эпиграфом вместо Цитаты или стиха эпиграфа: структура вида: <subtitle>...</subtitle> <epigraph> <emphasis> <p> <emphasis>Этот стих звучит так: </emphasis> </p> <epigraph> <p><emphasis>И счастья баловень безродный </emphasis></p> <p><emphasis>Полудержавный властелин. </emphasis></p> </epigraph> </emphasis> </epigraph>
Общее: + В "О программе" добавлен email разработчика. ~ Введена поддержка ссылок и xmlns:l="http://www.w3.org/1999/xlink" и xmlns:xlink="http://www.w3.org/1999/xlink". ~ Иправил баг: не после комплексной правки метаданных для архивов не отображалась комплексная информация описания книги для Корректора и Дубликатора. ~ Рефакторинг кода: код по корректировке fb2 структуры вынесен из основного парсера FictionBook в отдельный класс FB2Corrector. ~ Улучшена корректировка description для Жанров и Даты. + Обработана ситуация, когда в zip архиве находится не fb2 файл. Раньше в этой ситуации переставала отображаться информация по метаданным книги. + НОВЫЙ инструмент: "Автокорректировка книг". Работает ДОЛГО (регулярные выражения). По мере развития программы список поиска и замены инструмента будет расширяться. Кодировка читается из fb2 файла из строки <?xml version="1.0" encoding="utf-8" ?>, и в этой же кодировке сохраняется откорректированный файл. Если этой строки в fb2 нет, то для чтения берется кодировка UTF-8, и в ней же обработанный файл сохраняется. Что сейчас может делать: 1) Замена <i>, <I>, <em>, <EM> на <emphasis>. 2) Замена <b>, <B> на <strong>. 3) Замена жанров proce и literature19 на prose. 4) Замена языка RU-ru и Rus на ru. 5) Замена языка EN-en и Eng на en. 6) Удаление <br> <BR> <br/> <BR/> <br /> <BR /> <R> 7) Удаление <cite id="..."></cite>, <cite id="..." /> 8) Исправление невалидной стурктуры картинки вида <image l:href="#img_0.jpg"> </image> на <image l:href="#img_0.jpg" /> 9) Замена невалидных (устаревших) структур <cite> <cite> <p>Иванов</p> </cite> </cite> <epigraph> <epigraph> <p>Иванов</p> </epigraph> </epigraph> на <text-author><p>Иванов</p></<text-author> 10) Замена невалидных (устаревших) структур <strong> <strong> <p>Текст</p> </strong> </strong> <emphasis> <emphasis> <p>Текст</p> </emphasis> </emphasis> на <p><strong>Текст</strong></p> <p><emphasis>Текст</emphasis></p> 11) Замена невалидных структур <body mlns=""> <section xmlns=""> на <body> <section> 12) Замены <> вокруг русских слов и знаков пунктуации, скобок на < и > 13) Генерация id, если в fb2 файле есть "пустой" тег <id><id> или <id> <id>. 14) Генерация нового id для fb2 с Либрусековскими id, типа <id>Mon Jun 10 20:47:40 2013</id>. 15) Восстановление в книге пропущенных тегов <p> или </p>. 16) Замена пространства имен xmlns="http://www.gribuser.ru/xml/fictionbook/2.1" и xmlns="http://www.gribuser.ru/xml/fictionbook/2.2" на xmlns="http://www.gribuser.ru/xml/fictionbook/2.0" 17) Правка языка: есть много книг на русском языке, но в теге <lang> занесен не русский язык. Для книг без раздела описания <src-title-info> язык меняется на русский. 18) Замена в некоторых случаях & на & 19) Удаление недопустимых символов: \x00-\x08, \x0B, \x0C, \x0E-\x1F 20) Завершение незавершенных открывающих тегов <p>: <p Текст... 21) Удаление тегов <DIV ...></DIV> с сохранением их содержимого (кроме аттрибутов). 22) Вставка между </epigraph> или <image ... /> (<image ... ></image>) недостающего тега <empty-line/>.
Дубликатор: + Пометить все книги или Снять все отметки через контекстное меню Справка Дубликатора Change.rtf
Настройки: + Путь к diff-программе Дубликатор: + В контекстном меню - пункт diff-сравнения 2-х файлов
+ Валидатор: добавил картинки на итемы контекстых меню
Дубликатор: 1. Иконка на поиск книг 2. панель отображения инфы описания по выбранной книге
Менеджер Файлов: + Иконки на кнопки диалога сбора данных для Избранной Сортировки
Сортировщик: + Начало переноса работы с настройками в отдельный класс. + Для обоих Сортировщиков сделал сохранение всех контролов. + Для включения опции отображения данных книг в проводнике выдается сообщение о длительном времени создания списка с возможностью отключения.
Избранная Сортировка: + Для Избранной Сортировки теперь возможно сохранить в файл данные критериев Сортировки и загрузить их из файла.
+ Новый класс Settings для работы с считыванием и сохранением настроек - общий для всех классов.
Иконка Stop AM: + Начало внедрения Бэкграунд Воркера