[NTG-context] Spurious space in \definestartstop

Henri Menke henrimenke at gmail.com
Tue Jan 30 21:46:22 CET 2018


On Tue, 2018-01-30 at 21:24 +0100, Wolfgang Schuster wrote:
> 
> > Henri Menke 30. Januar 2018 um 21:12
> > On Tue, 2018-01-30 at 11:58 +0100, Hans Hagen wrote:
> > > On 1/30/2018 11:34 AM, Henri Menke wrote:
> > > > On 01/30/2018 09:17 PM, Hans Hagen wrote:
> > > > > On 1/30/2018 2:54 AM, Henri Menke wrote:
> > > > > > Dear list,
> > > > > > 
> > > > > > the title says it all.  Please add \ignorespaces in a place you deem
> > > > > > appropriate.  MWE is below.
> > > > > sometimes you will also add \removeuwantedspaces in the stop
> > > > I'm confused.  Does that mean there is going to be a fix?
> > > no, why should there be? spaces are never ignored after the last [...] 
> > > that is checked for unless a command has an explicit \ignorespaces
> > I'm not convinced.  Both "before" and "commands" see a \relax and therefore
> > \ignorespaces is dropped.  I can put \removeunwantedspaces there but that
> > deletes the space before \start.  The \framed command correctly drops the
> > space
> > after the options.
> > 
> > ---
> > 
> > \definestartstop
> >   [spurious space a]
> >   [before=\ignorespaces,
> >    after=\removeunwantedspaces]
> > 
> > \definestartstop
> >   [spurious space b]
> >   [before=\removeunwantedspaces,
> >    after=\removeunwantedspaces]
> > 
> > \starttext
> > 
> > Hello Foo Bar World
> > 
> > Hello \start[spurious space a] Foo Bar \stop\ World
> > %   ^^^ neither space        ^^^ is skipped
> > 
> > Hello \start[spurious space b] Foo Bar \stop\ World
> > %   ^^^ skips this space     ^^^ instead of this
> > 
> > Hello \startframed[offset=overlay] Foo Bar \stopframed\ World
> > % That's the behaviour I'm looking for.
> > 
> > \stoptext
> > 
>  You assume \start[<...>] ... \stop is linked to \definestartstop but this
> isn’t the case,
> what the environment does is to generate a start-command with the argument
> but this works for every environment, e.g. \start[itemize] ... \stop does the
> same
> as \startitemize ... \stopitemize.

I'm not asking to add \ignorespaces to the definition of \start.  I'm rather
asking, where I have to but \ignorespaces in the setup to eat the space after
the options I pass to \start.

> 
> Adding the \ignorespace is not an option in this case because it would effect
> all environments which you use with the argument for \start.
> 
> Wolfgang
> ______________________________________________________________________________
> _____
> If your question is of interest to others as well, please add an entry to the
> Wiki!
> 
> maillist : ntg-context at ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
> archive  : https://bitbucket.org/phg/context-mirror/commits/
> wiki     : http://contextgarden.net
> ______________________________________________________________________________
> _____


More information about the ntg-context mailing list