[docs] Re: DocBook semantic -> LaTeX semantic (was: документация для нового Junior'а)

Vitaly Ostanin vyt на vzljot.ru
Ср Фев 4 13:33:45 MSK 2004


On Wed, 4 Feb 2004 13:24:15 +0300
Kirill Maslinsky <kirill на altlinux.ru> wrote:

> > > Если честно, то мне кажется неправильно, что 
> > > латех считается форматом. 
> > 
> > Тогда предложите, как считать правильно. В моём понимании
> > разметка LaTeX для интерпретатора LaTeX - формат. Про
> > понимание авторов db2latex ничего не скажу :)
> 
> Тогда, может быть, это я неправильно понимаю, что такое формат.
> Значит, разметка в формате C для интерпретатора C -- тоже
> формат? Просто в LaTeX'e никто не требует использовать в
> разметке именно команды форматного файла, как раз наоборот, это
> не рекомендуется. Мне казалось, что формат -- это фиксированный
> набор правил кодирования информации определенного рода. 
> Правда, если включить все макроопределения в понятие разметки,
> то и Латех тогда -- фомрат.

За эту терминологию я копья ломать не буду. Просто если я не прав
- предложите правильный термин.

> > > > Отлично! Я правильно понял, что при наличии стилей,
> > > > переводящих разметку DocBook в идентичную разметку LaTeX,
> > > > проблема с вёрсткой в LaTeX решается?
> > > 
> > > Да, именно так, и становится практически автоматической,
> > > если поработать с penalties. В ТеХе же очень гибкий
> > > механизм верстки абзацев и страниц, и есть совершенно
> > > конкретный способ его регулировать -- штрафы. Если есть
> > > грамотная разметка и хорошо подобранные штрафы -- верстка и
> > > без ручного вмешательства выглядит почти идеально.
> > 
> > 
> > Ок. Это очень хорошо. Давайте сделаем так: Вы переведёте в
> > идентичную разметку LaTeX doc-template.xml из cvs docs, а я
> > на этом примере попробую начать стили для автоматического
> > перевода.
> 
> Не совсем понял, что именно сейчас от меня требуется.
> doc-template же текста не содержит, там только заголовки,
> информация об авторах. Чего там переводить? Если речь о том,
> как должен выглядеть output для LaTeX -- тогда я думаю, что
> особенно мудрить не стоит: пусть все теги докбука по
> возможности станут тегами латеха, просто с соответствующим
> синтаксисом. 

> Если я чего недопонял, прошу меня исправить.
> 
> По моему, это должно выглядеть как 
> \filename{test.txt} \acronym{RPM} ну и пр. 
> \begin{itemizedlist}
> 
> \item 
> 
> \item
> 
> \end{itemizedlist}

Можно перевести целиком doc-template.xml в ту разметку, о которой
Вы говорите? Там есть абзац, заголовок, а мне нужен минимальный
целый документ, на который я буду смотреть при написании стилей.

> Единственная проблема -- нужно, чтобы не было совпадений со
> стандартными LaTeXовскими командами, чтобы не было лишних
> проблем с переопределениями и совместимостью со стандартными
> классами. Поэтому, думаю, стоит использовать в этих случаях
> команды, начинающиеся с большой буквы: \Section{} -- одну для
> всех уровней заголовков, как в docbook, с иерархией разберемся
> автоматически. \Chapter{} Еще из стандартных существующих
> приходит в голову \Quote{}, ну и вроде все. systemitem лучше,
> мне кажется, конвертировать по названию класса, типа \osname{},
> так менее громоздко, а по смыслу ничего не теряется.

Атрибуты терять нельзя. Например, будет <para role="foo"/> и
<emphasis role="foo">, не делать же из них \Foo{}.

> Что касается entities, должен быть отдельный файл (уже
> обсуждавшийся entities.sty), где будет описано, как их
> раскрывать, уже в терминах латеха. А команды для entities проще
> всего генерировать из имени entity: &ALTSHORT; -> \ALTSHORT{} 

Сущностей к этому моменту уже не будет, они разрешатся на этапе
XInclude.

> Поскольку они все более-менее строго пишутся большими буквами,
> здесь совпадений с латеховскими стандартными командами быть
> вроде не должно. Будет, правда, небольшая проблема (небольшая?)
> со стандартными entities типа &emdash; и всякими юникодовскими
> символами, вроде неразрывных пробелов, для которых нужны особые
> правила. 

Эту проблему я уже правил в db2latex, так что её не будет :)

> Я начну писать соответствующие латеховские пакеты, но для этого
> нужно прежде разобраться в том, что вообще есть в докбуковской
> разметке и какой в этом смысл. Сейчас нахожусь в процессе
> познания.

Давайте всё-таки начнём с doc-template.xml. Если он будет в Вашей
разметке, к нему можно писать и пакеты LaTeX, и стили XSLT.

<skipped/>

-- 
Regards, Vyt
mailto:  vyt на vzljot.ru
JID:     vyt на vzljot.ru
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : /pipermail/docs/attachments/20040204/04afc8c5/attachment.bin


Подробная информация о списке рассылки docs