Guión en el título del autor (usando biblatex y biber con dadoinits=true)

Guión en el título del autor (usando biblatex y biber con dadoinits=true)

Este es un seguimiento dela pregunta de micosobre cómo especificar el título de un autor con giveninits=true. Se han encontrado dos respuestas que funcionan para títulos que no incluyen un guión.

Consideremos ahora el título "Dr.-Ing." Con ambas respuestas obtengo un punto adicional delante del guión:

\RequirePackage{filecontents}
\begin{filecontents*}{mybib.bib}
@unpublished{tet-skript-moewe,
    author = {family={Schuhmann}, given={Prof. Dr.-Ing. Rolf}, given-i={Prof. Dr.-Ing. R}},
    title  = {Skriptum zu den {V}orlesungen 
              {T}heoretische {E}lektrotechnik {I} und {II}},
    date   = {2013-12-17},
    note   = {moewe's answer}
}
@unpublished{tet-skript-mico,
    author = {{{\relax Prof. Dr.-Ing. R}olf} Schuhmann},
    title  = {Skriptum zu den {V}orlesungen 
              {T}heoretische {E}lektrotechnik {I} und {II}},
    date   = {2013-12-17},
    note   = {Mico's answer}
}
\end{filecontents*}


\documentclass{article}

\usepackage[backend=biber, giveninits=true]{biblatex}
\addbibresource{mybib.bib}

\begin{document}
\nocite{*}
\printbibliography
\end{document}

captura de pantalla

Soy consciente de una solución que publicaré como respuesta. Sin embargo, no me gusta porque implica definir comandos personalizados y así crear una dependencia del archivo bib en el archivo tex.

¿Alguien conoce una solución mejor?

Respuesta1

Realmente no sé por qué funciona, pero puedes quitar el punto en Dr-Ing.y el añadido quedará ahí para obtener los resultados deseados:

\RequirePackage{filecontents}
\begin{filecontents*}{mybib.bib}
@unpublished{tet-skript-moewe,
    author = {family={Schuhmann}, given={Prof. Dr.-Ing. Rolf}, given-i={Prof. Dr-Ing. R}},
    title  = {Skriptum zu den {V}orlesungen 
              {T}heoretische {E}lektrotechnik {I} und {II}},
    date   = {2013-12-17},
    note   = {moewe's answer}
}
@unpublished{tet-skript-mico,
    author = {{{\relax Prof. Dr-Ing. R}olf} Schuhmann},
    title  = {Skriptum zu den {V}orlesungen 
              {T}heoretische {E}lektrotechnik {I} und {II}},
    date   = {2013-12-17},
    note   = {Mico's answer}
}
\end{filecontents*}


\documentclass{article}

\usepackage[backend=biber, giveninits=true]{biblatex}
\addbibresource{mybib.bib}

\begin{document}
\nocite{*}
\printbibliography
\end{document}

Funciona tanto para las soluciones de Mico como para las de Moewe.

ingrese la descripción de la imagen aquí

Respuesta2

Poner el guión en un comando evita la inserción de un punto adicional.

Supongo que esto funciona porque el código cat del guión está aquí fijo a otro y no se puede activar. Según el comentario de moewe sobrerespuesta de gusbrsesto funciona porque "la inserción la realiza Biber y no expande sus comandos TeX".

No estoy seguro de por qué se necesitan esas llaves alrededor de los comandos, pero sin ellas recibo un error.

La posición de esos aparatos ortopédicos se basa en unarespuesta de mico.

\RequirePackage{filecontents}
\begin{filecontents*}{mybib.bib}
@unpublished{tet-skript,
    author = {{\Prof{} \DrIng{} R}olf Schuhmann},
    title  = {Skriptum zu den {V}orlesungen 
              {T}heoretische {E}lektrotechnik {I} und {II}},
    date   = {2013-12-17},
}
\end{filecontents*}


\documentclass{article}

\usepackage[backend=biber, firstinits=true]{biblatex}
\addbibresource{mybib.bib}

\newcommand{\DrIng}{Dr.-Ing.\@}
\newcommand{\Prof}{Prof.\@}

\begin{document}
\nocite{*}
\printbibliography
\end{document}

ingrese la descripción de la imagen aquí

información relacionada