On Tue, 6 Aug 2013, Wolfgang Schuster wrote: > > Am 06.08.2013 um 17:53 schrieb Aditya Mahajan : > >> On Tue, 6 Aug 2013, Wolfgang Schuster wrote: >> >>> >>> Am 06.08.2013 um 16:09 schrieb Alan BRASLAU : >>> >>>> Thank you Wolfgang, but I was wondering about the standard \startnarrower. >>>> >>>> Many (some) commands allow setup assignments, the use of which overides but does not change the default. This is a very useful feature of ConTeXt that suggest could be generalized. \startnarrower is but one example. >>> >>> Changing the command is simple but I would drop the second >>> argument when you want to change the left/right etc. values >>> because you can say “left=4cm” etc. to get the desired margins. >> >> startnarrower has a weird interface. Ideally, it should just support keywords: >> >> \startnarrower >> [ >> leftmargin=..., >> rightmargin=..., >> alternative=(left|right|both), >> spacebefore=...., >> spaceafter=...., >> indenting=...., >> indentnext=...., >> before=...., >> after=...., >> ] > > That’s more or less what I use for the “narrow” alternative in the annotation module. > > I would prefer such a parameter driven narrower environment myself (do we even need > the left, middle and right option when we can set absolute margins) but keeping the current > interface for backwards compatibility make things a little bit ugly. Haven't we broken backward compatibility for other environments as well? \startlinenumbering immediately comes to mind where the MkII interface was \startlinenumbering[continue] and the current interface is \startlinenumbering[continue=yes] I, for one, think that it is OK to break backward compatibility for more elegance and consistency. Aditya