- Questo topic ha 1 risposta, 1 partecipante ed è stato aggiornato l'ultima volta 13 anni fa da .
-
Topic
-
Mi era sembrato di capire che per usare un nuovo campo bibliografico con biblatex fosse sufficiente aggiungere un [tt]\printfield{nuovocampo}[/tt] (specificando, se necessario, un formato particolare con [tt]\DeclareFieldFormat{nuovocampo}{…}[/tt]) all’interno di un driver o di una macro utilizzata in un driver. È corretto? Perché non mi sembra avere effetto, il campo non è mai letto.Disperato a causa di questo fallimento, ho trovato questo messaggio che sostanzialmente suggerisce la stessa cosa, riporto qui per comodità il codice:
`\documentclass{article}\usepackage{filecontents}
\begin{filecontents}{papers.bib}@Article{Mattaj1993,
author = {I W Mattaj},
title = {RNA recognition: a family matter?},
journal = {Cell},
year = {1993},
volume = {73},
number = {5},
pages = {837-40},
pmid = {8500177},
}
\end{filecontents}\usepackage[style=authoryear,hyperref=true]{biblatex}
\bibliography{papers}
\newbibmacro*{pubmed}{%
\printfield[pmidformat]{pmid}%
}
\DeclareFieldFormat{pmidformat}{%
PubMed\addcolon\space
\ifhyperref
{\href{http://www.ncbi.nlm.nih.gov/pubmed/#1}{\nolinkurl{#1}}}
{\nolinkurl{#1}}}
\DeclareBibliographyDriver{article}{%
\usebibmacro{author/editor}%
\setunit{\labelnamepunct}\newblock
\usebibmacro{title}%
\newunit\newblock
\usebibmacro{journal+issuetitle}%
\setunit{\bibpagespunct}%
\printfield{pages}%
\newunit\newblock
\usebibmacro{pubmed}%
\usebibmacro{finentry}}
\renewcommand*{\finentrypunct}{}\usepackage{hyperref}
\begin{document}
\nocite{*}
\printbibliography
\end{document}`
Lui dice che funziona, ma io ottengo (uso TeX Live 2013 aggiornata, biber 1.7, biblatex 2.7a)References
Mattaj, I W (1993). “RNA recognition: a family matter?” Cell 73.5, pp. 837–40Il campo [tt]pmid[/tt] è proprio ignorato. Mi sta sfuggendo qualcosa?
Domanda stilistica bonus: per una modifica così piccola allo stile bibliografico, va bene mettere il codice all’interno dello stesso sorgente LaTeX senza creare un nuovo apposito stile?
- Devi essere connesso per rispondere a questo topic.