Russian-Phd-LaTeX-Dissertation-Template icon indicating copy to clipboard operation
Russian-Phd-LaTeX-Dissertation-Template copied to clipboard

TODO: Подборка сложных случаев bibtex записей

Open Lenchik opened this issue 8 years ago • 17 comments

Хорошо бы неспешно составить крупный *.bib файл из сложных для оформления литературных источников, в том числе и на разных языках, чтобы постепенно либо допиливать наш шаблон, либо внести предложения по соответствующей допилке пакетов biblatex-gost и gost. Конечно, нужно будет знать правильную версию отображения результата и желательно пункт и номер ГОСТ, в соответствии с которым оно правильно.

kostyfisik, 8 декабря 2016 г., 09:37

welcome to use https://github.com/kostyfisik/Russian-Phd-LaTeX-Dissertation-Template/blob/diser-Ladutenko/biblio/othercites.bib Он правда уже адаптирован под существующее решение. Проблемы две. 1) Языки. Обычно когда скачиваешь citation c сайта журнала он не указывает язык. Было бы здорово, если бы biblatex смотрел на используемые символы и сам решал: если язык явно не указан и в названии статьи только латиница - по умолчанию использовать english, если больше половины кириллицы - включать русский, если есть характерные буквы из украинского - понятно что делать, и т.д. Для нашего ГОСТ список актуальных языков должен быть не очень большим. Публикация на немецком - скорее исключение из правил. Кстати на сайте журнала приводится следующая ссылка Gustav Mie Beiträge zur Optik trüber Medien, speziell kolloidaler Metallösungen. Band 25, Folge 4, Seite 377, 1908 . Правда парой лет раньше в этом же журнале пачка работ Эйнштейна, так что может быть и актуально, если ещё есть любители обратиться к первоисточникам. 2) Некоторые журналы сейчас вместо pages используют запись article-number. Оно в общем и правильно, но никак не отображается. Я у себя его просто автозаменой поменял на pages. Пример проблемной записи

@article{Kildishev-metasurface-2013,
Author = {Kildishev, Alexander V. and Boltasseva, Alexandra and Shalaev, Vladimir
   M.},
Title = {{Planar Photonics with Metasurfaces}},
Journal = {{Science}},
Year = {{2013}},
Volume = {{339}},
Number = {{6125}},
Month = {{MAR 15}},
DOI = {{10.1126/science.1232009}},
Article-Number = {{1232009}},
ISSN = {{0036-8075}},
EISSN = {{1095-9203}},
ORCID-Numbers = {{Kildishev, Alexander/0000-0002-8382-8422}},
Unique-ID = {{ISI:000316053400029}},
language     = {english},
}

Lenchik avatar Dec 08 '16 16:12 Lenchik

Хочу спросить про субскрипт и суперскрипт в названиях статей в библиографии. Достаточно ли технологии для такого продвинулись?

DarthBOR avatar Mar 14 '17 07:03 DarthBOR

@DarthBOR http://tex.stackexchange.com/questions/186848/superscript-in-my-reference-bibtex/187030#187030

Lenchik avatar Mar 14 '17 08:03 Lenchik

Из сложных случаев библиографии вопрос:

  1. Как оформлять ссылки на диссертации. К примеру: Карпик А.П. Геодезическая пространственная информационная система для обеспечения устойчивого развития территорий [Текст]: дис. … д-ра техн. наук: 05.24.01 / А.П. Карпик. - Новосибирск, 2004. - 295 с.
  2. Есть ли возможность формирования бибссылки в таком формате: Скроцкий Г.В. К термодинамике спиновых систем [Текст] / Г.В. Скроцкий, В.Н. Тропинин // Статистическая физика и квантовая теория поля: сб. статей / под ред. Н.Н. Боголюбова. - М.: Наука, 1973. - Вып. 28. - С. 120-200.

lexxbesson avatar Mar 16 '17 12:03 lexxbesson

@lexxbesson, тут есть пара примеров про диссертации.

DarthBOR avatar Mar 16 '17 14:03 DarthBOR

@lexxbesson По пункту 1 что уже попробовали и не получилось? По пункту 2, некоторая комбинация настроек пакета biblatex-gost наверняка так может, что уже пробовали? Автору пакета biblatex-gost можно подкинуть bib-записи (https://github.com/odomanov/biblatex-gost/issues), если у него в примерах не найдётся подходящего решения. Только сначала обновите biblatex-gost , до последней версии, вроде 1.13, там было много изменений недавно, возможно, что там уже есть готовый пример. И нам потом расскажите, пожалуйста, как решите вопрос.

LSinev avatar Mar 16 '17 19:03 LSinev

@LSinev, по диссертациям в гостовском пакете оказалось всё хорошо, кроме некоторых нюансов (может только в моей сборке такая беда). А именно: некорректно обрабатывается название степени и код специальности (science и specialitycode). Лечится использование major вместо science. Вот так: @Thesis{kuznetsov00, author = {Кузнецов, В. Н.}, title = {Метод последовательного возмущения параметров в приложении к расчёту динамической устойчивости тонкостенных конструкций}, media = {text}, type = {docthesis}, major = {техн. наук}, majorcode = {05.23.17}, location = {Саратов}, date = {2000}, pagetotal = {167}, language = {russian} }

lexxbesson avatar Mar 18 '17 07:03 lexxbesson

@LSinev, на счёт пункта 2 провёл исследование пакета, есть вариант использовать опции movenames=false, minnames=1, maxnames=1. Но эффект всё равно не тот: первый автор сворачивается в "Иванов И. И. [и др.]". Если movenames=true, то вообще все авторы переезжают за слеш, в начале строки авторы исчезают. При этом исходное требование вполне реальное. Вот пример: http://naukaru.ru/journal/requirementsforarticles/Geometriya-i-grafika

lexxbesson avatar Mar 18 '17 08:03 lexxbesson

Напишите автору biblatex-gost с примерами *.bib и *.tex которые он мог бы проcто скопипастить и запустить (как советуют в «I've just been asked to write a minimal example, what is that?») и указанием номером версии пакета (если не последняя версия, то, думаю, попросит обновиться).

LSinev avatar Mar 18 '17 08:03 LSinev

Столкнулся с необходимостью цитирования в тексте введения, который общий для диссертации и автореферата (characteristic.tex). При этом хочется чтоб в автореферате не было цитирования, а в диссертации было. Решил ввести команду:

\newcommand{\ifcite}[1]{\ifnumequal{\value{synopsis}}{0}{\cite{#1}}{}}

Соответственно в setup.tex диссертации и автореферата задаётся synopsis 1 или 0, а в characteristic.tex вместо \cite{} используем \ifcite{}

Не уверен, что сильно распространённый сценарий. Но для гибкости можно предусмотреть.

lexxbesson avatar Mar 27 '17 17:03 lexxbesson

@lexxbesson Опишите это в wiki в каком-нибудь месте, пожалуйста. Наверняка можно сделать какую-то команду, которая бы просто проверяла вызов из диссертации или автореферата и в зависимости от этого разный текст бы подставляла.

Lenchik avatar Mar 27 '17 17:03 Lenchik

Наткнулся на проблему при экспорте из программы для работы с библиографическими записями. В ней удобно хранить полные Имя, Фамилию, Отчество, а при обработке BibTeX не обрезает поля как следует. В ссылке на диссертацию, согласно ГОСТ Р. 7.0.11-2011, нужны полные ФИО, в остальных записях сокращённые И. О.

daniil-timofeev avatar Aug 26 '17 17:08 daniil-timofeev

@daniil-timofeev можете чуть подробнее изложить суть в отдельном issue с примером записи, которая в текущей версии шаблона воспроизведет вашу проблему?

Lenchik avatar Aug 26 '17 17:08 Lenchik

Попробую. Цитата

@book{Kavanaugh.2014,
 author = {Kavanaugh, Steve and Rafferty, Kevin},
 year = {2014},
 title = {Geothermal heating and cooling: Design of Ground-Source Heat Pump systems},
 address = {Atlanta},
 publisher = {ASHRAE},
 isbn = {978-1-936504-85-5},
 language = {English}
}

Форматируется в:

  1. Kavanaugh Steve, Rafferty Kevin. Geothermal heating and cooling: Design of Ground-Source Heat Pump systems. — Atlanta: ASHRAE, 2014.

А должно:

  1. Kavanaugh S., Rafferty K. Geothermal heating and cooling: Design of Ground-Source Heat Pump systems. — Atlanta: ASHRAE, 2014.

Или:

  1. Kavanaugh, S. Geothermal heating and cooling. Design of Ground-Source Heat Pump systems / S. Kavanaugh, K. Rafferty. — Atlanta: ASHRAE, 2014.

Второй момент, тоже связанный с авторами:

@book{Kalitkin.2014g,
  author = {Калиткин, Н Н},
  year = {2014},
  title = {Численные методы: учеб. пособие.},
  address = {СПб.},
  edition = {2-е изд., исправленное},
  publisher = {БВХ-Петербург},
  language = {russian}
}

Точки после инициалов автоматически не поставятся: 2. Калиткин Н Н. Численные методы: учеб. пособие. — 2-е изд., исправленное изд. — СПб.: БВХ-Петербург, 2014.

Ещё момент: Если в графе edition стоит цифра, то нужно дописывать слово изд., если же там не цифра, то здорово будет, если содержимое будет вставляться в режиме: "я знаю, что делаю", с прибавлением тире перед и точки после написанного. То же самое с томом.

daniil-timofeev avatar Aug 28 '17 10:08 daniil-timofeev

изложить суть в отдельном issue

Попробую.

Для каждой проблемы отдельный issue — так организационно удобней, и отслеживать проще.

Вы, часом, не bibtex ли реализацию используете (то есть в https://github.com/AndreyAkinshin/Russian-Phd-LaTeX-Dissertation-Template/blob/master/common/setup.tex#L27 у вас 0 стоит)? Если да, то забудьте, bibtex не умеет сокращать слова при использовании кодировки utf8.

Хорошее решение уже реализовано в biblatex+biblatex-gost, включенном в шаблоне по-умолчанию.

Lenchik avatar Aug 28 '17 12:08 Lenchik

Часом, bibtex. Сейчас скомпилировал biberом одну цитату в свежеклонированном шаблоне, получилось вот так: Steve Kavanaugh и Kevin Rafferty. –– Geothermal heating and cooling. Design of Ground-Source Heat Pump systems. –– Atlanta: ASHRAE, 2014. –– 420 с. –– ISBN: 978-1-936504-85-5.

Названия не сократились, добавилось и между авторами. Тире перед title не нужно, и перед ISBN тире, скорее всего, не нужно.

daniil-timofeev avatar Aug 29 '17 16:08 daniil-timofeev

В текущее версии шаблона с репозитория в файле othercites.bib изменены две записи до приводимого вами состояния:

@BOOK{Sokolov,
 author = {Kavanaugh, Steve and Rafferty, Kevin},
 year = {2014},
 title = {Geothermal heating and cooling: Design of Ground-Source Heat Pump systems},
 address = {Atlanta},
 publisher = {ASHRAE},
 isbn = {978-1-936504-85-5},
 language = {English}
}

@BOOK{Gaidaenko,
  author = {Калиткин, Н Н},
  year = {2014},
  title = {Численные методы: учеб. пособие.},
  address = {СПб.},
  edition = {2-е изд., исправленное},
  publisher = {БВХ-Петербург},
  language = {russian}
}

Других изменений в файлах шаблона с репозитория не производилось. Скомпилировано на системе с TeXLive 2017, biblatex 3.7, biblatex-gost 1.16 при помощи latexmk. Для соответствующих пунктов в списке литературы получено:

  1. Kavanaugh S. Geothermal heating and cooling: Design of Ground-Source Heat Pump systems / S. Kavanaugh, K. Rafferty. — Atlanta : ASHRAE, 2014.
  2. Калиткин Н. Н. Численные методы: учеб. пособие. / Н. Н. Калиткин. — 2-е изд., исправленное. — СПб. : БВХ-Петербург, 2014.

Lenchik avatar Aug 29 '17 16:08 Lenchik

В экпериментальных наработках biblatex+biber возможен такой вариант. https://github.com/plk/biblatex/issues/416#issuecomment-584812914

Just to keep this somewhere, here is a somewhat contrived example with one of your entries, cleaned up to use the correct alternates. The output is not supposed to be perfect, it's just to demonstrate teh handling of multiple alternates of entryfields. This functionality is available in the experimental v4.0 versions of biblatex and biber (which should be backwards compatible with the current released version too). I am also ignoring in the output that biblatex has no japanese strings localisation currently:

\documentclass[a4paper]{article}
\usepackage{luatexja-fontspec}
\setmainfont{TeXGyrePagella-Regular}
\setmainjfont{IPAexMincho}
\usepackage[english,main=japanese]{babel}
\begin{filecontents}[force]{\jobname.bib}
@ARTICLE{Anan_2010_Pfeilkoecher-Kesao,
  LANGID                               = {japanese},
  AUTHOR                               = {阿南,*,亨},
  AUTHOR_transcription_ja-Hira         = {あなん,*,とおる?},
  AUTHOR_transliteration_ja-Latn       = {Anan, Tōru},
  TITLE                                = {袈裟尾高塚古墳の靫},
  TITLE_transcription_ja-Hira          = {けさおたかつかこふんのゆき},
  TITLE_transliteration_ja-Latn	       = {Kesao takazuka kofun no yuki},
  TITLE_translation_en                 = {The quivers of the Kesao tumulus},
  JOURNALTITLE                         = {熊本古墳研究},
  JOURNALTITLE_transcription_ja-Hira   = {くまもとこふんけんきゅう},
  JOURNALTITLE_transliteration_ja-Latn = {Kumamoto Kofun Kenkyū},
  PAGES                                = {44-54},
  VOLUME                               = 3,
  YEAR                                 = 2010,
  MONTH                                = 5,
  OWNER                                = {M. Shinoto},
  TIMESTAMP                            = {2014.03.16},
  WHAT                                 = {Sonderdruck}
}
\end{filecontents}
\usepackage{csquotes}
\usepackage[style=authoryear,%
            dynamiclabel=true,%
            language=auto,%
            autolang=other,%
            autofieldlang=other]{biblatex}
\addbibresource{\jobname.bib}

% Temporary, until we have a real babel/polyglossia<->BCP47 mapping capability
\maplangtag{ja-latn}{english}% Use babel english for latin script Japanese
\maplangtag{ja-hira}{japanese}% Use babel japanese for Hiragana script Japanese
\DeclareMsselect{japanese}{
  \alternate{transcription}{ja-hira}
  \alternate{transliteration}{ja-latn}
}
\begin{document}
\cite{Anan_2010_Pfeilkoecher-Kesao}
\printbibliography
\newrefcontext[msform=transcription,mslang=ja-hira]
\printbibliography
\newrefcontext[msform=transliteration,mslang=ja-latn]
\printbibliography
\end{document}

LSinev avatar Feb 24 '20 15:02 LSinev