|
|
%%% Переопределение именований, если иначе не сработает %%%
|
|
|
%\gappto\captionsrussian{
|
|
|
% \renewcommand{\chaptername}{Глава}
|
|
|
% \renewcommand{\appendixname}{Приложение} % (ГОСТ Р 7.0.11-2011, 5.7)
|
|
|
%}
|
|
|
|
|
|
%%% Изображения %%%
|
|
|
\graphicspath{{images/}{Dissertation/images/}} % Пути к изображениям
|
|
|
|
|
|
%%% Интервалы %%%
|
|
|
%% По ГОСТ Р 7.0.11-2011, пункту 5.3.6 требуется полуторный интервал
|
|
|
%% Реализация средствами класса (на основе setspace) ближе к типографской классике.
|
|
|
%% И правит сразу и в таблицах (если со звёздочкой)
|
|
|
%\DoubleSpacing* % Двойной интервал
|
|
|
\OnehalfSpacing* % Полуторный интервал
|
|
|
%\setSpacing{1.42} % Полуторный интервал, подобный Ворду (возможно, стоит включать вместе с предыдущей строкой)
|
|
|
|
|
|
%%% Макет страницы %%%
|
|
|
% Выставляем значения полей (ГОСТ 7.0.11-2011, 5.3.7)
|
|
|
\geometry{a4paper, top=2cm, bottom=2cm, left=2.5cm, right=1cm, nofoot, nomarginpar} %, heightrounded, showframe
|
|
|
\setlength{\topskip}{0pt} %размер дополнительного верхнего поля
|
|
|
\setlength{\footskip}{12.3pt} % снимет warning, согласно https://tex.stackexchange.com/a/334346
|
|
|
|
|
|
%%% Выравнивание и переносы %%%
|
|
|
%% http://tex.stackexchange.com/questions/241343/what-is-the-meaning-of-fussy-sloppy-emergencystretch-tolerance-hbadness
|
|
|
%% http://www.latex-community.org/forum/viewtopic.php?p=70342#p70342
|
|
|
\tolerance 1414
|
|
|
\hbadness 1414
|
|
|
\emergencystretch 1.5em % В случае проблем регулировать в первую очередь
|
|
|
\hfuzz 0.3pt
|
|
|
\vfuzz \hfuzz
|
|
|
%\raggedbottom
|
|
|
%\sloppy % Избавляемся от переполнений
|
|
|
\clubpenalty=10000 % Запрещаем разрыв страницы после первой строки абзаца
|
|
|
\widowpenalty=10000 % Запрещаем разрыв страницы после последней строки абзаца
|
|
|
\brokenpenalty=4991 % Ограничение на разрыв страницы, если строка заканчивается переносом
|
|
|
|
|
|
%%% Блок управления параметрами для выравнивания заголовков в тексте %%%
|
|
|
\newlength{\otstuplen}
|
|
|
\setlength{\otstuplen}{\theotstup\parindent}
|
|
|
\ifnumequal{\value{headingalign}}{0}{% выравнивание заголовков в тексте
|
|
|
\newcommand{\hdngalign}{\centering} % по центру
|
|
|
\newcommand{\hdngaligni}{}% по центру
|
|
|
\setlength{\otstuplen}{0pt}
|
|
|
}{%
|
|
|
\newcommand{\hdngalign}{} % по левому краю
|
|
|
\newcommand{\hdngaligni}{\hspace{\otstuplen}} % по левому краю
|
|
|
} % В обоих случаях вроде бы без переноса, как и надо (ГОСТ Р 7.0.11-2011, 5.3.5)
|
|
|
|
|
|
%%% Оглавление %%%
|
|
|
\renewcommand{\cftchapterdotsep}{\cftdotsep} % отбивка точками до номера страницы начала главы/раздела
|
|
|
|
|
|
%% Переносить слова в заголовке не допускается (ГОСТ Р 7.0.11-2011, 5.3.5). Заголовки в оглавлении должны точно повторять заголовки в тексте (ГОСТ Р 7.0.11-2011, 5.2.3). Прямого указания на запрет переносов в оглавлении нет, но по той же логике невнесения искажений в смысл, лучше в оглавлении не переносить:
|
|
|
\setrmarg{2.55em plus1fil} %To have the (sectional) titles in the ToC, etc., typeset ragged right with no hyphenation
|
|
|
\renewcommand{\cftchapterpagefont}{\normalfont} % нежирные номера страниц у глав в оглавлении
|
|
|
\renewcommand{\cftchapterleader}{\cftdotfill{\cftchapterdotsep}}% нежирные точки до номеров страниц у глав в оглавлении
|
|
|
%\renewcommand{\cftchapterfont}{} % нежирные названия глав в оглавлении
|
|
|
|
|
|
\ifnumgreater{\value{headingdelim}}{0}{%
|
|
|
\renewcommand\cftchapteraftersnum{.\space} % добавляет точку с пробелом после номера раздела в оглавлении
|
|
|
}{}
|
|
|
\ifnumgreater{\value{headingdelim}}{1}{%
|
|
|
\renewcommand\cftsectionaftersnum{.\space} % добавляет точку с пробелом после номера подраздела в оглавлении
|
|
|
\renewcommand\cftsubsectionaftersnum{.\space} % добавляет точку с пробелом после номера подподраздела в оглавлении
|
|
|
\renewcommand\cftsubsubsectionaftersnum{.\space} % добавляет точку с пробелом после номера подподподраздела в оглавлении
|
|
|
\AfterEndPreamble{% без этого polyglossia сама всё переопределяет
|
|
|
\setsecnumformat{\csname the#1\endcsname.\space}
|
|
|
}
|
|
|
}{%
|
|
|
\AfterEndPreamble{% без этого polyglossia сама всё переопределяет
|
|
|
\setsecnumformat{\csname the#1\endcsname\quad}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
\renewcommand*{\cftappendixname}{\appendixname\space} % Слово Приложение в оглавлении
|
|
|
|
|
|
%%% Колонтитулы %%%
|
|
|
% Порядковый номер страницы печатают на середине верхнего поля страницы (ГОСТ Р 7.0.11-2011, 5.3.8)
|
|
|
\makeevenhead{plain}{}{\rmfamily\thepage}{}
|
|
|
\makeoddhead{plain}{}{\rmfamily\thepage}{}
|
|
|
\makeevenfoot{plain}{}{}{}
|
|
|
\makeoddfoot{plain}{}{}{}
|
|
|
\pagestyle{plain}
|
|
|
|
|
|
%%% добавить Стр. над номерами страниц в оглавлении
|
|
|
%%% http://tex.stackexchange.com/a/306950
|
|
|
\newif\ifendTOC
|
|
|
|
|
|
\newcommand*{\tocheader}{
|
|
|
\ifnumequal{\value{pgnum}}{1}{%
|
|
|
\ifendTOC\else\hbox to \linewidth%
|
|
|
{\noindent{}~\hfill{Стр.}}\par%
|
|
|
\ifnumless{\value{page}}{3}{}{%
|
|
|
\vspace{0.5\onelineskip}
|
|
|
}
|
|
|
\afterpage{\tocheader}
|
|
|
\fi%
|
|
|
}{}%
|
|
|
}%
|
|
|
|
|
|
%%% Оформление заголовков глав, разделов, подразделов %%%
|
|
|
%% Работа должна быть выполнена ... размером шрифта 12-14 пунктов (ГОСТ Р 7.0.11-2011, 5.3.8). То есть не должно быть надписей шрифтом более 14. Так и поставим.
|
|
|
%% Эти установки будут давать одинаковый результат независимо от выбора базовым шрифтом 12 пт или 14 пт
|
|
|
\newcommand{\basegostsectionfont}{\fontsize{14pt}{16pt}\selectfont\bfseries}
|
|
|
|
|
|
\makechapterstyle{thesisgost}{%
|
|
|
\chapterstyle{default}
|
|
|
\setlength{\beforechapskip}{0pt}
|
|
|
\setlength{\midchapskip}{0pt}
|
|
|
\setlength{\afterchapskip}{\theintvl\curtextsize}
|
|
|
\renewcommand*{\chapnamefont}{\basegostsectionfont}
|
|
|
\renewcommand*{\chapnumfont}{\basegostsectionfont}
|
|
|
\renewcommand*{\chaptitlefont}{\basegostsectionfont}
|
|
|
\renewcommand*{\chapterheadstart}{}
|
|
|
\ifnumgreater{\value{headingdelim}}{0}{%
|
|
|
\renewcommand*{\afterchapternum}{.\space} % добавляет точку с пробелом после номера раздела
|
|
|
}{%
|
|
|
\renewcommand*{\afterchapternum}{\quad} % добавляет \quad после номера раздела
|
|
|
}
|
|
|
\renewcommand*{\printchapternum}{\hdngaligni\hdngalign\chapnumfont \thechapter}
|
|
|
\renewcommand*{\printchaptername}{}
|
|
|
\renewcommand*{\printchapternonum}{\hdngaligni\hdngalign}
|
|
|
}
|
|
|
|
|
|
\makeatletter
|
|
|
\makechapterstyle{thesisgostchapname}{%
|
|
|
\chapterstyle{thesisgost}
|
|
|
\renewcommand*{\printchapternum}{\chapnumfont \thechapter}
|
|
|
\renewcommand*{\printchaptername}{\hdngaligni\hdngalign\chapnamefont \@chapapp} %
|
|
|
}
|
|
|
\makeatother
|
|
|
|
|
|
\chapterstyle{thesisgost}
|
|
|
|
|
|
\setsecheadstyle{\basegostsectionfont\hdngalign}
|
|
|
\setsecindent{\otstuplen}
|
|
|
|
|
|
\setsubsecheadstyle{\basegostsectionfont\hdngalign}
|
|
|
\setsubsecindent{\otstuplen}
|
|
|
|
|
|
\setsubsubsecheadstyle{\basegostsectionfont\hdngalign}
|
|
|
\setsubsubsecindent{\otstuplen}
|
|
|
|
|
|
\sethangfrom{\noindent #1} %все заголовки подразделов центрируются с учетом номера, как block
|
|
|
|
|
|
\ifnumequal{\value{chapstyle}}{1}{%
|
|
|
\chapterstyle{thesisgostchapname}
|
|
|
\renewcommand*{\cftchaptername}{\chaptername\space} % будет вписано слово Глава перед каждым номером раздела в оглавлении
|
|
|
}{}%
|
|
|
|
|
|
%%% Интервалы между заголовками
|
|
|
\setbeforesecskip{\theintvl\curtextsize}% Заголовки отделяют от текста сверху и снизу тремя интервалами (ГОСТ Р 7.0.11-2011, 5.3.5).
|
|
|
\setaftersecskip{\theintvl\curtextsize}
|
|
|
\setbeforesubsecskip{\theintvl\curtextsize}
|
|
|
\setaftersubsecskip{\theintvl\curtextsize}
|
|
|
\setbeforesubsubsecskip{\theintvl\curtextsize}
|
|
|
\setaftersubsubsecskip{\theintvl\curtextsize}
|
|
|
|
|
|
%%% Вертикальные интервалы глав (\chapter) в оглавлении как и у заголовков
|
|
|
% раскомментировать следующие 2
|
|
|
% \setlength{\cftbeforechapterskip}{0pt plus 0pt} % ИЛИ эти 2 строки из учебника
|
|
|
% \renewcommand*{\insertchapterspace}{}
|
|
|
% или эту
|
|
|
% \renewcommand*{\cftbeforechapterskip}{0em}
|
|
|
|
|
|
|
|
|
%%% Блок дополнительного управления размерами заголовков
|
|
|
\ifnumequal{\value{headingsize}}{1}{% Пропорциональные заголовки и базовый шрифт 14 пт
|
|
|
\renewcommand{\basegostsectionfont}{\large\bfseries}
|
|
|
\renewcommand*{\chapnamefont}{\Large\bfseries}
|
|
|
\renewcommand*{\chapnumfont}{\Large\bfseries}
|
|
|
\renewcommand*{\chaptitlefont}{\Large\bfseries}
|
|
|
}{}
|
|
|
|
|
|
%%% Счётчики %%%
|
|
|
|
|
|
%% Упрощённые настройки шаблона диссертации: нумерация формул, таблиц, рисунков
|
|
|
\ifnumequal{\value{contnumeq}}{1}{%
|
|
|
\counterwithout{equation}{chapter} % Убираем связанность номера формулы с номером главы/раздела
|
|
|
}{}
|
|
|
\ifnumequal{\value{contnumfig}}{1}{%
|
|
|
\counterwithout{figure}{chapter} % Убираем связанность номера рисунка с номером главы/раздела
|
|
|
}{}
|
|
|
\ifnumequal{\value{contnumtab}}{1}{%
|
|
|
\counterwithout{table}{chapter} % Убираем связанность номера таблицы с номером главы/раздела
|
|
|
}{}
|
|
|
|
|
|
\AfterEndPreamble{
|
|
|
%% регистрируем счётчики в системе totcounter
|
|
|
\regtotcounter{totalcount@figure}
|
|
|
\regtotcounter{totalcount@table} % Если иным способом поставить в преамбуле то ошибка в числе таблиц
|
|
|
\regtotcounter{TotPages} % Если иным способом поставить в преамбуле то ошибка в числе страниц
|
|
|
\newtotcounter{totalappendix}
|
|
|
\newtotcounter{totalchapter}
|
|
|
}
|