Provided by: tcl8.5-doc_8.5.19-4_all bug

NAME

       Tcl_UniCharToUpper,     Tcl_UniCharToLower,     Tcl_UniCharToTitle,    Tcl_UtfToUpper,    Tcl_UtfToLower,
       Tcl_UtfToTitle - routines for manipulating the case of Unicode characters and UTF-8 strings

SYNOPSIS

       #include <tcl.h>

       Tcl_UniChar
       Tcl_UniCharToUpper(ch)

       Tcl_UniChar
       Tcl_UniCharToLower(ch)

       Tcl_UniChar
       Tcl_UniCharToTitle(ch)

       int
       Tcl_UtfToUpper(str)

       int
       Tcl_UtfToLower(str)

       int
       Tcl_UtfToTitle(str)

ARGUMENTS

       int ch (in)             The Tcl_UniChar to be converted.

       char *str (in/out)      Pointer to UTF-8 string to be converted in place.
________________________________________________________________________________________________________________

DESCRIPTION

       The first three routines convert the case of individual Unicode characters:

       If ch  represents  a  lower-case  character,  Tcl_UniCharToUpper  returns  the  corresponding  upper-case
       character.  If no upper-case character is defined, it returns the character unchanged.

       If  ch  represents  an  upper-case  character,  Tcl_UniCharToLower  returns  the corresponding lower-case
       character.  If no lower-case character is defined, it returns the character unchanged.

       If ch  represents  a  lower-case  character,  Tcl_UniCharToTitle  returns  the  corresponding  title-case
       character.  If no title-case character is defined, it returns the corresponding upper-case character.  If
       no upper-case character is defined, it returns the character unchanged.   Title-case  is  defined  for  a
       small  number  of  characters  that  have  a  different  appearance  when  they are at the beginning of a
       capitalized word.

       The next three routines convert the case of UTF-8 strings in place in memory:

       Tcl_UtfToUpper changes every UTF-8 character in str to  upper-case.   Because  changing  the  case  of  a
       character  may change its size, the byte offset of each character in the resulting string may differ from
       its original location.   Tcl_UtfToUpper  writes  a  null  byte  at  the  end  of  the  converted  string.
       Tcl_UtfToUpper  returns  the  new  length of the string in bytes.  This new length is guaranteed to be no
       longer than the original string length.

       Tcl_UtfToLower is the same as Tcl_UtfToUpper except it turns each character in the string into its lower-
       case equivalent.

       Tcl_UtfToTitle  is  the same as Tcl_UtfToUpper except it turns the first character in the string into its
       title-case equivalent and all following characters into their lower-case equivalents.

BUGS

       At this time, the case conversions are only defined for the  ISO8859-1  characters.   Unicode  characters
       above 0x00ff are not modified by these routines.

KEYWORDS

       utf, unicode, toupper, tolower, totitle, case