From: "Demián Gutierrez" <dmi@minotauro.com.ve>
To: ntg-context@ntg.nl
Subject: Making a template, defining a macro
Date: Wed, 30 Jul 2008 18:18:56 -0500 [thread overview]
Message-ID: <20080730181856.utckzb62zo8s0c8o@webmail.opentransfer.com> (raw)
Hi,
I have to prepare a template to typeset a document that will have a
lot of tables of similar kinds repeated across the document. I want to
put that tables in some kind of templates, so I can use those
templates over and over. So the idea is to hide to the authors all the
format details behind the template allowing them to focus on the data
that has to be filled in those tables (which is the important thing).
So, I would like to define some macros, that allows me to do something like:
\starttableX
\startSomeField
Some Field Value...
\stopSomeField
\startOtherField
Other Field Value...
\stopOtherField
\stoptableX
And the result, should be a table like this:
| Some Field Label: | Some Field Value... |
| Other Field Label: | Other Field Value... |
That way I define a template for each table type I'll have in the document.
I'm not having trouble with the tables, but with the macro definition,
this is my approximation of what I want (which does not work):
\startsetups crudmain
\long\def\startguiname #1 \stopguiname{\setvariables[crudmain][guiname=#1]}
\long\def\startclassname #1
\stopclassname{\setvariables[crudmain][classname=#1]}
GUI Name: \getvariable{crudmain}{guiname}
Class Name: \getvariable{crudmain}{classname}
\stopsetups
\definestartstop[crudmain][commands=\setups{crudmain}]
\startcrudmain
\startguiname
Some name here...
\stopguiname
\startclassname
Other name here...
\stopclassname
\stopcrudmain
At this point I'm getting this error:
! Use of \startguiname doesn't match its definition.
I want the \long\def\startguiname inside the \startsetups /
\stopsetups to be sure that it will only be called inside the
\startcrudmain / \stopcrudmain (Cause other tables of different types
may have fields with the same name). But even considering the previous
point, if I move the \long\def\startguiname outside the \startsetups /
\stopsetups definition it does not works, because the
\getvariable{crudmain}{guiname} just returns blank.
So is it possible to do what I want or something similar? What would
be a good way to do it? Any advice on the code I've already written?
This is really getting me crazy, cause context is not like any other
programming language I'm used to use ;-)
Thanks in Advance
Demián
___________________________________________________________________________________
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
___________________________________________________________________________________
next reply other threads:[~2008-07-30 23:18 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-30 23:18 Demián Gutierrez [this message]
2008-07-31 6:37 ` Wolfgang Schuster
2008-07-31 13:59 Demián Gutierrez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080730181856.utckzb62zo8s0c8o@webmail.opentransfer.com \
--to=dmi@minotauro.com.ve \
--cc=ntg-context@ntg.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).