modificare l’aspetto del numero per ogni item bibliografico

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


      Salve a tutti. Rieccomi qui, dopo tanto tempo. Avrei un piccolo problema. Dovrei gestire ogni item della bibliografia in maniera differente. Ovvero, in certi casi, far precedere l’item dal semplice Numero con il puntino. In altri casi dal Numero racchiuso nelle parentesi di Dirac.

      Io ho usato questa definizione nel preambolo:

      `
      \makeatletter
      \renewcommand\@cite[2]{%
      Ref.~#1\ifthenelse{\boolean{@tempswa}}
      {, \nolinebreak[3] #2}{}
      }
      \renewcommand\@biblabel[1]{#1.}
      \makeatother
      `

      Questo codice mi genera solo i Numeri puntati.

      `
      \makeatletter
      \renewcommand\@cite[2]{%
      Ref.~#1\ifthenelse{\boolean{@tempswa}}
      {, \nolinebreak[3] #2}{}
      }
      \renewcommand\@biblabel[1]{$\langle$#1$\rangle$.}
      \makeatother
      `

      Questo genera gli items tra parentesi angolate. Ovviamente, i due codici appartengono a due files diversi. Io, invece, vorrei che nello stesso file e nella stessa bibliografia ci fossero tutte e due le versioni. Per esempio,

      1. Item
      <2>. Item
      <3>. Item
      4. Item
      ecc

      Come posso fare?

      Grazie,

      davide

    Visualizzazione 13 filoni di risposte
    • Autore
      Risposte
      • #103528
        Up
        0
        Down
        ::


        Devi definire un nuovo comando \mybibitem (sulla base di \bibitem)
        assieme al nuovo comando \@mybiblabel che userai al suo interno.

        Francamente non ho ma visto nulla di simile e trovo la soluzione assurda, ma se ti obbligano adattati.
        Parentesi di Dirac? Forse è eccessivo… Meglio uncinate o angolari.

        Ciao
        Ivan

      • #103529
        davidebond
        Partecipante
          Up
          0
          Down
          ::


          Purtroppo, mi chiedono questo. Mi potresti indicare come fare? Devo creare un nuovo pacchetto?

          Grazie,

          davide

        • #103530
          davidebond
          Partecipante
            Up
            0
            Down
            ::


            Ho provato in questo modo:

            `
            \documentclass{book}
            \usepackage{cite}
            \usepackage{ifthen}
            \usepackage{footmisc}

            \usepackage[english]{babel}

            \makeatletter
            \renewcommand\@cite[2]{%
            Ref.~#1\ifthenelse{\boolean{@tempswa}}
            {, \nolinebreak[3] #2}{}
            }
            \renewcommand\@biblabel[1]{#1.}
            \makeatother

            \newcommand{\mybibitem}[1]{\stepcounter{enumiv} \bibitem[\vv<{\arabic{enumiv}}>]{#1}}

            \begin{document}

            Voglio citare \footnote{\vv<\citen{schroder}>} e citare \footnote{\vv<\citen{serret}>} e citare \footnote{\citen{schroder1}} e citare ancora \footnote{Non lo so}.

            \begin{thebibliography}{99}

            \bibitem{schroder} Ernst Schr{\”o}der, \emph{Vorlesungen {\”u}ber die Algebra der Logik}, Teubner, Leipzig, 1901.
            \mybibitem{serret} Alfred Tarski, On the Calculus of Relations, \emph{The Journal of Symbolic Logic}, (6), 3, (1941), 73–89.
            \bibitem{schroder1} Ernst Schr\”oder, \emph{Der Operationskreis des Logikkalk\”uls}, Teubner, Leipzig, 1877.

            \end{thebibliography}

            \end{document}
            `

            Il latex my dà errore: !missing $ inserted. Per il resto, andrebbe bene. A parte il fatto che la A di Alfred non cade perfettamente sotto la E di Ernst del primo item. Mi va bene che i Numeri degli items siano incolonnati, ma vorrei che anche gli items iniziassero tutti allo stesso posto.

            Grazie,

            davide

          • #103531
            Up
            0
            Down
            ::


            Ciao, ho provato a compilare il tuo esempio ma non funziona per un altro motivo: dice che non trova un comando (probabilmente \vv —non lo conosco, se esiste—).
            Inoltre vorrei spingerti ad usare l’input in utf8, che ti permette di usare nativamente ü, ö, e simili; e i font T1: sapevo (non so se è ancora così) che il posizionamento con \” non è sempre ottimo.

            EDIT: aggiungendo `\usepackage[utf8]{inputenc}
            \usepackage[T1]{fontenc}` al tuo preambolo, (e togliendo \vv) a me funziona senza problemi, mi mette i < e > (orrendi a mio avviso), sarebbe più bello, magari, usare ‹ e › ma non sono sicuro, e non saprei come inserirli in una tastiera non-mac

          • #103532
            davidebond
            Partecipante
              Up
              0
              Down
              ::


              Hai Ragione, scusa. È una macro che avevo scritto. In questo modo funziona:

              `

              \documentclass{book}
              \usepackage{cite}
              \usepackage{amssymb}
              \usepackage{ifthen}
              \usepackage{footmisc}

              \usepackage[english]{babel}
              \def\vv<#1>{$\langle$#1$\rangle$}

              \makeatletter
              \renewcommand\@cite[2]{%
              Ref.~#1\ifthenelse{\boolean{@tempswa}}
              {, \nolinebreak[3] #2}{}
              }
              \renewcommand\@biblabel[1]{#1.}
              \makeatother

              \newcommand{\mybibitem}[1]{\stepcounter{enumiv} \bibitem[{$\langle$}{\arabic{enumiv}}{$\rangle$}]{#1}}

              \begin{document}

              Voglio citare \footnote{\citen{schroder}} e citare \footnote{\citen{serret}} e citare \footnote{\citen{schroder1}} e citare ancora \footnote{Non lo so}.

              \begin{thebibliography}{99}

              \bibitem{schroder} Ernst Schr{\”o}der, \emph{Vorlesungen {\”u}ber die Algebra der Logik}, Teubner, Leipzig, 1901.
              \mybibitem{serret} \hspace{-3pt}Alfred Tarski, On the Calculus of Relations, \emph{The Journal of Symbolic Logic}, (6), 3, (1941), 73–89.
              \bibitem{schroder1} Ernst Schr\”oder, \emph{Der Operationskreis des Logikkalk\”uls}, Teubner, Leipzig, 1877.

              \end{thebibliography}

              \end{document}
              `

              Ho dovuto inserire uno spazio negativo al secondo item, perché la A di Alfred finisca sotto la E di Ernst. L’alternativa è di inserire nella definizione di mybibitem uno spazio negativo di -6pt.

              Spero che qualcuno trovi una soluzione più elegante.

              In effetti, questa storia delle bra-kets non mi piace, ma quando ti chiedono e ti pagano per farlo… facciamolo. Nei miei articoli uso una soluzione diversa.

              Grazie,

              davide

            • #103533
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                I segni di < (minore di) e di > (maggiore di) andrebbero usati solo in matematica; nel testo, caricando il pacchetto textcomp, dovresti poter accedere ai comandi \textlangle e \textrangle, che son parentesi angolate molto più aperte dei segni < e >.

              • #103534
                davidebond
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Grazie del consiglio. Purtroppo, la mia soluzione non funziona più così com’è. Io vorrei che i Numeri degli items fossero incolonnati uno sotto l’altro e che il testo di ogni item iniziasse allo stesso punto. Adesso vedo che dopo un item il numero successivo y cade sotto la prima parentesi e dopo la x.

                  Che fare?

                  Grazie,

                  davide

                • #103535
                  OldClaudio
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Prova a mettere [tt]\llap[/tt] prima di [tt]{$\langle$}[/tt] nella definizione di [tt]\mybibitem[/tt].

                  • #103536
                    davidebond
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      Grazie, ma non funziona.

                      Ciao,

                      davide

                    • #103537
                      OldClaudio
                      Partecipante
                        Up
                        0
                        Down
                        ::


                        Pazienza, ci ho provato, ma non vorrei spendere del tempo per mettere a punto una svogliatura bibliografica, prescritta o no dal relatore.

                        Le liste bibliografiche sono cose serie, specialmente se le si vuole comporre in modo automatico; componendole a mano, come si dovrebbe fare con Word o con Writer, si possono fare tutti i pasticci che si desiderano, anche tipograficamente scorretti. Certo, se il relatore non ha mai usato un programma automatico di elaborazione di testi non sa cosa pretende dai sui lureandi. Per giunta per una tesi che non è la oro, ma di ciascuno dei loro laureandi; ognuno di questi compone la sua bibliografia come meglio crede, specialmente se si affida ad un programma di composizione automatico professionale come LaTeX+biblatex+biber

                        Se vai a vedere in biblioteca il testo della norma UNI relativa alla composizione delle liste bibliografiche, vedrai che le parentesi uncinate o i caporali semplici non vengono mai nominate fra le componenti di queste liste.

                        Piuttosto fai due liste distinte una per quei riferimenti che richiedono la notazione normale, e un’altra per quella che richiederebbe la notazione speciale che stai cercando di realizzare. Dai un titolo diverso alle due bibliografie e vedrai che la cosa si risolve da sola.

                      • #103538
                        davidebond
                        Partecipante
                          Up
                          0
                          Down
                          ::


                          Grazie. Ma il problema è il seguente: sono già laureato e ho un dottorato in logica ed epistemologia alla Sapienza. Ho scritto vari articoli accademici in Italia solo con la Lettera Pristem, ma all’estero su varie riviste accademiche, tra cui le Notices of the AMS o la Gazette des mathematicians. Ho sempre utilizzato il latex e un file esterno .bib. Mandavo il file .tex e .bib in una cartella al board delle riviste e poi si arrangiavano loro. Qui, io dovrei collaborare alla redazione delle opere complete di un matematico, ma purtroppo Hanno fatto la scelta di usare l’environmente “thebibliography” e poi quella di usare le parentesi per alcuni items. Io feci la proposta di creare due bibliografie distinte, ma non è passata. Dal mio punto di vista, ho la netta impressione che dovrò sistemare ogni item singolarmente e a mano. A me dispiace, perché con un file esterno tutto era più bello. Si aveva un unico file bibliografico per tutti i lavori, senza dover riscrivere ogni volta lo stesso item.

                          Il punto qual’è? Che si tratta di lavoro e vengo pagato per questo. Quindi, non ho possibilità di manovra. Fossi uno degli editori, sarebbe diverso. Punterei i piedi. In questo caso, devo obbedire.

                          Grazie infinite, comunque.

                          Ciao,

                          davide

                        • #103539
                          OldClaudio
                          Partecipante
                            Up
                            0
                            Down
                            ::


                            Io con questo esempio minimo complabile ottengo i numeri della bibliografia al posto giusto`% !TEX encoding = UTF-8 Unicode
                            % !TEX TS-program = pdflatex

                            \documentclass{book}

                            \usepackage[T1]{fontenc}
                            \usepackage{lmodern,textcomp}
                            \usepackage[utf8]{inputenc}
                            \usepackage[english]{babel}

                            \def\vv<#1>{\textlangle#1\textrangle}

                            \makeatletter
                            \renewcommand\@cite[2]{%
                            Ref.~#1\ifthenelse{\boolean{@tempswa}}
                            {, \nolinebreak[3] #2}{}
                            }
                            \renewcommand\@biblabel[1]{#1.}
                            \makeatother

                            \let\originalbibitem\bibitem

                            \newcommand{\mybibitem}[1]{%
                            \stepcounter{enumiv}\originalbibitem[\vv<\arabic{enumiv}>]{#1}}

                            \usepackage{cite}
                            \usepackage{amssymb}
                            \usepackage{ifthen}
                            \usepackage{footmisc}

                            \begin{document}

                            Voglio citare \footnote{\citen{schroder}} e citare \footnote{\citen{serret}} e citare \footnote{\citen{schroder1}} e citare ancora \footnote{Non lo so}.

                            \begin{thebibliography}{99}
                            %
                            \bibitem{schroder} Ernst Schr{\”o}der, \emph{Vorlesungen {\”u}ber die Algebra der Logik}, Teubner, Leipzig, 1901.
                            %
                            \mybibitem{serret} \hspace{-3pt}Alfred Tarski, On the Calculus of Relations, \emph{The Journal of Symbolic Logic}, (6), 3, (1941), 73–89.
                            %
                            \bibitem{schroder1} Ernst Schr\”oder, \emph{Der Operationskreis des Logikkalk\”uls}, Teubner, Leipzig, 1877.
                            %
                            \end{thebibliography}

                            \end{document}`Cioè i numeri della lista bibliografica sono allineati correttamente come desideri.
                            Nota che ho usato per le parentesi uncinale i comandi \textlangle e \textrangle che non comportano il passaggio alla matematica, ma richiedono solo il pacchetto textcomp. Ma non credo che fosse quello il motivo per il quale la cosa prima non funzionava.
                            Onestamente non ho capito perché non funzionasse.
                            Certo è che usando il pacchetto cite le citazioni si complicano non poco, anche se forse le citazioni multiple di tipo numerico sono formattate meglio; ma è altrettanto certo che le citazioni vengono eseguite con comandi fragilissimi dovuti al fatto che il pacchetto contiene un’infinità di macro per scomporre la lista di citazioni in ordine alfabetico e numerico, e per comprimere gli intervalli numerici. Sei sicuro di volere usare il pacchetto cite e il suo comando \citen?

                          • #103540
                            davidebond
                            Partecipante
                              Up
                              0
                              Down
                              ::


                              Anzitutto, grazie per la risposta. Il mio compito sarebbe quello di eliminare qualsiasi tipo di parentesi nei riferimenti bibliografici. Se uso il comando \cite{} questo inserisce nel testo e nella bibliografia delle parentesi quadre. Io dovrei eliminare queste parentesi in modo da inserire solo alcuni items tra bra-kets. La soluzione di \citen{} mi sembrava la più comoda…

                              Ciao,

                              davide

                            • #103541
                              davidebond
                              Partecipante
                                Up
                                0
                                Down
                                ::


                                In qualche modo funziona. quindi mi sento autorizzato a mettere “risolto”.

                                Grazie a tutti,

                                davide

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

                            Go to top