(C) Alexander Taylor - last updated 2006-09-02 http://www.cs-club.org/~alex/os2/toolkits/uls/index.html OS/2 Warp 4 and up include APIs for Unicode support, referred to as the Universal Language Support (ULS) functions. Unfortunately, they are very poorly documented. The Warp 4 Toolkit contains cursory INF reference documentation (UNIAPI.INF) for ULS, but it is now severely outdated. The 4.5x Toolkit includes updated documentation in HTML format (UNIAPI.HTM), but it is woefully incomplete, very poorly formatted, and contains some blatant errors. Consequently, I have embarked upon two projects to fix this state of affairs. Updated Programmer's Reference First, I have undertaken a major revamping of the ULS API reference documentation. My document is based on IBM's UNIAPI.HTM from the 4.52 Toolkit, but with many improvements: * The HTML has been completely reformatted so as to be significantly more clear and readable. (Compatibility with older web browsers has nonetheless been preserved.) * A section describing possible API return codes has been added. * Several incorrect, incomplete, poorly-expressed or just plain misleading function descriptions have been fixed. In addition, important missing information has been added (such as the entire function description for UniStrToUcs(), which in the IBM version was actually a erroneous copy-paste of an entirely different function instead). * Various clarifications have been made, and in some cases helpful comments have been added. * Some of the sample code has been rewritten or replaced with code that is more illustrative of the function in question (and that actually works). * Descriptions of the ULS keyboard functions and data types (which were inexplicably missing from the latest toolkit documentation) have been restored. This document remains a work in progress, as I continue to find areas for improvement. See the below for the change history. The legal status of this document is a bit muddy. As it is a direct derivation of IBM's own documentation, I do not claim any particular rights over it. As far as I am concerned, it may be freely redistributed and/or modified. IBM's own legal terms regarding modifying or redistributing this documentation are unclear. Download You can download the HTML documentation as a ZIP file, or read it online. * Read online (338 kB HTML document) * Download (55 kB ZIP file) Release History 2006-09-01 * Added descriptions of Unicode keyboard functions and data types. * Added some missing information on character classification functions and values, and fixed several errors. * Fixed incorrect sample code for UniQueryChar(). 2006-08-27 * Fixed several errors in the codepage specifier descriptions for UniCreateUconvObject(), plus a couple of other tweaks. * Replaced sample code for UniQueryUconvObject(). * Moved description of uconv_attribute_t parameters out of UniSetUconvObject() section into the structure description where they belong. * Several corrections and improvements to Data Types section. 2006-08-18 * Improved description and example code for UniDeleteUserLocale(). * Added several missing LocaleItem values to UniQueryLocaleItem(). * Some wording improvements. 2006-07-20 * First public release. (C) Alexander Taylor - last updated 2006-09-02 http://www.cs-club.org/~alex/os2/toolkits/uls/index.html