NAME¶
kterm - multi-lingual terminal emulator for X
SYNOPSIS¶
kterm [-
toolkitoption ...] [-
xtermoption ...] [-option
...]
DESCRIPTION¶
Kterm is a multi-lingual terminal emulator based on
xterm(1). The
major differences of
kterm from
xterm is that it can handle
multi-lingual text encoded in ISO2022, can display colored text, and has the
statusline function. To input multi-lingual text, both X Input Method (XIM)
protocol and kinput2 protocol can be used. See the sections USING XIM and
USING KINPUT2 for the details.
OPTIONS¶
Kterm accepts all of the
xterm(1) command line options as well as
the following additional options:
- -dfl
- This option indicates that kterm should load fonts
dynamically (on demand). It may freeze kterm and X server in a
moment when a large font is loaded.
- +dfl
- This option indicates that kterm should load fonts
in advance.
- -fl fontlist
- This option specifies fonts to be used. fontlist is
a comma separated list of XLFDs with arbitrary wild-cards. kterm
chooses fonts containing necessary character sets in the list. This
release may use the following character sets:
"iso8859-1",
"iso8859-2",
"iso8859-3",
"iso8859-4",
"iso8859-5",
"iso8859-6",
"iso8859-7",
"iso8859-8",
"iso8859-9",
"jisx0201.1976-0",
"jisc6226.1978-0",
"jisx0208.1983-0",
"jisx0208.1990-0",
"jisx0212.1990-0",
"jisx0213.2000-1",
"jisx0213.2000-2",
"ksc5601.1987-0",
"gb2312.1980-0",
"cns11643.1992-1",
"cns11643.1992-2",
"cns11643.1992-3",
"cns11643.1992-4",
"cns11643.1992-5",
"cns11643.1992-6", and
"cns11643.1992-7".
- -fn iso8859/1-font
- This option specifies a normal (non-bold) ISO8859/1 font to
be used when displaying Latin-1 (including ASCII) text. If it is not
specified, fontlist is used.
- -fr roman-kana-font
- This option specifies a normal JISX0201 font. This font
must have same height and width as the ISO8859/1 font. If it is not
specified, fontlist is used.
- -fkB kanji-font
- This option specifies a normal JISX0208-1983 font to be
used when displaying Kanji text. This font must have same height and twice
width as the ISO8859/1 font. If it is not specified, fontlist is
used.
- -fk@ old-kanji-font
- This option specifies a normal JISC6226-1978 font to be
used when displaying Kanji text. This font must have same height and twice
width as the ISO8859/1 font. If it is not specified, fontlist is
used.
- -fk@B 1990-kanji-font
- This option specifies a normal JISX0208-1990 font to be
used when displaying Kanji text. This font must have same height and twice
width as the ISO8859/1 font. If it is not specified, fontlist is
used.
- -fkD hojo-kanji-font
- This option specifies a JISX0212-1990 font text to be used
when displaying supplementary Kanji.
- -fkO extended-kanji-font-1
- This option specifies a JISX0213-2000-1 font text to be
used when displaying extended Kanji plain 1(3rd level).
- -fkP extended-kanji-font-2
- This option specifies a JISX0213-2000-2 font text to be
used when displaying extended Kanji plain 2(4th level).
- -fkC hangl-font
- This option specifies a KSC5601-1987 font text to be used
when displaying Hangl text.
- -fkA hanzi-font
- This option specifies a GB2312-1980 font text to be used
when displaying Hanzi text.
- -fkG cns-font-1
- This option specifies a CNS11643-1992-1 font text to be
used when displaying Taiwanese text.
- -fkH cns-font-2
- This option specifies a CNS11643-1992-2 font text to be
used when displaying Taiwanese text.
- -fkI cns-font-3
- This option specifies a CNS11643-1992-3 font text to be
used when displaying Taiwanese text.
- -fkJ cns-font-4
- This option specifies a CNS11643-1992-4 font text to be
used when displaying Taiwanese text.
- -fkK cns-font-5
- This option specifies a CNS11643-1992-5 font text to be
used when displaying Taiwanese text.
- -fkL cns-font-6
- This option specifies a CNS11643-1992-6 font text to be
used when displaying Taiwanese text.
- -fkM cns-font-7
- This option specifies a CNS11643-1992-7 font text to be
used when displaying Taiwanese text.
- -flb bold-fontlist
- -fb bold-font
- -frb roman-kana-bold-font
- -fkbB kanji-bold-font
- -fkb@ old-kanji-bold-font
- -fkb@B 1990-kanji-bold-font
- -fkbD hojo-kanji-bold-font
- -fkbO extended-kanji-bold-font-1
- -fkbP extended-kanji-bold-font-2
- -fkbC hangl-bold-font
- -fkbA hanzi-bold-font
- -fkbG cns-bold-font-1
- -fkbH cns-bold-font-2
- -fkbI cns-bold-font-3
- -fkbJ cns-bold-font-4
- -fkbK cns-bold-font-5
- -fkbL cns-bold-font-6
- -fkbM cns-bold-font-7
- These options specify bold fonts.
- -lsp dots
- This option specifies how much space to be inserted between
lines.
- -ka
- This option indicates that kterm should make
connection to the X server with KEEPALIVE socket option. It is useful when
the server is a X terminal that is frequently powered off.
- +ka
- This option indicates that kterm should make
connection to the X server without KEEPALIVE socket option.
- -km kanji-mode
- This option specifies the Kanji code from/to the pty. If
kanji-mode is ``euc'', then it assumes the input/output is coded by
Japanese EUC. If kanji-mode is ``sjis'', then it assumes the input/output
is coded by Shift_JIS code (which is the same as Microsoft Kanji
code).
- -sn
- By default, the status line is in reverse-video (relative
to the rest of the window). This option causes the status line to be in
normal video (the status line is still enclosed in a box).
- +sn
- This option causes the status line to be in reverse
video.
- -st
- This option causes the status line to be displayed on
startup.
- +st
- This option causes the status line not to be displayed on
startup.
- -version
- Just displays the kterm version and exit.
- -xim
- This option indicates that kterm should (try to)
open IM on startup. If no appropriate IM server is running, kterm
does not wait, but connects after a server is available.
- +xim
- This option indicates that kterm should not open IM
on startup.
RESOURCES¶
The program uses all of the
xterm resources as well as the following
vt100 widget specific resources:
- dynamicFontLoad (class
DynamicFontLoad)
- Specifies whether or not kterm should load fonts
dynamically The default is ``true.''
- fontList (class FontList)
- Specifies the name of the fonts. The default is
``-*-fixed-medium-r-normal--14-*, -*-gothic-medium-r-normal--14-*,
-*-mincho-medium-r-normal--14-*.''
- boldFontList (class FontList)
- Specifies the name of the bold fonts. The default is not
specified
- font (class Font)
- Specifies the name of the Latin-1 font. The default is not
specified.
- boldFont (class Font)
- Specifies the name of the bold Latin-1 font. The default is
not specified.
- romanKanaFont (class
RomanKanaFont)
- Specifies the name of the Roman-Kana font. The default is
not specified.
- romanKanaBoldFont (class
RomanKanaFont)
- Specifies the name of the bold font. The default is not
specified.
- kanjiFont (class KanjiFont)
- Specifies the name of the Kanji font. The default is not
specified.
- kanjiBoldFont (class KanjiFont)
- Specifies the name of the bold font. The default is not
specified.
- kanjiMode (class KanjiMode)
- Specifies the Kanji code of pty. The default is
``jis.''
- lineSpace (class LineSpace)
- Specifies the space to insert between lines. The default is
``0.''
- keepAlive (class KeepAlive)
- Specifies whether or not kterm should make
connection to the X server with KEEPALIVE socket option. The default is
``false.''
- statusLine (class StatusLine)
- Causes the status line to be displayed on startup. The
default is ``false.''
- statusNormal (class StatusNormal)
- Specifies whether or not the status line should be in
normal video. The default is ``false.''
- forwardKeyEvent (class
ForwardKeyEvent)
- Specifies whether or not key events should be forwarded to
the conversion server. If false, the server cannot receive key events if
the keyboard focus is set to kterm window but the pointer is on
other windows. It may, however, improve response time of the conversion
server on a slow network. The default is ``true.''
- openIm (class OpenIm)
- Specifies whether or not kterm should (try to) open
IM on startup. The default is ``false.''
- eucJPLocale (class EucJPLocale)
- Specifies the locale of the input method in the form of a
comma separated list. The default is
``ja_JP.eucJP,ja_JP.ujis,ja_JP.EUC,japanese.euc, Japanese-EUC,ja,japan.''
See the section USING XIM for the details.
- inputMethod (class InputMethod)
- Specifies the input method modifier for the current locale.
The default is not specified. (That means using the XMODIFIERS environment
variable.)
- preeditType (class PreeditType)
- Specifies the input styles using XIM protocol in the form
of a comma separated list. Currently, ``OverTheSpot'' and ``Root'' are
supported. The default is ``OverTheSpot,Root.''
ACTIONS¶
The following additional actions are provided for using within the
vt100
translations resources:
- open-im([input-method])
- This action (tries to) open IM for the specified input
method modifier. If input-method is omitted, the last modifier
remains unchanged. If input-method is the key-word XMODIFIERS, the
XMODIFIERS environment variable is used.
- close-im()
- This action closes IM.
- begin-conversion(conversion-atom)
- This action begins conversion to input text using kinput2
protocol. conversion-atom for Japanese conversion is
``_JAPANESE_CONVERSION.''
TERMCAP¶
Termcap(5) entries that work with
kterm include ``kterm,''
``xterm,'' ``vt102,'' ``vt100'' and ``ansi.''
USING XIM¶
Kterm first sets its international environment (locale) using the
vt100 resource "eucJPLocale" (ignoring the LANG environment
variable), because it uses Japanese EUC encoding for the internal input code.
If your system does not support any default locale names, specify an
appropriate one in the app-defaults file.
Kterm, then, sets the locale
modifiers according to the resource "inputMethod" or the XMODIFIERS
environment variable.
When
kterm is started with the "-xim" option or the "Open
Input Method" entry in the vtMenu is selected, it just registers a
callback for notification of instantiation of IM servers. If an appropriate IM
server is running or becomes available,
kterm connects with the server.
Start of conversion depends on the configuration of the IM server.
If
kterm is connecting with a kinput2 protocol server, any IM can not be
opened.
For further information (how to input/convert/correct text, etc.), see the
conversion server's document (
kinput2(1)).
Non-Japanese Languages
To input non-Japanese text, set the
vt100 resource
"eucJPLocale" to your favorite locale name, and set Kanji mode to
Japanese EUC (using the "-km euc" option, "*vt100.kanjiMode:
euc" resource, or the "Japanese EUC Mode" entry in the vtMenu).
This should work for any locale because every character input from the IM is
passed to the pty without any modification in Japanese EUC Mode. Note that
this mechanism will be changed in the future.
CAUTION
Kterm may be hanged when the connecting IM server dies on some specific
timing. Do not kill IM servers on a
kterm which is connected with the
server, and IM servers which is establishing connection with any
kterm.
If you want to kill an IM server, make sure that no
kterm is connected
with the server.
NOTICE
Kterm can not communicate with servers using XIMP protocol based on
X11R5.
By default, pressing control-Kanji key starts conversion for Japanese text using
kinput2 protocol. The conversion server, such as
kinput2(1), must be
started by the time, otherwise you will see warning message `Conversion Server
not found'. For other languages, if any server is available, you can bind a
key to start conversion by changing the translation table.
If an IM is (being) open, conversion using kinput2 protocol can not be started.
For further information (how to input/convert/correct text, etc.), see the
conversion server's document (
kinput2(1)).
SEE ALSO¶
xterm(1),
resize(1), X(1), kinput2(1),
pty(4),
tty(4)
``Xterm Control Sequences''
BUGS¶
Kterm assumes, like
xterm, that all single byte characters have
the same widths, and further, assumes that the widths of multi(two)-byte
characters are as twice as that of ASCII characters.
This version of
kterm uses ``ESC $ B'' to designate the Kanji character
set to input Kanji text in JIS mode.
AUTHORS¶
Far too many people, including:
Katsuya Sano (Toshiba Corp.), Michael Irie (Sony Corp.), Akira Kato (Univ. of
Tokyo), Michiharu Ariza (SRA Inc.), Makoto Ishisone (SRA Inc.), Hiroto
Kagotani (Okayama Univ.), Susumu Mukawa (NTT Corp.).