芝加哥风格的 CJK 文献引用 #2

芝加哥风格的 CJK 文献引用 #2

我经常引用东亚材料,风格类似于韩国医学会会士(但有时在author-date风格上)。这要归功于巧妙的解决方案芝加哥风格的 CJK 文献引文(例如美国东方学会):姓名顺序;转录/翻译的标题

然而,我注意到该问题给出的解决方案存在一个问题:

当我有两个 CJK 名字,它们有相同的姓氏但不同的名字时,名字无法消除歧义。理想情况下,我希望通过将名字添加到姓氏(不包括 CJK 字符)来消除歧义:例如和Zhao Jie 2011Zhao Suisheng 2011但它们都呈现为Zhao 2011

(需要澄清的是,如果它们有相同的名称但引用的出版物有不同的日期,我希望消除歧义;我选择这个例子只是因为问题在这里最明显地出现。)

MWE(基于上一个问题):

\documentclass{article}
\usepackage{xeCJK}
\setCJKmainfont{HanaMinA}%SimSun
% Sets uniquelist=minyear and uniquename=minfull
\usepackage[authordate,backend=biber,bibencoding=utf8]{biblatex-chicago}

% List of name affixes excluding Roman numerals
\forcsvlist{\listadd\nameaffixlist}{Junior,Senior}

\newcommand{\ifnameaffix}[1]{%
  \ifboolexpr{ test {\ifrmnum{#1}} or test {\ifinlist{#1}{\nameaffixlist}} }}

% Based on definitions from biblatex.def    
\DeclareNameFormat{labelname}{%
  \ifboolexpr{ test {\ifblank{#7}} or test {\ifnameaffix{#7}} }
    {\ifcase\value{uniquename}%
       \usebibmacro{name:last}{#1}{#3}{#5}{#7}%
     \or
       \ifuseprefix
         {\usebibmacro{name:first-last}{#1}{#4}{#5}{#8}}
         {\usebibmacro{name:first-last}{#1}{#4}{#6}{#8}}%
     \or
       \usebibmacro{name:first-last}{#1}{#3}{#5}{#7}%
     \fi}%
    {\ifnumequal{\value{uniquename}}{0}%
       {\usebibmacro{name:cjk}{#1}{}{}}
       {\usebibmacro{name:cjk}{#1}{#3}{}}}%
  \usebibmacro{name:andothers}}

\DeclareNameFormat{first-last}{%
  \ifboolexpr{ test {\ifblank{#7}} or test {\ifnameaffix{#7}} }
    {\iffirstinits
       {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
       {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}}
    {\usebibmacro{name:cjk}{#1}{#3}{#7}}%
  \usebibmacro{name:andothers}}

\DeclareNameFormat{last-first}{%
  \ifboolexpr{ test {\ifblank{#7}} or test {\ifnameaffix{#7}} }
    {\iffirstinits
       {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
       {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}}
    {\usebibmacro{name:cjk}{#1}{#3}{#7}}%
  \usebibmacro{name:andothers}}

\DeclareNameFormat{last-first/first-last}{%
  \ifboolexpr{ test {\ifblank{#7}} or test {\ifnameaffix{#7}} }
    {\ifnumequal{\value{listcount}}{1}
       {\iffirstinits
          {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
          {\usebibmacro{name:last-first}{#1}{#3}{#5}{#7}}%
        \ifblank{#3#5}
          {}
          {\usebibmacro{name:revsdelim}}}
       {\iffirstinits
          {\usebibmacro{name:first-last}{#1}{#4}{#5}{#7}}
          {\usebibmacro{name:first-last}{#1}{#3}{#5}{#7}}}}
    {\usebibmacro{name:cjk}{#1}{#3}{#7}}%
  \usebibmacro{name:andothers}}

\newbibmacro*{name:cjk}[3]{%
  \usebibmacro{name:delim}{#2#3#1}%
  \usebibmacro{name:hook}{#2#3#1}%
  \mkbibnamelast{#1}%
  \ifblank{#2}{}{\bibnamedelimd\mkbibnamefirst{#2}}%
  \ifblank{#3}{}{\bibnamedelimd\mkbibnameaffix{#3}}}

% Based on definitions from biblatex-chicago cbx    
\DeclareFieldFormat[book]{title}{%
  \mkbibemph{#1}%
  \iffieldundef{titleaddon}{\isdot}{\nopunct}}

\DeclareFieldFormat{booktitle}{%
  \mkbibemph{#1}%
  \iffieldundef{booktitleaddon}{}{\nopunct}}

\DeclareFieldFormat{maintitle}{%
  \mkbibemph{#1}%
  \iffieldundef{maintitleaddon}{}{\nopunct}}

\DeclareFieldFormat[article]{title}{%
  \iffieldundef{title}{}{\mkbibquote{#1}}%
  \iffieldundef{titleaddon}{\isdot}{\nopunct}}

\DeclareFieldFormat{usere}{\mkbibparens{#1}}

\begin{filecontents}{\jobname.bib}
@book{zhaos,
  title={A Nation-State by Construction: Dynamics of Modern Chinese Nationalism},
  author={Zhao, 趙歲升, Suisheng},
  isbn={9780804750011},
  year={2011},
  publisher={Stanford University Press}}
@article{zhaoj,
  author = {Zhao, 赵杰, Jie},
  title = {Qingdai Manwen de wenzi tese ji yinyun, yinbian tedian},
  titleaddon = {清代满文的文字特色及音韵、音变特点},
  usere = {Scriptual specificities of Manchu writing in the Qing period
       and characteristics of phonology and sound change},
  shorttitle = {Manwen de wenzi tese},
  journal = {Manzu yanjiu},
  volume = {102},
  number = {1},
  date = {2011},
  pages = {7--12}}
@book{li,
  author = {Li, 李无未, Wuwei and Brown, Junior, Bob and Doe, III, John},
  publisher = {Shangwu yinshuguan},
  address = {Beijing},
  title = {Riben Hanyu yinyun xue shi},
  titleaddon = {日本汉语音韵学史},
  usere = {History of the study of Chinese phonology in Japan},
  date = {2011}}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
\noindent
\textcite{li,zhaos,zhaoj} \\
\citeauthor{li,zhaos,zhaoj} \\
\fullcite{li,zhaos,zhaoj}
\printbibliography
\end{document}

输出:

输出

答案1

根据我的回答的第二部分CJK 书目问题,Biblatex-Chicago,它使用了新的扩展名格式,我们只需要重新定义 的格式即可labelname

我们只需添加

\newbibmacro*{name:cjk-nocjk}[3]{%
    \usebibmacro{name:delim}{#2#3#1}%
    \usebibmacro{name:hook}{#2#3#1}%
    \mkbibnamefamily{#1}%
    \ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}}}

\DeclareNameFormat{labelname}{%
  \ifcase\value{uniquename}%
    \usebibmacro{name:family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \or
    \ifdefvoid{\namepartcjk}
      {\ifuseprefix
         {\usebibmacro{name:given-family}
           {\namepartfamily}
           {\namepartgiveni}
           {\namepartprefix}
           {\namepartsuffixi}}
         {\usebibmacro{name:given-family}
           {\namepartfamily}
           {\namepartgiveni}
           {\namepartprefixi}
           {\namepartsuffixi}}}
      {\usebibmacro{name:cjk-nocjk}
         {\namepartfamily}{\namepartgiven}{\namepartcjk}}%
  \or
    \ifdefvoid{\namepartcjk}
      {\usebibmacro{name:given-family}
         {\namepartfamily}
         {\namepartgiven}
         {\namepartprefix}
         {\namepartsuffix}}
      {\usebibmacro{name:name:cjk-nocjk}
         {\namepartfamily}{\namepartgiven}{\namepartcjk}}%
  \fi
  \usebibmacro{name:andothers}}

引用和

\DeclareNameFormat{given-family}{%
  \ifdefvoid{\namepartcjk}
    {\ifgiveninits
       {\usebibmacro{name:given-family}
         {\namepartfamily}
         {\namepartgiveni}
         {\namepartprefix}
         {\namepartsuffix}}
       {\usebibmacro{name:given-family}
         {\namepartfamily}
         {\namepartgiven}
         {\namepartprefix}
         {\namepartsuffix}}}
    {\usebibmacro{name:cjk}{\namepartfamily}{\namepartgiven}{\namepartcjk}}%
    \usebibmacro{name:andothers}}

对于参考书目中的其他名称,西方名称按“名”的顺序排列。

总共

\documentclass{article}
\usepackage[fallback]{xeCJK}
\usepackage{xunicode-addon}
\setmainfont[Ligatures={Common, TeX}]{Times New Roman}
\setCJKmainfont[Scale=1]{SimSun}

\usepackage{filecontents}
\begin{filecontents*}{chicago-authordate.dbx}
\ProvidesFile{chicago-authordate.dbx}[2016/07/24 extended name format for biblatex]
\DeclareDatamodelConstant[type=list]{nameparts}{prefix,family,suffix,given,cjk}
\end{filecontents*}
\begin{filecontents*}{\jobname.bib}
@book{zhaos,
  title={A Nation-State by Construction: Dynamics of Modern Chinese Nationalism},
  author={given=Suisheng, family=Zhao, cjk=趙歲升},
  isbn={9780804750011},
  year={2011},
  address = {Stanford},
  publisher={Stanford University Press}}
@book{jim,
  title={Lorem},
  author={Smith, Junior, Jim},
  year={2009},
  address = {Stanford},
  publisher={Stanford University Press}}
@article{zhaoj,
 author={given=Jie, family=Zhao, cjk=赵杰},
  title = {Qingdai Manwen de wenzi tese ji yinyun, yinbian tedian},
  titleaddon = {清代满文的文字特色及音韵、音变特点},
  usere = {Scriptual specificities of Manchu writing in the Qing period
       and characteristics of phonology and sound change},
  shorttitle = {Manwen de wenzi tese},
  journal = {Manzu yanjiu},
  volume = {102},
  number = {1},
  date = {2011},
  pages = {7--12}}
@book{li,
 author={given=Wuwei, family=Li, cjk=李无未 and Brown, Junior, Bob and Doe, III, John},
  publisher = {Shangwu yinshuguan},
  address = {Beijing},
  title = {Riben Hanyu yinyun xue shi},
  titleaddon = {日本汉语音韵学史},
  usere = {History of the study of Chinese phonology in Japan},
  date = {2011}}
\end{filecontents*}

\usepackage[authordate,backend=biber]{biblatex-chicago}
\addbibresource{\jobname.bib}

% Based on definitions from biblatex.def

\newbibmacro*{name:cjk}[3]{%
    \usebibmacro{name:delim}{#2#3#1}%
    \usebibmacro{name:hook}{#2#3#1}%
    \mkbibnamefamily{#1}%
    \ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}}%
    \ifdefvoid{#3}{}{\bibnamedelimd\mkbibnamecjk{#3}}}

\newbibmacro*{name:cjk-nocjk}[3]{%
    \usebibmacro{name:delim}{#2#3#1}%
    \usebibmacro{name:hook}{#2#3#1}%
    \mkbibnamefamily{#1}%
    \ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}}}

\DeclareNameFormat{labelname}{%
  \ifcase\value{uniquename}%
    \usebibmacro{name:family}
      {\namepartfamily}
      {\namepartgiven}
      {\namepartprefix}
      {\namepartsuffix}%
  \or
    \ifdefvoid{\namepartcjk}
      {\ifuseprefix
         {\usebibmacro{name:given-family}
           {\namepartfamily}
           {\namepartgiveni}
           {\namepartprefix}
           {\namepartsuffixi}}
         {\usebibmacro{name:given-family}
           {\namepartfamily}
           {\namepartgiveni}
           {\namepartprefixi}
           {\namepartsuffixi}}}
      {\usebibmacro{name:cjk-nocjk}
         {\namepartfamily}{\namepartgiven}{\namepartcjk}}%
  \or
    \ifdefvoid{\namepartcjk}
      {\usebibmacro{name:given-family}
         {\namepartfamily}
         {\namepartgiven}
         {\namepartprefix}
         {\namepartsuffix}}
      {\usebibmacro{name:name:cjk-nocjk}
         {\namepartfamily}{\namepartgiven}{\namepartcjk}}%
  \fi
  \usebibmacro{name:andothers}}

\DeclareNameFormat{family-given}{%
  \ifdefvoid{\namepartcjk}
    {\ifgiveninits
        {\usebibmacro{name:family-given}
           {\namepartfamily}
           {\namepartgiveni}
           {\namepartprefix}
           {\namepartsuffix}}
        {\usebibmacro{name:family-given}
           {\namepartfamily}
           {\namepartgiven}
           {\namepartprefix}
           {\namepartsuffix}}}
    {\usebibmacro{name:cjk}{\namepartfamily}{\namepartgiven}{\namepartcjk}}%
  \usebibmacro{name:andothers}}

\DeclareNameFormat{given-family}{%
  \ifdefvoid{\namepartcjk}
    {\ifgiveninits
       {\usebibmacro{name:given-family}
         {\namepartfamily}
         {\namepartgiveni}
         {\namepartprefix}
         {\namepartsuffix}}
       {\usebibmacro{name:given-family}
         {\namepartfamily}
         {\namepartgiven}
         {\namepartprefix}
         {\namepartsuffix}}}
    {\usebibmacro{name:cjk}{\namepartfamily}{\namepartgiven}{\namepartcjk}}%
    \usebibmacro{name:andothers}}

\DeclareNameFormat{family-given/given-family}{%
  \ifdefvoid{\namepartcjk}
    {\ifnumequal{\value{listcount}}{1}
        {\ifgiveninits
           {\usebibmacro{name:family-given}
             {\namepartfamily}
             {\namepartgiveni}
             {\namepartprefix}
             {\namepartsuffix}}
          {\usebibmacro{name:family-given}
             {\namepartfamily}
             {\namepartgiven}
             {\namepartprefix}
             {\namepartsuffix}}%
         \ifboolexpe{%
                     test {\ifdefvoid\namepartgiven}
                     and
                     test {\ifdefvoid\namepartprefix}}
           {}
           {\usebibmacro{name:revsdelim}}}
        {\ifgiveninits
          {\usebibmacro{name:given-family}
             {\namepartfamily}
             {\namepartgiveni}
             {\namepartprefix}
             {\namepartsuffix}}
          {\usebibmacro{name:given-family}
             {\namepartfamily}
             {\namepartgiven}
             {\namepartprefix}
             {\namepartsuffix}}}}
    {\usebibmacro{name:cjk}{\namepartfamily}{\namepartgiven}{\namepartcjk}}%
  \usebibmacro{name:andothers}}

\DeclareFieldFormat[book]{title}{%
    \mkbibemph{#1}%
    \iffieldundef{titleaddon}{\isdot}{\nopunct}}

\DeclareFieldFormat{booktitle}{%
    \mkbibemph{#1}%
    \iffieldundef{booktitleaddon}{}{\nopunct}}

\DeclareFieldFormat{maintitle}{%
    \mkbibemph{#1}%
    \iffieldundef{maintitleaddon}{}{\nopunct}}

\DeclareFieldFormat[article]{title}{%
    \iffieldundef{title}{}{\mkbibquote{#1}}%
    \iffieldundef{titleaddon}{\isdot}{\nopunct}}

\DeclareFieldFormat{usere}{\mkbibparens{#1}}


\begin{document}
    \cite{zhaos,jim,li,zhaoj}

    \printbibliography
\end{document}

给出

在此处输入图片描述

相关内容