From xiaokun@stats.gla.ac.uk Mon Oct  4 10:43:04 EST 1993
Article: 18651 of alt.chinese.text
Path: news.cs.indiana.edu!usenet.ucs.indiana.edu!sol.ctr.columbia.edu!math.ohio-state.edu!cs.utexas.edu!not-for-mail
From: xiaokun@stats.gla.ac.uk (Xiaokun Zhu)
Newsgroups: alt.chinese.text
Subject: [ANNOUNCE] CCTeach NEW Version (1.0) release
Date: 4 Oct 1993 03:55:02 -0500
Organization: UTexas Mail-to-News Gateway
Lines: 298
Sender: daemon@cs.utexas.edu
Message-ID: <20447.9310040857@milkyway.stats.stats.gla.ac.uk>
NNTP-Posting-Host: cs.utexas.edu

Archive-name: /act/archive/input/cc-teach0


~{Ub@oJGPB0f!<VPNDJ&85!=#(#V#e#r#s#i#o#n!!#1#.#0#)#.NR<:IO9)5=@nScCm~}
~{#(#g#r#u#m#p#y#.#s#s#c#.#g#o#v#):M#(#i#f#c#s#s~} ~{#.#o#r#g#)#.~}

~{PB5D9&D\0|@(#:~}
~{!wV'3V#"JdHk7=7(>+=b#"!#~}
~{!wV'3V#H#ZDZBkJdHk!#~}
~{!wJ5SC3LPr#t#i#t#2#n#f#(#U#n#i#x0f#)#,=+#c#x#t#e#r#m5D#"#*#.#t#i#t#"8qJ=~}~
~{!!W*;;N*#c#x#t#e#r#mPBCfC25D#"#.#t#i#t#n#f#"8qJ=!#~}
~{!wJ5SC3LPr#l#x#d#s#(#U#n#i#x0f#)#,A*OkWV5d9$>_!#~}
~{!wJ5SC3LPr#h#k#e#y#s#(#U#n#i#x0f#)#,HH<|N,;$9$>_!#~}


~{!<VPNDJ&85!=5DSCM>JGV85<SC;'Q'O0VPNDJdHk#,K|5D9&A&828G9z1j#G#B~}
~{:M#B#I#G#5#(L(Me5D#E#T#e#n:MOc8[5D#)A=VV;7>3#,V'3VOVSP5D:M=+@4~}
~{5DKySPJdHk7=7(#.SPA=VVLWB7#,KDVVTlPN#.~}

~{5ZR;LW8tI=4rE#9&#,4SR;VVJdHk7=7(W*;;5=AmR;VVJdHk7=7(#.@}Hg4SF4~}
~{Rt5=Ne1J#,4S#B#I#G#5DZBk5=2Vr!5H#.5Z6~LWOkHk7G7G9&#,8fK_Dc5DPD~}
~{T8#,!<VPNDJ&85!=8x3vKySP?ID\5D4p08#.@}HgNe1J5D#z9&7r#.~}

~{#G#B:M#E#T#e#n5D#B#I#G#5TlPNOTJ>SI!<VPNDJ&85!=WT6/H76(#,SC;'?I~}
~{TZ#G#B;7>3VPV86(#H#ZTlPN#,TZ#B#I#G#5;7>3VPV86(#H#o#n#g#K#o#n#g~}
~{#B#I#G#5TlPN#.~}

~{!<VPNDJ&85!=SP#P#C:M#u#n#i#xA=VV0f1>#,#P#C0fDZ:,H}8v3LPr#,#c#c#t#c#h!"~}
~{#i#t#2#d#i#c!"#c#z#2#w#b!##U#n#i#x0fDZ:,Ay8v3LPr#,#c#c#t#c#h!"~}
~{#i#t#2#d#i#c!"#c#z#2#w#b!"#t#i#t#2#n#f!"#l#x#d#s!"#h#k#e#y#s!#~}
~{Gk!<VPNDJ&85!=PhVPND;7>3#,Hg#c#x#t#e#r#m#,#Z#W#D#O#S#,#K#C5H#.~}

~{?*0|#P#C0f!<VPNDJ&85!=#:~}
~{"Y#f#t#p!!#C#C#T#e#a#c#h#1#0#.#z#i#p#,~}
~{"ZV4PPC|An~}
~{#p#k#u#n#z#i#p!!#C#C#T#e#a#c#h#1#0~}
~{"[>M?I?*J<GkJ&85#c#c#t#c#h#.~}

~{?*0|#u#n#i#x0f!<VPNDJ&85!=#:~}
~{"Y#f#t#p!!#C#C#T#e#a#c#h#1#.#0#.#t#a#r#.#Z~}
~{"ZV4PPC|An~}
~{#z#c#a#t!!#C#C#T#e#a#c#h#1#.#0#.#t#a#r#.#Z#|#t#a#r!!#x#v#f!!#-~}
~{#c#d!!#C#C#T#e#a#c#h#1#.#0~}
~{#m#a#k#e~}
~{"[>M?I?*J<GkJ&85#c#c#t#c#h#.~}

~~{~{S"ND0f5DJ9SCK5Cw#,<{#C#C#T#e#a#c#h#.#r#e#a#d#m#eND<~#,VPND0f~}~~}
~~{~{OB4NTYLy#.~}~~}

~~{~{P!@%3f!!!!!!!!!!!!!!!!!<WT<:6/JV!!7aRBWcJ3!=~}~~}
~~{~{M1<&!QGPK}5D8g!QRy9}~}~~}  xiaokun@stats.gla.ac.uk 
=========================CCTeach.readme===============================
I updated CCTeach software packages so that it includes
three utility program (tit2nf, slxd, hkeys) to support "cxterm NewFace" 
(patch cxterm to support CiZu, LianXian, dynamic shortcut key, 
wild key match, dynamic define phrase, etc) and unloaded the package to 
ifcss.org /software/unix/input, /software/msdos/input (CCTeacher.readme,
CCTeacher1.0.tar.Z, CCTeacher10.zip) and grumpy.ssc.gov (143.202.140.25) 
/pub/Chinese-Files/Hanzi-Input


NEW for version 1.0
1. supoort preview of input method. 
2. support HZ encode input and display (verion 0.9 only for display).
3. utility program "tit2nf" (unix only) convert cxterm Input Table "*.tit"
   to cxterm NewFace Input Table file "*.titnf"
4. utility program "lxds" (unix only) creates, automiticly studies, 
   and modifies by hands associative dictionary which is the part of 
   cxterm NewFace.
5. utility program "hkeys" (unix only) modifies hot key list which
   is the part of cxterm NewFace Input Table file.


"cctch" can help new users learn Chinese Character input method. 
It suppots Both GB and Big5 (ETen and HongKong) standard. GB interal 
code, QuWei code and Big5 (ETen and HongKong) 
interal code are integrated into "cctch", others CC input method
also are supported by external dictionary file. 
The program "it2dic" will help users convert text input
table of Chinese Character into external dictionary format.
The program "wb2cz" will help users encode Chinese Character 
Phrase with Wu Bi input method. 

There are two work modes and four display modes in "cctch". The first 
is mapping a kind of CC input method to another. The second is 
supporting wildcode match and display preview of 
a CC input method. If you know a kind of CC input method, for example 
PinYin, You may use the first mode to learn some new input method, 
for example WuBi. If you do not know any CC input method, but you like
to learn, you may use the second mode. "cctch" selects automaticly GB 
or ETen Big5 display mode according to its dictionary, but user can 
also override to set display mode to HZ or HongKong Big5. 

I have included four popular input dictionary  "wubi.dic", 
"tonepy.dic" based GB. and "cj.dic", "etzy.dic" based ETen Big5.
For any other input method, if you got its original text input table, 
for example "*.tit" files from cxterm packages, you can use 
program "it2dic" to convert it to dictionary format. 

"cctch" need some Chinese Character enviroment to support CC display,
for example, cxterm in X-window, ZWDOS or KC in PC, etc. 

----------------------------------------------------------------------

1. FILE LIST:
	CCTeach.doc --- this file
        CCTeach10.zip --- Chinese Character Theacher of PC version 1.0
		it2dic.exe --- convert CC input table into dictionary format
		cctch.exe --- CC input method Teacher
		cz2wb.exe --- encode CC phrase with Wu Bi input method
		README --- this file
		wubi.dic --- Wu Bi input method dictionary
		tonepy.dic --- Tone PiYin input method dictionary
		cj.dic --- CJ input table
                etzy.dic --- ETZY input method dictionary 
		wubi.it --- Wu Bi input method table
		1000.gb --- test file GB format
		1.cz --- test file of Ci Zu
                1.b5 --- test file of ETen big5
                1.hb5 --- test file of HongKong Big5
        CCTeach1.0.tar.Z --- Wu Bi tools of unix version 1.0
		Makefile
		it2dic.c --- convert CC input table into dictionary format
		cctch.c --- CC input method Teacher
		README --- this file
		wubi.it --- Wu Bi input table
		tonepy.it --- Tone PiYin input table
		cj.it --- CJ input table
                etzy.it --- ETZY input table 
		1000.gb --- test file GB format
                1.b5 --- test file of ETen Big5
                1.hb5 --- test file of HongKong Big5
		utils/cz2wb.c --- encode CC phrase with Wu Bi input method
		utils/tit2nf.c --- Input Table converter ("*.tit" ==> "*.titnf")
		utils/lxds.c ---  LX dictionary study
		utils/hkeys.c --- hotkey study
		utils/1.cz --- test file of Ci Zu
		utils/phrase.gb --- chinese phrase
		utils/1.gb --- test file for LX dictionary
		utils/1.in --- test file for LX dictionary with -l option
		utils/1.i --- test file for LX dictionary with -c option
		utils/1.d --- test file for LX dictionary with -c option

--------------------------------------------------------------------------

2. Install:

  For PC user, pkunzip file wbtools10.zip. everything is OK!

  For unix user, 
      zcat CCTeach1.0.tar.Z | tar xvf -
      cd CCTeach1.0
      customize the variable BIN.
      make
      make install

---------------------------------------------------------------------------

3. File Format:
  
   it2cit: receive CC word only. The format is 
		[BEGINPREVIEW
                    key CCstring] 
		BEGINDICTIONARY
		    key CCstring
           the same as *.tit fo cxterm packages. The comments line
           is the same as cz2wb. The dictionary of it2cit output is
             HEAD[16] ARRAY[MODE][KEY_LEN] ARRAY_A[7693][KEY_LEN]
           for GB MODE is 6768 and no ARRAY_A, for BIG5 MODE is 5401.

   cctch : output format is 
                  in_key CC out_key 
           if no multi-match, or
                  in_key CC out_key [CC out_key] ...
           If in_key or out_key is internal code, the corresponding key
           will be omitted.

   cz2wb : receive Chinese Character phrase, but ignore signal CC word.
           character '#' or '*' starts comments.

   tit2nf : the difference of "*.tit" and "*.titnf" is 
            AUTORELOAD, AUTOSTUDY, FULLCODE, LXDIC, WILDINPUTKEY 
                (in DEFINITION PART);
            <keys> <Cstring1> <Cstring2> ...
                (in DICTIONARY PART).

--------------------------------------------------------------------------

4. Usage:
   
      it2dit -kkey_len [-wsymbol] [-m[g,b,h]] < infile.it > infile.dic
where option -k defines input key length limited in [4,8]; option -w defnes
wildcode (defaults is ?); and -m[g,b,h] g for GB, b for ETen Big5, h for Hon~
gKong
(defaults is GB). for example,
      it2dic -k4 -wz < wubi.it > wubi.dic
      it2dic -k5 -mb < cj.it > cj.dic

      cctch -i[g,q,b,in.dic] -o[q,g,b,out.dic] [-h] [< infile] [> outfile]
where option -i is for CC input encoding method, its includes four selection~
s:
g for GB internal code, q for Qu Wei code, b for ETen Big 5 internal code, a~
nd 
in.dic for external dictionary. Option -o is for output encoding method, its~
 
also includes four selections. Option -h is for using HZ instead of GB in GB~
 
mode or for using HongKong Big5 instead of Eten Big5 in Big5 mode. 
for example,             
      cctch -ig -oq < 1000.gb 
      cctch -ig -owubi.dic < 1000.gb > 1000.wb
      cctch -ig -otonepy.py < 1000.py 
      cctch -itonepy.dic -owubi.dic
      cctch -iwubi.dic -ow 
        ESCz       <== call all preview
        \033a      <== call preview with a character
	^-Eb       <== call preview with b character
	\005c      <== call preview with c character
      cctch -ib -ocj.dic < 1.b5 > 1.cj
      cctch -ib -oetzy.dic < 1.b5
      cctch -ib -ocj.dic -h < 1.hb5
      cctch -icj.dic -ob < 1.cj
      cctch -icj.dic -ow
      cctch -icj.dic -ow -h

      cz2wb -[c,n] < infile > outfile 
where option -c is for cxterm NewFace CiZu; option -n is for NJStar CiZu. 
For example,
      cz2wb < 1.cz > 1.tit
in file 1.tit you get 9 lines Wu Bi Ci Zu encode table. 

      new2nf < PY.tit > PY.titnf
convert cxterm's Pin Yin input table to cxterm NewFace format

      lxds -m[g,b,h] [-w[0,1,2,3]] [-l,-c] < infile       
where option -mg is for GB mode; -mb for ETen big5 mode; -mh for HK big5 mod~
e.
option -w is weight of knowledge studied, default is -w3. -w0 is no any old ~

knowledge which means create a new LX dictionary. Option -l is for listing
content of LX dictionary. Option -c is for processing input Command.
The command format : ITEM-HanZi ITEM-Hash-Value i NEW-HanZi OLD-HanZi
		     ITEM-HanZi ITEM-Hash-Value d HanZi
for command i, it means inseart NEW-HanZi at previous of OLD-HanZi in 
ITEM-HanZi and for command d, it means delete HanZi form ITEM-HanZi, where 
ITEM-Hash-Value is gotten from the output of opion -l. For example,
      lxds -mg -w0 < phrase.gb   <== create a new LX dictionary "gblx.dic"
      lxds -mg -w3 < cm9309a.gb  <== update LX dictionary "gblx.dic"
      lxds -mg -w1 < hong-lou.gb <== inseart hong-lou.gb into the head of
                                     corresponding LX item.
      lxds -mg -l < 1.in  <== list the contents of items from the file "1.in~
"
      lxds -mg -c < 1.i   <== inseart HanZi into "gblx.dic" based on the 
				command in file "1.i"
      lxds -mg -c < 1.d   <== delete HanZi from "gblx.dic" based on the 
				command in file "1.d"
			       
      hkeys -m[g,b,h] -iname.citnf -dname.dic < infile
where option -m is the same as in lxds; option -i set the name of
Input Table of cxterm NewFace; option -d set the name of dictionary.
For example, 
      hkeys -mg -iWBPYCZ.citnf -dwubi.dic < 1.gb   

----------------------------------------------------------------------------~
---

5. CCTeach is distributed under a GNU COPYING "copyleft" license.

----------------------------------------------------------------------------~
--

6. ACKNOWLEDGE

   "wubi.it" comes from "wubicizu.gb" which is writen by Yu Huang 
   (elkabban@peptide.usask.ca).

   "tonepy.it" comes from "TONEPY.tit" which is part of cxterm package,
   The authors are:
      Yongguang Zhang			Man-Chi Pong
    (ygz@cs.purdue.edu)		     (mcpong@uxmail.ust.hk)

   "cj.it" comes from CJ.tit and "etzy.it" from "ETZY.tit". Both of
   them are the part of "NCTU-CSIE*.tit", which are modified by
   Wei-Chung Hwang (wchwang@csie.nctu.edu.tw) from cxterm packages.

   "1000.gb" is inputed by XiaoYu Li (xiaoyu@grumpy.ssc.gov).

   Many thanks to them.

----------------------------------------------------------------------------~
--


Enjoy!

---
xiaokun Zhu (xiaokun@stats.gla.ac.uk)
    


