[RISOLTO] Suddividere bibliografia

  • Questo topic ha 5 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 5 anni, 4 mesi fa da PMC.
  • Creatore
    Topic
  • #119801
    PMC
      Up
      0
      Down
      ::


      Buongiorno,
      Lavorando sulla bibliografia ho deciso di dividere il materiale cartaceo dai siti web consultati.
      Nel dettaglio, la mia idea è la seguente:
      bibliografia=testi base+approfondimenti
      sitografia=siti web consultati
      Inoltre, poiché risultano separate dal principio, stavo pensando anche di associare alla bibliografia uno stile author-year e in sitografia uno stile numeric, in modo tale che per la prima si avrà ad es. [Eco, 1977] e per i siti qualcosa come [1] [2]…[n].
      La divisione nel preambolo l’ho pensata nel seguente modo:
      `\usepackage[autostyle, italian=guillemets]{csquotes}
      \usepackage[backend=biber, defernumbers=true]{biblatex}
      \addbibresource{BiblioTesi.bib}

      \DeclareBibliographyCategory{basic}
      \DeclareBibliographyCategory{approf}

      \defbibheading{basic}{\section*{Bibliografia essenziale}}
      \defbibheading{approf}{\section*{Approfondimenti}}
      \defbibheading{web}`

      e, all’interno del documento:

      `% bibliografia e sitografia%
      \chapter{\bibname}
      \printbibliography[heading=basic, keyword=basic, nottype=online]
      \printbibliography[heading=approf, keyword=notbasic, nottype=online]
      \cleardoublepage
      \chapter{Sitografia}
      \printbibliography[heading=web, type=online]
      `

      Il quale viene richiamato nel seguente modo:

      `
      \backmatter
      \include{FINE/bibsit}
      `

      Preciso che la questione del \backmatter+\chapter è aperta nel precedente topic, visto che è una cosa che desidero capire a fondo.
      keyword mi garantisce che in bibliografia vengano suddivisi correttamente i testi base dagli approfondimenti, type e nottype invece che tutto il materiale @online finisca in sitografia.
      Ho provato a sfruttare il pacchetto multibib ma anche gli esempi nella relativa documentazione davano un errore del tipo “pacchetto biblatex mancante”; so che biblatex e multibib sono incompatibili, ed infatti caricandolo nel preambolo si presentava l’errore di incompatibilità.
      Sarei anche disposto, forse stupidamente, a definire author-year nel preambolo e ad associare manualmente un nome fittizio ad ogni indirizzo web (sempre se possibile) che rispecchi la progressione dello stile numeric, in modo tale che i siti compariranno citati nel testo come [1], [2], [3] etc
      Spero di esser stato esaustivo 🙂
      PMC

    Visualizzazione 4 filoni di risposte
    • Autore
      Risposte
      • #119802
        samiel
        Partecipante
          Up
          0
          Down
          ::


          ci mandi un EMC su cui possiamo lavorare
          senza dover fare tutto da noi?

          m

        • #119803
          PMC
            Up
            0
            Down
            ::


            Giusto, scusami.
            `
            \RequirePackage{fix-cm}
            \begin{filecontents*}{PROVA.bib}
            @book{eco:tesi,
            author = {Eco, Umberto},
            title = {Come si fa una tesi di laurea},
            publisher = {Bompiani},
            date = {1977},
            location = {Milano},
            keywords= {basic},
            }
            @article{mori:tesi,
            author = {Mori, Lapo Filippo},
            title = {Scrivere la tesi di laurea con prova},
            journaltitle = {prova},
            number = {3},
            date = {2007},
            keywords={notbasic},
            }
            @online{wiki:latex,
            title = {prova su Wikipedia},
            date = {2017},
            url = {http://it.wikipedia.org/wiki/LaTeX},
            sortkey = {wiki},
            label = {wiki},
            }
            \end{filecontents*}

            \documentclass[11pt,a4paper,twoside,openright]{book}
            \usepackage{geometry}
            \geometry{a4paper, top=3cm, bottom=3 cm, left=2.5 cm, right=2.5 cm}
            \usepackage[T1]{fontenc}
            \usepackage{textcomp}
            \usepackage[utf8]{inputenc}
            \usepackage [italian]{babel}
            \usepackage{lmodern}
            \usepackage{microtype}
            \usepackage[autostyle, italian=guillemets]{csquotes}
            \usepackage[backend=biber, defernumbers=true, citestyle=authoryear, bibstyle=authortitle]{biblatex}
            \addbibresource{PROVA.bib}

            \DeclareBibliographyCategory{basic}
            \DeclareBibliographyCategory{approf}

            \defbibheading{basic}{\section*{Bibliografia essenziale}}
            \defbibheading{approf}{\section*{Approfondimenti}}
            \defbibheading{web}

            \begin{document}

            \mainmatter
            \chapter{Introduzione}
            Questo è un testo principale.\mkbibbrackets{\cite[1-5]{eco:tesi}}

            Questo è un approfondimento.\mkbibbrackets{\cite{mori:tesi}}

            Questo è un sito web.\cite{wiki:latex}

            \backmatter
            % bibliografia e sitografia%
            \chapter{\bibname}
            \printbibliography[heading=basic, keyword=basic, nottype=online]
            \printbibliography[heading=approf, keyword=notbasic, nottype=online]
            \cleardoublepage
            \chapter{Sitografia}
            \printbibliography[heading=web, type=online]

            \end{document}
            `

            Dovrebbe bastare, giusto?

          • #119804
            Filippo
            Partecipante
              Up
              0
              Down
              ::


              Vedo un po’ in ritardo questo post, scusa.

              Le questioni in realtà sono due: produrre una bibliografia suddivisa, e usare stili differenti nello stesso documento.

              La prima vedo che è già risolta bene nel tuo esempio. Se ti può interessare leggere un approfondimento, ulteriori informazioni le puoi trovare nel cap. 4.5.3 della guida tematica sulla bibliografia (che ho composto io stesso, mi si passi la pubblicità) disponibile nella sezione documentazione, che è dedicato proprio a questo argomento. Quel che potrei dire qui non sarebbe altro che una brutta copia della guida, tanto vale andarla a leggere direttamente.

              Sulla questione invece di usare stili diversi nello stesso documento, avevo, a suo tempo, fatto molte ricerche in materia, perché per la stesura della guida sarebbe stato molto comodo poter inserire degli esempi con i vari stili di cui si parla. Ma biblatex non supporta questa funzione. Su tex.stackexchange avevo trovato alcuni post più o meno datati (quindi facenti riferimento a versioni molto vecchie di biblatex/biber) che suggerivano alcuni stratagemmi per ottenere qualcosa, ma la casistica era piuttosto ristretta, usando degli stili nativi di biblatex. Il mio suggerimento, da bibliotecario prima che da utente di LaTeX è invece questo: è proprio necessario cambiare stile nel documento? perché non prendere uno stile ‘famoso’ (quindi ben sviluppato), e indicare tutti i materiali con quello? Il senso degli stili è proprio aderire a uno standard, così che chi legge è facilitato nella lettura. A me piace lo stile Chicago, che ho usato anche nella guida, ma ce ne sono molti altri.

              Mi spiace che non sia la soluzione che forse cercavi, ma spero di averti dato qualche suggerimento utile lo stesso.

            • #119805
              Up
              0
              Down
              ::


              La cosa si può fare definendo un nuovo ambiente per la bibliografia numerica.
              Ecco un EMC (nota le opzionei defernumbers e resetnumbers):
              `\begin{filecontents}{PROVA.bib}
              @book{eco:tesi,
              author = {Eco, Umberto},
              title = {Come si fa una tesi di laurea},
              publisher = {Bompiani},
              date = {1977},
              location = {Milano},
              keywords= {basic},
              }
              @article{mori:tesi,
              author = {Mori, Lapo Filippo},
              title = {Scrivere la tesi di laurea con prova},
              journaltitle = {prova},
              number = {3},
              date = {2007},
              keywords={notbasic},
              }
              @online{wiki:latex,
              title = {prova su Wikipedia},
              date = {2017},
              url = {http://it.wikipedia.org/wiki/LaTeX},
              sortkey = {wiki},
              label = {wiki},
              }
              \end{filecontents}

              \documentclass{article}
              \usepackage[style=authoryear,defernumbers]{biblatex}
              \addbibresource{PROVA.bib}

              \DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}

              \defbibenvironment{numericbib}
              {\list
              {\printtext[labelnumberwidth]{%
              \printfield{labelprefix}%
              \printfield{labelnumber}}}
              {\setlength{\labelwidth}{\labelnumberwidth}%
              \setlength{\leftmargin}{\labelwidth}%
              \setlength{\labelsep}{\biblabelsep}%
              \addtolength{\leftmargin}{\labelsep}%
              \setlength{\itemsep}{\bibitemsep}%
              \setlength{\parsep}{\bibparsep}}%
              \renewcommand*{\makelabel}[1]{\hss##1}}
              {\endlist}
              {\item}

              \begin{document}

              \nocite{*}

              \printbibliography[
              nottype=online,
              title=Risorse cartacee
              ]

              \printbibliography[
              env=numericbib,
              resetnumbers,
              type=online,
              title=Siti Web,
              ]

              \end{document}`

              Ciao
              Ivan

            • #119806
              PMC
                Up
                0
                Down
                ::


                Buongiorno, alla fine cercando ancora di più su un altro forum ho trovato esattamente la soluzione che cercavo, aggiungo il codice in caso possa servire a qualcuno:
                `\usepackage[autostyle,italian=guillemets]{csquotes}
                \usepackage[citestyle = authoryear, bibstyle=authortitle, labelnumber, defernumbers = true, backend = biber, autocite=inline]{biblatex}

                \DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}

                \renewbibmacro*{cite}{%
                \iffieldundef{shorthand}
                {\ifkeyword{online}
                {\printfield{labelprefix}%
                \printfield{labelnumber}}
                {\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
                {\usebibmacro{cite:label}%
                \setunit{\printdelim{nonameyeardelim}}}
                {\printnames{labelname}%
                \setunit{\printdelim{nameyeardelim}}}%
                \usebibmacro{cite:labeldate+extradate}}}
                {\usebibmacro{cite:shorthand}}}

                \DeclareCiteCommand{\parencite}[\mkbibbrackets]
                {\usebibmacro{prenote}}%
                {\usebibmacro{citeindex}%
                \usebibmacro{cite}}
                {\multicitedelim}
                {\usebibmacro{postnote}}

                \DeclareCiteCommand*{\parencite}[\mkbibbrackets]
                {\usebibmacro{prenote}}
                {\usebibmacro{citeindex}%
                \usebibmacro{citeyear}}
                {\multicitedelim}
                {\usebibmacro{postnote}}

                \defbibenvironment{bibliographyNUM}
                {\list
                {\printtext[labelnumberwidth]{%
                \printfield{labelprefix}%
                \printfield{labelnumber}}}
                {\setlength{\labelwidth}{\labelnumberwidth}%
                \setlength{\leftmargin}{\labelwidth}%
                \setlength{\labelsep}{\biblabelsep}%
                \addtolength{\leftmargin}{\labelsep}%
                \setlength{\itemsep}{\bibitemsep}%
                \setlength{\parsep}{\bibparsep}}%
                \renewcommand*{\makelabel}[1]{\hss##1}}
                {\endlist}
                {\item}

                \assignrefcontextkeyws[sorting=none]{online}

                \addbibresource{BIBLIOGRAFIA.bib}`
                e, infine:
                `% bibliografia e sitografia%
                \addcontentsline{toc}{chapter}{Bibliografia principale}
                \printbibliography[title=Bibliografia principale, keyword=basic]
                \addcontentsline{toc}{chapter}{Approfondimenti}
                \printbibliography[title=Approfondimenti, keyword=notbasic]

                \addcontentsline{toc}{chapter}{Sitografia}
                \newrefcontext[sorting=none]
                \printbibliography[env=bibliographyNUM,title=Sitografia, keyword=online, resetnumbers] `

                Ammetto che ho provato una soluzione più “elegante”, ossia sfruttare un if-else col type al posto di keyword, ma a quanto pare la soluzione originale prevedeva una suddivisione leggermente differente dalla mia, di conseguenza anche cambiando quell’if non sono stato in grado di trovare l’analogo di ` \assignrefcontextkeyws[sorting=none]{online} `

                Avevo provato altre soluzioni, tuttavia davano sempre lo stesso problema: la sitografia continuava ad essere ordinata in ordine alfabetico e non di apparizione!
                Grazie in ogni caso delle risposte, risultano sempre molto utili visto che ho intenzione di approfondire le mie conoscenze in materia una volta archiviata la laurea.
                In allegato ho inserito i risultati ottenuti
                [attachment=2619]prova.JPG[/attachment]

                Grazie ancora @ivan e @ezellohar 🙂

                Attachments:
                You must be logged in to view attached files.
            Visualizzazione 4 filoni di risposte
            • Devi essere connesso per rispondere a questo topic.

            Go to top