- Questo topic ha 5 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 11 anni, 1 mese fa da
Fabio.
-
CreatoreTopic
-
10 Luglio 2015 alle 9:19 #102457::
Buongiorno a tutti e a tutte,
sto scrivendo un documento utilizzando TexWorks su TeXLive 2015, Windows.
Il documento é articolato in più documenti che richiamo tramite input e include.
In L’ arte di scrivere con LateX nel paragrafo 3.14.1 Il metodo di \input, ho trovato indicato: Si abbia cura che l’eventuale percorso dei file inclusi (anche quelli con
\graphicspath ) sia relativo (un percorso assoluto verrebbe addirittura rifiutato da L A T E X per motivi di sicurezza) e non contenga spazi.
Sapreste darmi qualche riferimento a come si indica un percorso relativo e assoluto?
Grazie
-
CreatoreTopic
-
AutoreRisposte
-
-
10 Luglio 2015 alle 9:54 #102458::
Il percorso è assoluto quando è completo e indica tutte le cartelle a partire dalla radice. Nel tuo caso, su Windows, il percorso assoluto è quello che parte da [tt]C:\\[/tt] fino alla cartella che ti interessa. Per esempio
`
\input{C:/Users/Utente/Desktop/mio.tex}
`
ti permette di accedere al file [tt]mio.tex[/tt] presente sul desktop da qualsiasi file tu ti trova.Il percorso relativo invece parte dalla stessa cartella in cui si trova il file che stai utilizzando. Per cui se il file principale è nella cartella [tt]C:/Users/Utente/Documenti/[/tt], allora scrivere [tt]\input{mio.tex}[/tt] equivale a [tt]\input{C:\\Users\Utente\Documenti\mio.tex}. I vantaggi di questo metodo sono:
- Non scrivere tutte le volte l’indirizzo per intero, basta che i file siano nella stessa cartella
- Legato al punto 1, se sposti la cartella che contiene i file, non devi aggiornare tutti i riferimenti ai vari file, perché tanto sono relativi sempre a quella cartella. Oltre che premetterti una maggiore flessibilità, questo sistema garantisce anche la condivisione del file: se lo devi spedire a qualcuno perché lo compili, basta inviargli la cartella con tutti i file senza preoccuparsi di dove verrà collocata.
-
15 Luglio 2015 alle 11:13 #102459::
Grazie infinite!
Dunque, un esempio concreto.Un progetto complesso dal titolo casa, è strutturato nel modo seguente:
la cartella che contiene tutto, che chiamiamocasa contiene:
il file che compone tutto, casa.tex
la cartella con i files del frontmatter e del backmatter, chiamiamola INZIOFINE
la cartella delle immagini, foto, a sua volta divisa in sottocartelle, ad esempio la cartella scrivanie
la cartella dei grafici, grafici
la cartella piani, in cui si trovano le parti.A sua volta la cartella piani, è organizzata così:
tre cartelle chiamate piano1, piano2 e piano3
La cartella piano2, ad esempio, contiene a sua volta:
il file piano2.tex e delle sottocartelle, i capitoli.
Uno di questi capitoli è particolarmente lungo e complesso, così ad esempio salotto conterrà salotto.tex e delle sottocartelle per i paragrafi, ad esempio angolostudio.Ora, nel file casa.tex, quello che compone tutto, inserisco nel preambolo \graphicspath{{foto/},{grafici/}} così quando “carico” un’immagine devo solo precisare la sottocartella della cartella foto o grafici.
Domanda:
poiché il documento é complesso, qualora volessi comporre i file .tex singolarmente, nel “caricare” le foto o i grafici dovrei cambiare i riferimenti relativi? Ovvero, c’é una differenza nel percorso dell’immagine a seconda che il file tex che la “carica” si trovi allo stesso livello della cartella foto o all’interno di una sottocartella dei capitoli?Grazie mille!
-
15 Luglio 2015 alle 11:39 #102460::
hellotex” post=102359Domanda:
poiché il documento é complesso, qualora volessi comporre i file .tex singolarmente, nel “caricare” le foto o i grafici dovrei cambiare i riferimenti relativi? Ovvero, c’é una differenza nel percorso dell’immagine a seconda che il file tex che la “carica” si trovi allo stesso livello della cartella foto o all’interno di una sottocartella dei capitoli?Grazie mille!
Che intendi per “qualora volessi comporre i file .tex singolarmente”? Quali file? Quelli in [tt]piano[/tt] o [tt]salotto[/tt]? Come intendi fare una cosa del genere?
Comunque, regola generale: il percorso relativo da indicare è relativo alla posizione dalla quale viene invocato il compilatore. Se usi compilare solo editor quale TeXworks, che hai nominato, il compilatore viene invocato nella cartella del file principale di un documento.
-
15 Luglio 2015 alle 12:01 #102461::
I metodi descritti nell’Arte con \input oppure con \include non sono equivalenti.
\include ti permette di compilare per esempio un solo capitolo mantenendo invariati i riferimenti agli altri capitoli. \input non te lo consente.Un’altra differenza è che \include include il suo materiale dopo aver ricominciato a comporre su una pagina di destra, se stai componendo fronte-retro; comunque da una nuova pagina anche se stati componendo solo fronte. \include è accompagnato dalla lista dei file da includere, che costituiscono una lista separata da virgole, che forma il contenuto del comando \includeonly. \include non ha nulla del genere e per una compilazione selettiva e priva dei riferimenti agli altri capitoli bisogna materialmente commentare il comando \input.
Infine i comandi \input possono essere annidati a qualunque livello; i comandi \include non possono essere annidati ma i file inclusi con \include possono contenere comandi \input annidati a qualunque livello. Per “qualunque livello” non si prenda il significato letterale; ogni programma del sistema TeX può aprire contemporaneamente al massimo 16 file, e di suo, spesso, ne apre una dozzina e talvolta anche di più.
Io preferisco di gran lunga usare il metodo \include; ma le sue “limitazioni” lo rendono utile solo per includere file a livello di capitolo. Tuttavia a me va benissimo così e cerco sempre di evitare di costruire capitoli troppo complessi; un capitolo non dovrebbe mai essere diviso in più di 9 paragrafi, ognuno dei quali non dovrebbe contenere più di 9 sotto paragrafi, che a sua volta… eccetera; altrimenti non solo l’indice viene composto molto male, ma cercare informazioni in un capitolo così complesso diventa molto difficile.
-
15 Luglio 2015 alle 21:17 #102462::
Innanzitutto, grazie mille per le risposte.
Dunque per “qualora volessi comporre i file .tex singolarmente” intendevo dire che nel file principale ho caricato la struttura, cioé gli input dei vari pezzi che verranno via via scritti. Per questa ragione sentivo la necessità di comporre singolarmente i vari pezzi man mano che li scrivo.
Il file casa.tex, il principale, richiama, fra gli altri, piano2.tex che richiama a sua volta salotto.tex il quale carica angolostudio. Se io comincio a scrivere angolostudio e ho necessità di controllare il layout dei comandi che scrivo, usando \input per via degli annidamenti, non volevo stare a commentare tutta la struttura del file principale per comporre da li, quindi mi chiedevo se i riferimenti relativi alle cose da caricare fossero sempre rispetto al file principale o relativi al pezzo che compongo.
Non avevo però letto con attenzione l’Arte e grazie all’appunto di OldClaudio ho saputo che file inclusi possono contenere \input, quindi posso comporre tutto dal file principale con includeonly.
Ancora grazie
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.