Una virgola nel posto sbagliato [Bibliografie; Philosophy]

  • Creatore
    Topic
  • #109297
    Up
    0
    Down
    ::


    Salve a tutti, ho un paio di problemi di bibliografia (as usual!):
    – Sto customizzando il driver incollection e sono arrivato quasi al risultato desiderato. Devo solo spostare una dannata virgola, che attualmente precede la macro series+number mentre io la vorrei dopo.
    – Più a livello macro, noterete che mi torna in dietro una linea al posto dell’editore, cosa posso fare?

    Allego in esempio minimo funzionante quello che ho fatto finora, chiedendo correzioni e consigli

    `\begin{filecontents}{archivio.bib}

    @incollection{Win:Ach,
    Author = {Gabriele Winkler},
    Booktitle = {Il 75$\,^{\circ}$ Anniversario del Pontificio Istituto Orientale. Atti delle celebrazioni giubilari, 15-17 ottobre 1992},
    Date-Added = {2011-12-31 12:34:53 +0000},
    Date-Modified = {2017-02-06 12:00:54 +0000},
    Editor = {Robert Taft AND James Lee Dugan},
    Number = {244},
    Pages = {115-141},
    Series = {Orientalia Christiana Analecta},
    Title = {The Achievements of the Oriental Institute in the Study of Oriental Liturgiology},
    Year = {1994}}

    @collection{Compa,
    Booktitle = {Comparative liturgy fifty years after Anton Baumstark (1872-1948): acts of the international congress, Rome, 25-29 September 1998},
    Date-Modified = {2017-01-30 13:34:16 +0000},
    Editor = {Robert Taft AND Gabriele Winkler},
    Location = {Roma},
    Publisher = {Pontificio Istituto Orientale},
    Series = {Orientalia Christiana Analecta},
    Shorttitle = {Comparative liturgy},
    Year = {2001}}

    @incollection{Taf:Bau,
    Address = {Roma},
    Author = {Robert Taft},
    Crossref = {Compa},
    Date-Modified = {2017-01-30 13:34:47 +0000},
    Number = {265},
    Pages = {191-232},
    Shorttitile = {Baumstark's Comparative Liturgy},
    Title = {Anton Baumstark's Comparative Liturgy revisited}}

    \end{filecontents}

    %%%%%%%%%%%%%%%%%%%%%%%%%%% PREAMBOLO %%%%%%%%%%%%%%%%%%%%%%%%%%%
    \documentclass[twoside]{article}
    \usepackage{polyglossia}
    \setmainlanguage{italian}
    \setotherlanguage{latin}
    \setotherlanguages{english,french}

    \usepackage[style=italian]{csquotes}
    \usepackage[style=philosophy-verbose,
    scauthors=true,
    language=italian,
    scauthors=true,
    useprefix=true, % Van, Von, etc.
    indexing=true,
    backend=biber,
    firstinits=true, % Nomi puntati
    inbeforejournal=true, % “in”
    commacit=true, % Philosophy: virgola prima di cit.
    citepages=omit, % Philosophy: intervallo pagine solo dove non specificato altrimenti
    latinemph=true]{biblatex}

    \DeclareFieldFormat[article, inbook, incollection, inproceedings]{title}{\mkbibemph{#1}} % Titolo in corsivo
    \DeclareFieldFormat[article]{journaltitle}{\mkbibemph{#1}} % Titolo rivista tra virgolette a caporale
    \DeclareFieldFormat[book, inbook, incollection, inproceedings]{volume}{#1} % Elimina “vol.”
    \DeclareListFormat[article, book, inbook, incollection, inproceedings]{publisher}{} % Elimina il campo publisher (nota che pub è una list, non un field)
    \DeclareFieldFormat{pages}{#1} % Elimina p./pp. da intervallo pagine
    \DeclareFieldFormat{postnote}{#1} % Elimina p./pp. da pagina precisa citata (postnote)

    \renewcommand*{\newunitpunct}{\addcomma\space} % Virgola tra le unità

    \renewcommand{\finalnamedelim}{\addcomma\space} % virgola al posto di “e” tra autori multipli
    \renewcommand{\bibinitdelim}{} % annulla lo ~ di default tra le iniziali dei nomi

    \renewbibmacro*{cite:title}{% “cit” in tondo
    \printtext[bibhyperlink]{%
    \printfield[citetitle]{labeltitle}%
    \setunit{\addspace}%
    \bibstring{opcit}}}

    \renewbibmacro*{series+number}{% % serie tra parentesi
    \iffieldundef{series}
    {}
    {\printtext[parens]{%
    \printfield{series}%
    \setunit*{\space}% no virgola tra serie e numero
    \printfield{number}%
    }
    \nopunct}}

    \DeclareBibliographyDriver{incollection}{%
    \usebibmacro{bibindex}%
    \usebibmacro{begentry}%
    \usebibmacro{author/translator+others}%
    \setunit{\labelnamepunct}\newblock
    \usebibmacro{title}%
    \printlist{language}%
    \usebibmacro{in:}%
    \usebibmacro{editor+others}%
    \setunit{\labelnamepunct}\newblock%
    \usebibmacro{maintitle+booktitle}%
    \usebibmacro{series+number}%
    \setunit{\addcomma}\newblock
    \printfield{edition}%
    \newunit
    \iffieldundef{maintitle}
    {\printfield{volume}%
    \printfield{part}}
    {}%
    \newunit
    \printfield{volumes}%
    \newunit\newblock
    \printfield{note}%
    \newunit\newblock
    \usebibmacro{publisher+location+date}%
    \newunit\newblock
    \usebibmacro{chapter+pages}%
    \newunit\newblock
    \iftoggle{bbx:isbn}
    {\printfield{isbn}}
    {}%
    \newunit\newblock
    \usebibmacro{doi+eprint+url}%
    \newunit\newblock
    \usebibmacro{addendum+pubstate}%
    \setunit{\bibpagerefpunct}\newblock
    \usebibmacro{pageref}%
    \usebibmacro{finentry}}

    \addbibresource{archivio.bib}

    %%%%%%%%%%%%%%%%%%%%%%%%%%%% INIZIO DOCUMENTO %%%%%%%%%%%%%%%%%%%%%%%%%%%
    \begin{document}
    \selectlanguage{italian}
    Cito una incollection: qui vorrei la virgola dopo la serie, non prima \footcite{Win:Ach}.\\
    Ne cito poi un'altra con crossref, stesso problema\footcite[219-220]{Taf:Bau}

    \printbibliography
    \end{document}`

    In teoria non si tratta di una cosa specifica di Philosophy quindi spero in una risposta di chiunque e non necessariamente Ivan, basta che io capisca qualcosa… 🙂
    Grazie!

Visualizzazione 7 filoni di risposte
  • Autore
    Risposte
    • #109298
      Up
      0
      Down
      ::


      Prova a modificare così:
      `\usebibmacro{maintitle+booktitle}\nopunct%`
      E togli `\nopunct` alla fine della macro series+number.

      Per il secondo problema non credo ci siano soluzioni facili, né veloci. Ma probabilmente si può fare. Innanzitutto se parti dallo stile philosophy-verbose dovresti modificare le macro definite dallo stile. Nello specifico tu hai usato il driver @incollection del file standard.bbx. In philosophy quel driver è ridefinito e non produce il crossref nel modo standard. In particolare mette il nome del curatore dopo il titolo della collection.

      Ciao
      Ivan

    • #109299
      Up
      0
      Down
      ::


      Grazie Ivan. Ma soprattutto mi sono accorto che questo esempio funziona solo sul MacTeX2015, mentre sulla versione 2016 mi restituisce l’errore di cui dicevo (chiede di caricare una versione legacy). Questo è un grosso problema. Che faccio?

    • #109300
      Up
      0
      Down
      ::

      Teodoro Studita” post=109523Grazie Ivan. Ma soprattutto mi sono accorto che questo esempio funziona solo sul MacTeX2015, mentre sulla versione 2016 mi restituisce l’errore di cui dicevo (chiede di caricare una versione legacy). Questo è un grosso problema. Che faccio?

      Qui c’è qualcosa che non va… Io ho compilato su una TeX Live 2016 senza errori. Il tuo .log che dice?
      Carica la versione 1.9 di biblatex-philosophy?
      Aspettiamo che qualche utente provi a compilar il tuto esempio. Nel frattempo potresti aggiungere ad inizio file le righe magiche per usare xelatex e biber, così chi ha texshop, texworks, TeXstudio non deve selezionare il motore a mano.

      Non è che da qualche parte nella cartella di lavoro hai dei vecchi file .bbx e .cbx?

      Ciao
      Ivan

    • #109301
      Up
      0
      Down
      ::


      Allora, avevo la 1.5 a quanto pare, sicché fatto l’upgrade è andato a posto.
      Idem dicasi per la virgola, a posto.

      Resta tuttavia il fatto che la nota così non è presentabile. Se vedi ha lo stesso comportamento anomalo (l’omissione dell’editor) sia in un record con crossref sia in uno semplice.

      Temo di non essere all’altezza della tua indicazione su come risolvere:

      …modificare le macro definite dallo stile. Nello specifico tu hai usato il driver @incollection del file standard.bbx. In philosophy quel driver è ridefinito e non produce il crossref nel modo standard. In particolare mette il nome del curatore dopo il titolo della collection.

      Premetto: Ho usato quel driver perché quello di default di philosophy-verbose era ancora più lontano, ma magari si può tenere quello di philosophy e rimettere a posto qualche macro solo per quella categoria…? Ecco, boh.

      Dunque temo mi occorra un aiutino, oppure la scrivo a mano e buonanotte.

    • #109302
      Up
      0
      Down
      ::


      Correggi così nel driver @incollection:
      `\usebibmacro{in:}%
      \renewbibmacro*{bbx:dashcheck}[2]{#2}%`

      Se nella bibliografia non vuoi i trattini per gli autori ripetuti
      risolvi più semplicemnete con l’opzione
      `dashed=false`

      Ciao
      Ivan

    • #109303
      Up
      0
      Down
      ::


      Grazie Ivan, ma forse non ho capito qualcosa. (inserendo \renewbibmacro*{bbx:dashcheck}[2]{#2}% nel driver incollection salta tutto, quindi l’ho messo fuori)
      Ho modificato nel modo in cui vedi sotto, ma l’opzione nodash ha reso inefficace quella firstinits, e ora non ho più i nomi puntati. Cosa ho fatto di sbagliato?

      `\begin{filecontents}{archivio.bib}

      @article{Giu:Com,
      Author = {G. Giubbini},
      Date-Added = {2013-10-11 23:13:23 +0200},
      Date-Modified = {2013-11-03 15:40:40 +0100},
      Journal = {Archivi per la storia},
      Pages = {169-178},
      Shorttitle = {Le competenze giurisdizionali},
      Title = {Le competenze giurisdizionali del Governatore di Perugia (Sec. XV-XVIII)},
      Volume = {IV},
      Year = {1991}}

      @book{Vig:Com,
      Address = {Torino},
      Author = {Jean-Claude Maire Vigueur},
      Date-Added = {2016-01-06 11:37:18 +0000},
      Date-Modified = {2016-01-23 20:48:01 +0000},
      Number = {12},
      Publisher = {UTET libreria},
      Series = {Storia degli stati italiani dal Medioevo all'Unit{\`a}},
      Title = {Comuni e signorie in Umbria, Marche e Lazio},
      Year = {1987}}

      @incollection{Win:Ach,
      Author = {Gabriele Winkler},
      Booktitle = {Il 75$\,^{\circ}$ Anniversario del Pontificio Istituto Orientale. Atti delle celebrazioni giubilari, 15-17 ottobre 1992},
      Date-Added = {2011-12-31 12:34:53 +0000},
      Date-Modified = {2017-02-06 12:00:54 +0000},
      Editor = {Robert Taft AND James Lee Dugan},
      Number = {244},
      Pages = {115-141},
      Series = {Orientalia Christiana Analecta},
      Title = {The Achievements of the Oriental Institute in the Study of Oriental Liturgiology},
      Year = {1994}}

      @collection{Compa,
      Booktitle = {Comparative liturgy fifty years after Anton Baumstark (1872-1948): acts of the international congress, Rome, 25-29 September 1998},
      Date-Modified = {2017-01-30 13:34:16 +0000},
      Editor = {Robert Taft AND Gabriele Winkler},
      Location = {Roma},
      Publisher = {Pontificio Istituto Orientale},
      Series = {Orientalia Christiana Analecta},
      Shorttitle = {Comparative liturgy},
      Year = {2001}}

      @incollection{Taf:Bau,
      Address = {Roma},
      Author = {Robert Taft},
      Crossref = {Compa},
      Date-Modified = {2017-01-30 13:34:47 +0000},
      Number = {265},
      Pages = {191-232},
      Shorttitile = {Baumstark's Comparative Liturgy},
      Title = {Anton Baumstark's Comparative Liturgy revisited}}

      @inproceedings{Cen:Pro,
      Address = {Roma},
      Author = {Giorgio Cencetti},
      Booktitle = {Atti del convegno di studi delle fonti del Medioevo europeo in occasione del 70° della fondazione dell'Istituto storico italiano (Roma, 14-18 aprile 1953)},
      Date-Added = {2013-05-17 11:15:06 +0000},
      Date-Modified = {2013-05-17 11:19:52 +0000},
      Pages = {25-34},
      Publisher = {Istituto Storico Italiano per il Medio Evo},
      Title = {Progetti di unificazione delle norme per la pubblicazione delle fonti medioevali},
      Year = {1957}}

      \end{filecontents}

      %%%%%%%%%%%%%%%%%%%%%%%%%%% PREAMBOLO %%%%%%%%%%%%%%%%%%%%%%%%%%%
      \documentclass[twoside]{article}
      \usepackage{polyglossia}
      \setmainlanguage{italian}
      \setotherlanguage{latin}
      \setotherlanguages{english,french}
      \usepackage{comment}

      %\usepackage{/Users/Teo/Dropbox/Teo_Latex/Stile_SOC}

      %\addbibresource{/Users/Teo/Dropbox/Teo_Latex/Bibliografia.bib}

      \usepackage{comment}
      \usepackage{xpatch}
      \usepackage[style=italian]{csquotes}
      \usepackage[style=philosophy-verbose,
      scauthors=true,
      language=italian,
      scauthors=true,
      useprefix=true, % Van, Von, etc.
      indexing=true,
      backend=biber,
      dashed=false % No trattino sul nome dell'editore
      firstinits=true, % Nomi puntati
      inbeforejournal=true, % “in”
      commacit=true, % Philosophy: virgola prima di cit.
      citepages=omit, % Philosophy: intervallo pagine solo dove non specificato altrimenti
      latinemph=true]{biblatex}

      \DeclareFieldFormat[article, inbook, incollection, inproceedings]{title}{\mkbibemph{#1}} % Titolo in corsivo
      \DeclareFieldFormat[article]{journaltitle}{\mkbibemph{#1}} % Titolo rivista tra virgolette a caporale
      \DeclareFieldFormat[book, inbook, incollection, inproceedings]{volume}{#1} % Elimina “vol.”
      \DeclareListFormat[article, book, inbook, incollection, inproceedings]{publisher}{} % Elimina il campo publisher (nota che pub è una list, non un field)
      \DeclareFieldFormat{pages}{#1} % Elimina p./pp. da intervallo pagine
      \DeclareFieldFormat{postnote}{#1} % Elimina p./pp. da pagina precisa citata (postnote)

      \renewcommand*{\newunitpunct}{\addcomma\space} % Virgola tra le unità

      \renewcommand{\finalnamedelim}{\addcomma\space} % virgola al posto di “e” tra autori multipli
      \renewcommand{\bibinitdelim}{} % annulla lo ~ di default tra le iniziali dei nomi

      \renewbibmacro*{cite:title}{% “cit” in tondo
      \printtext[bibhyperlink]{%
      \printfield[citetitle]{labeltitle}%
      \setunit{\addspace}%
      \bibstring{opcit}}}

      \renewbibmacro*{series+number}{% % serie tra parentesi
      \iffieldundef{series}
      {}
      {\printtext[parens]{%
      \printfield{series}%
      \setunit*{\space}% no virgola tra serie e numero
      \printfield{number}%
      }
      }} %tolto \nopunct

      \renewbibmacro*{bbx:dashcheck}[2]{#2}%

      \DeclareBibliographyDriver{incollection}{%
      \usebibmacro{bibindex}%
      \usebibmacro{begentry}%
      \usebibmacro{author/translator+others}%
      \setunit{\labelnamepunct}\newblock
      \usebibmacro{title}%
      \printlist{language}%
      \usebibmacro{in:}%
      \usebibmacro{editor+others}%
      \setunit{\labelnamepunct}\newblock%
      \usebibmacro{maintitle+booktitle}\nopunct%%
      \usebibmacro{series+number}%
      \setunit{\addcomma}\newblock
      \printfield{edition}%
      \newunit
      \iffieldundef{maintitle}
      {\printfield{volume}%
      \printfield{part}}
      {}%
      \newunit
      \printfield{volumes}%
      \newunit\newblock
      \printfield{note}%
      \newunit\newblock
      \usebibmacro{publisher+location+date}%
      \newunit\newblock
      \usebibmacro{chapter+pages}%
      \newunit\newblock
      \iftoggle{bbx:isbn}
      {\printfield{isbn}}
      {}%
      \newunit\newblock
      \usebibmacro{doi+eprint+url}%
      \newunit\newblock
      \usebibmacro{addendum+pubstate}%
      \setunit{\bibpagerefpunct}\newblock
      \usebibmacro{pageref}%
      \usebibmacro{finentry}}

      \addbibresource{archivio.bib}

      %%%%%%%%%%%%%%%%%%%%%%%%%%%% INIZIO DOCUMENTO %%%%%%%%%%%%%%%%%%%%%%%%%%%
      \begin{document}
      \selectlanguage{italian}
      Cito una incollection: qui vorrei la virgola dopo la serie, non prima \footcite{Win:Ach}.\\
      Ne cito poi un'altra con crossref, stesso problema\footcite[219-220]{Taf:Bau}

      \printbibliography
      \end{document}`

    • #109304
      Up
      0
      Down
      ::


      Manca una virgola dopo dashed=false.

      Ciao
      Ivan

    • #109305
      Up
      0
      Down
      ::

      ivan” post=109557Manca una virgola dopo dashed=false.

      Dannata miopia!!!
      Grazie, mitico 🙂

Visualizzazione 7 filoni di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top