Printed docs: различия между версиями
(Новая: {{Stub}} ==Краткое руководство по сборке макета печатной документации== Сборка печатной документации осу...) |
|||
Строка 1: | Строка 1: | ||
{{Stub}} | {{Stub}} | ||
{{Stub}} | |||
==Краткое руководство по сборке макета печатной документации== | ==Краткое руководство по сборке макета печатной документации== | ||
Строка 15: | Строка 17: | ||
$ git-init | $ git-init | ||
* Клонируем в репозиторий шаблон | * Клонируем в репозиторий шаблон, заведя для него отдельный бранч: | ||
$ git-clone git.alt:/people/kirill/public/altlibrary-template.git | $ git-clone git.alt:/people/kirill/public/altlibrary-template.git | ||
$ git-branch template origin/template | $ git-branch template origin/template | ||
* | * Создаём рабочую ветку и переходим в неё: | ||
$ git-branch master template | $ git-branch master template | ||
$ git-checkout master | $ git-checkout master | ||
* Клонируем в рабочий каталог репозитории с модулями | * Клонируем в рабочий каталог репозитории с модулями. | ||
** В файле src.list перечисляем git-репозитории с исходными модулями с указанием пути и ветки | ** В файле <tt>src.list</tt> перечисляем git-репозитории с исходными модулями с указанием пути и ветки добавлением записей вида | ||
git://git.altlinux.org/people/someone/packages/repository remote/branch | |||
git://git.altlinux.org/people/someone/packages/repository remote/branch | |||
Например: | Например: | ||
git://git.altlinux.org/people/bertis/packages/docs-alterator_vm origin/master | |||
git://git.altlinux.org/people/bertis/packages/docs-alterator_vm origin/master | |||
** Выполняем | ** Выполняем | ||
Строка 33: | Строка 38: | ||
Если за время подготовки макета исходные модули изменились, их необходимо обновить. Для обновления всех модулей: | Если за время подготовки макета исходные модули изменились, их необходимо обновить. Для обновления всех модулей: | ||
$ make update-sources | $ make update-sources | ||
Полученные модули | |||
Полученные модули клонируются в подкаталог <tt>src/</tt> рабочего каталога репозитория с макетом. | |||
* Конвертируем расположенные в полученных модулях тексты документации в TeX. | * Конвертируем расположенные в полученных модулях тексты документации в TeX. | ||
** Файлы для | ** Файлы для конвертации перечисляются в файле <tt>list</tt>: repository path/to/file.smth, где | ||
; repository :название подкаталога в каталоге src/; | ; <tt>repository</tt> :название подкаталога в каталоге <tt>src/</tt>; | ||
; path/to/file.smth :путь к файлу, как правило doc/file.smth | ; <tt>path/to/file.smth</tt> :путь к файлу, как правило <tt>doc/file.smth</tt>. | ||
Пример: | |||
docs-alterator_vm doc/index.m-k | |||
При конвертации в рабочем каталоге создаются подкаталоги, названия которых совпадают с названиями репозиториев с модулями. В них копируются конвертируемые файлы и кладутся результаты конвертации - tex-файлы. Не забываем коммитить сконвертированные техи! | При конвертации в рабочем каталоге создаются подкаталоги, названия которых совпадают с названиями репозиториев с модулями. В них копируются конвертируемые файлы и кладутся результаты конвертации - tex-файлы. Не забываем коммитить сконвертированные техи! | ||
** Если в модулях | ** Если в модулях содержатся иллюстрации (например. скриншоты в формате <tt>.png</tt>, как в случае с модулем руководств установки <tt>docs-install_smth.git</tt>), их также необходимо сконвертировать - в <tt>.eps</tt>. Для этого нужно вписать в файл <tt>list</tt> строку вида <tt>docs-install_desktop doc/*.png</tt>. Сконвертированные иллюстрации ложатся в тот же каталог <tt>docs-install_blabla</tt>. Полученные EPS-ы перемещаем в каталог <tt>images/</tt> и коммитим. (При сборке макета не стоит забывать раскомментировать в <tt>block.tex</tt> строку | ||
** | <pre>\graphicspath{{images/}}</pre>. | ||
** Звёздочка также используется для правильной конвертации файлов в формате XML. Помимо указания основного xml-файла (основной файл лежит в каталоге <tt>doc/</tt> репозитория с исходным модулем, а зависимые - в его подкаталогах), нужно перечислить зависимые файлы, указав вместо их названий *. Например: | |||
docs-whatis_linux doc/linux.xml | docs-whatis_linux doc/linux.xml | ||
Строка 54: | Строка 64: | ||
docs-whatis_linux doc/security/*.xml | docs-whatis_linux doc/security/*.xml | ||
Это будет означать, что данные файлы конвертировать не нужно, но нужно скопировать в подкаталог рабочего каталога, соответствующий данному репозиторию с исходными модулями. Иначе, если файлы не указать, при | Это будет означать, что данные файлы конвертировать не нужно, но нужно скопировать в подкаталог рабочего каталога, соответствующий данному репозиторию с исходными модулями. Иначе, если файлы не указать, при крнвертации получим parser error, а если указать явно, то получится несколько отдельных файлов, которые впоследствии придётся объединять вручную. | ||
* Проверяем, что | * Проверяем, что всё, что нужно. сконвертировалось (особенно после <tt>make update-sources</tt>). | ||
* Заполняем block.tex, расположив в | * Заполняем <tt>block.tex</tt>, расположив в нём в соответствии со структурой создаваемой книги/брошюры ссылки на полученные в результате конвертации tex-файлы (без указания расширения), например: | ||
\input{docs-alterator_vm/index} | \input{docs-alterator_vm/index} | ||
* Компилируем dvi: С-с С-с в Emacs (необходимо расширение emacs-mode-auctex). | * Компилируем dvi: <tt>С-с С-с</tt> в Emacs (необходимо расширение emacs-mode-auctex). | ||
* Смотрим, ужасаемся, исправляем ошибки конвертации, чистим макет. | * Смотрим, ужасаемся, исправляем ошибки конвертации, чистим макет. |
Версия от 11:39, 8 октября 2008
Краткое руководство по сборке макета печатной документации
Сборка печатной документации осуществляется на основе шаблона altlibrary-template с использованием git, издательской системы LaTex и редактора Emacs. Для облегчения процесса сборки печатного макета на основе электронных выпусков предусмотрена автоматизированная система получения и обновления git-репозиториев с исходными модулями. Правила определены в файле Makefile в шаблоне altlibrary-template.
Вкратце процесс выглядит так: создаём новый git-репозиторий, клонируем в него шаблон, получаем репозитории с модулями, конвертируем файлы с текстами в формат TeX, редактируем файл block.tex, компилируем dvi-файл, чистим макет, создаём pdf.
- Создаём git-репозиторий вида books-productversion.git. Например:
$ mkdir books-desktop4.1/ $ cd books-desktop4.1/ $ git-init
- Клонируем в репозиторий шаблон, заведя для него отдельный бранч:
$ git-clone git.alt:/people/kirill/public/altlibrary-template.git $ git-branch template origin/template
- Создаём рабочую ветку и переходим в неё:
$ git-branch master template $ git-checkout master
- Клонируем в рабочий каталог репозитории с модулями.
- В файле src.list перечисляем git-репозитории с исходными модулями с указанием пути и ветки добавлением записей вида
git://git.altlinux.org/people/someone/packages/repository remote/branch
Например:
git://git.altlinux.org/people/bertis/packages/docs-alterator_vm origin/master
- Выполняем
$ make get-sources
Если за время подготовки макета исходные модули изменились, их необходимо обновить. Для обновления всех модулей:
$ make update-sources
Полученные модули клонируются в подкаталог src/ рабочего каталога репозитория с макетом.
- Конвертируем расположенные в полученных модулях тексты документации в TeX.
- Файлы для конвертации перечисляются в файле list: repository path/to/file.smth, где
- repository
- название подкаталога в каталоге src/;
- path/to/file.smth
- путь к файлу, как правило doc/file.smth.
Пример:
docs-alterator_vm doc/index.m-k
При конвертации в рабочем каталоге создаются подкаталоги, названия которых совпадают с названиями репозиториев с модулями. В них копируются конвертируемые файлы и кладутся результаты конвертации - tex-файлы. Не забываем коммитить сконвертированные техи!
- Если в модулях содержатся иллюстрации (например. скриншоты в формате .png, как в случае с модулем руководств установки docs-install_smth.git), их также необходимо сконвертировать - в .eps. Для этого нужно вписать в файл list строку вида docs-install_desktop doc/*.png. Сконвертированные иллюстрации ложатся в тот же каталог docs-install_blabla. Полученные EPS-ы перемещаем в каталог images/ и коммитим. (При сборке макета не стоит забывать раскомментировать в block.tex строку
\graphicspath{{images/}}
.
- Звёздочка также используется для правильной конвертации файлов в формате XML. Помимо указания основного xml-файла (основной файл лежит в каталоге doc/ репозитория с исходным модулем, а зависимые - в его подкаталогах), нужно перечислить зависимые файлы, указав вместо их названий *. Например:
docs-whatis_linux doc/linux.xml docs-whatis_linux doc/devmodel/*.xml docs-whatis_linux doc/distributions/*.xml docs-whatis_linux doc/freesoft/*.xml docs-whatis_linux doc/newbie/*.xml docs-whatis_linux doc/security/*.xml
Это будет означать, что данные файлы конвертировать не нужно, но нужно скопировать в подкаталог рабочего каталога, соответствующий данному репозиторию с исходными модулями. Иначе, если файлы не указать, при крнвертации получим parser error, а если указать явно, то получится несколько отдельных файлов, которые впоследствии придётся объединять вручную.
- Проверяем, что всё, что нужно. сконвертировалось (особенно после make update-sources).
- Заполняем block.tex, расположив в нём в соответствии со структурой создаваемой книги/брошюры ссылки на полученные в результате конвертации tex-файлы (без указания расширения), например:
\input{docs-alterator_vm/index}
- Компилируем dvi: С-с С-с в Emacs (необходимо расширение emacs-mode-auctex).
- Смотрим, ужасаемся, исправляем ошибки конвертации, чистим макет.
- Создаём pdf-макет
$make pdf
- Проверяем и сдаём.