- Questo topic ha 14 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 16 anni, 4 mesi fa da
Marcos.
-
CreatoreTopic
-
21 Aprile 2010 alle 8:30 #44511::
Ciao a tutti,vorrei sapere se conoscete qualche utility capace di rintracciare tutte le immagini, flottanti e no, inserite in un file di latex e restituire i relativi percorsi nelle sottocartelle.
Vorrei cioè ottenere un elenco di questo tipo:Figura 1.1
/Animali/animale1.jpg
………….
Figura 1.2
/Vegetali/fiore3.jpg
…………etc.
Grazie,
Marco
-
CreatoreTopic
-
AutoreRisposte
-
-
21 Aprile 2010 alle 8:56 #44512::
Ciao a tutti,
vorrei sapere se conoscete qualche utility capace di rintracciare tutte le immagini, flottanti e no, inserite in un file di latex e restituire i relativi percorsi nelle sottocartelle.
Vorrei cioè ottenere un elenco di questo tipo:Figura 1.1
/Animali/animale1.jpg
………….
Figura 1.2
/Vegetali/fiore3.jpg
…………etc.
Cerca di essere un po’ più specifico: vuoi che questo sostituisca l’elenco delle figure o vuoi un elenco a parte? E dove vorresti inserirlo?
La seconda domanda è importante perché metterlo alla fine del documento è un po’ più facile TeXnicamente.
C’è una contraddizione in quello che chiedi, però: assegnare un “Figura x.y” a un’immagine non galleggiante è impossibile, non trovi?
Ciao
Enrico
-
21 Aprile 2010 alle 8:57 #44513
-
21 Aprile 2010 alle 9:16 #44514::
Ciao Enrico,1) Vorrei un creare un elenco a parte, in un semplice file di testo;
2) Hai ragione, nel caso delle figure non flottanti non posso aspettarmi una numerazione, mi basta il solo percorso.Il motivo per cui sto facendo tutto questo è che mi ritrovo con delle cartelle piene di immagini, che solo in piccola parte ho effetivamente utilizzato nel documento. Il tutto occupa circa 2 Giga, ma vorrei mandare in tipografia le cartelle “pulite”, cioè con le sole foto effetivamente “linkate” nel documento Tex.
Avere l’elenco di queste mi dovrebbe aiutare a fare pulizia delle altre in maniera sicura, senza rischiare di cancellare niente di utile.capitalaslash,
questo pomeriggio, appena rientro a casa (dove ho il pc personale con ubuntu) provo il tuo suggerimento. Qui in ufficio ho solo Windows.Marco
-
21 Aprile 2010 alle 9:20 #44515
-
21 Aprile 2010 alle 9:24 #44516::
Ciao Enrico,
1) Vorrei un creare un elenco a parte, in un semplice file di testo;
2) Hai ragione, nel caso delle figure non flottanti non posso aspettarmi una numerazione, mi basta il solo percorso.Il motivo per cui sto facendo tutto questo è che mi ritrovo con delle cartelle piene di immagini, che solo in piccola parte ho effetivamente utilizzato nel documento. Il tutto occupa circa 2 Giga, ma vorrei mandare in tipografia le cartelle “pulite”, cioè con le sole foto effetivamente “linkate” nel documento Tex.
Avere l’elenco di queste mi dovrebbe aiutare a fare pulizia delle altre in maniera sicura, senza rischiare di cancellare niente di utile.capitalaslash,
questo pomeriggio, appena rientro a casa (dove ho il pc personale con ubuntu) provo il tuo suggerimento. Qui in ufficio ho solo Windows.Marco
Un sistema può essere quello di ridefinire \includegraphics perché scriva su un file esterno. Ma il metodo con grep mi sembra decisamente più efficiente. Del resto non ti interessa sapere davvero dove compaiono le immagini, ma solo se ci sono. Credo che esista grep anche per Windoze: shareware o freeware
Ciao
Enrico
-
21 Aprile 2010 alle 10:04 #44517::
Ciao Enrico,
1) Vorrei un creare un elenco a parte, in un semplice file di testo;
2) Hai ragione, nel caso delle figure non flottanti non posso aspettarmi una numerazione, mi basta il solo percorso.Il motivo per cui sto facendo tutto questo è che mi ritrovo con delle cartelle piene di immagini, che solo in piccola parte ho effetivamente utilizzato nel documento. Il tutto occupa circa 2 Giga, ma vorrei mandare in tipografia le cartelle “pulite”, cioè con le sole foto effetivamente “linkate” nel documento Tex.
Avere l’elenco di queste mi dovrebbe aiutare a fare pulizia delle altre in maniera sicura, senza rischiare di cancellare niente di utile.capitalaslash,
questo pomeriggio, appena rientro a casa (dove ho il pc personale con ubuntu) provo il tuo suggerimento. Qui in ufficio ho solo Windows.Marco
Scusate, ma credo si possa fare anche in un altro banalissimo modo:
cambio il nome della/e cartella/e contenente le immagini
lancio una compilazione (pdf)latex
leggo il file di log con le segnalazioni dei file mancanti
cancello la selezione inversa
riporto i nomi delle cartelle a quelli originali.Funziona?
-
21 Aprile 2010 alle 10:32 #44518::
Ciao Enrico,
1) Vorrei un creare un elenco a parte, in un semplice file di testo;
2) Hai ragione, nel caso delle figure non flottanti non posso aspettarmi una numerazione, mi basta il solo percorso.Il motivo per cui sto facendo tutto questo è che mi ritrovo con delle cartelle piene di immagini, che solo in piccola parte ho effetivamente utilizzato nel documento. Il tutto occupa circa 2 Giga, ma vorrei mandare in tipografia le cartelle “pulite”, cioè con le sole foto effetivamente “linkate” nel documento Tex.
Avere l’elenco di queste mi dovrebbe aiutare a fare pulizia delle altre in maniera sicura, senza rischiare di cancellare niente di utile.capitalaslash,
questo pomeriggio, appena rientro a casa (dove ho il pc personale con ubuntu) provo il tuo suggerimento. Qui in ufficio ho solo Windows.Marco
Scusate, ma credo si possa fare anche in un altro banalissimo modo:
cambio il nome della/e cartella/e contenente le immagini
lancio una compilazione (pdf)latex
leggo il file di log con le segnalazioni dei file mancanti
cancello la selezione inversa
riporto i nomi delle cartelle a quelli originali.Funziona?
Non se usi \graphicspath.
Ciao
Enrico
-
21 Aprile 2010 alle 10:33 #44519::
Scusate, ma credo si possa fare anche in un altro banalissimo modo:
cambio il nome della/e cartella/e contenente le immagini
lancio una compilazione (pdf)latex
leggo il file di log con le segnalazioni dei file mancanti
cancello la selezione inversa
riporto i nomi delle cartelle a quelli originali.Funziona?
funziona sicuramente.
ma quando hai 100 immagini magari vorresti un po’ automatizzare la procedura.
qua di sotto lo scriptino che copia solo le immagini che servono nella cartella NewFigures`#! /bin/bash
TEXFILENAME=main #no extension!
for file in $(awk '/^File: .* Graphic file .*/ { print $2 }' $TEXFILENAME.log); do
mkdir -p NewFigures/$(dirname $file)
cp $file NewFigures/$file
done`basta sistemare la variabile TEXFILENAME al nome del file .tex (e magari cambiare NewFigures se si vuole). Attenzione alle sovrascritture!
-
21 Aprile 2010 alle 10:49 #44520::
Scusate, ma credo si possa fare anche in un altro banalissimo modo:
cambio il nome della/e cartella/e contenente le immagini
lancio una compilazione (pdf)latex
leggo il file di log con le segnalazioni dei file mancanti
cancello la selezione inversa
riporto i nomi delle cartelle a quelli originali.Funziona?
funziona sicuramente.
ma quando hai 100 immagini magari vorresti un po’ automatizzare la procedura.
qua di sotto lo scriptino che copia solo le immagini che servono nella cartella NewFigures`#! /bin/bash
TEXFILENAME=main #no extension!
for file in $(awk '/^File: .* Graphic file .*/ { print $2 }' $TEXFILENAME.log); do
mkdir -p NewFigures/$(dirname $file)
cp $file NewFigures/$file
done`basta sistemare la variabile TEXFILENAME al nome del file .tex (e magari cambiare NewFigures se si vuole). Attenzione alle sovrascritture!
Certo, ma se non hai bash?
mentre facilmente si può installare perl o lua e scrivere in uno di questi linguaggi uno script che elabori il file di log di pdftex.
la bash è forte ma forse esiste uno scripting più evoluto.
bye
-
21 Aprile 2010 alle 10:58 #44521::
[quote]Scusate, ma credo si possa fare anche in un altro banalissimo modo:
cambio il nome della/e cartella/e contenente le immagini
lancio una compilazione (pdf)latex
leggo il file di log con le segnalazioni dei file mancanti
cancello la selezione inversa
riporto i nomi delle cartelle a quelli originali.Funziona?
funziona sicuramente.
ma quando hai 100 immagini magari vorresti un po’ automatizzare la procedura.
qua di sotto lo scriptino che copia solo le immagini che servono nella cartella NewFigures`#! /bin/bash
TEXFILENAME=main #no extension!
for file in $(awk '/^File: .* Graphic file .*/ { print $2 }' $TEXFILENAME.log); do
mkdir -p NewFigures/$(dirname $file)
cp $file NewFigures/$file
done`basta sistemare la variabile TEXFILENAME al nome del file .tex (e magari cambiare NewFigures se si vuole). Attenzione alle sovrascritture!
Certo, ma se non hai bash?
mentre facilmente si può installare perl o lua e scrivere in uno di questi linguaggi uno script che elabori il file di log di pdftex.
la bash è forte ma forse esiste uno scripting più evoluto.
bye[/quote]
E Lua ce l’hanno tutti quelli che hanno installato una distribuzione recente di TeX (almeno in una versione semplificata, senza molte librerie). 🙂 A proposito, perché invece che in Perl quello script (simpdftex) non lo si scrive in Lua? Così basta chiamarlo con “texlua simpdftex”; si può anche “compilare” con texluac. Non credo che servano librerie particolari: lettura della linea di comando, chiamate al sistema operativo e poco più.Ciao
Enrico
-
21 Aprile 2010 alle 11:01 #44522::
Certo, ma se non hai bash?
mentre facilmente si può installare perl o lua e scrivere in uno di questi linguaggi uno script che elabori il file di log di pdftex.
la bash è forte ma forse esiste uno scripting più evoluto.
byeper fortuna non avro’ mai questo problema.
non uso windows in nessuna forma e non mi interessa che i miei script girino su quella piattaforma nata per far perdere tempo alla gente.
opinione personale, ovviamente… 😉
se uno vuole proprio usarla, non posso aiutarlo.
-
21 Aprile 2010 alle 11:14 #44523::
[quote][quote]Scusate, ma credo si possa fare anche in un altro banalissimo modo:
cambio il nome della/e cartella/e contenente le immagini
lancio una compilazione (pdf)latex
leggo il file di log con le segnalazioni dei file mancanti
cancello la selezione inversa
riporto i nomi delle cartelle a quelli originali.Funziona?
funziona sicuramente.
ma quando hai 100 immagini magari vorresti un po’ automatizzare la procedura.
qua di sotto lo scriptino che copia solo le immagini che servono nella cartella NewFigures`#! /bin/bash
TEXFILENAME=main #no extension!
for file in $(awk '/^File: .* Graphic file .*/ { print $2 }' $TEXFILENAME.log); do
mkdir -p NewFigures/$(dirname $file)
cp $file NewFigures/$file
done`basta sistemare la variabile TEXFILENAME al nome del file .tex (e magari cambiare NewFigures se si vuole). Attenzione alle sovrascritture!
Certo, ma se non hai bash?
mentre facilmente si può installare perl o lua e scrivere in uno di questi linguaggi uno script che elabori il file di log di pdftex.
la bash è forte ma forse esiste uno scripting più evoluto.
bye[/quote]
E Lua ce l’hanno tutti quelli che hanno installato una distribuzione recente di TeX (almeno in una versione semplificata, senza molte librerie). 🙂 A proposito, perché invece che in Perl quello script (simpdftex) non lo si scrive in Lua? Così basta chiamarlo con “texlua simpdftex”; si può anche “compilare” con texluac. Non credo che servano librerie particolari: lettura della linea di comando, chiamate al sistema operativo e poco più.Ciao
Enrico[/quote]Mi stai tentando prof?
lua sarebbe più facile di perl, ma come sai sto portando avanti una nuova classe basata su pstricks (di più non posso dirti per questioni di assoluta segretezza 😉 )
ed, al contrario di capitalslash, spero possa essere presto disponibile per tutti gli utenti anche da chi usa windows (che mi pare siano tantini rispetto ad altri so).
Lavorando con LaTeX non solo è normale, ma anche ovvio, naturale e scontato che la funzionalità sia multi-piattaforma.sicuro che prenderò in considerazione simpdftex in lua come prossimo progetto (si tratta proprio di rendere disponibile sotto windows una comoda utility scritta in bash, ironia della sorte)
… a tutti gli utenti di LaTeX, ConTeXt, XeTeX ecc ecc, un doppio saluto 😀 😀
-
21 Aprile 2010 alle 12:10 #44524::
E Lua ce l’hanno tutti quelli che hanno installato una distribuzione recente di TeX (almeno in una versione semplificata, senza molte librerie). 🙂 A proposito, perché invece che in Perl quello script (simpdftex) non lo si scrive in Lua? Così basta chiamarlo con “texlua simpdftex”; si può anche “compilare” con texluac. Non credo che servano librerie particolari: lettura della linea di comando, chiamate al sistema operativo e poco più.
Ciao
Enricodeve disporre di una libreria per le regular expression, che non e’ tanto banale.
con awk o grep sembra tutto piu’ semplice perche’ sono programmi molto potenti.
mi meraviglio ogni volta a pensare di poter lavorare con un sistema operativo che non ha strumenti adeguati a fare anche le cose minime.
-
22 Aprile 2010 alle 7:00 #44525
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.