RELEASE NOTE Internationalization patch for X Terminal Emulator Jiro SEKIBA * What's this? This is a patch for the xterm of X11 release 6.5.1 to fix its internationalization defects. This patch enables xterm to handle whatever the character set encodings and scripts support underlining operating system supports via the technology called CSI(Code Set Independence) and XOM(X Output Method). Traditionally, several X terminal emulators which are hard-wired to specific languages and encodings were introduced to support local language requirements, such as kterm, hanterm, cxterm, UTF-8 xterm and so on. This truly internationalized terminal emulator supersedes the needs of those multiple locale specific terminalemulators. * Requirement You need original sources of xterm of X11R6.5.1. You can download X11 from http://www.x.org/. Or you can retrive entire source via CVS from www.li18nux.org. * Install After you unpack X11, you go into the directory you unpacked xterm in. Then you just apply this patch as follow.. $ cd $ patch -p1 < xterm.patch- After that, do compilation and installation according to the document included in X11 source tree, such is like "xmkmf", "make" and "make install". You may also need to compile terminfo by "tic". $ tic terminfo * Known Bugs - occasionally crashes when reading invalid character code - Does not support pasting into kterm. -Does not work on UTF-8 locales if you use vanilla XFree86 4.0.x/4.1 due to the inability of XFree86 4.0.x/4.1 of handling XLC_LOCALE for UTF-8. You need to replace XLC_LOCALE with Xlib-I18N one's or replace whole Xlib with Xlib-I18N. If you replace Xlib-I18N, you can input any UTF-8 byte stream by IIIMF. To do that you need internationalized X libraries. Check the web http://www.li18nux.org/cvs/ - Bash(libreadline) breaks multibyte char into a single byte sometime. This can be solved by I18N patch for bash. Check the web http://www.li18nux.org/subgroups/utildev/dli18npatch.html * ChangeLog + since version 0.6 - added XFree86 xterm compatible capabilities, reseting bold/blink/underscore/inverse - added *international resource, if international == True, *FontSet resource is used else *Font is used first. Rests of all are done by Sun - optimized Memory consumption according to locale - stipped ad-hoc combining character support - fixed bugs of color mode - fixed a bug that -/+cn option doesn't work properly - fixed a bug that bold font is not recognized - fixed a bug of InputMethod - fixed a bug of setting COLUMNS/LINES variables - fixed a bug of ActiveIcon - fixed a few bugs which crash xterm + since version 0.5 - fixed a bug of cursor movement breaks multi width column character - fixed unable to compile without defining I18N macro by MIYASHITA Hisashi + since version 0.4-20010330 - I18Ned Operating System Command( ]) - fixed a bug of not storing `0 width code point' in the buffer Rests of all are fixed by Suresh Chandrasekharan - fixed the vttest failure dealing with Test of screen features - fixed similar condition which caused the crash when compiled without I18N defined - fixed the core dump when invoked in c locale without the I18N defined - fix for erratic input behaviour when compiled using SparcCompiler -g option + since version 0.3-20010323 - fixed a bug of reverse video problem on Solaris by Suresh Chandrasekharan - fixed a bug of cursor when window loses focus by Suresh Chandrasekharan - fixed Imakefile for Solaris by Suresh Chandrasekharan - fixed Imakefile for AIX 4.3 by Shoji SUGIYAMA + since version 0.2-20001218 - fixed a bug of storing multibyte character - fixed some memory leak bugs - added 3 bits color extension, originally from kterm + since version 0.1-20001127 - fixed a bug dividing multibyte char on the edge - fixed a multibyte handling algorithm - added better XIM support by Shoji SUGIYAMA