Re: [NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-10 Thread Wolfgang Schuster

Rudd, Kevin schrieb am 09.09.2020 um 17:32:

[Workable solution found]

After more exploration, the following seems to solve the problem of 
creating a simple 2x2 quad chart; thanks for the explanation that the 
\bTD requires a matching \eTD in the immediate (not future expanded) 
evaluation context. I prefer the \start* and \stop* model but for the 
moment this solution works for my current purpose. The good part is that 
it does abstract out the interface so that I can change it in the future 
without needing to change the slide text. I may investigate a better 
(parametrizable/reconfigurable) solution later if I end up needing a 
more complex paned-layout environment that doesn't need direct access to 
the TABLE (or some other more relevant) interface.


MWE demonstrator; there's other cruft in the actual definitions for my 
purposes.


\starttext
     \define\startPaneSlide{\bTABLE}
     \define\stopPaneSlide{\eTABLE}
     \long\def\PaneRow#1{\bTR #1 \eTR}
     \long\def\Pane#1{\bTD #1 \eTD}

     \startPaneSlide
         \PaneRow{\Pane{aaa bbb ccc ddd}\Pane{eee fff ggg hhh}}
         \PaneRow{\Pane{iii jjj kkk lll}\Pane{mmm nnn ooo ppp}}
     \stopPaneSlide
\stoptext


For very short texts like in your example you can use the short form of 
natural tables.


\starttext

\startTABLE
\NC aaa bbb ccc ddd \NC eee fff ggg hhh \NC\NR
\NC iii jjj kkk lll \NC mmm nnn ooo ppp \NC\NR
\stopTABLE

\stoptext

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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-09 Thread Rudd, Kevin
[Workable solution found]

After more exploration, the following seems to solve the problem of creating a 
simple 2x2 quad chart; thanks for the explanation that the \bTD requires a 
matching \eTD in the immediate (not future expanded) evaluation context. I 
prefer the \start* and \stop* model but for the moment this solution works for 
my current purpose. The good part is that it does abstract out the interface so 
that I can change it in the future without needing to change the slide text. I 
may investigate a better (parametrizable/reconfigurable) solution later if I 
end up needing a more complex paned-layout environment that doesn't need direct 
access to the TABLE (or some other more relevant) interface.

MWE demonstrator; there's other cruft in the actual definitions for my purposes.

\starttext
\define\startPaneSlide{\bTABLE}
\define\stopPaneSlide{\eTABLE}
\long\def\PaneRow#1{\bTR #1 \eTR}
\long\def\Pane#1{\bTD #1 \eTD}

\startPaneSlide
\PaneRow{\Pane{aaa bbb ccc ddd}\Pane{eee fff ggg hhh}}
\PaneRow{\Pane{iii jjj kkk lll}\Pane{mmm nnn ooo ppp}}
\stopPaneSlide
\stoptext


Kevin W. Rudd, Ph.D.
CAPT, USN (Ret)

Computer Architecture & Computer Engineering
Advanced Computing Systems (ACS) Research Program
Laboratory for Physical Sciences (LPS)

443-654-7878
ke...@lps.umd.edu<mailto:ke...@lps.umd.edu>

Visiting Research Professor
United States Naval Academy

r...@usna.edu<mailto:r...@usna.edu>


On Sep 9, 2020, at 09:02, Rudd, Kevin 
mailto:ke...@lps.umd.edu>> wrote:

True. There is also a

 \define\continuePaneRow{\eTD\bTD}

definition as well for that reason but that wasn't necessary for the MWE to 
(fail while) embed(ing) TABLE elements in macros.

Is it the case that I can bundle at least the table setup commands to avoid 
some level of replication? Or is there a better way to creat the various table 
begin--end pairs that is cleaner?

Thanks,
---K

Kevin W. Rudd, Ph.D.
CAPT, USN (Ret)
Computer Architecture & Computer Engineering (CACE)
Advanced Computing Systems (ACS) Research Program
Laboratory for Physical Sciences (LPS)
443-654-7878
ke...@lps.umd.edu<mailto:ke...@lps.umd.edu>
Visiting Research Professor
Electrical and Computer Engineering
United States Naval Academy
r...@usna.edu<mailto:r...@usna.edu>


From: Wolfgang Schuster 
mailto:wolfgang.schuster.li...@gmail.com>>
Sent: Wednesday, September 9, 2020 1:57:36 AM
To: Rudd, Kevin mailto:ke...@lps.umd.edu>>
Cc: mailing list for ConTeXt users 
mailto:ntg-context@ntg.nl>>
Subject: Re: [NTG-context] problem embedding TABLE macros within wrapper macros 
"to reduce repetitive complexity")

Rudd, Kevin schrieb am 09.09.2020 um 00:30:
Thanks. The immediate goal is to make a �quad chart� w/ different pains in 
the four (2x2 => NW, NE, SW, SE) quadrants. It seemed that the concept was 
scalable to any NxM (even with multi-cell spreads---useful for larger 
structured posters) based on TABLE. But I'd settle for 2x2 at the moment; at 
one point I'd thought of 2x2+1 having a spanning block for publication 
references per slide but decided a separate publications slide was a better 
idea visualy..

If they have to see an end command, would before/after tags work around a 
framedtext or buffer structure?

1. 2x2 panes, layout order not important, all panes independent; no flow (like 
Framemaker used to do) requiredbetween panes.
2. was going to have inner frames (i.e. + frame for 2x2 which was trivial to 
specify in TABLE) to separate the panes
3. other than wanting the + frame, inner margins  for panes wsn't an issue 
either way.

When you need one than single block per line this definition

\define\startPaneRow{bTR\bTD}
\define\stopPaneRow{\eTD\eTR}

doesn't make sense because you limit yourself and after each table cell there 
is a new row.

While you can write code which moves your blocks around you should ask yourself 
the question is it worth it. When you have only two or three posters in this 
format use the extra commands for table rows and cells because it takes more 
time to write something which does the work.

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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-09 Thread Rudd, Kevin
True. There is also a

 \define\continuePaneRow{\eTD\bTD}

definition as well for that reason but that wasn't necessary for the MWE to 
(fail while) embed(ing) TABLE elements in macros.

Is it the case that I can bundle at least the table setup commands to avoid 
some level of replication? Or is there a better way to creat the various table 
begin--end pairs that is cleaner?

Thanks,
---K

Kevin W. Rudd, Ph.D.
CAPT, USN (Ret)
Computer Architecture & Computer Engineering (CACE)
Advanced Computing Systems (ACS) Research Program
Laboratory for Physical Sciences (LPS)
443-654-7878
ke...@lps.umd.edu
Visiting Research Professor
Electrical and Computer Engineering
United States Naval Academy
r...@usna.edu


From: Wolfgang Schuster 
Sent: Wednesday, September 9, 2020 1:57:36 AM
To: Rudd, Kevin 
Cc: mailing list for ConTeXt users 
Subject: Re: [NTG-context] problem embedding TABLE macros within wrapper macros 
"to reduce repetitive complexity")

Rudd, Kevin schrieb am 09.09.2020 um 00:30:
Thanks. The immediate goal is to make a �quad chart� w/ different pains in 
the four (2x2 => NW, NE, SW, SE) quadrants. It seemed that the concept was 
scalable to any NxM (even with multi-cell spreads---useful for larger 
structured posters) based on TABLE. But I'd settle for 2x2 at the moment; at 
one point I'd thought of 2x2+1 having a spanning block for publication 
references per slide but decided a separate publications slide was a better 
idea visualy..

If they have to see an end command, would before/after tags work around a 
framedtext or buffer structure?

1. 2x2 panes, layout order not important, all panes independent; no flow (like 
Framemaker used to do) requiredbetween panes.
2. was going to have inner frames (i.e. + frame for 2x2 which was trivial to 
specify in TABLE) to separate the panes
3. other than wanting the + frame, inner margins  for panes wsn't an issue 
either way.

When you need one than single block per line this definition

\define\startPaneRow{bTR\bTD}
\define\stopPaneRow{\eTD\eTR}

doesn't make sense because you limit yourself and after each table cell there 
is a new row.

While you can write code which moves your blocks around you should ask yourself 
the question is it worth it. When you have only two or three posters in this 
format use the extra commands for table rows and cells because it takes more 
time to write something which does the work.

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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-08 Thread Wolfgang Schuster

Rudd, Kevin schrieb am 09.09.2020 um 00:30:
Thanks. The immediate goal is to make a ”quad chart” w/ different 
pains in the four (2x2 => NW, NE, SW, SE) quadrants. It seemed that 
the concept was scalable to any NxM (even with multi-cell 
spreads---useful for larger structured posters) based on TABLE. But 
I'd settle for 2x2 at the moment; at one point I'd thought of 2x2+1 
having a spanning block for publication references per slide but 
decided a separate publications slide was a better idea visualy..


If they have to see an end command, would before/after tags work 
around a framedtext or buffer structure?


1. 2x2 panes, layout order not important, all panes independent; no 
flow (like Framemaker used to do) requiredbetween panes.
2. was going to have inner frames (i.e. + frame for 2x2 which was 
trivial to specify in TABLE) to separate the panes
3. other than wanting the + frame, inner margins  for panes wsn't 
an issue either way.


When you need one than single block per line this definition

\define\startPaneRow{bTR\bTD}
\define\stopPaneRow{\eTD\eTR}

doesn't make sense because you limit yourself and after each table cell 
there is a new row.


While you can write code which moves your blocks around you should ask 
yourself the question is it worth it. When you have only two or three 
posters in this format use the extra commands for table rows and cells 
because it takes more time to write something which does the work.


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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-08 Thread Rudd, Kevin
Thanks. The immediate goal is to make a ”quad chart” w/ different pains in the 
four (2x2 => NW, NE, SW, SE) quadrants. It seemed that the concept was scalable 
to any NxM (even with multi-cell spreads---useful for larger structured 
posters) based on TABLE. But I'd settle for 2x2 at the moment; at one point I'd 
thought of 2x2+1 having a spanning block for publication references per slide 
but decided a separate publications slide was a better idea visualy..

If they have to see an end command, would before/after tags work around a 
framedtext or buffer structure?

1. 2x2 panes, layout order not important, all panes independent; no flow (like 
Framemaker used to do) requiredbetween panes.
2. was going to have inner frames (i.e. + frame for 2x2 which was trivial to 
specify in TABLE) to separate the panes
3. other than wanting the + frame, inner margins  for panes wsn't an issue 
either way.

Best,
---K

Kevin W. Rudd, Ph.D.
CAPT, USN (Ret)
Computer Architecture & Engineering (CAE)
Advanced Computing Systems (ACS) Research Program
Laboratory for Physical Sciences (LPS)
443-654-7878
ke...@lps.umd.edu
Visiting Research Professor
Electrical and Computer Engineering
United States Naval Academy
r...@usna.edu

From: Wolfgang Schuster 
Sent: Tuesday, September 8, 2020 4:31:38 PM
To: mailing list for ConTeXt users 
Cc: Rudd, Kevin 
Subject: Re: [NTG-context] problem embedding TABLE macros within wrapper macros 
"to reduce repetitive complexity")

Rudd, Kevin schrieb am 08.09.2020 um 19:50:
I have a number of slides using \...framedtext blocks to break the slides into 
panes within a TABLE environment (TMI: not in MWE; merely my justification for 
writing the wrapper macros). When the TABLE macros are invoked explicitly it 
all works fine and produces a suitable single-cell table with "quux blech baz 
bar foo" framed; when embedded in macros (whether defined by \def, 
\unexpanded\def, \define) then it fails with the error "The file ended when 
scanning an argument. => fatal error: return code: 256. A previous question on 
the topic seemed to indicate that TABLE was suitable, so I figure that 
something subtle is wrong as I've invoked the embedded TABLE macros. Any 
suggestions?

While most natural tables command can be embedded within other command the 
cells have to see the end command.

I guess this shouldn't be a problem for your case because something simpler can 
be used to create your desired layout but you have to provide more information:

1. Are there blocks side by side or do you stack them only vertically?

2. Do you need a frame around each block?

3. Are (small) gaps between the blocks allowed?

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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-08 Thread Wolfgang Schuster

Rudd, Kevin schrieb am 08.09.2020 um 19:50:
I have a number of slides using \...framedtext blocks to break the 
slides into panes within a TABLE environment (TMI: not in MWE; merely 
my justification for writing the wrapper macros). When the TABLE 
macros are invoked explicitly it all works fine and produces a 
suitable single-cell table with "quux blech baz bar foo" framed; when 
embedded in macros (whether defined by \def, \unexpanded\def, \define) 
then it fails with the error "The file ended when scanning an 
argument. => fatal error: return code: 256. A previous question on the 
topic seemed to indicate that TABLE was suitable, so I figure that 
something subtle is wrong as I've invoked the embedded TABLE macros. 
Any suggestions?


While most natural tables command can be embedded within other command 
the cells have to see the end command.


I guess this shouldn't be a problem for your case because something 
simpler can be used to create your desired layout but you have to 
provide more information:


1. Are there blocks side by side or do you stack them only vertically?

2. Do you need a frame around each block?

3. Are (small) gaps between the blocks allowed?

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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


[NTG-context] problem embedding TABLE macros within wrapper macros "to reduce repetitive complexity")

2020-09-08 Thread Rudd, Kevin
I have a number of slides using \...framedtext blocks to break the slides into 
panes within a TABLE environment (TMI: not in MWE; merely my justification for 
writing the wrapper macros). When the TABLE macros are invoked explicitly it 
all works fine and produces a suitable single-cell table with "quux blech baz 
bar foo" framed; when embedded in macros (whether defined by \def, 
\unexpanded\def, \define) then it fails with the error "The file ended when 
scanning an argument. => fatal error: return code: 256. A previous question on 
the topic seemed to indicate that TABLE was suitable, so I figure that 
something subtle is wrong as I've invoked the embedded TABLE macros. Any 
suggestions?

Many thanks,
 ---K

MWE: this code fails if the \...PaneSlide block is uncommented, succeeds if 
commented out.

\define\startPaneSlide{\bTABLE}
\define\startPaneRow{bTR\bTD}
\define\stopPaneRow{\eTD\eTR}
\define\stopPaneSlide{\eTABLE}

\starttext
\bTABLE
\bTR\bTD
quux blech baz bar foo
\eTD\eTR
\eTABLE

\startPaneSlide
\startPaneRow
foo bar baz blech quux
\stopPaneRow
\stopPaneSlide
\stoptext

Kevin W. Rudd, Ph.D.
CAPT, USN (Ret)

Computer Architecture & Computer Engineering
Advanced Computing Systems (ACS) Research Program
Laboratory for Physical Sciences (LPS)

443-654-7878
ke...@lps.umd.edu

Visiting Research Professor
United States Naval Academy

r...@usna.edu


___
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
___