emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Not able to display \u110BD and \u110CD in Emacs


From: समीर सिंह Sameer Singh
Subject: Re: Not able to display \u110BD and \u110CD in Emacs
Date: Fri, 29 Apr 2022 15:15:41 +0530

I did the changes mentioned.
1. Added the square brackets
2. Changed the 1 to a 0

;; Kaithi composition rules
(let ((consonant "[\x1108D-\x110AF]")
      (non-consonant "[^\x1108D-\x110AF\x110B9]")
      (vowel "[\x110B0-\x110B8\x110C2]")
      (anusvara-candrabindu "[\x11080\x11081]")
      (virama "\x110B9")
      (number-sign "\x110BD")
      (number-sign-above "\x110CD")
      (numerals "[\x966-\x96F]"))
  (set-char-table-range composition-function-table
                        '(#x110B0 . #x110B8)
                        (list (vector
                               (concat consonant vowel anusvara-candrabindu "?")
                               1 'font-shape-gstring)))
  (set-char-table-range composition-function-table
                        '(#x110B9 . #x110B9)
                        (list (vector
                               (concat consonant "\\(?:" virama consonant "\\)+"
                                       vowel "*\\|" consonant virama)
                               1 'font-shape-gstring)))
  (set-char-table-range composition-function-table
                        '(#x110BD . #x110BD)
                        (list (vector
                               (concat number-sign numerals)
                               0 'font-shape-gstring)))
  (set-char-table-range composition-function-table
                        '(#x110CD . #x110CD)
                        (list (vector
                               (concat number-sign-above numerals)
                               0 'font-shape-gstring))))

Now when typed alone they do not appear but when written with numbers, they appear as NOTDEF glyphs

On Fri, Apr 29, 2022 at 12:23 PM Eli Zaretskii <eliz@gnu.org> wrote:
> Date: Fri, 29 Apr 2022 08:52:18 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: emacs-devel@gnu.org
>
> >       (numerals "\x966-\x96F"))
>
> I believe this should be
>
>        (numerals "[\x966-\x96F]")
>
> IOW, the "[..]" brackets are missing.  Maybe that is the cause of your
> problem.

And one more potential problem.  Since the rules for the number signs
are:

  (set-char-table-range composition-function-table
                        '(#x110BD . #x110BD)
                        (list (vector
                               (concat number-sign numerals)
                               1 'font-shape-gstring)))
  (set-char-table-range composition-function-table
                        '(#x110CD . #x110CD)
                        (list (vector
                               (concat number-sign-above numerals)
                               1 'font-shape-gstring))))

which means the number signs always come _before_ the character with
which it should be composed, you should use 0 in the rule, not 1.
That number means how many characters to look back for finding the
beginning of a composable sequence, and in these two rules the
sequence _begins_ with the character which triggers composition, so
the look-back is zero, not 1.

Attachment: emacs-kaithi-number-signs.png
Description: PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]