| 威廉 · 汉木头 ( @ 2007-03-05 13:16:00 |
manpages-zh包
manpage的中文包中的文件是gb码的,在utf8环境下无法使用。
今天apt-get install manpages-zh,后, 在查看手册时都是乱码,这是因为我一直用utf8的原因。
于是我将gb码的文件都转成了utf8的:
cd /usr/share/man
mkdir zh_CN.UTF-8
for f in `find zh_CN -type f`; do echo $f; i=`basename $f`; d=`echo $f|cut -d / -f 2`; mkdir -p zh_CN.UTF-8/$d; zcat $f | iconv -f gb2312 -t utf8 | gzip -f > zh_CN.UTF-8/$d/$i; done
转换完成后,我用zcat查看这些utf8文件没有问题,但是一旦man ls时,仍然是乱码。
看了一下man命令的手册。man -Tutf8 ls就好了,就是有一个小问题,在konsole上显示时,出现汉字重叠现象; 但 man -Tutf8 ls | less则没有此问题。
写一个脚本,命名为man.utf8
#!/bin/sh
which less > /dev/null || echo "man needs less!"
man -Tutf8 $* | less
做一个别名alias,方便使用。
echo alias man='~/script/shell/man.utf8' >> ~/.bashrc
echo alias cman='LC_ALL=C man' >> ~/.bashrc
manpage的中文包中的文件是gb码的,在utf8环境下无法使用。
今天apt-get install manpages-zh,后, 在查看手册时都是乱码,这是因为我一直用utf8的原因。
于是我将gb码的文件都转成了utf8的:
cd /usr/share/man
mkdir zh_CN.UTF-8
for f in `find zh_CN -type f`; do echo $f; i=`basename $f`; d=`echo $f|cut -d / -f 2`; mkdir -p zh_CN.UTF-8/$d; zcat $f | iconv -f gb2312 -t utf8 | gzip -f > zh_CN.UTF-8/$d/$i; done
转换完成后,我用zcat查看这些utf8文件没有问题,但是一旦man ls时,仍然是乱码。
看了一下man命令的手册。man -Tutf8 ls就好了,就是有一个小问题,在konsole上显示时,出现汉字重叠现象; 但 man -Tutf8 ls | less则没有此问题。
写一个脚本,命名为man.utf8
#!/bin/sh
which less > /dev/null || echo "man needs less!"
man -Tutf8 $* | less
做一个别名alias,方便使用。
echo alias man='~/script/shell/man.utf8' >> ~/.bashrc
echo alias cman='LC_ALL=C man' >> ~/.bashrc