- Questo topic ha 6 risposte, 5 partecipanti ed è stato aggiornato l'ultima volta 15 anni, 3 mesi fa da
OldClaudio.
-
CreatoreTopic
-
13 Giugno 2011 alle 10:48 #59926
-
CreatoreTopic
-
AutoreRisposte
-
-
13 Giugno 2011 alle 10:52 #59927
-
13 Giugno 2011 alle 12:01 #59928::
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
FlavioTi serve uno script che alteri il sorgente opportunamente PRIMA della compilazione e che lanci successivamente la compilazione stessa.
Bye
-
13 Giugno 2011 alle 15:15 #59929::
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.
-
13 Giugno 2011 alle 15:37 #59930::
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
-
15 Giugno 2011 alle 22:10 #59931
-
15 Giugno 2011 alle 23:56 #59932::
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
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.