« PL/Ruby | Main | あまり »

2005年08月13日

Carbon EmacsでDrag'n Drop

[ カテゴリ:Emacsen ]

というか、Wanderlust/Carbon EmacsでファイルをDnDで添付したいよね、という話。 といっても別に難しくはありません。

まず、mac-drag-N-dropをこのへんから入手して、.emacsには以下のように。

;
; drag-N-drop
;
(load "mac-drag-N-drop" nil t)
(global-set-key [drag-n-drop] 'mac-drag-N-drop)

で、Wanderlustの設定(人によっては.emacsでしょうが)には、 以下のように。

;
; drag-N-drop
;
(add-to-list 'mac-drag-N-drop-string-alist
    '(wl-draft-mode . (
       (".*" . (progn (mime-edit-insert-file (file-relative-name file) t) t)
       ))
    ))

ポイントは、最後にtを返すところかな。 ファイル名の正規表現に対応するアクションを記述するわけだけど、 アクションのstringpがnilの場合はevalするようになってるんだけど、 mac-drag-N-dropの仕様がいまいちで、 evalの返り値がnilだとfind-fileするらしい。 で、mime-edit-insert-fileはnilを返すようだ、と。