andreyakinshin / russian-phd-latex-dissertation-template Goto Github PK
View Code? Open in Web Editor NEWLaTeX-template for russian Phd thesis
License: Creative Commons Attribution 4.0 International
LaTeX-template for russian Phd thesis
License: Creative Commons Attribution 4.0 International
Чтобы не отпугивать пользователей Windows (им и так LaTeX'а хватит), нужно абзац с инструкциями по установке шаблона написать.
Использование в автореферате ссылок на другие работы для движка bibtex сломано, достаточно расскометировать \insertbibliofull в contnt.tex и выбрать bibtex в setup.tex для synopsis.
В Ридми даны команды сборки:
latexmk -pdf -pdflatex="xelatex %O %S" dissertation
latexmk -pdf -pdflatex="xelatex %O %S" synopsis
Не хотите ли вы добавить Makefile? Я могу сделать пулл-реквест, если вы одобряете идею.
Уже пару лет как, мне кажется. Сейчас надо усланавливать пакет ttf-mscorefonts-installer
, который представляет из себя инсталятор, скачивающий варезные шрифты откуда-то. В Ридми надо просто поменять msttcorefonts
на ttf-mscorefonts-installer
.
@15f8d34#commitcomment-12243711
Выбираемые опции оформления можно будет сделать по аналогии с выбором опций в https://github.com/MMCS-SFEDU/mmcs_sfedu_thesis/blob/master/SETUP.tex
В ShareLaTeX есть шаблон Russian Phd LaTeX Dissertation Template, который создан на основе этого репозитория. Вроде бы все работает замечательно, по крайней мере я не вижу ошибок и варнингов, за исключением проблемы с загрузкой .bib файлов.
Такое чувство, что они не погружаются совсем, потому ни одна из ссылок не отображается. Вот тут лог pdfTex'а: https://gist.github.com/KMax/1b39b017e99d03c25211
Есть идеи в чем может быть проблема?
Здравствуйте.
К сожалению, сам не смог разодьраться в тонкостях bst файлов, потому вопрос. Можно ли добавить в utf8gost71u поддержку типа @online? В ugost***.bst она есть, но при смене кодировок "разваливается" уже готовый проект. Простой перенос процедур из одного стиля в другой не помог. Возможно, я просто что-то недоперенёс.
Спасибо.
На всякий случай, пример элемента типа @online.
@online{ICSE,
title = {Сайт конференции International Conference on Software Engineering},
url = {http://2015.icse-conferences.org/},
urldate = {29.07.2015}
}
Общая концепция на русском
http://mirrors.ctan.org/macros/latex/contrib/biblatex-contrib/biblatex-gost/doc/biblatex-gost.pdf
Похоже, версии поновее использующихся здесь файлов, но нужно убедиться в совместимости
http://mirrors.ctan.org/biblio/bibtex/contrib/gost/gost.pdf
Цитирование в диссертации: рекомендации по оформлению --- стоит ознакомиться, и подумать как сменить запятую на точку с запятой в перечислении ссылок и как сделать возможность привязывать к цитате через запятую комментарий в виде номера страницы в источнике.
Согласно ГОСТ Р 7.0.11-2011 структурный элемент называется "список литературы". В текущем варианте шаблона этот структурный элемент имеет заголовок "Литература". И хотя в ГОСТе явно не сказано, что заголовок у этого элемента должен быть именно "Список литературы" (например, в ГОСТ 7.32-2001 об отчетах о НИР такое требование есть), хотя в защищаемых диссертациях встречается более десятка вариантов для этого заголовка, хотя каждый сам может легко поправить его, мне кажется, что вариант из ГОСТа должен быть приоритетным и использоваться в шаблоне.
Большое спасибо за работу. Очень актуально. Скажите, это я что-то не совсем правильно делаю, или лишние атрибуты в bib файле действительно всё ломают? Например, если брать стандартные ссылки с ACM (Export -> Bibtex) такого вида:
@article{Scott:2006:RNG:1146809.1146810,
author = {Scott, Elizabeth and Johnstone, Adrian},
title = {Right Nulled GLR Parsers},
journal = {ACM Trans. Program. Lang. Syst.},
issue_date = {July 2006},
volume = {28},
number = {4},
month = jul,
year = {2006},
issn = {0164-0925},
pages = {577--618},
numpages = {42},
url = {http://doi.acm.org/10.1145/1146809.1146810},
doi = {10.1145/1146809.1146810},
acmid = {1146810},
publisher = {ACM},
address = {New York, NY, USA},
keywords = {General context-free grammars, generalized LR parsing},
}
, то после перегенрации bibtex-ом, проект не собирается. При этом, если вычистить до вида, приведённого в примере, то всё работает.
tablenocaption при skip=0pt, встаёт именно в 0pt, остальные - ещё имеют отступ.
В случае label на отдельной строке (\setcounter{tabcap}{1}
) там ещё какой-то дополнительный отступ от названия
Есть четыре формулы, (1) и (2) - про электрическую моду, (3,4) - про магнитную. Хочется сослаться на эту систему уроавнений скопом \ref{eq:1, eq:2, eq:3, eq:4} и на выходе получить 1-4 автоматом (т.к. уравнения идут подряд в тексте), а не писать вручную \ref(eq:1}--\ref(eq:4) Ну а если не очень подряд - то чтобы выдвало что-то вроде 1-4, 6-9. В общем тоже самое, что уже реализованно для \cite. Оно вроде штататно решается пакетом cleveref, там вроде даже есть локализация под русский (хотя как они наши падежи разбирают - не представляю). Там есть комманда \labelcref которая как раз должна выдавать желаемое. Однако подключить этот пакет у меня не получилось. Ставлю \usepackage{cleveref} (или даже \usepackage[russian]{cleveref} )в конец преамбулы ./common/packages.tex - пытаюсь юзать - вылетает с ошибкой ! LaTeX Error: Command \cyrf unavailable in encoding EU1.
Есть у кого опыт использование cleveref ? Если разобраться, как его запускать с шаблоном - вроде как довольно удобная фишка. Должна будет работать и в случае необходимости сослаться на серию графиков, или группу таблиц.
В любой математической книге можно видеть использование точек после номеров разделов (за исключением Глава N, если эти два слова находятся на отдельной строке). В госте, кажется, явного требования нет, но я бы рекомендовал сделать. Это одно из широко известных отличий российской типографики от западной (которая по умолчанию принята в TeX).
MarinaSD> Вопрос такой, а как теоремы и утверждения предполагается оформлять? Спасибо =)
Скачала текущую папку с файлами: заголовки маленькие, а отступы после них большие - это так надо?
Italics \textit{} and bold \textbf{} does not work in template
Шаблон на ShareLatex не показывает данное форматирование...
Как считаете, имеет смысл добавлять что-то из этого (и насколько это должно быть опционально):
assets
biblio
common
Думаю, можно было бы сделать так, чтобы у автореферата и диссертации был общим файл с текстом общей характеристики работы.
В данном случае меньше дублирования --- меньше вероятность ошибок.
Потом, может быть, data и names сделать общими.
И под конец стили с пакетами.
что-то сломалось в
Этот еще работает:
Кусок лога ошибки.
Package hyperref Message: Driver (autodetected): hxetex.
(/usr/share/texlive/texmf-dist/tex/latex/hyperref/hxetex.def
(/usr/share/texlive/texmf-dist/tex/latex/hyperref/puenc.def)
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/stringenc.sty)
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty))
(/usr/share/texlive/texmf-dist/tex/latex/enumitem/enumitem.sty)
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty)
(/usr/share/texlive/texmf-dist/tex/latex/caption/ltcaption.sty))
(/usr/share/texlive/texmf-dist/tex/latex/caption/subcaption.sty)
(/usr/share/texlive/texmf-dist/tex/latex/setspace/setspace.sty)
(/usr/share/texlive/texmf-dist/tex/latex/caption/totalcount.sty)
(/usr/share/texlive/texmf-dist/tex/latex/totcount/totcount.sty)
(/usr/share/texlive/texmf-dist/tex/latex/totpages/totpages.sty
(/usr/share/texlive/texmf-dist/tex/latex/ms/everyshi.sty))) (./synpackages.tex)
(./userpackages.tex) (../common/data.tex) (../common/styles.tex
(/usr/share/texlive/texmf-dist/tex/latex/polyglossia/gloss-russian.ldf
(/usr/share/texlive/texmf-dist/tex/latex/polyglossia/babelsh.def))
(/usr/share/texlive/texmf-dist/tex/latex/polyglossia/gloss-english.ldf)
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/se-ascii-print.def))
(./synstyles.tex) (./userstyles.tex) (../biblio/bibliopreamble.tex
(../biblio/biblatex.tex
! LaTeX Error: File `biblatex.sty' not found.
Type X to quit or to proceed,
or enter new name. (Default extension: sty)
По следам 15f8d34#commitcomment-12122966
Шрифт 14pt и полуторный интервал — установки, вполне соответствующие ГОСТу. Так что надо бы придумать, как их воплощать, чтобы и остальное осталось нормальным.
Полуторный интервал уже есть. 14 шрифт ставится правкой dissertation.tex:
\documentclass[a4paper,14pt]{extreport}
При этом заголовки становятся слишком большими.
Можно добавить в packages.tex:
\usepackage[small]{titlesec} % чуть уменьшаем размер заголовков глав и разделов
и в styles.tex:
\renewcommand{\cftloftitlefont}{\LARGE\bfseries} % топорно исправляем влияние tocloft
\renewcommand{\cftlottitlefont}{\LARGE\bfseries} % топорно исправляем влияние tocloft
по наводке из http://tex.stackexchange.com/questions/59726/change-size-of-section-subsection-subsubsection-paragraph-and-subparagraph-ti
Ещё ссылка на заметку: http://tex.stackexchange.com/questions/207262/how-to-change-font-size-of-chapter-to-14pt
Возможно есть более красивое решение, которое можно было бы добавить в шаблон, через условные теги, чтобы эти правки в зависимости от выбора 12pt/14pt правили.
Попробовал собрать диссертацию из примера, и наткнулся на следующее:
Список литературы начинается с номера 42. В какую сторону копать, я не представляю.
Из-за того, что в репозитории дублируются *.eps файлы и по объёму/весу они большие, преимущественным языком считается PostScript, что не совсем верно.
Что с этим можно было бы сделать?
Какие-то настройки сделать, чтобы eps считались бинарными файлами? Сами eps переделать как-то?
@AndreyAkinshin
Может быть, если ничто другое не поможет, можно связаться с администрацией гитхаба, чтобы они перенастроили что-то, чтобы основным языком тут считался TeX, а не PostScript, как сейчас.
Не знаю, возможно ли воплотить такое, но вот идея. Разделить список литературы на четыре (по количеству из общей характеристики работы + 1):
И автоматически генерировать как-то кусок текста из общей характеристики работы в духе:
Основные результаты по теме диссертации изложены в ХХ печатных изданиях [1–4], Х из которых изданы в журналах, рекомендованных ВАК [1, 2], ХХ — в тезисах докладов [3, 4].
По ГОСТ 2.105 в буквах приложений не все буквы русского алфавита используются (надо лишний раз перечитать, но ЕМНИП запрещено использовать: Ё, З, Й, О, Ь, Ъ).
Хорошо бы реализовать - переписываем asbuk из polyglossia и babel.
Ещё можно глянуть, как реализовано в «неофициальном» пакете eskdi - там вообще и 2.105 отдельным способом реализован.
Раз уж написано, что лучше поддерживает utf8.
@Lenchik, @dustalov, @tonkonogov
В последнее время в разных issue и коммитах идёт много обсуждений общего характера. Есть предложение завести для подобных целей gitter-канал. Надо? Кто что думает?
А как же так: в исходном шаблоне alessia-lano было слово Глава (хоть и некрасиво вставленное), а у вас исчезло?
В ГОСТ Р 7.0.11-2011 написано:
5.3.8
...
Порядковый номер страницы печатают на середине верхнего поля страницы
Latexmk: Missing input file: 'appendixsetup.tex' from line
ГОСТ говорит, что размер шрифта должен быть 12-14 пунктов. Сейчас в шаблоне по умолчанию стоит 12. Имею два аргумента, чтобы по умолчанию стояло 14.
Точно помню, что кто-то озвучивал такую идею. Кто-нибудь видел подобные реализации?
Желательно, чтобы при этом не отличались от полной версии номера страниц, источников и т. п. И чтобы можно было сразу несколько глав заказывать.
Как-то сделать его структуру сходной с шаблонами диссертации и автореферата.
Но приоритет этой деятельности низкий. Стоит ли овчинка выделки, как считаете?
Есть мысль, сложить все управляющие файлы, кроме setup и inclusioncontrol сложить в папку, например templatecontrol
, внутри Dissertation, а то множество файлов не связанных непосредственно с научным трудом могут отвлекать от этого труда.
Есть в этом польза, как считаете?
В примере biblio.bib пользователь может предположить, что форматы записей подходят и для англоязычных, и для русскоязычных источников. Но в dissertation.pdf все сокращения из шаблона (Vol., P., Ed. by) получаются в английском стиле.
Хочется-таки подсчитывать автоматом число глав и приложений ("состоит из введения, четырёх глав, общих выводов по работе, списка рисунков, списка таблиц, списка литературы и десяти приложений").
Из найденного только пакет numerus
, который в именительном падеже только работает. А тут нужен родительный.
Кто-то видел готовые куски кода? Неужели никому ни разу за много лет такое не понадобилось, и пакет не написан?!
Инструкция по установке PsCyr просто ужасна:
Насколько я знаю, TexLive популярнее сейчас, ровно как и использование linux вместо windows для TeX (ну правда, это отдельный вид извращения - tex на винде).
Я нашел вот такой gist - https://gist.github.com/beresovskiy/8654052. Думаю, что его стоит настоятельно упомянуть. Правда, там пару команд подправить надо, но все лучше, чем ничего.
Если нет желания этим заниматься, то сделаю через некоторое время сам и зашлю пул реквест - сейчас совсем времени нет.
Ошибка
В пункте 5.3.5 ГОСТа 7.0.11-2011 написано
5.3.5 Заголовки располагают посередине страницы без точки на конце...
В данном шаблоне данный пункт намерено опущен, в плане PR не нужен? Или имеется легкий способ включить центрирование тем кому оно нужно?
В том же пункте написано
...Заголовки отделяют от текста сверху и снизу тремя интервалами.
На глаз мне сложно судить насколько это выполняется, поэтому судьбу данного требования тоже хотелось бы уточнить.
На странице по библиографии в вашей вики сказано следующее.
bibtex(bibtex8) некорректно работает с преобразованиями юникодных символов, потому
сокращения до инициалов или возможности по изменению регистра с utf8 работать не будут.
Почему бы не использовать Biblatex/Biber для нормальной поддержки UTF-8? Пример для выпускных работ в нашем вузе.
В #76 возникла идея почистить репозиторий от сохранившихся в его анналах остатках бинарных файлов.
Подробности, начиная с #76 (comment)
Хорошо бы подробнее поизучать ту ссылку и потренироваться на кошках...
По идее всё понятно, только отработать бы на вновь созданном репозитории, который и убить бы потом.
Может оказаться так, что если все изменяемые опции из разных диссоветов вытащить в отдельные userpackages.tex
userstyles.tex
, то туда большая часть обычного содержимого перекочует.
Поэтому предлагаю здесь обсудить варианты формирования таких файлов и список вытаскиваемых туда опций.
Навскидку:
Вообще интересно было бы, если бы побольше людей воспользовавшихся этим или другим шаблоном поделились информацией за что их гоняли диссоветы с оформлением.
Ещё можно начать со сбора FAQ по настройке под себя в отдельный faq.md
Клонировал репозиторий до d2398a2 коммита включительно, установил необходимые пакеты (ОС Fedora 23 x64). Но после компиляции остаются неопределенные ссылки.
Шаги (из корня репозитория):
make clean
make dissertation
make dissertation
Вывод обоих make dissertation
вызовов: https://gist.github.com/KMax/caac58b80723070b553e
В выводе второго вызова наблюдаю проблему с 52-мя ссылками:
Latexmk: Found biber source file(s) [../biblio/othercites.bib dissertation.bcf]
Latexmk: Summary of warnings:
Latex failed to resolve 52 citation(s)
Latexmk: All targets (dissertation.pdf) are up-to-date
Может проблема с пакетами, которые я установил для того чтобы шаблон собрался?
Андрей, спасибо за шаблон!
Я пытаюсь сверстать диссертацию в OS X Mavericks 64bit, использую MacTeX-2013 (June, 2013).
После выполенения:
$ pdflatex disertation.tex
Компилируется вот такая pdf-ка — https://dl.dropboxusercontent.com/u/4423440/dissertation.pdf
И вот такой лог — https://dl.dropboxusercontent.com/u/4423440/dissertation.log
Вопросы:
Спасибо!
Заметил небольшую неприятность: при наличии поля edition в файлах библиографий к тексту поля автоматически добавляется изд.
. Для поля вида edition = {2-е},
проблем нет, но для более сложных вариантов типа "издание такое-то, переработанное и дополненное", возникает лишнее дополнение изд.
в конце.
Для примера, в текущей pdf есть цитирование [2], Гайдаенко.
Как один из вариантов решения, можно попробовать убрать приписывание из стилевого файла bibtex, и поле edition всегда писать "как есть", edition = {2-е изд.},
.
В строчке 51 в файле Synopsis/title.tex есть подобная строчка:
\makecell[l]{\sfs Официальные оппоненты: \vspace{6.65cm}} &
Не зная заранее, сколько у нас строчек в правой колонке (с оппонентами), мы получаем ситуацию, когда эта фраза ездит по вертикали, пока не подобрать точное значение вместо 6.65. Это нельзя никак проще сделать? После получаса фрустраций с магическим числом мне даже кажется, что вариант с просто отдельной двухколончотай строчкой для непосредственно первой строчки более изящен, чем подгонка константы.
Вот, например:
% ...
\makecell[l]{\sfs Официальные оппоненты: \vspace{6.65cm}} &
\makecell[{{p{11cm}}}]{
\sfs \textbf{Оппонент Оппонентов Оппонентович,} \\
\sfs доктор физико-математических наук, профессор, \\
\sfs Не очень длинное название для места работы, \\
\sfs старший научный сотрудник \vspace{1mm} \\
\sfs \textbf{Ещёодиный Ещёодин Ещёодинов,} \\
\sfs кандидат физико-математических наук, \\
\sfs Основное место работы c длинным длинным длинным длинным названием, \\
\sfs старший научный сотрудник
}
% ...
После переезда на класс extreport главы автоматом начинаются с новой страницы и \clearpage
, которые сейчас есть в каждом файле с текстом, не нужны.
По оформлению списка литературы много вопросов. И дело даже не в соответствии ГОСТу, а в том, что сам ГОСТ является непонятным, неоднозначным и неэстетичным.
Скачал в Интернете две первые попавшиеся диссертации, защищенные в 2014 году, и (о, ужас) библиографические записи оформлены в них в стиле примера из ГОСТ Р 7.0.11-2011 (это который с первым автором "Борозда"): сначала фамилия первого автора (инициалы в конце), потом название, а потом, после косой черты, фамилии всех авторов (включая первого, инициалы в начале).
Второй вопрос личный (еще не освоился с github, пока не знаю, где можно задавать подобные вопросы, кроме как в issue). Из последней версии шаблона у меня получается точно такой же файл pdf, как и в комплекте с шаблоном (названия источников выводятся раньше авторов). А когда в шаблон подставил свой текст, так авторы вылезают вперед. В каком файле искать причину?
При компиляции возникала такая ошибка: Package keyval Error: langjapanese undefined.
Необходимо добавить:
\NewBibliographyString{langjapanese}
\NewBibliographyString{fromjapanese}
перед \begin{document}
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.