Commit Graph

15 Commits

Author SHA1 Message Date
martin
c607cb216f Mark the characters between 0x80 and 0xff as 1 cell wide, if compiled
with ALL_80_TO_FF_SW1 defined. This is not correct in the general case,
but helps in certain restricted environments where nothing but the
default locale is available and we know what we do(tm).
2007-11-06 19:24:19 +00:00
tnozaki
059d600590 1. add workaround for ctype.h is* funcs problem.
isspace((int)0xA0) should return false under LC_CTYPE=en_US.UTF-8,
   see: http://www.freebsd.org/cgi/query-pr.cgi?pr=116363&cat=gnu
2. change __runtable_to_netbsd_ctype() as reentrant.

patch ok'ed by tshiozak-san, thanks!
2007-09-29 07:55:45 +00:00
hubertf
55ac93d329 Remove more duplicate #includes, and a few spurious whitespaces at EOL
From Slava Semushin <slava.semushin@gmail.com>
2007-01-17 23:24:22 +00:00
yamt
6efd91c498 constify and remove an __UNCONST. 2005-12-02 11:10:45 +00:00
agc
eb7c1594f1 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
2003-08-07 16:42:00 +00:00
tshiozak
326ed36874 changes related to lib/20576 and lib/20577.
- add wcstok() and wcswcs(),
  - add wcstok(3),
  - move btowc() and wctob() into each ctype modules,
  - bump ctype interface ABI version,
  - bump i18n modules' minor and
  - update sets.
and fix a stupid bug in _RUNE_ISCACHED macro.
2003-03-05 20:18:14 +00:00
tshiozak
31e2cbf0b5 add some ISO C 1995 I18N functions and types:
btowc, wctrans, towctrans, wcscoll, wcsxfrm, wctype_t and wctrans_t.
2003-03-02 22:18:11 +00:00
yamt
e499009646 remove _StreamStateTable. 2002-08-03 11:10:51 +00:00
tshiozak
dc7d18ff88 refine i18n stuffs.
- add libc/citrus directory.
    this directory contains the common stuffs not only for locale
    but also other facilities relating to i18n (e.g. iconv).
  - To keep the binary compatibility for the ctype modules easily,
    the interface between libc and the modules is simplified.
  - For the future integrated extension, module pool is renamed
    from "/usr/lib/runemodule" to "/usr/lib/i18n".
    In the future, this directory will contain the modules for "iconv",
    "collation", etc.
  - some cosmetic changes.
  - Bug fix for runetype.h; __attribute__((__packed__)) is placed at
    the wrong position and it is invalid unintentionally.
    But, the all members of the structures seem well-aligned.  Thus,
    this bug causes no problem, hopefully.

HEADS UP:
  - /usr/lib/rumemodule is obsoleted.  If you use the multibyte locales,
    you need to install /usr/lib/i18n/* from sys/lib/i18n_module .
  - The binary compatibility of /usr/share/locale/*/LC_CTYPE is probably kept.
    Perhaps, the bug fix about __packed__ mentioned above breaks the
    compatibility...  Be careful especially on 64bit platforms.
2002-03-17 22:14:05 +00:00
jmc
1919be32df Change the magic -3 for the invalid rune to
#define _DEFAULT_INVALID_RUNE -3

and use it accordingly. Also provides a representation programs such as
mklocale can reference when filling out a new locale from a definition.
2001-10-20 05:59:35 +00:00
tshiozak
6c89983bd3 support nl_langinfo(CODESET). 2001-03-26 19:55:42 +00:00
itojun
cdc6b98589 have _CTYPE_SW1 to all isprint() chars. important for future curses multibyte
support.
2001-01-21 04:34:47 +00:00
itojun
2ea22179ea switch locale module API, from s{get,put}rune to wcrtomb/mbrtowc.
handle intermediate mbstate_t more correctly.
no externally-visible changes here.
2000-12-28 05:22:27 +00:00
itojun
bbbc605b71 change _INVALID_RUNE value - the old value (0xfffd) was selected when
rune_t was 16bit.

XXX PLEASE REBUILD YOUR LOCALE DEFINITION FILES BY:
# cd share/mklocale; make clean depend; make; make install
2000-12-23 10:52:34 +00:00
itojun
408f4697a6 first import of citrus LC_CTYPE locale. singlebyte only at this moment.
shot-term TODO:
- enable multibyte locales.  this includes loadable locale modules
  (#ifdef DLRUNE).
- populate LC_CTYPE definition files.
- other functions such as iconv()
- make libc functions more friendly with multibyte.
- multilingualize other LC_xx
- torture tests

XXX don't forget to "make depend" when you rebuild libc, multibyte.c is
moved from lib/libc/stdlib to lib/libc/locale.
2000-12-21 11:29:47 +00:00