emacs-devel
[Top][All Lists]
Advanced

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

23.0.60; describe-char gives wrong information


From: Peter Dyballa
Subject: 23.0.60; describe-char gives wrong information
Date: Mon, 31 Dec 2007 14:16:04 +0100

Hello!

When inquiring information for Ὀ (i.e. a capital Omicron and a psili), maybe not correctly "composed" coming from a XeTeX document, GNU Emacs 23.0.60 tells me:

                character: Ο (927, #o1637, #x39f)
        preferred charset: gb18030 (GB18030)
               code point: 0xA6AF
                   syntax: w    which means: word
category: G:Greek characters of 2-byte character sets c:Chinese g:Greek h:Korean
                           j:Japanese
              buffer code: #xCE #x9F
                file code: #xCE #x9F (encoded by coding system utf-8-unix)
                  display: composed to form "Ὀ" (see below)
        
        Composed with the following character(s) "̓" by the rule:
                (?Ο (tc . bc) ?̓)
        The component character(s) are displayed by these fonts (glyph codes):
         Ο: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO8859-7 (#xCF)
̓: -monotype-arial unicode ms-medium-r-normal--13-127-74-74-p-129- gb18030.2000-0 (#xBE35)
        See the variable `reference-point-alist' for the meaning of the rule.
        
        Character code properties are not shown: customize what to show
        
        There are text properties here:
          auto-composed        t
          composition          [Show]
          fontified            t

Character U+039F can't hardly belong to a Chinese encoding. It's a Greek character, taken off an ISO 8859-7 font. Its psili modifier or COMBINING COMMA ABOVE is at U+0313, outside any Chinese encoding, too (although GB18030-2000 defines both as 0xA6AF and as 0x8130BE35). Isn't Unicode, as in the name "Unicode Emacs," more appropriate? The "code point" data shown above is obviously the GB18030 representation of GREEK CAPITAL LETTER OMICRON. The buffer and file code of #xCE #x9F stands for GREEK CAPITAL LETTER OMICRON at U+039F in UTF-8.

And then there is no sense in using a non-existing character from an inappropriate font when the default font, Lucida Sans Typewriter, has this character COMBINING COMMA ABOVE. And this font also has GREEK CAPITAL LETTER OMICRON at U+039F.


Similarly GNU Emacs 23.0.60 handles Ὀ (i.e. one letter Omicron with psili):

                character: Ὀ (8008, #o17510, #x1f48)
        preferred charset: gb18030 (GB18030)
               code point: 0x81369132
                   syntax: w    which means: word
                 category: g:Greek
              buffer code: #xE1 #xBD #x88
                file code: #xE1 #xBD #x88 (encoded by coding system utf-8-unix)
                  display: by this font (glyph code)
-monotype-arial unicode ms-medium-r-normal--10-98-74-74-p-99- gb18030.2000-0 (#x9132)
        
        Character code properties: customize what to show
          name: GREEK CAPITAL LETTER OMICRON WITH PSILI
          general-category: Lu (Letter, Uppercase)
          decomposition: (927 787) ('Ο' '̓')
        
        There are text properties here:
          auto-composed        t
          fontified            t

And although it claims taking GREEK CAPITAL LETTER OMICRON WITH PSILI at U+1F48 off Arial Unicode MS, which has this glyph, it uses an open box to display it. Because U+1F48 is not defined in GB18030? The byte sequence (code point) 0x81369132 is not defined in GB18030-2000.


In GNU Emacs 23.0.60.1 (powerpc-apple-darwin8.11.0, X toolkit, Xaw3d scroll bars)
 of 2007-12-30 on Latsche.local
Windowing system distributor `The XFree86 Project, Inc', version 11.0.40400000 configured using `configure '--with-x-toolkit=lucid' '--without-gtk' '--with-dbus' '--without-sound' '--without-pop' '--with-xpm' '--with- jpeg' '--with-tiff' '--with-gif' '--with-png' '--enable- locallisppath=/Library/Application Support/Emacs/calendar22:/Library/ Application Support/Emacs/caml:/Library/Application Support/Emacs:/sw/ share/emacs21/site-lisp/elib' 'PKG_CONFIG_PATH=/sw/lib/freetype219/ lib/pkgconfig:/sw/lib/fontconfig2/lib/pkgconfig:/sw/lib/pkgconfig:/sw/ lib/system-openssl/lib/pkgconfig:/sw/share/pkgconfig:/usr/lib/ pkgconfig:/usr/local/lib/pkgconfig:/usr/local/clamXav/lib/pkgconfig:/ usr/local/lib/pkgconfig' 'CPPFLAGS=-no-cpp-precomp -D__BIND_NOSTATIC - I/usr/include/openssl -I/sw/include/pango-1.0 -I/sw/lib/fontconfig2/ include -I/sw/lib/freetype219/include -I/sw/lib/freetype219/include/ freetype2 -I/sw/include -I/usr/local/include -idirafter /usr/X11R6/ include' 'CXXFLAGS=-no-cpp-precomp -I/usr/include/openssl -I/sw/ include/pango-1.0 -I/sw/lib/fontconfig2/include -I/sw/lib/freetype219/ include -I/sw/lib/freetype219/include/freetype2 -I/sw/include -I/usr/ local/include' 'CFLAGS=-bind_at_load -pipe -fPIC -mcpu=7450 - mtune=7450 -fast -mpim-altivec -ftree-vectorize -foptimize-register- move -freorder-blocks -freorder-blocks-and-partition -fthread-jumps - fpeephole -fno-crossjumping' 'LDFLAGS=-dead_strip -multiply_defined suppress -L/sw/lib/ncurses -L/sw/lib/fontconfig2/lib -L/sw/lib/ freetype219/lib -L/sw/lib -L/usr/local/lib -L/usr/X11R6/lib''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: de_DE.UTF-8
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: de_DE.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  TeX-PDF-mode: t
  shell-dirtrack-mode: t
  show-paren-mode: t
  display-time-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

--
Greetings

  Pete

A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.






reply via email to

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