Hello, finally I got bold small caps with the attached module. It's certainly a bad hack, but unfortunately I don't know nothing about typescripts, variants and other details about fonts in ConTeXt (it looks too complicated to me...). If somebody knows a cleaner way, feel free to update the wiki. Cheers, Peter -- http://pmrb.free.fr/contact/
Peter Münster wrote:
Hello,
finally I got bold small caps with the attached module. It's certainly a bad hack, but unfortunately I don't know nothing about typescripts, variants and other details about fonts in ConTeXt (it looks too complicated to me...). If somebody knows a cleaner way, feel free to update the wiki.
I doubt there's a cleaner way (except that it's polite to start the definitions with something like \starttypescript [..?..] [computer-modern] [size]), but I noticed something else when I looked into your other file with support for bold typewriter: Hans, wouldn't it be time to do some clean-up on type-siz.tex? Why do all these definitions still refer to cmr? (I understand that cmr synonyms have to stay for backward compatibility, but not that their leftovers have to be used in the distribution source.) \definebodyfont [12pt] [rm] [tf=cmr12, bf=cmbx12, it=cmti12, sl=cmsl12, bi=cmbxti10 at 12pt, bs=cmbxsl10 at 12pt, sc=cmcsc10 at 12pt] OK, I know that they map further to lmr, but not all of them do (bold typewriter font doesn't for example). Why not using lmr names directly? Now I also finally understand why \bi never worked when trying to use it with \setupbodyfont[ss] or [tt]: \definebodyfont [12pt] [ss] [tf=cmss12, bf=cmssbx10 at 12pt, it=cmssi12, sl=cmssi12, bi=cmssbx10 at 12pt, bs=cmssbx10 at 12pt, sc=cmss10 at 12pt] bi= refers to cmssbx for example, which is only bold, not bold italic as it is supposed to be ("bi=LMSans10-BoldOblique at 12pt" or something similar, I guess?), probably because there was no bold italic sans available under cmr. Even worse situation with typewritter, where most switches aren't defined at all. Since there exists a bold and bold italic variant of typewritter, why not defining it, so that there would be no need to write additional modules for it? Bold small caps (for which Peter's module was written) don't exist in lmr (yet), so the module is still of interest, but I would be very grateful if these files could be completed to reflect the current state of lmr. I'm willing to help of nobody else is willing to fix that (I'm slow & not that I know much about fonts, but it seems that I'll have to learn more about typescripts anyway). I have no idea about how to scale the fonts properly and which design sizes to use for which font size, but if that can be copied from the current definitions ... Mojca PS to Peter: I would suggest you to write "author=Peter M\udiaeresis nster" instead of \enableregime[utf] in the header of your modules
On Thu, 29 Dec 2005, Mojca Miklavec wrote:
I doubt there's a cleaner way (except that it's polite to start the definitions with something like \starttypescript [..?..] [computer-modern] [size])
Hello Mojca, I know it and tried it, but without success. This is what I did: - moved t-cmscbf.tex to type-cmscbf.tex - used "\starttypescript [cmscbf] [computer-modern] [size]" inside the file - replaced "\usemodule[cmscbf]" by "\usetypescriptfile[type-cmscbf] \usetypescript[cmscbf]" That's the reason why I use modules now. But there are at least two other problems with the file (so there must be a cleaner way): - I would like to use LM wherever possible, but now even for normal \sc the CM fonts are used. - It would be better, to have just one command for all possible sizes. If you want 17.8pt, it wouldn't work until you add a \definebodyfont line...
PS to Peter: I would suggest you to write "author=Peter M\udiaeresis nster" instead of \enableregime[utf] in the header of your modules
I prefer to keep my source-code readable. I don't like my name written "M\udiaeresis nster", too ugly... ;-) Greetings, Peter -- http://pmrb.free.fr/contact/
Sorry, I didn't dare to post to the list since I know very little about fonts and I don't want to spam the list, but here are a couple of my thoughts. You can forward to the list if you want to discuss anything further there.
I doubt there's a cleaner way (except that it's polite to start the definitions with something like \starttypescript [..?..] [computer-modern] [size])
Hello Mojca, I know it and tried it, but without success. This is what I did: - moved t-cmscbf.tex to type-cmscbf.tex - used "\starttypescript [cmscbf] [computer-modern] [size]" inside the file - replaced "\usemodule[cmscbf]" by "\usetypescriptfile[type-cmscbf] \usetypescript[cmscbf]"
That's the reason why I use modules now.
A whole lot could be wrong (anyway: I learnt a lot from your example). Yesterday I noticed misbehaviour because I loaded those definitions before the definitions in the core were loaded, so that they were overwritten But if I would judge from the definitions in type-size, I don't see the reason why \starttypescript [cmscbf] [computer-modern] [size] \usetypescript[cmscbf] would work. Typscript name is computer-modern in your case, not cmscbf. cmscbf is only the variant, which can be mono/sans/serif/... which is invoked with \tt, \ss, \rm, ..., I don't know what happens to your nam, cmscbf, probably it saves that definitions to memory, but you can't invoke them in an elegant way. It surely is better to use modules unless Hans ads the definitions to the core, but in my opinion there must be a way to surround the definitions with \starttypescript.Don't ask me how. (I guess that you loded that file manually.)
But there are at least two other problems with the file (so there must be a cleaner way): - I would like to use LM wherever possible, but now even for normal \sc the CM fonts are used.
I get lmr for normal caps in your example. You can use the (lmcsc10 instead of cmcsc10) directly or create a synonym from cmr to lmr (already defined somewhere), but since it works OK here, I cannot test the wrong behaviour.
- It would be better, to have just one command for all possible sizes. If you want 17.8pt, it wouldn't work until you add a \definebodyfont line...
PS to Peter: I would suggest you to write "author=Peter M\udiaeresis nster" instead of \enableregime[utf] in the header of your modules
I prefer to keep my source-code readable. I don't like my name written "M\udiaeresis nster", too ugly... ;-)
I agree that it's ugly (M\"unster being slightly more readable), but consider it from someone else's point of view. I work with vim which generally supports utf-8 (some well-known editors such as WinEdt don't even support it), but from some unknown reason it has problems on this windows machine. Now it's configured so that it opens the documents in utf-8 (if it thinks they are utf-8 - encoded) and in cp1250 otherwise. Now I see author=Peter MĂĽnster in the header and the sample text that is supposed to be in il9 as Äö¤˝ćĽĆ (don't ask me what you'll see at the other side of your mail client, but I can imagine that the sample code in il9 is not valid for utf-8, so editors may have general problems to view it) The most weird thing is that you mix two different encodings within the same file. Mojca (no need to answer my stupid remarks)
On Fri, 30 Dec 2005, Mojca Miklavec wrote:
It surely is better to use modules unless Hans ads the definitions to the core, but in my opinion there must be a way to surround the definitions with \starttypescript.Don't ask me how.
Hello Mojca, it works, if the file is saved as "type-loc.tex", but then it's loaded for every user and I prefer to control, when it's loaded. It works then with "\starttypescript [mono] [computer-modern] [size]", "\starttypescript [cmttbf] [computer-modern] [size]" was just one of my hopeless tries ;)
But there are at least two other problems with the file (so there must be a cleaner way): - I would like to use LM wherever possible, but now even for normal \sc the CM fonts are used.
I get lmr for normal caps in your example.
You can use the (lmcsc10 instead of cmcsc10) directly or create a synonym from cmr to lmr (already defined somewhere), but since it works OK here, I cannot test the wrong behaviour.
When I use "lmcsc10" instead of cmcsc10, I get: ERROR: I can't find file `lmcsc10'. --- TeX said --- <*> ...=ljfzzz; mag:=1; nonstopmode; input lmcsc10 That's the reason, why I thought that cm was used instead of lm... But anyway, it's not so important, since the fonts look the same.
The most weird thing is that you mix two different encodings within the same file.
Yes, you're right! Just some explanation: Some time ago, I tried out utf with my editor and wrote some modules (t-construction-plan.tex and t-french.tex). But afterwards for some reasons I switched back to il9. The header of the new modules got copied and pasted from the older utf-modules, but since I work with il9 today, the rest is il9. I didn't change the header, because in any way I will switch all my stuff to utf in some weeks, today I'm just in a transitional phase... ;)
Mojca (no need to answer my stupid remarks)
Why are they stupid? Cheers, Peter -- http://pmrb.free.fr/contact/
Peter Münster wrote:
Hello,
finally I got bold small caps with the attached module. It's certainly a bad hack, but unfortunately I don't know nothing about typescripts, variants and other details about fonts in ConTeXt (it looks too complicated to me...). If somebody knows a cleaner way, feel free to update the wiki.
Hi Peter, This file boils down to a single equivalent command: \definebodyfont [15pt,14pt,13pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt] [sc] [bf=cmbcsc10 sa 1, tf=cmcsc10 sa 1] Please don't set \pdfpkresolution in the module, the user may have set it to different value already. Cheers, Taco
On Thu, 29 Dec 2005, Taco Hoekwater wrote:
This file boils down to a single equivalent command:
\definebodyfont [15pt,14pt,13pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt] [sc] [bf=cmbcsc10 sa 1, tf=cmcsc10 sa 1]
Thanks Taco, indeed much cleaner!
Please don't set \pdfpkresolution in the module, the user may have set it to different value already.
Alright, I'll change it. Cheers, Peter -- http://pmrb.free.fr/contact/
participants (3)
-
Mojca Miklavec
-
Peter Münster
-
Taco Hoekwater