Афанасьев Сергей : другие произведения.

Редактор писателя. Wedit6

Самиздат: [Регистрация] [Найти] [Рейтинги] [Обсуждения] [Новинки] [Обзоры] [Помощь|Техвопросы]
Ссылки:
Школа кожевенного мастерства: сумки, ремни своими руками
 Ваша оценка:
  • Аннотация:
    Попытка создать Редактор, который бы работал не с отдельной книгой, а с целыми Сборниками книг. Перетасквиания глав, конвертеры, статистика и прочее. Т.к. это все-таки дилетантская программа, то в ней очень много корявостей. Но я писал ее под себя, под свои нужды. Мне интересны замечания, предложения, пожелания, посильная помощь.

Редактор писателя. WEDit6

Введение

   В своем творческом процессе я долгое время пользовался Notebook, а потом и Word. И был недоволен, т.к. мне требовался быстрый и удобный механизм перетаскивания глав и разделов книги в разные места (муки творчества зачастую требовали изменять и сюжет, и порядок действий). А также - быстрый доступ к другим книгам - т.к. у меня не получалось все время от начала и до конца тратить на одну книгу. К тому же, работая над одним произведением, вдруг приходила в голову умная мысль касательно другого произведения, и эту мысль надо было срочно записать. Потом понадобились функции конвертации произведений в разные форматы - html, doc, причем html имел свои особенности, в зависимости от сайта, на котором предполагалось разместить данное произведение. Также потребовалась возможность работать со сборниками произведений, а не только с одним Сборником. И чтобы весь этот функционал располагался в одном месте в одном гуи-редакторе. В интернете (на тот момент) ничего подходящего не нашел. И поэтому я принялся ваять редактор для "Писателя" (WriterEditor) самостоятельно (язык программирования java), добавляя в него разные функции, которые, естественно, вдруг стали необходимы в процессе работы над произведениями.

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

Общее описание



Внешний вид

wedit6_small [s_afa]

Структура

   Сверху вниз
   1) Титл редактора и его текущая версия - Wedit6. 6.0-b1012
   2) Область главного меню.
   3) Область главных кнопок
   4) Рабочая область
   5) Служебная область.
   6) Информационная область

Область главного меню.



Файл
   Файловые операции
   - Создать новый Сборник
   - Создать раздел Сборника
   - Создать книгу
   - Удалить
   - Редактировать
   - Сохранить все Сборники -- здесь сохраняются только те открытые Сборники, в которых были изменения.
   - Безусловно сохранить все Сборники -- здесь сохраняются все открытые Сборники, независимо от того, были ли в них изменения или нет.
   - Архивировать все Сборники - упаковывает все открытые Сборники в один zip-файл. Внимание! Упаковка не всегда происходит корректно! Необходимо проверять.

Поиск
   Осуществляет поиск введенных символов в текущей Книге.
   Результат отображается в Служебной области.
Преобразовать



   Преобразует выделенные элементы книги в формат RTF.


   Планировалось создать более гибкие механизм настроек преобразования.
   Пока не реализован до конца.


   Преобразует книгу в формат HTML.
   Гибкие настройки.
   Необходимо задать (создать) вариант преобразования.
   Для правки параметров варианта - кнопка 'Редактировать'.
   Для сохранения измененных параметров варианта - кнопка 'Сохранить'.

   Кнопка 'Преобразовать' запускает механизм преобразования.

   Левое меню - список вариантов преобразования.
   - для разных нужд, разные варианты преобразования. Для журнала samizdat - один вариант, еще для какого-то интернет-ресурса - другой вариант.

   Параметры:

   - параметр "Сигнальные символы".
   Обычно я когда не могу сходу реализовать какой-то эпизод, или работаю над другим эпизодом и этим мне заниматься некогда, отмечаю символом == и описанием, что в этом месте примерно должно произойти.
   И когда, например, я создаю релиз произведения в HTML виде, наличие данного параметра сообщает мне, что еще не все эпизоды реализованы.
Импортировать
   Импорт книг из форматов TXT, DOC в текущий Сборник, в выбранный раздел Сборника.
   В формате DOC пытается определить заголовки и подзаголовки и сначала выводит результат этого определения. Здесь можно указать, что является заголовком и какого уровня, а что - нет.

   В формате TXT заголовком считается короткая одинокая строка после которой следует пустая строка.
   Все заголовки считаются одного уровня.

Книга
   Функции работы с текущей книгой.

   Книжные закладки (Bookmarks)/
   Сюда можно заносить ссылки на часто применяемые книги - для более быстрого переключения на них.

Настройки
   Разные настройки Редактора
   - ГУИ оформление (декорация)
   - Размеры иконок.


Статистика
   Разные статистические данные по Сборникам и Книгам.


Помощь
   Разная информация
   - О программе Редактор - Не релизована.
   - Об авторе



Область главных кнопок.

   - Сохранить все Сборники -- здесь сохраняются только те открытые Сборники, в которых были изменения.
   - Безусловно сохранить все Сборники -- здесь сохраняются все открытые Сборники, независимо от того, были ли в них изменения или нет.
   - Архивировать все Сборники - упаковывает все открытые Сборники в один zip-файл. Внимание! Упаковка не всегда происходит корректно! Необходимо проверять.

Рабочая область



Область книжных Сборников



   Состав:

   1) Заголовок, описывающий данную область - Книжные сборники.

   2) Кнопки-функции, относящиеся к Сборникам.
   - Открыть Сборник
   - Закрыть вкладку текущего Сборника
   Данная функция работает и при нажатии Крестика во вкладке рядом с названием Сборника.

   3) Вкладки открытых Сборников.

   4) Состав (дерево) текущего Сборника
   Здесь отображаются Разделы, подразделы и книги.
   В дереве Сборника работает функция по правой кнопке мышки.
Область книг



   Состав:

   1) Заголовок, описывающий данную область - название Сборника, в который входит данная книга.

   2) Кнопки-функции, относящиеся к текущей книге.
   - Перечитать книгу
   - Вырезать все отмеченные элементы книги.
   Данные элементы можно будет вставить по функциям "Вставить...".
   - Удалить отмеченные элементы книги.
   - Добавить текущую книгу в Закладки.
   Закладки доступны в меню "Книга".

   3) Вкладки открытых Книг.

   4) Состав (дерево) текущей Книги
   Здесь отображаются части, главы, подглавы и т.д. книги.
   В дереве Книги работает функция по правой кнопке мышки.

   - Добавить - добавить новый элемент.
   - Вставить - вставить вырезанный элемент (элементы)


   - структура книги
    -- элементы - типы элементов, свойства элементов

   Книга может состоять из частей, глав, подглав и т.д. Это все называется элементами книги. Пользователь может сам задавать свои элементы - создавать новые, удалять старые - на любую глубину вложенности.
   Также можно менять гуи-отображение элементов - шрифт, размер, цвет, стиль. Задавать свою иконку отображения элемента в дереве элементов книги.

   Каждому элементу задается свой тип.
   Если тип не указан - считается "рабочий".
   Типы могут отображаться разными цветами в дереве книги. Также типы учитываются при преобразованиях книги в форматы HTML, RTF. Например, не преобразовывать элементы книги с типом "служебный".

   Примеры типов элементов:
   - продумать
   - реализован
   - в работе
   - служебный



Область элементов книг.



   1) Заголовок, описывающий данную область - название Книги, в которую входит данный элемент книги.

   2) Кнопки-функции, относящиеся к текущей книге.
   - Скинуть текст из тестовой панели в книги - без сохранения ее в файле.
   - Закрыть текущую вкладку элемента.
   - Закрыть все вкладки.
   - Вернуть изменения в тексте назад.
   - Список элементов - навешивается на выделенный участок текста.
   - Формат выделенного текста.
   - Стиль выделенного текста.
   - Вставить изображение в текст (пока без возможности его редактирования - изменять размер и прочее).
   - Показать в дереве элементов текущий элемент книги (не всегда срабатывает).

   3) Вкладки открытых элементов Книги.


Служебная область

   Пока здесь расположена только панель результатов поиска в текущей книге.

Информационная область

   1) Версия используемой java

   2) Информация о памяти компьютера, занимаемой Редактором.
   Пример:
   32М of 60M/894M
   - 32М - текущее использование (в Мб)
   - 60M - всего выделено в настоящий момент.
   - 894M - сколько максимально можно выделить для Редактора.

Установка

   Внимание, Редактор работает под программой Java, которая должна быть установлена.

   Скачиваете zip-файл (6.0.1102 2016.08.10)
   Распаковываете в любой директории.
   Запускаете скрипт, расположенный в поддиректории bin

   1) Windows
   - сначала редактируете файл we6.bat
   в строке
   SET MODULE_HOME=c:/Programm/My/wedit
   подставляете ту директорию, в которой у вас распакован Редактор.
   - запускаете файл we6.bat

   2) Linux
   - we6.sh

Замечания

   1) Иногда визуально ломается дерево содержания книги. В этом случае необходимо закрыть дерево (схлопнуть) и снова раскрыть.
   -- Обычно при вставке новых глав (элементов книги)

   2) Иногда диалоговые окна не закрываются по кнопкам - Принять, Отменить - только по крестику.

   3) Не все функции еще реализованы. Некоторые могут либо ругаться, либо просто ничего не делать.

   4) Не все иконки нарисованы к функциям - многие иконки взяты от старых функций - не стал тратить время на рисовку.

   5) Текстовая панель - иногда при вставке текста не отображается то, что вставилось. Для отображения достаточно нажать Enter и текстовая панель перерисуется.

   6) Профиль пользователя сохраняется в файле user_params.xml в домашней директории пользователя в поддиректории './wedit6'

   7) Открытие элемента дерева - тремя щелчками левой кнопки мыши, а не двумя. Т.к. первый щелчок - выборка элемента, второй - раскрытие его в дереве (если у него есть подэлементы) и третий - собственно открытие.

   8) Изменения в книге без сохранения в файле отображается выделением заголовка книги (главы) красным цветом.

   9) Программа создавалась и отлаживалась в Операционной системе Linux (SuSe, KDE4). Под Windows - не пробовал.


Заключение

   Т.к. это все-таки дилетантская программа, то в ней очень много корявостей. Но повторяю - я писал ее под себя. Мне интересны замечания, предложения, пожелания, посильная помощь.
   В конце-концов не единственный же я писатель-программист. Глядишь, сообща создадим что-нибудь более серьезное.

   Исходные тексты Редактора (Java) доступны по адресу: https://github.com/svj173/wedit6

 Ваша оценка:

Связаться с программистом сайта.

Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души" М.Николаев "Вторжение на Землю"

Как попасть в этoт список

Кожевенное мастерство | Сайт "Художники" | Доска об'явлений "Книги"