-
Notifications
You must be signed in to change notification settings - Fork 0
/
packages.tex
104 lines (84 loc) · 6.91 KB
/
packages.tex
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
%%% Проверка используемого TeX-движка %%%
\usepackage{iftex}[2013/04/04]
\newif\ifxetexorluatex % определяем новый условный оператор (http://tex.stackexchange.com/a/47579/79756)
\ifXeTeX
\xetexorluatextrue
\else
\ifLuaTeX
\xetexorluatextrue
\else
\xetexorluatexfalse
\fi
\fi
\RequirePackage{etoolbox}[2015/08/02] % Для продвинутой проверки разных условий
%%% Поля и разметка страницы %%%
\usepackage{pdflscape} % Для включения альбомных страниц
\usepackage{geometry} % Для последующего задания полей
%%% Математические пакеты %%%
\usepackage{amsthm,amsfonts,amsmath,amssymb,amscd} % Математические дополнения от AMS
\usepackage{mathtools} % Добавляет окружение multlined
%%%% Установки для размера шрифта 14 pt %%%%
%% Формирование переменных и констант для сравнения (один раз для всех подключаемых файлов)%%
%% должно располагаться до вызова пакета fontspec или polyglossia, потому что они сбивают его работу
\newlength{\curtextsize}
\newlength{\bigtextsize}
\setlength{\bigtextsize}{13.9pt}
\makeatletter
%\show\f@size % неплохо для отслеживания, но вызывает стопорение процесса, если документ компилируется без команды -interaction=nonstopmode
\setlength{\curtextsize}{\f@size pt}
\makeatother
%%% Кодировки и шрифты %%%
\ifxetexorluatex
\usepackage{polyglossia}[2014/05/21] % Поддержка многоязычности (fontspec подгружается автоматически)
\else
\RequirePDFTeX % tests for PDFTEX use and throws an error if a different engine is being used
%%% Решение проблемы копирования текста в буфер кракозябрами
% \input glyphtounicode.tex
% \input glyphtounicode-cmr.tex %from pdfx package
% \pdfgentounicode=1
\usepackage{cmap} % Улучшенный поиск русских слов в полученном pdf-файле
\defaulthyphenchar=127 % Если стоит до fontenc, то переносы не впишутся в выделяемый текст при копировании его в буфер обмена
\usepackage[T2A]{fontenc} % Поддержка русских букв
\usepackage[utf8]{inputenc}[2014/04/30] % Кодировка utf8
\usepackage[english, russian]{babel}[2014/03/24]% Языки: русский, английский
\IfFileExists{pscyr.sty}{\usepackage{pscyr}}{} % Красивые русские шрифты
\fi
%%% Оформление абзацев %%%
\usepackage{indentfirst} % Красная строка
%%% Цвета %%%
\usepackage[dvipsnames,usenames]{color}
\usepackage{colortbl}
%\usepackage[dvipsnames, table, hyperref, cmyk]{xcolor} % Вероятно, более новый вариант, вместо предыдущих двух строк. Конвертация всех цветов в cmyk заложена как удовлетворение возможного требования типографий. Возможно конвертирование и в rgb.
%%% Таблицы %%%
\usepackage{longtable} % Длинные таблицы
\usepackage{multirow,makecell} % Улучшенное форматирование таблиц
%%% Общее форматирование
\usepackage{soulutf8} % Поддержка переносоустойчивых подчёркиваний и зачёркиваний
\usepackage{icomma} % Запятая в десятичных дробях
%%% Гиперссылки %%%
\usepackage{hyperref}[2012/11/06]
%%% Изображения %%%
\usepackage{graphicx}[2014/04/25] % Подключаем пакет работы с графикой
%%% Списки %%%
\usepackage{enumitem}
%%% Подписи %%%
\usepackage{caption}[2013/05/02] % Для управления подписями (рисунков и таблиц) % Может управлять номерами рисунков и таблиц с caption %Иногда может управлять заголовками в списках рисунков и таблиц
\usepackage{subcaption}[2013/02/03] % Работа с подрисунками и подобным
%%% Счётчики %%%
\usepackage[figure,table]{totalcount} % Счётчик рисунков и таблиц
\usepackage{totcount} % Пакет создания счётчиков на основе последнего номера подсчитываемого элемента (может требовать дважды компилировать документ)
\usepackage{totpages} % Счётчик страниц, совместимый с hyperref (ссылается на номер последней страницы). Желательно ставить последним пакетом в преамбуле
%%% Продвинутое управление групповыми ссылками (пока только формулами) %%%
\ifxetexorluatex
\usepackage{cleveref} % cleveref корректно считывает язык из настроек polyglossia
\else
\usepackage[russian]{cleveref} % cleveref имеет сложности со считыванием языка из babel. Такое решение русификации вывода выбрано вместо определения в documentclass из опасности что-то лишнее передать во все остальные пакеты, включая библиографию.
\fi
\creflabelformat{equation}{#2#1#3} % Формат по умолчанию ставил круглые скобки вокруг каждого номера ссылки, теперь просто номера ссылок без какого-либо дополнительного оформления
\ifnumequal{\value{draft}}{1}{% Черновик
\usepackage[firstpage]{draftwatermark}
\SetWatermarkText{DRAFT}
\SetWatermarkFontSize{14pt}
\SetWatermarkScale{15}
\SetWatermarkAngle{45}
}{}