Re: [NTG-context] equivalent to \newcommand{...}{\ensuremath{...}}
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{...}}
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{...}}
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{...}}
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{...}}
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{...}}
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{...}}
> 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{...}}
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{...}}
> 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{...}}
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 ___