![biblatex:如何分隔参考文献中的作者姓名?](https://linux22.com/image/356887/biblatex%EF%BC%9A%E5%A6%82%E4%BD%95%E5%88%86%E9%9A%94%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE%E4%B8%AD%E7%9A%84%E4%BD%9C%E8%80%85%E5%A7%93%E5%90%8D%EF%BC%9F.png)
我使用 biblatex 作为参考文献,“主要作者姓名”和“所有作者姓名”应该与文章标题分开,如下所示:
我尝试authors
在.bib
文件中添加自定义字段,如下所示:
@article{Abd_2014,
author = {Abdullin A.A.},
authors = {Abdullin A.A. AND Drozdov V.N. AND Plotitsyn},
title = {Optimal Control System},
journaltitle = {Advances in Automatic Control},
date = {2014},
pages = {22-26}
}
然后将其添加到序言中(我在 biblatex.pdf 用户手册文件中读过此内容)
\DeclareBibliographyDriver{article}{
\usebibmacro{bibindex}
\usebibmacro{begentry}
\printnames{author}
\newunit\newblock
\printfield{title}
\newunit\newblock
\printfield{authors} % \printnames or \printlist didn't help either
\newunit
\printfield{journaltitle}
\newunit
\printfield{year}
\newunit
\printfield{pages}
\usebibmacro{finentry}
}
我也需要消除出现的压痕。
以下是整个.tex
文件
\documentclass[twoside, final, 10pt]{extreport}
\usepackage{extsizes}
\usepackage{mathtext}
\usepackage{cmap}
\usepackage[T2A]{fontenc}
\usepackage[english,russian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{pscyr}
\usepackage[a5paper,left=2.5cm,right=1.5cm,top=2cm,bottom=2cm]{geometry}
\usepackage[maxbibnames = 99, sorting = nyt, style = numeric-comp, backend = biber, bibencoding = utf8]{biblatex}
\DeclareFieldFormat{labelnumberwidth}{#1\adddot}
\DeclareFieldFormat[article]{title}{\textit{#1}}
\DeclareFieldFormat[article]{pages}{C. #1}
\DeclareFieldFormat[article]{journaltitle}{#1}
\renewbibmacro{in:}{\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
\AtBeginBibliography{
\renewcommand*{\finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{}{}\space}
}
\DeclareBibliographyDriver{article}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\printnames{author}%
\newunit\newblock
\printfield{title}%
\newunit\newblock
\printfield{authors}%
\newunit
\printfield{journaltitle}%
\newunit
\printfield{year}%
\newunit
\printfield{pages}%
\usebibmacro{finentry}
}
\begin{filecontents}{\jobname.bib}
@article{Abd_2014,
author = {Abdullin A.A.},
authors = {Abdullin A.A. AND Drozdov V.N. AND Plotitsyn},
title = {Optimal Control System},
journaltitle = {Advances in Automatic Control},
date = {2014},
pages = {22-26}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\usepackage[unicode, hidelinks]{hyperref}
\begin{document}
\nocite{*}
\printbibliography[heading = bibintoc, title = ЛИТЕРАТУРА]
\end{document}
答案1
由于您想实现 ГОСТ/GOST 样式,我建议您使用 Oleg Domanov 的biblatex-gost
包裹。
不幸的是,我的俄语还不够好,无法正确阅读文档,但您似乎只需使用style=numeric-gost
和特殊bbx:gostbibliography
切换即可。
\toggletrue{bbx:gostbibliography}
我使用了movenames=false
选项,但您可能更喜欢使用默认的movenames=true
。(在 MWE 中,您可以看到的区别aksin
。)
平均能量损失
\documentclass{article}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
\usepackage{csquotes}
\usepackage[maxbibnames = 99, sorting = nyt, style = gost-numeric, backend = biber, movenames=false]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Abd_2014,
author = {Abdullin, A. A. AND Drozdov, V. N. AND Plotitsyn, A. A.},
title = {Optimal Control System},
journaltitle = {Advances in Automatic Control},
date = {2014},
pages = {22-26}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}
\usepackage[unicode, hidelinks]{hyperref}
\toggletrue{bbx:gostbibliography}
\begin{document}
\cite{Abd_2014,sigfridsson,worman,aksin}
\printbibliography[heading = bibintoc, title = ЛИТЕРАТУРА]
\end{document}
请注意我如何更改您的示例.bib
条目以使用正确的名称格式。