invertire i campi di un item bibliografico [risolto]

  • Creatore
    Topic
  • #104393
    davidebond
    Partecipante
      Up
      0
      Down
      ::


      Salve. Con il seguente codice riesco ad invertire tra loro casa editrice e luogo di edizione:

      `\renewbibmacro*{publisher+location+date}{%from standard.bbx
      \printlist{publisher}%
      \iflistundef{location}
      {\setunit*{\addcomma\space}}
      {\setunit*{\addcomma\space}}%instead of \addcolon\space
      \printlist{location}%
      \setunit*{\addcomma\space}%
      \usebibmacro{date}%
      \newunit}`

      Ora, la mia domanda è come posso invertire tra loro, serie e volume?

      Grazie. Ciao,

      davide

    Visualizzazione 3 filoni di risposte
    • Autore
      Risposte
      • #104394
        Up
        0
        Down
        ::


        Devi modificare analogamente la macro che stampa il campo series, e che trovi nel file standard.bbx

        Ciao
        Ivan

      • #104395
        davidebond
        Partecipante
          Up
          0
          Down
          ::


          È quello che ho pensato anch’io. Solo non so come fare. Nel file standard.bbx, si trova, per esempio, a proposito di un articolo:

          `\DeclareBibliographyDriver{article}{%
          \usebibmacro{bibindex}%
          \usebibmacro{begentry}%
          \usebibmacro{author/translator+others}%
          \setunit{\labelnamepunct}\newblock
          \usebibmacro{title}%
          \newunit
          \printlist{language}%
          \newunit\newblock
          \usebibmacro{byauthor}%
          \newunit\newblock
          \usebibmacro{bytranslator+others}%
          \newunit\newblock
          \printfield{version}%
          \newunit\newblock
          \usebibmacro{in:}%
          \usebibmacro{journal+issuetitle}%
          \newunit
          \usebibmacro{byeditor+others}%
          \newunit
          \usebibmacro{note+pages}%
          \newunit\newblock
          \iftoggle{bbx:isbn}
          {\printfield{issn}}
          {}%
          \newunit\newblock
          \usebibmacro{doi+eprint+url}%
          \newunit\newblock
          \usebibmacro{addendum+pubstate}%
          \setunit{\bibpagerefpunct}\newblock
          \usebibmacro{pageref}%
          \newunit\newblock
          \iftoggle{bbx:related}
          {\usebibmacro{related:init}%
          \usebibmacro{related}}
          {}%
          \usebibmacro{finentry}}`

          Non capisco quale sia la parte dedicata alla serie.

          Grazie. Ciao,

          davide

        • #104396
          Up
          0
          Down
          ::


          La macro da modificare è journal+issuetitle, che tra le altre cose, stampa anche il campo series.

          Ciao
          Ivan

        • #104397
          davidebond
          Partecipante
            Up
            0
            Down
            ::


            Onestamente, non ci ho capito molto. L’inversione di serie e volume produceva una doppia indicazione di serie, prima e dopo il volume. Allora ho provato questa strategia:

            `\DeclareBibliographyDriver{inproceedings}{%
            \newunit\newblock
            \printnames{author}%
            \newunit\newblock
            \printfield{title}%
            \newunit\newblock
            \printfield{booktitle}%
            \newunit\newblock
            \printfield{series}
            \newunit\newblock
            \printfield{volume}
            \newunit\newblock
            \printlist{publisher}%
            \newunit\newblock
            \printlist{location}%
            \newunit\newblock
            \printfield{year}%
            \newunit\newblock
            \printfield{pages}%
            \finentry}`

            Al momento, sembra funzionare. Gli articoli con la serie li classifico come “inproceedings”.

            Grazie. Ciao,

            davide

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

        Go to top