Re: Problema backref di biblatex e philosophy-modern

#89349
Up
0
Down
::

OldClaudio” post=88882

Il problema è sottile, ma risolvibile almeno con una pezza temporanea: aggiungi prima dell’ultimo [tt]\makeatother[/tt]
`\let\original@abx@aux@backref\abx@aux@backref
\def\abx@aux@backref#1#2#3#4#5{%
\begingroup\let\textlatin\@firstofone
\edef\x{\endgroup
\noexpand\original@abx@aux@backref{#1}{#2}{#3}{#4}{#5}}\x}`

Ciao
Enrico

Eccellente! ottima soluzione; se la vuoi chiamare pezza temporanea, ne sei l’autore e quindi sei padrone di chiamarla come vuoi, ma questo è un capolavoro d’artista.

Questo però significa che la pezza/correzione dovrebbe essere introdotta non nel file per il greco ma in biblatex o in hyperref.

Il problema è molto sottile, perché non si può eliminare [tt]\textlatin[/tt] al momento del comando [tt]\write[/tt] per la scrittura del file .aux, in quanto proviene da [tt]\thepage[/tt] che deve essere espanso solo durante [tt]\shipout[/tt]. Quindi un [tt]\let\textlatin\@firstofone[/tt] nel secondo argomento di [tt]\protected@write[/tt] (che si usa per neutralizzare comandi “pericolosi” o indesiderati) non serve a niente.

Il problema fondamentale è capire come [tt]\abx@aux@backref[/tt] adopera il suo quarto argomento, dove c’è il numero di pagina effettivo, quello in cui finisce [tt]\textlatin[/tt]. Il motivo per il quale avviene l’errore mi è chiaro, non so se nel caso in cui il documento è in greco l’eliminazione di [tt]\textlatin[/tt] sarebbe dannosa.

Ciao
Enrico

Go to top