Re: [NTG-context] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread j. van den hoff

On Tue, 09 Dec 2014 14:30:50 +0100, Hans Hagen  wrote:


On 12/9/2014 1:36 PM, j. van den hoff wrote:


since I'm really new to `context': are there any potential problems with
inserting white space in `\define' lines like `\define \Foo {
\mathematics{f(x)} }' which I might miss? `context' seems to ignore them
and they don't creep into the formatted output AFAICS (which is good).


in math mode spaces don't matter much

in definitions you can do this:

\starttexdefinition foo
 f
 o
 o
\stoptexdefinition

and get 'foo'

\starttexdefinition foo
\starttexdefinition unexanded foo
\starttexdefinition foo #1#2
\starttexdefinition unexpanded foo #1#2

in a mkvi document you can also say:

\starttexdefinition foo #first#second
\starttexdefinition unexpanded foo #first#second


thanks for clarifying this.


Hans


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



--
Using Opera's revolutionary email client: http://www.opera.com/mail/
___
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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread Peter Münster
On Tue, Dec 09 2014, Aditya Mahajan wrote:

> \definesynonyms[mathnotation][mathnotations][\infull]

Perhaps better: \inFull  ;)

-- 
   Peter
___
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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread j. van den hoff
On Tue, 09 Dec 2014 16:12:08 +0100, Aditya Mahajan   
wrote:



On Mon, 8 Dec 2014, j. van den hoff wrote:

new to `context' and my first question to the list: how can I achieve  
the following (`latex') behaviour:


\newcommand{\km}{\ensuremath{K_m}}
We can now use \km\ in the body text as well as in this
\begin{equation}
   \km = 1
\end{equation}
display equation.


As a side remark, you should normally avoid using lowercase commands  
like \km (especially if they are small) as you may inadvertently  
overwrite an inbuilt TeX command (e.g., if you redefine \span or \omit,  
amongst others). Unlike LaTeX, ConTeXt does not halt at the redefinition  
of these commands; it simply spews a warning. Personally, I find that a


is this behavior configurable (I think I'd rather prefer `latex' behavior  
here

and still use lowercase abbreviations until I hit a real names clash)

safer alternative is to use uppercase or camelcase words to define your  
own commands: either \KM or \Km. This way you avoid conflict with  
inbuilt commands.


understood.



If you are using macros for abbreviations, you can also use the  
following:


\definesynonyms[mathnotation][mathnotations][\infull]

\mathnotation [KM] {\mathematics{K_m}} {Viscosity of membrane}

\starttext

\placelistofmathnotations

\section{Test}

We can use \KM\ to denote \infull{KM}.

\startformula
   \KM = 10
\stopformula

\stoptext


really thanks a lot for this tip. this seems to be the way to go for any  
"serious" document. (and `viscosity of membrane' is tight, but not right:  
it's a metabolic rate (which could be influenced by membrane permeability)  
in my context ;-))


joerg



This way, you get a list of notation for free.

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
___



--
Using Opera's revolutionary email client: http://www.opera.com/mail/
___
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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread Aditya Mahajan

On Mon, 8 Dec 2014, j. van den hoff wrote:

new to `context' and my first question to the list: how can I achieve the 
following (`latex') behaviour:


\newcommand{\km}{\ensuremath{K_m}}
We can now use \km\ in the body text as well as in this
\begin{equation}
   \km = 1
\end{equation}
display equation.


As a side remark, you should normally avoid using lowercase commands like 
\km (especially if they are small) as you may inadvertently overwrite an 
inbuilt TeX command (e.g., if you redefine \span or \omit, amongst 
others). Unlike LaTeX, ConTeXt does not halt at the redefinition of these 
commands; it simply spews a warning. Personally, I find that a safer 
alternative is to use uppercase or camelcase words to define your own 
commands: either \KM or \Km. This way you avoid conflict with inbuilt 
commands.


If you are using macros for abbreviations, you can also use the following:

\definesynonyms[mathnotation][mathnotations][\infull]

\mathnotation [KM] {\mathematics{K_m}} {Viscosity of membrane}

\starttext

\placelistofmathnotations

\section{Test}

We can use \KM\ to denote \infull{KM}.

\startformula
  \KM = 10
\stopformula

\stoptext

This way, you get a list of notation for free.

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
___

Re: [NTG-context] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread Hans Hagen

On 12/9/2014 1:36 PM, j. van den hoff wrote:


since I'm really new to `context': are there any potential problems with
inserting white space in `\define' lines like `\define \Foo {
\mathematics{f(x)} }' which I might miss? `context' seems to ignore them
and they don't creep into the formatted output AFAICS (which is good).


in math mode spaces don't matter much

in definitions you can do this:

\starttexdefinition foo
f
o
o
\stoptexdefinition

and get 'foo'

\starttexdefinition foo
\starttexdefinition unexanded foo
\starttexdefinition foo #1#2
\starttexdefinition unexpanded foo #1#2

in a mkvi document you can also say:

\starttexdefinition foo #first#second
\starttexdefinition unexpanded foo #first#second

Hans


-
  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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread j. van den hoff
On Tue, 09 Dec 2014 10:05:22 +0100, Wolfgang Schuster  
 wrote:




Am 09.12.2014 um 09:59 schrieb j. van den hoff  
:


On Tue, 09 Dec 2014 09:42:03 +0100, Wolfgang Schuster  
mailto:schuster.wolfg...@gmail.com>>  
wrote:




Am 08.12.2014 um 17:41 schrieb j. van den hoff  
:


hi list,

new to `context' and my first question to the list: how can I achieve  
the following (`latex') behaviour:


\newcommand{\km}{\ensuremath{K_m}}
We can now use \km\ in the body text as well as in this
\begin{equation}
 \km = 1
\end{equation}
display equation.

in `context'? I've tried something like

\def\km{\math{K_m}}
We can now use \km\ in the body text but get sytnax errors when
putting it in this
\startformula
 \km = 1
\stopformula
formula.

but this fails for obvious reasons (as would using `$$' instead of  
`ensuremath' in the `latex' case).


so what I need is a way of defining (potentially complex)  
math-expressions via some shortcuts/definitions/macros/abbreviations  
(whatever) which I can then use
in the formula environment (or whatever it's called in `context'...)  
as well as in the body text.


any help appreciated,


In ConTeXt you have to write

   \define\km{\mathematics{K_m}}

but there is not much to gain from this because you can enter math  
mode in the text with \m{…}.


thanks for the response. in my silly example you are right (but even  
there it saves more than 50% of keystrokes). but I'm thinking of course  
of more tedious math expressions where it rapidly is handy to use such  
abbreviations -- the more so, if you have, say, 20 different ones  
appearing repeatedly in the document. but that would work with the  
`\def..\math' construct in the body text. what does _not_ work, then,  
is to use the definition in a display (\startformula...\stopformula)  
equation (which it _does_ in latex when isolating the math expression  
with `ensuremath'). so my real question(s) are:


1. is there any way to achieve the same functionality in `context'  
(expansion of math-containing defintion/macro/abbreviation in text  
_and_ math environment? if yes, how would I do this?


2. if no, would it be sensible (and feasible) to modify `\math'  
behaviour and to make it aware of whether it is called from within text  
or from within a display equation (in which case it should do  
nothing...), i.e.  mkae it behave like `\ensuremath' in latex?



1 + 2:

\define\Foo{\mathematics{f(x)}}
\define\Bar{\mathortext {f(x)}{\m{g(x)}}}

\starttext

a \Foo\ \Bar\ b

\startformula
\Foo\ \Bar
\stopformula

\stoptext


feeling silly: now it works (so there was no real problem in the first  
place...), but previously I definitely got syntax errors when compiling if  
the `\def'
was used in the display equation (no idea, why, but I must have overlooked  
some dumb typo or similar). anyway, sorry for the noise and thanks again...


since I'm really new to `context': are there any potential problems with  
inserting white space in `\define' lines like `\define \Foo {  
\mathematics{f(x)} }' which I might miss? `context' seems to ignore them  
and they don't creep into the formatted output AFAICS (which is good).


j.

ps: `\mathortext' is nice. should this not be in the manuals/documentation  
somewhere? it seems it is not ...




Wolfgang



--
Using Opera's revolutionary email client: http://www.opera.com/mail/
___
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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread Wolfgang Schuster

> Am 09.12.2014 um 09:59 schrieb j. van den hoff :
> 
> On Tue, 09 Dec 2014 09:42:03 +0100, Wolfgang Schuster 
> mailto:schuster.wolfg...@gmail.com>> wrote:
> 
>> 
>>> Am 08.12.2014 um 17:41 schrieb j. van den hoff :
>>> 
>>> hi list,
>>> 
>>> new to `context' and my first question to the list: how can I achieve the 
>>> following (`latex') behaviour:
>>> 
>>> \newcommand{\km}{\ensuremath{K_m}}
>>> We can now use \km\ in the body text as well as in this
>>> \begin{equation}
>>>  \km = 1
>>> \end{equation}
>>> display equation.
>>> 
>>> in `context'? I've tried something like
>>> 
>>> \def\km{\math{K_m}}
>>> We can now use \km\ in the body text but get sytnax errors when
>>> putting it in this
>>> \startformula
>>>  \km = 1
>>> \stopformula
>>> formula.
>>> 
>>> but this fails for obvious reasons (as would using `$$' instead of 
>>> `ensuremath' in the `latex' case).
>>> 
>>> so what I need is a way of defining (potentially complex) math-expressions 
>>> via some shortcuts/definitions/macros/abbreviations (whatever) which I can 
>>> then use
>>> in the formula environment (or whatever it's called in `context'...) as 
>>> well as in the body text.
>>> 
>>> any help appreciated,
>> 
>> In ConTeXt you have to write
>> 
>>\define\km{\mathematics{K_m}}
>> 
>> but there is not much to gain from this because you can enter math mode in 
>> the text with \m{…}.
> 
> thanks for the response. in my silly example you are right (but even there it 
> saves more than 50% of keystrokes). but I'm thinking of course of more 
> tedious math expressions where it rapidly is handy to use such abbreviations 
> -- the more so, if you have, say, 20 different ones appearing repeatedly in 
> the document. but that would work with the `\def..\math' construct in the 
> body text. what does _not_ work, then, is to use the definition in a display 
> (\startformula...\stopformula) equation (which it _does_ in latex when 
> isolating the math expression with `ensuremath'). so my real question(s) are:
> 
> 1. is there any way to achieve the same functionality in `context' (expansion 
> of math-containing defintion/macro/abbreviation in text _and_ math 
> environment? if yes, how would I do this?
> 
> 2. if no, would it be sensible (and feasible) to modify `\math' behaviour and 
> to make it aware of whether it is called from within text or from within a 
> display equation (in which case it should do nothing...), i.e.  mkae it 
> behave like `\ensuremath' in latex?


1 + 2:

\define\Foo{\mathematics{f(x)}}
\define\Bar{\mathortext {f(x)}{\m{g(x)}}}

\starttext

a \Foo\ \Bar\ b

\startformula
\Foo\ \Bar
\stopformula

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

Re: [NTG-context] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread j. van den hoff
On Tue, 09 Dec 2014 09:42:03 +0100, Wolfgang Schuster  
 wrote:




Am 08.12.2014 um 17:41 schrieb j. van den hoff  
:


hi list,

new to `context' and my first question to the list: how can I achieve  
the following (`latex') behaviour:


\newcommand{\km}{\ensuremath{K_m}}
We can now use \km\ in the body text as well as in this
\begin{equation}
  \km = 1
\end{equation}
display equation.

in `context'? I've tried something like

\def\km{\math{K_m}}
We can now use \km\ in the body text but get sytnax errors when
putting it in this
\startformula
  \km = 1
\stopformula
formula.

but this fails for obvious reasons (as would using `$$' instead of  
`ensuremath' in the `latex' case).


so what I need is a way of defining (potentially complex)  
math-expressions via some shortcuts/definitions/macros/abbreviations  
(whatever) which I can then use
in the formula environment (or whatever it's called in `context'...) as  
well as in the body text.


any help appreciated,


In ConTeXt you have to write

\define\km{\mathematics{K_m}}

but there is not much to gain from this because you can enter math mode  
in the text with \m{…}.


thanks for the response. in my silly example you are right (but even there  
it saves more than 50% of keystrokes). but I'm thinking of course of more  
tedious math expressions where it rapidly is handy to use such  
abbreviations -- the more so, if you have, say, 20 different ones  
appearing repeatedly in the document. but that would work with the  
`\def..\math' construct in the body text. what does _not_ work, then, is  
to use the definition in a display (\startformula...\stopformula) equation  
(which it _does_ in latex when isolating the math expression with  
`ensuremath'). so my real question(s) are:


1. is there any way to achieve the same functionality in `context'  
(expansion of math-containing defintion/macro/abbreviation in text _and_  
math environment? if yes, how would I do this?


2. if no, would it be sensible (and feasible) to modify `\math' behaviour  
and to make it aware of whether it is called from within text or from  
within a display equation (in which case it should do nothing...), i.e.   
mkae it behave like `\ensuremath' in latex?


thx/joerg



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
___



--
Using Opera's revolutionary email client: http://www.opera.com/mail/
___
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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread Wolfgang Schuster

> Am 08.12.2014 um 17:41 schrieb j. van den hoff :
> 
> hi list,
> 
> new to `context' and my first question to the list: how can I achieve the 
> following (`latex') behaviour:
> 
> \newcommand{\km}{\ensuremath{K_m}}
> We can now use \km\ in the body text as well as in this
> \begin{equation}
>   \km = 1
> \end{equation}
> display equation.
> 
> in `context'? I've tried something like
> 
> \def\km{\math{K_m}}
> We can now use \km\ in the body text but get sytnax errors when
> putting it in this
> \startformula
>   \km = 1
> \stopformula
> formula.
> 
> but this fails for obvious reasons (as would using `$$' instead of 
> `ensuremath' in the `latex' case).
> 
> so what I need is a way of defining (potentially complex) math-expressions 
> via some shortcuts/definitions/macros/abbreviations (whatever) which I can 
> then use
> in the formula environment (or whatever it's called in `context'...) as well 
> as in the body text.
> 
> any help appreciated,

In ConTeXt you have to write

\define\km{\mathematics{K_m}}

but there is not much to gain from this because you can enter math mode in the 
text with \m{…}.

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] equivalent to \newcommand{...}{\ensuremath{...}}

2014-12-09 Thread j. van den hoff

hi list,

new to `context' and my first question to the list: how can I achieve the  
following (`latex') behaviour:


\newcommand{\km}{\ensuremath{K_m}}
We can now use \km\ in the body text as well as in this
\begin{equation}
   \km = 1
\end{equation}
display equation.

in `context'? I've tried something like

\def\km{\math{K_m}}
We can now use \km\ in the body text but get sytnax errors when
putting it in this
\startformula
   \km = 1
\stopformula
formula.

but this fails for obvious reasons (as would using `$$' instead of  
`ensuremath' in the `latex' case).


so what I need is a way of defining (potentially complex) math-expressions  
via some shortcuts/definitions/macros/abbreviations (whatever) which I can  
then use
in the formula environment (or whatever it's called in `context'...) as  
well as in the body text.


any help appreciated,

joerg
--
Using Opera's revolutionary email client: http://www.opera.com/mail/
___
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
___