comportamento richiesto, ho trovato come unica soluzione quella che ho proposto al termine del mio primo messaggio: costruire il blocco “a mano” :).
Si, il codice mi sembra giusto, ma non credo interpreti lo “spirito” di \definestartstop.
In s-grk-00.tex c’e un esempio :
`
\definestartstop
[greek]
[commands=\directsetup{cbgreek}]
:
\startgreek
a b c d e f g h i j k l m n o p q r s t u v w x y z \par
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
\stopgreek`
In syst-gen.tex ‘\definestartstop sembra avere con #2 un hook per una futura estensione, o per permettere codice come il tuo.
Probabilmente \defineframedtext ,\setupframedtext,\star|\stopframedtext in core-rul.tex puo’ essere un altro esempio, come (l’inutile ?) \definestartstopcommand in syst-gen.tex
Ovviamente si puo’ sempre definire qualcosa del tipo
`
\long\def\startesperimento[#1]#2\stopesperimento{%
\begingroup
\getparameter[ESP][saluto={Hello},commands=,#1]
%% do something with #1 and #2
\endgroup%
}%
`
In \start|stopesperimento forse bisogna chiarire il compito di “commands”: sembra una specifica per una o piu’ macro, ma non e’ chiaro il contesto su cui dovrebbe(ro) agire.
Se si vede \setuphead si nota che le opzioni sono sia “label”, sia macro senza argomenti
(tipicamente per gli spazi) sia macro con 1 o piu’ argomenti
`
\setuphead[…][..,..=..,..]
… section
:number yes no
ownnumber yes no
before command
inbetween command
after command
:
command \command#1#2
numbercommand \command#1
textcommand \command#1
:
`
ed e’ chiaro con un poco di esperimenti a cosa si riferiscono gli argomenti delle macro.