
Me gustaría que BibLaTeX no muestre ningún nombre o inicial al citar en el texto. Pero me gustaría tener los nombres completos en la bibliografía. Por lo que leí, esto se puede lograr mediante giveninits=false
. Pero este comando no afecta en absoluto el estilo de la cita.
Configuré BibLaTeX así:
\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[
backend=biber,
style=apa,
maxcitenames = 2,
mincitenames = 1,
uniquename = false,
uniquelist = false,
maxbibnames = 99,
apamaxprtauth=99,
giveninits=false
]{biblatex}
\DeclareLanguageMapping{english}{english-apa}
\usepackage{filecontents}
\begin{filecontents*}{test.bib}
@article{marquard1975,
author = {Donald W. Marquardt and Ronald D. Snee},
title = {Ridge Regression in Practice},
journal = {American Statistician},
volume = {29},
number = {1},
pages = {3-20},
year = {1975},
publisher = {Taylor & Francis},
}
}
\end{filecontents*}
\addbibresource{test.bib}
\begin{document}
\title{asdf}
\author{myself}
\date{\today}
\maketitle
TEST \cite{marquard1975}
\printbibliography
\end{document}
Lo que obtengo es (en el texto, la cita está bien, la bibliografía no)
PRUEBA Marquardt y Snee, 1975
Referencias
Marquardt, DW y Snee, RD (1975). Regresión de crestas en la práctica. Estadístico estadounidense, 29(1), 3–20.
Lo que me gustaría conseguir:
PRUEBA Marquardt y Snee, 1975
Referencias
Marquardt, Donald W. y Snee, Ronald D. (1975). Regresión de crestas en la práctica. Estadístico estadounidense, 29(1), 3–20.
Respuesta1
Como se mencionó en los comentarios, el estilo APA requiere que los nombres se abrevien a iniciales y que el nombre completo solo se agregue entre (corchetes) en caso de que las iniciales sean ambiguas. biblatex-apa
implementa este requisito en la medida de lo posible. Como esto es bastante complicado, la opción normal giveninits
no funciona como se esperaba con biblatex-apa
. Esto es similar a cómo las (max|min)(bib|cite)?names
opciones no funcionan como se esperaba.
Debe redefinir dos bibmacros de nombres para obtener nombres completos, uno para los nombres en given-family
orden y otro para family-given
. Las definiciones originales se pueden encontrar en apa.bbx
, solo eliminamos la \ifthenelse{\value{uniquename}>1}
prueba y nos aseguramos de imprimir el nombre completo en \mkbibnamegiven{#2}
lugar de \mkbibnamegiven{#3}
.
\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[
backend=biber,
style=apa,
uniquename = false,
uniquelist = false,
apamaxprtauth=99,
giveninits=false,
]{biblatex}
% argument meanings from apa.bbx
% #1 = family name
% #2 = given name
% #3 = given name (initials)
% #4 = name prefix
% #5 = name suffix
\renewbibmacro*{name:apa:family-given}[5]{%
\ifuseprefix
{\usebibmacro{name:delim:apa:family-given}{#4#1}%
\usebibmacro{name:hook}{#4#1}%
\ifdefvoid{#4}{}{%
\mkbibnameprefix{#4}\isdot%
\ifprefchar{}{\bibnamedelimc}}%
\mkbibnamefamily{#1}\isdot%
\ifdefvoid{#2}{}{\revsdnamepunct\bibnamedelimd\mkbibnamegiven{#2}\isdot}%
\ifdefvoid{#5}{}{\addcomma\bibnamedelimd\mkbibnamesuffix{#5}\isdot}}
{\usebibmacro{name:delim:apa:family-given}{#1}%
\usebibmacro{name:hook}{#1}%
\mkbibnamefamily{#1}\isdot
\ifboolexpe{%
test {\ifdefvoid{#2}}
and
test {\ifdefvoid{#4}}}
{}
{\revsdnamepunct}%
\ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}\isdot}%
\ifdefvoid{#4}{}{%
\bibnamedelimc\mkbibnameprefix{#4}%
\ifprefchar{}{\bibnamedelimc}}%
\ifdefvoid{#5}{}{\addcomma\bibnamedelimd\mkbibnamesuffix{#5}\isdot}}}
\renewbibmacro*{name:apa:given-family}[5]{%
\usebibmacro{name:delim}{#2#4#1#5}%
\usebibmacro{name:hook}{#2#4#1#5}%
\ifdefvoid{#2}{}{\mkbibnamegiven{#2}\isdot%
\bibnamedelimd}%
\ifdefvoid{#4}{}{%
\mkbibnameprefix{#4}\isdot
\ifprefchar{}{\bibnamedelimc}}%
\mkbibnamefamily{#1}\isdot%
\ifdefvoid{#5}{}{\bibnamedelimd\mkbibnamesuffix{#5}\isdot}}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@article{marquard1975,
author = {Donald W. Marquardt and Ronald D. Snee},
title = {Ridge Regression in Practice},
journal = {American Statistician},
volume = {29},
number = {1},
pages = {3-20},
year = {1975},
}
\end{filecontents*}
\addbibresource{\jobname.bib}
\begin{document}
TEST \cite{marquard1975}
\printbibliography
\end{document}
Tenga en cuenta que se debe escapar el &
in a . No hubo ningún error aquí, porque no imprime el campo para s, pero es bueno recordar tratarlo correctamente.publisher = {Taylor & Francis},
\&
biblatex
publisher
@article
&