Hi, gang
I hope this does not come too late:-)

I have been using cmr for my work in the humanities up to now, and I
have had to tweak things in sometimes satisfactory and other times less
unsatisfactory ways. Here are some suggestions for the upcoming Latin
Modern if it's not too late:

1. Make old-style numerals the default. This improves cmr for use in the
humanities so much I'm almost surprised Knuth did not at least make a
global old-style option.

Alan Hoenig has made fontinst files for a virtual cmros; I have made a
complete typescript for it, including a way to manage the bold case, for
which Knuth only made a 10-point oldstyle size. I will present this
package to the ConTeXt list in the coming days. There is still a small
bug in cmros: it occasionally treats punctuation marks as part of the
word when hyphenating, but otherwise I'm quite satisfied with it.

2. The main things I personally need are diacritics for transliteration.
I'm using amateurish macros right now but a global font solution would
be so much better. I'm including some of my own definitions which don't
work in all circumstances. I especially have problems when switching
from upright to slanted positions:

a. a crescent under the letter `h':

\def\h#1{\oalign{#1\crcr\hidewidth\SHIFT{34}%
    \vbox to.2ex{\hbox{\char'25}\vss}\hidewidth}}

example: `\v Sa\h h'  is a scientific transliteration of `Shaykh', based
on the German ZDMG system.

b. The two glottal stops use a special left and right apostrophe
respectively. When the following letter is capitalized the apostrophe
must be higher. Once again, I have problems getting things consistent
from upright to slanted

%%=====================ayn-hamzah====================

\def\SHIFT#1{\dimen0=.00#1ex \multiply\dimen0 by\fontdimen1\font
    \kern-.0156\dimen0} % compensate for slant/italic in lower accents

\def\USHIFT#1{\dimen0=.00#1ex \multiply\dimen0 by\fontdimen1\font
             \kern.0156\dimen0} % compensate for slant/italic in upper
accents

\def\talign#1{\leavevmode\vtop{\baselineskip0pt \lineskip-2.05ex
  \ialign{##\crcr#1\crcr}}}

\def\ttalign#1{\leavevmode\vtop{\baselineskip0pt \lineskip-2.22ex
  \ialign{##\crcr#1\crcr}}}

\def\lowalign#1{\leavevmode\vtop{\baselineskip0pt \lineskip-1.25ex
  \ialign{##\crcr#1\crcr}}}

\def\highalign#1{\leavevmode\vtop{\baselineskip0pt \lineskip-1.60ex
  \ialign{##\crcr#1\crcr}}}

\def\LowKernH{\kern-1.15ex}

\def\LowKernA{\kern-1.2ex}

\def\HighKern{\kern-1.4ex}

\def\LowHamzah#1{\lowalign{#1\crcr\hidewidth\USHIFT{12}%
    \vbox to.2ex{\hbox{\the\textfont1\LowKernH\char'55}\vss}\hidewidth}}

\def\HighHamzah#1{\highalign{#1\crcr\hidewidth\USHIFT{30}%
    \vbox to.2ex{\hbox{\the\textfont1\HighKern\char'55}\vss}\hidewidth}}

\def\LowAyn#1{\lowalign{#1\crcr\hidewidth\USHIFT{15}%
    \vbox to.2ex{\hbox{\the\textfont1\LowKernA\char'54}\vss}\hidewidth}}

\def\HighAyn#1{\highalign{#1\crcr\hidewidth\USHIFT{30}%
    \vbox to.2ex{\hbox{\the\textfont1\HighKern\char'54}\vss}\hidewidth}}

\def\AynHamzahKern{\kern.0625em}
\def\PreAynHamzahKern{\kern0em}
\def\IKern{\kern0.10em}

\def\Hamzah{\leavevmode\raise.17ex\hbox{\USHIFT{1}\os-}\SHIFT{10}\AynHamzahKern}

\def\Ayn
{\leavevmode\raise.17ex\hbox{\USHIFT{1}\os,}\SHIFT{10}\AynHamzahKern}

\def\HighHamzah{\leavevmode\raise.5ex\hbox{\os-}\SHIFT{10}\AynHamzahKern}

\def\HighAyn
{\leavevmode\raise.5ex\hbox{\os,}\SHIFT{10}\AynHamzahKern}

\def\`{\PreAynHamzahKern\Ayn}
\def\'{\PreAynHamzahKern\Hamzah}

\def\HA{\PreAynHamzahKern\HighAyn}
\def\HH{\PreAynHamzahKern\HighHamzah}
====================================

Here are a couple of applications:

s\=a\'il (questioner), \HA Ab\=d (someone's name), \`ayn (spring, eye)

A big problem with my macros (I don't know if this is ConTeXt-related):
Whenever I use \`, \', \HA, \HH at small point sizes (<10 points), the
\the\textfont1\char'54 gets much smaller than one would expect, which is
no good.

3. VERY IMPORTANT:

When used often, \=i (\=\i in plain TeX) looks terrible; the bar over
the `i' is too wide and runs into other letters. When used frequently
(it is one of the most used in transliterating Arabic) it is really
irritating. What good typesetters have done is make the bar over the `i'
shorter. Now I'm sure that Hans and others can come up an elegant trick
to redefine \=\i to get this bar shorter, but it seems to me to be wiser
to just put it in the font.

4. For more examples that the authors of Latin Modern may like to
consider, see the tables in the following article of mine:

http://www.gsp-online.org/journals/journaldocs/shi/transliteration.pdf

======================================

If this new font meets our needs, I will be more than happy to showcase
latin modern in future issues of my journal, and mention both the font
and its authors in the colophon.

Best wishes
Idris


_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to