[问题]怎么我的.emacs配置总是出错阿

Vim、Emacs配置和使用
回复
头像
golq
帖子: 10
注册时间: 2007-10-05 22:21

[问题]怎么我的.emacs配置总是出错阿

#1

帖子 golq » 2007-11-01 0:06

我参考置顶贴下载了编译好的Emacs23,安装了中文字体,也修改了.Xresources 和 .emacs文字,但启动emacs的时候总是报告错误

代码: 全选

emacs --debug-init
(set-fontset-font "fontset-default" nil "-*-simsun-*-*-*-*-14-*-*-*-*-*-gb2312.1980-*" nil (quote prepend))
eval-buffer(#<buffer *load*> nil "/home/liuq/.emacs" nil t) ; Reading at buffer position 1240
load-with-code-conversion("/home/liuq/.emacs" "/home/liuq/.emacs" t t)
load("~/.emacs" t t)
#[nil "พ

我的配置文件如下:
.Xresources

代码: 全选

Xft.antialias: 1
Xft.dpi:81
Xft.hinting: 1
Xft.hintstyle: hintfull
Xft.rgba:rgb

Emacs.FontBackend: xft 
.emacs(字体设置部分)

代码: 全选

(create-fontset-from-fontset-spec
"-*-courier 10 pitch-medium-r-normal-*-14-*-*-*-m-*-fontset-courier")

(set-default-font "fontset-courier")

(setq default-frame-alist
(append
'((font . "fontset-courier")) default-frame-alist))

(set-fontset-font
"fontset-default" nil
"-*-simsun-*-*-*-*-14-*-*-*-*-*-gb2312.1980-*" nil 'prepend)
(set-fontset-font
"fontset-courier" 'kana
"-*-simsun-*-*-*-*-14-*-*-*-*-*-gbk-0" nil 'prepend)
(set-fontset-font
"fontset-courier" 'han
"-*-simsun-*-*-*-*-14-*-*-*-*-*-gbk-0" nil 'prepend)
(set-fontset-font
"fontset-courier" 'cjk-misc
"-*-simsun-*-*-*-*-14-*-*-*-*-*-gbk-0" nil 'prepend)
我不知道为什么set-fontset-font怎么总是出错,结果中文字体好大,难看死了。能帮我看看什么原因吗?谢谢
zhangsong023
帖子: 768
注册时间: 2006-09-20 19:56

#2

帖子 zhangsong023 » 2007-11-01 10:29

没怎么用过23版本,按22版本来看,set-fontset-font函数参数明显是错误的。
zhangsong023
帖子: 768
注册时间: 2006-09-20 19:56

#3

帖子 zhangsong023 » 2007-11-01 10:48

不清楚23版本中这个函数的调用形式,楼主不妨C-h f set-fontset-font。
头像
golq
帖子: 10
注册时间: 2007-10-05 22:21

#4

帖子 golq » 2007-11-01 21:05

to zhangsong023
谢谢回复。不过set-fontset-fon函数的调用方法是怎样的阿?我甚至都不知道怎么去查,用google搜set-fontset-font总是查到各种设置方法,但不懂参数是什么意思,怎么来的,所以不会用。。。
emacs有函数手册之类的吗?

ps.我主要参考的是http://www.yuanma.org/data/2006/0503/article_355.htm
zhangsong023
帖子: 768
注册时间: 2006-09-20 19:56

#5

帖子 zhangsong023 » 2007-11-02 12:33

不是都说了么,C-h f set-fontset-font。
头像
zhan
帖子: 1880
注册时间: 2005-08-15 0:04
来自: 南7技校

#6

帖子 zhan » 2007-11-02 17:14

囧,你的系统中有 simsun 么?

简单一点,看看这个帖子 viewtopic.php?t=40210
飞得高,飞得低,学习再学习,多少大秘密!
http://zhan.blog.ubuntu.org.cn
zhangsong023
帖子: 768
注册时间: 2006-09-20 19:56

#7

帖子 zhangsong023 » 2007-11-02 19:38

看了楼上贴子里的那个包,似乎有一点问题,把dir和dir.old打进去会和其它一些包冲突,比如bash-doc。
头像
golq
帖子: 10
注册时间: 2007-10-05 22:21

#8

帖子 golq » 2007-11-05 21:48

zhangsong023 写了:不是都说了么,C-h f set-fontset-font。
:oops: 我一开始没看明白什么意思,后来才想起是Ctrl-h,f....谢谢!
头像
golq
帖子: 10
注册时间: 2007-10-05 22:21

#9

帖子 golq » 2007-11-05 22:17

我查了set-fontset-font函数的说明,不过还是看不懂 :oops:

(set-fontset-font name character fontname &optional frame)

作用:Modify fontset name to use fontname for character.

代码: 全选

If name is nil, modify the default fontset.
如果参数name为nil,则修改默认的字体族。这句话意思是不是第一个参数可以为'nil'?如果不修改默认的,而是要修改指定的字体族,那么字体族的名字(即参数)的可选范围是什么阿?

代码: 全选

character may be a cons; (FROM . TO), where FROM and TO are non-generic characters.  In that case, use fontname for all characters in the range FROM and TO (inclusive).
character may be a charset.  In that case, use fontname for all character in the charsets.
要修改的字符可以是cons(不懂什么意思);也可以是字符集,如果是字符集,则character参数可用字符集中所有字符的字体名称。这个参数怎么来阿?

代码: 全选

fontname may be a cons; (FAMILY . REGISTRY), where FAMILY is a family name of a font, REGISTRY is a registry name of a font.
fontname还好理解些,(字体族名.注册名)。不过注册名怎么查阿?

参考Zhan大大的说明

代码: 全选

(set-fontset-font (frame-parameter nil 'font)  'han '("WenQuanYi Bitmap Song" . "unicode-bmp")) 
勉强对上号。
name: (frame-parameter nil 'font)
character: 'han
fontname:("WenQuanYi Bitmap Song"."unicode-bmp")

其他2个参数没有解释,更不懂了。
头像
golq
帖子: 10
注册时间: 2007-10-05 22:21

#10

帖子 golq » 2007-11-05 22:43

我服了,我的代码居然是对的。。。

我仔细看了看 ,我的机器里面居然有2个版本的emacs,一个不知道什么版本,另一个才是emacs 23
每次我从终端运行emacs,来的都是另一个版本,怪不得不起作用。启动emacs-23.0.0就对了,下面是截图
附件
emacs23-0.0的启动画面,中文字体正常了!
emacs23-0.0的启动画面,中文字体正常了!
头像
forrid
帖子: 659
注册时间: 2007-04-23 17:40

#11

帖子 forrid » 2007-11-13 23:39

?正在配置color

吾生也有涯,而知也无涯,以有涯随无涯,SB啊~~~~~~~~~~
fans1
帖子: 17
注册时间: 2007-01-21 15:42

#12

帖子 fans1 » 2007-11-17 19:36

估计你本身有个低版本的emacs,不支持xft,当配置字体时估计出问题啦
回复