Closed yangtzech closed 1 year ago
英文作者中et al. 的确变成了等,但是等的前后还有空格。
个人理解,还应该去掉空格,不知是否正确,以及是否可以实现
1)英文作者中 等 后面的空格应该去掉
A 等 提出了一种方法[1]。
2)中文作者中 等 前后的空格都应该去掉
张三 等 提出了一种方法[1]。
姓名与“等”之间的空格是沿用国标的著者-出版年制的格式。
如果想去掉可以将这部分 https://github.com/zepinglee/gbt7714-bibtex-style/blob/b624e169748b8f2886a9330508893a9dcfe89457/gbt7714-2005-numerical.bst#L2194-L2197 改成
{ entry.lang lang.zh =
'skip$
{ bbl.space * }
if$
citation.et.al *
#1 'namesleft :=
}
\citeauthor
后有一小段空白,而且用luatex 编译出的空白比 xetex 要大。感觉比较复杂,需要再分析 \citeauthor
的底层命令。
\documentclass{ctexart}
\usepackage[sort]{gbt7714}
\begin{document}
陈登原提出了一种\par
\citeauthor{4.1.2:1}提出了一种\par
\citeauthor{4.2.2:3}提出了一种\par
\citeauthor{4.4.2:9}提出了一种
\bibliographystyle{gbt7714-numerical}
\bibliography{standard}
\end{document}
BibTeX 输出的 .bbl
片段:
\bibitem[陈登原(2000)]{4.1.2:1}
陈登原.
\newblock 国史旧闻: 第 1 卷\allowbreak[M].
\newblock 北京: 中华书局, 2000: 29.
\bibitem[陈晋镳{\bibetal}(1980)陈晋镳, 张惠民, 朱士兴, 赵震, and
王振刚]{4.2.2:3}
陈晋镳, 张惠民, 朱士兴, 等.
xetex:
luatex:
好的,我试试。主要是中文环境下感觉留空很奇怪。
其实我发现这样用 \citeauthor{} 并不方便, \citeauthor{} 中还要放入 key,但对于英文文献而言,如果使用better bibtex导出key的话,是包含有第一个作者的姓的,直接根据key来写就好了。麻烦你了。
目前我使用的方法是:
得到的结果是
但我想要的效果是:
citeauthor正文中引用英文论文时, 1、把英文的et al.改成等 2、去掉等前后的空格
我使用的模板是https://github.com/1FCENdoge/SYSUThesis ,尝试了使用
\newcommand\bibetal{等} \newcommand\biband{和}
没有效果update: 我找了相关的issue mohuangrui/ucasthesis#95,但是其中提到地ucas分支好像找不到了