LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: sunmoon1997

让你的终端同时支持中文和 PP 的背景:)

[复制链接]
发表于 2004-12-21 00:46:53 | 显示全部楼层
我用的也是udev...... :ask
ls确实不可以显示中文么?

PS。似乎原本的unicon是由输入法的~
发表于 2004-12-21 07:36:57 | 显示全部楼层
又重新编译了一下内核,这次全部正常了。也不需要重新登陆就可以正常显示中文,ls , cat , vi 都可以。
有 glc 确实方便。
我的步骤:
  1. emerge nitro-sources
  2. cd /usr/src/linux
  3. bzcat ~/linux-2.6.9-nitro4-unicon.patch.bz2 | patch -p1
  4. make menuconfig      (choose unicon console support)
  5. make && make modules_install
  6. install the new kernel to /boot
  7. cat "unikey" >> /etc/modules.autoload.d/kernel-2.6
  8. cat "encode-gbk" >> /etc/modules.autoload.d/kernel-2.6
  9. chmod +x /etc/init.d/unicon
  10. rc-update add unicon default
复制代码

重启,ok!
发表于 2004-12-21 10:08:03 | 显示全部楼层
最大的遗憾还在于没有输入法,基本上没法切换到中文目录和编辑中文文件
发表于 2004-12-21 15:43:15 | 显示全部楼层
Post by orphen
似乎原本的unicon是由输入法的~

到底是什么问题导致的呢? :ask  :ask
手动编译的有没有输入法呢?
发表于 2004-12-21 16:59:07 | 显示全部楼层
Post by maxzhongcn
又重新编译了一下内核,这次全部正常了。也不需要重新登陆就可以正常显示中文,ls , cat , vi 都可以。
有 glc 确实方便。
我的步骤:
  1. emerge nitro-sources
  2. cd /usr/src/linux
  3. bzcat ~/linux-2.6.9-nitro4-unicon.patch.bz2 | patch -p1
  4. make menuconfig      (choose unicon console support)
  5. make && make modules_install
  6. install the new kernel to /boot
  7. cat "unikey" >> /etc/modules.autoload.d/kernel-2.6
  8. cat "encode-gbk" >> /etc/modules.autoload.d/kernel-2.6
  9. chmod +x /etc/init.d/unicon
  10. rc-update add unicon default
复制代码

重启,ok!

老兄使用的是udev么?
我也重新编译了kernel,可是还不能在ls显示中文,nitro4的内核,vi和cat都可以的
老兄能把步骤说的再详细些么?例如内核的配置注意什么?
发表于 2004-12-21 17:04:37 | 显示全部楼层
找到问题所在了,突然想起来的
我的tty下的locale是POSIX的
修改为zh_CN.GB18030就好了
发表于 2004-12-21 17:11:56 | 显示全部楼层
Post by sunmoon1997
我也发现普通用户不行,到底是什么原因了,这不会也存在权限问题吧:(

在我的终端修改locale为zh_CN.GB18030后,普通用户也没有问题了,可以显示中文

现在唯一的问题就是中文输入
正常的unicon应该是可以输入中文的吧
发表于 2004-12-24 00:39:19 | 显示全部楼层
ls --show-control-chars
 楼主| 发表于 2004-12-26 18:31:29 | 显示全部楼层
又完善了一下补丁, 修正了鼠标经过中文时, 中文会变乱码的 bug, 也部分解决了半个汉字的问题。另外还发现了 gensplash 有个小 bug, 不过一般情况下对系统没有影响(fbsplash_putc 将字体的前景和背景色反调了)。
发表于 2005-1-12 14:57:18 | 显示全部楼层
unicon的启动脚本有问题,致使不能正确的加载模块
请重新emerge unicon
忘了glc现在更新还没有确定
贴出来了

  1. #!/sbin/runscript


  2. source /etc/conf.d/unicon >/dev/null 2>&1

  3. # default settings
  4. test -z "${DEFAULT_ENCODING}" &&  DEFAULT_ENCODING="gbk"
  5. test -z "$ENCODINGS" && ENCODINGS="gbk"

  6. if [ -z "${UNICON_TTYS}" ]; then
  7.         if [ -n "${RC_TTY_NUMBER}" ]; then
  8.                 UNICON_TTYS=$(seq 0 "${RC_TTY_NUMBER}")
  9.         else
  10.                 UNICON_TTYS="0 1 2 3 4 5 6"
  11.         fi
  12. fi

  13. load_module () {
  14.         [ -n "`/sbin/lsmod | grep ${1//-/_/}`" ] && return
  15.         /sbin/modprobe $1 >/dev/null 2>&1
  16. }

  17. load_modules () {
  18.         local moddir="/lib/modules/`uname -r`/kernel/drivers/video/unicon"
  19.         if [ -f "$moddir/unikey.ko" ];then
  20.                 load_module unikey
  21.         fi
  22.         if [ -n $ENCODINGS ];then
  23.                 for m in $ENCODINGS
  24.                 do
  25.                         if [ -f "$moddir/encode-$m.ko" ];then
  26.                                 load_module encode-$m
  27.                         fi
  28.                 done
  29.         else
  30.                 for m in $ENCODINGS
  31.                 do
  32.                         load_module `basename $m`
  33.                 done
  34.         fi
  35. }

  36. start() {
  37.         ebegin "Setting unicon"
  38.         load_modules

  39.         if [ -f "/usr/lib/unicon/direct.uni" ];then
  40.                 for x in ${UNICON_TTYS}
  41.                 do
  42.                         /usr/bin/setfont  -u /usr/lib/unicon/direct.uni -C /dev/tty$x >/dev/null 2>&1
  43.                         /usr/bin/uniconctrl --$DEFAULT_ENCODING tty$x >/dev/null 2>&1
  44.                 done
  45.         else
  46.                 ewarn "you should emerge unicon first."
  47.         fi

  48.         eend $? "Failed to set unicon"
  49. }

复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表