在 biblatex-gost 中调整作者

在 biblatex-gost 中调整作者

biblatex我使用和生成参考书目biblatex-gost。我需要调整参考书目中作者的显示:

  1. 整个作者列表应该以\by
  2. 姓名首字母应放在姓氏
  3. 首字母应以\,
  4. ~首字母和姓氏之间应该有一个

因此,我需要例如

\by C.\,J.~Goodwin, A.~Smith

第 3 点看起来已经解决了,但其他问题尚未解决。

梅威瑟:

\documentclass{article}
\usepackage[backend=biber,style=gost-numeric,sorting=none]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{cgood1980,
    Author = {Charles John Goodwin and Alice Smith},
    Journal = {Sociological Inquiry},
    Number = {3-4},
    Pages = {272-302},
    Title = {Restarts at turn-beginning},
    Volume = 50,
    Year = 1984,
}
\end{filecontents}
\addbibresource{\jobname.bib} 

\begin{document}
    \parencite{cgood1980}
    
    \renewcommand*{\bibinitdelim}{\textbackslash,} % Works perfectly!

    % Desired result:
    % \by C.\,J.~Goodwin, A.~Smith

    %\renewcommand*{\bibinitperiod}{\~{\space}} % Does NOT what I need
    
    %\DeclareNameAlias{sortname}{last-first} % No effect!
    %\DeclareNameAlias{sortname}{first-last} % No effect!
    %\DeclareNameAlias{headingname:family-given}{last-first} % No effect!
    %\DeclareNameAlias{headingname:family-given}{first-last} % No effect!

    
    \printbibliography
\end{document}

我意识到(显然!)它不应该符合 GOST 标准;事实上,我的目标要复杂得多:我试图创建一个解决方法,将通常的biblatex书目转换为符合amsbibGOST 标准的书目(amsbib这是 Steklov 数学研究所发明的一种俄罗斯黑魔法;就像豚鼠一样,它与 AMS 和 BibTeX 都没有任何共同之处)。事实上,我的解决方案是一个包装器biblatex2bibitem, 也可以看看这个问题作者的问题似乎是我必须解决的最后一个已知问题;所有其他问题都相当病态。

答案1

biblatex-gost样式中,参考书目条目开头的名称由heading名称格式控制。

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[backend=biber,style=gost-numeric,sorting=none]{biblatex}

% 1
\DeclareNameWrapperFormat{heading}{\textbackslash by #1}
% 2
\DeclareNameAlias{heading}{given-family}
% 3
\renewcommand*{\bibinitdelim}{\textbackslash,}
% 4
\renewcommand*{\bibnamedelimd}{\textasciitilde}

\begin{filecontents}{\jobname.bib}
@article{cgood1980,
  Author  = {Charles John Goodwin and Alice Smith},
  Journal = {Sociological Inquiry},
  Number  = {3-4},
  Pages   = {272-302},
  Title   = {Restarts at turn-beginning},
  Volume  = 50,
  Year    = 1984,
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
  \parencite{cgood1980}

  \printbibliography
\end{document}

\by C.,J.~Goodwin, A.~Smith。从回合开始重新开始 // 社会学调查。— 1984 年。— 第 50 卷,第 3/4 期。— 第 272–302 页。

相关内容