Although multi-lingual text processing is required for digital libraries, language education, and natural language processing, it has been difficult to realize for the confusion of a glyph with a character. This paper defines the relation between a glyph and a character, and it describes the processing of Mongolian scripts, an extended case of Perso-Arabic scripts handled by our system in ways which generalize to many complicated scripts. Mongolian scripts have particularly complicated orthographies and are almost impossible to encode. However, separating glyph defining information from encoding position solves some important problems arising from these and other scripts (including mixed languages) which may require multiple direction rendering. The study of many scripts led us to store, attached to the Wide Characters of POSIX, attributes which support not only the information for text manipulation (to be applied to a character) but glyph information as well such as variant and position necessary for display. Moreover, the information which is not available in a character code is provided from the database of our system to be embedded into a WC's attribute.