Grazie Claudio.
Ho visto che hai eliminato il passaggio con \bibbia@stringa, in effetti non ne comprendevo l’utilità. Invece non riesco a capire bene il quinto argomento di \estraidati, provo a dire cosa ho capito. Se uso \branobibbia esplicitando versetto iniziale e finale, allora #5 vale “-” e non succede nulla. Se inserisco solo il versetto iniziale (Gn:1,5) sia #4 che #5 sono vuoti e quindi \verFin è uguale a #3. Giusto?
Ora sto provando a pensare qualcosa per gestire le parti “poetiche” (tutti i salmi e molti altri pezzi, fin dai primi versetti della Genesi http://www.verbumweb.net/it/bibbia/Genesi.pdf). Per queste parti volevo basarmi sull’ambiente verse. Il grosso problema è quello di fare in modo che LaTeX si accorga di avere a che fare con delle righe di testo che dovrebbero essere stampate in modo particolare e trattarle di conseguenza. Ad esempio potrei volere il testo:
`1Mauris varius quam in mi vehicula in eleifend erat consectetur. 2Aliquam sed leo vitae massa ultricies ullamcorper in vel quam. 3Etiam rhoncus mauris non neque vulputate vitae ornare odio ornare.
Morbi eleifend ante posuere sem venenatis
a accumsan dolor adipiscing.
4Suspendisse gravida, nibh ac imperdiet cursus,
neque sapien feugiat urna,
nec lobortis sapien justo ultrices diam.
Suspendisse pharetra dapibus elit,
id sodales lorem adipiscing sit amet.
5Nullam sed nulla id nisi ultrices fringilla.
Suspendisse potenti.
6Sed ac turpis felis, in ullamcorper mauris.
`
Ma potrei volere solo i versetti 4 e 5. Quindi dovrei caratterizzare in qualche modo le righe “poetiche”, nel codice qui sotto ho usato \bpoem e \epoem. Dovrebbe succedere che quando LaTeX incontra il primo \bpoem faccia certe operazioni (aprire un ambiente verse, o solo modificare il rientro, o altro ancora), ignori i seguenti \bpoem e veda gli \epoem come \\ e quando trova l’ultimo \epoem chiuda il gruppo e ripristini le condizioni standard. È solo fantasia o c’è un modo per farlo? È un approccio sensato?
Per quanto riguarda l’individuazione del primo \bpoem sarebbe semplice: definisco un contatore che aumenta di 1 ogni \bpoem, e se questo contatore vale 0 allora \bpoem vale una cosa (potrebbe essere \begin{verse}), altrimenti vale un’altra {\relax}. Non riesco proprio a pensare come poter individuare l’ultimo \epoem in modo che questo valga \end{verse}. Metto qui sotto il codice del testo come lo ho immaginato.
Francesco
`\@namedef{1}{Mauris varius quam in mi vehicula in eleifend erat consectetur.}%
\@namedef{2}{Aliquam sed leo vitae massa ultricies ullamcorper in vel quam. }%
\@namedef{3}{Etiam rhoncus mauris non neque vulputate vitae ornare odio ornare.
\bpoem Morbi eleifend ante posuere sem venenatis\epoem
\bpoem a accumsan dolor adipiscing. \epoem
}
\@namedef{4}{\bpoem Suspendisse gravida, nibh ac imperdiet cursus,\epoem
\bpoem neque sapien feugiat urna,\epoem
\bpoem nec lobortis sapien justo ultrices diam.\epoem
\bpoem Suspendisse pharetra dapibus elit,\epoem
\bpoem id sodales lorem adipiscing sit amet.\epoem}%
\@namedef{5}{\bpoem Nullam sed nulla id nisi ultrices fringilla.\epoem
\bpoem Suspendisse potenti.\epoem
}%
\@namedef{6}{Sed ac turpis felis, in ullamcorper mauris.}\endinput`