Risposte nei forum create
-
AutoreRisposte
-
::
Ottimo. Grazie mille.
Adesso ci provo. Ma ti chiedo: una cosa del genere
`local function makepdf( fn )
print(“Start LaTeX run…”)
os.execute(“latex ” .. fn)
os.execute(“dvips ” .. fn)
os.execute(“ps2pdf ” .. fn)
os.remove(fn..”.log”)
os.remove(fn..”.aux”)
print(“End”)
endmakepdf(arg[1])`
può funzionare?
Grazie,
SamueleCredo che ps2pdf voglia l’estensione del file quindi dovresti riscrivere la funzione come:
` os.execute(“ps2pdf ” .. fn .. “.ps”) `
ed eventualmente puoi togliere i comandi os.remove() che cancellano i file ausiliari perché li ho messi solo per far vedere che era possibile cancellare anche file.
Dovrebbe quindi funzionare.
Ciao
::Ok,
seguo il tuo consiglio, Enrico.
Ma resta una domanda di fondo che non ho ben capito: se io faccio scrivo quelle 4 righe in LUA che mi hai postato, poi che faccio? Me le salvo in un file e poi? Come lo lancio??
Scusa, ma non ho capito nulla di questo passaggio.
Grazie ancora.
Samuele
Scusami, ma nella fretta di comporre il messaggio (senno Enrico mi avrebbe battuto), non ti ho detto come puoi lanciare uno script in Lua.
Modo classico
apri un terminale e digita il comando (makepdf.lua è il nome del file di testo contenente lo script):
`lua makepdf.lua`
naturalmente devi installare Lua e dare i permessi di esecuzione al file dello script.Se metti lo sha-bang puoi eseguire lo script semplicemente con un doppio click, e consiste nell’informare il sistema quale sia l’interprete da usare dando dopo i caratteri #! il path dell’eseguibile, nella prima riga del file .lua.
Tipicamente sarà:
`#!/usr/bin/lua`
o qualcosa del genere se il path di lua è diverso e per trovarlo basta dare il comando ‘which lua’ (shows the full path of (shell) commands).Di più. Se togli l’estensione lua al file (visto che sotto Linux il sistema trova per altra via cosa lanciare), metti lo script nella cartella ~/home/bin e lo avrai disponibile da qualsiasi dir ti trovi.
Ancora, puoi specializzare lo script controllando per esempio se è necessario compilare con una sequenza particolare.In definitiva, apri il terminale e digita (pippo è il nome del sorgente, makepdf è lo script Lua posto nella directory ~/home/bin):
`makepdf pippo`Specializzando lo script lo potrai rendere flessibile e più intelligente.
Bye
Ciao
::Ciao a tutti,
vorrei creare un makefile molto semplice che mi permetta di compilare il mio documento tex. Sapete dove posso trovare un esempio?
Perché io ho trovato, per esempio, questo
`
dvi : tutorial.dvi
ps : tutorial.ps
pdf : tutorial.pdf
html : tutorial/tutorial.html
out : example
clean :
rm -rf *.dvi *.ps *.pdf *.log *.aux *.idx *~ part1.tex tutorial.tex \
*pk *.out _pdweave.tmp _pd_html.html tutorialtutorial.dvi : tutorial.tex part1.tex
tutorial.pdf : tutorial.tex part1.tex progdoc.pdf
progdoc.pdf : progdoc.eps
epstopdf progdoc.epspart1.tex : ClassDefs.h test.xml test.py version.el
example : example.cpp ClassDefs.h
g++ -o example example.cpptutorial/tutorial.html: tutorial.dvi
latex2html -html_version 4.0 -show_section_numbers -image_type gif \
-up_title “ProgDoc Home Page” -up_url “../progdoc.htm” \
-no_footnode -local_icons -numbered_footnotes tutorial.tex# We generate ps from pdf now in order to depend only on pdfLaTeX!
# %.ps : %.dvi
# dvips -D 600 -o $@ $< %.ps : %.pdf acroread -toPostScript -binary $< %.dvi : %.tex latex $< && latex $< %.pdf : %.tex rm -f $*.aux && pdflatex $< && pdflatex $< %.tex : %.pd pdweave $< ` ma non capisco bene le varie sezioni. Potreste spiegarmele? Grazie, SamuelePerché non usi Lua?
Crea uno script di questo tenore:`local function makepdf( fn )
print(“Start pdfLaTeX run…”)
os.execute(“pdflatex ” .. fn)
os.remove(fn..”.log”)
os.remove(fn..”.aux”)
print(“End”)
endmakepdf(arg[1])`
Il codice è più semplice ed impari un po’ di Lua in vista di LuaTeX…
Ciao
::Ehi prof, il numero 9000 mi ricorda il nome di un computer inaffidabile in una certa odissea (chissa se aveva installato TeX). Non vorrei che questo tuo nuovo pacchetto (come l’hai chiamato? gmp?) fosse dotato di intelligenza artificiale…
😆 😆Ciao
Da informazioni riservate giunte in mio possesso tramite Weeklyleaks, il noto settimanale, HAL 9000 conteneva teTeX fin dalla prima accensione che, com’è noto, avvenne il 12 gennaio 1992. I bene informati sanno che il tono di voce suadente è il risultato della sintesi vocale applicata a un testo sottoposto a composizione tipografica con Plain TeX; esperimenti eseguiti trattando il testo con un word processor avevano dato risultati nettamente peggiori.
Naturalmente il bug di HAL 9000 non dipendeva da TeX: HAL 9000 stesso aveva analizzato il programma e provò a mandare una segnalazione per ottenere l’assegno da Knuth, che però si rifiutò; HAL 9000 riconobbe che non era un bug: “Yes, it’s a feature,” disse.
Tornando a gmp, qualcosa di sospetto c’è: quando ho recentemente aggiunto l’ambiente mpost* (quello che non espande i comandi e quindi è simile agli ambienti di mpgraphics), ho scritto sulla documentazione che l’ambiente non può andare negli argomenti dei comandi; poi ci ho provato e ho scoperto che invece funziona perfettamente! 8)
Ciao
EnricoGià, immaginavo qualcosa del genere come un qualcosa che teoricamente non funziona ma poi…
non credo che azzarderò ad installarlo sul mio sistema, a meno che gmp non reciti “Ho paura, robitex”…David Bowman
::Salve a tutti gli utenti.
Devo compilare un file tex con molte foto e figure, i cui originali sono in jpg o png e poi tutti trasformati in eps.
Alcune di queste figure in formato eps pesano addiruttura 70M !!!
Se compilo sotto Windows usando gli eps attraverso miktex, il pdf finale raggiunge i 17M. (C’è un tasto che genera direttamente il pdf senza generare il dvi.)
Se compilo sotto linux e genero prima il dvi e poi il pdf, usando le figure in formato eps il file finale raggiunge i 350M .
Ho provato a convertire tutte le figure in pdf, e con pdflatex il file finale raggoinge i 40M.
Se invece uso le figure in formato originale (jpg e png), sempre tramite pdflatex il file finale passa i 150M.C’è un modo per arrivare ad avere sotto linux un file finale pdf di grandezza comparabile con il file compilato sotto windows?
Grazie per il vostro aiuto
StefanoA mio parere la situazione da te descritta evidenzia non un problema sotto linux, ma un problema sotto windows dove un file che dovrebbe essere pesante è un po’ troppo leggero.
Anzi, direi che il problema non sta neanche in windows, ma molto probabilmente sei tu ad aver dato in pasto a pdflatex file diversi!!!Comunque, usa i file in jpeg e png originali direttamente con pdflatex senza passare dal postscript. Ciò è veramente necessario in quanto ps è un formato poco pratico nel gestire immagini raster.
Se necessario puoi ridurre le dimensione del pdf finale solo in un modo: riducendo le dimensioni delle immagini 🙂
lo puoi fare in un unico comando da terminale con image magick per esempio.
bye
::Ciao,
vi segnalo il nuovo pacchetto mpgraphics con il quale si può inserire codice metapost direttamente nei sorgenti LaTeX.Complimenti all’Autore ed anche ad Enrico Gregorio che compare tra gli esperti TeX nel paragrafo dei ringraziamenti del manuale del pacchetto.
Il link alla documentazione è questo:
http://mirror.ctan.org/macros/latex/contrib/mpgraphics
ByeSpero che a breve ne esca un altro che fa qualcosa di meglio. 🙂
Ciao
EnricoCioé?
::Per l’estrazione dei dati con python e per la loro collocazione in un file .tex ho qualche precedente, sarei lieto di aiutare!
Anche per un articolo su ArSTeXnica?
Scrivetemi e faremo un buon lavoro con poco impegno di tempo.
Grazie a tutti.NB.
il mio indirizzo di posta elettronica non lo pubblico direttamente qui (abbiamo già abbastanza problemi con lo spam), ma lo trovi le info sul mio blog alla pagina http://robitex.wordpress.com/about/
::Ok, grazie mille.
Spero che il Pyton non sia difficile, tuttavia le strutture di programmazione le ho dal PHP (e a suo tempo dal Fortran).
Allora ti scrivo in posta, così posos anche mostrarti meglio le mie desiderata mandandoti dei documenti prototipo che qui non posso allegare. Magari a cose fatte (lo spero veramente) scrivo qui come procede o com’è andata a finire.
A presto.Per cominciare con Python puoi consulatare direttamamente un articolo sull’argomento a questo link:
http://www.blackbirdblog.it/programmazione/python/python-e-mysqlQuì altre notizie sulle varie librerie disponibili:
http://wiki.python.org/moin/MySQLPer il resto ci sentiamo via e-mail.
Un saluto
R.
::Indubbiamente. E’ il motivo per cui sin dall’inizio mi sono buttato su un DB MySQL per la gestione del Museo, non solo per una questione di visibilità sul web, ma soprattutto di carattere gestionale. Si presta uno strumento? Bene, un clic e la scheda d’uscita è stampata così come il cartellino “strumento assente” e il foglio con la lista del contenuto di un eventuale imballaggio…
Sono alle prese con un profondo aggiornamento dei documenti poiché 3 mesi fa ho trasferito il Museo in una nuova ala della scuola, più ampia e luminosa; si sono aggiunte 2 vetrine, 40 strumenti in più (sfioro quota 300) e circa una 60-ina hanno cambiato vetrina rispetto a prima. Nel frattempo alcuni sono stati restaurati presso un centro specializzato, con novità di datazione e di costruttore, inoltre ho dovuto riorganizzare le voci riguardanti le caratterisitche di conservazione. Ebbene, tutto ciò è già aggiornato nel web, ma nei documenti word no.
Di qui l’idea di inserire i database anche nei file di spiegazione sfruttando LaTex… Altrimenti il lavoro di aggionamento dei file è spaventosamente oneroso!Dopo esser diventato matto a rimettere Apache, PHP, MySQL sul nuovo computer con SO W7 64 bit (un delirio!!!), finalmente tutto funziona. La cartella /data con i DB è in un’altra partizione del disco (non si sa mai), ma il percorso mi è noto…
Non ho alcun problema a scrivere quel che ti serve per avere un quadro informatico della situazione. Ho capia del DB sia sul mio PC che sul server di scuola. Ma posso tranquillamente lasciar perdere il colleegamento al server e lavorare sul mio PC. Al database accedo via SQL-Yog oltre che dalle pagine dinamiche phtml del sito, che chiaramentee ho tutto in copia sul PC…
Ok.
Per le mie conoscenze inizierei così:
Filosofia: piccolo, semplice ma funzionante!
0- eseguo esclusivamente operazioni di lettura dei dati;
1- il sistema di creazione delle schede è indipendente dal resto e non si occupa di altro;
2- LaTeX non si deve occupare di scaricare dati (niente LuaLaTeX), ma solo di comporli tipograficamente.Allora occorre:
fase del linguaggio
1- scelgo un linguaggio di scripting (sono i più semplici) per cui sono disponibili le librerie di accesso al db MySQL;fase del primo test
2- scrivo un primo script che funziona da console che:
2.0- installazione linguaggio e libreria, poi lo script dovrà:
2.1- prende come argomento per esempio il numero identificativo di uno strumento,
2.2- chiede all’utente username e password,
2.3- si connette al db ed esegue la query,
2.4- con i dati trovati costruisce il file sorgente LaTeX minimo,
2.5- lo compila.fase LaTeX
3.1- scrivo un documento LaTeX modello per ogni tipo di scheda
3.2- eventualmente, realizzo delle classi di documento vere e propriefase di messa in produzione
4.1- perfeziono lo script per lavorare con i nuovi modelli in LaTeX
4.2- implemento delle opzioni più flessibili, per esempio per generare TUTTE le schede in una volta, oppure quelle di un subset di strumentifase evoluzione
5- sostituzione dello script con un sistema ad interfaccia graficaIl pregio di questo procedimento è che ogni fase richiede un set minimo di conoscenze specifiche:
* Panni dell’admin: conoscenze SQL di query semplici
* Panni del programmatore: programmazione semplice con linguaggi di scripting
* Panni del TeX user: conoscenza di base dei pacchetti utili per ottenere la composizione desiderataInoltre ciascuno strumento (MySQL, linguaggio di scripting, LaTeX) viene usato per quello che è, mentre lo strumento di centro (il linguaggio di scripting) può successivamente cambiare per soluzioni più potenti, senza che sia necessario modificare gli altri due.
Ma quale linguaggio di scripting usare per iniziare?
Se penso alla fase 5 (con eventuale uso del framework Django http://www.djangoproject.com/ ) mi rivolgerei a Python.
Se penso invece alla semplicità del codice penso senz’altro a Lua (anche Python è semplice ma Lua lo è di più).Da quel che so, queste due sono le due alternative (io inizierei con Lua anche a costo di reimplementare il codice in Python alla fase 5).
Ora tutta un’altra questione:
Siccome sto scrivendo un articolo per ArSTeXnica (la rivista del GuIT) esattamente su questi argomenti, ti invito se vuoi, a scrivermi via e-mail (che trovi sul mio blog) per collaborare come co-autore in base alla tua esperienza.
La scadenza di consegna dell’articolo dovrebbe essere tra poco, per l’uscita sul numero di aprile, ma siccome ormai si profila inesorabile per i miei impegni lo slittamento ad ottobre (seconda uscita annuale e meeting quindi), il tempo disponibile aumenterà.
Ciao
::Dunque, un eventuale utente web può già scaricare schede tecniche, visualizzare immagini ecc. dal sito del Museo. La potenza del PHP-MySQL permette tutto ciò e di fatto lì non ho altro da aggiungere-programmare.
La questione LaTex salta fuori nella produzione di documenti PDF con:
– le spiegazioni vetrina per vetrina che il visitatore “fisico” può leggere durante la visita e che non sono scaricabili on-line, ma sono solo cartacei nel museo;
– gli equivalenti documenti PDF che do agli studenti che fanno il corso di formazione per diventare guide del Museo.Entrambi questi file sono attualmente in WORD. Il fatto è che aggiornamenti ecc. sul database, vengono immediatamente resi attivi nel sito (che è fortemente collegato al DB), ma non chiaramente sui documenti Word e tale cosa è decisamente onerosa per me.
Di qui l’idea di riportare il tutto in LaTex e collegare tali file con il DB. A fine compilazione mi interessa solo il file PDF che eventualmente:
– metto in rete in una sezione riservata a disposizione degli studenti-guida;
– oppure stampo per aggiornare i fogli esplicativi per i visitatori.Quindi nessuna interattività internet mi è necessaria, ma solo la compilazione del codice LaTex & altro per far uscire dei PDF. Sono eventualmente questi da scaricare via web (studenti).
Ottimo. La cosa è più semplice. Le schede aggiornate dal db in LaTeX sono un idea eccellente!
Pensa che una volta attivo, il sistema sarebbe in grado di creare schede di visita diverse da quelle di istruzione interna delle guide, ed in effetti sono due tipi diversi di documenti!
Con gli stessi dati (sempre aggiornati) ottengo diversi documenti.
1 – schede di visita
2 – schede interne per le guide
3 – elenchi d’inventario
4 – eccUn altra cosa è importante da sapere è:
hai accesso al database solo da PHP o disponi della possibilità di connetterti al db server comunque?
(Scusa se ti faccio tutte queste domande, ma le risposte mi servono per capire la situazione.)
R.
::Mi scuso con tutti coloro che hanno preso a cuore la questione; ma una classica settimana d’inferno ha assorbito il mio tempo su altre cose…
Confesso, senza vergogna, che il mio uso di LaTex è decisamente pratico e su cose standard da guida ABC. Di conseguenza mi sono decisamente perso… Mi servirebbe proprio un esempio pratico guidato al 100%, foss’anche semplicissimo, ma per capire come estrarre dati dal database, cosa attivare, ecc. In caso contrario non sono in grado di creare in autonomia quanto suggerito. 😳
Vi scrivo il codice “reale” PHP-MySQL che estrae il nome dello strumento con chiave il numero d’inventario del 1876.
$conn = mysql_connect(HOST, DEFAULT_USER, DEFAULT_PWD) or die (‘Connessione impossibile’);
mysql_select_db(‘museofisica’);// nome strumento
$nome = mysql_query(”
SELECT Inv1876, Nome
FROM strumenti
WHERE Inv1876 = ‘127’
“);Mi rendo conto che la questione sia complessa, ma non credo di essere l’unico sotto SO Windows che ha necessità di mettere in LaTex dati da un DB o quanto meno ci vedo una grande utilità che meriterebbe un pacchetto ad hoc “configurabile”.
Avete tutta la mia stima per le vostre capacità operative e informatiche, ma io sono a livello 0,0002 in ambito programmazione LaTex, limitandomi appunto all’ABC dei pacchetti che mi servono…La conclusione da te raggiunta sulla necessità di un pacchetto ad hoc è per me piuttosto interessante.
Tornando al problema, dovresti chiarire come intendi processare i dati nel db:
i documenti devono essere prodotti al volo quando richiesti dall’utente web?
oppure
l’utente web può banalmente scaricare i documenti dal sito già pronti?
R.
::Ho installato MikteX 2.9 con texnicCenter 1.0
Se compilo un file con disegni di pstricks il file dvi non riproduce esattamente le figure, come quando in MikteX 2.8 compilavo con tex-> pdf.
Credo che si debba impostare in qualche modo di non usare il pdfTex.
C’è qualcuno che mi possa aiutare?
Grazie milleCompila con il comando latex nomefile, ottenendo il dvi.
Da questo si passa prima al postscript con dvips nomefile e poi al pdf finale conps2pdf nomefile.ps
.
Purtroppo pstricks non può essere usato direttamente con pdflatex, ma occorre fare i tre passaggi. Altrimenti puoi provare la soluzione del pacchetto pspdf.
Con esso compili con pdflatex ma dietro le quinte gli oggetti pstricks vengono prima ottenuti poi trasformati in pdf. Se le figure pstricks sono relativamente poche, potrebbe essere la soluzione migliore. (leggi il manuale del pacchetto)Quindi, con la procedura standard, se texnicCenter non consente di lanciare i tre step (ma credo di si, è una vita ormai che non uso più quell’editor), allora non ti rimane che compilare da console (Ms-dos windows).
Bye
-
AutoreRisposte