metaclass: (Default)
[personal profile] metaclass
Похоже, что с такими вещами ручная сборка нужного комплекта утилит - наиболее правильный подход.



1. Скачать xsltproc со всеми его потрохами(libxml, libxslt, zlib, and iconv). Это морда к libxml2, без всяких Java и прочего шлака. Брать тут. Полученные zip файлы распаковать и снести в одну папку. Нужны оттуда вроде только бинарники(там еще h и lib в комплекте идут).
Описание действий вычитано здесь

2. Скачать dtd от docbook. Здесь. Я взял версию 4.5, типа предыдущая стабильная. Распаковать полученный zip в отдельную папку. Эта хрень используется для валидации docbook xml-файлов, т.е. исходников нашего текста. Для поиска dtd xslt-процессором надо написать файл каталога и положить его где-нибудь в отдельной папке рядом с со всей этой ересью. Пример файла catalog.xml(файл сохранить и смотреть в исходнике, потому что браузер пытается его рендерить своей таблицей стилей). В нем указывается путь к файлу docbookx.dtd в виде URI, в различных вариациях. Номер версии в описаниях пути и в заголовке dосbook xml-файла очевидно должен совпадать, процессор его ищет в каталоге по этой строке.

Описание действий здесь.

3. Скачать xsl от docbook. Здесь, на странице проекта, найти раздел Downloads и скачать оттуда файл типа "docbook-xsl-1.73.2.zip"(версию очевидно брать последнюю стабильную). Распаковать файлик в отдельную папку.
Как соотносятся версии dtd типа 4.5 и xsl типа 1.73.2 - чорт его знает.
Описание действий здесь

4. Для конверсии docbook в html cделать cmd-файлик. Пример файла. Файл положить куда-нибудь, куда указывает переменная окружания PATH, или для запуска придется указывать путь к нему целиком.

смысл строк в файле:
@set XML_CATALOG_FILES=путь_к_папке_каталога/catalog.xml
устанавливает путь к каталогу чтобы xsltproc мог до него добраться.

xsltproc.exe
--output %1.html - указывает выходной файл
--stringparam use.extensions 0 - отключает какие-то жаба-расширения
--stringparam html.stylesheet document.css - подключение к выходному файлу таблицы стилей(удобно управлять отображением, в зависимости от докбук-тегов)
путь_к_xsl\html\docbook.xsl - xsl-таблица стилей, собственно говоря, сам конвертор докбука
%1 - входной файл

Для конвертации в другие форматы, а также для изменения настроек, придется модифицировать файл, руля строками --stringparam и указывая другие xsl-файлы из папок(для каждого формата соответственно):
fo
htmlhelp

5. Пишем xml-файл док-бука и запускаем его компиляцию:
docbook_html Source.xml
получаем файл Source.xml.html и вкуриваем его :)

Date: 2007-08-31 08:52 pm (UTC)
From: [identity profile] henu3detb.livejournal.com
Без джавы не кошерно :(
Причем хтмл - это несерьезно. Надо было в пдф гнать.

Date: 2007-08-31 09:31 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Да, сейчас еще подключу жабу, чтобы FO-процессором pdf делать.

Date: 2007-09-01 03:02 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Завел и PDF в двух вариациях - коммерческой тулсой XEP и бесплатной apache fop. Даже русский поняло, что удивительно.

Date: 2007-08-31 08:53 pm (UTC)
From: [identity profile] nvm.livejournal.com
недавно занимался похожим, только для C#
и мне нужно было совсем немногое -- просто делать msdn-style доки по XML, которые делаются из исходников.
Нашёл на rsdn длинную статью про sandcastle, почти уже настроил всё, там куча неочевидных движений, и несколько таких, которые я не понял. Полдня ушло.
А потом гляжу, в конце статьи приписочка "если вам лень всем этим заниматься, существуют утилитки поверх всего этого дела, с интерфейсм в стиле NDoc". И точно, есть и работают.

Это я к чему? Наверняка есть такое и тут :)

Date: 2007-08-31 09:38 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Есть. Все требует плясок с бубном, но начиная с конца :) Лучше уж поплясать сначала.
Всякие тупые проблемы типа того что скрипты модифицированные используются, русские не все понимают, итд.

Date: 2007-09-01 03:17 am (UTC)
From: [identity profile] bigfrogg.livejournal.com
Могу в очередной раз пропиарить линукс (дебиан етч). Там всё просто: apt-get install docbook

Date: 2007-09-01 07:12 am (UTC)
From: [identity profile] ktn-zoidberg.livejournal.com
и что? если вся работа на винде к чему тут линукс?

Date: 2007-09-01 07:14 am (UTC)
From: [identity profile] ktn-zoidberg.livejournal.com
то что на линуксе оно работает это и ещу понятно, и на solaris и под cygwinом

Date: 2007-09-01 08:48 am (UTC)
From: [identity profile] bigfrogg.livejournal.com
Я не о том что где работает. Я о том как просто заставить зарботать.
пс Работает всё и везде, зависит только сколько усилий приложить надо.

Date: 2007-09-01 02:59 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Под линуксом подозреваю, что проще будет. Ну русификация FOP явно тот же самый процесс, что и на винде.

Date: 2007-09-01 04:27 pm (UTC)
From: [identity profile] ktn-zoidberg.livejournal.com
давно хотел написать: меня бесит одна хрень в XML - XML Unicode поддерживает? поддерживает, в Unikode пустого места и супер редкоиспользуемых символов дохера? дохера... так что мешало или в стандарт Unicode прописать спец символы для UNICODE для замены <>" и еше пару... и не было бы проблем с подстаносками и перестановками всякого дерьма вместо <>"& и т.д. ...

и всегда поддерживало

Date: 2007-09-03 09:00 am (UTC)
From: (Anonymous)
'

Date: 2007-09-04 07:54 am (UTC)
From: [identity profile] y-ll.livejournal.com
докбук, докбук,... надеюсь мы с ним больше не пересечёмся...
Впрочем, это было года три назад, может щас что стало веселей.

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 29th, 2025 08:39 pm
Powered by Dreamwidth Studios