[PLUTO-ildp] Learning The Shell, tabelle in sgml (ulteriori precisazioni)
Hugh Hartmann
hhartmann a fastwebnet.it
Lun 21 Apr 2014 20:18:20 CEST
Ciao Marco,
e un saluto "un po' festivo" si propaga a tutti i partecipanti alla
lista ... :-)
Allora, uno si potrebbe chiedere come mai a Pasqua e Pasquetta qualcuno
si diletta a smanettare su file sgml e più precisamente su come creare
tabelle all'interno del sgml di LinuxDoc ... Rispondere è facile; ci
vuole pure qualcuno che si occupi di un argomento così poco trattato.
... :-))
In effetti l'argomento tabelle, all'interno di file sgml non è molto
discusso nemmeno in rete ...
Allora ho pensato di fare un po' di esperimenti ... :-)
Ho notato che, con il passare degli anni, diversi tag non vengono più
adeguatamente processati dal linuxdoc. A volte anche la documentazione
su sgml come la "Linuxdoc-tools guide" è estremamente stringata e non
riporta, salvo rari casi, le modifiche che sono state apportate ad
alcuni tag affinché funzionino correttamente all'interno di un file sgml.
A titolo di esempio riporto una tabella che dovrò integrare nel file
sgml della precedente versione tradotta dal sottoscritto e presente sul
sito dell'Ildp.
Ho creato un file sgml (table.sgml) dove è stata inserita la tabella che
segue, l'ho trasformato in file html con il comando:
$ linuxdoc -B html table.sgml <invio>
Bene, i tag <tabrow> e </tabrow> come altri non vengono riconosciuti e
quindi non si riesce a fare la tabella in html ...
E' la tabella dei tipi di file presente nel capitolo Navigazione del
Learning The Shell (riporto solo alcune righe):
[...]
<table border=1 align="center">
<tabular ca="|l|l|l|">
<tabrow><em>Tipo di
File</em><colsep><em>Descrizione</em><colsep><em>Visualizzabile come
testo?</em></tabrow>
<tabrow>ASCII text<colsep>The name says it all<colsep>si</tabrow>
...
<tabrow>RPM<colsep>A Red Hat Package Manager archive<colsep>no</tabrow>
</tabular>
</table>
[...]
Come si può notare ci sono dei tag che definiscono la tabella:
il primo (ma non sempre necessario) è:
<table>
che apre la tabella, nel nostro caso vengono inoltre definiti dei parametri:
<table border=1 align="center">
Purtroppo i parametri border=1 e allign="center" non sono riconosciuti
dalla versione più recente di linuxdoc-tools(è probabile che
funzionassero regolarmente con una vecchia versione di linuxdoc, quella
che si chiamava linuxdoc-sgml...)
Invece, come consigliato da negli Appunti Linux di Giacomini, il
parametro da associare a table è loc (location) e più precisamente il
tag table diventa:
<table loc="htbp">
Dove h=here (posizione attuale), t=top (superiore), b=bottom (inferiore)
p=page (pagina)
Generalmente dopo il tag <table> di apertura si usa il tag <tabular> che
definisce le caratteristiche di una tabella infatti, come nel nostro caso:
<tabular ca="|l|l|l|">
all'interno del tag tabular è stato specificato il parametro ca (coulumn
alignment) e le tre l presenti (l=left) rappresentano l'allineamento a
sinistra per ogni voce delle tre colonne della tabella.
Se si volesse un allineamento centrato per ogni voce di ogni colonna
allora si dovrebbe usare il tag:
<tabular ca="|c|c|c|">
la lettera c=center
Se si desidera l'allineamento a destra per ogni voce di ogni colonna
allora, si dovrebbe utilizzare il tag:
<tabular ca="|r|r|r|">
Con le versioni recenti di linuxdoc-tools cambiando i parametri l in r o
c in ca non cambia nulla, l'allineamento rimane sempre lo stesso, cioè
ogni voce di ogni colonna rimane con l'allineamento a sinistra.
Non so perchè ....
Ogni riga della tabella inizia con un tag <tabrow> e finisce con un
</tabrow>.
Questi tag non funzionano .. invece, alla fine di ogni riga si mette un
separatore di riga <rowsep> o anche un @ che è equivalente.
Le colonne vengono separate l'una dall'altra usando il tag <colsep>, o
con una | che è equivalente ... anche questo è abbastanza intuitivo.
Dato che la prima riga è quella che specifica il Tipo di File, la
Descrizione, Visualizzabile come testo?, queste voci devono essere
enfatizzate e quindi vengono racchiuse dai tag <em> e </em>.
Questo funziona!
Per finire la tabella sono necessari, nell'ordine corretto, i tag
</tabular> e </table>.
Quindi la tabella precedente diventa (forma completa):
[...]
<table loc="htbp">
<tabular ca="|l|l|l|">
<bf>Tipo di
File</bf><colsep><bf>Descrizione</bf><colsep><bf>Visualizzabile come
testo?</bf><rowsep>
ASCII text<colsep>The name says it all<colsep>si<rowsep>
Bourne-Again shell script text<colsep>Uno script Bash<colsep>si<rowsep>
ELF 32-bit LSB core file<colsep>A core dump file (a program will create
this when it crashes)<colsep>no<rowsep>
ELF 32-bit LSB executable<colsep>An executable binary
program<colsep>no<rowsep>
ELF 32-bit LSB shared<colsep>A shared library object<colsep>no<rowsep>
GNU tar archive<colsep>A tape archive file. A common way of storing
groups of files.<colsep>no, use tar tvf to view listing.<rowsep>
gzip compressed data<colsep>An archive compressed with
gzip<colsep>no<rowsep>
HTML document text<colsep>A web page<colsep>si<rowsep>
JPEG image data<colsep>A compressed JPEG image<colsep>no<rowsep>
PostScript document text<colsep>A PostScript file<colsep>si<rowsep>
RPM<colsep>A Red Hat Package Manager archive<colsep>usare rpm -q per
esaminare il contenuto.<rowsep>
Zip archive data<colsep>An archive compressed with zip<colsep>no
</tabular>
<caption>
Varie specie di file
</caption>
</table>
[...]
Nell'ultima riga non si mette il tag <rowsep> altrimenti si aggiunge una
riga vuota.
Inoltre èstato aggiunto un titolo della tabella mediante i tag <caption>
e </caption> posto tra il tag </tabular> e </table>.
Ecco, spero di essere stato ancora più utile, riportando questo esempio,
per chi volesse inserire delle tabelle all'interno di un file sgml di
LinuxDoc.
Au Revoire
Buona Pasquetta!
Hugh Hartmann
--
CONFIDENTIALITY NOTICE
This message and its attachments are addressed solely to the persons
above and may contain confidential information. If you have received
the message in error, be informed that any use of the content here of is
prohibited. Please return it immediately to the sender and delete
the message.
Thank you
Maggiori informazioni sulla lista
pluto-ildp