OldClaudio” post=73049
Trovo solo simpatico che nella definizione di una macro (quella di \voce riportata non è completa), può starci anche un \begin{qualcosa} senza che poi ci sia \end{qualcosa}.
Almeno, non ci avevo mai fatto caso.Roberto, è esattamente quello che fa \newenvironment: definisce due comandi: \ambiente e \endambiente, che non hanno nulla da inviidiare al tuo \startambiente e \endambiente; In LaTeX quando usi un ambiente usando i debiti \begin e \end rispettivamente apri un gruppo e chiudi un gruppo, oltre a impostare le cose per verificare che \end chuda esattamente l’ambiente aprto con il corrispondente \begin. Prova: \a[ri una ,omipage con \minipage e chiudila con \endminipage; funziona benissimo; ma se dentro questo non-ambiente minipage (non-ambiente perché non hai usato \begin e \end) definisci qualche cosa o assegni un valore a qualche registro, questo valore rimane anche dopo il comando \endminpage, perché il tutto non è stato rinchiuso dentro un gruppo. Be’ qualche volta potrebbe essere utile evitare il gruppo, e può essere utile all’interno di altri ambienti o programmando macro e ambienti per file .sty o per file .cls, ma di solito è una funzionalità estremamente utile.
Verissimo quello che dici Claudio,
il fatto è che il linguaggio che l’utente usa, per LaTeX ci sono i concetti base di macro e di ambiente, induce una forma strutturata di pensiero che manipola tali costrutti. Nel momento in cui ci accorgiamo che il linguaggio in realtà è implementato con altra logica rimaniamo sorpresi.
Almeno è l’impressione divertita che ho avuto io del caso.
R.