jason@hpcndjdz.CND.HP.COM (Jason Zions) (06/19/91)
8-bit localizeability is a damn complex subject. Some of the items that need to be done include: 1) Leave all 8 bits alone. You can touch 0 through 31 (base-10) and 255, but that's it. 2) For each language supported, build tables indicating: a) Upper-case/lower-case equivalents. b) For word-processors, word-break characters and hyphenation rules (which may depend upon syllabification rules. c) Lexicographic ordering, case-sensitive and case-insensitive. d) Ideally, defineable input-character mappings, in case the stupid system doesn't do keyboard mapping correctly (or at all). 3) Make use of a standard codeset. IS 676 is painfully old, but many countries have large installed bases of character devices which only support their national variant of this 7-bit (!) codeset. Support all the variants of IS 676. Better yet, support the IS 8859/x family of 8-bit codesets. 8859/1 will get you USASCII and most Western European languages; 8859/2 finishes out Europe; if memory serves, 8859/5 is Cyrillic. You get the picture. Take interest in the Unicode vs. DIS 10646 battle taking place in the US. 4) Provide conversion software to help poor users convert text strings from some old IS 676 variant or USASCII to the more modern codesets. Spend a lot of time and money on this. -- This is not an official statement of The Hewlett-Packard Company. No warranty is expressed or implied. The information included herein is not to be construed as a committment on HP's part. The devil made me do it. This won't save me from the lawyers' wrath, but it can't hurt. Jason Zions The Hewlett-Packard Company Colorado Networks Division 3404 E. Harmony Road Mail Stop 102 Ft. Collins, CO 80525 USA jason@cnd.hp.com (303) 229-3800
kaukasoi@cc.tut.fi (Kaukasoina Petri) (06/19/91)
In article <46770002@hpcndjdz.CND.HP.COM> jason@hpcndjdz.CND.HP.COM (Jason Zions) writes: > >2) For each language supported, build tables indicating: > a) Upper-case/lower-case equivalents. > c) Lexicographic ordering, case-sensitive and case-insensitive. What about using INT 21 AH=65h - GET EXTENDED COUNTRY INFORMATION ? This function gives the country specific information for case conversions and alphabetical ordering. Petri