Re: Re: emacs-bidi: arabic

TAKAHASHI Naoto <[email protected]>
Newsgroups gmane.emacs.bidi
Message-ID <[email protected]>
Alex Schroeder writes:

> Perhaps the correct question to ask is "How do I check wether the
> characters in the given range are really in font X?"

AFAIK, you can't.  It is beyond the ability of (the current) Emacs
Lisp.

> When I do this, composition results in glyphs being displayed -- yay!

Congratulations.

> One other problem pops up then, however.  Something with the frame
> size and font positioning is wrong.  The resulting frame is 227 normal
> (latin number) characters long.  For each lating character, there is a
> lot of whitespace above and below, such that latin text seems to be
> double spaced.  I can provide screenshots if you are interested.

1. Emacs calculates the frame size based on the FONTBOUNDINGBOX of its
   ASCII font.

2. You requested Emacs to use the m17n font not only for Arabic but
   for all characters, including ASCII.

3. The m17n fonts are proportional fonts.  Some glyphs are very wide
   and some glyphs are very tall.  Therefore its FONTBOUNDINGBOX is
   very big.

> Perhaps I did something wrong when installing the m17n fonts, or there
> is some bad interaction with my X?

Specify your favorite ASCII font for the default.  Then include the
following lines in your ~/.emacs file.

  (set-fontset-font
   "fontset-default"
   (cons (decode-char 'ucs #x0600) (decode-char 'ucs #x06ff)) ; arabic
   "-m17n-*--20-*-iso10646-1")
  (set-fontset-font
   "fontset-default"
   (cons (decode-char 'ucs #xfb50) (decode-char 'ucs #xfdff)) ; presentation A
   "-m17n-*--20-*-iso10646-1")
  (set-fontset-font
   "fontset-default"
   (cons (decode-char 'ucs #xfe70) (decode-char 'ucs #xfefc)) ; presentation B
   "-m17n-*--20-*-iso10646-1")

-- 
TAKAHASHI Naoto
[email protected]
http://www.m17n.org/ntakahas/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.