Dear gang, What is the official way to get old style numerals in 11pt in mkiv? I'm just using lm. Thnx in advance! Best Idris -- Professor Idris Samawi Hamid, Editor-in-Chief International Journal of Shi`i Studies Department of Philosophy Colorado State University Fort Collins, CO 80523 -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
On Mon, 31 Dec 2007 01:50:04 -0700
"Idris Samawi Hamid"
Dear gang,
What is the official way to get old style numerals in 11pt in mkiv? I'm just using lm.
It depends what do you want to achieve, local changes can be done with \os, but this will use numbers from the math font. Mark IV has a new the new option "fontfeatures" and you can use this to get the oldstyle numbers from the latin modern OT fonts. Option one is to redefine \os to use the numbers from the main font, you have to put the following command in your document, \def\os{\setfontfeature{oldstyle}}, option two is to write \setfontfeature{oldstyle} in the preamble of your document and ConTeXt use oldstyle numbers by default if present in the current font. There is currently no better way to enable oldstyle number for the whole document except you define your own typescripts and use them.
Thnx in advance!
Best Idris
Wolfgang
Hi Wolfgang,
On Tue, 01 Jan 2008 16:09:16 -0700, Wolfgang Schuster
What is the official way to get old style numerals in 11pt in mkiv? I'm just using lm.
It depends what do you want to achieve, local changes can be done with \os, but this will use numbers from the math font.
That's exactly why \os is almost useless (it messes up itemizations and other stuff); better to \switchtotypeface, even for local changes.
option two is to write \setfontfeature{oldstyle} in the preamble of your document and ConTeXt use oldstyle numbers by default if present in the current font.
You also have to define "oldstyle" :-) ========================================== % engine=luatex \definefontfeature [oldstyle] [mode=node,language=dflt,script=latn,onum=yes,tnum=yes] \setfontfeature{oldstyle} \starttext 1234567890 \stoptext ==========================================
There is currently no better way to enable oldstyle number for the whole document except you define your own typescripts and use them.
I spent hours today writing and debugging a huge typescript for lm (all those optical sizes, since i could not for the life of me get it to piggy-back the def's in type-siz). I just got it working flawlessly a few minutes ago -- sublime, a work of art even -- then I get your message which would have saved me hours of work! I just needed that one command!!! You're an angel, just wish I got this this morning ;-) Best wishes Idris PS Note that tnum (tabular version) looks better than onum alone, but is a function of onum in the font so cannot be invoked unless onum is invoked first. -- Professor Idris Samawi Hamid, Editor-in-Chief International Journal of Shi`i Studies Department of Philosophy Colorado State University Fort Collins, CO 80523 -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
On Tue, 01 Jan 2008 19:56:10 -0700
"Idris Samawi Hamid"
Hi Wolfgang,
On Tue, 01 Jan 2008 16:09:16 -0700, Wolfgang Schuster
wrote: What is the official way to get old style numerals in 11pt in mkiv? I'm just using lm.
It depends what do you want to achieve, local changes can be done with \os, but this will use numbers from the math font.
That's exactly why \os is almost useless (it messes up itemizations and other stuff); better to \switchtotypeface, even for local changes.
option two is to write \setfontfeature{oldstyle} in the preamble of your document and ConTeXt use oldstyle numbers by default if present in the current font.
You also have to define "oldstyle" :-)
No, you don't have to, because oldstyle is predefined in type-ini.tex, two other predefined fontfeatures are "default" and "smallcaps" :-)
========================================== % engine=luatex
\definefontfeature [oldstyle] [mode=node,language=dflt,script=latn,onum=yes,tnum=yes]
\setfontfeature{oldstyle}
\starttext
1234567890
\stoptext ==========================================
There is currently no better way to enable oldstyle number for the whole document except you define your own typescripts and use them.
I spent hours today writing and debugging a huge typescript for lm (all those optical sizes, since i could not for the life of me get it to piggy-back the def's in type-siz). I just got it working flawlessly a few minutes ago -- sublime, a work of art even -- then I get your message which would have saved me hours of work! I just needed that one command!!!
You're an angel, just wish I got this this morning ;-)
Best wishes Idris
PS Note that tnum (tabular version) looks better than onum alone, but is a function of onum in the font so cannot be invoked unless onum is invoked first.
\definefontfeature[onum][onum=yes] \definefontfeature[lnum][lnum=yes] \definefontfeature[tnum][tnum=yes,onum=yes] \definefontfeature[pnum][pnum=yes] \starttext \setfontfeature{onum}123456789\par \setfontfeature{lnum}123456789\par \setfontfeature{tnum}123456789\par \setfontfeature{pnum}123456789\par \stoptext Wolfgang
On Wed, 02 Jan 2008 01:37:08 -0700, Wolfgang Schuster
You also have to define "oldstyle" :-)
No, you don't have to, because oldstyle is predefined in type-ini.tex, two other predefined fontfeatures are "default" and "smallcaps" :-)
Did you try it? worketh not ;-)
========================================== % engine=luatex
\setfontfeature{oldstyle} \starttext test 1234567890 \stoptext
==========================================
There is currently no better way to enable oldstyle number for the whole document except you define your own typescripts and use them.
I spent hours today writing and debugging a huge typescript for lm (all those optical sizes, since i could not for the life of me get it to piggy-back the def's in type-siz). I just got it working flawlessly a few minutes ago -- sublime, a work of art even -- then I get your message which would have saved me hours of work! I just needed that one command!!!
You're an angel, just wish I got this this morning ;-)
Best wishes Idris
PS Note that tnum (tabular version) looks better than onum alone, but is a function of onum in the font so cannot be invoked unless onum is invoked first.
\definefontfeature[tnum][tnum=yes,onum=yes]
Hmm, I assumed the order would be [onum=yes,tnum=yes], or does the order not matter? Best wishes Idris -- Professor Idris Samawi Hamid, Editor-in-Chief International Journal of Shi`i Studies Department of Philosophy Colorado State University Fort Collins, CO 80523 -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
On Wed, 02 Jan 2008 07:40:33 -0700
"Idris Samawi Hamid"
On Wed, 02 Jan 2008 01:37:08 -0700, Wolfgang Schuster
wrote: You also have to define "oldstyle" :-)
No, you don't have to, because oldstyle is predefined in type-ini.tex, two other predefined fontfeatures are "default" and "smallcaps" :-)
Did you try it? worketh not ;-)
It did work for me but I got a error message for the next line, <errormessage> error: ...2tex/share/texmf-local/tex/context/base/font-otf.lua:2018: attempt to index field 'description' (a nil value) . l.12 ? </errormessage> My testfile: 01 % engine=luatex 02 03 \definefontfeature 04 [oldstyle] 05 [liga=yes,kern=yes,tlig=yes,trep=yes,onum=yes] % texligatures=yes,texquotes=yes 06 07 \setfontfeature{oldstyle} 08 09 \starttext 10 11 123456789 12 13 \stoptext I could set "tlig=no" and the error message vanishes.
========================================== % engine=luatex
\setfontfeature{oldstyle}
\starttext
test
1234567890
\stoptext
PS Note that tnum (tabular version) looks better than onum alone, but is a function of onum in the font so cannot be invoked unless onum is invoked first.
\definefontfeature[tnum][tnum=yes,onum=yes]
Hmm, I assumed the order would be [onum=yes,tnum=yes], or does the order not matter?
I think not in this case, but a few OpenType features disable other (e.g. onum and lnum) and the order could be in souch a case. Wolfgang
Idris Samawi Hamid wrote:
On Wed, 02 Jan 2008 01:37:08 -0700, Wolfgang Schuster
wrote: You also have to define "oldstyle" :-) No, you don't have to, because oldstyle is predefined in type-ini.tex, two other predefined fontfeatures are "default" and "smallcaps" :-)
Did you try it? worketh not ;-)
========================================== % engine=luatex
\setfontfeature{oldstyle}
\starttext
test
1234567890
\stoptext
Possibly because the predefined one does not have "mode=node", which seems important. I get: error: /opt/tex/texmf-local/tex/context/base/font-otf.lua:2019: attempt to index field 'description' (a nil value) followed by an assertion error. Best wishes, Taco
participants (3)
-
Idris Samawi Hamid
-
Taco Hoekwater
-
Wolfgang Schuster