Newsgroup: it.comp.software.tex
Titolo: [OT?] tex vs. docbook

No, non vi preoccupate non voglio cominciare un thread "e' meglio docbook
o tex". La domanda non ha molto senso al di fuori di un contesto che passo
subito a darvi:
molto semplicemente devo scrivere la mia tesi (storia) avevo inizialmente
pensato di farlo con LaTeX, poi ho pensato che mi sarebbe piaciuto
sperimentare qualche formato XML (o SGML/XML) da cui l'idea di docbook.
Mi sono fatto un'idea dei due sistemi e dei loro (in realtà differenti)
scopi ma non ho una vera esperienza con nessuno dei due, c'è qualcuno che
sa darmi un'idea dei vantaggi e degli svantaggi nonché dei problemi
pratici a cui potrei andare incontro utilizzando i due sistemi? (tesi di
storia = poche o nessuna formula matematica, qualche figura, tante
citazioni).
Ringrazio chi vorrà darmi dei consigli

Il Tue, 21 Oct 2003 00:59:36 +0200, Giorgio Solvini ha scritto:
ecco, il primo followup è mio... ;-)
mi ero solo scordato un'altra cosa: ho sentito parlare bene di conTeXt,
specie nella sua interazione con xml. Qualcuno ha qualche esperienza in
merito?


Io ho una certa esperienza con il ConTeXt, ma non eccessivamente 
nella sua interfaccia con l'XML, per il puro e semplice motivo che io 
*odio* l'XML.
Il problema dell'XML, in parte anche del LaTeX, ed in generale di 
tutti i formati di markup è che spesso corrono il rischio di 
diventare troppo "prolissi". Questo è certamente "topico" dell'XML 
(dove ogni singolo capoverso deve essere delimitato da <para>, per 
esempio), ma anche il LaTeX (ed ugualmente il ConTeXt) non scherzano.
Il problema di queste prolissità è che senza un adeguato editor 
diventa *pesantissimo* gestire i documenti. Vi sono varie possibilità 
in proposito. Nota quindi che adesso non parlerò dei meriti e 
demeriti *tecnici* di LaTeX vs ConTeXt vs DocBook vs etc, ma 
piuttosto del problema: "una volta scelto quale usare, come faccio a 
scrivere il mio documento?"
* Per la scrittura di documenti XML vi sono varie soluzioni, alcune 
commerciali (e.g. XMetaL attualmente della Corel), altre disponibili 
"per uso non commerciale" o altrimenti più o meno libere e/o gratuite
(ad esempio XXE, XMLmind XML Editor), che forniscono un ambiente di 
modifica abbastanza confortevole (di stampo WYSIWYG).
* Per LaTeX si può pensare all'utilizzo di qualcosa come LyX per 
avere funzioni dello stesso tipo.
* In generale, la maggior parte degli editor di alto livello 
(famiglia Emacs, famiglia Vi) permettono agli utenti di definire 
pacchetti per facilitare la navigazione/modifica/pubblicazione di 
documenti in codesti prolissi formati.
* Infine, una soluzione "grezza" è quella di utilizzare qualcosa nota 
in generale come "here documents".
Come i formati basati sul TeX hanno, rispetto ai DTD XML, il 
vantaggio che i capoversi sono marcati con semplici righe vuote, lo 
"here document" porta questo limite ben oltre: tutto il markup viene 
ridotto al minimo: ad esempio, righe che cominciano per = determinano 
i titoli delle sezioni (più = per livelli successivi); capoversi che 
iniziano per * fanno parte di enumerazioni/elenchi; grassetto, 
corsivo e sottolineato sono marcati con i classici *...*, /.../ e 
_..._; e così via.
La scrittura diventa così molto fluida, e con opportuni script si può 
poi trasformare lo here document in un documento LaTeX o ConTeXt o 
HTML o quello che si vuole.
In un certo modo, l'utilizzo di un formato "here document" può essere 
considerato alternativo (in quanto a rapidità di composizione) ad un 
formato come LaTeX o ConTeXt in un editor che fornisce strumenti di 
inserimento facilitato del markup.
Questa dovrebbe essere la risposta alla tua prima mail :) Per quanto 
riguarda la seconda: ConTeXt ed XML vanno piuttosto bene assieme. Si 
perde un po' di lavoro all'inizio per impostare la "conversione" 
(interna) dei tag XML in comandi ConTeXt, dopodicché ConTeXt può, in 
genere, manipolare il file XML con una certa tranquillità. In 
particolare, per il DocBook esiste già un filtro (cercando DocBook in 
ConTeXt su internet dovresti trovare qualcosa), quindi SE vuoi 
seguire la strada del DocBook (in particolare se hai qualcosa che ti 
permetta di scrivere *facilmente* con questo o qualsiasi altro 
formato XML, hai già parte del lavoro fatto.
-- 
Giuseppe "Oblomov" Bilotta
Can't you see
It all makes perfect sense
Expressed in dollar and cents
Pounds shillings and pence
                  (Roger Waters)

citazioni).
La domanda a cui devi rispondere (e a cui hai parzialmente già risposto) è
"ho bisogno/voglia/curiosità di usare un sistema SGML?". Il resto viene da
sé.
Il vantaggio di DocBook rispetto a LaTeX è che DocBook è un sistema SGML.
Lo svantaggio, d'altra parte, è che è un sistema SGML. Così come il
vantaggio e lo svantaggio di LaTeX è che è maggiormente orientato alla
formattazione finale del documento, pur possedendo alcuni elementi di
struttura.
Da una parte hai la possibilità di definire la struttura del tuo documento,
astraendo dall'aspetto grafico, di produrre documenti finali in formati
diversi (LaTeX, html, RTF, ecc.) e di elaborare il documento per ottenere
report, indici e altro; dall'altra una maggiore flessibilità e semplicità
nel definire l'aspetto grafico definitivo di ogni elemento strutturale, con
eccezioni ed aggiustamenti fini che sono difficili da ottenere con il
backend di un sistema SGML. Tutto dipende da che cos'è la cosa più
importante per te, nell'ambito di questo lavoro.
Nell'ambito dei sistemi SGML, DocBook è abbastanza versatile, ed ha degli
strumenti già pronti per produrre i documenti finali. D'altra parte ha un
DTD ben definito, e ti deve andar bene quello (ma credo che per una tesi di
storia possa essere più che adeguato), e modificare la resa grafica dei
diversi elementi non è semplicissimo. Potresti dare un'occhiata anche a
FOP, che è più flessibile in entrambi questi aspetti, ma devi arrangiarti
tu a definire il tuo modello di documento e i fogli stile per la
trasformazione.
Nell'ambito delle soluzioni "here documents" (o text2qualcosa) proposte da
Giuseppe Bilotta, AFT è un sistema abbastanza completo e versatile, e
insieme molto semplice. Un altro potrebbe essere texinfo.
Come strumenti per la composizione di documenti XML o SGML, considera anche
Emacs+psgml.
Ciao.

 sé.
prima di tutto vi ringrazio per le vostre articolate risposte.
Devo dire che le riflessioni che fai sono più o meno quelle che avevo
fatto io. Il mio tentennamento deriva dal fatto che vorrei dedicarmi
soprattutto a scrivere la tesi e non rischiare di rimanere "impantanato"
in xsl, xsl-fo, dsssl ecc.
Da questo punto di vista TeX sembrerebbe essere la cosa migliore e più
testata, so già che, ad esempio il pacchetto "jurabib" può venire incontro
alle mie esigenze di citazioni bibliografiche (diverse da quelle di una
tesi di carattere scientifico) e così mi immagino che tante altre
piccole/grandi esigenze saranno sicuramente soddisfatte da TeX (senonaltro
per il fatto che è usato da così tanto tempo...).
Lo stesso non so se vale per docbook (ma ultimamente sto guardando anche
TEI: 
http://www.tei-c.org.uk/
). Per questo cercavo qualcuno che avesse
esperienza in entrambe le cose per capire se, ad esempio, un problema
specifico come quello della formattazione dei riferimenti bibliografici
può essere risolto facilmente anche con questi strumenti XML (che possa
essere risolto ne sono sicuro, che lo possa essere senza che io rubi
troppo tempo a quello che dovrei dedicare alla tesi lo sono di meno ;-)
Ciao


TEI: 
http://www.tei-c.org.uk/
).
TEI è progetto ben più pretenzioso di DocBook, e credo che copra ogni
possibile cosa nell'umano mondo, ma è anche, proprio per questo, piuttosto
complicato. Questo, dal punto di vista della struttura del documento. Come
strumenti per la formattazione, sono più o meno gli stessi: Jade o altre
macchine DSSSL, xsl, ecc.
Non ho purtroppo esperienza diretta d'uso di TEI o di DocBook da
riportarti. Con DocBook ho pasticciato un po', ma non mi sono mai messo in
un lavoro di una certa complessità come può essere una tesi.
Ciao.

 insieme molto semplice. Un altro potrebbe essere texinfo.
Onestamente non avrei mai pensato di definire texinfo un sistema 
here-document, anche se è indubbiamente più "di là" che non il LaTeX 
:)


:)
Direi che la frase potrebbe essere più correttamente letta: "Un altro
(sistema di documentazione multiformato non SGML) potrebbe essere texinfo".
Insomma, ho detto una sciocchezza. AFT invece è proprio quello che intendi
(il backend RTF, secondo me, potrebbe essere migliorato, ma non mi è
riuscito di convincere l'autrice, né di lavorarci io).
Fra gli editor, ho letto che OpenOffice può lavorare su documenti DocBook (o
più genericamente XML), ma non mi è ancora riuscito di vedere come è
realizzata la cosa.
Ciao.

 Ciao.


A quanto ho capito, funzica mediante XSLT che trasformano il DocBook 
in qualcosa di interno e poi lo ritrasformano in uscita. Non conosco 
la qualità del lavoro quindi mi astengo dal commentare.


 Ringrazio chi vorrà darmi dei consigli
       A mio parere Docbook non è poi così comodo da usare data la 
       sterminatezza delle tag che permette di usare. Praticamente
       ci si affida poi agli stili predefiniti, mi sembra troppo
       complicato costruirne poi di propri e completi.	    
       Il software di cui parlo è reperibile nel sito in firma,
       seguendo il link ``hackabilia''
       Saluti,
       Paolo
-- 
<!--_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
                      The Hacking Pages
 
www.lulli.net
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-->

 .mpoff
Praticamente hai rifatto troff/groff/nroff & co ;)


 Praticamente hai rifatto troff/groff/nroff & co ;)
  Praticamente si... :-) solo che la marcatura *roff è tipografica, la
  mia logica.  In modo tale che mentre scrivo non devo preoccuparmi
  dell'aspetto finale del documento. Se invece mi piace smanettare coi
  comandi tipografici, allora mi metto a scrivere uno stile. Ma le due
  cose sono definitivamente separate tra di loro; il documento:
---
.a il mio documento
.s sezione
bla bla bla
---
 
 Può essere formattato (e di sicuro, se si è bravi con il LaTeX ci si
 guadagna) come lo si desidera, solo che ci si mette sicuramente meno
 a creare questo ``minimum'' , con in più il vantaggio dell'uscita in
 HTML + CSS (e potenzialmente altro), che non un documento minimo
 LaTeX.
 Ciao ciao, P.


   dell'aspetto finale del documento.
Il tuo lavoro è privato, o pensi di renderlo pubblico ad un certo 
punto della tua vita? :)


 punto della tua vita? :)
 
www.lulli.net/paolo/hack/plml/index.html
  Nasce per utilizzo privato, ma ha l'ambizione di diventare un
  progetto pubblico, documentato e con licenza free. Tutta
  l'infrastruttura SGML sfrutta appieno strumenti pubblicamente
  reperibili, e su praticamente ogni piattaforma.
  Purtroppo la fase di documentazione del progetto è la più onerosa,
  in quanto mentre il programma nasce per risolvere dei problemi
  concreti, la documentazione necessita di un surplus di tempo non
  previsto.
  Questa sorta di mio ``outing'' nel NG occorre appunto per capire se
  abbia senso spendere tempo a documentare il tutto; in caso
  contrario, non avrebbe senso documentare in dettaglio qualcosa di
  cui rimarrò l'unico utente :-)
  Comunque, ho di già intrapreso la documentazione del tutto; in
  realtà ho anche aperto una ML ( 
pl...@lulli.net
 ) alla quale tuttavia
  per il momento sono iscritto solo io :-)). Anche solo per semplice
  curiosità, incoraggio chiunque a contattarmi anche in privato, o a fare
  riferimento alla pagina di cui sopra.
  Il motivo molto semplice per cui mi piacerebbe diffondere la mia
  creazione è che non sono affatto un TeXperto (anche se mi piacerebbe
  diventarlo) e mi piacerebbe la possibilità di impiegare per i miei 
  testi stili personalizzati scritti con buon gusto da chi ne ha le capacità.
 
  Ciao ciao,
  Paolo


   reperibili, e su praticamente ogni piattaforma.
Yow, bene. (Io comunque scommeto che PL sta per Paolo Lulli e l'altra 
spiegazione t'è venuta dopo :P) (Faccio anche notare il testo inglese 
e le intestazioni (Capitolo, Precedente, Successiva) in italiano.
Bel lavoro, e buona fortuna per il seguito :)


 in italiano.
 
  Non ti sfugge nulla :-)
