![自定义简短引用样式(哲学详细)](https://linux22.com/image/426493/%E8%87%AA%E5%AE%9A%E4%B9%89%E7%AE%80%E7%9F%AD%E5%BC%95%E7%94%A8%E6%A0%B7%E5%BC%8F%EF%BC%88%E5%93%B2%E5%AD%A6%E8%AF%A6%E7%BB%86%EF%BC%89.png)
我需要对 LaTeX 模板进行更改。具体来说,在\footcite
研究之后,我不知道该怎么做。这将如下所示:在 中包含简称(而不仅仅是姓氏)\footcite
。
我举个例子,在我第一次引用一本书之后,接下来的引用会自动变成这种简短的引用风格:
托尔金,指环王,第 12 页
但他们还要求我获取作者姓名的字母,如下例所示:
JR托尔金,指环王,第 12 页
模板有一个单独的文档,其中包含样式。页脚引用的编码如下:
\usepackage[
backend=biber,
style=philosophy-verbose,
isbn=false,
giveninits=true,
idemtracker=context,
ibidtracker=context,
loccittracker=context,
opcittracker=context,
citetracker=context,
latinemph=true,
commacit=false,
scauthors=all,
lowscauthors=false
annotation=true,
classical=true,
singletitle=false,
editionformat=superscript,
shorthandintro=true,
%volumeformat=romansc,
%library=true,
hyperref,
%backref,
sorting=cst, % if one wants to implement a custom sorting of reference list
lowscauthors=false]{biblatex}
\addbibresource{biblio.bib} % The filename of the bibliography
%\addbibresource{biblio-secondary.bib} % Other bibliography sources
\NewBibliographyString{opted}
\DefineBibliographyStrings{english}{%
%idem = {\textsc{Id}\adddot}
idem = {\textsc{Idem}},
ibidem = {Ibid\adddot},
%ibidem = {Ibidem},
%loccit = {},
opcit = {\addcomma\,op\adddot\,cit\adddot,},
%opcit = {},
opcited = {},
}
% To put the names of the curators in the majority
\renewcommand*{\mkbibnamefamily}[1]{\textsc{#1}}
有人知道该怎么做吗?
答案1
labelname
重新定义姓名格式来打印姓名首字母就足够了。
原始定义可以在 中找到philosophy-standard.bbx
。我们只是将\case
检查 值的开关改为仅区分是否需要全名来消除歧义的uniquename
简单开关。\ifnum
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[
backend=biber,
style=philosophy-verbose,
isbn=false,
giveninits=true,
idemtracker=context,
ibidtracker=context,
loccittracker=context,
opcittracker=context,
citetracker=context,
latinemph=true,
commacit=false,
scauthors=all,
lowscauthors=false,
annotation=true,
classical=true,
singletitle=false,
editionformat=superscript,
shorthandintro=true,
%volumeformat=romansc,
%library=true,
%backref,
% sorting=cst,
lowscauthors=false,
]{biblatex}
\NewBibliographyString{opted}
\DefineBibliographyStrings{english}{%
%idem = {\textsc{Id}\adddot}
idem = {\textsc{Idem}},
ibidem = {Ibid\adddot},
%ibidem = {Ibidem},
%loccit = {},
opcit = {\addcomma\,op\adddot\,cit\adddot,},
%opcit = {},
%opcited = {},
}
\renewcommand*{\mkbibnamefamily}[1]{\textsc{#1}}
\DeclareNameFormat{labelname}{%
\iftoggle{cbx:scauthorscite}{\usebibmacro{bbx:scswitch}}{}%
\iftoggle{cbx:scauthorscitefn}{\iffootnote{\usebibmacro{bbx:scswitch}}{}}{}%
\bibhyperref{\nameparts{#1}%
\ifnum\value{uniquename}<2
\ifuseprefix
{\usebibmacro{name:given-family}%
{\namepartfamily}%
{\namepartgiveni}%
{\namepartprefix}%
{\namepartsuffixi}}%
{\usebibmacro{name:given-family}%
{\namepartfamily}%
{\namepartgiveni}%
{\namepartprefixi}%
{\namepartsuffixi}}%
\else
\usebibmacro{name:given-family}%
{\namepartfamily}%
{\namepartgiven}%
{\namepartprefix}%
{\namepartsuffix}%
\fi
\usebibmacro{name:andothers}}}%
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{sigfridsson}
ipsum \autocite{nussbaum}
dolor \autocite{sigfridsson}
\printbibliography
\end{document}