Re: [NTG-context] textblocks in tables

2007-03-18 Thread Wolfgang Schuster
On Sat, 17 Mar 2007 17:22:39 +0100
Bernhard Michael [EMAIL PROTECTED] wrote:

  
  Hi Michael,
  
  I found a very ugly solution to reset the \Requirement counter.
  
 
 Hi Wolfgang
 
 Thanks for the solution. It works for me too.
 
 However the page breaking problem remains. The tabulate environment and the 
 natural table produce both to large 'cells' containing all textblocks.
 
 It would be really nice to have a solution where I can typeset the to 
 textblocks (Requirements and Priority) in a list, each block in a cell.
 
 I don't understand why I can't place arbitrary commands in the 'begin' and 
 'after' fields of '\setupblock'. Does the '\useblocks' command not produce 
 plain TeX-Code in iterative fashion (like a for-loop over all textblocks)?
 
 Is there somebody in the list, who already had a similar problem?
 
 Michael
 

Hi Michael,

I looked a little bit into the code for blocks (core-blk.tex) and it
seems to be impossible with the current implementation.

The before and after commands do not realy put their content at the
begin and end of a block.

I made a small solution that did what you want more or less.
The \usemyblocks read the content from the output file jobname.tub and
process the content between \thisisblock and \thiswasblock. The version
below takes every block between these two commands and put them into
boxes. To improve this macro you can make a test if the current
environment it reads is a Requirement or a Priority and put it
dependent of the bloxk into the left and right box or to make a empty
block if one of them is misssing.

\unprotect

\chardef\myblockcount\zeropoint

\def\usemyblocks
  {\bgroup
   \long\def\thisisblock##1##2[]##3\thiswasblock##4%
 {\ifcase\myblockcount
\global\chardef\myblockcount\plusone
\hbox\bgroup
\vbox\bgroup
  \hsize6cm
  ##3
  \egroup
\column
  \or
\global\chardef\myblockcount\zeropoint
\vbox\bgroup
  \hsize1cm
  ##3\dontleavehmode\vfill
  \egroup
  \egroup
  \fi}
   \readfile{\jobname.tub}\donothing\donothing
   \egroup}

\protect

\defineenumeration[Requirement]
\defineblock[Requirement,Priority]

\starttext

\beginRequirement
\Requirement A requirement \par
\endRequirement
\beginPriority
Text
\endPriority

\beginRequirement
\Requirement A requirement \par
\endRequirement
\beginPriority
Text
\endPriority

\bgroup
\setbox0\hbox
  {\Requirement text \par
   \resetRequirement}
\egroup

\usemyblocks

\stoptext

Wolfgang
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] textblocks in tables

2007-03-17 Thread Bernhard Michael
 
 Hi Michael,
 
 I found a very ugly solution to reset the \Requirement counter.
 

Hi Wolfgang

Thanks for the solution. It works for me too.

However the page breaking problem remains. The tabulate environment and the 
natural table produce both to large 'cells' containing all textblocks.

It would be really nice to have a solution where I can typeset the to 
textblocks (Requirements and Priority) in a list, each block in a cell.

I don't understand why I can't place arbitrary commands in the 'begin' and 
'after' fields of '\setupblock'. Does the '\useblocks' command not produce 
plain TeX-Code in iterative fashion (like a for-loop over all textblocks)?

Is there somebody in the list, who already had a similar problem?

Michael
winmail.dat___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


[NTG-context] textblocks in tables

2007-03-16 Thread Bernhard Michael
Hi list

After writing some documents in LaTeX I discovered ConTeX. It's a great macro 
package for TeX. It gives me the flexibility I missed with LaTeX.

However it isn't that easy to start with :-) Especially when some advanced 
functionality is needed...

I write a document where I have to describe requirements. I want to give these 
requirements a running number over all chapters and I also need to prioritise 
them.

My idea is to describe the requirements in several chapter. At the end I want 
to list all the requirements together with their priority.

I tried the following code but unfortunately it didn't work:

\defineenumeration[Requirement][location=left,text=Req,width=broad,after={\blank[small]}]
\defineblock[Requirement,Priority]
\setupblock[Requirement][after=]
\hideblocks[Priority]

\starttext

\chapter{Description of requirements}

\beginRequirement
\Requirement A requirement \par
\endRequirement
\beginPriority
A
\endPriority
Description of the requirement.

\beginRequirement
\Requirement An other requirement \par
\endRequirement
\beginPriority
C
\endPriority
Description of the requirement.

\chapter{Additional requirements}

\beginRequirement
\Requirement An additional requirement \par
\endRequirement
\beginPriority
B
\endPriority
Description of the requirement.

\beginRequirement
\subRequirement A sub requirement \par
\endRequirement
\beginPriority
C
\endPriority
Description of the requirement.

\chapter{Summary of requirements}
% Here I would like to list all requirements with their priorities in a table
% I tried something like this but it didn't work
\reset[Requirement]
\setupblock[Requirement][before=\HL\VL,after=]
\setupblock[Priority][before=\VL,after=\VL\MR
\starttable[|l|c|]
\useblocks[Requirement,Priority]
\stoptable

\stoptext

Is it possible to use text blocks within tables or does an other way exists to 
do the same thing? It doesn’t have to be a table necessarily. I need some sort 
of compact listing.

Thanks in advance for your help!

Michael
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] textblocks in tables

2007-03-16 Thread Wolfgang Schuster
On Fri, 16 Mar 2007 09:41:50 +0100
Bernhard Michael [EMAIL PROTECTED] wrote:

 Hi list
 
 After writing some documents in LaTeX I discovered ConTeX. It's a great macro 
 package for TeX. It gives me the flexibility I missed with LaTeX.
 
 However it isn't that easy to start with :-) Especially when some advanced 
 functionality is needed...
 
 I write a document where I have to describe requirements. I want to give 
 these requirements a running number over all chapters and I also need to 
 prioritise them.
 
 My idea is to describe the requirements in several chapter. At the end I want 
 to list all the requirements together with their priority.
 
 I tried the following code but unfortunately it didn't work:
 
 \defineenumeration[Requirement][location=left,text=Req,width=broad,after={\blank[small]}]
 \defineblock[Requirement,Priority]
 \setupblock[Requirement][after=]
 \hideblocks[Priority]
 
 \starttext
 
 \chapter{Description of requirements}
 
 \beginRequirement
 \Requirement A requirement \par
 \endRequirement
 \beginPriority
 A
 \endPriority
 Description of the requirement.
 
 \beginRequirement
 \Requirement An other requirement \par
 \endRequirement
 \beginPriority
 C
 \endPriority
 Description of the requirement.
 
 \chapter{Additional requirements}
 
 \beginRequirement
 \Requirement An additional requirement \par
 \endRequirement
 \beginPriority
 B
 \endPriority
 Description of the requirement.
 
 \beginRequirement
 \subRequirement A sub requirement \par
 \endRequirement
 \beginPriority
 C
 \endPriority
 Description of the requirement.
 
 \chapter{Summary of requirements}
 % Here I would like to list all requirements with their priorities in a table
 % I tried something like this but it didn't work
 \reset[Requirement]
 \setupblock[Requirement][before=\HL\VL,after=]
 \setupblock[Priority][before=\VL,after=\VL\MR
 \starttable[|l|c|]
 \useblocks[Requirement,Priority]
 \stoptable
 
 \stoptext
 
 Is it possible to use text blocks within tables or does an other way exists 
 to do the same thing? It doesn’t have to be a table necessarily. I need some 
 sort of compact listing.
 
 Thanks in advance for your help!
 
 Michael
 

Hi Michael,

using natural tables instead of the normal table environment works.

\bTABLE
  \bTR
\bTD\useblocks[Requirement]\eTD
\bTD\useblocks[Priority]\eTD
  \eTR
\eTABLE

Wolfgang
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] textblocks in tables

2007-03-16 Thread Bernhard Michael
Wolfgang, thank you for your answer!

However I suppose that it doesn't completely solve my problem. I think this 
solution makes a table with two huge cells. I couldn't make horizontal lines 
after every line and table splitting doesn't seem to work either (I have a lot 
of requirements).

Is there an other way to solve my problem with tables? I'd really like to 
automate the process because copy and paste the text is very error prone.

I looked at paragraphs as well but I didn't succeed. I thought inserting the 
necessary commands in the 'begin' and 'after' property of the textblock would 
'generate' me correct ConTeXt code.

There is an other problem: The command \resetRequirement doesn't work. I need 
to reset the counter because the numbering must be the same like in the 
chapters before. I tried the code at live.contextgarden.net.

Tanks for your help!

Michael


Wolfgang Schuster wrote:
 On Fri, 16 Mar 2007 09:41:50 +0100
 Bernhard Michael [EMAIL PROTECTED] wrote:
 
 Hi list

 After writing some documents in LaTeX I discovered ConTeX. It's a great 
 macro package for TeX. It gives me the flexibility I missed with LaTeX.

 However it isn't that easy to start with :-) Especially when some advanced 
 functionality is needed...

 I write a document where I have to describe requirements. I want to give 
 these requirements a running number over all chapters and I also need to 
 prioritise them.

 My idea is to describe the requirements in several chapter. At the end I 
 want to list all the requirements together with their priority.

 I tried the following code but unfortunately it didn't work:

 \defineenumeration[Requirement][location=left,text=Req,width=broad,after={\blank[small]}]
 \defineblock[Requirement,Priority]
 \setupblock[Requirement][after=]
 \hideblocks[Priority]

 \starttext

 \chapter{Description of requirements}

 \beginRequirement
 \Requirement A requirement \par
 \endRequirement
 \beginPriority
 A
 \endPriority
 Description of the requirement.

 \beginRequirement
 \Requirement An other requirement \par
 \endRequirement
 \beginPriority
 C
 \endPriority
 Description of the requirement.

 \chapter{Additional requirements}

 \beginRequirement
 \Requirement An additional requirement \par
 \endRequirement
 \beginPriority
 B
 \endPriority
 Description of the requirement.

 \beginRequirement
 \subRequirement A sub requirement \par
 \endRequirement
 \beginPriority
 C
 \endPriority
 Description of the requirement.

 \chapter{Summary of requirements}
 % Here I would like to list all requirements with their priorities in a table
 % I tried something like this but it didn't work
 \reset[Requirement]
 \setupblock[Requirement][before=\HL\VL,after=]
 \setupblock[Priority][before=\VL,after=\VL\MR
 \starttable[|l|c|]
 \useblocks[Requirement,Priority]
 \stoptable

 \stoptext

 Is it possible to use text blocks within tables or does an other way exists 
 to do the same thing? It doesn’t have to be a table necessarily. I need some 
 sort of compact listing.

 Thanks in advance for your help!

 Michael

 
 Hi Michael,
 
 using natural tables instead of the normal table environment works.
 
 \bTABLE
   \bTR
 \bTD\useblocks[Requirement]\eTD
 \bTD\useblocks[Priority]\eTD
   \eTR
 \eTABLE
 
 Wolfgang
 ___
 ntg-context mailing list
 ntg-context@ntg.nl
 http://www.ntg.nl/mailman/listinfo/ntg-context

winmail.dat___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] textblocks in tables

2007-03-16 Thread Wolfgang Schuster
On Fri, 16 Mar 2007 15:29:30 +0100
Bernhard Michael [EMAIL PROTECTED] wrote:

 Wolfgang, thank you for your answer!
 
 However I suppose that it doesn't completely solve my problem. I think this 
 solution makes a table with two huge cells. I couldn't make horizontal lines 
 after every line and table splitting doesn't seem to work either (I have a 
 lot of requirements).
 
 Is there an other way to solve my problem with tables? I'd really like to 
 automate the process because copy and paste the text is very error prone.
 
 I looked at paragraphs as well but I didn't succeed. I thought inserting the 
 necessary commands in the 'begin' and 'after' property of the textblock would 
 'generate' me correct ConTeXt code.
 
 There is an other problem: The command \resetRequirement doesn't work. I need 
 to reset the counter because the numbering must be the same like in the 
 chapters before. I tried the code at live.contextgarden.net.
 
 Tanks for your help!
 
 Michael
 

Hi Michael,

another way to place the summary at the end of your document.

\starttabulate[|p(8cm)|p(1cm)|]
\NC\useblocks[Requirement]
\NC\useblocks[Priority]
\NC\NR
\stoptabulate

I saw also the problem with the reset of the enumeration in my file but
I don't know where the problem is.

Wolfgang

 
 Wolfgang Schuster wrote:
  On Fri, 16 Mar 2007 09:41:50 +0100
  Bernhard Michael [EMAIL PROTECTED] wrote:
  
  Hi list
 
  After writing some documents in LaTeX I discovered ConTeX. It's a great 
  macro package for TeX. It gives me the flexibility I missed with LaTeX.
 
  However it isn't that easy to start with :-) Especially when some advanced 
  functionality is needed...
 
  I write a document where I have to describe requirements. I want to give 
  these requirements a running number over all chapters and I also need to 
  prioritise them.
 
  My idea is to describe the requirements in several chapter. At the end I 
  want to list all the requirements together with their priority.
 
  I tried the following code but unfortunately it didn't work:
 
  \defineenumeration[Requirement][location=left,text=Req,width=broad,after={\blank[small]}]
  \defineblock[Requirement,Priority]
  \setupblock[Requirement][after=]
  \hideblocks[Priority]
 
  \starttext
 
  \chapter{Description of requirements}
 
  \beginRequirement
  \Requirement A requirement \par
  \endRequirement
  \beginPriority
  A
  \endPriority
  Description of the requirement.
 
  \beginRequirement
  \Requirement An other requirement \par
  \endRequirement
  \beginPriority
  C
  \endPriority
  Description of the requirement.
 
  \chapter{Additional requirements}
 
  \beginRequirement
  \Requirement An additional requirement \par
  \endRequirement
  \beginPriority
  B
  \endPriority
  Description of the requirement.
 
  \beginRequirement
  \subRequirement A sub requirement \par
  \endRequirement
  \beginPriority
  C
  \endPriority
  Description of the requirement.
 
  \chapter{Summary of requirements}
  % Here I would like to list all requirements with their priorities in a 
  table
  % I tried something like this but it didn't work
  \reset[Requirement]
  \setupblock[Requirement][before=\HL\VL,after=]
  \setupblock[Priority][before=\VL,after=\VL\MR
  \starttable[|l|c|]
  \useblocks[Requirement,Priority]
  \stoptable
 
  \stoptext
 
  Is it possible to use text blocks within tables or does an other way 
  exists to do the same thing? It doesn’t have to be a table necessarily. I 
  need some sort of compact listing.
 
  Thanks in advance for your help!
 
  Michael
 
  
  Hi Michael,
  
  using natural tables instead of the normal table environment works.
  
  \bTABLE
\bTR
  \bTD\useblocks[Requirement]\eTD
  \bTD\useblocks[Priority]\eTD
\eTR
  \eTABLE
  
  Wolfgang
  ___
  ntg-context mailing list
  ntg-context@ntg.nl
  http://www.ntg.nl/mailman/listinfo/ntg-context
 
 
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] textblocks in tables

2007-03-16 Thread Bernhard Michael
Well, the result looks promising. The page breaking doesn't work however. 

An other idea: Is it possible to modify the line-spacing, that the 'Priority'
block is printed on the same line as the 'Requirement' block. This would 
preserve 
the page breaking because there is no \start \stop something.

The command \resetRequirement has to work, otherwise the whole effort is 
useless.

Wolfgang, thank you again for your quick answer.

Michael

Wolfgang Schuster wrote:
 On Fri, 16 Mar 2007 15:29:30 +0100
 Bernhard Michael [EMAIL PROTECTED] wrote:
 
 Wolfgang, thank you for your answer!

 However I suppose that it doesn't completely solve my problem. I think this 
 solution makes a table with two huge cells. I couldn't make horizontal lines 
 after every line and table splitting doesn't seem to work either (I have a 
 lot of requirements).

 Is there an other way to solve my problem with tables? I'd really like to 
 automate the process because copy and paste the text is very error prone.

 I looked at paragraphs as well but I didn't succeed. I thought inserting the 
 necessary commands in the 'begin' and 'after' property of the textblock 
 would 'generate' me correct ConTeXt code.

 There is an other problem: The command \resetRequirement doesn't work. I 
 need to reset the counter because the numbering must be the same like in the 
 chapters before. I tried the code at live.contextgarden.net.

 Tanks for your help!

 Michael

 
 Hi Michael,
 
 another way to place the summary at the end of your document.
 
 \starttabulate[|p(8cm)|p(1cm)|]
 \NC\useblocks[Requirement]
 \NC\useblocks[Priority]
 \NC\NR
 \stoptabulate
 
 I saw also the problem with the reset of the enumeration in my file but
 I don't know where the problem is.
 
 Wolfgang
 
 Wolfgang Schuster wrote:
 On Fri, 16 Mar 2007 09:41:50 +0100
 Bernhard Michael [EMAIL PROTECTED] wrote:

 Hi list

 After writing some documents in LaTeX I discovered ConTeX. It's a great 
 macro package for TeX. It gives me the flexibility I missed with LaTeX.

 However it isn't that easy to start with :-) Especially when some advanced 
 functionality is needed...

 I write a document where I have to describe requirements. I want to give 
 these requirements a running number over all chapters and I also need to 
 prioritise them.

 My idea is to describe the requirements in several chapter. At the end I 
 want to list all the requirements together with their priority.

 I tried the following code but unfortunately it didn't work:

 \defineenumeration[Requirement][location=left,text=Req,width=broad,after={\blank[small]}]
 \defineblock[Requirement,Priority]
 \setupblock[Requirement][after=]
 \hideblocks[Priority]

 \starttext

 \chapter{Description of requirements}

 \beginRequirement
 \Requirement A requirement \par
 \endRequirement
 \beginPriority
 A
 \endPriority
 Description of the requirement.

 \beginRequirement
 \Requirement An other requirement \par
 \endRequirement
 \beginPriority
 C
 \endPriority
 Description of the requirement.

 \chapter{Additional requirements}

 \beginRequirement
 \Requirement An additional requirement \par
 \endRequirement
 \beginPriority
 B
 \endPriority
 Description of the requirement.

 \beginRequirement
 \subRequirement A sub requirement \par
 \endRequirement
 \beginPriority
 C
 \endPriority
 Description of the requirement.

 \chapter{Summary of requirements}
 % Here I would like to list all requirements with their priorities in a 
 table
 % I tried something like this but it didn't work
 \reset[Requirement]
 \setupblock[Requirement][before=\HL\VL,after=]
 \setupblock[Priority][before=\VL,after=\VL\MR
 \starttable[|l|c|]
 \useblocks[Requirement,Priority]
 \stoptable

 \stoptext

 Is it possible to use text blocks within tables or does an other way 
 exists to do the same thing? It doesn’t have to be a table necessarily. I 
 need some sort of compact listing.

 Thanks in advance for your help!

 Michael

 Hi Michael,

 using natural tables instead of the normal table environment works.

 \bTABLE
   \bTR
 \bTD\useblocks[Requirement]\eTD
 \bTD\useblocks[Priority]\eTD
   \eTR
 \eTABLE

 Wolfgang
 ___
 ntg-context mailing list
 ntg-context@ntg.nl
 http://www.ntg.nl/mailman/listinfo/ntg-context

 ___
 ntg-context mailing list
 ntg-context@ntg.nl
 http://www.ntg.nl/mailman/listinfo/ntg-context
winmail.dat___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] textblocks in tables

2007-03-16 Thread Wolfgang Schuster
On Fri, 16 Mar 2007 17:05:03 +0100
Bernhard Michael [EMAIL PROTECTED] wrote:

 Well, the result looks promising. The page breaking doesn't work however. 
 
 An other idea: Is it possible to modify the line-spacing, that the 'Priority'
 block is printed on the same line as the 'Requirement' block. This would 
 preserve 
 the page breaking because there is no \start \stop something.
 
 The command \resetRequirement has to work, otherwise the whole effort is 
 useless.
 
 Wolfgang, thank you again for your quick answer.
 
 Michael

Hi Michael,

I found a very ugly solution to reset the \Requirement counter.

\defineenumeration[Requirement]
\defineblock[Requirement]

\starttext

\beginRequirement
\Requirement A requirement \par
\endRequirement

\bgroup
\setbox0\hbox
  {\Requirement text \par
   \resetRequirement}
\egroup

\useblocks[Requirement]

\stoptext

I think the problem has something to do with global and local values of
the \Requirement number.

Wolfgang
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context