biblatex e \fullcite: falta o ponto no final

biblatex e \fullcite: falta o ponto no final

Olá,

Estou usando \fullcitepara imprimir a entrada bibliográfica dentro do texto. Aí está faltando o ponto final (aqui depois do ano) pois aparece corretamente na lista de referências com \printbibliography.

Eu gostaria de ter esse ponto final ao usar o \fullcitecomando.

Exemplo:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Trzesniowski:2011,
    address = {Wiesbaden},
    author = {Trzesniowski, M.},
    edition = {3},
    publisher = {Vieweg-Teubner},
    subtitle = {Handbuch mit praktischen Konstruktionsbeispielen},
    title = {CAD mit CATIA V5},
    year = {2011}}


\end{filecontents}

\usepackage[backend=biber,]{biblatex}
\bibliography{\jobname.bib}

\begin{document}

\fullcite{Trzesniowski:2011}

\printbibliography
\end{document}

Responder1

Dê uma olhada nisso:

\DeclareCiteCommand{\fullcite} {\usebibmacro{prenote}} {\usedriver {} {\thefield{entrytype}}\addperiod} {\multicitedelim} {\usebibmacro{postnote}}

Saída:

insira a descrição da imagem aqui

Responder2

O ponto final de uma entrada bibliográfica é \finentrypunctgeralmente gerado por uma chamada à \finentrymacro no finentrybibmacro.

biblatexexplicitamente não está definido \finentrypuntcem \fullcite. Isso torna um pouco mais fácil lidar com múltiplas citações em uma \fullcitee dá ao usuário controle total sobre a pontuação seguinte.

De modo geral, acho \fullciteque deve ser usado com moderação, então estou me perguntando qual é o caso de uso exato aqui. Talvez existam métodos mais elegantes que evitem \fullcitetotalmente o explícito e já venham com o período desejado ou facilitem a obtenção do período.

A definição padrão de \footcitepode ser encontrada embiblatex.def(ll. 2157-2163 na v3.18b). Eu adicionaria um \finentry(que compõe o \finentrypunct) da seguinte forma

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber,]{biblatex}

\DeclareCiteCommand{\fullcite}
  {\usebibmacro{prenote}}
  {\usedriver
     {\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}
  {\multicitedelim}
  {\usebibmacro{postnote}%
   \finentry}

\addbibresource{biblatex-examples.bib}

\begin{document}
Lorem

\fullcite{sigfridsson}

\printbibliography
\end{document}

Responder3

Uma solução fácil, mas menos sofisticada, seria simplesmente colocar um ponto final atrás do seu comando como \fullcite ., o que deve resultar na mesma coisa, exceto que é muito menos elegante que a solução do scd:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Trzesniowski:2011,
    address = {Wiesbaden},
    author = {Trzesniowski, M.},
    edition = {3},
    publisher = {Vieweg-Teubner},
    subtitle = {Handbuch mit praktischen Konstruktionsbeispielen},
    title = {CAD mit CATIA V5},
    year = {2011}}


\end{filecontents}

\usepackage[backend=biber,]{biblatex}
\bibliography{\jobname.bib}

\begin{document}

\fullcite{Trzesniowski:2011}.

\printbibliography
\end{document}

O que deve ser parecido com: Exemplo impresso

informação relacionada