summaryrefslogtreecommitdiffstats
path: root/usr.bin/tr/extern.h
Commit message (Collapse)AuthorAgeFilesLines
* Add support for multibyte characters. The challenge here was to usetjr2004-07-091-10/+11
| | | | | | | | | | | | | | data structures that scale better with large character sets, instead of arrays indexed by character value: - Sets of characters to delete/squeeze are stored in a new "cset" structure, which is implemented as a splay tree of extents. This structure has the ability to store character classes (ala wctype(3)), but this is not currently fully utilized. - Mappings between characters are stored in a new "cmap" structure, which is also a splay tree. - The parser no longer builds arrays containing all the characters in a particular class; instead, next() determines them on-the-fly using nextwctype(3).
* No functional changes, just code reorganization from prev. commit, itache2003-08-041-1/+1
| | | | | | makes one malloc unneeded, removes two bzero's and makes code more readable. "Bright ideas comes only _after_ commits."
* POSIX requires 'c-c' must conform collate and be in collation orderache2003-08-031-1/+1
|
* This patch address two problems.ache2003-08-031-1/+4
| | | | | | | | | | | | | | | | 1st one is relatively minor: according our own manpage, upper and lower classes must be sorted, but currently not. 2nd one is serious: tr '[:lower:]' '[:upper:]' (and vice versa) currently works only if upper and lower classes have exact the same number of elements. When it is not true, like for many ISO8859-x locales which have bigger amount of lowercase letters, tr may do nasty things. See this page http://www.opengroup.org/onlinepubs/007908799/xcu/tr.html for detailed description of desired tr behaviour in such cases.
* Move the #include and #define's to the top of the file.tjr2002-06-141-4/+4
|
* Bump the size of the equivalence set to NCHARS; this file was left outtjr2002-06-141-1/+1
| | | | of a previous commit implementing equivalence classes.
* remove __Pimp2002-03-221-1/+2
|
* Use err(3) instead of local redefinition. Cosmetic in usage().charnier1997-08-181-1/+0
|
* BSD 4.4 Lite Usr.bin Sourcesrgrimes1994-05-271-0/+51
OpenPOWER on IntegriCloud