graduation-work/main.tex

399 lines
12 KiB
TeX
Raw Normal View History

2024-06-26 15:32:26 +04:00
\documentclass[
% Размер страницы
a4paper,
% Отключение пустых страниц между главами
openany,
% Базовый размер шрифта в документе
fontsize=14bp
]{book}
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Зависимости >>
% Ссылки в PDF
\usepackage[bookmarks=true,unicode]{hyperref}
% Настройка заголовков изображений и таблиц
2024-06-26 14:27:25 +04:00
\usepackage{caption}
2024-06-26 15:32:26 +04:00
% Настройка межстрочного отступа
\usepackage{setspace}
% Преобразования регистра текста
2024-06-26 14:27:25 +04:00
\usepackage{textcase}
2024-06-26 15:32:26 +04:00
% Отступ для первой строки абзаца
\usepackage{indentfirst}
% Сложные таблицы
2024-06-26 14:27:25 +04:00
\usepackage{multirow}
2024-06-26 15:32:26 +04:00
% Зависимости <<
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Шрифты >>
\usepackage{tempora}
\usepackage{newtxmath}
\usepackage[T1,T2A]{fontenc}
\usepackage{scrextend}
\usepackage[utf8x]{inputenc}
\usepackage[russian]{babel}
% Команда для получения размера шрифта
% \makeatletter
% \newcommand\thefontsize[1]{{#1 The current font size is: \f@size pt\par}}
% \makeatother
% Как это использовать:
% \thefontsize\tiny
% \thefontsize\scriptsize
% \thefontsize\footnotesize
% \thefontsize\small
% \thefontsize\normalsize
% \thefontsize\large
% \thefontsize\Large
% \thefontsize\LARGE
% \thefontsize\huge
% \thefontsize\Huge
% Шрифты <<
% Параметры страницы >>
\usepackage[tmargin=20mm, lmargin=30mm, rmargin=10mm, bmargin=25mm]{geometry}
\oddsidemargin=0.0in
\evensidemargin=0.0in
% Параметры страницы <<
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Изображения >>
\usepackage{graphicx}
% Каталог с изображениями
\graphicspath{{images/}}
% подписи к рисункам в русской типографской традиции
\captionsetup[figure]{
labelsep=period,
justification=centering,
singlelinecheck=false
}
2024-06-26 14:27:25 +04:00
% коэффициент масштабирования рисунков для всего документа
\usepackage{xfp}
2024-06-26 15:32:26 +04:00
\newcommand{\scalefactor}{0.65}
2024-06-26 14:27:25 +04:00
\newcommand{\scalefactorx}[1]{\fpeval{\scalefactor+#1}}
2024-06-26 15:32:26 +04:00
% Изображения <<
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Таблицы >>
\usepackage{tabu}
2024-06-26 14:27:25 +04:00
% уменьшение отступов перед и после table
\BeforeBeginEnvironment{table}{\vskip-0.3ex}
\AfterEndEnvironment{table}{\vskip-0.3ex}
% кастомизация размера шрифта для longtabu
\let\oldlongtabu\longtabu
\renewcommand{\longtabu}{\normalsize\oldlongtabu}
2024-06-26 15:32:26 +04:00
% подписи к таблицам в русской типографской традиции
\DeclareCaptionFormat{GOSTtable}{#2#1\\#3}
\DeclareCaptionLabelSeparator{fill}{\hfill}
\DeclareCaptionLabelFormat{fullparents}{\bothIfFirst{#1}{~}#2}
\captionsetup[table]{
format=GOSTtable,
labelformat=fullparents,
labelsep=fill,
textfont=bf,
justification=centering,
singlelinecheck=false
}
% Таблицы <<
% Списки >>
\usepackage{enumitem}
% отключение интервала между элементами списков
\setlist{noitemsep, topsep=0pt, leftmargin=\parindent}
% Списки <<
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Заголовки >>
\usepackage{titlesec}
% кастомизация заголовков
\titleformat{\chapter}
{\filcenter\bfseries\MakeTextUppercase}
{\thechapter}
{8pt}
{}
\titleformat{\section}
{\bfseries}
{\thesection}
{1em}{}
\titleformat{\subsection}
{\bfseries\itshape}
{\thesubsection}
{1em}{}
\titleformat{\subsubsection}
{\itshape}
{\thesubsubsection}
{1em}{}
% настройка вертикальных и горизонтальных отступов заголовков
\titlespacing*{\chapter}{0pt}{-30pt}{8pt}
\titlespacing*{\section}{\parindent}{24pt}{*1}
\titlespacing*{\subsection}{\parindent}{12pt}{*1}
\titlespacing*{\subsubsection}{\parindent}{12pt}{*1}
% Заголовки >>
% Список литературы >>
% Отключение интервала между элементами списка библиографии
\let\oldthebibliography\thebibliography
\renewcommand\thebibliography[1]{
\oldthebibliography{#1}
\setlength{\parskip}{0pt}
\setlength{\itemsep}{0pt}
}
% Смена стиля нумерации списка литературы
\makeatletter
\renewcommand{\@biblabel}[1]{#1.\hfill}
\makeatother
% Список литературы <<
% Листинги >>
\usepackage{listings}
2024-06-26 14:27:25 +04:00
\lstset{
2024-06-26 15:32:26 +04:00
literate={а}{{\selectfont\char224}}1
{б}{{\selectfont\char225}}1
{в}{{\selectfont\char226}}1
{г}{{\selectfont\char227}}1
{д}{{\selectfont\char228}}1
{е}{{\selectfont\char229}}1
{ё}{{\"e}}1
{ж}{{\selectfont\char230}}1
{з}{{\selectfont\char231}}1
{и}{{\selectfont\char232}}1
{й}{{\selectfont\char233}}1
{к}{{\selectfont\char234}}1
{л}{{\selectfont\char235}}1
{м}{{\selectfont\char236}}1
{н}{{\selectfont\char237}}1
{о}{{\selectfont\char238}}1
{п}{{\selectfont\char239}}1
{р}{{\selectfont\char240}}1
{с}{{\selectfont\char241}}1
{т}{{\selectfont\char242}}1
{у}{{\selectfont\char243}}1
{ф}{{\selectfont\char244}}1
{х}{{\selectfont\char245}}1
{ц}{{\selectfont\char246}}1
{ч}{{\selectfont\char247}}1
{ш}{{\selectfont\char248}}1
{щ}{{\selectfont\char249}}1
{ъ}{{\selectfont\char250}}1
{ы}{{\selectfont\char251}}1
{ь}{{\selectfont\char252}}1
{э}{{\selectfont\char253}}1
{ю}{{\selectfont\char254}}1
{я}{{\selectfont\char255}}1
{А}{{\selectfont\char192}}1
{Б}{{\selectfont\char193}}1
{В}{{\selectfont\char194}}1
{Г}{{\selectfont\char195}}1
{Д}{{\selectfont\char196}}1
{Е}{{\selectfont\char197}}1
{Ё}{{\"E}}1
{Ж}{{\selectfont\char198}}1
{З}{{\selectfont\char199}}1
{И}{{\selectfont\char200}}1
{Й}{{\selectfont\char201}}1
{К}{{\selectfont\char202}}1
{Л}{{\selectfont\char203}}1
{М}{{\selectfont\char204}}1
{Н}{{\selectfont\char205}}1
{О}{{\selectfont\char206}}1
{П}{{\selectfont\char207}}1
{Р}{{\selectfont\char208}}1
{С}{{\selectfont\char209}}1
{Т}{{\selectfont\char210}}1
{У}{{\selectfont\char211}}1
{Ф}{{\selectfont\char212}}1
{Х}{{\selectfont\char213}}1
{Ц}{{\selectfont\char214}}1
{Ч}{{\selectfont\char215}}1
{Ш}{{\selectfont\char216}}1
{Щ}{{\selectfont\char217}}1
{Ъ}{{\selectfont\char218}}1
{Ы}{{\selectfont\char219}}1
{Ь}{{\selectfont\char220}}1
{Э}{{\selectfont\char221}}1
{Ю}{{\selectfont\char222}}1
{Я}{{\selectfont\char223}}1,
extendedchars=\true,
tabsize=4,
gobble=4,
keepspaces=true,
basicstyle=\normalsize\ttfamily,
breaklines=true,
columns=fullflexible,
}
\lstdefinestyle{Inline} % \- символ переноса в lstlinline
{
literate={\\-}{}{0\discretionary{-}{}{}}
}
\newcommand{\code}{
\lstinline[
style=Inline,
breakatwhitespace=true,
keepspaces=true,
extendedchars=\true,
columns=fullflexible,
literate={а}{{\selectfont\char224}}1
2024-06-26 14:27:25 +04:00
{б}{{\selectfont\char225}}1
{в}{{\selectfont\char226}}1
{г}{{\selectfont\char227}}1
{д}{{\selectfont\char228}}1
{е}{{\selectfont\char229}}1
{ё}{{\"e}}1
{ж}{{\selectfont\char230}}1
{з}{{\selectfont\char231}}1
{и}{{\selectfont\char232}}1
{й}{{\selectfont\char233}}1
{к}{{\selectfont\char234}}1
{л}{{\selectfont\char235}}1
{м}{{\selectfont\char236}}1
{н}{{\selectfont\char237}}1
{о}{{\selectfont\char238}}1
{п}{{\selectfont\char239}}1
{р}{{\selectfont\char240}}1
{с}{{\selectfont\char241}}1
{т}{{\selectfont\char242}}1
{у}{{\selectfont\char243}}1
{ф}{{\selectfont\char244}}1
{х}{{\selectfont\char245}}1
{ц}{{\selectfont\char246}}1
{ч}{{\selectfont\char247}}1
{ш}{{\selectfont\char248}}1
{щ}{{\selectfont\char249}}1
{ъ}{{\selectfont\char250}}1
{ы}{{\selectfont\char251}}1
{ь}{{\selectfont\char252}}1
{э}{{\selectfont\char253}}1
{ю}{{\selectfont\char254}}1
{я}{{\selectfont\char255}}1
{А}{{\selectfont\char192}}1
{Б}{{\selectfont\char193}}1
{В}{{\selectfont\char194}}1
{Г}{{\selectfont\char195}}1
{Д}{{\selectfont\char196}}1
{Е}{{\selectfont\char197}}1
{Ё}{{\"E}}1
{Ж}{{\selectfont\char198}}1
{З}{{\selectfont\char199}}1
{И}{{\selectfont\char200}}1
{Й}{{\selectfont\char201}}1
{К}{{\selectfont\char202}}1
{Л}{{\selectfont\char203}}1
{М}{{\selectfont\char204}}1
{Н}{{\selectfont\char205}}1
{О}{{\selectfont\char206}}1
{П}{{\selectfont\char207}}1
{Р}{{\selectfont\char208}}1
{С}{{\selectfont\char209}}1
{Т}{{\selectfont\char210}}1
{У}{{\selectfont\char211}}1
{Ф}{{\selectfont\char212}}1
{Х}{{\selectfont\char213}}1
{Ц}{{\selectfont\char214}}1
{Ч}{{\selectfont\char215}}1
{Ш}{{\selectfont\char216}}1
{Щ}{{\selectfont\char217}}1
{Ъ}{{\selectfont\char218}}1
{Ы}{{\selectfont\char219}}1
{Ь}{{\selectfont\char220}}1
{Э}{{\selectfont\char221}}1
{Ю}{{\selectfont\char222}}1
{Я}{{\selectfont\char223}}1,
2024-06-26 15:32:26 +04:00
]
2024-06-26 14:27:25 +04:00
}
2024-06-26 15:32:26 +04:00
% Счетчик для листингов
\newcounter{lis}[chapter]
\renewcommand{\thelis}{\thechapter.\arabic{lis}}
\newcommand{\li}{\par\refstepcounter{lis}
{\vspace{0.3cm}\noindent\textbf{Листинг}\,
{\bf\arabic{chapter}.\arabic{lis}.\quad}}}
% Листинги <<
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Запрет висячих строк >>
2024-06-26 14:27:25 +04:00
\clubpenalty=10000
\widowpenalty=10000
\hyphenpenalty=500
2024-06-26 15:32:26 +04:00
% Запрет висячих строк <<
% Колонтитулы >>
% \usepackage{fancyhdr}
% \renewcommand{\chaptermark}[1]{\markboth{\thechapter.\:#1}{}}
% \renewcommand{\sectionmark}[1]{\markright{\thesection.\:#1}}
% Верхние колонтитулы
% \lhead[\fancyplain{}{\bfseries\leftmark}]
% {\fancyplain{}{}}
% \rhead[\fancyplain{}{}]
% {\fancyplain{}{\bfseries\rightmark}}
% Нижние колонтитулы
% \lfoot[\fancyplain{}{\bfseries\thepage}]
% {\fancyplain{}{}}
% \rfoot[\fancyplain{}{}]
% {\fancyplain{}{\bfseries\thepage}}
% \cfoot{}
% Как использовать:
% \pagestyle{fancyplain}
% Колонтитулы <<
% Предметный указатель >>
% \usepackage{makeidx}
% \makeindex
% \newcommand{\indexentry}[2]{\item #1 #2}
% Предметный указатель <<
2024-06-26 14:27:25 +04:00
\begin{document}
2024-06-26 15:32:26 +04:00
\normalsize
\frontmatter
% Если вставите сюда \include{titlepage} и др.,
% то здесь будет идти отдельная нумерация страниц римскими цифрами
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
\mainmatter
% Пустой стилей
\pagestyle{empty}
% Титульная страница
\include{titlepage}
2024-06-26 14:27:25 +04:00
2024-06-26 15:32:26 +04:00
% Вторая страница с выходной информацией (для автореферата)
% \include{secondpage}
% ОСНОВНАЯ ЧАСТЬ РАБОТЫ
% Простой стиль
2024-06-26 14:27:25 +04:00
\pagestyle{plain}
2024-06-26 15:32:26 +04:00
% Оглавление
\tableofcontents
% Полуторный интервал
\onehalfspacing
% Список сокращений
\include{vocabulary}
% Введение
\include{introduction}
% Глава 1
2024-06-26 14:27:25 +04:00
\include{chapter1}
2024-06-26 15:32:26 +04:00
% Глава 2
2024-06-26 14:27:25 +04:00
\include{chapter2}
2024-06-26 15:32:26 +04:00
% Глава 3
2024-06-26 14:27:25 +04:00
\include{chapter3}
2024-06-26 15:32:26 +04:00
% Глава 4
2024-06-26 14:27:25 +04:00
\include{chapter4}
2024-06-26 15:32:26 +04:00
% Глава 5
\include{chapter5}
% Глава 6
\include{chapter6}
% Заключение
\include{conclusion}
% ДОПОЛНИТЕЛЬНАЯ ЧАСТЬ РАБОТЫ
\backmatter
% Одинарный интервал
\singlespace
% Список литературы
% Изменить название раздела со списком литературы
% изначально --- Литература
\renewcommand{\bibname}{Библиографический список}
\include{references}
% Предметный указатель
%\printindex
%\begin{theindex}
%\input{book-index.tex}
2024-06-26 14:27:25 +04:00
%\end{theindex}
2024-06-26 15:32:26 +04:00
% Приложения
%\appendix
%\include{appendix}
% Последняя страницы с выходной информацией (для автореферата)
% \pagestyle{empty}
% \include{lastpage}
\end{document}