latex-style-esdpx/xespdrtis.sty

126 lines
4.6 KiB
Plaintext
Raw Normal View History

2019-07-01 03:29:20 +00:00
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{xespdrtis}[2018/09/30 v0.98 Document Information]
\RequirePackage{calc}
\RequirePackage{indentfirst}
\RequirePackage[defaultlines=3,all]{nowidow}
\RequirePackage{bookmark}
2019-09-11 04:14:38 +00:00
\RequirePackage{siunitx}
\sisetup{range-phrase = \text{...}}
\RequirePackage{physics}
\RequirePackage{eqexpl}
\eqexplSetIntro{где}
2019-07-01 03:29:20 +00:00
% Обязательно переносить при достижении полей
\sloppy
% При переносе оставлять минимум 3 символа на первой строке и 3 на второй
\renewcommand\russianhyphenmins{33}
% Обязательно (полуторный интервал)
\linespread{1.5}
% Обязательно: отступ первой строки
\setlength{\parindent}{12.5mm}
% Использовать для кавычек-ёлочек данные символы
\renewcommand{\flqq}{«}
\renewcommand{\frqq}{»}
\providecommand{\strong}[1]{\textbf{#1}}
\setlength{\XESPD@padding@h}{0mm}
\setlength{\XESPD@padding@v}{5mm}
\newcounter{fontsnotfound}
\newcommand{\iffontsexist}[3]{
\setcounter{fontsnotfound}{0}
\expandafter\forcsvlist\expandafter\checkfont\expandafter{#1}
\ifnum\value{fontsnotfound}=0
#2
\else
#3
\fi
}
\ifthenelse{\equal{\XESPDtheDocName}{Техническое задание на разработку}}{
\RequirePackage[numbertop,numbercenter]{xespdplain} % без рамок
2019-09-11 05:02:18 +00:00
\XESPDsignature{}
\XESPDtitleApprovingSheet{}
2019-07-01 03:29:20 +00:00
}{ % Если не ТЗР
\RequirePackage[numbertop,numbercenter]{xespdframe} % рамки
\RequirePackage{xespdchngsheet}
\newcommand{\XESPDtheFileName}{}
\newcommand{\XESPDfileName}[1]{\renewcommand{\XESPDtheFileName}{#1}}
\newcommand{\XESPDtheREVMBase}{}
\newcommand{\XESPDREVMBase}[1]{\renewcommand{\XESPDtheREVMBase}{#1}}
\newcommand{\XESPDtheREVMType}{}
\newcommand{\XESPDREVMType}[1]{\renewcommand{\XESPDtheREVMType}{#1}}
\XESPDsignature{РЕВМ.\XESPDtheREVMBase{}\textendash{}\XESPDtheREVMType{}}
\XESPDtitleApprovingSheet{РЕВМ.\XESPDtheREVMBase{}\textendash{}\XESPDtheREVMType{}\textendash{}ЛУ}
\ifthenelse{\equal{\XESPDtheDocName}{Описание программы}}{%
\XESPDREVMType{01 13 01}
\XESPDfileName{\XESPDtheREVMBase{}or}
}{}
\ifthenelse{\equal{\XESPDtheDocName}{Текст программы}}{
\XESPDREVMType{01 12 01}
\XESPDfileName{\XESPDtheREVMBase{}tp}
}{}
\ifthenelse{\equal{\XESPDtheDocName}{Программа и методика испытаний}}{
\XESPDREVMType{01 51 01}
\XESPDfileName{\XESPDtheREVMBase{}pm}
}{}
\ifthenelse{\equal{\XESPDtheDocName}{Руководство оператора}}{
\XESPDREVMType{01 34 01}
\XESPDfileName{\XESPDtheREVMBase{}ro}
}{}
}
%\XESPDdepartment{Ведомство}
%\XESPDcompany{Предприятие}
%\XESPDclassCode{Код по классификатору}
%\XESPDtitleApprovedBy{Должность утверждающего}{Фам. утвер.}
%\XESPDtitleAgreedBy{Должность первого согласовавшего}{Фам. первого согл.}
%\XESPDtitleAgreedBy{Должность второго согласовавшего}{Фам. второго согл.}
%\XESPDtitleAgreedBy{Должность третьего согласовавшего}{Фам. третьего согл.}
%\XESPDtitleDesignedBy{Должность первого автора}{Фам. первого автора}
%\XESPDtitleDesignedBy{Должность второго автора}{Фам. второго автора}
\RequirePackage{forloop}
\RequirePackage{makecell}
\newcount\lincnt
\long\def\addto#1#2{%
\expandafter\def\expandafter#1\expandafter{#1#2}}
\def\changeSheetLine{}\lincnt=28 % Количество строк
% \addto\changeSheetLine{ 1 & & Все & & & & \makecell{РЕВМ.57 \\ 1/2} & & & \makecell{20.04. \\ 17} \\ \hline}
\loop
\addto\changeSheetLine{& & & & & & & & & \\ \hline}
\advance\lincnt -1
\ifnum\lincnt>0
\repeat
\newcommand{\XESPDprintEmptyChangeSheet}{
\renewcommand*{\arraystretch}{0.8}% Высота строк
\begin{XESPDchangeSheet}
\changeSheetLine
\end{XESPDchangeSheet}}
%\RequirePackage{setspace}
%\newcommand{\XESPDdrawPlainPageNumber}{
% \setlength{\XESPD@tmpdima}{\XESPDframeX+\XESPD@padding@h}
% \setlength{\XESPD@tmpdimb}{\XESPDframeW-2\XESPD@padding@h}
% \XESPD@plain@va
% \put(\XESPDltu{\XESPD@tmpdima},\XESPDltu{\XESPD@tmpdimc}){%
% \parbox[b][15mm][c]{\XESPD@tmpdimb}{%
% \begin{singlespace}
% \reset@font\normalsize
% \XESPD@plain@ha\thepage \\ \MakeUppercase\XESPDtheSignature
% \end{singlespace}}}}