
Я пытаюсь использовать пакет achemso для своей библиографии и у меня возникли проблемы со ссылками. Но я не могу увидеть ни одной в созданном pdf. Это пакет, который я использовал
\begin{filecontents}{\jobname.bib}% and this is my bib file
@article{1,
title={Resistance of Neisseria gonorrhoeae to antimicrobial hydrophobic agents is modulated by the mtrRCDE efflux system},
author={Hagman, Kayla E and Pan, Wubin and Spratt, Brian G and Balthazar, Jacqueline T and Judd, Ralph C and Shafer, William M},
journal={Microbiology},
volume={141},
number={3},
pages={611--622},
year={1995},
publisher={Microbiology Society}
}
\end{filecontents}
\documentclass[journal=jacsat, layout=singlecolumn]{achemso}
\setkeys{acs}{articletitle=true}
\usepackage[latin1]{inputenc}
\usepackage[english]{babel}
\usepackage{xkeyval}
\usepackage{cite}
\usepackage{amstext}
\usepackage{csvsimple}
\usepackage{amsmath}
\usepackage{hyperref}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{refstyle}
\usepackage{amstext}
\usepackage{gensymb}
\usepackage{upgreek}
\usepackage{natmove}
\usepackage{natbib}
\usepackage{array}
\title{title}
\begin{document}
\bibliographystyle{achemso}
\bibliography{\jobname}
\end{document}
Может кто-нибудь подскажет, в чем может быть проблема? Спасибо
решение1
Ваша преамбула, честно говоря, полный бардак. Я сильно подозреваю, что вы на самом деле не знаете, зачем загружаете по крайней мере половину пакетов, включенных в ваш MWE (где они в любом случае не имеют значения). Это важно, потому что ошибки, таинственные странности и другие смутные и унылые события, как правило, происходят в таких случаях.
Вы не упоминаете об ошибках компиляции, что очень странно, потому что даже с очевидными исправлениями я не смог скомпилировать ваш код без ошибок. Поэтому я не уверен, будет ли это полезно, потому что я не уверен, что воспроизвел проблему, с которой вы столкнулись. Но даже если нет, вам определенно следует почистить преамбулу.
Вот некоторые общие рекомендации:
- загрузите столько пакетов, сколько вам нужнои не более;
- если вы не уверены, нужен ли вам пакет, закомментируйте загрузку и протестируйте;
- никогда не загружайте посылку дважды;
- не загружайте пакеты, которые загружаются другими пакетами, по крайней мере, когда эта связь является смыслом существования первого пакета, например,
amstext
отличается отamsmath
именно потому, что вы можете захотеть использовать первый без второго — она бесполезна при загрузке последнего (аналогично дляamsfonts
иamssymb
); - не загружайте пакеты, которые являются частью пакета (в смысле CTAN), который предоставляет ваш класс документа, если этот класс загружает эти пакеты (
natmove
); - никогдазагрузите пакеты, если документация к вашему классу говорит вам, что этоизменяетповедение этих пакетов (
natbib
); - не загружайте пакеты, которые пытаются делать то же самое или управлять точно таким же аспектом вашего документа, если вы не уверены в их совместимости. Если возникнут странности, поместите эти пакеты в начало списка подозреваемых (
achemso.cls
,cite.sty
,natmove.sty
,natbib.sty
и т. д.).
Прочитайте вывод консоли.Предупреждения и ошибки предназначены для предоставления вам информации о том, что не так. Они не всегда делают это очень хорошо, но иногда делают. Например, ошибка сказала мне не использовать \bibliographystyle{}
в документе. Для интерпретации этого сообщения не требовалось никаких особых знаний TeX или LaTeX. Ошибки также указывали на проблемы с natmove.sty
и cite.sty
, но для их интерпретации требовалось немного больше опыта. Но документация ( texdoc natmove
) рассказала мне довольно много в очень простых терминах: например, что achemso
изменяет , и что это может потребовать корректировки вашего файла для достижения наилучших результатов. Я рекомендую это.natbib
.bib
Я прокомментировал свои изменения в вашем MWE ниже. Результат производит
\begin{filecontents}{\jobname.bib}
@article{hagman1995,
title={Resistance of Neisseria gonorrhoeae to antimicrobial hydrophobic agents is modulated by the mtrRCDE efflux system},
author={Hagman, Kayla E and Pan, Wubin and Spratt, Brian G and Balthazar, Jacqueline T and Judd, Ralph C and Shafer, William M},
journal={Microbiology},
volume={141},
number={3},
pages={611--622},
year={1995},
publisher={Microbiology Society}
}
\end{filecontents}
\documentclass[journal=jacsat, layout=singlecolumn]{achemso}% loads natbib, natmove
\setkeys{acs}{articletitle=true}
\usepackage[latin1]{inputenc}% are you really using latin1 input encoding? why? consider switching to utf8.... - not relevant for MWE
\usepackage[english]{babel}% better to specify the variant e.g. british - not relevant for MWE - also there's a weird interaction such that \cite cannot be the first thing in the document if this is loaded (but it is fine otherwise)
% \usepackage{xkeyval}% why are you loading this in a document?
% don't load cite - use achemso's facilities
\usepackage{csvsimple}% not relevant for MWE
\usepackage{amsmath}% includes amstext - not relevant for MWE
\usepackage{amssymb}% includes amsfonts - not relevant for MWE
\usepackage{graphicx}% not relevant for MWE
\usepackage{refstyle}% not relevant for MWE
\usepackage{gensymb}% not relevant for MWE
\usepackage{upgreek}% not relevant for MWE
\usepackage{array}% not relevant for MWE
\usepackage{hyperref}% should be loaded LATE - only packages which you know require later loading should be loaded later - not relevant for MWE
\title{title}% required for MWE
\begin{document}
Some content\cite{hagman1995}% don't use bibkeys such as '1' but something meaningful; 'Some content' added for compatibility with use of babel (see above)
% don't specify another bibstyle command - the class already does this
\bibliography{\jobname}
\end{document}