Creazione file .bib e configurazione Texworks

  • Questo topic ha 17 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 13 anni fa da Nyquist.
  • Creatore
    Topic
  • #88171
    Up
    0
    Down
    ::


    Salve a tutti,

    Ho letto attentamente la sezione di l’Arte di scrivere in Latex riguardante la bibliografia ma ancora non mi sono chiari alcuni passi:

    Ho settato Texworks con Biber come indicato nel paragrafo 7.2.1 (ossia con riferimento a quanto indicato da [Gregorio,11])

    Come faccio a generare un file.bib del tipo:

    `@BOOK{mor,
    title = {Robust Process Control},
    publisher = {Prentice-Hall, Englewood Cliffs},
    year = {1989},
    author = {M. Morari, E. Zafiriou},
    }
    `

    ???

    Ho provato a impostare Bibtex come compilatore e a salvare come file.bib con Texworks. Subito dopo ho aperto il mio file tex ed ho inserito:
    `\usepackage[autostyle,italian=guillemets,babel]{csquotes}`
    `\usepackage[backend=biber,bibstyle=numeric]{biblatex}`

    `\bibliography{file.bib} `
    nel preambolo

    e
    `\printbibliography `

    prima della fine del documento

    Ma non ne vuole sapere di stamparmi la bibliografia.

Visualizzazione 16 filoni di risposte
  • Autore
    Risposte
    • #88172
      Doc
      Partecipante
        Up
        0
        Down
        ::


        Un file bib lo puoi creare con qualunque editor di testi, anche il più semplice.
        In alternativa, puoi usare il comodissimo e semplicissimo [tt]Jabref[/tt], programmino in java che puoi trovare agevolmente con google.

        Una volta che l’hai creato, devi indicarlo all’interno del file .tex principale, con qualcosa come:
        `\addbibresource{Bibliografia.bib}`

        Quindi, compili con pdflatex/xelatex + biber + pdflatex/xelatex e magari un altro colpo di pdflatex/xelatex ed è fatta!

      • #88173
        Up
        0
        Down
        ::


        Dunque, ho creato il database con Jabref e ho messo il file.bib all’interno della cartella contenente il file.tex (anche se non ho capito perché Jabref mi mostra in anteprima il nome abbreviato del secondo autore)

        Adesso, ho compilato in ordine con:

        pdflatex

        Biber

        pdflatex

        pdflatex

        ma nulla 😕

      • #88174
        Doc
        Partecipante
          Up
          0
          Down
          ::


          Se puoi, posta il preambolo.
          Comunque, avanzo un’ipotesi: subito prima di [tt]\printbibliography[/tt], hai messo
          `\nocite{*}`
          ?

        • #88175
          Up
          0
          Down
          ::


          no.

          Questo è tutto quello che c’è prima dell’inizio del documento

          `
          \documentclass[11pt,a4paper,oneside]{book}

          \usepackage[T1]{fontenc}
          \usepackage[utf8]{inputenc}
          \usepackage[italian]{babel} %lingue in uso
          \usepackage[onehalfspacing]{setspace}
          \usepackage{afterpage}
          \usepackage[colorlinks=true,linkcolor=blue,linktoc=page,urlcolor=black]{hyperref}
          \usepackage{geometry}
          \usepackage{fancyhdr}
          \usepackage[pdftex]{graphicx}
          \usepackage{sidecap}
          \usepackage{amsmath}
          \usepackage[labelfont=bf]{caption}
          \usepackage[autostyle,italian=guillemets,babel]{csquotes}
          \usepackage[backend=biber,bibstyle=numeric]{biblatex}

          \geometry{verbose,tmargin=3cm,bmargin=3cm,lmargin=3.5cm,rmargin=2.5cm}
          \addbibresource{bibliografia.bib}
          `

        • #88176
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            1) intanto la chiamata ad hyperref va messa dopo tutti gli altri \usepackage;
            2) toglia l’opzione pdftex alla chiamata di graphics
            3) sarebbe meglio avere il file di registro prodotto da biber, altrimenti è difficle cappire perché non venga prodotta la bibliografia.
            4) generalmente questo siccede perché non si è usato nel testo nessun comando \cite o altri comandi simili; cioè non si è fatta nessuna citazione; il suggerimento di @Doc dovrebbe superare al mancanza di citazioni, perché die a biber che sono sda citare tutti i testi in bibliografia.bib.
            5) parto dal presupposto che il file bibliografico che hai prodotto con Jabref si chiami bibliografia.bib, altrimenti è logico che biber non compili nessuna bibliografia presente o non presente il comando \nocite(*)

          • #88177
            Up
            0
            Down
            ::


            1) fatto;
            2) fatto;
            3) questo è ciò che si legge nella console di output quando compilo con il solo Biber:

            `
            INFO – This is Biber 1.5
            INFO – Logfile is 'provaperbiblio.blg'
            INFO – Reading 'provaperbiblio.bcf'
            WARN – Warning: Found biblatex control file version 2.5, expected version 2.3
            INFO – Using all citekeys in bib section 0
            INFO – Processing section 0
            INFO – Looking for bibtex format file 'bibliografia.bib' for section 0
            INFO – Decoding LaTeX character macros into UTF-8
            INFO – Found BibTeX data source 'bibliografia.bib'`

            4) non ho usato citazioni e adesso ho aggiunto
            `\nocite{*}`
            come suggerito da Doc prima di \printbibliography
            5) il file si chiama proprio bibliografia.bib

            (In tutto questo, non so se sia normale, ma come opzione di compilazione non mi ritrovo un azione combinata con Biber così come succede per pdflatex+MakeIndex+BibTeX ma solo Biber).
            Ho compilato con

            Biber (producendo la suddetta uscita)

            pdflatex+MakeIndex+BibTeX (un paio di volte) ma niente

            EDIT: PS: il file .tex l’ho chiamato provaperbiblio.tex

          • #88178
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              Il file di registro di biber non è completo, non dice coma va a finire e che cosa produce o non produce.

              Intanto guarda se nella cartella del file principale c’è un file con l’estensione .bbl; questo dovrebbe essere il file prodotto da biber ed è quello che legge ed esegue \printbibliography; se il file è vuoto la cosa dovrebbe apparire anche dal file di registro di biber.

            • #88179
              Up
              0
              Down
              ::


              nel file .bbl c’è scritto questo:

              `
              % $ biblatex auxiliary file $
              % $ biblatex bbl format version 2.1 $
              % Do not modify the above lines!
              %
              % This is an auxiliary file used by the 'biblatex' package.
              % This file may safely be deleted. It will be recreated by
              % biber as required.
              %
              \begingroup
              \makeatletter
              \@ifundefined{ver@biblatex.sty}
              {\@latex@error
              {Missing 'biblatex' package}
              {The bibliography requires the 'biblatex' package.}
              \aftergroup\endinput}
              {}
              \endgroup

              \endinput
              `

              Ma andando a controllare nella cartella di MiKTeX 2.9 ho diversi files che cominciano con biblatex con diverse estensioni tra cui biblatex.sty

            • #88180
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                Se durante l’esecuzione di secondo pdflatex, quando viene letto ed eseguito il file .bbl viene preso il ramo del comando condizionale \@ifundefined, vuol dire che la control sequence \ver@biblatex non risulta definita; siccome apparentemente tu il file biblatex l’hai invocato e caricato i casi sono due:
                1) il file biblatex,sty che ti ritrovi manca dekka definzione di quella stringa, er esempio perché è obsoleto o bacato, oppure
                2) per qualche motivo non ti esegue il comando \usepackage[…]{biblatex}

                A questo punto non saprei cosa dirti; riprova a controllare dalla finestra comandi se il comando`kpsewhich biblatex.sty` ti risponde con un percorso completo di quel file; se non ti indica nessun percorso completo di quel file, aggiorna il database dei nomi dei file della tua distribuziione; ricontrolla con kpsewhich dopo aver aggiornato quel database dei nomi dei file; se non ti compare ancora una rispsta completa da aprte di kpsewhich, chissà che cosa è successo al tuo calcolatore.

              • #88181
                Up
                0
                Down
                ::


                Inserendo

                `
                kpsewhich biblatex.sty
                `

                mi restituisce il percorso:

                C:/Program Files (x86)/MiKTek 2.9/tex/latex/biblatex/biblatex.sty

                Che faccio? Provo a reinstallare il pacchetto? Lo installai attraverso Texworks (si è connesso lui da solo ed ha scaricato il pacchetto all’occorrenza).

                La cosa strana comunque, se può essere utile a risolvere il problema, è che ho provato il file .tex di questa pagina:

                http://www.khirevich.com/latex/biblatex/

                e stampa la bibliografia tranquillamente

                Riporto il contenuto del file .tex:

                `\documentclass[a4paper,11pt]{book}

                \usepackage{charter} % optional: activate bitstream charter font

                \usepackage[hyperref=true,
                url=false,
                isbn=false,
                backref=true,
                style=custom-numeric-comp,
                citereset=chapter,
                maxcitenames=3,
                maxbibnames=100,
                backend=bibtex, % while checking on one of my (newest) systems, this option was needed to generate bibliography
                block=none]{biblatex}

                \usepackage{hyperref}

                % back reference text preceding the page number (“see p.”)
                \DefineBibliographyStrings{english}{%
                backrefpage = {see p.}, % for single page number
                backrefpages = {see pp.} % for multiple page numbers
                }

                % the followings activate 'custom-english-ordinal-sscript.lbx'
                % in order to print ordinal 'edition' suffixes as superscripts,
                % and adjusts (reduces) spacing between suffix and following “ed.”
                \DeclareLanguageMapping{english}{custom-english-ordinal-sscript}
                \DeclareFieldFormat{edition}%
                {\ifinteger{#1}%
                {\mkbibordedition{#1}\addthinspace{}ed.}%
                {#1\isdot}}

                % removes period at the very end of bibliographic record
                \renewcommand{\finentrypunct}{}

                % removes period after DOI and suppresses capitalization
                % of the word following DOI (“See p. xx” -> “see p. xx”)
                \renewcommand{\newunitpunct}{\addspace\midsentence}

                \DeclareFieldFormat{journaltitle}{\mkbibemph{#1},} % italic journal title with comma
                \DeclareFieldFormat[inbook,thesis]{title}{\mkbibemph{#1}\addperiod} % italic title with period
                \DeclareFieldFormat[article]{title}{#1} % title of journal article is printed as normal text
                \DeclareFieldFormat[article]{volume}{\textbf{#1}\addcolon\space} % makes volume of journal bold and adds colon
                \DeclareFieldFormat{pages}{#1} % removes pagination (p./pp.) before page numbers

                %%%%%%%%%
                % the command \sjcitep defined below prints footnote citation above punctuation
                \newlength{\spc} % declare a variable to save spacing value
                \newcommand{\sjcitep}[2][]{% new command with two arguments: optional (#1) and mandatory (#2)
                \settowidth{\spc}{#1}% set value of \spc variable to the width of #1 argument
                \addtolength{\spc}{-1.8\spc}% subtract from \spc about two (1.8) of its values making its magnitude negative
                #1% print the optional argument
                \hspace*{\spc}% print an additional negative spacing stored in \spc after #1
                \supershortnotecite{#2}}% print (cite) the mandatory argument
                %%%%%%%%%

                \bibliography{example_ref_list} % includes file “example_ref_list.bib” with data on the cited references

                \begin{document}

                \input{example_text.tex}

                % prints author names as small caps
                \renewcommand{\mkbibnamefirst}[1]{\textsc{#1}}
                \renewcommand{\mkbibnamelast}[1]{\textsc{#1}}
                \renewcommand{\mkbibnameprefix}[1]{\textsc{#1}}
                \renewcommand{\mkbibnameaffix}[1]{\textsc{#1}}

                \printbibliography

                \end{document} `

                in cui il file example_text.tex è presente nel file .rar fornito sul sito così come, ovviamente, example_ref_list.bib

                Eseguendolo con pdflatex+makeindex+bibtex, come ho detto, funziona ma non appena prendo semplicemente la parte:

                `\usepackage[hyperref=true,
                url=false,
                isbn=false,
                backref=true,
                style=custom-numeric-comp,
                citereset=chapter,
                maxcitenames=3,
                maxbibnames=100,
                backend=bibtex, % while checking on one of my (newest) systems, this option was needed to generate bibliography
                block=none]{biblatex}`

                e la inserisco nel mio documento mi dà il seguente errore:

                `! Package biblatex Error: Style 'custom-numeric-comp' not found.

                See the biblatex package documentation for explanation.
                Type H for immediate help.

                l.10497 \RequireBibliographyStyle{\blx@bbxfile}`

              • #88182
                OldClaudio
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Non so cosa dirti.
                  Speriamo che qualcuno più esperto di me con le bibliografie ti possa aiutare.

                  Credo che in realtà il pacchetto biblatex non sia caricato in modo completo, oppure che sia necessario caricare anche altri pacchetti. È il solito problema di MiKTeX caricato in forma basic, cioè abbondantemente incompleta, con la speranza che sia davvero capace di installarsi al volo i pacchetti che non ha ma che gli servono.
                  A me con TeXLive queste cose non sono mai successe; non avendo una macchina Windows sottomano non sono nemmeno in grado di simulare il tuo problema.

                • #88183
                  Up
                  0
                  Down
                  ::


                  Sono andato nella cartella di MiKTeK di biblatex examples ed ho avviato un esempio, lì la bibliografia veniva stampata correttamente, ma non appena trasporto il file.tex e il file .bib in un’altra cartella scatta l’errore.

                  Cosa mi consigli di fare? Reinstallo Biblatex e Biber manualmente?

                • #88184
                  OldClaudio
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    In questo caso direi che il tuo database dei nomi dei file non è aggiornato; MiKTeX Settings ha un apposito bottone per aggiornare i database dei nomi dei file per tutti gli alberi (di sistema, personale ed altri) della tua installazione, purché questi siano elencati nell’apposita finestra dello stesso MiKTeX Settings.

                  • #88185
                    Up
                    0
                    Down
                    ::


                    Una info da ultra-principiante: ma se decido di disintallare MiKTeK e di installare TeXLive (pur continuando ad usare Texworks) c’è il rischio di combinare casini con file di miktek che rimangono? Perché a questo punto la vedo come la soluzione più vicina. Lo chiedo perché ho notato che con l’updating alcuni file vengono installati anche nella cartella system.

                  • #88186
                    alegenn
                    Partecipante
                      Up
                      0
                      Down
                      ::

                      Nyquist” post=87686Una info da ultra-principiante: ma se decido di disintallare MiKTeK e di installare TeXLive (pur continuando ad usare Texworks) c’è il rischio di combinare casini con file di miktek che rimangono? Perché a questo punto la vedo come la soluzione più vicina. Lo chiedo perché ho notato che con l’updating alcuni file vengono installati anche nella cartella system.

                      Rimuovi completamente MiKTeX non ne sentirai la mancanza!
                      TeXworks è incluso anche nella distribuzione TeXlive su Windows, se proprio vuoi, puoi salvare degli screenshot delle impostazioni di TeXworks, ammesso che tu abbia impostato dei file di stile particolari (ad esempio per compilare l’indice analitico).
                      Ricorda di disattivare l’antivirus durante l’installazione di TeXlive, e ovviamente spero tu disponga di una stabile connessione ad internet.
                      Saluti

                    • #88187
                      OldClaudio
                      Partecipante
                        Up
                        0
                        Down
                        ::


                        Non succede niente di grave, anzi…

                      • #88188
                        Up
                        0
                        Down
                        ::


                        Ho risolto utilizzando i file .bbx forniti sul sito:

                        http://www.khirevich.com/latex/biblatex/

                        non so come faccia a funzionare ma non appena metto custom-numeric-comp.bbx nella cartella del file.tex funziona.

                        Ciò non toglie che alla prossimo minimo problema di dubbia origine passo a TeKLive.

                        Grazie a tutti per la pazienza

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

                    Go to top