[Mew-dist 1958] petname の登録

Junichiro Kita ( 喜多淳一郎 ) kita at example.com
1997年 9月 11日 (木) 18:13:17 JST


喜多@NTTデータです.

メール読んでるときに,新しいpetnameを登録する方法が見当たらなかったの
で,適当に作ってみました.
# ほんとにないのかな.結構不便なのに.

~/.im/Petname を開いて Petname を追加して,Z するのがめんどくさい人は
使ってみてください.

使い方はコメントを,何やってるのかもコメントを読めばわかるでしょう.

mew-toggle-kanji(って勝手に名前つけちゃいましたが)のところを変更すれば 
wnn とか canna でも使えると思います.
-------------- next part --------------
;;;
;;; mew-petname.el
;;; 

;; [How to use]
;;   mew-summary-petname-save-new-petname は mew-petname-file に 
;;   petname を追加します
;;   設定例: summary モードで M-p でpetname の登録
;;     (add-hook 'mew-summary-mode-hook
;;               (function
;;                (lambda ()
;;                  (define-key mew-summary-mode-map "\M-p"
;;                    'mew-summary-petname-save-new-petname))))
;;     (autoload 'mew-summary-petname-save-new-petname "mew-petname" nil t)

(if (fboundp 'mew-toggle-kanji)
    nil
  ;; canna とか wnn は忘れた
  (fset 'mew-toggle-kanji 'win32-ime-toggle))

(defun mew-summary-petname-save-new-petname ()
  (interactive)
  (cond
   ((eobp)
    (message "No message"))
   ((not (or (mew-summary-message-number) (mew-summary-part-number)))
    (message "No message"))
   (t
    (let (minibuffer-setup-hook msg from petname)
      ;; 普通 petname は漢字でしょ
      (add-hook 'minibuffer-setup-hook 'mew-toggle-kanji)
      ;; とにかく save-excursion
      (save-excursion
	(if (mew-summary-part-number)
	    (re-search-backward mew-summary-message-regex nil t nil))
	;; メッセージを表示させる
	(mew-summary-display t)
	(setq msg (mew-summary-message-number))
	(set-buffer (or (mew-cache-hit (cons (buffer-name) msg))
			(mew-buffer-message)))
	(setq from (mew-header-get-address "From:"))
	(setq petname (read-from-minibuffer
		       (format "Petname for \"%s\": " from)))
	(cond
	 ((mew-y-or-n-p "Petname %s for \"%s\", correct and save?"
			petname from)
	  ;; petname が間違ってなかったら mew-petname-file にセーブ
	  (setq mew-petname-alist
		(cons (cons from petname) mew-petname-alist))
	  (let ((buffer (find-file mew-petname-file)))
	    (set-buffer buffer)
	    (insert (format "%s\t\"%s\"\n" from petname))
	    (save-buffer)
	    (kill-buffer buffer)))))))))
-------------- next part --------------
-----
       __
    __/\_\
 __/\_\/_/  喜多 淳一郎
/\_\/_/\_\
\/_/\_\/_/  <mailto:kita at example.com>
   \/_/\_\  
      \/_/


Mew-dist メーリングリストの案内