+ -
当前位置:首页 → 问答吧 → 请问用emacs的兄弟字体能设置为等宽吗?谢谢!

请问用emacs的兄弟字体能设置为等宽吗?谢谢!

时间:2009-09-30

来源:互联网

我的emacs23.1选择字体或者在配置文件里边设置为等宽字体,
但是实际显示出来不适等宽字体,查阅的结果确实等宽字体名称,
搞不明白、

作者: beyond93   发布时间: 2009-09-30

引用:
作者: beyond93
我的emacs23.1选择字体或者在配置文件里边设置为等宽字体,
但是实际显示出来不适等宽字体,查阅的结果确实等宽字体名称,
搞不明白、
你选择的什么英文字体?字体本身等宽么? 试试 DejaVu Sans Mono。

中文字体都是等宽的吧。

其实麻烦的是,中英文不是同一个字体时,要把中文宽度设为英文的两倍。

作者: deftsp   发布时间: 2009-09-30

如果对版权不介意的话, 使用 YaHeiMono , 它是网友组合了 微软雅黑, 微软 consolas 两个字体的结果, 中文宽度刚好是英文的两倍. 下面是配置.

(if (frame-parameter nil 'font-backend)
(progn
(set-default-font "YaHeiMono-12")
;; 启动的新 Frame 也使用这个字体
(add-to-list 'default-frame-alist '(font . "YaHeiMono-12")))
;; else
(setq ascii-font
"-outline-Bitstream Vera Sans-normal-r-normal-normal-12-97-96-96-c-*-iso8859-1")
(setq chinese-font
"-outline-微软雅黑-*-r-*-*-24-*-96-96-p-*-iso10646-1")
(defun zw-set-font (en-font cn-font)
(create-fontset-from-fontset-spec
(replace-regexp-in-string "iso8859-1" "fontset-zw" en-font))
(dolist (fnset '("fontset-default" "fontset-zw"))
(set-fontset-font fnset 'gb18030 cn-font)
(set-fontset-font fnset 'iso-8859-15 en-font))
(set-default-font "fontset-zw")
(setq default-frame-alist
(append
'((font . "fontset-zw"))
default-frame-alist)))
(zw-set-font ascii-font chinese-font))

作者: cheneymx   发布时间: 2009-09-30

如果启用了xft,可以在.emacs里边:
引用:
;;; Set fonts
(set-default-font "Andale Mono-12")
(set-fontset-font (frame-parameter nil 'font)
'unicode '("WenQuanYi Zen Hei Mono" . "unicode-bmp"))
不知道从什么搞来的。应该都是mono。

作者: blackwhite   发布时间: 2009-09-30

Emacs 本来就可以为一种编码甚至每一个字符指定字体。所以组合字体倒不必要了。

只是我一直比较喜欢的 Monaco 比较麻烦,这字体是高瘦型的,至今也没找到过能跟它 2:1 配合的中文字体。


引用:
作者: cheneymx
如果对版权不介意的话, 使用 YaHeiMono , 它是网友组合了 微软雅黑, 微软 consolas 两个字体的结果, 中文宽度刚好是英文的两倍. 下面是配置.

(if (frame-parameter nil 'font-backend)
(progn
(set-default-font "YaHeiMono-12")
;; 启动的新 Frame 也使用这个字体
(add-to-list 'default-frame-alist '(font . "YaHeiMono-12")))
;; else
(setq ascii-font
"-outline-Bitstream Vera Sans-normal-r-normal-normal-12-97-96-96-c-*-iso8859-1")
(setq chinese-font
"-outline-微软雅黑-*-r-*-*-24-*-96-96-p-*-iso10646-1")
(defun zw-set-font (en-font cn-font)
(create-fontset-from-fontset-spec
(replace-regexp-in-string "iso8859-1" "fontset-zw" en-font))
(dolist (fnset '("fontset-default" "fontset-zw"))
(set-fontset-font fnset 'gb18030 cn-font)
(set-fontset-font fnset 'iso-8859-15 en-font))
(set-default-font "fontset-zw")
(setq default-frame-alist
(append
'((font . "fontset-zw"))
default-frame-alist)))
(zw-set-font ascii-font chinese-font))

作者: deftsp   发布时间: 2009-09-30

引用:
作者: blackwhite
如果启用了xft,可以在.emacs里边:

不知道从什么搞来的。应该都是mono。
我是使用你这种方法设置的,只是英文是Liberation Mono
中文是雅黑。

作者: beyond93   发布时间: 2009-09-30

请用图片说话。
俺的.Xresources (.emacs中没有任何字体设置)1440x900
代码:
Xft.dpi:120.4 
Xft.antialias: 1
Xft.hinting: 1
Xft.hintstyle: hintslight
Xft.rgba: rgb
Xft.font: Microsoft Yahei 
Emacs.font: Envy Code R-13
Emacs.useXIM: true
上传的图像
2009-09-30-101134_812x741_scrot.png (67.8 KB, 40 次查看)

作者: zhou3345   发布时间: 2009-09-30

之前用reStructreText写文档,表格里的字不是等宽,这个很头痛

附件图一个是emacs
另一个是less
上传的图像
emacs17.png (14.1 KB, 19 次查看)
emacs18.png (17.8 KB, 23 次查看)

作者: flyinflash   发布时间: 2009-09-30

有没有什么字体,可以实现一个中文英文都是一个宽度?

作者: flyinflash   发布时间: 2009-09-30

emacs比较奇怪,雅黑consolas混合字体gvim是中文等于两个英文的宽度,
但在emacs里就不是。
不知道是否是因为我系统里同时有雅黑和雅黑consolas,local.conf里头都是雅黑在前
导致的

作者: beyond93   发布时间: 2009-10-01

引用:
作者: deftsp
Emacs 本来就可以为一种编码甚至每一个字符指定字体。所以组合字体倒不必要了。

只是我一直比较喜欢的 Monaco 比较麻烦,这字体是高瘦型的,至今也没找到过能跟它 2:1 配合的中文字体。
可以试试姚体。瘦金也是高瘦,可惜看不清

作者: jsun   发布时间: 2009-10-01