zepinglee / gbt7714-bibtex-style

GB/T 7714-2015 BibTeX Style
LaTeX Project Public License v1.3c
1.16k stars 197 forks source link

与 cite 宏包同时使用时导致编译报错 #72

Closed Pathsis closed 3 years ago

Pathsis commented 3 years ago

只用ustc的变体成功过?大人,您能告诉我这到底怎么用吗?按照readme的方法,显示没有bbl。

zepinglee commented 3 years ago
  1. 什么是“完全不能用”?使用了什么操作,报什么错?
  2. 如果不会使用 BibTeX,应该去看相关的入门教程。
real-bird-kun commented 3 years ago
  1. 按照 readme 中的步骤来的:①在导言区调用宏包 \usepackage{gbt7714};②在正文中 \cite{文献};③\bibliographystyle{gbt7714-numerical}; ④\bibliography{testRef} 生成参考文献。

报错:①No file thesis.bbl; ②No file thesis.aux.

zepinglee commented 3 years ago

报错:①No file thesis.bbl; ②No file thesis.aux.

你需要阅读 http://mirrors.ctan.org/info/lshort/chinese/lshort-zh-cn.pdf 第 6.1 节,尤其是编译的方式。

Pathsis commented 3 years ago

报错:①No file thesis.bbl; ②No file thesis.aux.

你需要阅读 http://mirrors.ctan.org/info/lshort/chinese/lshort-zh-cn.pdf 第 6.1 节,尤其是编译的方式。

我是注释掉natbib包得以正常编译,当然gbt7714.sty和相应的bst文件与tex文件放同一目录。ustc的变体不需要引7714包,也不需要注释掉natbib,是这样吗?无论如何,还是很感谢!另外,如何与natbib兼容的呢?

zepinglee commented 3 years ago

我是注释掉natbib包得以正常编译,当然gbt7714.sty和相应的bst文件与tex文件放同一目录。ustc的变体不需要引7714包,也不需要注释掉natbib,是这样吗?无论如何,还是很感谢!另外,如何与natbib兼容的呢?

ustc、thu 的变体也需要在 gbt7714.sty 的大部分内容,也需要 natbib,只是由于文件名不同,少数的设置需要修改。

你的问题可能是因为先前已经调用了 natbib,再调用 gbt7714 时出现了 option clash。但是最好给出复现问题的最小代码(MWE)和报错内容以方便讨论。

real-bird-kun commented 3 years ago

我用vscode来写的, vscode中的配置就是先xelatex, 再bibtex, 然后再有两次xelatex。

我通过自己手动修改.bib文件,把and变为“,”, 实现了正常我想要的效果,所以我并不认为是我的编译过程出了问题。此外,我并没有用到natbib包,vscode报错也是指向我在正文中的 \cite 的那一行。

zepinglee commented 3 years ago

我通过自己手动修改.bib文件,把and变为“,”, 实现了正常我想要的效果,所以我并不认为是我的编译过程出了问题。

这种用法是有问题的。

此外,我并没有用到natbib包,vscode报错也是指向我在正文中的 \cite 的那一行。

具体什么报错?导言区什么设置?

real-bird-kun commented 3 years ago

导言区的设置为:

\documentclass[UTF8,a4paper,10pt]{ctexart}

\usepackage[left=2.50cm, right=2.50cm, top=2.50cm, bottom=2.50cm]{geometry} %页边距

\CTEXsetup[format={\normalsize\bfseries}]{section} %设置章标题居左

%\CTEXsetup[name = {第,节}]{section}

\CTEXsetup[number = \chinese{section} 、]{section}

\usepackage{cite}
\usepackage{gbt7714}

我是在文章的结尾设置:

\bibliographystyle{gbt7714-numerical}
\bibliography{refRandom}

报错信息为: ①No file thesis.bbl; ②No file thesis.aux.

zepinglee commented 3 years ago

导言区的设置为:

\documentclass[UTF8,a4paper,10pt]{ctexart}

\usepackage[left=2.50cm, right=2.50cm, top=2.50cm, bottom=2.50cm]{geometry} %页边距

\CTEXsetup[format={\normalsize\bfseries}]{section} %设置章标题居左

%\CTEXsetup[name = {第,节}]{section}

\CTEXsetup[number = \chinese{section} 、]{section}

\usepackage{cite}
\usepackage{gbt7714}

我是在文章的结尾设置:

\bibliographystyle{gbt7714-numerical}
\bibliography{refRandom}

报错信息为: ①No file thesis.bbl; ②No file thesis.aux.

citenatbib 不兼容,而 gbt7714 依赖 natbib,所以会冲突。

real-bird-kun commented 3 years ago

问题解决,谢谢: )

zepinglee commented 3 years ago

@mkyos 建议发 issue 时

  1. 描述清楚你的问题,而不是“xxx 完全不能用”;
  2. 不要使用“大人”的称呼,大家只是愿意贡献代码的开发者。
Pathsis commented 3 years ago

我失礼了,多谢你的提醒。另外,我搞不明白为什么这个搞得如此复杂?那一堆文件我自己编译也不成功,看readme也不能知道不要再引入natbib包,LaTex实在太恐怖了,为什么不能把事情做得简单点呢?

zepinglee commented 3 years ago

我失礼了,多谢你的提醒。另外,我搞不明白为什么这个搞得如此复杂?那一堆文件我自己编译也不成功,看readme也不能知道不要再引入natbib包,LaTex实在太恐怖了,为什么不能把事情做得简单点呢?

这只是是个 natbibcite 之间的宏包冲突问题,在 LaTeX 中普遍存在。这主要跟 TeX 语言的设计有关。通常这些问题主要由模板作者处理,普通用户无需关注。