Re: Stili biblatex-philosophy

#43774
Up
0
Down
::

Doc” post=83680Grazie, Ivan!
Non ho alcuna fretta e, pur avendo altre cose da fare, non esito a contribuire con i test che mi suggerisci.

Ho provato il fix sia sul codice di esempio sopra postato sia sul mio libro e, ad occhio e croce, direi che va benone.

Tuttavia, ti confesso che ieri, pensando che non fosse un baco, ma proprio una nuova feature di [tt]biber[/tt], ho cambiato la mia bibliografia in modo da evitare i [tt]crossref[/tt]. Tra l’altro, la nuova situazione è forse preferibile, visto che le sezioni della bibliografia, per motivi che ti risparmio, sono anche mooooooooooolto lontane fra di loro.

Comunque, aggiungendo un [tt]crossref[/tt] ad una voce che rimanda ad una sezione bibliografica lontana, tutto funziona a dovere.

Una sola cosa non capisco: ora (ma anche ieri), quando i [tt]crossref[/tt] rimandano ad una sezione bibliografica “contigua”, si ottiene la citazione per esteso, ma non la citazione con link, come invece succedeva prima che avvenissero tutti questi cambiamenti.

OT
Aggiungo tra l’altro che quella sezione contigua è organizzata tramite [tt]shorthands[/tt]: in questi casi, mi piacerebbe che il rimando del [tt]crossref[/tt] avvenisse tramite gli [tt]shorthands[/tt] e non tramite la normale citazione autore-anno. Sai se è possibile fare una cosa del genere?

Se ho capito bene, dovrebbe bastare questo:
`
\makeatletter
\DeclareCiteCommand{\bbx@crossref@inbook}
{}%
{\iffieldundef{shorthand}{%
\usebibmacro{citeindex}%
\ifuseeditor{%
\ifthenelse{\value{listtotal}=2}%
{\printnames[][-\value{maxnamesincross}]{labelname}}%
{\printnames[][-\value{minnamesincross}]{labelname}}}%
{\usebibmacro{labeltitle}}%
\setunit*{\addspace}%
\usebibmacro{date+extrayear}}%
{\usebibmacro{cite:shorthand}}}%
{}%
{}%
\DeclareCiteCommand{\bbx@crossref@incollection}
{}%
{\iffieldundef{shorthand}{%
\usebibmacro{citeindex}%
\ifuseeditor{%
\ifthenelse{\value{listtotal}=2}%
{\printnames[][-\value{maxnamesincross}]{labelname}}%
{\printnames[][-\value{minnamesincross}]{labelname}}}%
{\usebibmacro{labeltitle}}%
\setunit*{\addspace}%
\usebibmacro{date+extrayear}}%
{\usebibmacro{cite:shorthand}}}%
{}%
{}%
\makeatother
`

La situazione è contorta e non saprei cosa scegliere. Con questo codice, nella bibliografia si
fa riferimento alla sigla, qualora presente, della voce collegata con crossref. tuttavia la voce madre
viene stampata comunque nella bibliografia, se ci sono almeno due voci figlio che vi si riferiscono tramite crossref.
Quindi il lettore si troverebbe a leggere la voce nella bibliografia, che rimanda alle sigle, le quali riportano la
voce madre integralmente; quest’ultima, poi, è ripetuta anche nella bibliografia.
E se non si inserisce una lista delle sigle? Avremmo una voce in bibliografia che rimanda a una sigla,
la quale però è da qualche parte nel testo. Troppo rischioso. Si potrebbe pensare a un’opzione
per casi simili al tuo: shorthandinbib ?

Ciao
Ivan

Go to top