Newsgroup: it.fan.marco-ditri
Titolo: Macro per HTML

Vorrei costruire *.
bofh.it
 con un macrolinguaggio che mi faccia evitare
di ricopiare ogni volta i pezzi comuni.
Ho guardato velocemente WML ma mi sembra piuttosto complicato per i miei
scopi, conoscete alternative?
-- 
ciao, | (Ri)scoprire fidonet: | Chissa` cosa si prova a liberare
Marco | 
http://bbs.bofh.it
    | la fiducia nelle proprie tentazioni. (F.D.A.)

 scopi, conoscete alternative?
PHP a botte di include/readfile
-- 
 Daniele Orlandi
 Planet Srl

 scopi, conoscete alternative?
Può servire?
http://www.giga.or.at/~agi/hsc/
-- 
Registered user at 
http://counter.li.org
 # 170453
ICQ 61259284
GnuPG Key fingerprint = 10E0 2B05 0B0A 3525 8760  788B 59B6 C74A 250E 65B6

PHP a botte di include/readfile
Voglio un sito statico, altrimenti userei i SSI.


Voglio un sito statico, altrimenti userei i SSI.
Che vuol dire? Usi l'istruzione <? include() ?> mettendo come parametro dei
blocchi di files statici.
l'esempio classico e' header.inc, footer.inc, content-n.inc dove solo
quest'ultimo e' parametrico su n. ti fai n files .inc statici (content-1,2,3)
e nei links metti index.php?n=1 ... 2...3... ...8 ...24... ecc... 
e nell'include del content-n metti una variabile che ti costruisci sommando
come stinghe "content-", "$n" e ".inc".
E la pagina index.php diventa cosi':
<? include(header.inc) ?>
<?
  $content="content-".$n.".inc";
  include($content);
?>
<? include(footer.inc) ?>
-- 
Layos [gir n°19][ICQ 55985554]
E' meglio essere ottimisti ed avere torto, che essere pessimisti ed avere ragione [A. Einstein]

blocchi di files statici.
Voglio creare dei file .html contenenti tutto e gia` pronti per essere
letti dal server.
E magari lasciare aggiungere al programma le dimensioni delle immagini,
sostituire il titolo nel template, eccetera.


sostituire il titolo nel template, eccetera.
Verrebbe da pensare che possa andar bene qualunque sistema che
possieda espansioni macro e, magari, compilazione condizionale e
inclusione, da bash al preprocessore C, passando per troff e TeX.
Il guaio e` che in genere i linguaggi macro hanno la strana
pretesa che quello che gli si da da leggere sia uno script in
quel linguaggio. Sicche' quello che guadagni da una parte lo
perdi dall'altra (dover scrivere una sfilza di "echo..." non e`
probabilmente quello che vai cercando). Magari pero` TeX o
texinfo potrebbero essere anche praticabili.
Se no, a parte il pre-processore html segnalato, che sembra poter
essere interessante, forse c'e` qualche preprocessore generico,
che non fa alcuna assunzione sul linguaggio ospite. Forse si puo`
adattare web, o qualche sistema sgml tipo sdc, o qualcosa tipo
eperl.
Ciao.

che non fa alcuna assunzione sul linguaggio ospite.
Per esempio, nientemeno che m4 (le cose che si hanno in casa
senza neanche saperlo!), che pero` ha alcune limitazioni che lo
rendono forse non tanto adatto per un lavoro del genere (e alcune
particolarita` sintattiche che possono riuscire non gradite).
Comunque sembra che quella di scrivere preprocessori generici sia
un'attivita` abbastanza diffusa[1], ne ho trovati diversi. 
Nonostante la mia passione per linguaggini di ogni sorta, non ho
pero` esperienza di processori macro generici, sicche' posso solo
citare a caso un paio di quelli che ho trovato: un filepp
(interessante perche' scritto in Perl) e un gpp (interessante,
immagino, perche' non scritto in Perl). Ho dato un'occhiata anche
a hsc che e`... be', interessante.
Ciao.
[1] Sembra che ogni tanto qualcuno si guardi intorno e scopra che
tutti quelli che ci sono non vanno bene per questo o quel motivo.
E dato che scriverne uno e` relativamente semplice (nelle
funzionalita` principali)....
Ne scrissi uno (grezzissimo) anch'io a suo tempo, in awk. Credo
di essermi anch'io guardato intorno e aver deciso che quello che
c'era non andava bene, ma all'epoca, per me, "guardarmi intorno"
aveva un orizzonte assai ristretto, coincidente piu` o meno con
le pareti della mia stanza. E li` un preprocessore proprio non
c'era, a meno che appunto non me ne facessi uno io.

 di ricopiare ogni volta i pezzi comuni.
<quote>
   Introduction
   Genpage is a perl script designed to make managing web content
   within a consistent looking web site easier. 
   This is achieved by building a template of the persistent features
   on a site into a separate layout file that all the content files
   are applied to.
   I built Genpage as a tool to help me build and maintain the
   mnemonic website, a site with 56 WebPages that would have been a
   nightmare to manage by hand and ensure that all look and feel
   consistent.
 
   Initially I wrote a simple script to include consistent components
   (such as toolbars) so that I only had to modify a link in one file
   and have it reflected throughout the site. The current version can
   do much more. It's greatest power is in it's simplicity. Read on.
<quote/>
for reference, e per vedere un sito costruito con genpage,
http://www.xemacs.org/About/Website.html
-- 
sapete contare fino a venticinque?
Olimpia Milano Jugoplastika Split Partizan Beograd
Roberto Premier Duska Ivanovic Zarko Paspalj

 sostituire il titolo nel template, eccetera.
Puoi decidere di creare un template generico con una serie di stringhe
particolari che identificano un spazio per un determinato contenuto, quindi
definire i contenuti magari in semplici file di testo (o magari in un dB),
limitandoti solo a quello che realmente deve apparire di diverso in quella
pagina e quindi con uno script in Perl (o quello che vuoi) carici il
template, sostituisci le stringhe speciali con il contenuto in questio e
generi le pagine. In questo modo puoi cambiare la grafica di tutto
semplicemente modificando il template.
Io ho fatto una cosa del genere per far gestire le modifiche di pagine
statiche a persone che non sanno neanche cosa sia l'HTML, dovevano solo
modificare il testo e il sistema generava la pagina HTML (tutto
rigorosamente statico) caricando una serie di template (oltre alla pagina ho
definito dei mini-template per come dovevano comparire alcune tabelle, o
titoli particolari che potevano ripetersi più volte etc etc).
Ciao.
y.

>>>>>  Md == Marco d'Itri [2001-4-20]
Md> Ho guardato velocemente WML ma mi sembra piuttosto complicato per i
Md> miei scopi, conoscete alternative?
Può anche darsi che sia complicato, ma se i tuoi scopi sono semplici
puoi usarlo in modo semplice, con poca fatica.
Io lo uso da anni e ne sono molto felice.  Tu poi conosci già molto di
quel che serve: il preprocessor è simile a quello del C, eperl e GNU m4
sono proprio loro, per il resto hai da imparare solo quello che ti
serve.
-- 
Davide Giovanni Maria Salvetti
W: 
http://www.linux.it/~salve/
OpenPGP (GPG) Key ID: 939686D5

serve.
In effetti si impara tranquillamente in un'ora, pero' devo dire che e`
*veramente* barocco.


*veramente* barocco.
Be', "barocco" e' comunque un sinonimo di "macrolinguaggio", per un certo
grado di complessita' del lavoro. La soglia varia da linguaggio a
linguaggio, ma non e' mai comunque molto alta, neppure nei linguaggi meglio
disegnati.
L'html, poi, e' gia' piuttosto barocco di suo, sicche'....
Un affronto meno barocco (ma non meno complesso) potrebbe essere un sistema
sgml completo, come Openjade. Le "macro" sarebbero in questo caso tag di un
dtd di tua definizione, e le pagine verrebbero prodotte attraverso una
trasformazione sgml-sgml.
Ciao.

trasformazione sgml-sgml.
Il mio non e` un sito strutturato, quindi non e` utile.
