-
Notifications
You must be signed in to change notification settings - Fork 1
/
G7-32.sty
166 lines (151 loc) · 6.15 KB
/
G7-32.sty
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
% This package designed and commented in Russian (utf-8 encoding).
%
% Лицензия GNU GPL v2 и совместимые
%
% Автор - Алексей Томин, с помощью списка рассылки [email protected]
% Все вопросы, замечания и пожелания сюда: mailto:[email protected]
%
% Дальнейшая разработка и поддержка - Михаил Конник,
% связаться можно по адресу [email protected]
%
% Further tweaks and development (according to the requirements of
% ГОСТ 7.32-2001 ред. 2009 года.pdf and some other random wishes)
% -- Ivan Zakharyaschev <[email protected]>.
\ProvidesPackage{G7-32}[2015/11/01 v2.00 Titles for GOST 7.32-2001]
%%%%%%%%%%%%%%%%%%
%Latex 2012 and up
\newcommand*{\No}{\textnumero}
% ГОСТ 7.32-2001 ред. 2009 года.pdf item 6.1.2:
% Полужирный шрифт не применяется
\renewcommand\GostTitleStyle{%
\hyphenpenalty=10000
\if@usebold%
\bfseries%
\else%
\normalfont%
\fi%
}%
% ГОСТ 7.32-2001 ред. 2009 года.pdf item 6.2.1:
% Заголовки структурных элементов следует располагать в середине
% строки без точки в конце и печатать прописными буквами, не
% подчёркивая.
\renewcommand\Gost@StructChapterStyle{
\hyphenpenalty=10000
\if@usebold
\bfseries
\fi
\centering\MakeUppercase
}
% Get rid of the large font in chapter titles
% (not sure whether this is regulated)
% (TODO: Perhaps, this should be an option.)
\renewcommand\Gost@MainChapterStyle{%
\hyphenpenalty=10000
\if@usebold%
\bfseries%
\fi%
}%
%стандартные части
\newcommand\Executors{%список исполнителей
\chapter*{Список~%
исполнителей}%
}
\newcommand\Referat{%реферат
\chapter*{РЕФЕРАТ}%
}
\addto\captionsrussian{%
\def\contentsname{%
Содержание}%
\def\bibname{СПИСОК~ИСПОЛЬЗОВАННЫХ~ИСТОЧНИКОВ}%
}
\RequirePackage[acronym, nopostdot, toc, xindy={glsnumbers=false, language=russian}]{glossaries}
\GlsSetXdyCodePage{utf8}
\RequirePackage{glossaries}
\RequirePackage[automake]{glossaries-extra}
\newglossarystyle{terms}{%
% put the glossary in a longtable environment:
\renewenvironment{theglossary}%
{В настоящем отчёте применяются следующие термины с соответствующими определениями:
\begin{longtable}{lp{4cm+\glsdescwidth}p{\glspagelistwidth-1cm}}}%
{\end{longtable}}%
% Set the table's header:
% \renewcommand*{\glossaryheader}{%
% \bfseries ~ & \bfseries ~
% \\\endhead}%
% No heading between groups:
\renewcommand*{\glsgroupheading}[1]{}%
% Main (level 0) entries displayed in a row optionally numbered:
\renewcommand*{\glossentry}[2]{%
\glsentryitem{##1}% Entry number if required
\glstarget{##1}{\glossentryname{##1}}% Name
& \glossentrydesc{##1}% Description
\tabularnewline % end of row
}%
% Nothing between groups:
\renewcommand*{\glsgroupskip}{}%
}
\newglossarystyle{abbrevs}{%
% put the glossary in a longtable environment:
\renewenvironment{theglossary}%
{В настоящем отчёте применяются следующие сокращения и обозначения:
\begin{longtable}{lp{5cm+\glsdescwidth}p{\glspagelistwidth}}}%
{\end{longtable}}%
% Set the table's header:
% \renewcommand*{\glossaryheader}{%
% \bfseries ~ & \bfseries ~
% \\\endhead}%
% No heading between groups:
\renewcommand*{\glsgroupheading}[1]{}%
% Main (level 0) entries displayed in a row optionally numbered:
\renewcommand*{\glossentry}[2]{%
\glsentryitem{##1}% Entry number if required
\glstarget{##1}{\glossentryname{##1}}% Name
& \glossentrydesc{##1}% Description
\tabularnewline % end of row
}%
% Nothing between groups:
\renewcommand*{\glsgroupskip}{}%
}
\makeglossaries
\newcommand\TOCandGloss{ % Содержание и списки терминов и сокращений
%\disableboldchapterintoc
\renewcommand{\contentsname}{СОДЕРЖАНИЕ}
\tableofcontents
\printunsrtglossary[style=terms,title=ТЕРМИНЫ~И~ОПРЕДЕЛЕНИЯ, toctitle=ТЕРМИНЫ~И~ОПРЕДЕЛЕНИЯ, nonumberlist]
%\printunsrtglossary[style=abbrevs,type=acronym, title=ПЕРЕЧЕНЬ~СОКРАЩЕНИЙ~И~ОБОЗНАЧЕНИЙ, toctitle=ПЕРЕЧЕНЬ~СОКРАЩЕНИЙ~И~ОБОЗНАЧЕНИЙ, nonumberlist]
}
\newenvironment{abstract}{%То же самое, только как у белых людей -- Коротков И.
\Referat
}{}
\newcommand\Defines{%глоссарий
\newpage
\section*{\centering ОПРЕДЕЛЕНИЯ}%Ugly hack((( FIXME
% суть в том что Defines находится внутри nomencl и только section выкидывает в нужное место
\section*{\mdseries В настоящем отчете о НИР применяют следующие термины с соответствующими определениями.}% Ugly hack(((
}
%\newcommand\Defines{%определения
% \chapter*{Определения}%
%}
\newcommand\Abbreviations{%обозначения и сокращения
\chapter*{ОБОЗНАЧЕНИЯ~И~СОКРАЩЕНИЯ}%
}
\newcommand\Introduction{ % Введение
\chapter{ВВЕДЕНИЕ}%
}
\newcommand\General{ % Введение
\chapter{ОСНОВНАЯ~ЧАСТЬ}%
}
\newcommand\Conclusion{%заключение
\chapter{ЗАКЛЮЧЕНИЕ}%
}
\newcommand{\Bibliography}[1]{
\bibliographystyle{ugost2008}
\bibliography{#1}
}
\newcommand*\ulfill{\mbox{}\leaders\hrule depth 2pt height -1.5pt\hfill} % similar to an underline
\RequirePackage{etoolbox}% For \newrobustcmd
\def\beamer@calltheme#1#2#3{%
\def\beamer@themelist{#2}%
\@for\beamer@themename:=\beamer@themelist\do
{\usepackage[{#1}]{#3\beamer@themename}}}
\newrobustcmd*\gosttitle[2][]{\beamer@calltheme{#1}{#2}{gosttitle}}