²z xcin JktΡA]AsĶ{ cin2tab H .cin ɪ榡C
Ҧ .cin ɧH # @`ѲŸC

A. sys.cin:

   oO xcin tΪɡAäOΧ@JkAɦWO sys.cinC
   OFP locale 򥻸TA榡pU:

   1. %sys: oO@ӥܧOаOAX{bҦƤeAаOܦɬ
	tΪɡC

   2. INPN_ENGLISH: JkAܦr: "^"C

      INPN_SBYTE: JkAܦr: "b"C

      INPN_2BYTES: JkAܦr: ""C

      INPN_ZHHEX: JkAܦr: "X"C

   3. HUаON xcin bX ASCII rɩXr (ΤX)AC
      pU:

		ASCII_space		# ť
		ASCII_exclam		# ۸ !
		ASCII_quotedbl		# ޸ "
		ASCII_numbersign	# r #
		ASCII_dollar		# r $
		ASCII_percent		# ʤŸ %
		ASCII_ampersand		# and Ÿ &
		ASCII_apostrophe	# Ÿ '
		ASCII_parenleft		# A (
		ASCII_parenright	# A )
		ASCII_asterisk		# P *
		ASCII_plus		# [ +
		ASCII_comma		# r ,
		ASCII_minus		#  -
		ASCII_period		# I .
		ASCII_slash		# ׽u /
		ASCII_0
		ASCII_1
		ASCII_2
		ASCII_3
		ASCII_4
		ASCII_5
		ASCII_6
		ASCII_7
		ASCII_8
		ASCII_9
		ASCII_colon		# _ :
		ASCII_semicolon		#  ;
		ASCII_less		# p <
		ASCII_equal		#  =
		ASCII_greater		# j >
		ASCII_question		# ݸ ?
		ASCII_at		# pѹ @
		ASCII_A
		ASCII_B
		ASCII_C
		ASCII_D
		ASCII_E
		ASCII_F
		ASCII_G
		ASCII_H
		ASCII_I
		ASCII_J
		ASCII_K
		ASCII_L
		ASCII_M
		ASCII_N
		ASCII_O
		ASCII_P
		ASCII_Q
		ASCII_R
		ASCII_S
		ASCII_T
		ASCII_U
		ASCII_V
		ASCII_W
		ASCII_X
		ASCII_Y
		ASCII_Z
		ASCII_bracketleft	# A [
		ASCII_backslash		# ϱ׽u \
		ASCII_bracketright	# A ]
		ASCII_asciicircum	# Ÿ ^
		ASCII_underscore	# u _
		ASCII_grave		# Ÿ `
		ASCII_a
		ASCII_b
		ASCII_c
		ASCII_d
		ASCII_e
		ASCII_f
		ASCII_g
		ASCII_h
		ASCII_i
		ASCII_j
		ASCII_k
		ASCII_l
		ASCII_m
		ASCII_n
		ASCII_o
		ASCII_p
		ASCII_q
		ASCII_r
		ASCII_s
		ASCII_t
		ASCII_u
		ASCII_v
		ASCII_w
		ASCII_x
		ASCII_y
		ASCII_z
		ASCII_braceleft		# jA {
		ASCII_bar		# or |
		ASCII_braceright	# jA }
		ASCII_asciitilde	# Ÿ ~

   4. Xd: 榡:

	%charcode begin
	plane1 		0x??-0x??
	plane2 		0x??-0x??
	plane3 		0x??-0x??
	plane4 		0x??-0x??
	%charcode end

      䤤 0x?? O 16 i쪺ƦrC plane1,2,3,4 ON@ӤrĤ@B
      GBTB|ӤXAMAëDҦX|Ψ|ӽXAҦp Big5 P GB
      uݤGӽXYiAGoرpuݳ] plane1 P plane2 YiCt~AǤ
      XY plane i঳XqXdAҦp Big5 X plane1 qXd
      AhiHƳ]⦸ plane1C



B. @ʿJk (gen_inp) :

   ɬOM gen_inp Ҳզӳ]pC榡pU:

   1. %gen_inp: oO@ӥܧOаOAX{bҦƤeAаOܦɬ
	gen_inp ҲձMΪ cin ɡC

   2. %ename: Jk^WC

   3. %cname: JkWC

   4. %selkey: JkƦrC

   5. %keyname begin
	key  char
	...  ....
      %keyname end	

      rPҥNΦrC key rA char ΦrC

   6. %endkey: JkrC

   8. %chardef begin
	keycode  char	[*]
	.......  ....
      %chardef end

      JkrX (keycode) Pҩwqr (char)CYҦr
      JkCCYP@ӤrhӿJkrXɡAڭ̥iHb䤤@ӦrX
      WХܤ@ * AܦrXӤruNXvAҦp:

	abcd	{
	abce	{	*
	abcf	{
	....	..

      hĤG檺 "abce" Yu{vruNXvAJknܦrr
      XɡAYHXӰܡC


C. cin2tab:

   {O .cin ɽsĶ{AiHsĶWz .cin ɡAsXɦW
   .tabCѩ󥦦bsĶ@ʿJkɬOAѦ sys.tab TAGb
   sĶLɤeAn sys.tab ɡCY cin2tab Ah|
   LXpUT:

CIN2TAB version (xcin <version number>) 
Usage: cin2tab [-v] [-r <rcfile>] [-s <sysfn>] <cin_fn>

   䤤 -r w rcfile ɦWA -s wtΪɦWA -v hLXhĵiT
   (ثeﶵS@)C@ӨApG rcfile P sys.tab bw]mɡA
   zUoӰѼƥiC

   YsĶ\A cin2tab |LXpUT:

THH:thhpc $ cin2tab cj
CIN2TAB version (<version number>)
cin2tab: use module: gencin version <gencin version number>
cin2tab: number of keyname: 25
cin2tab: max length of keystroke: 5
cin2tab: total char number of this encoding: 13973
cin2tab: number of char defined: 13093
cin2tab: number of keystroke code defined: 13093
cin2tab: memory model: 1

   ĤGNsĶ .cin ɩҥΪsĶҲ (gencin) Ψ䪩XC
   ĤTNJkwqF 25 ӦNqrC
   ĥ|NJk̤jrơC
   ĤN locale 夺Xү]t̤jrơC
   ĤNJkҩwqrơCYƦrjĤ檺ƦrAhܦYǤ
	rwqFh keystroke C
   ĤCNJkҩwq keystroke (JkrX) ӼơC
   ĤKNJkĥΪOҦCҦ 1 NuΤ@ 4 bytes 
	ܤr keystroke, oOb̤jrƤp󵥩 5 ɡCҦ 2 N
	 8 bytes Ŷܤr keycode, oOb̤jrƤj󵥩 6
	ɡC̤jrƪW 10C


T.H.Hsieh
