cvs commit: hugs98 Install hugs98/src char.c char.h input.c machdep.c prelude.h hugs98/src/unix configure.in

ross at glass.cse.ogi.edu ross at glass.cse.ogi.edu
Tue Dec 2 10:50:57 EST 2003


ross        2003/12/02 10:50:57 PST

  Modified files:
    .                    Install 
    src                  char.c char.h input.c machdep.c prelude.h 
    src/unix             configure.in 
  Log:
  Add multi-byte encoding of Unicode Chars for I/O and in strings, selected
  with one of the configure options
  
  	--enable-unicode-chars=locale
  	--enable-unicode-chars=utf8
  
  In the first case, you run Hugs in a suitable environment with the
  locale set to what you want.  This has been tested with the locales
  C, en_GB.iso88591, ru_RU.koi8r and en_GB.UTF-8 (inside xterm 4.2.0),
  zh_CN.gb2312 and zh_TW.big5 (inside multilingual rxvt 2.6.4).
  
  The second version hardwires the UTF-8 encoding, and turns off readline.
  (If you have a recent glibc, readline, etc, use the locale version
  instead, and select a UTF-8 locale.)
  
  All testing has been on Linux.  It shouldn't be hard to make it work
  on NT, but Dimitry and I don't know how.
  
  The big compromise here is that strings inside Hugs are also encoded
  in the same way.  Compared with using wide chars internally, this saves
  space, and avoids zillions of source changes.  But it has limitations, in
  particular chars that can't be encoded aren't allowed in string literals,
  even as numeric escapes.  So (with locale encoding) in the C locale,
  "\xa0" isn't allowed.
  
  These patches don't permit Unicode in source identifiers and symbols.
  
  Dimitry: I think this represents all of your changes (except for your TCL
  front-end), though I've mangled them a bit -- please test.
  
  Revision  Changes    Path
  1.16      +29 -0     hugs98/Install
  1.6       +202 -0    hugs98/src/char.c
  1.4       +47 -1     hugs98/src/char.h
  1.79      +3 -3      hugs98/src/input.c
  1.108     +6 -0      hugs98/src/machdep.c
  1.59      +4 -0      hugs98/src/prelude.h
  1.99      +38 -4     hugs98/src/unix/configure.in


More information about the Cvs-hugs mailing list