On Tue, Feb 08, 2005 at 05:15:15PM -0500, Behdad Esfahbod wrote:

> Then all you need is to define something like this:
> 
> \ocp\EthiopianUni=7eth2uni
> \ocplist\EthiopianOCP=
>   \addbeforeocplist 1 \EthiopianUni
>   \nullocplist
> \newenvironment{ethiopian}{\pushocplist\EthiopianOCP
>   \fontfamily{eth0}\selectfont}{}
> 
> So there's no other OCP in the list, so you can simply reference
> font positions.

That is extremely close to what I have.

\ocp\EthIn=ethin
\ocplist\EthiopicOCP=
 \addbeforeocplist 1 \EthIn
 \nullocplist

\newenvironment{ethiopic}{\fontfamily{eth}\selectfont%
                          \pushocplist\EthiopicOCP}%
                         {\popocplist}
\newcommand\geez[1]{\clearocplists\begin{ethiopic}#1\end{ethiopic}}

The result is:

U+122F: \geez{rWa} -- works fine

U+1220: \geez{`se} -- no visible output - the font position is 0020
and that is taken to be a space

U+1216: \geez{Ho} -- error message - the font position is 0016
and yields

! Text line contains an invalid character.
OCP stack 1.0 entry 0:^^V

Andries

--
Linux-UTF8:   i18n of Linux on all levels
Archive:      http://mail.nl.linux.org/linux-utf8/

Reply via email to