2008/02/07

Ubuntu: 中文输入及 scim

没有评论:
The complete solution:
1. Use Synaptic to remove scim-* completely.
2. Remove previously installed SCIM files/data using terminal:
sudo rm -rf /usr/bin/scim
sudo rm -rf /usr/local/bin/scim
sudo rm -rf /etc/scim
sudo rm ~/.scim
sudo rm /root/.scim
3. Reinstall SCIM through System - Administration - Language Support.
基本等同于
sudo apt-get install language-pack-gnome-zh language-pack-gnome-zh-base language-pack-zh language-pack-zh-base language-support-zh
sudo apt-get install scim scim-chinese scim-pinyin

4. If Pinyin not found in scim setup-> IMEngine, then download scim-pinyin, scim-tables,
./configure
make
sudo make install
奇怪的是 sudo apt-get install scim-pinyin 无法成功
5. 如安装之后在firefox和google的输入框还是无法敲中文。可以如下处理:
im-switch -s scim -z default #设置 scim 为缺省输入法
logout and login again. In order to achieve this, you may need to install:
im-switch scim-qtimm
6. 有可能会遇到修改文件名时不能输入,在firefox中不能光标跟随,在gaim,pidgin,amsn,emesene,eva,gtalk等聊天软件不能输入文字等等的问题.解决方法如下:
修改 /etc/X11/xinit/xinput.d/scim
改成这样:
#GTK_IM_MODULE=xim
#QT_IM_MODULE=xim
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
重启动,应该可以了
========
附:查看缺省语言
locale
say en_US is the locale, then using command:
im-switch -z en_US -s scim # set scim default
另:
我现在从windows xp 主机向 ubuntu 机器上传文件,用的ssh ftp client。上传的中文文件名在ssh ftp client中正常,但在ubuntu 下用ls 显示依旧是乱码(view encoding already changed to chn in terminal)。如果用
ls *.pdf | grep pdf
则可正常显示。 可能是ssh不支持编码转换。
设置LC_ALL和其它属性:
sudo gedit /etc/environment
在编辑器里,将内容修改如下(默认使用中文界面):
LANGUAGE="zh_CN:zh:en_US:en"
LANG=zh_CN.UTF-8
英文界面,将内容修改如下:
LANGUAGE="en_US:en"
LANG=en_US.UTF-8
保存,关闭编辑器
ubuntu 8.04 scim problem
Ubuntu 升级到8.04后,在Kile编辑状态或终端时,有时键盘输入失灵(但箭头键还能用),需要转到其他窗口有一番动作后回来才能用。上网search了一下,觉得是scim的问题。将之关闭则问题消失,但有时又要输入中文,唉,麻烦。
解决方案 1: 换用 scim-bridge 改善 scim 在 Ubuntu 中的表现
经实验: scim-bridge 未解决问题. ;-(
scim-bridge作为客户端用socket和scim通讯, 是用 C 代替了 C++ 编写的,可以解决原来 scim 和 acroread / realplay / vmplayer 等包不兼容的问题。
sudo gedit /etc/X11/xinit/xinput.d/scim
将GTK_IM_MODULE=xim
改成GTK_IM_MODULE="scim-bridge"
然后Restart system. 或者手工启动
scim -d
解决方案 2:
im-switch -s scim -z default
修改 /etc/X11/xinit/xinput.d/scim
改成这样:
#GTK_IM_MODULE=xim
#QT_IM_MODULE=xim
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
重启后可以. ;-)
but it does not work for eric4, a python editor.
scim is a very bad input method, always resulting deadkey.
scim configuration:
去掉“scim设置”的 “前端”->“全局设置”->“将预编辑字符串嵌入到客户窗口中” 前的勾,就一切OK了
Gtk -> remove "embeded input table"

Ubuntu:中文文件名及内容编码转换

没有评论:

文件名的编码转换 convmv

有时通过ssh ftp上载下载文件时,文件名会变成乱码,这就需要用convmv转换文件名。
一个例子: 将”music”这个目录下的所有以 GB2312 编码的文件名的文件和子目录下的文件,转换成以 UTF-8 编码的文件名:
convmv -f gb2312 -t utf-8 --notest -r music
请注意这里的”--notest”选项:如果不提供这个选项,该命令只会做一个转换的测试,并不会真正的转换。因为这个命令有一定的”破坏性”,所 以,当你用这个程序的时候,最好是先不用”--notest”这个选项来做一遍测试,根据程序运行输出的信息来确定是否有个别的文件需要手动进行调整。
其他例子
convmv -f gbk -t utf8 --notest --nosmart *
#安装convmv
apt-get install convmv

转换内容编码用 iconv, 检测用enca

文件内容的编码检测及转换可以结合 2 个工具来完成。 convmv 的用法大致和 iconv 相似。
iconv -f gbk -t utf8 input.file > output.file

一般ubuntu下用utf8, windows下用 gbk。gb2312 (国标里最小最早的一个编码标准,6763个汉字),gb18030是最新的标准,涵盖27564个汉字,向下兼容gb2312和gbk。
1.如果你不知道你所要转换的文件的编码格式,你可以通过 enca 这个工具来检测编码。举例如下:
enca foo.txt
Universal transformation format 8 bits; UTF-8
2.如果你事先已经知道了文件的编码或者通过检测知道了文件的编码,可以通过 GNU 的 iconv 来进行编码转换。以下是一个例子用来把文件的编码从 GB2312 转换成 UTF-8:
iconv -f gb2312 -t utf-8 foo.txt > foot.txt.utf-8
提醒:iconv 的输出默认是直接输出到标准输出(standard output),通常就是你的屏幕上。所以,你需要使用”>”的重定向符号来把输出转存到一个”新”的文件里面去。切不可在”>”后面使用你 的原始的输入文件名作为输出文件名,因为”>”操作,会首先将其后面的文件清空,然后再运行 “>”前面的操作。也就是说,除了原始的输入文件被清空之外,你什么也得不到。这是很多 Linux 新用户经常会犯的一个”致命”错误。特此提醒。

2008/02/02

Ubuntu:GEdit和Evince显示中文的设置

没有评论:
在英文版Ubuntu下,Gedit文本编辑器默认显示的也是英文,那我们怎样把它设置成中文呢?
  •   在Applications菜单上点右键,选择Edit Menu.在Main Menu的对话框中勾选System Tools--Configuration Editor,并从Applications菜单中开启。
  •   依次开启/apps/gedit-2/preferences/encodings/双击右侧auto_detected,在弹出对话框中点选Add,添加Values值为GB18030,确定后选中,点选Up按钮将其移至第一位。
  •   同样方法,对show_in_menu进行设置,并将GB18030置于首位。
设置文档查看器 Evince 的中文支持

一般这种情况,都是PDF里没嵌入字体。可以
1. 装xpdf看
sudo apt-get install xpdf
sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional


或者

2. 依旧用evince,安装poppler彻底解决和xpdf的依赖关系
sudo apt-get install evince poppler-data