linum-modeの余計な余白をなくす方法
自分の環境(MacOSX 10.6、Emacs23、linum-mode 0.9x)でlinum-modeを有効にすると、 余計な余白が入る。 ターミナルで起動すると症状は出ない。
これを解消するために、linum-mode.elの160行目を次のように書き換えた。
; (setq width (max width (length str))) (setq width (max width (/ (length str) 2)))
そうするとこうなる。
行番号がはみ出して見切れてしまう場合は、 .emacsにlinum-formatに適当な値を設定する。
(setq linum-format "%4d")
この方法だとターミナルで起動したときに行番号が表示されなくなってしまうが、 おそらくターミナルで使うことはないのでこれでよしとする。
2010/05/16 1:09 追記
余計な余白が入る理由は、どうやらフォント設定による模様。 フォント設定を、
(set-fontset-font (frame-parameter nil 'font) 'japanese-jisx0212 '("M+2VM+IPAG circle" . "iso10646-1")) (set-fontset-font (frame-parameter nil 'font) 'mule-unicode-0100-24ff '("M+2VM+IPAG circle" . "iso10646-1")) (setq face-font-rescale-alist '(("^-apple-hiragino.*" . 1.3) (".*osaka-bold.*" . 1.2) (".*osaka-medium.*" . 1.2) (".*courier-bold-.*-mac-roman" . 1.0) (".*monaco cy-bold-.*-mac-cyrillic" . 0.9) (".*monaco-bold-.*-mac-roman" . 0.9) ("-cdac$" . 1.3)))
から、
(set-fontset-font (frame-parameter nil 'font) 'mule-unicode-0100-24ff '("M+2VM+IPAG circle" . "iso10646-1"))
に変更したら問題なく表示されるようになった。 おまけにずれまくってたauto-complete-modeの補完候補もきれいに表示されるようになった。 コピペ元が間違ってたのかな…・。