Emacs. Работа с библиографией. Org-cite
Библиография в org-mode на основе org-cite.
Содержание
1 Общая информация
- Выпущена в 2021 году для нативной поддержки ссылок в
org-mode
. - Задаёт родной синтаксис для цитирования.
2 Цитирование
Прежде чем добавлять цитаты, сначала следует задать один или несколько файлов библиографии:
- глобально с помощью
org-cite-global-bibliography
:1(setq org-cite-global-bibliography '("~/work/bib/bib/main.bib"))
- локально с помощью одного или нескольких ключевых слов
bibliography
:
- глобально с помощью
Цитаты можно вставлять и редактировать с помощью
org-cite-insert
, или комбинацииC-c C-x @
.Для цитирования требуется один или несколько ключей цитирования элементов, идентифицирующих ссылку в библиографии:
1[cite/style:common prefix ;prefix @key suffix; ... ; common suffix]
- Каждая цитата заключена в квадратные скобки и использует ключевое слово
cite
. - Каждый ключ начинается с символа
@
. - Каждый ключ может быть дополнен префиксом (например,
см.
) и/или суффиксом (например,стр. 123
), предоставляя информацию, полезную или необходимую для понимания цитаты, но не включенную в ссылку. - Одна цитата может цитировать более одной ссылки; ключи разделены точкой с запятой; форматирование таких групп цитирования определяется стилем.
- Можно также указать стилистическую вариацию для цитат, вставив ‘/’ и имя стиля между ключевым словом
cite
и двоеточием.
- Каждая цитата заключена в квадратные скобки и использует ключевое слово
Обязательными элементами являются:
- ключевое слово
cite
и двоеточие; - символ
@
, непосредственно предшествующий каждому ключу; - скобки, окружающие цитирование.
- ключевое слово
Чтобы вставить куда-либо библиографию, нужно в этом месте задать ключевое слово
print_bibliography
:1#+print_bibliography:
3 Обработка цитирования
3.1 Общая информация
- Важной концепцией
org-cite
являются экспортные процессоры. - Хотя цитаты всегда будут иметь один и тот же формат, экспортируемый текст будет меняться в зависимости от используемого процессора.
- Основные функции процессоров:
- вставка и редактирование цитат;
- связь ссылки и её определения;
- выделение цитат в буфере;
- экспорт цитат.
3.2 Процессоры цитирования
3.2.1 Универсальные
basic
- Когда обратная совместимость не требуется, а потребности в форматировании минимальны.
- Загрузка:
1(require 'oc-basic)
csl
- Используется форматирование на основе Citation Style Language (см. Citation Style Language (CSL)).
- Для этого используется пакет
citeproc-el
. - Конфигурация:
csl
экспортируется в визуализированный текст.- Визуализированный текст — это текст, вид которого будет совпадать с форматированием в
org-mode
, например, текст, выделенный курсивомorg-mode
, будет обернут в\emph{}
в LaTeX. - При экспорте
[cite:@bradleyAppearanceRealityMetaphysical2011 82–5;]
в файл LaTeX с помощью csl-процессора, используя файл CSL для стиля цитирования Modern Language Association (MLA), в файле LaTeX будет следующая цитата:(Bradley 82–85)
.
- Визуализированный текст — это текст, вид которого будет совпадать с форматированием в
- При экспорте в LaTeX отрендеренного текста зачастую будет недостаточно.
- Для получения доступ к более сложным или тонким функциям надо использовать процессор
biblatex
.
3.2.2 LaTeX
- Для экспорта в LaTeX.
natbib
- Для экспорта в BibTeX, исторический библиографический процессор, используемый с LaTeX.
- Используются команды цитирования из пакета
natbib
. - Загрузка:
1(require 'oc-natbib)
biblatex
- Для экспорта в BibLaTeX, альтернативного библиографического процессора, используемого с LaTeX (см. bibtex vs biblatex).
- Загрузка:
1(require 'oc-biblatex)
- Стиль конечного цитирования будет определяться предоставленными параметрами пакета (например,
style=gost
). - Например,
[cite:@bradleyAppearanceRealityMetaphysical2011 82-5;]
будет экспортироваться в команду LaTeX\cite[82-5]{bradleyAppearanceRealityMetaphysical2011}
. - Процессору BibLaTeX можно передать параметры команде
\printbibliography
:
3.3 Задание типа экспорта
3.3.1 Общая информация
- Стиль цитат и библиография зависят от трех вещей:
- используемый процессор цитирования;
- стиль цитирования;
- стиль библиографии.
3.3.2 Задание типа экспорта в файле
- Ключевое слово
CITE_EXPORT
указывает процессор экспорта и стили цитирования (и, возможно, ссылки). - Зададим процессор экспорта
basic
с цитатами, вставленными как имя автора, и ссылками, проиндексированными по имени автора и году.1#+cite_export: basic author author-year
- Зададим процессор
csl
и стиль CSL, который в данном случае определяет числовые цитаты и числовые ссылки в соответствии с ванкуверской спецификацией:1#+cite_export: csl /some/path/to/vancouver-brackets.csl
- Зададим процессор
natbib
со стилем цитирования соответствующим гарвардскому стилю и спецификации издателя Wolkers-Kluwer:1#+cite_export: natbib kluwer
3.3.3 Глобальное задание типа экспорта
- Необходимо настроить переменную
org-cite-export-processors
:
4 Citeproc.el
- Используется для процессора csl.
- В настоящее время он поддерживает экспорт в:
- HTML;
- LaTeX;
- Org;
- Plain text.
- В настоящее время Citeproc может извлекать библиографическую информацию из следующих форматов:
- CSL-JSON;
- Bib(La)TeX;
- org-bibtex (см. https://gewhere.github.io/org-bibtex).
- Поддержка Bib(La)TeX и org-bibtex находится в зачаточном состоянии по сравнению с CSL-JSON .
- Если не задан стиль в
org-cite-csl--fallback-style-file
, будет использоваться стиль, который по умолчанию соответствует чикагскому стилю автор-дата.