X 用 (X なら Cygwin でも MacOSX でも動きます!) FSF Emacs の背景拡張非公式パッチです。
Emacs-BGEX patch を適用すると背景に画像や色を指定できるようになります。
フレーム単位ではなく、バッファごとに異なる背景を指定することもできます。
かれこれ 10 年以上メンテナンスしています。
$ cd /tmp
$ wget http://umiushi.org/~wac/bgex/patch-bgex_VERSION.tar.xz
$ tar xf patch-bgex_VERSION.tar.xz
$ cp -av /tmp/patch-bgex_VERSION/bgex.el YOUR-ELISP-PATH/
$ cd YOUR-EMACS-SOURCE-PATH
$ cd src
$ patch < /tmp/patch-bgex_VERSION/patch-bgex_VERSION
$ cd ..
$ ./configure --prefix=YOUR-INSTALL-PATH && make -j15
;; Emacs-BGEX patch
(require 'bgex)
;; Image on frame
(when (boundp 'bgex-exist-p)
(bgex-set-image-default "~/.emacs.d/images/background.xpm"))
;; Image on frame (dynamic color mode (SRC * DST / factor))
(bgex-set-image-default "~/.emacs.d/images/background.xpm" t)
;; Color for HTML-mode (dynamic color mode)
(bgex-set-color "HTML" 'bgex-identifier-type-major-mode '(60000 40000 40000) t)
;; Color for buffer-name (*scratch*)
(bgex-set-color "*scratch*" 'bgex-identifier-type-buffer-name "skyblue")
;; XPM string
(bgex-set-xpm-string "*scratch*" 'bgex-identifier-type-buffer-name "XPM string" t)
(bgex-set-xpm-string-default "XPM string" t)
(set-background-color "#d0b8a0")
(set-frame-parameter nil 'bg-image-enable-flag t)
(set-frame-parameter nil 'bg-fill-alpha 0.6)
(set-frame-parameter nil 'bg-image-filename "IMAGE_PATH")
Please see bgex_memo.txt (in Japanese).