更改作者索引中的输出和排序

更改作者索引中的输出和排序

我有一个作者索引,我正在尝试改变一个特定名称的输出。

在我的 ME 中,有一位作者是“Archimandrite Vladimir”,但是我:

  • 我不想让他在 A 字母,但在 V
  • 我不想要输出“Archimandrite Vladimir”,但是 Vladimir,拱。

我尝试过(至少对于排序问题)此解决方案没有任何成功。有人能帮忙吗?

梅威瑟:

% !BIB TS-program = biber
% !BIB program = biber
% !TEX encoding = UTF-8 Unicode
% !TeX TS-program = xelatexmk

\begin{filecontents}{archivio.bib}

@book{Vla:Sin,
    Address = {Moskwa},
    Author = {{Archimandrite Vladimir}},
    Publisher = {Sinodal'naja tip.},
    Title = {Sistematičeskoe opisanie rukopisej moskovskoj Sinodal'noj (patriaršej) biblioteki},
    Year = {1894}}


\end{filecontents}

\documentclass[11pt, openany]{book}
\usepackage{polyglossia}
\setmainlanguage[babelshorthands=true]{italian}
\setotherlanguages{latin, english, french}

\usepackage[]{csquotes}
\usepackage{xpatch}
\usepackage[style=verbose-trad2,
            language=auto,
            ibidpage=true,
            autolang=other,
            useprefix=true,
            giveninits=true,
            indexing=cite,
            dateabbrev=false,
            backend=biber,
        ]{biblatex}

\addbibresource{archivio.bib}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\usepackage{imakeidx}
\makeindex[name=nomi, intoc=true, title=Indice dei nomi]

\renewbibmacro*{citeindex}{%                Rimuovo i titoli che verrebbero indicizzati di default
  \ifciteindex
    {\indexnames{labelname}}
    {}}

\DeclareIndexNameFormat{default}{%      Formato del nome dell'autore
  \usebibmacro{index:name}
    {\index[nomi]}
    {\namepartfamily}
    {\namepartgiveni}
    {\namepartprefix}
    {\namepartsuffix}}



\begin{document}


I am citing \cite[]{Vla:Sin}\\

But I want to add also John Smith\index[nomi]{Smith, J.} to my index of names.

\printindex[nomi]       % Indice dei nomi   
\end{document}

答案1

title不幸的是,与which 有indextitleand不同indexsorttitle,它没有indexauthoror indexname。我们不能使用shortauthoreither,所以我们必须自己想一个名字。

我们可以用来namea为索引定义不同的名称格式。

\documentclass[11pt, openany]{book}
\usepackage{polyglossia}
\setmainlanguage[babelshorthands=true]{italian}
\setotherlanguages{latin, english, french}

\usepackage[]{csquotes}
\usepackage{xpatch}
\usepackage[style=verbose-trad2,
            language=auto,
            ibidpage=true,
            autolang=other,
            useprefix=true,
            giveninits=true,
            indexing=cite,
            dateabbrev=false,
            backend=biber,
        ]{biblatex}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Vla:Sin,
    Address = {Moskwa},
    Author = {{Archimandrite Vladimir}},
    namea = {{Vladimir, \emph{arch.}}},
    Publisher = {Sinodal'naja tip.},
    Title = {Sistematičeskoe opisanie rukopisej moskovskoj Sinodal'noj (patriaršej) biblioteki},
    Year = {1894},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}


\usepackage{imakeidx}
\makeindex[name=nomi, intoc=true, title=Indice dei nomi]

\renewbibmacro*{citeindex}{%
  \ifciteindex
    {\ifnameundef{namea}{\indexnames{labelname}}{\indexnames{namea}}}
    {}}

\renewbibmacro*{bibindex}{%
  \ifbibindex
    {\ifnameundef{namea}{\indexnames{labelname}}{\indexnames{namea}}}
    {}}

\DeclareIndexNameFormat{default}{%
  \usebibmacro{index:name}
    {\index[nomi]}
    {\namepartfamily}
    {\namepartgiveni}
    {\namepartprefix}
    {\namepartsuffix}}

\begin{document}
I am citing \cite[]{Vla:Sin}

\cite{sigfridsson}

I am citing \cite[]{Vla:Sin}

But I want to add also John Smith\index[nomi]{Smith, J.} to my index of names.

\printindex[nomi]
\end{document}

在此处输入图片描述

在此处输入图片描述

相关内容