Alb” post=84569Ciao,
ho trovato un piccolo errore nel modo in cui alcuni comandi cites vengono stampati. Si tratta dei cites che hanno come argomento due opere dello stesso autore, delle quali è fornito il numero di pagina per la prima, ma non per la seconda.
Doe 2011a,b
Doe 2011a, p. 23, 2011b, p. 21
Doe 2011a, 2011b, p. 23
Doe 2011a, p. 23,bMa l’ultima riga dovrebbe essere stampata così:
Doe 2011a, p. 23, 2011b
Mi pare che philosophy-classic e philosophy-modern ereditino questo problema dagli stili authoryear forniti con biblatex.
Ciao
Alberto
Sì. è un porblema di authoryear-comp.
Questo:
`\makeatletter
\renewbibmacro*{cite}{%
\iffieldundef{shorthand}
{\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
{\usebibmacro{cite:label}%
\setunit{\addspace}%
\usebibmacro{cite:labelyear+extrayear}%
\usebibmacro{cite:reinit}}
{\iffieldequals{namehash}{\cbx@lasthash}
{\ifthenelse{\iffieldequals{labelyear}{\cbx@lastyear}\AND
\(\value{multicitecount}=0\OR\iffieldundef{postnote}\)}
{\setunit{\addcomma}%
\usebibmacro{cite:extrayear}}
{\setunit{\compcitedelim}%
\usebibmacro{cite:labelyear+extrayear}%
\savefield{labelyear}{\cbx@lastyear}}}
{\printnames{labelname}%
\setunit{\nameyeardelim}%
\usebibmacro{cite:labelyear+extrayear}%
\savefield{namehash}{\cbx@lasthash}%
\iffieldundef{postnote}%
{\savefield{labelyear}{\cbx@lastyear}}{}%
}}}
{\usebibmacro{cite:shorthand}%
\usebibmacro{cite:reinit}}%
\setunit{\multicitedelim}}
\makeatother`
risolve il caso specifico, ma non va bene per gli stili philosophy.
Intanto prova a testarlo, poi vedrò come sistemare anche in philosophy. Ma la vedo dura, e rischiosa
Ciao
Ivan