Code Monkey home page Code Monkey logo

denismaster / master-thesis Goto Github PK

View Code? Open in Web Editor NEW

This project forked from amet13/master-thesis

0.0 2.0 0.0 22.53 MB

Выпускная квалификационная работа (ВКР) магистра в LaTeX, оформленная в соответствии с нормоконтролем Севастопольского государственного университета в 2019 г.

Dockerfile 0.28% Makefile 0.17% TeX 92.19% TypeScript 7.36%

master-thesis's Introduction

master-thesis

Build Status Лицензия на исходный код Лицензия на произведения

Выпускная квалификационная работа (ВКР) магистра в LaTeX, оформленная в соответствии с нормоконтролем Севастопольского государственного университета в 2019 г.

Особенности

  • использование 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

Установка нужных пакетов 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

Проект можно собрать в Docker, в таком случае не придется устанавливать LaTeX. Docker уже должен быть установлен на сервере или локальном компьютере:

git clone --recursive https://github.com/Amet13/master-thesis
cd master-thesis/
make docker

master-thesis's People

Contributors

amet13 avatar denismaster avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.