Re: [NTG-context] strange behavior with \groupedcommand in recent versions of LMTX

2020-09-02 Thread Hans Hagen

On 9/2/2020 11:10 AM, mf wrote:

Thanks Hans,
this solves the problem I had with the new implementation of \wordright.
It's not exactly a problem of \wordright, but the combination with 
\groupedcommand.


that is always tricky as what happens is postponing till the group ends

but wordright now kind of hooks into the par construction


Is \nextbox a new entry of latest versions?


no, actually one of the oldest things


I've seen also \nextboxwd, \nextboxht, etc.
So you can measure the next box to come in advance. Is it like that?

Is it a vbox when you're in vertical mode and a hbox when you are in 
horizontal mode?


you just pass the box


Is this interpretation of \dowithnextbox in \dowhatever right?

\dowithnextbox {.1.} \.2. {.3.}
1 COMMAND = {\ifdim\wd\nextbox<\hsize...}
2 CSNAME  = \hbox or \vbox 
3 CONTENT = {#1}

yes

Hans

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
   tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@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
___


Re: [NTG-context] strange behavior with \groupedcommand in recent versions of LMTX

2020-09-02 Thread mf

Thanks Hans,
this solves the problem I had with the new implementation of \wordright.
It's not exactly a problem of \wordright, but the combination with 
\groupedcommand.


Is \nextbox a new entry of latest versions?

I've seen also \nextboxwd, \nextboxht, etc.
So you can measure the next box to come in advance. Is it like that?

Is it a vbox when you're in vertical mode and a hbox when you are in 
horizontal mode?


Is this interpretation of \dowithnextbox in \dowhatever right?

\dowithnextbox {.1.} \.2. {.3.}
1 COMMAND = {\ifdim\wd\nextbox<\hsize...}
2 CSNAME  = \hbox
3 CONTENT = {#1}

Massi

Il 01/09/20 19:22, Hans Hagen ha scritto:
>
> fortunately there is a solution that takes less code:
>
> \unexpanded\def\whatever
>{\dosingleempty\dowhatever}
>
> \def\dowhatever[#1]%
>{\dowithnextbox
>   {\ifdim\wd\nextbox<\hsize
>  \wordright{\box\nextbox}%
>  \par
>\else
>  \par
>  \penalty1
>  \startalignment[flushright]\unhbox\nextbox\stopalignment
>\fi}\hbox}
>
> \starttext
>
>\input ward \whatever{same line, right}
>
>\blank
>
>\input ward \whatever{\input tufte }
>
> \stoptext
>
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@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
___


Re: [NTG-context] strange behavior with \groupedcommand in recent versions of LMTX

2020-09-01 Thread Hans Hagen

On 9/1/2020 5:47 PM, mf wrote:
\unexpanded\def\groupedwordorparagraphright{\dosingleempty\dogroupedwordorparagraphright} 

\def\dogroupedwordorparagraphright[#1]{\groupedcommand{\setbox\scratchbox\hbox\bgroup} 


{\egroup\ifdim\wd\scratchbox < \hsize
     \wordright{\unhbox\scratchbox}
   \else
     \par\penalty1
     \startalignment[flushright]\unhbox\scratchbox\stopalignment
   \fi}}

\unexpanded\def\wordorparagraphright#1{%
   \setbox\scratchbox\hbox{#1}
   \ifdim\wd\scratchbox < \hsize
     \wordright{#1}
   \else
     \par\penalty1
     \startalignment[flushright]\unhbox\scratchbox\stopalignment
   \fi}

\starttext
   \type{\wordorparagraphright} should use \type{\wordright} if its 
argument
   is narrower than \type{\hsize}, or make a right-aligned paragraph 
with it

   when it's wider.

   Below, \type{\wordorparagraphright} is tested with a short text, that
   has enough room on the same line.
   \blank

   Reference:

   \input ward\wordright{same line, right}

   \blank

   Implementation as a grouped command (it doesn't work):

   \input ward\groupedwordorparagraphright{same line, right}

   \blank

   Normal implementation, not as a grouped command (it works):

   \input ward\wordorparagraphright{same line, right}
\stoptext


Unfortunately the grouped version is the one I need, because it's used 
in a register, and it would give an error if not defined through 
\groupedcommand:


\setupregister[myregister]
   [pageleft=\wordorparagraphright\bgroup,pageright=\egroup]



fortunately there is a solution that takes less code:

\unexpanded\def\whatever
  {\dosingleempty\dowhatever}

\def\dowhatever[#1]%
  {\dowithnextbox
 {\ifdim\wd\nextbox<\hsize
\wordright{\box\nextbox}%
\par
  \else
\par
\penalty1
\startalignment[flushright]\unhbox\nextbox\stopalignment
  \fi}\hbox}

\starttext

  \input ward \whatever{same line, right}

  \blank

  \input ward \whatever{\input tufte }

\stoptext

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
   tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@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
___


[NTG-context] strange behavior with \groupedcommand in recent versions of LMTX

2020-09-01 Thread mf

Hello list,
this is a MWE that worked right in MkIV and in LMTX versions (at least) 
until April 22nd, 2020.


There's a macro, \wordorparagraphright, that takes one argument, makes a 
hbox with it and measures its width


- if its width is less than \hsize, then it calls \wordright

- if its width is more than \hsize, then it ends the current paragraph 
and starts a right-aligned paragraph with the argument


There are two implementations in the MWE: one is through 
\groupedcommand, and that's the one that worked once and doesn't now.



\unexpanded\def\groupedwordorparagraphright{\dosingleempty\dogroupedwordorparagraphright}
\def\dogroupedwordorparagraphright[#1]{\groupedcommand{\setbox\scratchbox\hbox\bgroup}
{\egroup\ifdim\wd\scratchbox < \hsize
\wordright{\unhbox\scratchbox}
  \else
\par\penalty1
\startalignment[flushright]\unhbox\scratchbox\stopalignment
  \fi}}

\unexpanded\def\wordorparagraphright#1{%
  \setbox\scratchbox\hbox{#1}
  \ifdim\wd\scratchbox < \hsize
\wordright{#1}
  \else
\par\penalty1
\startalignment[flushright]\unhbox\scratchbox\stopalignment
  \fi}

\starttext
  \type{\wordorparagraphright} should use \type{\wordright} if its argument
  is narrower than \type{\hsize}, or make a right-aligned paragraph with it
  when it's wider.

  Below, \type{\wordorparagraphright} is tested with a short text, that
  has enough room on the same line.
  \blank

  Reference:

  \input ward\wordright{same line, right}

  \blank

  Implementation as a grouped command (it doesn't work):

  \input ward\groupedwordorparagraphright{same line, right}

  \blank

  Normal implementation, not as a grouped command (it works):

  \input ward\wordorparagraphright{same line, right}
\stoptext


Unfortunately the grouped version is the one I need, because it's used 
in a register, and it would give an error if not defined through 
\groupedcommand:


\setupregister[myregister]
  [pageleft=\wordorparagraphright\bgroup,pageright=\egroup]

TIA,
Massi
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@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
___


[NTG-context] groupedcommand with color

2012-02-14 Thread Steffen Wolfrum
Hi,

due to \color[]{} now needs an argument, groupedcommand doesn't work as before:


\define\PlainSwitch%
{\groupedcommand{\language[de]\ss}{}} 

\define\ColorSwitch%
{\groupedcommand{\language[de]\ss\color[darkred]}{}} 

\starttext

English: \date

{\PlainSwitch German \date}

English: \date

{\ColorSwitch German \date}

Test \date

\stoptext




Someone knows what to change here (in order to get the red G back)?

Thanks, Steffen
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand with color

2012-02-14 Thread Hans Hagen

On 14-2-2012 12:55, Steffen Wolfrum wrote:

Hi,

due to \color[]{} now needs an argument, groupedcommand doesn't work as before:


\define\PlainSwitch%
{\groupedcommand{\language[de]\ss}{}}

\define\ColorSwitch%
{\groupedcommand{\language[de]\ss\color[darkred]}{}}

\starttext

English: \date

{\PlainSwitch German \date}

English: \date

{\ColorSwitch German \date}

Test \date

\stoptext

Someone knows what to change here (in order to get the red G back)?


something

{\groupedcommand{\language[de]\ss\startcolor[darkred]}{\stopcolor}}




-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand with color

2012-02-14 Thread Steffen Wolfrum

Am 14.02.2012 um 13:21 schrieb Hans Hagen:

 On 14-2-2012 12:55, Steffen Wolfrum wrote:
 Hi,
 
 due to \color[]{} now needs an argument, groupedcommand doesn't work as 
 before:
 
 
 \define\PlainSwitch%
 {\groupedcommand{\language[de]\ss}{}}
 
 \define\ColorSwitch%
 {\groupedcommand{\language[de]\ss\color[darkred]}{}}
 
 \starttext
 
 English: \date
 
 {\PlainSwitch German \date}
 
 English: \date
 
 {\ColorSwitch German \date}
 
 Test \date
 
 \stoptext
 
 Someone knows what to change here (in order to get the red G back)?
 
 something
 
 {\groupedcommand{\language[de]\ss\startcolor[darkred]}{\stopcolor}}


In version 2012.01.16  this gives an error:

! Extra }, or forgotten \endgroup.


Steffen
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand with color

2012-02-14 Thread Hans Hagen

On 14-2-2012 13:37, Steffen Wolfrum wrote:


Am 14.02.2012 um 13:21 schrieb Hans Hagen:


On 14-2-2012 12:55, Steffen Wolfrum wrote:

Hi,

due to \color[]{} now needs an argument, groupedcommand doesn't work as before:


\define\PlainSwitch%
{\groupedcommand{\language[de]\ss}{}}

\define\ColorSwitch%
{\groupedcommand{\language[de]\ss\color[darkred]}{}}

\starttext

English: \date

{\PlainSwitch German \date}

English: \date

{\ColorSwitch German \date}

Test \date

\stoptext

Someone knows what to change here (in order to get the red G back)?


something

{\groupedcommand{\language[de]\ss\startcolor[darkred]}{\stopcolor}}



In version 2012.01.16  this gives an error:

! Extra }, or forgotten \endgroup.


and how about

{\groupedcommand{\language[de]\ss\directcolored[darkred]}{}}


-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand with color

2012-02-14 Thread Philipp Gesang
On 2012-02-14 13:37, Steffen Wolfrum wrote:
 
 Am 14.02.2012 um 13:21 schrieb Hans Hagen:
 
  On 14-2-2012 12:55, Steffen Wolfrum wrote:
  Hi,
  
  due to \color[]{} now needs an argument, groupedcommand doesn't work as 
  before:
  
  
  \define\PlainSwitch%
  {\groupedcommand{\language[de]\ss}{}}
  
  \define\ColorSwitch%
  {\groupedcommand{\language[de]\ss\color[darkred]}{}}
  
  \starttext
  
  English: \date
  
  {\PlainSwitch German \date}
  
  English: \date
  
  {\ColorSwitch German \date}
  
  Test \date
  
  \stoptext
  
  Someone knows what to change here (in order to get the red G back)?
  
  something
  
  {\groupedcommand{\language[de]\ss\startcolor[darkred]}{\stopcolor}}
 
 
 In version 2012.01.16  this gives an error:
 
 ! Extra }, or forgotten \endgroup.

Works when using “\switchtocolor”:


\define\ColorSwitch
  {\groupedcommand{\language[de]\ss\switchtocolor[darkred]}{}}
\starttext

foo \bgroup\ColorSwitch bar\egroup baz\par

\stoptext


Regards
Philipp



 
 
 Steffen
 ___
 If your question is of interest to others as well, please add an entry to the 
 Wiki!
 
 maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
 webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
 archive  : http://foundry.supelec.fr/projects/contextrev/
 wiki : http://contextgarden.net
 ___

-- 
()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments


pgpqh5EvCIQTj.pgp
Description: PGP signature
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___

Re: [NTG-context] groupedcommand with color

2012-02-14 Thread Steffen Wolfrum

Am 14.02.2012 um 13:44 schrieb Hans Hagen:

 On 14-2-2012 13:37, Steffen Wolfrum wrote:
 
 Am 14.02.2012 um 13:21 schrieb Hans Hagen:
 
 On 14-2-2012 12:55, Steffen Wolfrum wrote:
 Hi,
 
 due to \color[]{} now needs an argument, groupedcommand doesn't work as 
 before:
 
 
 \define\PlainSwitch%
 {\groupedcommand{\language[de]\ss}{}}
 
 \define\ColorSwitch%
 {\groupedcommand{\language[de]\ss\color[darkred]}{}}
 
 \starttext
 
 English: \date
 
 {\PlainSwitch German \date}
 
 English: \date
 
 {\ColorSwitch German \date}
 
 Test \date
 
 \stoptext
 
 Someone knows what to change here (in order to get the red G back)?
 
 something
 
 {\groupedcommand{\language[de]\ss\startcolor[darkred]}{\stopcolor}}
 
 
 In version 2012.01.16  this gives an error:
 
 ! Extra }, or forgotten \endgroup.
 
 and how about
 
 {\groupedcommand{\language[de]\ss\directcolored[darkred]}{}}


now it works: directedcolor, as well as switchtolcolor

Thank you Hans and Philipp!
Steffen



___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand with color

2012-02-14 Thread Wolfgang Schuster

Am 14.02.2012 um 14:26 schrieb Steffen Wolfrum:

 
 Am 14.02.2012 um 13:44 schrieb Hans Hagen:
 
 On 14-2-2012 13:37, Steffen Wolfrum wrote:
 
 Am 14.02.2012 um 13:21 schrieb Hans Hagen:
 
 On 14-2-2012 12:55, Steffen Wolfrum wrote:
 Hi,
 
 due to \color[]{} now needs an argument, groupedcommand doesn't work as 
 before:
 
 
 \define\PlainSwitch%
 {\groupedcommand{\language[de]\ss}{}}
 
 \define\ColorSwitch%
 {\groupedcommand{\language[de]\ss\color[darkred]}{}}
 
 \starttext
 
 English: \date
 
 {\PlainSwitch German \date}
 
 English: \date
 
 {\ColorSwitch German \date}
 
 Test \date
 
 \stoptext
 
 Someone knows what to change here (in order to get the red G back)?
 
 something
 
 {\groupedcommand{\language[de]\ss\startcolor[darkred]}{\stopcolor}}
 
 
 In version 2012.01.16  this gives an error:
 
 ! Extra }, or forgotten \endgroup.
 
 and how about
 
 {\groupedcommand{\language[de]\ss\directcolored[darkred]}{}}
 
 now it works: directedcolor, as well as switchtolcolor


You can also use \definestartstop to create your command which can then be used 
with \ColorSwitch{…} and {\ColorSwitch …}.

\definestartstop
  [ColorSwitch]
  [commands={\language[de]},
   style=sans,
   color=darkred]

Wolfgang
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


[NTG-context] groupedcommand italic and upright (MkIV)

2010-02-24 Thread Steffen Wolfrum
Hi,

in MkII the slash became set upright, in MkIV it stays italic:


\def\Textit{\groupedcommand\it\/}
\def\Textmr{\groupedcommand\mr\/}

\definetextmodediscretionary :
  
{\prewordbreak\discretionary{\kern.05em\Textmr/}{}{\kern.05em\Textmr/}\kern.05em\prewordbreak}%
 ist schon Textmr = aufrecht !

\starttext

test \Textit{non|:|italic} here.

\stoptext



What needs to be changed to get an upright slash in that italic group?

Steffen
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand italic and upright (MkIV)

2010-02-24 Thread Wolfgang Schuster

Am 24.02.10 18:02, schrieb Steffen Wolfrum:

Hi,

in MkII the slash became set upright, in MkIV it stays italic:

\def\Textit{\groupedcommand\it\/}
\def\Textmr{\groupedcommand\mr\/}
   

\mr is for math, you want \tf

Wolfgang

___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] groupedcommand italic and upright (MkIV)

2010-02-24 Thread Steffen Wolfrum

Am 24.02.2010 um 18:10 schrieb Wolfgang Schuster:

 Am 24.02.10 18:02, schrieb Steffen Wolfrum:
 Hi,
 
 in MkII the slash became set upright, in MkIV it stays italic:
 
 \def\Textit{\groupedcommand\it\/}
 \def\Textmr{\groupedcommand\mr\/}
   
 \mr is for math, you want \tf


Ah!


Thank you, Wolfgang.

Steffen
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


[NTG-context] \groupedcommand missing bracket

2010-02-19 Thread Steffen Wolfrum
Hi,

does someone know what's going wrong here?


\definestartstop[Literature] [before={\startcolumns[n=1]},after={\stopcolumns}]

\define\Colorit%
{\groupedcommand{\color[blue]\em}\/}

\starttext

This works:

test \Colorit{color} text.

This dont't:

\startLiterature
test \Colorit{color} text.
\stopLiterature

Why?

\stoptext



This gives:

! Missing } inserted.
inserted text 
}
to be read again 
   \endgroup 
\stopLiterature -\dostopattributes 
\egroup \getvalue {\??be Literature\c!af...
l.18 \stopLiterature

? 


Steffen
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] \groupedcommand missing bracket

2010-02-19 Thread Aditya Mahajan

On Fri, 19 Feb 2010, Steffen Wolfrum wrote:


Hi,

does someone know what's going wrong here?


\definestartstop[Literature] [before={\startcolumns[n=1]},after={\stopcolumns}]

\define\Colorit%
{\groupedcommand{\color[blue]\em}\/}

\starttext

This works:

test \Colorit{color} text.

This dont't:

\startLiterature
test \Colorit{color} text.
\stopLiterature

Why?


Not sure, but why not use the more canonical

\definestartstop[Colorit]
[color=blue,
 style=em]

(I believe it also does italic correction).

Aditya
___
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___