[successivo] [precedente] [inizio] [fine] [indice generale]
Per effettuare delle prove con il linguaggio Pic è necessario poter ottenere in qualche modo concreto l'immagine finale e visualizzarla. A tale scopo si indicano qui alcune possibilità.
Si può ad esempio utilizzare una pipeline del genere:
cat sorgente_pic | pic | troff -Tps | grops | ps2eps > file_eps |
ottenendo quindi un file EPS, da visualizzare o ulteriormente elaborare. Addirittura si potrebbe preparare una riga di comando più complessa, la quale racchiuda in sé l'intero ciclo di modifica, compilazione e visualizzazione:
vi sorgente_pic; cat sorgente_pic | pic | troff -Tps | grops | ps2eps > file_eps; \ |
Se la sintassi del sorgente Pic non è corretta, si ottiene un messaggio di errore standard, secondo lo schema seguente:
pic:sorgente_pic:numero_di_riga: syntax error before elemento pic:sorgente_pic:numero_di_riga: giving up on this picture |
ove elemento è un elemento sintattico, di solito immediatamente successivo alla causa dell'errore.
Un'alternativa sintatticamente più semplice prevede l'utlizzo di Pic2plot (parte del pacchetto GNU Plotutils):
cat sorgente_pic | pic2plot -Tps > file_eps |
tenendo però presente che:
Pic2plot non riconosce le sequenze di escape che iniziano con \(, pertanto se si desiderano ottenere le lettere accentate si devono utilizzare delle sequenze di escape che iniziano con \;
l'aspetto finale dell'immagine può essere leggermente differente rispetto a quanto ottenuto mediante Troff.
Un'ulteriore semplificazione si può ottenere utilizzando il programma di Eric S. Raymond pic2graph, il quale si appoggia a Groff e perciò riconosce l'intero linguaggio Pic:
cat sorgente_pic | pic2graph > file_png |
Va precisato che, purtroppo, al momento della stesura del presente lavoro il programma pic2graph non funziona correttamente, nel senso che il file prodotto non ha le dimensioni corrette ed è pertanto inutilizzabile. |
Se si intende utilizzare del codice Eqn all'interno del codice Pic, si tenga presente che (secondo quanto dichiarato nella pagina di manuale(1)) la realizzazione GNU di Eqn (Geqn) non è del tutto compatibile con il Troff tradizionale, pertanto è necessario utilizzare Groff:
cat sorgente | groff -e -p | ps2eps > file_eps |
Infine, si noti che Alml (il sistema di composizione SGML di Daniele Giacomini) offre supporto - a partire dall'estate 2005 - per il linguaggio Pic.
Informatica per sopravvivere 2006.01.30 --- Copyright © 2004-2006 Massimo Piai -- <pxam67 (ad) virgilio·it>
1) «[...] The syntax is quite compatible with Unix eqn. The output of GNU eqn cannot be processed with Unix troff; it must be processed with GNU troff. [...]»
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome indicazioni_operative_per_ottenere_le_immagini.html