diff options
author | Karl Berry <karl@freefriends.org> | 2006-07-22 23:32:04 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-07-22 23:32:04 +0000 |
commit | 8c0d217270186626f5b82a7e018a5e215af4e172 (patch) | |
tree | 79fde11e06867d39659e8617b25e484d864ab269 /Master/texmf-dist/doc/latex/eskdx/manual/eskdx.tex.in | |
parent | d41d86cee76a19ef68f05d300f78881d3f81dbd8 (diff) |
new package eskdx for Russian documents (2mar06)
git-svn-id: svn://tug.org/texlive/trunk@1895 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/eskdx/manual/eskdx.tex.in')
-rw-r--r-- | Master/texmf-dist/doc/latex/eskdx/manual/eskdx.tex.in | 885 |
1 files changed, 885 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/eskdx/manual/eskdx.tex.in b/Master/texmf-dist/doc/latex/eskdx/manual/eskdx.tex.in new file mode 100644 index 00000000000..14b20f78f52 --- /dev/null +++ b/Master/texmf-dist/doc/latex/eskdx/manual/eskdx.tex.in @@ -0,0 +1,885 @@ +% Copyright 2006 Konstantin Korikov <lostclus@ua.fm> +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Konstantin Korikov. +% +% This work consists of all files listed in manifest.txt. +% +m4_ESKDX_INIT +m4_FILE_INIT +\documentclass[russian,koi8-r,simple% +m4_ifdef([[m4_HTML]], [[,emptystyle]])]{eskdtext} +\usepackage[T2A]{fontenc} +\usepackage{pscyr} +\usepackage{amstext} +\usepackage{amsmath} +\usepackage{verbatimfiles} +\usepackage{calc} +\usepackage{array} +\usepackage{longtable} + +\title{Коллекция eskdx v[[]]m4_ESKDX_VERSION} +\ESKDdocName{Руководство пользователя} +\author{Кориков~К.~В.} +\date{m4_FILE_DATE([[$Date: 2006/03/21 06:48:45 $]])} +\renewcommand{\ESKDtheTitleFieldVIIIr}{% +\copyright 2006 Константин Кориков} + +\usepackage[unicode]{hyperref} +\hypersetup{pdfkeywords=ЕСКД ГОСТ LaTeX класс пакет} + +\newcommand{\gost}[1]{\mbox{ГОСТ}\ \mbox{#1}} +\newcommand{\pkg}[1]{\mbox{\textsf{#1}}} +\newcommand{\cmd}[1]{\texttt{\textbackslash\mbox{#1}}} +\newcommand{\env}[1]{\mbox{\texttt{#1}}} +\newcommand{\opt}[1]{\mbox{\texttt{#1}}} +\newcommand{\optarg}[1]{\mbox{\textit{#1}}} +\newcommand{\val}[1]{\mbox{\texttt{#1}}} +\newenvironment{defs}{\begin{itemize}}{\end{itemize}} +\newcommand{\cmddef}[2]{\item[]\texttt{\textbackslash#1#2}} +\newcommand{\envdef}[3]{\item[]% + \texttt{\textbackslash begin\{#1\}#2} + \par\textit{\quad #3}% + \par\texttt{\textbackslash end\{#1\}}} +\newcommand{\cmdarg}[1]{\mbox{\textrm{\textit{#1}}}} + +\begin{document} +\maketitle +\tableofcontents +\newpage +\section{Общие сведения} +\subsection{О коллекции \pkg{eskdx}} +Коллекция пакетов и классов \pkg{eskdx} рассчитана на использование в +среде \LaTeXe\ и предназначена для верстки документов в соответствии с +требованиями Единой системы конструкторской документации. Коллекция +содержит три класса: \pkg{eskdtext} (для текстовой документации), +\pkg{eskdgraph} (для чертежей и схем) и \pkg{eskdtab} (для документов, +разбитых на графы), а также некоторое число пакетов (некоторые из них +являются внутренними). + +\subsection{Возможности коллекции} +Основные возможности \pkg{eskdx}: +\begin{itemize} +\item основная надпись и дополнительные графы по \gost{2.104-68}, +форма 1, 2, 2а, 2б; +\item поддерживаемые форматы листов: А0, А1, А2, А3, А4; +\item поддержка двусторонней печати; +\item настройка элементов текста (абзацы, перечисления, и т.п.) и +рубрикации (разделы, подразделы, пункты, подпункты, приложения) по +\gost{2.105-95}; +\item титульный лист и лист утверждения по \gost{2.105-95}; +\item спецификация по \gost{2.106-96}, форма 1, 1а, 2, 2а; +\item лист регистрации изменений по \gost{2.503-90}; +\item поддержка множества языков (на данный момент русский и +украинский). +\end{itemize} + +\newpage +\section{Базовые принципы использования} +Для использования коллекции \pkg{eskdx} необходимо иметь как +минимум базовые знания системы \LaTeXe. + +Основа коллекции "--- классы \pkg{eskdtext}, \pkg{eskdgraph} и +\pkg{eskdtab}. Для текстовых документов, содержащих, в основном, +сплошной текст, используют класс \pkg{eskdtext}, для чертежей и схем +"--- \pkg{eskdgraph}, а для документов, содержащих текст, разбитый на +графы "--- \pkg{eskdtab}. + +Примечание "--- в большинстве случаев для получения правильного +выходного файла необходимо выполнить как минимум два прохода +интерпретатора. + +\subsection{Пример простого документа} +Пример простого текстового документа: +\begin{quote} +\verbatimlisting{example.tex} +\end{quote} + +Опции \opt{russian} и \opt{koi8-r}, на строке 1, задают, +соответственно язык и кодировку документа. Команды на строках 2 по 16 +задают информацию о документе, которая используется в титульном листе +и в основной надписи. Строки 19 по 23 "--- тело документа. + +\subsection{Опции классов} +m4_define([[m4_BEGIN_OPTTBL]], [[m4_dnl +m4_ifdef([[m4_HTML]], [[m4_dnl +\begin{longtable}{|p{.30\textwidth}|p{.70\textwidth}|} +$1\\m4_dnl$ +\hline +\multicolumn{1}{|c|}{Опция}& +\multicolumn{1}{c|}{Описание}\\\hline]], [[m4_dnl +\begin{longtable}{|% +p{.30\textwidth-2\tabcolsep-1.5\arrayrulewidth}| +p{.70\textwidth-2\tabcolsep-1.5\arrayrulewidth}|} +$1\\m4_dnl$ +\hline +\multicolumn{1}{|c|}{Опция}&\multicolumn{1}{c|}{Описание}\\\hline +\endfirsthead +\caption*{Продолжение таблицы}\\ +\hline +\multicolumn{1}{|c|}{Опция}&\multicolumn{1}{c|}{Описание}\\\hline +\endhead +]])]]) +m4_define([[m4_END_OPTTBL]], [[\end{longtable}]]) + +\subsubsection{Общие опции обоих классов} +Опции, воспринимаемые классами \pkg{eskdtext} и \pkg{eskdgraph} +приведены в таблице~\ref{t:common:opts}. +m4_BEGIN_OPTTBL([[m4_dnl +\caption{Общие опции классов \pkg{eskdtext} и +\pkg{eskdgraph}\label{t:common:opts}}]]) +\opt{russian}\par\opt{ukrainian}& +Выбирает язык документа, соответственно русский, украинский. По +умолчанию русский.\\\hline +\opt{koi8-r}\par\opt{koi8-u}\par\opt{cp1251}\par\opt{iso8859-5}\par +\opt{cp866}& +Задает кодировку текста, соответственно \mbox{KOI8-R}, \mbox{KOI8-U}, +\mbox{CP1251}, \mbox{ISO8859-5}, \mbox{CP866}.\\\hline +\opt{reduceheight=}& +Уменьшает высоту рамки за счет увеличения нижнего поля на +заданную высоту.\\\hline +\opt{emptystyle}& +Включает пустой стиль страниц, т.е. без рамки формы, без основной +надписи и без дополнительных граф.\\\hline +\opt{stitching}\par\opt{nostitching}& +Включает/выключает поле для переплета. По умолчанию поле включено.\\\hline +\opt{columnvii}\par\opt{nocolumnvii}& +Включает/выключает графу 7 основной надписи (номер листа/страницы). По +умолчанию графа 7 включена только для документов, содержащих больше +одного листа\\\hline +\opt{columnviii}\par\opt{nocolumnviii}& +Включает/выключает графу 8 основной надписи (общее количество +листов/страниц). По умолчанию графа 8 включена.\\\hline +\opt{columnsxix}\par\opt{nocolumnsxix}& +Включает/выключает дополнительные графы 19 по 23. По умолчанию +включены.\\\hline +\opt{columnsxxiv}\par\opt{nocolumnsxxiv}& +Включает/выключает дополнительные графы 24 и 25. По умолчанию +выключены.\\\hline +\opt{columnsxxvii}\par\opt{nocolumnsxxvii}& +Включает/выключает дополнительные графы 27 по 30. По умолчанию +выключены.\\\hline +\opt{columnxxxi}\par\opt{nocolumnxxxi}& +Включает/выключает дополнительную графу 31. По умолчанию +включена.\\\hline +\opt{columnxxxii}\par\opt{nocolumnxxxii}& +Включает/выключает дополнительную графу 32 (формат листа). По +умолчанию включена.\\\hline +\opt{simple}& +Тоже самое что \opt{nocolumnsxix}, \opt{nocolumnxxxi} и +\opt{nocolumnxxxii}.\\\hline +\opt{linethick=}& +Устанавливает толщину сплошной толстой линии. По умолчанию +\val{.4mm}.\\\hline +\opt{linethin=}& +Устанавливает толщину сплошной тонкой линии. По умолчанию +\val{.2mm}.\\\hline +\opt{vpadding=}& +Устанавливает расстояние от рамки формы до границ текста в начале и в +конце строк. По умолчанию \val{3mm}.\\\hline +\opt{hpadding=}& +Устанавливает расстояние от верхней или нижней строки текста до +верхней или нижней рамки. По умолчанию \val{10mm}.\\\hline +m4_END_OPTTBL + +\subsubsection{Опции класса \pkg{eskdtext}} +Опции, воспринимаемые классом \pkg{eskdtext} приведены в +таблице~\ref{t:eskdtext:opts}. +m4_BEGIN_OPTTBL([[m4_dnl +\caption{Опции класса \pkg{eskdtext}\label{t:eskdtext:opts}}]]) +\opt{12pt}\par\opt{14pt}& +Устанавливает размер шрифта документа, соответственно \val{12pt}, +\val{14pt}. По умолчанию \val{14pt}.\\\hline +\opt{pointsingle}\par\opt{pointsection}\par\opt{pointsubsection}& +Устанавливает стиль нумерации пунктов, соответственно в пределах всего +документа, в пределах раздела, в пределах подраздела. По умолчанию +пункты нумеруются в пределах всего документа.\\\hline +\opt{twoside}& +Включает двустороннюю печать.\\\hline +\opt{draft}& +Включает черновой режим.\\\hline +m4_END_OPTTBL + +\subsubsection{Опции класса \pkg{eskdgraph}} +Опции, воспринимаемые классом \pkg{eskdgraph} приведены в +таблице~\ref{t:eskdgraph:opts}. +m4_BEGIN_OPTTBL([[m4_dnl +\caption{Опции класса \pkg{eskdgraph}\label{t:eskdgraph:opts}}]]) +\opt{a0paper}\par\opt{a1paper}\par\opt{a2paper}\par\opt{a3paper}\par +\opt{a4paper}& +Устанавливает формат (размер) листа, соответственно А0, А1, А2, А3, +А4. По умолчанию А4.\\\hline +\opt{landscape}\par\opt{portrait}& +Устанавливает ориентацию страницы, соответственно ландшафтная +ориентация (основная надпись вдоль длинной стороны листа), портретная +ориентация (основная надпись вдоль короткой стороны листа). По +умолчанию ландшафтная ориентация для листов формата больше А4, и +портретная ориентация для листов формата А4.\\\hline +\opt{ignorestamp}\par\opt{noignorestamp}& +Включает/выключает игнорирование основной надписи при +позиционировании рисунка чертежа. По умолчанию основная надпись +игнорируется.\\\hline +\opt{columnxxvi}\par\opt{nocolumnxxvi}& +Включает/выключает дополнительную графу 26. По умолчанию графа +включена.\\\hline +\opt{columnxxxiii}\par\opt{nocolumnxxxiii}& +Включает/выключает дополнительную графу 33. По умолчанию +выключена.\\\hline +\opt{columnxxxiv}\par\opt{nocolumnxxxiv}& +Включает/выключает дополнительную графу 34. По умолчанию +выключена.\\\hline +\opt{zonelabels}\par\opt{nozonelabels}& +Включает/выключает отметки зон. По умолчанию отметки выключены.\\\hline +m4_END_OPTTBL + +\subsubsection{Опции класса \pkg{eskdtab}} +Опции, воспринимаемые классом \pkg{eskdtab} приведены в +таблице~\ref{t:eskdtab:opts}. +m4_BEGIN_OPTTBL([[m4_dnl +\caption{Опции класса \pkg{eskdtab}\label{t:eskdtab:opts}}]]) +\opt{a3paper}\par\opt{a4paper}& +Устанавливает формат (размер) листа, соответственно А3, А4. По +умолчанию А4.\\\hline +\opt{landscape}\par\opt{portrait}& +Устанавливает ориентацию страницы, соответственно ландшафтная +ориентация (основная надпись вдоль длинной стороны листа), портретная +ориентация (основная надпись вдоль короткой стороны листа). По +умолчанию ландшафтная ориентация для листов формата А3, и +портретная ориентация для листов формата А4.\\\hline +\opt{twoside}& +Включает двустороннюю печать.\\\hline +\opt{draft}& +Включает черновой режим.\\\hline +m4_END_OPTTBL + +\subsection{Информация о документе} +\label{docinfo} +Информацию о документе размещают в преамбуле документа используя +описанные ниже команды. + +Наименование ведомства, в систему которого входит организация, +разработавшая документ, задает команда +\begin{defs} +\cmddef{ESKDdepartment}{\{\cmdarg{текст}\}} +\end{defs} + +Наименование организации задает команда +\begin{defs} +\cmddef{ESKDcompany}{\{\cmdarg{текст}\}} +\end{defs} + +Код по классификатору продукции задает команда +\begin{defs} +\cmddef{ESKDclassCode}{\{\cmdarg{текст}\}} +\end{defs} + +Наименование изделия задают команды +\begin{defs} +\cmddef{ESKDunitName}{\{\cmdarg{текст}\}} +\cmddef{ESKDtitle}{\{\cmdarg{текст}\}} +\cmddef{title}{\{\cmdarg{текст}\}} +\end{defs} +все три команды действуют одинаково (команды близнецы). + +Наименование документа задает команда +\begin{defs} +\cmddef{ESKDdocName}{\{\cmdarg{текст}\}} +\end{defs} + +Обозначение документа задает команда +\begin{defs} +\cmddef{ESKDsignature}{\{\cmdarg{текст}\}} +\end{defs} + +Литеру, присвоенную данному документу, задает команда +\begin{defs} +\cmddef{ESKDletter}{\{\cmdarg{буква1}\}\{\cmdarg{буква2}\}% +\{\cmdarg{буква3}\}} +\end{defs} + +Обозначение материала детали задает команда +\begin{defs} +\cmddef{ESKDmaterial}{\{\cmdarg{текст}\}} +\end{defs} + +Массу изделия задает команда +\begin{defs} +\cmddef{ESKDmass}{\{\cmdarg{текст}\}} +\end{defs} + +Масштаб чертежа задает команда +\begin{defs} +\cmddef{ESKDscale}{\{\cmdarg{текст}\}} +\end{defs} + +Наименование или различительный индекс предприятия задает команда +\begin{defs} +\cmddef{ESKDgroup}{\{\cmdarg{текст}\}} +\end{defs} + +Фамилию автора задают команды +\begin{defs} +\cmddef{ESKDauthor}{\{\cmdarg{текст}\}} +\cmddef{author}{\{\cmdarg{текст}\}} +\end{defs} + +Фамилию проверяющего задает команда +\begin{defs} +\cmddef{ESKDchecker}{\{\cmdarg{текст}\}} +\end{defs} + +Фамилию нормоконтролера задает команда +\begin{defs} +\cmddef{ESKDnormContr}{\{\cmdarg{текст}\}} +\end{defs} + +Фамилию утвердившего задает команда +\begin{defs} +\cmddef{ESKDapprovedBy}{\{\cmdarg{текст}\}} +\end{defs} + +Дату документа задают команды +\begin{defs} +\cmddef{ESKDdate}{\{\cmdarg{год/месяц/число}\}} +\cmddef{date}{\{\cmdarg{год/месяц/число}\}} +\end{defs} + +Описанные выше команды сохраняют значения своих аргументов в +соответствующие \cmd{ESKDthe}-команды. Например, команда +\cmd{ESKDtheAuthor} печатает фамилию автора, а команда +\cmd{ESKDtheNormContr} печатает фамилию нормоконтролера. + +\sloppy +Немного иначе обстоят дела с датой и литерой. Год печатает команда +\cmd{ESKDtheYear}, месяц "--- \cmd{ESKDtheMonth}, а число "--- +\cmd{ESKDtheDay}. Буквы литеры печатают команды \cmd{ESKDtheLetterI}, +\cmd{ESKDtheLetterII}, \cmd{ESKDtheLetterIII}. + +\fussy + +\subsection{Титульный лист} +Титульный лист печатает команда +\begin{defs} +\cmddef{maketitle}{} +\end{defs} +которую размещают в теле документа. + +Согласно \gost{2.105} титульный лист разбит на 10 полей. По +умолчанию большинство полей уже содержат необходимые данные, заданные +командами, описанными в разделе \ref{docinfo}. Также для заполнения +титульного листа существует несколько дополнительных команд, которые +размещают в преамбуле документа. + +Команда +\begin{defs} +\cmddef{ESKDtitleApprovedBy}{\{\cmdarg{должность}\}\{\cmdarg{фамилия}\}} +\end{defs} +размещает гриф утверждения в правой части поля 3. + +Команда +\begin{defs} +\cmddef{ESKDtitleAgreedBy}{\{\cmdarg{должность}\}\{\cmdarg{фамилия}\}} +\end{defs} +размещает гриф согласования в левой части поля 3. Если согласовавших +лиц больше одного, то команду повторяют несколько раз, при этом +остальные фамилии размещаются в левой части поля 8. + +Список разработчиков документа задают при помощи команды +\begin{defs} +\cmddef{ESKDtitleDesignedBy}{\{\cmdarg{должность}\}\{\cmdarg{фамилия}\}} +\end{defs} +Команду повторяют для каждого разработчика. Список размещается в +правой части поля 8. + +При утверждении документа листом утверждения его обозначение указывают +в левой части поля 3. Для этого используют команду +\begin{defs} +\cmddef{ESKDtitleApprovingSheet}{\{\cmdarg{обозначение}\}} +\end{defs} + +Кроме описанных выше методов заполнения титульного листа, имеется +метод, позволяющий принудительного указать какие данные нужно +разместить в том или ином поле посредством переопределения +\cmd{ESKDtheTitleField}-команд. Например, для того чтобы в поле 10 +разместить какой-нибудь текст (по умолчанию поле содержит год) в +преамбулу документа нужно поместить +\begin{quote} +\begin{verbatim} +\renewcommand{\ESKDtheTitleFieldX}{% +какой-нибудь текст} +\end{verbatim} +\end{quote} + +\subsection{Заполнение граф основной надписи и дополнительных граф} +По умолчанию большинство граф основной надписи и некоторые +дополнительные графы содержат данные, заданные командами, описанными в +разделе \ref{docinfo}. Для принудительного заполнения граф +предназначены \cmd{ESKDcolumn}-команды, которые размещают в преамбуле +документа. + +Графу 1 (наименование изделия/документа) задает команда +\begin{defs} +\cmddef{ESKDcolumnI}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 2 (обозначение документа) задает команда +\begin{defs} +\cmddef{ESKDcolumnII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 3 (обозначение материала детали) задает команда +\begin{defs} +\cmddef{ESKDcolumnIII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 4 (литера) задают команды +\begin{defs} +\cmddef{ESKDcolumnIVfI}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnIVfII}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnIVfIII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 5 (масса изделия) задает команда +\begin{defs} +\cmddef{ESKDcolumnV}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 6 (масштаб) задает команда +\begin{defs} +\cmddef{ESKDcolumnVI}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 9 (наименование или различительный индекс предприятия) задает +команда +\begin{defs} +\cmddef{ESKDcolumnIX}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 11 (фамилии лиц, подписывающих документ) задают команды +\begin{defs} +\cmddef{ESKDcolumnXIfI}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnXIfII}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnXIfIII}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnXIfIV}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnXIfV}{\{\cmdarg{текст}\}} +\cmddef{ESKDcolumnXIfVI}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 19 (инвентарный номер подлинника) задает команда +\begin{defs} +\cmddef{ESKDcolumnXIX}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 21 (инвентарный номер подлинника, взамен которого выпущен данный +подлинник) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXI}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 22 (инвентарный номер дубликата) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 24 (обозначение документа, взамен или на основании которого +выпущен документ) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXIV}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 25 (обозначение соответствующего документа, в котором впервые +записан документ) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXV}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 27 (знак, установленный заказчиком) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXVII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 28 (номер решения и год утверждения документации соответствующей +литеры) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXVIII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 29 (номер решения и год утверждения документации) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXIX}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 30 (индекс заказчика) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXX}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 32 (обозначение формата листа) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXXII}{\{\cmdarg{текст}\}} +\end{defs} + +Графу 34 (номера авторских свидетельств на изобретения) задает команда +\begin{defs} +\cmddef{ESKDcolumnXXXIV}{\{\cmdarg{текст}\}} +\end{defs} + +Описанные выше команды сохраняют значения своих аргументов в +соответствующие \cmd{ESKDthe}-команды. Например, команда +\cmd{ESKDtheColumnI} печатает содержимое графы 1. + +\subsection{Рубрикация} +Разделы, подразделы, подподразделы, пункты, подпункты, подподпункты +создаются соответственно командами: +\begin{defs} +\cmddef{section}{\{\cmdarg{заголовок}\}} +\cmddef{subsection}{\{\cmdarg{заголовок}\}} +\cmddef{subsubsection}{\{\cmdarg{заголовок}\}} +\cmddef{point}{} +\cmddef{subpoint}{} +\cmddef{subsubpoint}{} +\end{defs} + +По умолчанию пункты нумеруются в пределах всего документа. Чтобы +включить нумерацию пунктов в пределах раздела или подраздела +используют опцию \opt{pointsection} или \opt{pointsubsection} класса +\pkg{eskdtext} соответственно. + +Приложение создает команда +\begin{defs} +\cmddef{ESKDappendix}{\{\cmdarg{тип}\}\{\cmdarg{заголовок}\}} +\end{defs} +Первый аргумент "--- тип приложения (обязательное, рекомендуемое или +справочное). Второй аргумент "--- заголовок приложения. + +\subsection{Пояснения символов, входящих в формулу} +\sloppy +Командные скобки +\begin{defs} +\envdef{ESKDexplanation}{}{пояснения} +\end{defs} +создают список пояснений символов. Перед первым пояснением ставят +\cmd{item[где ]}. Перед последующими пояснениями ставят \cmd{item}. + +\fussy + +\subsection{Лист регистрации изменений} +Пакет \pkg{eskdchngsheet} предоставляет командные скобки +\begin{defs} +\envdef{ESKDchangeSheet}{}{строки} +\end{defs} +которые создают лист регистрации изменений. По сути это таблица из +десяти колонок, которую заполняют как обычную таблицу, разделяя данные +ячеек символом \verb|&|, а строки "--- \verb|\\|. + +\subsection{Чертежи и схемы} +Для чертежей и схем используют класс \pkg{eskdgraph}. Команды включения +графики размещают внутри командных скобок +\begin{defs} +\envdef{ESKDdrawing}{}{графика} +\end{defs} +Для каждой страницы используют свое окружение \env{ESKDdrawing}. + +\subsection{Спецификация} +Для спецификации используют класс \pkg{eskdtab} и пакет +\pkg{eskdspec}. Создают спецификацию командные скобки +\begin{defs} +\envdef{ESKDspecification}{}{строки} +\end{defs} +По сути это таблица из семи колонок, которую заполняют как обычную +таблицу, разделяя данные ячеек символом \verb|&|, а строки "--- +\verb|\\|. + +\subsection{Спецификация при плазовом методе} +Для спецификации при плазовом методе (форма 2 и 2а) используют класс +\pkg{eskdtab} и пакет \pkg{eskdspecii}. Создают спецификацию командные +скобки +\begin{defs} +\envdef{ESKDspecificationII}{}{строки} +\end{defs} +По сути это таблица из девяти колонок, которую заполняют как обычную +таблицу, разделяя данные ячеек символом \verb|&|, а строки "--- +\verb|\\|. + +\subsection{Лист утверждения} +Лист утверждения создают как отдельный документ с подключением пакета +\pkg{eskdappsheet}. Заполняют лист утверждения таким же образом как и +титульный лист. + +Команда +\begin{defs} +\cmddef{ESKDapprovingDoc}{\{\cmdarg{обозначение}\}} +\end{defs} +размещает в нижней части поля 8 обозначение документа, на который +распространяется данный лист утверждения. Если таких документов +несколько, команду повторяют для каждого документа. + +Печатает лист утверждения команда +\begin{defs} +\cmddef{maketitle}{} +\end{defs} +или команда +\begin{defs} +\cmddef{ESKDmakeApprovingSheet}{} +\end{defs} + +\newpage +\section{Тонкая настройка} +\subsection{Управление стилями страниц} +\label{s:pagestyles} +Каждая страница оформляется в соответствии с определенным стилем +страницы. Существуют такие предопределенные стили страниц: +\val{empty}, \val{title}, \val{formI}, \val{formII}, \val{formIIab}. +Стиль \val{empty} "--- это пустой стиль, в нем нет ни рамки, ни +основной надписи, ни дополнительных граф. Стиль \val{title} +предназначен для титульного листа, в нем есть рамка и дополнительные +графы 19 по 23. Стили \val{formI} и \val{formII} соответствуют форме~1 +и форме~2 по \gost{2.104} соответственно, имеют рамку, основную +надпись и дополнительные графы. Стиль \val{formIIab} соответствует +форме 2б на четной странице при двусторонней печати, и форме 2а в +остальных случаях. + +Менять стиль страницы можно используя команды +\begin{defs} +\cmddef{ESKDstyle}{\{стиль\}} +\cmddef{ESKDthisStyle}{\{стиль\}} +\end{defs} +Первая меняет стиль текущей и последующих страниц, вторая меняет стиль +только текущей страницы. + +Также можно изменять существующие стили и добавлять собственные. + +Новый стиль создает команда +\begin{defs} +\cmddef{ESKDnewStyle}{\{\cmdarg{стиль}\}\{\cmdarg{высота}\}} +\end{defs} +Первый аргумент задает имя стиля, второй "--- высоту основной надписи. + +Команда +\begin{defs} +\cmddef{ESKDputOnStyle}{\{\cmdarg{стиль}\}\{\cmdarg{элемент}\}% +\{\cmdarg{команды}\}} +\end{defs} +заменяет или добавляет в существующий \cmdarg{стиль} \cmdarg{элемент}, +для верстки которого используются \cmdarg{команды}. Первый аргумент +"--- имя существующего стиля. Второй аргумент "--- имя элемента, +который нужно добавить или заменить. Третий аргумент "--- команды, +рисующие данный элемент (допустимы только команды окружения +\env{picture}). +m4_dnl рассказать как рисовать. + +Для удаления элементов из стиля используется команда +\begin{defs} +\cmddef{ESKDremoveFromStyle}{\{\cmdarg{стиль}\}\{\cmdarg{элемент}\}} +\end{defs} + +В предопределенных стилях рамку формы рисует элемент \val{frame}, а +основную надпись "--- \val{stamp}. Например, для того чтобы удалить +основную надпись в стиле \val{formI} можно воспользоваться командой +\begin{quote} +\verb|\ESKDremoveFromStyle{formI}{stamp}| +\end{quote} + +Команды +\begin{defs} +\cmddef{ESKDdefaultTitleStyle}{\{\cmdarg{стиль}\}} +\cmddef{ESKDdefaultFirstStyle}{\{\cmdarg{стиль}\}} +\cmddef{ESKDdefaultStyle}{\{\cmdarg{стиль}\}} +\end{defs} +задают стиль по умолчанию для титульного листа, первой страницы (не +считая титульный лист) и остальных страниц соответственно. Нет смысла +использовать эти команды вне преамбулы документа. + +\subsection{Настройка шрифтов} +Команды +\begin{defs} +\cmddef{ESKDfontII}{} +\cmddef{ESKDfontIII}{} +\cmddef{ESKDfontV}{} +\cmddef{ESKDfontVII}{} +\cmddef{ESKDfontX}{} +\end{defs} +определяют базовые шрифты, соответственно размером $2{,}5$, $3{,}5$, +$5$, $7$ и $10~\text{мм}$. Шрифты, заданные этими командами, +используются в основной надписи и в дополнительных графах, а также по +умолчанию в других элементах, таких как титульный лист, спецификация и +лист регистрации изменений. + +По умолчанию эти команды устанавливают +\cmd{baselinestretch} в +\begin{defs} +\cmddef{ESKDfontBaseLineStretch}{} +\end{defs} +Устанавливают размер используя соответственно команды +\begin{defs} +\cmddef{ESKDfontIIsize}{} +\cmddef{ESKDfontIIIsize}{} +\cmddef{ESKDfontVsize}{} +\cmddef{ESKDfontVIIsize}{} +\cmddef{ESKDfontXsize}{} +\end{defs} +Выполняют \cmd{selectfont} и устанавливают начертание используя +команду +\begin{defs} +\cmddef{ESKDfontShape}{} +\end{defs} + +Шрифты элементов, представленных в виде таблицы, определяют команды +\begin{defs} +\cmddef{ESKDfontTabHead}{} +\cmddef{ESKDfontTabBody}{} +\end{defs} +Первая определяет шрифт заголовка, вторая "--- шрифт тела таблицы. По +умолчанию определены как \cmd{ESKDfontIII}. + +Все приведенные выше команды можно переопределять при помощи +\cmd{renewcommand}. + +\subsection{Настройка титульного листа} +Команды +\begin{defs} +\cmddef{ESKDtitleFontI}{} +\cmddef{ESKDtitleFontII}{} +\cmddef{ESKDtitleFontIII}{} +\cmddef{ESKDtitleFontIV}{} +\cmddef{ESKDtitleFontV}{} +\cmddef{ESKDtitleFontVI}{} +\cmddef{ESKDtitleFontVII}{} +\cmddef{ESKDtitleFontVIII}{} +\cmddef{ESKDtitleFontX}{} +\end{defs} +определяют шрифты полей титульного листа. Их можно переопределить +посредством \cmd{renewcommand}. + +\subsection{Управление заголовками рубрикации} +Заголовки разделов, подразделов и подподразделов можно выравнивать +влево, вправо, по центру, а также можно задавать стиль отображения и +вертикальные отступы. + +Команда +\begin{defs} +\cmddef{ESKDsectAlign}{\{\cmdarg{элемент}\}\{\cmdarg{выравнивание}\}} +\end{defs} +устанавливает выравнивание элемента. Первый аргумент "--- одно +из значений: \val{section}, \val{subsection}, \val{subsubsection}; +соответственно для разделов, подразделов, подподразделов. Второй +аргумент "--- одно из значений: \val{Left}, \val{Right}, \val{Center}; +соответственно для выравнивания по левому краю, по правому краю, по +центру. + +\sloppy +Стиль, в котором будут верстаться заголовки, задает команда +\begin{defs} +\cmddef{ESKDsectStyle}{\{\cmdarg{элемент}\}\{\cmdarg{стиль}\}} +\end{defs} +Первый аргумент "--- одно из значений: \val{section}, +\val{subsection}, \val{subsubsection}; соответственно для разделов, +подразделов, подподразделов. Второй аргумент "--- стиль, который может +содержать в себе такие команды как \cmd{Large}, \cmd{bfseries}, и т.п. + +Вертикальные отступы задает команда +\begin{defs} +\cmddef{ESKDsectSkip}{\{\cmdarg{элемент}\}\{\cmdarg{отступ перед}\}% +\{\cmdarg{отступ после}\}} +\end{defs} +Первый аргумент "--- одно из значений: \val{section}, +\val{subsection}, \val{subsubsection}; соответственно для разделов, +подразделов, подподразделов. Второй аргумент "--- отступ перед +заголовком. Третий аргумент "--- отступ после заголовка. + +\fussy + +\subsection{Настройка листа регистрации изменений} +\sloppy +Шрифт заголовка и тела таблицы определяют команды +\cmd{ESKDfontTabHead} и \cmd{ESKDfontTabBody}, их можно переопределить +посредством \cmd{renewcommand}. + +Примечание "--- команды \cmd{ESKDchngFontHead} и +\cmd{ESKDchngFontBody} являются устаревшими и будут удалены в будущих +версиях \pkg{eskdx}. + +\fussy + +Ширину колонок таблицы определяют команды +\begin{defs} +\cmddef{ESKDchngColumnIwidth}{} +\cmddef{ESKDchngColumnIIwidth}{} +\cmddef{ESKDchngColumnIIIwidth}{} +\cmddef{ESKDchngColumnIVwidth}{} +\cmddef{ESKDchngColumnVwidth}{} +\cmddef{ESKDchngColumnVIwidth}{} +\cmddef{ESKDchngColumnVIIwidth}{} +\cmddef{ESKDchngColumnVIIIwidth}{} +\cmddef{ESKDchngColumnIXwidth}{} +\cmddef{ESKDchngColumnXwidth}{} +\end{defs} +Их также можно переопределить посредством \cmd{renewcommand}. + +\subsection{Настройка спецификации} +\sloppy +Шрифт заголовка и тела таблицы определяют команды +\cmd{ESKDfontTabHead} и \cmd{ESKDfontTabBody}, их можно переопределить +посредством \cmd{renewcommand}. + +Примечание "--- команды \cmd{ESKDspecFontHead} и +\cmd{ESKDspecFontBody} являются устаревшими и будут удалены в будущих +версиях \pkg{eskdx}. + +\fussy + +\subsection{Текстовые документы без рамок формы и основной надписи} +Опция \opt{emptystyle} класса \pkg{eskdtext} позволяет получить +документ без таких элементов как рамка формы, основная надпись и +дополнительные графы. По сути эта опция устанавливает для всех страниц +стиль \val{empty}. Этот стиль не рекомендуется модифицировать, так что +если необходимо добавить на страницу произвольные элементы, нужно +создать и установить новый стиль, как это описано в разделе +\ref{s:pagestyles}. + +Пакет \pkg{eskdplain} создает новый стиль страницы \val{plain}, +который не содержит никаких элементов, кроме элемента +\val{pagenumber}, который печатает по центру в нижней части страницы ее +номер. Расположение номера на странице можно контролировать опциями +пакета, которые приведены в таблице \ref{t:eskdplain:opts}. + +m4_BEGIN_OPTTBL([[m4_dnl +\caption{Опции пакета \pkg{eskdplain}\label{t:eskdplain:opts}}]]) +\opt{numbertop}\par\opt{numberbottom}& +Располагает номер в верхней или в нижней части страницы +соответственно.\\\hline +\opt{numberleft}\par\opt{numbercenter}\par\opt{numberright}& +Располагает номер слева, по центру или справа соответственно.\\\hline +m4_END_OPTTBL + +Пакет \pkg{eskdplain} устанавливает стиль \val{empty} в качестве стиля +титульного листа и стиль \val{plain} для всех остальных страниц. + +\newpage +\section{Благодарности} +\sloppy +Спасибо всем участникам почтовой рассылки \mbox{CyrTeX-ru} +\mbox{[\url{https://info.vsu.ru/Lists/CyrTeX-ru/List.html}]}, которые +помогают мне решать вопросы, связанные с разработкой \pkg{eskdx}. + +\fussy + +Спасибо Александру Роженко за его коллекцию пакетов \pkg{ncctools}, +откуда я позаимствовал некоторые принципы. + +Спасибо Киевскому техникуму электронных приборов, который побудил +меня на разработку коллекции \pkg{eskdx}. Если бы не курсовые и +дипломная, я бы этого не делал. + +\end{document} + +m4_dnl vim:ft=tex:tw=70:sw=2:ai |