2013年1月19日土曜日

[Emacs]n + ~ を表示する

Emacs ではさざなみフォントを使う設定にしているのだが、これでは Espan~ol などで使用される n + ~ (n~) が表示できない
M-x view-hello-file を表示するとこのようになっている。
















OpenOffice でいろいろなフォントで表示してみるとさざなみフォントでは n + ~ が表示できないことが判明した。










そこでフォントの設定を ASCII 文字は DejaVu Sans Mono にし、日本語はさざなみで表示されるように設定した。
(defvar ntemacs-font-defined-sizes '(7 8 9 10 12 13 14 16 18 20 24))

(defun ntemacs-font-create-fontset
 (fontset ascii-font latin1-font japanese-font size-list)
 (let (size)
 (while size-list
 (setq size (car size-list))
 (setq size-list (cdr size-list))
 (create-fontset-from-ascii-font
 (format "-outline-%s-normal-r-normal-normal-%d-*-*-*-*-*-iso8859-1"
 ascii-font size)
 nil
 (format "%s%02d" fontset size))
 (set-fontset-font (format "fontset-%s%02d" fontset size)
 'latin-iso8859-1
 (cons latin1-font "iso8859*"))
 (set-fontset-font (format "fontset-%s%02d" fontset size)
 'japanese-jisx0208
 (cons japanese-font "jisx0208-sjis"))
 (set-fontset-font (format "fontset-%s%02d" fontset size)
 'katakana-jisx0201
 (cons japanese-font "jisx0201-katakana"))
)))

; DejaVu Sans Mono フォント用追加設定
(ntemacs-font-create-fontset
 "DejaVu" "DejaVu Sans Mono" "DejaVu Sans Mono" "さざなみゴシック" ntemacs-font-defined-sizes)

; DejaVu Sans Mono + さざなみ (DejaVu13) をデフォルトフォントに設定
(add-to-list 'default-frame-alist
 '(font . "fontset-dejavu13"))


;;; ===== 行間の調整 =====
; 整数で指定するとピクセル数で、少数で指定すると行の高さに対しての相対値で設定
; 例えば 1.0 を設定すると 1 文字分行間が空く
(setq-default line-spacing -1)

;;; ===== フレーム位置設定 =====
; 好みのフレームサイズ縦横を決めた後に *scrach* buffer で
; eval(frame-height), eval(frame-width) を実行して幅、高さの値を調べる
(setq initial-frame-alist
 (append
 '((top . 0) ; フレームの Y 位置 (ピクセル数)
 (left . 0) ; フレームの X 位置 (ピクセル数)
 (width . 80) ; フレーム幅 (文字数)
 (height . 74) ; フレーム高 (文字数)
 ) initial-frame-alist))
この設定で表示した結果が

0 件のコメント:

コメントを投稿