aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/tr/cmap.c
Commit message (Collapse)AuthorAgeFilesLines
* Revert most part of 200420 as requested, as more review and polish isXin LI2009-12-131-0/+3
| | | | | | | needed. Notes: svn path=/head/; revision=200462
* Remove unneeded header includes from usr.bin/ except contributed code.Xin LI2009-12-111-3/+0
| | | | | | | Tested with: make universe Notes: svn path=/head/; revision=200420
* Fix description of cmap_lookup_hard().Tim J. Robbins2004-07-141-1/+1
| | | | Notes: svn path=/head/; revision=132144
* Add support for multibyte characters. The challenge here was to useTim J. Robbins2004-07-091-0/+212
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). Notes: svn path=/head/; revision=131846