平衡点


2016/03/02

_ Emacs に powerline.el を入れた.

あるいは モードラインのダイエット(3/n)

...現実逃避以外の何者でもない.

Powerline の説明は以下:

導入して,default のテーマを有効にしてみた.確かに見た目は綺麗.

しかしながら,やはり SKK の indicator が気になってしまう. 何が気になるか,といえば:

ということで. つまるところSKK の有効or無効にかかわらず左側にASCII 二文字分の幅で状態を表示させておきたい, という欲求であるわけです.

どうするか?

安直にやります.

;; ddskk の状態を左側に表示したい
(defun my:skk-modeline-input-mode ()
  "skk が読み込まれていない場合でも skk-modeline-input-mode に文字を入れて返す"
  (cond
   ((not (boundp 'skk-modeline-input-mode))
    (setq skk-modeline-input-mode "--[--]:"))
   (t skk-modeline-input-mode)))
;; skk の on/off で modeline に状態が挿入されるので,それを止める.
(defadvice skk-setup-modeline (around my:disable-skk-setup-modeline activate)
  "skk-setup-modeline による modeline の更新を無効化"
  (setq skk-indicator-alist (skk-make-indicator-alist))
  (force-mode-line-update t))

として,powerline の theme 指定で

(defun my:powerline-theme ()
  "my powerline theme."
  (interactive)
  (my:skk-modeline-input-mode)
  (setq-default
   mode-line-format
   '("%e"
     (:eval
      (let* ((active (powerline-selected-window-active))
             (mode-line (if active 'mode-line 'mode-line-inactive))
             (face1 (if active 'powerline-active1 'powerline-inactive1))
             (face2 (if active 'powerline-active2 'powerline-inactive2))
             (separator-left (intern (format "powerline-%s-%s"
                                             (powerline-current-separator)
                                             (car powerline-default-separator-dir))))
             (separator-right (intern (format "powerline-%s-%s"
                                              (powerline-current-separator)
                                              (cdr powerline-default-separator-dir))))
             (lhs (list
                   (powerline-raw (substring skk-modeline-input-mode 2 -1) nil 'l)
                   (powerline-raw "%*" nil 'l)
                   ... 以下略

としました.

まとめ

まあ,これで良いかな,と.常に ddskk のモードが左側に同じ幅で出ているので良しとします.

あ,minor-mode の省略表示には diminish が良いのでは?

...現実逃避以外の何者でもない(大事なことなので二度ry.


連絡先など
最近の日記
一覧
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|02|03|04|08|09|10|11|12|
2013|01|02|03|04|05|06|08|09|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|09|10|
2016|02|03|
2017|01|02|03|05|06|07|09|11|12|
2018|03|06|07|10|11|12|
2019|01|02|03|04|05|07|10|12|
2020|01|02|03|04|05|08|09|10|11|12|
2021|01|02|03|05|06|07|08|09|11|12|
2022|01|02|03|04|05|06|08|10|11|12|
2023|02|03|04|06|08|09|11|12|
2024|01|02|03|
Back to Top ▲