tkXMLive

tcl/tk XML intelligence Visual Editor

Alexander V. Dederer ( dederer-a@mail.ru )




Текущая версия: 0.1.5




Описание проекта:

WARNING!!! Now tkXMLive used BWidget. You must have this widget library for working with tkXMLive.

tkXMLive визуальный XML-редактор. Для отображения данных использует CSS стили.

Задумывался этот проект изначально для системы Дистанционного Обучения (ДО), но в последствии решено сделать его как универсальный редактор, приспосабливающийся под конкретные особенности XML-документов.

Прошу обратить внимание - это не текстовый редактор и он не может Вам заменить Kword или AbiWord к примеру. Хотя, при определенном усердии (написании XML-шаблона, CSS стилей и XSLT-правил конвертирования), Вы можете добиться этого.

Интерфейс полностью основан на XML. Это означает, что его можно достаточно быстро и легко настроить под свои нужды. В будущем планируется сделать возможным автоматический выбор интерфейса под конкретный тип документа.

На данный момент сделано достаточно, чтобы не было стыдно выставить на всеобщее обсуждение, но не достаточно чтобы можно было считать проект завершенным. Если вы заинтересовались им, то можете узнать о нем больше ознакомившись с TODO и Change Log .

Редактор достаточно гибкий и его использование не должно вызывать особых трудностей. В CSS введено несколько новых атрибутов для более наглядного (и, отчасти, для упрощения программирования...) и удобного отображения документа. В принципе, вы можете использовать связку XML/CSS не только для редактирования документов, но и выкладывать на сервер.

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

Для преобразования полученного XML-документа в другие типы Вы можете использовать любую программу и технологию. Я предпочитаю использовать Xalan и Xercess (XSLT) от создателей Apache.




ScreenShots:

Файл: screen-2.jpg
Описание: XML-документ с показом его структуры (treeview)
Файл: screen-3.png
Описание: XML-документ с формулами (GIF изображения). Документ конвертирован из MS Word 97. Еще показано меню редактирования.
Файл: screen-4.png
Описание: Статусная строка для отображения текущей позиции тэга в структуре XML теперь имеет события. Попробуйте понажимать мышкой на различных тегах в статусной строке.
Файл: screen-5.png
Описание: Собственно index.html в режиме "WYSIWYM" (What You See Is What You Mind) и меню "Новый документ" с выбором кодировки.
Файл: screen-6.png
Описание: TreeVeiw! Теперь имеется удобная возможность просматривать структуру XML-документа. Еще иконка для tkXMLive (кнопка пуск IceWM). Немного изменен интерфейс.



TODO:

  • Поддержка таблиц по стандарту CSS2.
  • Улучшение интерфейса. Добавление функций поиска и прочих.
  • Развитие библиотеки gui (элементы управления: treeView, tabnote и другие).
  • Поддержку системы plugin для визуализации отдельных тэгов (например для поддержки MathML, таблиц).
  • Возможность автоматической смены интерфейса для различных типов XML (DocBook, Web page, Documentation, Help System и т.д.).
  • Сделать модуль для конвертирования в HTML и RTF без использования XSLT.
  • Печать документа (запись в PS).
  • Улучшить функции редактирования.



  • Список изменений (changelog):


    0.1.5
  • Теперь используется msgcat (message catalog) библиотека. В каталоге gui/msgs находятся .msg файлы. Так что теперь перевод интерфейса на любой язык дело простое.
  • Имеются английский и русский перевод интерфейса. Текущий язык определяется по переменной окружения LANG.
  • Спасибо Leonid (tazin@iec.co.il) за патч. Теперь есть Debug элемент в котором дублируются STRERR сообщения.
  • Подправлен BUG с обновлением TreeView хотя еще есть над чем работать.
  • При создании нового документа можно выбрать какой CSS стиль для него использовать.
  • Появился новый пункт File->Save DTD. Теперь можно сохранить DTD созданное при редактировании документа (читать DTD пока нельзя).

  • 0.1.4
  • ВНИМАНИЕ! Теперь tkXMLive требует для работы BWidget .
  • Изменен интерфейс. Теперь работает TreeView для структуры документа.
  • Если внутри текущего имеется тег TITLE, то его (TITLE) содержимое будет отображаться в TreeView - позволяет удобнее работать со структурой XML.
  • Есть BUG при добавлении/удалении тэгов TreeView не обновляется. Нажмите на "Get XML" чтобы его обновить.
  • Запуск приложения ускорен.
  • В примеры ($BASE_DIR/sample/article/) добавлен XSLT-документ конвертирующий XML в LaTeX документ.
  • Добавлен диалог "Rename Tag".
  • Сделан SplashScreen для описания процесса загрузки. В общем парсинг gui.xml самый медленный процесс.

  • 0.1.3
  • namespace gui теперь может строить меню на основе XML данных.
  • namespace gui также создает необходимые для работые приложения процедуры из XML источника. Теперь вся логика и интерфейс могут быть в XML документе.
  • Большие изменения в интерфейсе.
  • Объединены namespace menu, toolbar в gui. Теперь namespace gui предоставляет полный набор функций по генерации и управлению интерфейсом на основе XML данных.
  • Добавленны Control-ENTER, Control-Shift-ENTER, Control-DELETE и Control-Shift-DELETE клавиши редактирования - попробуйте!

  • 0.1.2
  • Проверка а тип ОС и выбор соответствующих шрифтов.
  • Добавлен код для динамического построения диалоговых окон на основе XML-файла.
  • Подчищено несколько багов.
  • Улучшено меню пользователя.
  • Добавлен тип элемента CREATECODE в gui::createWidget.
  • Увеличена производительность gui::getStyle и simxml::getNodes примерно в 8-10 раз. Но могут быть ошибки при работе с динамическими XML.
  • Исправлен BUG в simcss который неверно отображал атрибуты тэгов.
  • Исправлен BUG при добавлении нового тэга перед текущим.

  • 0.1.1
  • Улучшена поддержка CSS.
  • Ускорена отрисовка XML (в 2 раза).
  • Добавлены подсказки к элементам интерфейса (Balloon tips).
  • Появилась функция вставки текста из буфера с автоматическим перекодированием.
  • Интерфейс: динамическое изменение размера шрифтов (аля браузер).
  • Появились XML/CSS файлы с примерами.

  • 0.1.0 (Alpha)
  • Регистрация на sourceforge.net. Выкладывание проекта.



  • Загрузка проекта:

    Версия: 0.1.5
    URL: http://prdownloads.sourceforge.net/tkxmlive/tkxmlive-0.1.5-1.tar.gz

    Версия: 0.1.4
    URL: http://prdownloads.sourceforge.net/tkxmlive/tkxmlive-0.1.4-1.tar.gz

    Версия: 0.1.3
    URL: http://prdownloads.sourceforge.net/tkxmlive/tkxmlive-0.1.3-1.tar.gz

    Версия: 0.1.2
    URL: http://prdownloads.sourceforge.net/tkxmlive/tkxmlive-0.1.2-1.tar.gz

    Версия: 0.1.1
    URL: http://prdownloads.sourceforge.net/tkxmlive/tkxmlive-0.1.1-1.tar.gz

    Версия: 0.1.0 (Alpha)
    URL: http://prdownloads.sourceforge.net/tkxmlive/tkxmlive-0.1.0-1.tar.gz




    SourceForge Logo