x-face ってなんやねん?
 mew のバージョンも 1.93 になりました。mew に付いてはたびたびこのページでもインストール、設定について書いてきましたよね。1.92 からの変更点は結構大きいと思います。お手元の .emacs にも大幅な修正が入るかもしれれないですね。詳細に付いては mew 添付のマニュアルを参照してくださいね。

 さて本題の x-face ですが、知っている人はどれ位居ますでしょか・・。簡単に言うと、メールヘッダに画像を添付して相手に送るメールです。ヘッダ的には以下の様に訳の解らないデータがメールヘッダに付いていた場合、それは x-face なメールと言う事になります。

----------------
X-Face: eat%|YBNv.@HDTro$1f+Kxp"N1C>75Ph~a;%UoNP'VPsk^-)}'RY[MD{y@M{b]|9twYu|3?
 )FuCzVmt8O?uRq$>LMwi=LLP^MRJDD50aZ=w~MIc"NiQLai,-UkQ@](.;@}o-vrjPH/eXW$;)u.%GU
 I4SW{fv2kAdS!k|Fd2lCR}f(.DSJtf3do0e3!X
----------------
 で、その効能ですが、簡単に言うとメールに画像がくっついているわけですからそれを見る事が出来ます。「あ、この人はこーういう顔をしているのかぁぁ。」、「この人のトレードマークはこれかぁ。」などと納得出来たりするわけですね。ふみふみ(^^)。なんか、これを大げさにしたのが「ポスペ」かなぁ。等とも思えます;-)。

 以下のページはそのサンプルページです。ちょっと眺めてみてください。もしかしたら感動するかもしれませな。ふふふ(^^)。

http://www02.u-page.so-net.ne.jp/ba2/kory/emacs/x-face.html   X-Face について
http://www.jpl.org/elips/   X-Face
http://www.jpl.org/elips/image/x-faces.gif   山岡さんの集めた X-Face

 さて、いよいよ設定に付いてですが、私のプラットホームは Emacs19.28/Mule2.3(SUETSUMUHANA) になります。そして、Mew1.93+im-101 です。この環境で x-face の付いたメールの送受信と閲覧を出来る様にしましょう。

 当然、Mule2.3 と mew1.93+im-100(im-101) が動いている事が大前提です。mule は packages から、mew と im は http://www.mew.org/ から持って来て自分のマシンに設定しましょう。ここではそれを書かないですから各自頑張りましょう;-)。

 うんうん。では、本格的に x-face の設定に移る事にしましょう。まずはともあれソースを持ってきます。

1. compface.tar.gz
2. x-face-1.3.3.tar.gz
3. x-face-mule-0.24.tar.gz

 もしかしたら 3. は必要ないかもしれません・・。

 1. は、メールヘッダの顔画像を固めたり溶かしたりするコマンドです。これをインストールします。インストール後は /usr/local/bin/{compface,uncompface} がインストールされます。

----------------
# cd /usr/local/src
# tar xvzfp ~/compface.tar.gz
# cd compface
# make 
# make install
# 
----------------
 一応、compface はインストールされました。続いて、mule と mew に直接関わりのあるものを居ストールしていきます。

 基本的に x-face-1.3.3 も x-face-mule-0.24 もインストール方法は一緒です。まずは展開しましょう。

----------------
# cd /usr/local/src
# tar xvzfp ~/x-face-1.3.3.tar.gz
# tar xvzfp ~/x-face-mule-0.24.tar.gz
# mule
----------------
 この後、mule を起動します。そして更に mew を起動します。この後で byte-compile-file します。方法ですが、M-x byte-compile-file [リターン]と打つとファイルー聞いてくるので、x-face.el を指定します。その後、x-face-mule.el を指定します。すると mule がコンパイルしてくれて、それぞれ、x-face.elc と x-face-mule.elc と言うのを作ってくれます。これを mule/site-lisp の中に入れます。packages の mule2.3 を使っていた場合、/usr/local/lib/mule/site-lisp/ になると思います。入ったファイルは以下になります。
----------------
x-face-mule.el
x-face-mule.elc
x-face.el
x-face.elc
----------------
 さささ、これで準備は整いました。後は、x-face-1.3.3.tar.gz の中に入っている README.ja に目を通してみましょう。~/.emacs の設定方法等が書いて有ります。一応、サンプルの ~/.emacs の x-face 部分だけを切り出すと以下の様になります。これは私の設定ですが、皆さんもばしばしカスタマイズしてくださいね;-)。

----------------
;
;  X-face の設定
;
;(setq mew-use-highlight-x-face t)
;(setq mew-use-highlight-x-face-function
;      (function
;       (lambda (beg end)
;        (x-face-mule-x-face-decode-message-header beg end))))
(require 'x-face-mule)

(autoload 'x-face-encode "x-face"     "Generate X-Face string(s) from xbm file." t)
(autoload 'x-face-insert "x-face"     "Insert X-Face fields." t)
(autoload 'x-face-save "x-face"       "Save X-Face fields to files." t)
(autoload 'x-face-view "x-face"       "View X-Face fields." t)
(autoload 'x-face-ascii-view "x-face" "View X-Face fields as ascii pictures." t)


; イメージファイルを通常置いておくディレクトリの指定です。
(setq x-face-image-file-directory "~/bm/x-faces")
(setq x-face-image-file-directory-for-save "~/bm/x-faces")

; 主に自分の X-Face 用に使う xbm ファイルの名前を指定します。
;(setq x-face-default-xbm-file "takano.xbm")

;  自動的に写真を付ける設定
(setq x-face-insert-interactive t)

; 顔写真を非同期に起動します。
(setq x-face-view-asynchronous nil)

; 外部 viewer を起動して表示するファイルを読み込むまでの最大時間を秒数
; で設定します。x-face.el から外部 viewer を起動した後でこの時間が経過
; するとファイルを消します。
(setq x-face-viewer-startup-time 10)

;
; .emacs で X-face encode データを隠す設定
(defvar mew-invisible-regexp-list
  '("^X-Face: *\\(.*\\(\n[ \t].*\\)*\\)\n"
    "^X-PGP-Sig: *\\(\\(.+\n\t\\)+.+\n\t+=[0-9a-zA-Z]+$\\)" )
  "*List that contains regexps to be invisible in the message buffer." )

(defun mew-set-invisible ()
  (save-excursion
    (let ((invisible-regexp-list mew-invisible-regexp-list)
          (case-fold-search t)
          regexp header-end )
      (goto-char (point-min))
      (if (re-search-forward "\\(^--.*$\\)\\|\\(\n\n\\)" nil t)
          (setq header-end (point)))
      (while invisible-regexp-list
        (goto-char (point-min))
        (while (re-search-forward (car invisible-regexp-list) header-end t)
          (put-text-property (match-beginning 1) (match-end 1) 'invisible t) )
        (setq invisible-regexp-list (cdr invisible-regexp-list)) ))))
----------------
 これでインストールと設定が完了しました。さてさて、早速使ってみましょう。基本的には以下のコマンドでなんとか動いてくれます。
 動き方は mew1.93 上でさくさくっとね。ふみふみ。尚、mew1.92 の頃に動いていた x-face は、多分 1.93b33 位で動かなくなっていると思います。新たに x-faec のインストールとなります。

 まずは X-Face: の書き込みからです。

 1. X-Face で使う xbm 形式の自分の顔の絵を用意します。一番簡単な方法は誰でも一回は使った事のあると思われる bitmap と言う白黒お絵書きツールで絵を書きます。bitmap takano.xbm -size 48x48 と言う風にコマンドを打ちます。X-face で使うサイズは 縦×横が 48×48 ピクセルと決まっていますのでこのサイズの絵を書きましょう。

 私の XBM です;-)。48x48 の実物大です。  →  

 絵は出来ましたか?ならばいよいよ次のステップでメールに自分の書いた顔を添付します。ふふふ。まずは何はともあれ、mule を立ち上げて、mew を起動します。そして "w" を押してメール本文を書く事にしましょう。ふふふ。

 メールの本文は書けましたでしょうか?そしたら mew の中で、M-x x-face-insert と打ってみましょう。すると張り付けるべき x-face のファイルを聞いてきますので、ここでは先程作った takano.xbm ファイルを指定します。そーするとメールのヘッダ部分に X-Face: うにうにうに・・。と言うヘッダが付くと思います。これであなたの顔のビットマップファイルがメールに添付されました。やったぁぁ。すかさず送信します。C-cC-c ですね。

 送信の方法は以上でおしまいぃぃぃ。これでメールを受ける相手が x-face を見る事が可能な設定をしているメーラで読んだ時、あなたの顔が表示出来るでしょう。ふふふ(^^)V。

 続いて x-face の表示です。まず、自分の届いたメールに X-face: ヘッダがある事を確認します。 X-Face: うにうにうにうに・・。の、「うにうに」の部分が表示されていないかもしれません。これは、前出の ~/.emacs の設定で、邪魔なので表示しない様にしているからです。X-Face: だけを見付けたら、すかさず、M-x x-face-view と叩いてみましょう。すると xv が起動して、添付された、x-face が表示出来るでしょう。

 これをセーブしたりしてあなたのライブラリを増やしたりするのも面白いかもしれないですね。表示を終らせる時は mule のお約束である C-g を連打すればおとのメール読み画面に復活します。

 さささ、これで一応、x-face の説明はおしまいです。mule+mew で思う存分、メール本文以外で遊びましょ。尚、X-Face: ヘッダは NetNews ででも有効で同じ操作で、NetNews で付いて来た X-Face: を表示し、ポストする事も可能です。ただ、多分、tm と言うのが必要になると思います。tm に付いては NetNews の設定に付いて書いたこの URL のどこかにある事でしょう;-)。

 今回はちょっと違った遊び心に付いて書いて見ました。皆さんももっとメールで遊んでみましょ。ふふふ。

 尚、私はあんまり良く知らないのですが、xemacs だともっと面白くて、xemacs+mew の場合は From: ヘッダのメールアドレスの所に展開してくれる見たいです。さすがはダテに重くない xemacs ですね。ふふふ(^^;;。後、今の x-face のバージョンではカラーな xbm(xpm と言うのかな) にも対応しているみたいです。違った雰囲気で楽しんでみてください。


Copyright (c) 1997-2004 takachan@running-dog.net All Rights Reserved.