[docs] Re: makefile rework intro
Vitaly Ostanin
vyt на vzljot.ru
Вт Окт 28 12:34:02 MSK 2003
On Mon, 27 Oct 2003 21:07:31 +0300
Oleg A.Paraschenko <olpa на xmlhack.ru> wrote:
<skipped/>
> > Есть предложение вместо "print" держать цели
> > pdf-<suffix>
> > , где <suffix> - средство, с помощью которого получен pdf.
>
> Планируется сделать примерно так:
>
> module.profile.template.processor.pdf (1) <-- сюда будут
> ссылки,
>
> где
>
> profile - код профиля
> template - код шаблона (a4, a5, letter, ...)
> processor - код fo-процессора (xep, fop, ...)
>
> module.pdf -- это сокращение для такого
> "module.profile.template.processor.pdf", в котором "profile",
> "template" и "processor" -- по умолчанию.
Не совсем понял, лучше посмотрю, когда будет готово :)
> > Сразу добавлю, что сейчас в Makefiles разброд с переменными -
> > они могут быть "параметр значение", а могут быть просто
> > "значение".
> >
> > Лучше в новых Makefiles использовать только "параметр
> > значение", чтобы можно было использовать переменную, даже
> > если "значение" не определено.
>
> Не понял. Нужны пояснения. Можно в jabber.
Например, есть два варианта:
1.
ULINK_LEAVE = 1
xsltproc --param ulink.leave.duplicates.after $(ULINK_LEAVE)
2.
ULINK_PARAMS = --param ulink.leave.duplicates.after 1
xsltproc $(ULINK_PARAMS)
Первый вариант неудачен, поскольку при неопределённом ULINK_LEAVE
стили не отработают. Второй вариант самодостаточен, поскольку при
неопределённом ULINK_PARAMS просто будут использованы параметры
по умолчанию из стилей.
> > > Расположение файлов:
> > >
> > > ./module/
> > > module.xml - исходный файл
> > > tmp/ - папка для временных файлов
> >
> > Можно пример временных файлов?
>
> module.log
> module.p1.a4.fo
> module.p1
Ok.
<skipped/>
> > Кстати, для термина directory лучше
> > употреблять перевод "каталог". "Папка" - это folder. В
> > архивах было обсуждение.
>
> Спасибо, забываюсь. Наверное, надо завести специальный
> словарь для ispell, чтобы отлавливать нерекомендуемую
> терминологию.
AFAIK, есть dict-engcom.
<skipped/>
> > Есть сложности, например, с emacs-mode-psgml. Его
> > предкомпилированные DTD должны лежать рядом с документом.
>
> Странно. Ну, тогда с некоторыми исключениями.
Почему не использовать переменную, куда вместе с tmp/ занести
поимённо остальные временные файлы?
Кстати, я бы не хотел, чтобы при make clean удалялся
скомпилированный DTD - это задача для distclean.
> > > результате:
> > > * хлам не смешивается с важными файлами;
> > > * для "make clean" достаточно "rm -rf tmp out".
> > > * Если файл входит в состав итоговых документов, то он
> > > лежит в"out", иначе он лежит в "tmp".
> > >
> > > ---
> > >
> > > Цепочка преобразований.
> > >
> > > Общее начало:
> > > .xml -> xinclude -> profiling+tuning (A)
> >
> > XInclude незачем выделять в отдельный этап, IMHO.
>
> Пусть всё-таки будет. Интуиция советует, не хочу ей
> противоречить.
Лучше всё-таки аргументировать.
XInclude должен выполняться перед любой обработкой.
XInclude выполняется для всех документов, поскольку это проще,
чем выполнение в зависимости от наличия включений.
XInclude может выполняться в один проход с другими ключами
обработки и не конфликтует ни с одним из них.
Отдельное выполнение XInclude потребует дополнительного запуска
xmllint и дополнительной обработки как всего дерева документов,
так и всех external entities, DTD и т.п. - то есть, накладно по
ресурсам.
А вот зачем это нужно, пока не ясно... К тому же отдельный этап с
XInclude всегда можно добавить.
Кстати, лучше делать все этапы с учётом того, что между каждой
парой этапов могут добавиться дополнительные этапы.
> > > Далее, для html:
> > > всё, как сейчас
> > >
> > > Далее, для print:
> > > -> fo (B) -> pdf (C) или
> > > -> tex (D) -> pdf
> >
> > FO может (и должен) быть разным для каждого FO-процессора.
>
> Почему? Разве не утверждается, что FO процессоронезависим?
У каждого FO-процессора свой набор возможностей и особенностей, и
стили DocBook умеют их использовать.
> Но и это может работать, см. (1).
Прекрасно.
<skipped/>
--
Regards, Vyt
mailto: vyt на vzljot.ru
JID: vyt на vzljot.ru
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 189 байтов
Описание: отсутствует
Url : /pipermail/docs/attachments/20031028/dd5aaba7/attachment.bin
Подробная информация о списке рассылки docs