Emacs フレームのカスタマイズ
フレームを透過させる
現在のフレームの透明度を変えるには
(set-frame-parameter nil 'alpha 90)
とする。
Emacs 起動時に最大化する
Ubuntu 10.10 で gnome を使用する環境で行なった。 最大化といってもいくつかあるようだが、 gnome のウィンドウの最大化ボタンを押した状態にする。 emacs 起動時の処理がすべて終わった後に実行しないと emacs のフレームは最大化してもウィンドウが最大化しない状態になり、 使用できない画面の領域ができる。 これを回避するために after-init-hook でタイマーを作成して 2秒後に実行している。
(defun set-x-full-screen ()
(interactive)
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32
'(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0))
(x-send-client-message nil 0 nil "_NET_WM_STATE" 32
'(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0)))
(cond
(window-system
(add-hook 'after-init-hook
(lambda ()
(run-with-idle-timer 2 nil 'set-x-full-screen)))))