XITERM+THAI(1)

NAME
xiterm+thai — VT102 emulator for the X window system with Thai support

SYNOPSIS
xiterm+thai [options] [-e command [args]]

DESCRIPTION
xiterm+thai — version @VERSION@ — is a color vt102 terminal emulator intended as an xterm(1) replacement for users who do not require features such as Tektronix 4014 emulation and toolkit-style configurability. As a result, xiterm+thai uses much less swap space — a significant advantage on a machine serving many X sessions.

OPTIONS
The xiterm+thai options (mostly a subset of xterm's) are listed below. In keeping with the smaller-is-better philosophy, options may be eliminated or default values chosen at compile-time, so options and defaults listed may not accurately reflect the version installed on your system.

Note that xiterm+thai permits the resource name to be used as a long-option (--/++ option) so the potential command-line options are far greater than those listed.
For example: `xiterm+thai --loginShell --color1 Orange'.

-help,--help
    Print out a message describing available options.

-display displayname
    Attempt to open a window on the named X display (-d still respected). In the absence of this option, the display specified by the DISPLAY environment variable is used.

-geometry geom
    Window geometry (-g still respected); resource geometry.

-rv|+rv
    Turn on/off simulated reverse video; resource reverseVideo.

-bg color
    Window background color; resource background.

-fg color
    Window foreground color; resource foreground.

-pixmap: file[;geom]
    Specify XPM file for the background and also optionally specify its scaling with a geometry string; resource backgroundPixmap.

-cr color
    The cursor color; resource cursorColor.

-fn fontname
    Main normal text font; resource font.

-fb fontname
    Main bold text font; resource boldFont.

-fk fontname
    Main Kanji font; resource kfont.

-km mode
    Kanji encoding mode; eucj: EUC Japanese encoding. sjis: Shift JIS encoding; resource kanji_encoding.

-grk mode
    Greek keyboard translation; iso: ISO-8859 mapping. ibm: IBM-437 mapping; resource greek_keyboard.

-tspace int
    Space count to trigger compensation for Thai rendering; default is 2; resource thai_space.

-tkb mode
    Thai keyboard translation; tis: TIS-820.2538; ket: traditional Ketmanee; default is ket; resource thai_keyboard.

-tim mode
    Thai input method (based on XIM); BasicCheck: weak sequence check for character composition; Strict: strong check for orthographic rules; Passthrough: no check; if unset, value described in the XMODIFIERS environment is used; resource thai_im.

-name name
    Specify the application name under which resources are to be obtained, rather than the default executable file name. Name should not contain `.' or `*' characters. Also sets the icon and title name.

-ls|+ls
    Start as a login-shell/sub-shell; resource loginShell.

-ut|+ut
    Inhibit/enable writing a utmp entry; resource utmpInhibit.

-vb|+vb
    Turn on/off visual bell on receipt of a bell character; resource visualBell.

-sb|+sb
    Turn on/off scrollbar; resource scrollBar.

-iconic
    Start iconified, if the window manager supports that option.

-sl number
    Save number lines in the scrollback buffer; resource saveLines.

-e command [arguments]
    Run the command with its command-line arguments in the xiterm+thai window. If this option is used, it must be the last on the command-line. If there is no -e option then the default is to run the program specified by the SHELL environment variable or, failing that, sh(1).

-title text
    Window title (-T still respected); resource title.

-n text
    Icon name; resource iconName.

-C  Capture system console messages.

RESOURCES (available also as long-options)
xiterm+thai accepts application defaults set in XAPPLOADDIR/Xiterm (compile-time defined: usually /usr/lib/X11/app-defaults/Xiterm) and resources set in ~/.Xdefaults or ~/.Xresources. Note that when reading X resources, xiterm+thai recognizes two class names: XTerm and Xiterm. The class name XTerm allows resources common to both xiterm+thai and xterm to be easily configured, while the class name Xiterm allows resources unique to xiterm+thai, notably colors and key-handling, to be shared between different xiterm+thai configurations. If no resources are specified, suitable defaults will be used. Command-line arguments can be used to override resource settings. The following resources are allowed:

geometry: geom
    Create the window with the specified X window geometry [default 80x24]; option -geometry.

background: color
    Use the specified color as the window's background color [default White]; option -bg.

foreground: color
    Use the specified color as the window's foreground color [default Black]; option -fg.

colorn: color
    Use the specified color for the color value n, where 0-7 corresponds to low-intensity (normal) colors and 8-15 corresponds to high-intensity (bold = bright foreground, blink = bright background) colors. The canonical names are as follows: 0=black, 1=red, 2=green, 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white, but the actual color names used are listed in the COLORS AND GRAPHICS section.

colorBD: color
    Use the specified color to display bold characters when the foreground color is the default.

colorUL: color
    Use the specified color to display underlined characters when the foreground color is the default.

cursorColor: color
    Use the specified color for the cursor. The default is to use the foreground color; option -cr.

cursorColor2: color
    Use the specified color for the color of the cursor text. For this to take effect, cursorColor must also be specified. The default is to use the background color.

cursorColorThai: color
    Use the specified color for the cursor while in Thai mode. The default is to use the foreground color.

reverseVideo: boolean
    True: simulate reverse video by foreground and background colors; option -rv, False: regular screen colors [default]; option +rv. See note in COLORS AND GRAPHICS section.

scrollColor: color
    Use the specified color for the scrollbar [default #B2B2B2].

backgroundPixmap: file[;geom]
    Use the specified XPM file (note the `.xpm' extension is optional) for the background and also optionally specify its scaling with a geometry string WxH+X+Y, in which W/H specify the horizontal/vertical scale (percent) and X/Y locate the image centre (percent). A scale of 0 displays the image with tiling. A scale of 1 displays the image without any scaling. A scale of 2 to 9 specifies the number of images in that direction. No image will be magnified beyond 10 times its original size. The maximum permitted scale is 1000. [default 100x100+50+50]

path: path
    Specify the colon-delimited search path for finding XPM files, in addition to the paths specified by the RXVTPATH and PATH environment variables.

font: fontname
    Select the main text font used [default 7x14]; option -fn.

fontn: fontname
    Specify the alternative font n. The default font values:
    font:	7x14
    font1:	6x10
    font2:	6x13
    font3:	8x13
    font4:	9x15

boldFont: fontname
    Specify the name of the bold font to use if colorBD has not been specified and it is not possible to map the default foreground color to color 8-15 [default NONE]. This font must be the same height and width as the normal font; option -fb.

kfont: fontname
    Select the main Kanji text font used [default k14]; option -fk.

kfontn: fontname
    Specify the alternative Kanji font n. If compiled for Kanji, the Roman and Kanji font sizes should match. The default font values:
    font:	7x14
    font1:	8x16
    font2:	9x18
    font3:	12x24
    font4:	13x26

    kfont:	k14
    kfont1:	jiskan16
    kfont2:	jiskan18
    kfont3:	jiskan24
    kfont4:	jiskan26

kanji_encoding: mode
    Set the Kanji encoding mode to be used; eucj: EUC Japanese encoding [default]. sjis: Shift JIS encoding; option -km.

greek_keyboard: mode
    Set the Greek keyboard translation mode to be used; iso: ISO-8859 mapping (elot-928) [default]. ibm: IBM-437 mapping (DOS codepage 737); option -grk. Use Mode_switch to toggle keyboard input. For more details, see the distributed file README.greek.

thai_space: int
    Set the space count to trigger space compensation for previous combining marks; default value is 2; option -tsp.

thai_keyboard: mode
    Set the Thai keyboard translation map to use; tis: TIS-820.2538 map; ket: traditional Ketmanee map; default value is ket; option -tkb.

thai_im: mod
    Set the Thai input method (based on XIM) to use; BasicCheck: weak sequence check for character composition; Strict: strong check for orthographic rules; Passthrough: no check; if unset, value described in the XMODIFIERS environment is used; option -tim.

title: text
    Set window title string, the default title is the command-line specified after the -e option, if any, otherwise the application name; option -title.

iconName: text
    Set the name used to label the window's icon or displayed in an icon manager window, it also sets the window's title unless it is explicitly set; option -n.

mapAlert: boolean
    True: de-iconify (map) on receipt of a bell character. False: no de-iconify (map) on receipt of a bell character [default].

visualBell: boolean
    True: use visual bell on receipt of a bell character; option -vb. False: no visual bell [default]; option +vb.

loginShell: boolean
    True: start as a login shell by prepending a `-' to argv[0] of the shell; option -ls. False: start as a normal sub-shell [default]; option +ls.

utmpInhibit: boolean
    True: inhibit writing record into the system log file utmp; option -ut. False: write record into the system log file utmp [default]; option +ut.

print-pipe: string
    Specify a command pipe for vt100 printer [default lpr(1)]. Use Print to initiate a screen dump to the printer and Ctrl-Print or Shift-Print to include the scrollback as well.

scrollBar: boolean
    True: enable the scrollbar [default]; option -sb. False: disable the scrollbar; option +sb. Note that the scrollbar position (left/right) and its type (with/without arrows) is compile-time selected.

smallfont_key: keysym
    If enabled, use Alt-keysym to toggle to a smaller font [default Alt-<].

bigfont_key: keysym
    If enabled, use Alt-keysym to toggle to a bigger font [default Alt->].

saveLines: number
    Save number lines in the scrollback buffer [default 64]; option -sl.

meta8: boolean
    True: handle Meta (Alt) + keypress to set the 8th bit. False: handle Meta (Alt) + keypress as an escape prefix [default].

cutchars: string
    The characters used as delimiters for double-click word selection. The built-in default:
    TAB SPACE BACKSLASH `"'&()*,;<=>?@[]{|}

keysym.sym: string
    Associate string with keysym sym (0xFF00 - 0xFFFF). It may contain escape values (\a: bell, \b: backspace, \e, \E: escape, \n: newline, \r: return, \t: tab, \000: octal number) or control characters (^?: delete, ^@: null, ^A ...) and may enclosed with double quotes so that it can start or end with whitespace. The intervening resource name keysym. cannot be omitted. This resource is only available when compiled with FAKE_RESOURCES.

THE SCROLLBAR
Lines of text that scroll off the top of the xiterm+thai window (resource: saveLines) and can be scrolled back using the scrollbar or by keystrokes. The normal xiterm+thai scrollbar has arrows and its behaviour is fairly intuitive. The xterm-scrollbar is without arrows and its behaviour mimics that of xterm.

Scroll down with Button1 (xterm-scrollbar) or Shift-Next.
Scroll up with Button3 (xterm-scrollbar) or Shift-Prior.
Continuous scroll with Button2.

MOUSE REPORTING
To temporarily override mouse reporting, for either the scrollbar or the normal text selection/insertion, hold either the Shift or the Meta (Alt) key while performing the desired mouse action.

If mouse reporting mode is active, the normal scrollbar actions are disabled — on the assumption that we are using a fullscreen application. Instead, pressing Button1 and Button3 sends ESC[6~ (Next) and ESC[5~ (Prior), respectively. Similarly, clicking on the up and down arrows sends ESC[A (Up) and ESC[B (Down), respectively.

TEXT SELECTION AND INSERTION
The behaviour of text selection and insertion mechanism is similar to xterm.

Selection:
    Left click at the beginning of the region, drag to the end of the region and release; Right click to extend the marked region; Left double-click to select a word; Left triple-click to select the entire line.

Insertion:
    Pressing and releasing the Middle mouse button (or Shift-Insert) in an xiterm+thai window causes the current text selection to be inserted as if it had been typed on the keyboard.

CHANGING FONTS
You can change fonts on-the-fly, which is to say cycle through the default font and others of various sizes, by using Shift-KP_Add and Shift-KP_Subtract. Or, alternatively (if enabled) with Alt-> and Alt-<, where the actual key can be selected using resources smallfont_key/bigfont_key.

LOGIN STAMP
xiterm+thai tries to write an entry into the utmp file (usually /etc/utmp), so that it can be seen via the who(1) command, and can accept messages. To allow this feature, xiterm+thai must be installed setuid root.

COLORS AND GRAPHICS
If graphics support was enabled at compile-time, xiterm+thai can be queried with ANSI escape sequences and can address individual pixels instead of text characters. Note the graphics support is still considered beta code.

In addition to the default foreground and background colors, xiterm+thai can display up to 16 colors (8 ANSI colors plus high-intensity bold/blink versions of the same). Here is a list of the colors with their rgb.txt names.
color0	(black)	= Black
color1	(red)	= Red3
color2	(green)	= Green3
color3	(yellow)	= Yellow3
color4	(blue)	= Blue3
color5	(magenta)	= Magenta3
color6	(cyan)	= Cyan3
color7	(white)	= AntiqueWhite

color8	(bright black)	= Grey25
color9	(bright red)	= Red
color10	(bright green)	= Green
color11	(bright yellow)	= Yellow
color12	(bright blue)	= Blue
color13	(bright magenta)	= Magenta
color14	(bright cyan)	= Cyan
color15	(bright white)	= White

foreground	= Black
background	= White

It is also possible to specify the color values of foreground, background, cursorColor, cursorColor2, colorBD, colorUL as a number 0-15, as a convenient shorthand to reference the color name of color0-color15.

Note that -rv (reverseVideo: True) simulates reverse video by always swapping the foreground/background colors. This is in contrast to xterm where the colors are only swapped if they have not otherwise been specified. For example,

xiterm+thai -fg Black -bg White -rv
    would yield White on Black, while on xterm it would yield Black on White.

ENVIRONMENT
xiterm+thai sets the environment variables TERM, COLORTERM and COLORFGBG. The environment variable WINDOWID is set to the X window id number of the xiterm+thai window and it also uses and sets the environment variable DISPLAY to specify which display terminal to use. xiterm+thai uses the environment variables RXVTPATH and PATH to find XPM files.

FILES

/etc/utmp
    System file for login records.

/usr/lib/X11/rgb.txt
    Color names.

SEE ALSO
xterm(1), sh(1), resize(1), X(1), pty(4), tty(4), utmp(5)

BUGS
Selecting/pasting very large chunks of text is a problem. But as is the case for xterm, it is a bug of the pseudo terminal driver of those systems.

xiterm+thai 1.0 has the utmp support cleaned-up and supports utmpx (i.e. Solaris 2.x) but there are still some problems. Please inform the maintainer of the correct solutions to utmp problems since he doesn't have root access of his own to test utmp.

Cursor change support is not yet implemented.

Click-and-drag doesn't work with X11 mouse report overriding.

Graphics support is fairly crude.

For some fonts there are problems with pixel-droppings being left behind when simulated bold (overstrike) precedes a space character. Fixing xiterm+thai to handle these cases requires a lot of energy. So the easiest course by far is to specify a boldFont, specify colorBD or, if it was compiled without NO_BRIGHTCOLOR, to select a foreground color that matches the pixel values of color 0-7 so that overstrike bold won't be used.

Like xterm, xiterm+thai handles mono-space fonts only, and only TIS-620 fonts are supported.

AUTHOR
John Bovey, University of Kent, 1992.

Very very very heavily modified by Rob Nation <nation@rocket.sanders.lockheed.com>

Greek keyboard input: Angelo Haritsis <ah@doc.ic.ac.uk>

Utmpx addition (Solaris 2.x) and extensive reworking of pseudo-tty handling and addition of BSD sgtty terminal handling support by Raul Garcia Garcia <rgg@tid.es> 16/10/95.

mj olesen <olesen@me.QueensU.CA> (changes.txt 2.11 to 2.20)

Thai language support: Vuthichai Ampornaramveth <vuthi@mm.co.th>

CURRENT MAINTAINER
@MAINT@

LOCATION
<www.linux-france.com>