2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Порядок списка литературы BibTEX
Сообщение02.10.2021, 18:46 


02/10/21
5
Добрый вечер всем продвинутым ТеХнарям и прочим хорошим людям! Столкнулся совсем недавно с вопросом публикации статьи в научном журнале. Одно из требований - Латех. Разобрался, взял у них шаблон, повесил все нужные окружения и пакеты, сборка проходит на ура через консоль. Но, список литературы. Если кратко, он у меня выглядит так:
1. A 2. B 3. C 4. D 5. E 6. F - именно в таком порядке он набран в файлике lit.bib и на английском в файле englit.bib
После компиляции русский список литературы ВНЕЗАПНО поменялся в порядке расположения источников, стало 1. A 2. D 3. E 4. F 5. B 6. C. Список литературы на английском языке расположился правильно, без изменений. По тексту все ссылки, само собой, подстроились под изменения и набранная в тексте ссылка, к примеру, [1,3] превратилась в [1,6]. Все бы ничего, я даже готов с этим смириться, но ведь у двух списков получается разная нумерация (русский и английский списки имеются ввиду). И, собственно, вопрос: КАК заставить русский список печататься (собираться, компилироваться) как я хочу? Почему вдруг порядок изменился? Научите, вразумите, товарищи.
Всех благ и жду наставлений. Спасибо!

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение03.10.2021, 06:44 


30/09/20
78
А скопируйте-ка текст из файла lit.bib, вдруг, чего там накосячили?

В крайнем случае можно вручную присвоить порядковый номер книге:
Код:
\bibitem[2]{Книга B}

А затем присвоить счетчику enumiv, который присваивает порядковые номера книгам, значение, на единицу больше присвоенного:
Код:
\setcounter{enumiv}{3}

Тогда bibtex пропечатает книгу B с присвоенным номером 2, а всем остальным книгам придаст номера по порядку, начиная с 3.

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение03.10.2021, 10:30 


02/10/21
5
Такс, вот текст из файла lit.bib
код: [ скачать ] [ спрятать ]
Используется синтаксис BibTeX
@book{ref1,
  author={Т.М, Саламахин},
  title={Физические основы механического действия взрыва и методы определения взрывных нагрузок},
  publisher={ВИА},
  address={Москва},
  year={1974},
  numpages={255},
  language={russian}
}
@book{ref2,
  author={Б.В, Замышляев and Ю.С., Яковлев},
  title={Динамические нагрузки при подводном взрыве},
  publisher={Судостроение},
  address={Москва},
  year={1967},
  numpages={194},
  language={russian}
}
@book{ref3,
  author={Г.Т, Володин},
  title={Действие взрыва зарядов конденсированного ВВ в газовой и жидкой средах. Часть 2. Взрывостойкость и гарантированное разрушение элементов конструкций},
  publisher={Левша},
  address={Тула},
  year={2005},
  numpages={160},
  language={russian}
}
@book{ref4,
  author={Р.Г, Коул},
  title={Подводные взрывы},
  publisher={ИЛ},
  address={Москва},
  year={1950},
  numpages={495},
  language={russian}
}
@book{ref5,
  author={Б.Д, Христофоров},
  title={Влияние свойств источника на действие взрыва в воздухе и воде},
  publisher={Физика горения и взрыва},
  address={},
  year={2004},
  numpages={115-118},
  language={russian}
}
@book{ref6,
  author={В.К, Кедринский},
  title={Гидродинамика взрыва: эксперимент и модели},
  publisher={СО РАН},
  address={Новосибирск},
  year={2000},
  numpages={},
  language={russian}
}


Вполне допускаю, что здесь может быть косяк, но вообще, при компиле в CMD ошибок не пишет, а говорит, что база собрана, ну или около того.

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение03.10.2021, 16:20 


30/09/20
78
Тут дело может быть вот в чем. Когда вы прописываете аргументы в квадратных скобках в преамбуле
Код:
\usepackage[...style=chem-angew]{biblatex},

вы выбираете определенный "стиль библиографии", например, chem-angew. В зависимости от стиля, нумерация зафиксируется либо в алфавитном порядке, либо в порядке упоминания, либо в порядке перечисления, либо в каком-то другом порядке. Чтобы не ломать голову над этим, можно просто добавить sorting=none в список аргументов:
Код:
\usepackage[..., style=chem-angew, sorting=none]{biblatex}.

В принципе, это должно решить проблему.

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение03.10.2021, 21:26 


02/10/21
5
Такс. Я делаю по шаблону, тут сразу готовый набор из кучи usepackage. Вот, весь набор вплоть до begin document. По-моему, упомянутого вами пакета нет. Можно просто подключить получается?
код: [ скачать ] [ спрятать ]
Используется синтаксис LaTeX
\documentclass[11pt,reqno]{amsart}
\usepackage{amsmath}
\usepackage{mathtext}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{tikz}
\usepackage[russian]{babel}


\usepackage{amssymb}
\usepackage{graphics}
\usepackage{graphicx}
\usepackage{color}
\usepackage{amsbsy}
\usepackage{citehack}
\usepackage{longtable}
\usepackage{epsf}
\newcommand{\tab}{\makebox[4em]{}}
\usepackage{fancyhdr}
\usepackage{rotating}
\usepackage[small]{caption2}
\usepackage{wrapfig}
\usepackage{array}
\usepackage{multirow}
\usepackage{hhline}
%\usepackage[caption=false]{subfig}
\usepackage{bibunits}

%% \usepackage{misccorr}



\usepackage{predel}

\newcommand{\grad}{{\rm {grad}}}
\newcommand{\rot}{{\rm {rot}}}
\newcommand{\sgn}{{\rm {sgn}}}
\newcommand{\Alpha}{{\rm {A}}}
\newcommand{\Beta}{{\rm {B}}}
\newcommand{\sign}{{\rm {sign}}}
\renewcommand{\thefigure}{\arabic{figure}}
\renewcommand{\captionlabeldelim}{.}
\newcommand{\diff}[2]{\dfrac{d{#1}}{d{#2}}}
\newcommand{\pdiff}[2]{\dfrac{\partial{#1}}{\partial{#2}}}
\theoremstyle{plain}
\newtheorem{theorem}{Теорема}
\newtheorem{lemma}{Лемма}
\newtheorem{proposition}{Предложение}
\newtheorem{axiom}{аксиома}
\newtheorem{conjecture}{гипотеза}
\renewcommand{\contentsname}{Содержание}
\providecommand{\No}{\textnumero}
\DeclareMathOperator{\tr}{tr}
%        ненумерованные окружения
\newtheorem*{theoremnn}{Теорема}
% Просто теорема (без номера)

%        Окружения с прямым шрифтом
\theoremstyle{definition}
\newtheorem{definition}{Определение}
\newtheorem{corollary}{Следствие}
\newtheorem{remark}{Замечание}
\newtheorem{algorithm}{Algorithm}

\newcommand{\Arsh}{{\rm {Arsh}}}
\newcommand{\Arch}{{\rm {Arch}}}

%        Автор(ы), инициалы, фамилия
% Если используются строчные буквы, напр. (мл.),
% то убрать \MakeUppercase{ } и набирать все прописными буквами

%% верхний колонтитул на четных страницах

\god{20XX}         %% заполняется редакцией
\nomer{\,X\,(XX)}     %% заполняется редакцией

\setcounter{page}{1}


% \dedic{Посвящается ...}  %% Посвящение (при необходимости)
% Можно использовать \begin{flushright} ... \protect\\ \end{flushright}
% если посвящение в 2-3 строки
\renewcommand{\captionlabeldelim}{.}

\begin{document}
\selectlanguage{russian}
\begin{bibunit}[utf8gost705u]

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение04.10.2021, 00:04 
Заслуженный участник


09/05/12
25179
 !  Legendary, на будущее: пользуйтесь тэгами подсветки синтаксиса или хотя бы тэгом code. В противном случае сообщения как минимум неудобно читать, а как максимум вы можете наткнуться нетривиальное взаимодействие собственных исходников с движком форума. Предыдущие сообщения я уже сам поправил.

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение04.10.2021, 17:58 


02/10/21
5
Модератор, прошу прощения, исправлюсь.
Я внёс таки
Код:
\usepackage[sorting=none]{biblatex}
в преамбулу документа. Наверное, мне стоило сказать раньше, что помимо предоставленного редакцией журнала шаблона, также был предоставлен их стилевой файл predel.sty. К сути: после компиляции с новой преамбулой я получил ошибку "Package biblatex Error: Incompatible package 'bibunits'. \begin{document}". Немного погуглив, я выделил несколько причин, по которым она может появляться.
1) Не обновлена версия MikTex - проверил, она последняя.
2) В документе используются греческие символы - да, это так. Статья математического характера.
Как посоветуете справиться с этим?
P.S. Что ж, стоит признать, что я еще не всё знаю о ЛаТеХе, есть чему учиться. Всё еще недостоин:)
Спасибо всем кто откликнулся ранее, и тем, кто только собирается!

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение05.10.2021, 11:54 


30/09/20
78
Legendary в сообщении #1533914 писал(а):
Как посоветуете справиться с этим?

Если подключен bibunits, то подключать biblatex не надо; у вас по каждому разделу, получается, отдельная библиография? Раз уж подключен bibunits.

По вашей проблеме - я думаю, собака зарыта в стилевом файле utf8gost705u. На гитхабе выложена ее реализация. Я попробую связаться с автором, если он жив, и "прищемить" его за странную нумерацию. Авось, получу какую-либо информацию.

 Профиль  
                  
 
 Re: Порядок списка литературы BibTEX
Сообщение05.10.2021, 14:50 


02/10/21
5
Verkhovtsev
Что значит отдельная библиография по каждому разделу?:)
Один тех-файлик представляет собой заполненный шаблон редакции — научную статью. И у них как раз в этом шаблоне изначально был bibunits, плюс к этому в архиве с шаблоном лежал файлик utf8gost705u.bst. А самое интересное, что по этому шаблону я пишу уже четвертую статью и никогда подобной проблемы не возникало.
Что ж, буду ждать тогда "защемления" :D :D
Спасибо!

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group