Re: [NTG-context] Adding custom key/value pairs

2008-04-17 Thread Taco Hoekwater


Wolfgang Schuster wrote:
 
 Can't the abstract just placed after the text has been set with
 \start/\stopabstract.

Better not, because placement and spacing around and between
and relative ordering of abstracts and keywords are often bound
to very specific rules. Rules you don't want to burden users
with, like

   if there is an english abstract, it should come before the
german abstract. If there are freestyle keywords on top of the
required classifications, they should follow the abstracts with
a space above of 12pt and below of 12ot, otherwise there should
be space below the classifications of 24pt, unless a motto
(see below) is also given.

You get the idea? Journal editors can be evil bastards sometimes

Best wishes,
Taco
___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-17 Thread Wolfgang Schuster
On Tue, Apr 15, 2008 at 5:34 PM, Aditya Mahajan [EMAIL PROTECTED] wrote:
 Hi Wolfgang,


 On Tue, 15 Apr 2008, Wolfgang Schuster wrote:

  On Mon, Apr 14, 2008 at 6:11 PM, Aditya Mahajan [EMAIL PROTECTED] wrote:
  On Mon, 14 Apr 2008, Taco Hoekwater wrote:
 
  Wolfgang Schuster wrote:
 
  Why not, I have nothing against a few predefined title pages layouts.
 
  Somewhat related: it would be nice if there was some common code for
  titles (books as well as articles).
 
  [snip]
 
  Anyway, the maps module contains all the code to do everything. And
  the same is true for the TUG module. And for quite a few others I have
  laying around. Lots of duplicate code all over, so a common framework
  would be great. I've been meaning to write one for a long time, but
  somehow I never quite get around to actually doing it.
 
  Just saying this to let you know that I would really welcome a module
  with commands like \setuptitle, \definetitle, and \placetitle.
 
  I agree with that. It will be really nice to have a module that does a few
  simple titles (alternate=(a|b|c), etc.) For one of my personal modules,
  I was following something along the lines of the maps module. But I find
  Wolfgang's solution on the wiki to be more ConTeXtish than what all other
  modules use.
 
  Hi Aditya,
 
  could you use a few lines what do you expect from a 
  placetitle/placetitlepage
  command or a titlepage environment.

 Some of the things that I use \placetitle for:

 * Writing academic papers. Currenly, I have a macro that I use like this:

 \article
[title ={...},
 author={...},
publication={...},% This just goes to pdf subtitle
date={...},
bottom={...}, %text placed at page bottom,
  %usually current revision number
thanks={...}, %placed on the footer of the first page
]

 \startabstract
 ...
 \stopabstract

 \startkeywords
 
 \stopkeywords

 The abstract environment places a head (Abstract) followed by its
 content. The formatting depends on whether it is a journal article, or a
 conference article.

 keyword also places a head followed by its content.

 Currently, what I have is that \article places all its contents, and so do
 abstract and keyword. So, I do not have to store anything.

 * TUGBoat articles: This uses a style file originally by Hans, which I
 have modified considerably, but still uses the same interface.

 This uses

 \setvariables
[tugboat]
[title={...},
 author={...},
 address={...},
 email={...},
 year={...},
 volume={..},
 number={...},
 page={...}]

 The title and the author go to the document title. The address and email
 go at the end of the article. The year, volume, number, and page go to the
 header and footer of the article.

 The rest of the article is somethng like

 \starttext
 \startArticle

 \startAbstract
 
 \stopAbstract
 ...

 \stopArticle
 \stoptext

 This structure is the reason I think something like \setuptitle (or
 \setupdocumenttitle) is needed.

 * Practex journal, which uses

 http://wiki.contextgarden.net/Modules/Pracjourn

 * My Ways which use

 http://wiki.contextgarden.net/Modules/MyWay

 * and finally Maps which use

 http://wiki.contextgarden.net/Modules/Maps

 

 Notice that almost all of them so similar things, but in slightly
 different manner. What I wish for is a common interface, and I really like
 your idea of \setuptitle. In fact, I think that something like that should
 be part of the core.

I module should be enogh for the start, makes it easier to test without
the need to create a new relase or replace one of the core files and to
generate a new format file.

 The module does not need to take care of all the formatting requirements:
 just provide the interface. For a particular publications, the module for
 that publication can modify the \placetitle command to do what they want.
 With this, the user documentation can just say that use

 \setuptitle[title=...,author=..., date=] %and maybe setups={...}

 So, we will have a consistent user inteferface for all documents.

  What should we do with the abstract, did it depend on the document title ...

 In general, the formatting of the abstract will depend on the kind of the
 document. Just need something like

 \definetitlesubstructure% or something more appropriate
   [abstract]
   [headtext={Abstract},
headstyle=bold,
headcolor=blue,
headalign=middle,
inbetween=\blank,%between the head and the body
style=small, %for the contents
color=black, %for the contents
   ]

I would replace headetext with \setuphead[abstract] and the format
for the table of content (is this what do you mean with for the content)
with \setuplist but should abstract use a own command to place the
title \definehead[abstract]  or can we use one of the predefined ones
(title -- new page or subject -- if you need a abstract in different languages
on one page).

 This should 

Re: [NTG-context] Adding custom key/value pairs

2008-04-15 Thread Aditya Mahajan
Hi Wolfgang,

On Tue, 15 Apr 2008, Wolfgang Schuster wrote:

 On Mon, Apr 14, 2008 at 6:11 PM, Aditya Mahajan [EMAIL PROTECTED] wrote:
 On Mon, 14 Apr 2008, Taco Hoekwater wrote:

 Wolfgang Schuster wrote:

 Why not, I have nothing against a few predefined title pages layouts.

 Somewhat related: it would be nice if there was some common code for
 titles (books as well as articles).

 [snip]

 Anyway, the maps module contains all the code to do everything. And
 the same is true for the TUG module. And for quite a few others I have
 laying around. Lots of duplicate code all over, so a common framework
 would be great. I've been meaning to write one for a long time, but
 somehow I never quite get around to actually doing it.

 Just saying this to let you know that I would really welcome a module
 with commands like \setuptitle, \definetitle, and \placetitle.

 I agree with that. It will be really nice to have a module that does a few
 simple titles (alternate=(a|b|c), etc.) For one of my personal modules,
 I was following something along the lines of the maps module. But I find
 Wolfgang's solution on the wiki to be more ConTeXtish than what all other
 modules use.

 Hi Aditya,

 could you use a few lines what do you expect from a placetitle/placetitlepage
 command or a titlepage environment.

Some of the things that I use \placetitle for:

* Writing academic papers. Currenly, I have a macro that I use like this:

\article
[title ={...},
 author={...},
publication={...},% This just goes to pdf subtitle
date={...},
bottom={...}, %text placed at page bottom,
  %usually current revision number
thanks={...}, %placed on the footer of the first page
]

\startabstract
...
\stopabstract

\startkeywords

\stopkeywords

The abstract environment places a head (Abstract) followed by its 
content. The formatting depends on whether it is a journal article, or a 
conference article.

keyword also places a head followed by its content.

Currently, what I have is that \article places all its contents, and so do 
abstract and keyword. So, I do not have to store anything.

* TUGBoat articles: This uses a style file originally by Hans, which I 
have modified considerably, but still uses the same interface.

This uses

\setvariables
[tugboat]
[title={...},
 author={...},
 address={...},
 email={...},
 year={...},
 volume={..},
 number={...},
 page={...}]

The title and the author go to the document title. The address and email 
go at the end of the article. The year, volume, number, and page go to the 
header and footer of the article.

The rest of the article is somethng like

\starttext
\startArticle

\startAbstract

\stopAbstract
...

\stopArticle
\stoptext

This structure is the reason I think something like \setuptitle (or 
\setupdocumenttitle) is needed.

* Practex journal, which uses

http://wiki.contextgarden.net/Modules/Pracjourn

* My Ways which use

http://wiki.contextgarden.net/Modules/MyWay

* and finally Maps which use

http://wiki.contextgarden.net/Modules/Maps



Notice that almost all of them so similar things, but in slightly 
different manner. What I wish for is a common interface, and I really like 
your idea of \setuptitle. In fact, I think that something like that should 
be part of the core.

The module does not need to take care of all the formatting requirements: 
just provide the interface. For a particular publications, the module for 
that publication can modify the \placetitle command to do what they want. 
With this, the user documentation can just say that use

\setuptitle[title=...,author=..., date=] %and maybe setups={...}

So, we will have a consistent user inteferface for all documents.

 What should we do with the abstract, did it depend on the document title ...

In general, the formatting of the abstract will depend on the kind of the 
document. Just need something like

\definetitlesubstructure% or something more appropriate
   [abstract]
   [headtext={Abstract},
headstyle=bold,
headcolor=blue,
headalign=middle,
inbetween=\blank,%between the head and the body
style=small, %for the contents
color=black, %for the contents
   ]

This should define a command that captures its contents, and provides a 
command \placetitlesubstructure[abstract].

Similarly, we can define

\definetitlesubstructure
   [keywords]
   []

Then, \placetitlesubstructure[abstract] and 
\placetitlesubstracutre[keywords] and go in the after={...} key of 
\setuptitle.

As I said before, the module just needs to collect the information, and 
provide one or two simple styles. Once the information is collected, it is 
easy to use other keys (e.g. thanks key in my first case) and let the user 
define a setups that take of how to handle those keys.

Aditya
___
If your question is 

Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Olivier Guéry
  Thanks Taco, that was exactly what I needed.

  Cheers,
  Rory

Can you post the good syntax you use, or put it on the wiki ?

Cheers,
Olivier.

-- 
[Message tapé sur un clavier Bépo : http://www.clavier-dvorak.org ]
Olivier [EMAIL PROTECTED] http://nemolivier.blogspot.com
___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Olivier Guéry
On Mon, Apr 14, 2008 at 12:18 PM, Wolfgang Schuster
[EMAIL PROTECTED] wrote:
 On Mon, Apr 14, 2008 at 11:56 AM, Olivier Guéry [EMAIL PROTECTED] wrote:
 Thanks Taco, that was exactly what I needed.
   
 Cheers,
 Rory
  
   Can you post the good syntax you use, or put it on the wiki ?

  What do you mean.

  What he use use is already on the wiki and he midified it only it only.

  
 http://wiki.contextgarden.net/Document_Titles#In_ConTeXt:_A_more_advanced_solution

Sorry I was thinking that there were more differences between the two.
Having various example on the wiki can  be great, to have idears… for
« normal » users like me !
But I understand that it's not totally necessary.

Regards,
Olivier.

-- 
[Message tapé sur un clavier Bépo : http://www.clavier-dvorak.org ]
Olivier [EMAIL PROTECTED] http://nemolivier.blogspot.com
___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Wolfgang Schuster
On Mon, Apr 14, 2008 at 12:34 PM, Olivier Guéry [EMAIL PROTECTED] wrote:

 On Mon, Apr 14, 2008 at 12:18 PM, Wolfgang Schuster
 [EMAIL PROTECTED] wrote:
  On Mon, Apr 14, 2008 at 11:56 AM, Olivier Guéry [EMAIL PROTECTED] wrote:
  Thanks Taco, that was exactly what I needed.

  Cheers,
  Rory
   
Can you post the good syntax you use, or put it on the wiki ?
 
   What do you mean.
 
   What he use use is already on the wiki and he midified it only it only.
 
   
  http://wiki.contextgarden.net/Document_Titles#In_ConTeXt:_A_more_advanced_solution

 Sorry I was thinking that there were more differences between the two.
 Having various example on the wiki can  be great, to have idears… for
 « normal » users like me !

It is easy to add a alternative key to setuptitle to switch between
different results.

I think the following link is something for you, I could make a module and
provide a few title page styles.

http://www.ctan.org/tex-archive/info/latex-samples/

 But I understand that it's not totally necessary.

Why not, I have nothing against a few predefined title pages layouts.

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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Wolfgang Schuster
On Mon, Apr 14, 2008 at 11:56 AM, Olivier Guéry [EMAIL PROTECTED] wrote:
   Thanks Taco, that was exactly what I needed.
 
   Cheers,
   Rory

 Can you post the good syntax you use, or put it on the wiki ?

What do you mean.

What he use use is already on the wiki and he midified it only it only.

http://wiki.contextgarden.net/Document_Titles#In_ConTeXt:_A_more_advanced_solution

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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Taco Hoekwater
Wolfgang Schuster wrote:
 
 Why not, I have nothing against a few predefined title pages layouts.

Somewhat related: it would be nice if there was some common code for
titles (books as well as articles). The Maps module currently defines
an article in this fashion:

\starttext
\startArticle
   [Title=...,
Author=...,
RunningAuthor=...] % etc. etc.

\startAbstract
... abstract ...
\stopAbstract

\startKeywords
... comma-separated keywords ...
\stopKeywords

... body ...

\stopArticle
\stoptext

Obvious weak point: the Abstract / Keywords are too late to influence
typesetting of the title (page). Of course that could be fixed by using
named buffers and/or an explicit \maketitle-like command.

Anyway, the maps module contains all the code to do everything. And
the same is true for the TUG module. And for quite a few others I have 
laying around. Lots of duplicate code all over, so a common framework
would be great. I've been meaning to write one for a long time, but
somehow I never quite get around to actually doing it.

Just saying this to let you know that I would really welcome a module
with commands like \setuptitle, \definetitle, and \placetitle.

Best wishes,
Taco
___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Wolfgang Schuster
On Mon, Apr 14, 2008 at 1:20 PM, Taco Hoekwater [EMAIL PROTECTED] wrote:
 Wolfgang Schuster wrote:
 
  Why not, I have nothing against a few predefined title pages layouts.

 Somewhat related: it would be nice if there was some common code for
 titles (books as well as articles). The Maps module currently defines
 an article in this fashion:

\starttext
\startArticle
   [Title=...,
Author=...,
RunningAuthor=...] % etc. etc.

\startAbstract
... abstract ...
\stopAbstract

\startKeywords
... comma-separated keywords ...
\stopKeywords

... body ...

\stopArticle
\stoptext

I never thought of them, good to have someone mention this.

 Obvious weak point: the Abstract / Keywords are too late to influence
 typesetting of the title (page). Of course that could be fixed by using
 named buffers and/or an explicit \maketitle-like command.

Something like:

\def\startabstract
  {\dostartbuffer[abstract][startabstract][stopabstract]}

\startsetups titlepage

  \getbuffer[abstract]

\stopsetups

\def\starttitlepage
  {\begingroup
   \placetitle}

\def\stoptitlepage
  {\setups{titlepage}
   \endgroup}


\setuptitle
  [author=...,
   title=...]

or

\starttitlepage
  [author=...,
   title=...]

\startabstract
...
\stopabstract

...

\stoptitlepage

 Anyway, the maps module contains all the code to do everything. And
 the same is true for the TUG module. And for quite a few others I have
 laying around. Lots of duplicate code all over, so a common framework
 would be great. I've been meaning to write one for a long time, but
 somehow I never quite get around to actually doing it.

To many ideas and too less time and motivation :-)

 Just saying this to let you know that I would really welcome a module
 with commands like \setuptitle, \definetitle, and \placetitle.

Greetings
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-14 Thread Aditya Mahajan
On Mon, 14 Apr 2008, Taco Hoekwater wrote:

 Wolfgang Schuster wrote:

 Why not, I have nothing against a few predefined title pages layouts.

 Somewhat related: it would be nice if there was some common code for
 titles (books as well as articles).

 [snip]

 Anyway, the maps module contains all the code to do everything. And
 the same is true for the TUG module. And for quite a few others I have
 laying around. Lots of duplicate code all over, so a common framework
 would be great. I've been meaning to write one for a long time, but
 somehow I never quite get around to actually doing it.

 Just saying this to let you know that I would really welcome a module
 with commands like \setuptitle, \definetitle, and \placetitle.

I agree with that. It will be really nice to have a module that does a few 
simple titles (alternate=(a|b|c), etc.) For one of my personal modules, 
I was following something along the lines of the maps module. But I find 
Wolfgang's solution on the wiki to be more ConTeXtish than what all other 
modules use.

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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Adding custom key/value pairs

2008-04-13 Thread Taco Hoekwater
Rory Molinari wrote:

 \startvariables all
degree: degree
 \stopvariables

\c!... commands (keys) are created by \startconstants,
\v!... commands (enumerated values) by \startvariables.

So:

   \startconstants all
  degree: degree
   \stopconstants

you also have a few smaller problems with the definitions
like missing \unprotects etc, but the above is the key to
getting it working.

Best wishes,
Taco
___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


[NTG-context] Adding custom key/value pairs

2008-04-12 Thread Rory Molinari
Hi,

I'm new to ConTeXt and decided to teach myself a bit by resetting my 
old thesis (originally done, many years ago, in LaTeX).  As the purpose 
is to teach myself ConTeXt rather than just have an electronic version 
of the thesis I decided to try to do things the right way.

So, in setting the title page I followed the pattern shown on 
Contextgarden here: http://wiki.contextgarden.net/Document_Titles.  
That page shows how to define a nice \placetitle command with an 
associated \setuptitle which allows us to define values for title, 
subject, and date.  However, I want also to be able to define values 
for degree, subject, and committee (to follow the school-standard LaTeX 
style file I had from all those years ago).  I can't work out how to do 
this.

Simply using a variable like \c!degree (to match the \c!title I found 
in the example) doesn't work, as ConTeXt doesn't know about such a 
control sequence.  I was quite puzzled for a while but then it dawned 
on me that the example I found on contextgarden works because the keys 
it uses (for key/value pairs) are ones that are already defined in the 
ConTeXt system: title, subject, date.  My attempt fails because the 
system doesn't know about degree, subject, and committee.

I tried defining a new variable with startvariables, but that didn't 
appear to help.

So, my question: what do I need to do to define a new key that can be 
used in a key/value pair?


Here's an example of what I tried:


\startvariables all
   degree: degree
\stopvariables

\definesystemvariable{tp}  % title page

\def\setuptitlepage{\dodoubleempty\dosetuptitlepage}

\def\dosetuptitlepage[#1][#2]%
   {\ifsecondargument
  \dodosetuptitlepage[#1][#2]%
\else
  \dodosetuptitlepage[\v!content][#1]%
\fi}

\def\dodosetuptitlepage[#1][#2]%
   {\def\dododosetuptitlepage##1%
  {\getparameters[\??tp##1][#2]}%
\processcommalist[#1]\dododosetuptitlepage}

\def\placetitlepage
   {\startalignment[\v!middle]
 \doattributes{\??tp\c!degree}\c!style\c!color\@@tpcontentdegree
 \stopalignment}

\setuptitlepage
   [\c!degree]
   [\c!style=\tfa,\c!color=]

\startfrontmatter
\placetitlepage
\stopfrontmatter

\starttext
\stoptext


Cheers,
Rory

___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___