QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3671|回复: 3

关于slickedit10 for linux的字体配置

[复制链接]
发表于 2005-7-28 16:29:20 | 显示全部楼层 |阅读模式
关于slickedit10 for linux的字体配置

因为一直一来读代码和写东西都非常依赖slickedit,而对于linux跟找不到合适的工具,
除了vi外,其他的工具都很难学上手,幸好slickedit在linux下也有相应的版本,但是
它在linux下的中文支持一直差强人意,于是花了一上午的功夫好好研究了一下它的机制,
在magiclinux上对其字体显示做了修改。

修改步骤:
1、修改vs(visual slickedit的简称,以下同)的unicode字体设置
在vs的安装目录下slickedit/unicode中就是vs的unicode字体配置的东东所在位置,vs是
通过该目录中的fontsets.ini来配置unicode字体的,看看该文件内容:

[default]
ptSize = 16
isFixed = 0
isBold = 0
isItalic = 0
font = -adobe-helvetica-medium-r-normal--14-140-75-75-p-77-iso8859-1:0x0000-0x00ff
font = -misc-fixed-medium-r-normal-ko-18-120-100-100-c-180-iso10646-1:0x2800-0x28ff
font = -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1:0x3000-0x33ff:0x4e00-0xffff
font = -mutt-clearlyu-medium-r-normal--17-120-100-100-p-124-iso10646-1

[variable 16]
ptSize = 16
isFixed = 0
isBold = 0
isItalic = 0
font = -adobe-helvetica-medium-r-normal--14-140-75-75-p-77-iso8859-1:0x0000-0x00ff
font = -misc-fixed-medium-r-normal-ko-18-120-100-100-c-180-iso10646-1:0x2800-0x28ff
font = -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1:0x3000-0x33ff:0x4e00-0xffff
font = -mutt-clearlyu-medium-r-normal--17-120-100-100-p-124-iso10646-1

[fixed 16]
ptSize = 16
isFixed = 0
isBold = 0
isItalic = 0
font = -adobe-courier-medium-r-normal--14-140-75-75-m-90-iso8859-1:0x0000-0x00ff
font = -misc-fixed-medium-r-normal-ko-18-120-100-100-c-180-iso10646-1:0x2800-0x28ff
font = -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1:0x3000-0x33ff:0x4e00-0xffff
font = -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1

不难看出vs是按unicode编码将不同的字体组合在一起从而实现一个unicode的字体组合,
并且在vs的字体选择中可以选择这种自定义字体。

于是我们也来构造一个宋体unicode组合来看看,
在该文件的尾部加入我们配置的宋体字

[simsun 12]
ptSize = 12
isFixed = 0
isBold = 0
isItalic = 0
font = -misc-simsun-medium-r-normal--12-0-0-0-p-0-iso8859-1:0x0000-0x00ff
font = -misc-simsun-medium-r-normal--12-0-0-0-p-0-iso10646-1:0x2800-0x28ff
font = -misc-simsun-medium-r-normal--12-0-0-0-p-0-iso10646-1:0x3000-0x33ff:0x4e00-0xffff
font = -misc-simsun-medium-r-normal--12-0-0-0-p-0-iso10646-1

因为vs实用的是motif的API做的,所以要确定simsun字体以在X11中装载了,用以下语句
[root@wj-server1 SPECS]# xlsfonts | grep -i simsun
-misc-simsun-medium-r-normal--0-0-0-0-p-0-ascii-0
-misc-simsun-medium-r-normal--0-0-0-0-p-0-cns11643-1
-misc-simsun-medium-r-normal--0-0-0-0-p-0-cns11643-3
-misc-simsun-medium-r-normal--0-0-0-0-p-0-gb18030.2000-0
-misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1
-misc-simsun-medium-r-normal--0-0-0-0-p-0-iso8859-1
-misc-simsun-medium-r-normal--0-0-0-0-p-0-jisx0208.1983-0
-misc-simsun-medium-r-normal--0-0-0-0-p-0-jisx0208.1990-0
-misc-simsun-medium-r-normal--0-0-0-0-p-0-koi8-r

如果没有的话,请手动添加simsun.ttf字体所在目录到/etc/X11/xorg.conf中:
Section "Files"

  # The location of the RGB database.  Note, this is the name of the
  # file minus the extension (like ".txt" or ".db").  There is normally
  # no need to change the default.

      RgbPath "/usr/X11R6/lib/X11/rgb"

  # Multiple FontPath entries are allowed (which are concatenated together),
  # as well as specifying multiple comma-separated entries in one FontPath
  # command (or a combination of both methods)
  #
  # If you don't have a floating point coprocessor and emacs, Mosaic or other
  # programs take long to start up, try moving the Type1 and Speedo directory
  # to the end of this list (or comment them out).
  #


  # The module search path.  The default path is shown here.

  #    ModulePath "/usr/X11R6/lib/modules"

      FontPath    "/usr/X11R6/lib/X11/fonts/local"
      FontPath    "/usr/X11R6/lib/X11/fonts/misc"
      FontPath    "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
      FontPath    "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
      FontPath    "/usr/X11R6/lib/X11/fonts/Type1"
      FontPath    "/usr/X11R6/lib/X11/fonts/Speedo"
      FontPath    "/usr/share/fonts"
      FontPath    "/usr/share/fonts/ttf/zh_CN" #我的simsun.ttf所在目录(magiclinux)
      FontPath    "/usr/local/share/fonts"
  EndSection
重启X11后,再用上面的语句测试一下,应该有显示了。
然后启动vs并在菜单Tools\Options\Fonts中使用我们定义的"VSE Unicode-simsun 12"
字体来做vs的编辑窗口、对话框的显示字体了,这里至少要将"Unicode Source Window"
的字体选为我们定义的"VSE Unicode-simsun 12"字体。
异常情况,"SBCS/DBCS Source Windows"这个窗口的字体不能选择上面字体和"system"
这两个字体否则在弹出语法提示时会报段错误,不只道为什么,用gdb backtrace不到
错误所在,只有一串?号和错误地址。

2、编码设置
a.vs的编码设置
以下修改是为了使vs编辑窗口正确显示中文文件。
在vs菜单Tools\File Options显示对话框的Load页中将Encoding选择为:
Chinese Simplified (GB-2312)
选择了这个文档的默认字符集后,在打开文档时,vs会做GBK->UNICODE的字符集转换
然后用我们定义的"VSE Unicode-simsun 12"显示文字。这样就能正确显示汉字了。

b.magiclinux编码修改(GBK到UTF-8)
以下修改是为了使vs文件管理窗口中正确的显示中文文件名和路径。
因为下面提供的linux编码修改方法可能导致原来创建的中文文件无法在新的字符集中正
确显示,甚至导致kde无法正确运行,所以仅供参考,不提倡大家修改。

1)修改/etc/sysconfig/i18n文件
内容修改如下,原来的编码为zh_CN.GBK
LANG=zh_CN.UTF-8
LC_ALL=zh_CN.UTF-8

2)修改/etc/fstab中windows中驱动盘的装载选项
将ntfs、vfat类型的磁盘将原iocharset=cp936该成iocharset=utf8,这是我的文件
dev/hda3       /                       ext3        defaults        1 1
/dev/hdc        /mnt/cdrom              iso9660,udf noauto,user,kudzu,ro 0 0
none            /proc                   proc        defaults        0 0
none                    /dev/pts                devpts  gid=5,mode=620        0 0
none            /sys                    sysfs       defaults        0 0
/dev/hda4       swap                    swap        defaults        0 0
/dev/hda1   /mnt/hda1   ntfs iocharset=utf8,umask=0,exec 0 0
/dev/hda5   /mnt/hda5   ntfs iocharset=utf8,umask=0,exec 0 0
/dev/hda6   /mnt/hda6   vfat iocharset=utf8,umask=0,exec 0 0

3)修改/usr/sbin/fsautomount(该文件用于自动装载windows下的盘符)
....
if [ -f /etc/profile.d/lang.sh ]; then
. /etc/profile.d/lang.sh
case $LANG in
   *UTF* #这里添加utf的判断
        MOUNTOPTIONS="iocharset=utf8"
                ;;
   zh_CN*)
        MOUNTOPTIONS="iocharset=cp936"
        ;;
   zh_TW*)
        MOUNTOPTIONS="iocharset=cp950"
        ;;
   ja_JP*)
        MOUNTOPTIONS="iocharset=cp932"
        ;;
   ko_KR*)
        MOUNTOPTIONS="iocharset=cp949"
esac
....以下省略

4)修改内核中字符集编码
在make menuconfig的内核配置菜单
File systems ---> Native Language Support ---> 中将 Default NLS Option 改成utf8
File systems ---> DOS/FAT/NT Filesystems  ---> 中将 Default iocharset for FAT 改成utf8

总结,经过上面的修改vs基本能完成中文编码下的编程和代码阅读工作了,但是到目前
尚不能解决中文输入问题,实在美中不足。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2005-7-28 17:00:33 | 显示全部楼层
slickedit的win版本的界面中文化能给个提示么?没有找到任何有用的资源,但是用右键菜单可以更改一部分界面内容为中文。
回复

使用道具 举报

 楼主| 发表于 2005-7-28 17:14:34 | 显示全部楼层
如果要做win下的汉化,请看看vs的help中关于slick-c这个语言和macro目录下的那些东
西,.e的这些文件就是slick-c这个语言写的,slickedit除了最底层的东西封装到几个主要
的DLL中外,界面这些东西都由中间语言slick-c来实现的,如果要汉化的话,要找到e文
所在slick-c的文件/修改/编译,这些slick-c的帮助都有说
回复

使用道具 举报

发表于 2005-7-28 17:31:57 | 显示全部楼层
这样啊,没想到去看帮助,我不用这个,不过这个汉化不能实在是郁闷了很长时间。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-9 08:29 , Processed in 0.113203 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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