Compilazione da riga di comando

  • Creatore
    Topic
  • #59926
    strolego
    Partecipante
      Up
      0
      Down
      ::


      E’ possibile passare da riga di comando delle opzioni ai pacchetti caricati ovvero far caricare dei pacchetti?
      Esempio
      latex ????? pippo.tex
      dove al posto di ????? c’è qualcosa per far caricare, ad esempio, il pacchetto xcolor oppure per passare l’opzione dvips a xcolor?

      Grazie
      Flavio

    Visualizzazione 5 filoni di risposte
    • Autore
      Risposte
      • #59927
        Up
        0
        Down
        ::


        Credo proprio di no. Ma potrei sbagliarmi.

        Piuttosto come mai ti serve questa cosa?

        Ciao ciao.
        Fra

      • #59928
        robitex
        Amministratore del forum
          Up
          0
          Down
          ::

          E’ possibile passare da riga di comando delle opzioni ai pacchetti caricati ovvero far caricare dei pacchetti?
          Esempio
          latex ????? pippo.tex
          dove al posto di ????? c’è qualcosa per far caricare, ad esempio, il pacchetto xcolor oppure per passare l’opzione dvips a xcolor?

          Grazie
          Flavio

          Ti serve uno script che alteri il sorgente opportunamente PRIMA della compilazione e che lanci successivamente la compilazione stessa.
          Bye

        • #59929
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            In teoria si potrebbe fare anche senza script.
            Se si dovesse compilare il file documento.tex sarebbe forse possibile dare da linea di comando cose come
            `
            latex \usepackage{mypackage} \input{documento}
            `
            ma è una strada ricca di insidie e di limitazioni.
            Benché sul manuale di Lamport ci sia scritto che è vietato mettere qualunque cosa prima della riga \documentclass, tranne l’ambiente “filecontents”, in realtà è possibile mettere qualche cosa prima di \documentclass, non so se \usepackage con il suo argomento sia una di queste cose, non l’ho mai provato. Tuttavia, sì è possibile mettere qualcosa prima di \documentclass, e in particolare prima di eseguire l’inpute del documento.

            Tuttavia in questo modo non si possono cambiare le opzioni ai pacchetti, perché risulterebbe un errore (fatale) di option clash. Quindi segui il consiglio di robitex; elaborare il file da comporre con uno script adeguato prima di darlo in pasto a (pdf)latex è l’unica via sicura per raggiungere lo scopo senza problemei: in pratica si corregge il file da comporre e (pdf)latex vede solo un bel file in codice latex bene composto e senza possibilità di errori (se lo script è fatto bene) per la presenza di doppie chiamate o di opzioni in contrasto.

          • #59930
            Up
            0
            Down
            ::

            E’ possibile passare da riga di comando delle opzioni ai pacchetti caricati ovvero far caricare dei pacchetti?
            Esempio
            latex ????? pippo.tex
            dove al posto di ????? c’è qualcosa per far caricare, ad esempio, il pacchetto xcolor oppure per passare l’opzione dvips a xcolor?

            Grazie
            Flavio

            `latex -jobname pippo '\RequirePackage[dvips]{xcolor}\input{pippo}'`
            Oppure, se xcolor è già caricato dal tuo documento,
            `latex '\PassOptionsToPackage{dvips}{xcolor}\input{pippo}'`
            Ciao
            Enrico

          • #59931
            strolego
            Partecipante
              Up
              0
              Down
              ::


              Grazie a tutti delle risposte che testerò
              La cosa mi serve per automatizzare i passaggi usando auto-pst-pdf poiché devo compilare il mio file due volte, una con auto-pst-pdf con opzione “on” e la seconda con opzione “off”

              Flavio

            • #59932
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                Se il tuo problema è quello di avere sia la versione ps e quella pdf del tuo documento, allora la via più semplice, secondo me consiste nel cliccare in successione due bottoni del tuo editor per latex:

                1) prima fai compilare con latex cliccando l’apposito bottone e questo ti produce il file dvi
                2) clicchi il bottone dvips e ti si crea il file ps
                3) clicchi il bottone dvipdfm e ti si forma il file pdf;

                Ovviamente puoi crearti sia o procedura bat su Windows, o una procedura bash su Linux e Mac che lanci i tre programmi in successione ciascuno con le sue opzioni e il nome di base specificato come argomento al comando da dare da linea di comando nella finestra comandi o nella finestra terminal. E questo ti evita di usare auto-ps-pdf e ti permette di avere contemporaneamente entrambi i file finali.

                L’unico accorgimento è che quando compili con latex (non pdflatex) per ottenere il file dvi devi necessariamente avere tutte le figure incluse nel formato eps.

                Alternativa: compila una sola volta il tuo documento con pdflatex, poi da linea di comando usa lo script pdf2ps che ti crea una versione dello stesso documento in PostScript. la versione 2010 di pdflatex accetta per le figure i formati tradizionali pdf, png e jpg, e dal 2010 anche il formato eps. Con questa alternativa devi cliccare solo un bottone nell’editor e devi lanciare a mano il secondo programma. Oppure ti puo scrivere un procedura bat per Windows o uno script bash per Linux e Mac per farti fare la compilazione di entrambi i file in sequenza dando un solo comando da linea di comando

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

            Go to top