Unicode and ANSI
The begin statement defines where processing begins when a key is pressed. Keyman first determines whether the active application can accept Unicode input, and then selects the Unicode or ANSI begin statement accordingly.
Keyman supports the full Unicode character set (U+0001 - U+10FFFF). Characters below U+0020 are not recommended, although U+000D may be useful as a carriage return in some circumstances. Characters should be specified in UTF-32.
Surrogate characters should not be used, and the compiler will warn accordingly. Instead the appropriate UTF-32 codepoint should be used, and Keyman will translate the character internally into a surrogate pair so that the application can use it, if it is compliant.
Unicode characters can be specified in all of the methods referred to in the strings topic, but the U+xxxx method is recommended for clarity.