summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-06-06 03:02:43 +0000
committerNorbert Preining <norbert@preining.info>2021-06-06 03:02:43 +0000
commit4338972cc175be565a3441c4ae8a6aa0dfcbe9f9 (patch)
tree9ec52a5d0d9c8a00b1a6801cc82248c0c008465d /macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles
parent4e703bdd2f304028698cd4ab92b0dda0b95a95a8 (diff)
CTAN sync 202106060302
Diffstat (limited to 'macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles')
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/01-IU8-base.sty41
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/02-IU8-construction.sty66
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/03-IU8-numbering.sty17
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/04-IU8-section-numbering.sty52
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/05-IU8-figures.sty54
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/06-IU8-tables.sty78
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/07-IU8-footnotes.sty37
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/08-IU8-formulas.sty5
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/09-IU8-cites.sty19
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/10-IU8-titlepage.sty237
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/11-IU8-performers.sty5
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/12-IU8-abstract.sty27
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/13-IU8-contents.sty29
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/14-IU8-terms-and-definitions.sty35
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/15-IU8-list-of-abbreviations.sty29
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/16-IU8-references.sty18
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/17-IU8-appendices.sty25
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/18-IU8-extra.sty25
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/19-IU8-counters.sty22
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/20-IU8-listing.sty38
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/21-IU8-math.sty11
-rw-r--r--macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/22-IU8-algorithms.sty26
22 files changed, 896 insertions, 0 deletions
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/01-IU8-base.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/01-IU8-base.sty
new file mode 100644
index 0000000000..07b54647a3
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/01-IU8-base.sty
@@ -0,0 +1,41 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{01-IU8-base}[2021/03/21 v1.1 Общие требования]
+
+% 6.1.1 Изложение текста и оформление отчета выполняют в соответствии с
+% требованиями настоящего стандарта. Страницы текста отчета о НИР и включенные в
+% отчет иллюстрации и таблицы должны соответствовать формату А4 по ГОСТ 9327.
+% Допускается применение формата А3 при наличии большого количества таблиц и
+% иллюстраций данного формата.
+
+% Отчет о НИР должен быть выполнен любым печатным способом на одной стороне
+% листа белой бумаги формата А4 через полтора интервала.
+\RequirePackage{setspace}
+\onehalfspacing
+
+% Цвет шрифта должен быть черным, размер шрифта - не менее 12 пт.
+% Рекомендуемый тип шрифта для основного текста отчета - Times New Roman.
+\RequirePackage{anyfontsize}
+\RequirePackage[fontsize=14pt]{scrextend}
+% Но у Times New Roman нет открытой реализации, так что будет стандартный
+% Или можете попробовать xelatex:
+% \RequirePackage{fontspec}
+% \setmainfont{Times New Roman}
+
+% Текст отчета следует печатать, соблюдая следующие размеры полей:
+% левое - 30 мм, правое - 15 мм, верхнее и нижнее - 20 мм.
+\RequirePackage[
+ a4paper,
+ left=30mm, right=10mm, top=20mm, bottom=20mm,
+ footskip=10mm, % Для расположения номера страницы на 10 мм выше края листа
+ ignoreall,
+ % showframe,
+]{geometry}
+% Ты там пишешь, что правое поле должно быть 15 мм,
+% а потом ставишь его в 10 мм. Почему?
+% А потому что в программе TestVKR проходит только 10 мм, а не 15 мм ¯\_(ツ)_/¯
+
+% Абзацный отступ должен быть одинаковым по всему тексту отчета и равен 1,25 см.
+\setlength{\parindent}{1.25cm}
+
+\RequirePackage{indentfirst} % Отступ первой строки для абзацев
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/02-IU8-construction.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/02-IU8-construction.sty
new file mode 100644
index 0000000000..a8cb987208
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/02-IU8-construction.sty
@@ -0,0 +1,66 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{02-IU8-construction}[2021/03/21 v1.1 Построение отчета]
+
+% 6.2.1 Наименования структурных элементов отчета:
+% "СПИСОК ИСПОЛНИТЕЛЕЙ", % у нас не используется
+% "РЕФЕРАТ", % У нас не используется
+% "СОДЕРЖАНИЕ",
+% "ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ",
+% "ПЕРЕЧЕНЬ СОКРАЩЕНИЙ И ОБОЗНАЧЕНИЙ",
+% "ВВЕДЕНИЕ",
+% "ЗАКЛЮЧЕНИЕ",
+% "СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ",
+% "ПРИЛОЖЕНИЕ"
+% служат заголовками структурных элементов отчета.
+
+% Заголовки структурных элементов следует располагать в середине строки без
+% точки в конце, прописными буквами, не подчеркивая. Каждый структурный элемент
+% и каждый раздел основной части отчета начинают с новой страницы.
+\RequirePackage{titlesec}
+\RequirePackage{titletoc}
+\RequirePackage{chngcntr}
+
+\newcounter{structure}
+\renewcommand{\thestructure}{} % Убрать появление счётчика в содержании
+\titleclass{\structure}{straight}[\section]
+\titleformat{\structure}[hang]{\clearpage\normalfont\bfseries\centering}{}{0em}{}
+\titlespacing*{\structure}{0pt}{0pt}{2\baselineskip}
+\titlecontents{structure}{}{}{}{}
+\renewcommand*\l@structure{\@dottedtocline{0}{0mm}{0em}}
+
+\newcommand{\structurebreak}{\clearpage}
+\newcommand{\sectionbreak}{\clearpage}
+
+% 6.2.2 Основную часть отчета следует делить на разделы, подразделы и пункты.
+% Пункты при необходимости могут делиться на подпункты. Разделы и подразделы
+% отчета должны иметь заголовки. Пункты и подпункты, как правило, заголовков не
+% имеют.
+
+% 6.2.3 Заголовки разделов и подразделов основной части отчета следует начинать
+% с абзацного отступа и размещать после порядкового номера, печатать с
+% прописной буквы, полужирным шрифтом, не подчеркивать, без точки в конце.
+% Пункты и подпункты могут иметь только порядковый номер без заголовка,
+% начинающийся с абзацного отступа.
+\titleformat{\section}[block]{\hspace{\parindent}\normalfont\bfseries}{\thesection}{1em}{}
+\titleformat{\subsection}[block]{\hspace{\parindent}\normalfont\bfseries}{\thesubsection}{1em}{}
+\titleformat{\subsubsection}[block]{\hspace{\parindent}\normalfont\bfseries}{\thesubsubsection}{1em}{}
+\titleformat{\paragraph}[block]{\hspace{\parindent}\normalfont\bfseries}{\theparagraph}{1em}{}
+\titleformat{\subparagraph}[block]{\hspace{\parindent}\normalfont\bfseries}{\thesubparagraph}{1em}{}
+
+\titlespacing*{\section}{0pt}{0pt}{2ex}[2ex]
+\titlespacing*{\subsection}{0pt}{2ex}{2ex}[2ex]
+\titlespacing*{\subsubsection}{0pt}{2ex}{2ex}[2ex]
+\titlespacing*{\paragraph}{0pt}{2ex}{2ex}[2ex]
+\titlespacing*{\subparagraph}{0pt}{2ex}{2ex}[2ex]
+
+% 6.2.4 Если заголовок включает несколько предложений, их разделяют точками.
+% Переносы слов в заголовках не допускаются.
+
+\newcommand{\introduction}{
+ \structure{ВВЕДЕНИЕ}
+}
+
+\newcommand{\conclusion}{
+ \structure{ЗАКЛЮЧЕНИЕ}
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/03-IU8-numbering.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/03-IU8-numbering.sty
new file mode 100644
index 0000000000..2cfb8b4f82
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/03-IU8-numbering.sty
@@ -0,0 +1,17 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{03-IU8-numbering}[2021/03/21 v1.1 Нумерация страниц отчета]
+
+% 6.3.1 Страницы отчета следует нумеровать арабскими цифрами, соблюдая сквозную
+% нумерацию по всему тексту отчета, включая приложения. Номер страницы
+% проставляется в центре нижней части страницы без точки. Приложения, которые
+% приведены в отчете о НИР и имеющие собственную нумерацию, допускается не перенумеровать.
+\pagestyle{plain}
+\pagenumbering{arabic}
+
+% 6.3.2 Титульный лист включают в общую нумерацию страниц отчета. Номер страницы
+% на титульном листе не проставляют.
+
+% 6.3.3 Иллюстрации и таблицы, расположенные на отдельных листах, включают в общую
+% нумерацию страниц отчета. Иллюстрации и таблицы на листе формата А3 учитывают
+% как одну страницу.
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/04-IU8-section-numbering.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/04-IU8-section-numbering.sty
new file mode 100644
index 0000000000..efd706e2d1
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/04-IU8-section-numbering.sty
@@ -0,0 +1,52 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{04-IU8-section-numbering}[2021/03/21 v1.1 Нумерация разделов, подразделов, пунктов, подпунктов и книг отчета]
+
+% 6.4.1 Разделы должны иметь порядковые номера в пределах всего отчета,
+% обозначенные арабскими цифрами без точки и расположенные с абзацного отступа.
+% Подразделы должны иметь нумерацию в пределах каждого раздела. Номер подраздела
+% состоит из номеров раздела и подраздела, разделенных точкой.
+% В конце номера подраздела точка не ставится. Разделы, как и
+% подразделы, могут состоять из одного или нескольких пунктов.
+
+% Это настройка по умолчанию, так что её не меняю
+% Про абзацный отступ учетно в 02-IU8-construction
+
+% 6.4.2 Если отчет не имеет подразделов, то нумерация пунктов в нем должна
+% быть в пределах каждого раздела и номер пункта должен состоять из номеров
+% раздела и пункта, разделенных точкой. В конце номера пункта точка не ставится.
+% Если отчет имеет подразделы, то нумерация пунктов должна быть в пределах
+% подраздела и номер пункта должен состоять
+% из номеров раздела, подраздела и пункта, разделенных точками.
+
+% Это настройка по умолчанию, так что её не меняю
+
+% 6.4.6 Внутри пунктов или подпунктов могут быть приведены перечисления.
+% Перед каждым элементом перечисления следует ставить тире. При необходимости
+% ссылки в тексте отчета на один из элементов перечисления вместо тире ставят
+% строчные буквы русского алфавита со скобкой, начиная с буквы "а" (за
+% исключением букв ё, з, й, о, ч, ъ, ы, ь). Простые перечисления отделяются
+% запятой, сложные - точкой с запятой.
+% При наличии конкретного числа перечислений допускается перед каждым элементом
+% перечисления ставить арабские цифры, после которых ставится скобка.
+\RequirePackage{enumitem}
+\AddEnumerateCounter{\Asbuk}{\@Asbuk}{А}
+\AddEnumerateCounter{\asbuk}{\@asbuk}{а}
+
+\setlist[enumerate]{
+ leftmargin=\parindent+\labelwidth+\labelsep,
+ labelindent=\parindent,
+ align=left,
+ nosep,
+}
+\setlist[itemize]{
+ label=\textendash,
+ leftmargin=\parindent+\labelwidth+\labelsep,
+ labelindent=\parindent,
+ align=left,
+ nosep,
+}
+\setlist[enumerate, 1]{label=\asbuk*)}
+\setlist[enumerate, 2]{label=\arabic*)}
+\setlist[enumerate, 3]{label=\alph*)}
+\setlist[enumerate, 4]{label=\roman*)} \ No newline at end of file
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/05-IU8-figures.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/05-IU8-figures.sty
new file mode 100644
index 0000000000..4875fdec8e
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/05-IU8-figures.sty
@@ -0,0 +1,54 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{05-IU8-figures}[2021/03/21 v1.1 Иллюстрации]
+
+% 6.5.1 Иллюстрации (чертежи, графики, схемы, компьютерные распечатки, диаграммы,
+% фотоснимки) следует располагать в отчете непосредственно после текста отчета,
+% где они упоминаются впервые, или на следующей странице (по возможности ближе к
+% соответствующим частям текста отчета). На все иллюстрации в отчете должны быть
+% даны ссылки. При ссылке необходимо писать слово "рисунок" и его номер,
+% например: "в соответствии с рисунком 2" и т.д.
+\RequirePackage{float}
+\def\fps@figure{H}
+
+% 6.5.2 Чертежи, графики, диаграммы, схемы, помещаемые в отчете, должны
+% соответствовать требованиям стандартов
+% Единой системы конструкторской документации (ЕСКД).
+
+% 6.5.3 Количество иллюстраций должно быть достаточным для пояснения
+% излагаемого текста отчета. Не рекомендуется в отчете о НИР приводить
+% объемные рисунки.
+
+% 6.5.4 Иллюстрации, за исключением иллюстраций, приведенных в приложениях,
+% следует нумеровать арабскими цифрами сквозной нумерацией. Если рисунок один,
+% то он обозначается: Рисунок 1.
+% Пример - Рисунок 1 - Схема прибора
+
+% 6.5.5 Иллюстрации каждого приложения обозначают отдельной нумерацией арабскими
+% цифрами с добавлением перед цифрой обозначения приложения: Рисунок А.3.
+
+% 6.5.6 Допускается нумеровать иллюстрации в пределах раздела отчета.
+% В этом случае номер иллюстрации состоит из номера раздела и порядкового номера
+% иллюстрации, разделенных точкой: Рисунок 2.1.
+
+% 6.5.7 Иллюстрации при необходимости могут иметь наименование и пояснительные
+% данные (подрисуночный текст).
+% Слово "Рисунок", его номер и через тире наименование помещают после
+% пояснительных данных и располагают в центре под
+% рисунком без точки в конце.
+% Пример - Рисунок 2 - Оформление таблицы
+
+% 6.5.8 Если наименование рисунка состоит из нескольких строк, то его следует
+% записывать через один межстрочный интервал. Наименование рисунка приводят с
+% прописной буквы без точки в конце. Перенос слов в наименовании графического
+% материала не допускается.
+
+\RequirePackage{caption} % Настройка подписи
+\captionsetup[figure]{
+ name=Рисунок, % 6.5.7
+ labelsep=endash, % 6.5.7
+ position=below, % 6.5.7
+ justification=centering, % Выравнивание по центру
+ font={stretch=\setspace@singlespace}, % 6.5.8
+ width=0.8\linewidth, % Ограничение по длине, а то будет на всю строку
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/06-IU8-tables.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/06-IU8-tables.sty
new file mode 100644
index 0000000000..28ffc3cd97
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/06-IU8-tables.sty
@@ -0,0 +1,78 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{06-IU8-tables}[2021/03/21 v1.1 Таблицы]
+
+% Пакеты, которые скорее всего пригодятся
+\RequirePackage{tabularx}
+\RequirePackage{longtable}
+\RequirePackage{xltabular}
+\RequirePackage{multirow}
+\RequirePackage{hhline}
+
+% 6.6.1 Цифровой материал должен оформляться в виде таблиц. Таблицы применяют
+% для наглядности и удобства сравнения показателей.
+
+% 6.6.2 Таблицу следует располагать непосредственно после текста, в котором она
+% упоминается впервые, или на следующей странице.
+% На все таблицы в отчете должны быть ссылки. При ссылке следует печатать слово
+% "таблица" с указанием ее номера.
+\RequirePackage{float}
+\def\fps@table{H}
+
+% 6.6.3 Наименование таблицы, при ее наличии, должно отражать ее содержание,
+% быть точным, кратким. Наименование следует помещать над таблицей слева,
+% без абзацного отступа в следующем формате:
+% Таблица Номер таблицы - Наименование таблицы.
+% Наименование таблицы приводят с прописной буквы без точки в конце.
+% Если наименование таблицы занимает две строки и более, то его следует
+% записывать через один межстрочный интервал.
+% Таблицу с большим количеством строк допускается переносить на другую страницу.
+% При переносе части таблицы на другую страницу слово "Таблица", ее номер и
+% наименование указывают один раз слева над первой частью таблицы, а над
+% другими частями также слева пишут слова "Продолжение таблицы" и указывают
+% номер таблицы.
+% При делении таблицы на части допускается ее головку или боковик заменять
+% соответственно номерами граф и строк. При этом нумеруют арабскими цифрами
+% графы и (или) строки первой части таблицы.
+\RequirePackage{caption} % Настройка подписи
+\captionsetup[table]{
+ name=Таблица,
+ labelsep=endash, % Тире
+ position=above,
+ justification=justified, % Выравнивание по ширине
+ singlelinecheck=false,
+ font={stretch=\setspace@singlespace},
+}
+
+% 6.6.4 Таблицы, за исключением таблиц приложений, следует нумеровать
+% арабскими цифрами сквозной нумерацией.
+% Таблицы каждого приложения обозначаются отдельной нумерацией арабскими цифрами
+% с добавлением перед цифрой обозначения приложения. Если в отчете одна таблица,
+% она должна быть обозначена "Таблица 1" или "Таблица А.1" (если она
+% приведена в приложении А).
+% Допускается нумеровать таблицы в пределах раздела при большом объеме отчета.
+% В этом случае номер таблицы состоит из
+% номера раздела и порядкового номера таблицы, разделенных точкой: Таблица 2.3.
+
+% 6.6.5 Заголовки граф и строк таблицы следует печатать с прописной буквы, а
+% подзаголовки граф - со строчной буквы, если они составляют одно предложение с
+% заголовком, или с прописной буквы, если они имеют самостоятельное значение.
+% В конце заголовков и подзаголовков таблиц точки не ставятся. Названия
+% заголовков и подзаголовков таблиц указывают в единственном
+% числе.
+
+% 6.6.6 Таблицы слева, справа, сверху и снизу ограничивают линиями.
+% Разделять заголовки и подзаголовки боковика и граф диагональными линиями не
+% допускается. Заголовки граф выравнивают по центру, а заголовки строк -
+% по левому краю.
+% Горизонтальные и вертикальные линии, разграничивающие строки таблицы,
+% допускается не проводить, если их отсутствие не затрудняет пользование
+% таблицей.
+
+% 6.6.7 Текст, повторяющийся в строках одной и той же графы и состоящий из
+% одиночных слов, заменяют кавычками.
+% Ставить кавычки вместо повторяющихся цифр, буквенно-цифровых обозначений,
+% знаков и символов не допускается.
+% Если текст повторяется, то при первом повторении его заменяют словами
+% "то же", а далее кавычками.
+% В таблице допускается применять размер шрифта меньше, чем в тексте отчета. \ No newline at end of file
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/07-IU8-footnotes.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/07-IU8-footnotes.sty
new file mode 100644
index 0000000000..f7abd6cce9
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/07-IU8-footnotes.sty
@@ -0,0 +1,37 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{07-IU8-footnotes}[2021/03/21 v1.1 Примечания и сноски]
+
+% 6.7.1 Примечания приводят в отчете, если необходимы пояснения или справочные
+% данные к содержанию текста, таблиц или графического материала.
+
+% 6.7.2 Слово "Примечание" следует печатать с прописной буквы с абзацного
+% отступа, не подчеркивая.
+
+% 6.7.3 Примечания следует помещать непосредственно после текстового,
+% графического материала или таблицы, к которым относятся эти примечания.
+% Если примечание одно, то после слова "Примечание" ставится тире и текст
+% примечания печатают с прописной буквы. Одно примечание не нумеруется.
+% Несколько примечаний нумеруют по порядку арабскими цифрами без
+% точки.
+% Примеры
+% 1 Примечание - Применение локально введенных кодов обеспечивает определенный
+% уровень гибкости, который дает возможность проводить улучшения или изменения,
+% сохраняя при этом совместимость с основным набором элементов
+% данных.
+% 2 Примечания
+% 1 К тексту дается... .
+% 2 Дополнительные данные... .
+
+% 6.7.4 При необходимости дополнительного пояснения в отчете допускается
+% использовать примечание, оформленное в виде сноски. Знак сноски ставят без
+% пробела непосредственно после того слова, числа, символа, предложения,
+% к которому дается пояснение. Знак сноски указывается надстрочно
+% арабскими цифрами. Допускается вместо цифр использовать знак звездочка - *.
+% Сноску располагают с абзацного отступа в конце страницы, на которой
+% приведено поясняемое слово (словосочетание или данные). Сноску отделяют от
+% текста короткой сплошной тонкой горизонтальной линией с левой стороны
+% страницы.
+
+
+% Настройки по умолчанию всему этому удовлетворяют \ No newline at end of file
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/08-IU8-formulas.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/08-IU8-formulas.sty
new file mode 100644
index 0000000000..26ec05640d
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/08-IU8-formulas.sty
@@ -0,0 +1,5 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{08-IU8-formulas}[2021/03/21 v1.1 Формулы]
+
+% Настройки по умолчанию в целом соответствуют ГОСТ \ No newline at end of file
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/09-IU8-cites.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/09-IU8-cites.sty
new file mode 100644
index 0000000000..7343648925
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/09-IU8-cites.sty
@@ -0,0 +1,19 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{09-IU8-cites}[2021/03/21 v1.1 Ссылки]
+
+% 6.9.1 В отчете о НИР рекомендуется приводить ссылки на использованные
+% источники. При нумерации ссылок на документы, использованные при составлении
+% отчета, приводится сплошная нумерация для всего текста отчета в целом или для
+% отдельных разделов. Порядковый номер ссылки (отсылки) приводят арабскими
+% цифрами в квадратных скобках в конце текста ссылки. Порядковый номер
+% библиографического описания источника в списке использованных источников
+% соответствует
+% номеру ссылки.
+
+% 6.9.2 Ссылаться следует на документ в целом или на его разделы и приложения.
+
+% 6.9.3 При ссылках на стандарты и технические условия указывают их обозначение,
+% при этом допускается не указывать год их утверждения при условии полного
+% описания стандарта и технических условий в списке использованных источников в
+% соответствии с ГОСТ 7.1.
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/10-IU8-titlepage.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/10-IU8-titlepage.sty
new file mode 100644
index 0000000000..2d52ce93e1
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/10-IU8-titlepage.sty
@@ -0,0 +1,237 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{10-IU8-titlepage}[2021/03/21 v1.1 Титульный лист]
+
+% Поля для заполнения для ВКР
+\def\student#1{\gdef\@student{#1}}
+\def\@student{\@latex@warning@no@line{No \noexpand\student given}}
+
+\def\theme#1{\gdef\@theme{#1}}
+\def\@theme{\@latex@warning@no@line{No \noexpand\theme given}}
+
+\def\group#1{\gdef\@group{#1}}
+\def\@group{\@latex@warning@no@line{No \noexpand\group given}}
+
+\def\supervisor#1{\gdef\@supervisor{#1}}
+\def\@supervisor{\@latex@warning@no@line{No \noexpand\supervisor given}}
+
+\def\researchConsultant#1{\gdef\@researchConsultant{#1}}
+\def\@researchConsultant{\@latex@warning@no@line{No \noexpand\researchConsultant given}}
+
+\def\designConsultant#1{\gdef\@designConsultant{#1}}
+\def\@designConsultant{\@latex@warning@no@line{No \noexpand\designConsultant given}}
+
+\def\technologicalConsultant#1{\gdef\@technologicalConsultant{#1}}
+\def\@technologicalConsultant{\@latex@warning@no@line{No \noexpand\technologicalConsultant given}}
+
+\def\economicsConsultant#1{\gdef\@economicsConsultant{#1}}
+\def\@economicsConsultant{\@latex@warning@no@line{No \noexpand\economicsConsultant given}}
+
+\def\lawsConsultant#1{\gdef\@lawsConsultant{#1}}
+\def\@lawsConsultant{\@latex@warning@no@line{No \noexpand\lawsConsultant given}}
+
+\def\normController#1{\gdef\@normController{#1}}
+\def\@normController{\@latex@warning@no@line{No \noexpand\normController given}}
+
+% Поля для заполнения для НИР
+\def\studentFullName#1{\gdef\@studentFullName{#1}}
+\def\@studentFullName{\@latex@warning@no@line{No \noexpand\studentFullName given}}
+
+\def\profile#1{\gdef\@profile{#1}}
+\def\@profile{\@latex@warning@no@line{No \noexpand\profile given}}
+
+\def\speciality#1{\gdef\@speciality{#1}}
+\def\@speciality{\@latex@warning@no@line{No \noexpand\speciality given}}
+
+\def\specialization#1{\gdef\@specialization{#1}}
+\def\@specialization{\@latex@warning@no@line{No \noexpand\specialization given}}
+
+\def\supervisorWithDegree#1{\gdef\@supervisorWithDegree{#1}}
+\def\@supervisorWithDegree{\@latex@warning@no@line{No \noexpand\supervisorWithDegree given}}
+
+
+\RequirePackage{fancyhdr}
+\fancypagestyle{year}{
+ \fancyfoot[C]{\itshape Москва, \the\year~г.}
+ \renewcommand{\headrulewidth}{0pt}
+ \fancyhead{}
+}
+
+\RequirePackage{tabto}
+\RequirePackage[normalem]{ulem}
+\RequirePackage[usestackEOL]{stackengine}
+\RequirePackage{lineno}
+\RequirePackage{xstring}
+\RequirePackage{ifthen}
+
+\newcommand\makeUlineStack[3][3cm]{
+ \Shortunderstack{
+ \uline{\parbox{#1}{\centering #2}}\\
+ {\fontsize{9pt}{9pt}\selectfont #3}
+ }
+}
+
+\newcommand\makeBMSTUHeader{
+ \noindent\begin{minipage}{0.05\textwidth}
+ \includegraphics[scale=0.4]{inc/bmstu.png}
+ \end{minipage}
+ \hfill
+ \begin{minipage}{0.85\textwidth}\raggedleft
+ \begin{center}
+ \fontsize{10pt}{0.3\baselineskip}\selectfont
+ \textbf{Министерство науки и высшего образования
+ Российской Федерации \\
+ Федеральное государственное бюджетное образовательное
+ учреждение \\
+ высшего образования \\
+ <<Московский государственный технический университет \\
+ имени Н. Э. Баумана \\
+ (национальный исследовательский университет)>> \\
+ (МГТУ им. Н. Э. Баумана)
+ }
+ \end{center}
+ \end{minipage}
+ \begin{center}
+ \fontsize{12pt}{0.1\baselineskip}\selectfont
+ \noindent\makebox[\linewidth]{\rule{\textwidth}{2pt}}
+ \makebox[\linewidth]{\rule{\textwidth}{1pt}}
+ \end{center}
+ \begin{flushleft}
+ \fontsize{12pt}{14pt}\selectfont
+ ФАКУЛЬТЕТ \tabto{3cm} <<Информатика и системы управления>> (ИУ)\\
+ КАФЕДРА \tabto{3cm} <<Информационная безопасность>> (ИУ8)
+ \end{flushleft}
+}
+
+\newcommand\fillingBox[3][\maxlen]{
+ \noindent#2 \hfill \makeUlineStack[2.5cm]{~}{(Подпись, дата)} \quad
+ \makeUlineStack[#1]{#3}{(И. О. Фамилия)}\\
+}
+
+\newcommand\makeDiplomaTheme[1]{
+ \noindent
+ \begin{minipage}{\linewidth}
+ \centering\internallinenumbers\rmfamily\bfseries\fontsize{20pt}{20pt}\selectfont
+ \renewcommand{\makeLineNumber}{\rule[-0.7ex]{\textwidth}{0.4pt}\hss}%
+ #1
+ \end{minipage}
+}
+
+\newlength{\maxlen}
+\newlength{\templen}
+
+\newcommand\CompLen[1]{
+ \settowidth{\templen}{#1}
+ \ifdim\templen>\maxlen
+ \settowidth{\maxlen}{#1}
+ \fi
+}
+
+\newcommand\fillDiplomaTitle{
+ \noindent\begin{center}
+ \centering\bfseries\fontsize{20pt}{25pt}\selectfont
+ РАСЧЁТНО-ПОЯСНИТЕЛЬНАЯ~ЗАПИСКА\\
+ {\fontsize{16pt}{25pt}\bfseries\selectfont К~ВЫПУСКОЙ~КВАЛИФИКАЦИОННОЙ~РАБОТЕ}\\
+ {\fontsize{16pt}{25pt}\bfseries\selectfont НА~ТЕМУ:}
+ \end{center}
+
+ \vfill
+
+ \makeDiplomaTheme{\@theme}
+
+ \vfill
+
+ {\fontsize{12pt}{15pt}\selectfont
+
+ \fillingBox{Студент \hfill \makeUlineStack[2cm]{\@group}{(Группа)}}{\@student}
+
+ \fillingBox{Руководитель ВКР}{\@supervisor}
+
+ \fillingBox{Консультант по исследовательской части}{\@researchConsultant}
+
+ \fillingBox{Консультант по конструкторской части}{\@designConsultant}
+
+ \fillingBox{Консультант по технологической части}{\@technologicalConsultant}
+
+ \fillingBox{Консультант по организационно-\\экономической части}{\@economicsConsultant}
+
+ \fillingBox{Консультант по организационно-\\правовому обеспечению ИБ}{\@lawsConsultant}
+
+ \fillingBox{Нормоконтролер}{\@normController}
+ }
+}
+
+\newcommand\makeResearchTheme[1]{
+ \noindent на тему \uline{#1}
+}
+
+\newcommand\fillResearchTitle{
+ \noindent\begin{center}
+ \centering\bfseries\fontsize{20pt}{25pt}\selectfont
+ Отчёт\\
+ {\fontsize{16pt}{25pt}\bfseries\selectfont по научно-исследовательской работе студента}\\
+ \end{center}
+
+ \vfill
+
+ \makeResearchTheme{\@theme}
+
+ \vfill
+ {
+ \setlength{\tabcolsep}{0pt}
+ \renewcommand{\arraystretch}{1.5}
+ \noindent \begin{tabular}{ll}
+ \noindent ФИО студента: & \@studentFullName \\
+ \noindent Группа: & \@group \\
+ \noindent Специальность: & \@speciality \\
+ \noindent Специализация: & \@specialization \\
+ \end{tabular}
+ }
+
+ \bigskip
+
+ \noindent Научный руководитель НИРС: \@supervisorWithDegree
+
+ \bigskip
+
+ \noindent Работа выполнена: \hfill \makeUlineStack[2.5cm]{~}{Дата} \quad \makeUlineStack[2.5cm]{~}{Подпись} \quad \makeUlineStack[4cm]{\@student}{(И. О. Фамилия)}
+
+ \bigskip
+
+ \noindent Допуск к защите: \hfill \makeUlineStack[2.5cm]{~}{Дата} \quad \makeUlineStack[2.5cm]{~}{Подпись} \quad \makeUlineStack[4cm]{\@supervisor}{(И. О. Фамилия)}
+
+ \vfill
+ {
+ \setlength{\tabcolsep}{0pt}
+ \renewcommand{\arraystretch}{1.5}
+ \noindent \begin{tabular}{ll}
+ \noindent Дата защиты НИРС: & \makeUlineStack[6cm]{~}{~} \\
+ \noindent Результаты защиты: & \makeUlineStack[6cm]{~}{~} \\
+ \end{tabular}
+ }
+
+ \vfill
+
+ \clearpage
+}
+
+\renewcommand\maketitle{
+ \begin{titlepage}
+ \settowidth{\maxlen}{\@student}
+ \CompLen{\@student}
+ \CompLen{\@supervisor}
+ \CompLen{\@researchConsultant}
+ \CompLen{\@designConsultant}
+ \CompLen{\@technologicalConsultant}
+ \CompLen{\@economicsConsultant}
+ \CompLen{\@lawsConsultant}
+ \CompLen{\@normController}
+
+ \thispagestyle{year}
+ \makeBMSTUHeader
+
+ \fillTitle
+
+ \clearpage
+ \end{titlepage}
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/11-IU8-performers.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/11-IU8-performers.sty
new file mode 100644
index 0000000000..5fab88f372
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/11-IU8-performers.sty
@@ -0,0 +1,5 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{11-IU8-performers}[2021/03/21 v1.1 Список исполниетелей]
+
+% Т.к. у нас это не используется, я оставляю это пустымы \ No newline at end of file
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/12-IU8-abstract.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/12-IU8-abstract.sty
new file mode 100644
index 0000000000..ab068e8c49
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/12-IU8-abstract.sty
@@ -0,0 +1,27 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{12-IU8-abstract}[2021/03/21 v1.1 Реферат]
+
+% 6.12.1 Сведения об общем объеме отчета, количестве книг отчета, иллюстраций,
+% таблиц, использованных источников, приложений являются первой компонентой
+% реферата и располагаются с абзацного отступа, в строку, через запятые.
+
+% 6.12.2 Ключевые слова являются второй компонентой реферата. Они приводятся в
+% именительном падеже и печатаются прописными буквами, в строку, через запятые,
+% без абзацного отступа и переноса слов, без точки в конце перечня.
+
+% 6.12.3 Текст реферата помещается с абзацного отступа после ключевых слов.
+% Для выделения структурных частей реферата в соответствии с 5.3.2.2
+% используются абзацные отступы.
+
+\RequirePackage{lastpage}
+
+\renewcommand{\abstract}{
+ \structure{РЕФЕРАТ}
+
+ Отчёт содержит \pageref{LastPage} стр.\ifnum
+ \TotalValue{totalfigures}>0, \TotalValue{totalfigures} рис.\fi\ifnum
+ \TotalValue{totaltables}>0, \TotalValue{totaltables} табл.\fi\ifnum
+ \TotalValue{totalcites}>0, \TotalValue{totalcites} источн.\fi\ifnum
+ \TotalValue{totalappendices}>0, \TotalValue{totalappendices} прил.\fi
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/13-IU8-contents.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/13-IU8-contents.sty
new file mode 100644
index 0000000000..3fa1170610
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/13-IU8-contents.sty
@@ -0,0 +1,29 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{13-IU8-contents}[2021/03/21 v1.1 Содержание]
+
+% Каждую запись содержания оформляют как отдельный абзац, выровненный влево.
+% Номера страниц указывают выровненными по правому краю поля и соединяют
+% с наименованием структурного элемента или раздела отчета посредством
+% отточия.
+
+\renewcommand\tableofcontents{
+ \structure*{СОДЕРЖАНИЕ}
+ \@starttoc{toc}
+}
+
+\renewcommand*\l@section{\@dottedtocline{0}{0mm}{2em}}
+\renewcommand*\l@structure{\@dottedtocline{0}{0mm}{0em}}
+% ГОСТ 7.32-2017. Пункт 5.4.1:
+% Обозначения подразделов приводят после абзацного отступа,
+% равного двум знакам, относительно обозначения разделов.
+\renewcommand*\l@subsection{\@dottedtocline{1}{5mm}{3em}}
+% ГОСТ 7.32-2017. Пункт 5.4.1:
+% Обозначения пунктов приводят после абзацного отступа,
+% равного четырем знакам, относительно обозначения разделов.
+\renewcommand*\l@subsubsection{\@dottedtocline{2}{10mm}{4em}}
+% Остальное - индуктивно
+\renewcommand*\l@paragraph{\@dottedtocline{3}{15mm}{5em}}
+
+\setcounter{secnumdepth}{5} % Глубина заголовков - до пятого уровня
+\setcounter{tocdepth}{2} % Глубина содержания - до второго уровня
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/14-IU8-terms-and-definitions.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/14-IU8-terms-and-definitions.sty
new file mode 100644
index 0000000000..0d19fcc37d
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/14-IU8-terms-and-definitions.sty
@@ -0,0 +1,35 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{14-IU8-terms-and-definitions}[2021/03/21 v1.1 Содержание]
+
+\RequirePackage[
+ acronym,
+ automake,
+ nopostdot,
+ xindy={glsnumbers=false, language=russian},
+]{glossaries}
+\RequirePackage[abbreviations]{glossaries-extra}
+
+\GlsSetXdyCodePage{utf8}
+
+\renewcommand{\glossarysection}[2][]{}
+
+\newglossarystyle{terms}{
+ \renewenvironment{theglossary}{}{}
+ \renewcommand*{\glossentry}[2]{
+ \noindent\glstarget{##1}{\glossentryname{##1}}~\textemdash~\glossentrydesc{##1}
+ \newline
+ }
+ \renewcommand*{\glsgroupskip}{}%
+}
+
+\newcommand{\termsanddefenitions}{
+ \structure{ТЕРМИНЫ~И~ОПРЕДЕЛЕНИЯ}
+
+ \termsAndDefinitionsLine
+
+ \printunsrtglossary[
+ style=terms,
+ nonumberlist
+ ]
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/15-IU8-list-of-abbreviations.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/15-IU8-list-of-abbreviations.sty
new file mode 100644
index 0000000000..2e7931ccb7
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/15-IU8-list-of-abbreviations.sty
@@ -0,0 +1,29 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{15-IU8-list-of-abbreviations}[2021/03/21 v1.1 Содержание]
+
+\RequirePackage[abbreviations]{glossaries-extra}
+
+\GlsSetXdyCodePage{utf8}
+
+\renewcommand{\glossarysection}[2][]{}
+
+\newglossarystyle{definitions}{
+ \renewenvironment{theglossary}{}{}
+ \renewcommand*{\glossentry}[2]{
+ \noindent\glstarget{##1}{\glossentryname{##1}}~\textemdash~\glossentrydesc{##1}
+ \newline
+ }
+ \renewcommand*{\glsgroupskip}{}
+}
+
+\newcommand{\listofabbreviations}{
+ \structure{ПЕРЕЧЕНЬ~СОКРАЩЕНИЙ~И~ОБОЗНАЧЕНИЙ}
+
+ \abbreviationsLine
+
+ \printunsrtglossary[
+ style=definitions,
+ type=\acronymtype
+ ]
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/16-IU8-references.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/16-IU8-references.sty
new file mode 100644
index 0000000000..6d441e098c
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/16-IU8-references.sty
@@ -0,0 +1,18 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{16-IU8-references}[2021/03/21 v1.1 Список использованных источников]
+
+% Сведения об источниках следует располагать в порядке появления ссылок на
+% источники в тексте отчета и нумеровать арабскими цифрами с точкой и печатать
+% с абзацного отступа.
+\usepackage[
+ backend=biber,
+ style=gost-numeric,
+ sorting=none,
+ % refsection=structure,
+ % sorting=ynt,
+]{biblatex}
+\defbibheading{bibliography}[СПИСОК~ИСПОЛЬЗОВАННЫХ~ИСТОЧНИКОВ]{\structure{#1}}
+\addto{\captionsrussian}{%
+ \renewcommand{\contentsname}{СОДЕРЖАНИЕ}
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/17-IU8-appendices.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/17-IU8-appendices.sty
new file mode 100644
index 0000000000..58556e4987
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/17-IU8-appendices.sty
@@ -0,0 +1,25 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{17-IU8-appendices}[2021/03/21 v1.1 Приложения]
+
+\newcommand{\appendixsection}[1]{
+ \stepcounter{apps}
+ \section*{\Asbuk{apps}}
+ \begin{center}
+ \bfseries #1
+ \end{center}
+ \addcontentsline{toc}{section}{ПРИЛОЖЕНИЕ~\Asbuk{apps}~{#1}}
+}
+
+\renewcommand{\appendix}{
+ \renewcommand\section{\clearpage\@startsection{section}{1}{0pt}{1em}{1em}{\bfseries\centering ПРИЛОЖЕНИЕ~}}
+ \setcounter{section}{0}
+ \setcounter{figure}{0}
+ \setcounter{table}{0}
+ \setcounter{equation}{0}
+ \setcounter{lstlisting}{0}
+ \renewcommand\thefigure{\Asbuk{apps}.\arabic{figure}}
+ \renewcommand\thetable{\Asbuk{apps}.\arabic{table}}
+ \renewcommand\theequation{\Asbuk{apps}.\arabic{equation}}
+ \renewcommand\thelstlisting{\Asbuk{apps}.\arabic{lstlisting}}
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/18-IU8-extra.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/18-IU8-extra.sty
new file mode 100644
index 0000000000..6548337ceb
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/18-IU8-extra.sty
@@ -0,0 +1,25 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{18-IU8-extra}[2021/03/21 v1.1 Разные улучшения]
+
+\RequirePackage{graphicx}
+
+\RequirePackage[all, defaultlines=4]{nowidow} % Запрет "висячих" слов
+
+\sloppy % Запретить выход текста за поля
+
+\RequirePackage{bookmark}
+\def\toclevel@structure{1} % Для правильного отображения в содержании pdf
+
+\hypersetup{
+ colorlinks=true,
+ unicode=true,
+ urlcolor=black,
+ linkcolor=black,
+ anchorcolor=black,
+ citecolor=black,
+ menucolor=black,
+ filecolor=black,
+} % Кликабельные ссылки в pdf
+
+\hbadness=10000
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/19-IU8-counters.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/19-IU8-counters.sty
new file mode 100644
index 0000000000..f0eb7762d1
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/19-IU8-counters.sty
@@ -0,0 +1,22 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{19-IU8-counters}[2021/03/21 v1.1 Счётчики]
+
+\RequirePackage{calc}
+\RequirePackage{xassoccnt}
+\RequirePackage{totcount}
+
+\NewTotalDocumentCounter{totalfigures}
+\DeclareAssociatedCounters{figure}{totalfigures}
+\NewTotalDocumentCounter{totaltables}
+\DeclareAssociatedCounters{table}{totaltables}
+
+\RequirePackage{totcount}
+\newtotcounter{citenum}
+\AtEveryBibitem{\stepcounter{citenum}}
+\NewTotalDocumentCounter{totalcites}
+\DeclareAssociatedCounters{citenum}{totalcites}
+
+\newcounter{apps}
+\NewTotalDocumentCounter{totalappendices}
+\DeclareAssociatedCounters{apps}{totalappendices}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/20-IU8-listing.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/20-IU8-listing.sty
new file mode 100644
index 0000000000..e0e7f96251
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/20-IU8-listing.sty
@@ -0,0 +1,38 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{20-IU8-listing}[2021/03/21 v1.1 Листинги]
+
+\RequirePackage{listings}
+\RequirePackage{xcolor}
+
+% http://latexcolor.com/
+\definecolor{seashell}{rgb}{1.0, 0.96, 0.93}
+
+\lstdefinestyle{IU8}{
+ frame=single,
+ backgroundcolor=\color{seashell},
+ commentstyle=\color{blue},
+ keywordstyle=\color{magenta},
+ basicstyle=\ttfamily\footnotesize,
+ breakatwhitespace=false,
+ breaklines=true,
+ captionpos=tl,
+ keepspaces=false,
+ showspaces=false,
+ showstringspaces=false,
+ showtabs=false,
+ extendedchars=\true,
+ tabsize=2,
+}
+\lstset{style=IU8}
+
+\DeclareCaptionFormat{listing}{#1#2#3}
+\captionsetup[lstlisting]{
+ format=listing,
+ singlelinecheck=false,
+ labelsep=endash,
+}
+
+\newcommand{\listing}[2][]{%
+ \lstinputlisting[caption={\texttt{\detokenize{#2}}},#1]{#2}%
+}
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/21-IU8-math.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/21-IU8-math.sty
new file mode 100644
index 0000000000..13b0e75ab1
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/21-IU8-math.sty
@@ -0,0 +1,11 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{21-IU8-math}[2021/03/21 v1.1 Математика]
+
+\RequirePackage{amsthm}
+\theoremstyle{definition}
+\newtheorem{definition}{Определение}[section]
+\newtheorem{theorem}{Теорема}[section]
+\newtheorem{corollary}{Следствие}[theorem]
+\newtheorem{lemma}{Лемма}[section]
+\newtheorem{example}{Пример}[section]
diff --git a/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/22-IU8-algorithms.sty b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/22-IU8-algorithms.sty
new file mode 100644
index 0000000000..9733ec195e
--- /dev/null
+++ b/macros/latex/contrib/bmstu-iu8/bmstu-iu8/styles/22-IU8-algorithms.sty
@@ -0,0 +1,26 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{22-IU8-algorithms}[2021/03/21 v1.1 Алгоритмы]
+
+\RequirePackage[linesnumbered,boxruled]{algorithm2e}
+\SetAlCapSty{}
+
+% Перевод плагина
+\SetKwInput{KwData}{Исходные параметры}
+\SetKwInput{KwResult}{Результат}
+\SetKwInput{KwIn}{Входные данные}
+\SetKwInput{KwOut}{Выходные данные}
+\SetKwIF{If}{ElseIf}{Else}{если}{тогда}{иначе если}{иначе}{конец условия}
+\SetKwFor{While}{до тех пор, пока}{выполнять}{конец цикла}
+\SetKw{KwTo}{от}
+\SetKw{KwRet}{возвратить}
+\SetKw{Return}{возвратить}
+\SetKwBlock{Begin}{начало блока}{конец блока}
+\SetKwSwitch{Switch}{Case}{Other}{Проверить значение}{и выполнить}{вариант}{в противном случае}{конец варианта}{конец проверки значений}
+\SetKwFor{For}{цикл}{выполнять}{конец цикла}
+\SetKwFor{ForEach}{для каждого}{выполнять}{конец цикла}
+\SetKwRepeat{Repeat}{повторять}{до тех пор, пока}
+\SetAlgorithmName{Алгоритм}{алгоритм}{Список алгоритмов}
+\SetAlgoCaptionSeparator{~---}
+% \SetAlgoCaptionLayout{centerline}
+\renewcommand{\@algocf@capt@plain}{above}