GKT” post=82622Mi “inserisco” in questa discussione perché anche io sto affrontando il problema della redazione di documenti tecnici e vorrei condividere la mia esperienza. Ho redatto alcuni modelli di relazioni tecniche e ho anche riprodotto un modello di Attestato di certificazione energetica (secondo le linee guida nazionali, ma questo interesserà solo qualche specialista che eventualmente si troverà a leggere il filone 🙂 ).
In tutti i casi ho usato la classe scrartcl, con poche personalizzazioni e con il pacchetto siunitx, d’obbligo per certi tipi di documento. Nel caso dell’Attestato di certificazione energetica, invece, sono stato indeciso sul compilatore da usare (pdfLaTeX o ConTeXt), ma avendo fatto un uso estensivo di codice Tikz, la scelta si è rivelata, almeno dal punto di vista del codice sorgente, poco influente. L’aspetto più importante è, come sottolineato da @robitex, la gestione dei dati in ingresso. Fino a ora mi sono limitato a definire dei comandi nel preambolo definendo una corrispondenza tra chiavi e valori:`\def\chiave{valore}`
Sarebbe molto utile poter disporre di un file di testo, esterno al sorgente, da completare e far poi leggere al motore di compilazione. Da un paio di articoli letti sul blog di @robitex, mi sembra che il linguaggio Lua abbia delle grandi potenzialità per eseguire il compito di leggere dati e passarli al compilatore per ottenere il documento.Lorenzo
Ciao,
io mi baso su article. Con xkeyval ho creato una chiave ‘job’ che posso dare come opzione alla classe e che prende il valore numerico che corrisponde al codice del progetto. Per esempio: job=144.
L’esecuzione dell’opzione, provoca il caricamento dl file 144.DAT posizionato in una cartella dell’albero LOCALE di TeX.
Questo file contiene delle istruzioni \set{chiave}{valore} che alla maniera classica non fa altro che definire una macro “nascosta” chiamata \prefixcode@chiave che viene utilizzata nei comandi di composizione della classe.
Così, posso condividere tra tutti i documenti il titolo del progetto per esempio (\set{titolo}{Costruzione …}).
Alla partenza di un progetto non faccio altro che creare un nuovo opportuno file
Il meccanismo funziona ed è semplice da gestire. Ho provato anche ha produrre documenti molto simili a report complessi, come hai fatto tu con le certificazioni energetiche. Tuttavia la cosa non mi è riuscita perché non sono riuscito a trovare una soluzione che mi piacesse.
Per risolvere i problemi che ho incontrato penso sia necessario ricorrere alla memorizzazione di dati in un database dal quale leggere in compilazione con LuaLaTeX. Ci sono troppi numeri, percentuali e cifre da gestire.
Recentemente però, ho ottenuto un buon successo per la creazione di computi metrici di una serie di lavori ad impianti usando Lua puro e memorizzando i dati su un database SQLite3, per produrre il testo del sorgente da compilare successivamente. Veramente una buona cosa. In più, questo lavoro mi ha dato la base per un articolo completo per ArsTeXnica ma non so se avrò modo di scriverlo.
Attualmente sto lavorando ad un progetto a lungo termine con un RDBMS di rete in cui LaTeX svolge il ruolo di reporting tool, questa volta usando il Go, il recente linguaggio open di Google.
La domanda a cui sto cercando di rispondere è questa: è più conveniente produrre i sorgenti dei report dall’esterno oppure caricare i dati direttamente nel sorgente dal DB con LuaTeX?
Ai posteri l’ardua sentenza.
R.