Это старая версия документа!
Первый способ использовать библиографию в LaTeX в utf-8 состоит в установке специального bibtex-стиля библиографии, gost.
Gost – BibTeX styles to format according to GOST: BibTeX styles to format bibliographies in English, Russian or Ukrainian according to GOST 7.0.5-2008 or GOST 7.1-2003. Both 8-bit and Unicode (UTF-8) versions of each BibTeX style, in each case offering a choice of sorted and unsorted.
Для подключения стиля «gost» в прембуле TeX-файла:
% \bibliographystyle{ugost2008s} % сортировка по алфавиту \bibliographystyle{ugost2008} % по порядку вхождения
На месте списка литературы в основной части TeХ-файла добавить:
\bibliography{./cite/LibraryDB} % подключение базы библиографии
В настоящее время (июнь 2014-ого года) для управления библиографией рекомендуется использовать связку biblatex+biber, которая изначально поддерживает utf-8. Более того, в стандартную поставку TeX Live входит набор стилей Biblateх-GOST, реализующих поддержку оформления библиографии по ГОСТ 7.0.5—2008. Пример офрмления библиографии тыц, тыц.
Компиляция документа должна выглядеть так:
$ pdflatex main.tex $ biber main.bcf $ pdflatex main.tex
Для подключения biblatex в преамбуле документа необходимо:
% рекомендуется при использвоании biblatex \usepackage{csquotes} \usepackage[% autolang=other, bibencoding=utf8, sorting=nty, % Name,Title,Year или sorting=none. maxbibnames=4, % Максимальное число авторов в списке литературы. minbibnames=2, % Число авторов, отображаемое при сокращении. style=gost-numeric, backend=biber]{biblatex} \addbibresource{./cite/LibraryDB-01.bib} \addbibresource{./cite/LibraryDB-02.bib}
На месте списка литературы в основной части TeХ-файла «распечатать» библиографию:
% По умолчанию "Список литературы" (article) %\renewcommand{\refname}{Список литературы} % По умолчанию "Литература" (book и report) %\renewcommand{\bibname}{Литература} \printbibliography
Динамическое переключение при использовании в библиографии нескольких языков:
\usepackage[...,autolang=other]{biblatex}
@BOOK{Legendre.Num.Ecology.1998, author = {Legendre, P. and Legendre, L}, title = {Numerical Ecology}, publisher = {Elsevier Science B.V.}, year = {1998}, pages = {853}, langid = {english}, }
После этого всё работает, как положено:
Legendre P., Legendre L. Numerical Ecology. — Elsevier Science B.V., 1998. — P. 853.
Ошибочный варианты был такой:
Legendre P., Legendre L. Numerical Ecology. — Elsevier Science B.V., 1998. — С. 853.
Обратить внимание на C(траницу) и P(age). Начало решения найдено тут.
Согласно стандарту 2008-ого года, при наличии нескольких языков и необходимости сортировать список литературы, первым должны идти записи на русском языке. Однако, в пакете Biblatex-GOST эта проблема не решена, тыц.
6. Известные проблемы Пакет при сортировке помещает латинские буквы перед кириллическими. Это связано с ограничениями модуля Unicode::Collate языка Perl, на котором написан Biber (не реализовано правило reorder). Поэтому, если вы хотите, чтобы в библиографии кириллические записи предшествовали остальным, то в качестве обходного пути можете отредактировать файл .bbl, создаваемый Biber’ом (переместить записи в начало списка sortlist), и затем запустить LaTeX.
Для данного шаблона документа после редактирования выполнить:
xelatex --jobname=xelatex "main.tex"
or
pdflatex --jobname=pdflatex "main.tex"
Самое адекватное решение - GrindEQ. Триал-версия обладает полной функциональностью, но число обрабатываемых документов ограничено 10-ю. Поэтому либо использовать виртуальную машину, возвращаясь к рабочему снимку, либо искать альтернативную версию, например, здесь, Лицензионная версия, как мне кажется, стоит слишком много (~50$), чтобы её покупать для частного использования.
Особенности использования:
В чистую виртуальную машину, например, VirtualBox установить гостевую ОС Windows, вместе с MS Office'ом, например, 2010-ого года. Скачать GrindEQ с официального сайта, и также установить. Сразу после установки GrindEQ и до первого запуска офиса сделать снимок состояния системы.
После этого можно осваивать настройки GrindEQ, конвертируюя тестовые документы. Естественно, после окончания 10-ти документов, состояние машины необходимо откатить. Следовательно, не ленимся записывать нужные нам настройки с той, целью, чтобы внести и зафиксировать (в новом снимке) изменения в настройках GridEQ.
Проблемы со вставками input и библиографией, решил с помощью собственного костыля. Мои lateх документы построены по следующему принципу:
Костыль читает главный файл main.tex, построчно перегоняет его в grindeq /main-BibTeX.tex, когда в строке встречается директива input, алгоритм определяет имя вставляемого файла и построчно помещает его в grindeq /main-BibTeX.tex. Кроме этого, с помощью шататного bibteх'а генерируется список литературы. GrindEQ не понимает Biblateх, поэтому прежде чем генерировать с помощью bibteх'а *.bbl файл, необходимо сменить способ управления библиографией biblatex→bibtex. GrindEQ некоторых команд из *.bbl-файла не понимает из созданого списка, поэтому список обрабатывается, а затем помещается в конец grindeq /main-BibTeX.tex.
Какие проблемы остались? Совершенно нет титула, вероятно из-за переопределения \maketitle, Reference, Table, Figure вместо литературы, таблицы, рисунка. Таков первый взгляд на проблему перекодировки latex → ms word.
Поскольку при генерации изменяется подход к формированию списка литературы, необходимо уделить особое внимание совпадению результатов сортировки источников.
По неизвестным причинам, возможна ситуация, когда latexmk не воспринимает изменения в *.tex файлах и, соответственно, не соглашается пересобирать pdf-файл.
Latexmk: All targets (main.pdf) are up-to-date
Вопрос обсуждался тут, тут и тут.
Решений два:
Шаблон нового *.tex документа может быть одновременно собран pdflatex'ом, xelatex'ом и обладает следующей структурой:
Использовать упоминаемый шаблон рекомендуется посредством установки в *nix систему (например, один из дистрибутивов (GNU)Linux) скрипта, newtex, который в качестве параметра принимает имя нового tex-документа,
newtex you_doc_name
скачивает с сайта архив шаблона и распаковывает его. После чего, документ готов к редактированию.
Версии указаны исходя из того, что на данной конфигурации шаблон работоспособен.
Большинство методов маркировки текста (например, этот) используют пакет soul или soulutf8.
Однако у данного пакета есть неприятная особенность, поэтому использовать его не очень хочется.
Поэтому выбор пал на метод выделения, тыц, не использующий пакет soul.
Пример использования маркировки текста можно посмотреть: marker-tikz.pdf.
Исходные файлы marker-tikz.tex, text-mark-header.tex.
Собирать командой (выполнить 2 раза)
pdlatex marker-tikz.tex
P.S. выделение целых абзацев тоже может быть интересно, тыц, тыц.
Краткий ответ на ЛОРе.