Printed docs: различия между версиями

Материал из ALT Linux Wiki
(Новая: {{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
Полученные модули конируются в подкаталог src/ рабочего каталога репозитория с макетом.
 
Полученные модули клонируются в подкаталог <tt>src/</tt> рабочего каталога репозитория с макетом.
 
* Конвертируем расположенные в полученных модулях тексты документации в TeX.
* Конвертируем расположенные в полученных модулях тексты документации в TeX.
** Файлы для ковертации перечисляются в файле list: repository path/to/file.smth, где  
** Файлы для конвертации перечисляются в файле <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
      
      
Пример:
docs-alterator_vm doc/index.m-k
При конвертации в рабочем каталоге создаются подкаталоги, названия которых совпадают с названиями репозиториев с модулями. В них копируются конвертируемые файлы и кладутся результаты конвертации - tex-файлы. Не забываем коммитить сконвертированные техи!
При конвертации в рабочем каталоге создаются подкаталоги, названия которых совпадают с названиями репозиториев с модулями. В них копируются конвертируемые файлы и кладутся результаты конвертации - tex-файлы. Не забываем коммитить сконвертированные техи!


** Если в модулях одержатся иллюстрации (например. скриншоты в формате .png, как в случае с модулем руководств установки docs-install_smth.git), их также необходимо сконвертировать - в .eps. Для этого нужно вписать в файл list строку вида docs-install_desktop doc/*.png. Сконвертированные иллюстрации ложатся в тот же каталог docs-install_blabla. Полученные EPS-ы перемещаем в каталог images и коммитим. (При сборке макета не стоит забывать раскомментировать в block.tex строку \graphicspath{{images/}}.
** Если в модулях содержатся иллюстрации (например. скриншоты в формате <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> строку  
** Звездочка также используется для правильной конвертации файлов в формате XML. Помимо указания основного xml-файла (основной файл лежит в каталоге doc/ репозитория с исходным модулем, а зависимые - в его подкаталогах), нужно перечислить зависимые файлы, указав вместо их названий *. Например:
<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, а если указать явно, то получится несколько отдельных файлов, которые потом придется объединять вручную.
Это будет означать, что данные файлы конвертировать не нужно, но нужно скопировать в подкаталог рабочего каталога, соответствующий данному репозиторию с исходными модулями. Иначе, если файлы не указать, при крнвертации получим parser error, а если указать явно, то получится несколько отдельных файлов, которые впоследствии придётся объединять вручную.


* Проверяем, что все, что нужно. сконвертировалось (особенно после make update-sources).
* Проверяем, что всё, что нужно. сконвертировалось (особенно после <tt>make update-sources</tt>).


* Заполняем block.tex, расположив в нем в соответствии со структурой создаваемой книги/брошюры ссылки на полученные в результате конвертации 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).


* Смотрим, ужасаемся, исправляем ошибки конвертации, чистим макет.
* Смотрим, ужасаемся, исправляем ошибки конвертации, чистим макет.

Версия от 08:39, 8 октября 2008

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.
Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Краткое руководство по сборке макета печатной документации

Сборка печатной документации осуществляется на основе шаблона 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 
  • Проверяем и сдаём.