Выпускная квалификационная работа (ВКР) магистра в LaTeX, оформленная в соответствии с нормоконтролем Севастопольского государственного университета в 2017 г.
- использование XeLaTeX, основной шрифт Times New Roman, 14pt, полуторный межстрочный интервал
- шрифт для формул XITS Math, шрифты для презентации PT Sans, PT Mono
- подрисуночные и подтабличные записи в формате
номерСекции.номерРисунка
- нумерация страниц посередине сверху
- возможность указания начала нумерации страниц
- возможность настройки отступов страниц
- маркировка списка символом
—
- нумерованные списки обозначаются строчными буквами кириллицы со скобкой
- названия секций в верхнем регистре, включая содержание
- отступ в одну строку после имени заголовка
- отступы в одну строку до и после имени заголовков второго и третьего уровней
- пользовательские функции добавления рисунков, приложений и библиографии
- использование
listings
для оформления исходного кода в документе, шрифт FreeMono - возможность добавления своих PDF в документ
- добавление библиографии в файл
0-bibliography.tex
- отдельные секции для аннотации, приложений
- автоматически генерируемый список иллюстративного и табличного материала
- ссылки на перечень сокращений и условных обозначений
- слайды презентации
Makefile
для компиляции и сборки проектаDockerfile
для сборки проекта в изолированном окружении
.
├── extra
├── images
├── inc
├── presentation
├── presentation_it_planet
└── vulncontrol
В корневом каталоге находятся файлы:
Dockerfile
, с его помощью можно собрать проект в Docker-контейнере без установки LaTeX на локальный компьютер- в
main.tex
подключаются все остальные файлы - с помощью
Makefile
можно собрать проект - файл
master-thesis.pdf
является результатом компиляции проекта - в
preamble.tex
задается преамбула - файл
.gitignore
содержит в себе временные файлы, которые не включаются в репозиторий - файл
.gitmodules
подключает к проекту репозиторийvulncontrol
- файл
.travis.yml
необходим для сборки git-проекта в окружении TravisCI - в каталоге
images/
находятся изображения, используемые в тексте диплома и презентации
В каталоге extra/
находятся подключаемые PDF файлы, которые по каким-либо причинам не были сверстны в LaTeX.
В каталоге images/
находятся иллюстрации.
В каталоге inc/
находятся файлы, которые подключаются к main.tex
:
- файлы формата
0-*.tex
являются ненумерованными секциями (например введение, заключение, библиография) - файлы формата
[1-9]-*.tex
являются нумерованными секциями (например постановка задчи, обзор литературных источников и т.д) - файлы формата
[a-z]-app.tex
являются файлами приложений
В каталоге presentation/
находятся файлы необходимые для сборки слайдов презентации:
beamerthemeMasterThesis.sty
является файлом стиля презентации- в файле
main.tex
находится преамбула Makefile
необходим для сборкиslides.tex
является файлом, содержащим текст презентацииpresentation.pdf
является результатом компиляции слайдов презентацииreport.md
содержит сопровождающий текст к слайдам презентации
В каталоге presentation_it_planet
находится презентация, которая использовалась на конкурсе.
Каталог vulncontrol/
является ссылкой на репозиторий, содержащий исходный код скрипта для сбора данных по уязвимостям.
Установка нужных пакетов LaTeX в Ubuntu/Mint:
sudo apt install texlive-base texlive-latex-extra texlive-xetex texlive-lang-cyrillic latexmk texlive-fonts-extra texlive-math-extra latex-beamer
Для сборки проекта понадобится установка шрифтов Times New Roman, XITS Math, PT Sans, PT Mono:
sudo apt install ttf-mscorefonts-installer
sudo wget -O /usr/share/fonts/xits-math.otf https://github.com/khaledhosny/xits-math/raw/master/xits-math.otf
sudo wget http://www.paratype.ru/uni/public/{PTSansOFL,PTMono}.zip
sudo unzip PTSansOFL.zip -d /usr/share/fonts/ && sudo unzip PTMono.zip -d /usr/share/fonts/
sudo rm -f {PTSansOFL,PTMono}.zip && sudo fc-cache -f -v
Пример компиляции проекта с помощью Makefile:
git clone --recursive https://github.com/Amet13/master-thesis
cd master-thesis/
make
Пример очистки сборочных файлов после компиляции (кроме PDF):
make clean
Пример сборки слайдов презентации:
make pres
Проект можно собрать в Docker, в таком случае не придется устанавливать LaTeX. Docker уже должен быть установлен на сервере или локальном компьютере:
git clone --recursive https://github.com/Amet13/master-thesis
cd master-thesis/
make docker