- 在线时间
- 1957 小时
- 最后登录
- 2024-6-29
- 注册时间
- 2004-4-26
- 听众数
- 49
- 收听数
- 0
- 能力
- 60 分
- 体力
- 40950 点
- 威望
- 6 点
- 阅读权限
- 255
- 积分
- 23860
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 20501
- 主题
- 18182
- 精华
- 5
- 分享
- 0
- 好友
- 140
TA的每日心情 | 奋斗 2024-6-23 05:14 |
---|
签到天数: 1043 天 [LV.10]以坛为家III
群组: 万里江山 群组: sas讨论小组 群组: 长盛证券理财有限公司 群组: C 语言讨论组 群组: Matlab讨论组 |
Chinput 常见问题及解答
% ~. C/ J( y) x: B ~~~~~~~~~~~~~~~~~~~~~~
$ J! ^3 l% z9 Y, w- q {( MQ. 为何Chinput不能在 xxxx 中输入?
6 k. u1 Z) ~8 y$ @A. 首先确定是否是由Locale环境或字体引起的, 然后看看 xxxx 是否支持" _. P7 l6 E% }' r5 B
XIM.) S! J% R$ @+ q( F6 Z; |* L# F
# }! S) u$ k( A- w* x: Q
Q. 我已经在非中文平台的环境下运行支持XIM的软件, 启动Chinput, 为何* j2 }) a; l/ X5 N" S
不能输入中文?
4 b3 x$ }7 j% ?# }, k) YA. 软件应该在Chinput之后启动, 否则, 软件找不到输入server.) N! K- H5 u7 A9 \7 s# U/ ~
但是现在的流行趋势是无论在输入软件启动前还是启动后都应支持输入.9 f& W& g- ^( ]1 j. R. j4 x
: E i9 |8 f$ \1 c; C$ g& {) U
0 ^& |- ^$ @) a. ?" JQ. 我如何切换输入方法?+ F: \ J9 q; W7 q7 Z
A. 输入方法的切换方法有两种, 一是按Control-Shift轮换切换, 二是通过' C, e7 B5 Q' J8 ]
Chinput的控制条zwincontrol切换. 如果你只使用一种输入方法, 也可以- m" P9 @# E7 @
在资源文件中设定Chinput启动时的输入方法. 在缺省的资源文件中有各种& E P' P0 ]/ H4 _( u2 \' T
输入方法的名称, 比如对五笔字型可以设定为
: p5 N% M; n1 c- q9 t chinput.inputmethod.gb = WuBi
7 [+ L' z. t9 E0 w; U
7 |" N1 q$ |+ w" tQ. 如何切换全角/半角模式和中/英文标点符号模式?0 T, z' u! n9 `! ]& j. c+ E
A. 改变上述模式的方法有许多种:
C3 w$ T3 Y2 r 1. 在Root输入风格下, 可以直接按输入条上的按钮改变全角/半角和中/英文
; P4 _* X0 H' k0 @9 U V 标点符号. 9 r; L1 m7 O0 V5 B$ Y
2. 可以通过Shift-space改变全角/半角模式, 通过Control-period改变
# d3 T( D6 a! | 标点符号模式8 f) @& G- D5 M" Q5 u) W
3. 可以通过控制条zwincontrol改变上述模式' _) O- K# a0 j' F
4 u# ?1 O$ O# ~/ w$ J2 D
Q. 我平时使用五笔字型, 如何设置更方便?
5 i# O. P1 L; D: H* i6 S, K9 t& bA. 首先你可以把缺省输入方法设置为五笔字型, 其次, 对于OnTheSpot输入. J! |2 V' @* Y( B, H m: j
风格, 你可以设置
' {* d1 x, a+ |, F0 u chinput.cmode = NO
' l# a0 s9 N7 E# l1 z) f 这样在输入时不弹出输入选择窗口, 输入更加方便./ T; t* j; Q$ w9 H$ I5 i) X4 o
5 j. L8 s& l3 f# n0 zQ. 为什么我的软件不能输入中文?. R( c5 w( [$ v$ B2 F
A. 有的软件不支持XIM协议, 所以不能输入中文; 有的软件虽然支持
" ?4 K6 f& P! J" @, [ XIM协议, 但是启动时使用的输入模式非RootWindow模式, 可能
9 L6 A$ t* y& A* Q 与输入服务器联接不上, 在这种情况下, 只要设置软件的资源文件 @7 o1 k, ^) s9 i/ ?0 S+ U
或启动软件时指定参数即可.
4 y3 N) ~) {5 U3 T) t/ k+ j7 M+ `9 c6 {" ?+ t) y; A8 _: w
Q. 怎样使软件启动为繁体中文?
- g# o& P' I8 BA. 你需要设置下列环境变量: 6 {- _) Z5 l s' s U" J/ r6 Y' Y
export LC_ALL=zh_TW.Big5
5 ?1 O5 K# ~8 I7 b1 A# l9 G export KDE_LANG=zh_TW.Big5(如果使用KDE软件)
* A0 r: ?4 B. H! O 再执行软件, 就进入繁体中文状态. ) H0 _3 z1 d, y7 B3 S
在TurboLinux6.x上, 可以直接使用runb5命令, 比如:
) |& @; J% \. b runb5 rxvt -km big5 -ls &- N- u+ E0 c1 F+ h* Y
1 t- X& g* @' `4 e% g" _Q. 我怎样使用Chinput输入Big5编码?
5 F, [9 v5 l$ b/ rA. Chinput 提供了两种输入Big5编码的方法: 直接输入, 转换输入.
2 Y* v, K8 L; L' }& Z1 ` Chinput 可以同时支持GB和Big5的输入方法, 并且可以用热键轮回切换. 在
) l5 D* [/ L' N- b# v, i 一般情况下, 输入服务器将根据应用软件的编码自动识别, 比如你现在使用
* C o6 j8 H7 j% r% x% Y1 S 的是GB输入方法, 则当遇到GB软件时直接输入, 遇到Big5软件时使用内部的
& Z2 d+ y+ W2 e) [1 G7 S2 G" W" U 编码转换后输入. 如果当前输入方法为Big5输入方法, 同样如此.
2 }. b+ I2 I! O
' D* [! e. W2 V6 y9 @% i* O 另外, Chinput还提供了锁定编码输入的功能, 在控制条 zwincontrol上可以) X9 z3 N& K$ D
锁定输出编码, 它特别适合于在软件中同时输入GB和Big5编码的场合. 比如,3 e, a0 ?: Q7 Y4 U
你启动的netscape是在GB环境下, 到了某一繁体中文的站点, 想输入繁体中文) l) G. C5 G& K2 z/ v
作查询. 就可以使用锁定编码功能.
( y# r& G/ t" c
; D5 S# w7 k2 b: S9 O, H b/ A3 B: _0 i
Q. 当前的软件不支持中文输入, 我怎样隐藏输入条?) R8 v) w6 J) r* U- b9 u
A. 按下Control键, 然后用鼠标左键点击输入条.6 E: y$ o/ d2 B# w9 X* \- v
' A& t6 |0 k/ v2 T' SQ. 为什么我的软件不支持光标跟随模式?* `: F$ ?. X6 j: Z- F+ P# b$ Q/ _
A. 有些软件在发现是支持根窗口模式的输入服务器是, 不向服务器发送# R' C& N/ C2 R0 ?1 l/ J
有关位置的信息, 所以不支持光标跟随模式. 我们发现绝大部分支持& t. ~8 I/ b: l9 h* H8 J9 t
XIM协议的软件支持光标跟随模式. 所以对少数软件只要修改其源码7 b) f' r* L0 x2 a
就可以了.
: i8 F6 [9 B/ Y) G w( D6 t7 O7 C2 E
Q. 我如何设定软件的输入风格?
0 u0 ?0 P% P4 j( h) |A. 一般来说, 输入风格由软件自动寻找匹配比较恰当. 如果指定输入风格
7 m; l4 c* }& d$ A$ ]3 T7 ~8 [0 P 则应考虑不同软件的命令行参数或资源文件. 以下是一些例子(括号内是" v" m1 P% A7 z7 h7 g! x3 B3 p
可选项):
8 c6 h# p+ J) n: }/ W- P9 X [rxvt]
, F9 q" Q8 l" o* s; H6 V, b rxvt -pt OverTheSpot(Root, OffTheSpot), T. H6 ~9 z- J1 N
[gtk/gnome软件]
6 [' v; u/ h! A app --xim-preedit=position(none, nothing, area, callbacks) \
" ]8 k( z+ r/ G, X8 c --xim-status=nothing(none,area,callbacks): M( D* Q; A4 n6 @1 h/ Q& p
[qt/kde软件]
+ V1 X) S7 u l& E5 o, N app -inputstyle overthespot(offthespot,root)1 |1 d3 y1 a) _* f- w' R9 N
[Motif, netscape]# C# b n( L' p- |
资源文件: *preeditType: OverTheSpot(OffTheSpot,Root,OnTheSpot)3 ]% G4 D- Q: H" ]9 Q9 }
[Mozilla]+ p; L: u5 r+ K9 X- W4 C
资源文件 ~/.mozilla/profile/prefs.js
) @% k9 x: }. B7 ~ user_pref("xim.input_style", "on-the-spot");
: ]. I6 s" _" u$ o9 g2 i$ S- m on-the-spot,over-the-spot,separate 可选 . }; g4 Q8 y) Q3 T
4 T7 a7 ~; y/ LQ. 我已经设定了输入风格, 为何看不到输入条呢?0 D }+ S0 t2 Y; l$ E7 ^! R' r
A. 如果在资源文件中指定输入风格, 则输入风格是由用户指定并且可以通过
, `' y- z% A. V5 |+ _) d& {# S Alt-Space 切换, 但是如果窗口输入风格不支持目前的输入风格, 则可能5 F/ }: C0 b1 g. k
导致输入条不可见.
9 t4 b3 @9 ^( G- s
* y+ I* C, M) C# lQ. 我的Netscape为什么不能输入中文.1 t7 S, u4 m" R' K" e2 [! y! f
A. 首先检测你的系统是否支持中文locale. 然后从TurboLinux或CLE拷贝
5 q" Z$ b# y! ~* \ 一份资源文件, 如有必要, 修改缺省的汉字字体.
& \( c6 N+ C3 T0 u) {
8 l; d, G3 ] WQ. 我怎样修改Mozilla, 使其使用OnTheSpot输入风格?
; I$ e1 N0 O, R' u: X% O, u/ Q! G5 QA. 首先关闭Mozilla, 因为它退出时要重写资源文件. 然后找到资源文件,
6 v9 {0 K$ c2 [0 ?3 w7 }& |* U/ C 在 ~/.mozilla 目录下有不同的profile, 进入后, 编辑文件prefs.js,
6 }6 |8 B! u# {; z' F 增加或改变配置项:4 t/ \. V3 ^. F5 v1 w
user_pref("xim.input_style", "on-the-spot");- I: l& M" ]% ?. @% }
. b$ z0 k# E" ]; H& OQ. 我关闭了Chinput, 结果netscape当掉了, 为什么?) k/ U( U& Z. f* W* a% G( {7 P& F0 m
A. 有的软件在找不到输入服务器后, 不处理错误, 所以当掉.9 s+ L: K/ l% V$ S O
/ f( n Z) _5 Y( i; N5 M! i- _3 R9 x1 N9 g. D
Q. 我怎样增加自己的输入方法?
( s3 _; e1 v J: J* l. |A. 这里有两种情况, 一种是你有一个简单的码表, 想让Chinput支持该码表;
6 _: l% w: @! c- U% I$ ?# I- r 另外一种情况是你想建立一个新的模块, 你的输入方法挂在你的模块下.- c3 P9 M4 Q& A3 M7 m9 \
1 P8 G: ~* u& u% P' r
对于第一种情况, 你必须按照unicon的码表转换方式把你的码表转换成
: L$ x4 S; V! z9 B, N .cin 格式, 然后再利用里面的工具转换成.tab格式, 把它拷贝到/usr/lib/unicon2/ {$ U7 j: J- ?; x' n V4 o& H; e0 q
的相应目录下. 然后手工修改或利用zwincontrol修改资源文件3 ]- j4 c5 I4 ^3 u- h, H: K
/usr/lib/ZWinPro/Chinput.ad 或 ~/.chinput(优先). 例如增加
1 H; x& @& Q: G" @/ G! k* a Z: x 名为"FOOBAR"的输入方法, 格式为
: Q" @& a& T/ o; T$ q5 b; P7 G [FOOBAR]
2 o9 N$ H0 p7 m3 g ^ IMENAME = 福巴输入
# x6 o2 n; R) O5 V& X0 g" O) ^# q IMENAME = ....(Big5名字)
' I0 S3 N; n% B( Q0 x ENCODING = GB: p9 E2 d8 G3 e. Y$ }/ _
FILE = gb/FOOBAR.tab
. F" U7 ~7 V; F, e; K MODULE = /usr/lib/unicon2/TL_hzinput.so8 Y+ z5 ^' N/ m
FAVORITE = YES(缺省列出)/ }& t h) j& J8 ~& W( ^8 g! F" F" [
9 ] t6 V, X5 I. t1 W
Q. 我发现在qt/kde下使用off-the-spot风格有问题,如何解决?
8 y7 n- f" @6 B A( O& `; o; IA. qt/kde的缺省输入风格是over-the-spot, 如果你确实想用off-the-spot,8 d/ T0 u) Y3 U* Z# ~
可以把资源文件中的areamode设置为:
! N" y( {5 s5 [& k- }; Y- }# `- v' R) F0 C# [3 |
chinput.areamode = SERVER1 J* e: a' F; d- c
' {, c! k+ y+ y
这样输入服务器将负责定位预编辑区域和状态区域的位置和字体颜色 |
|