[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:05597] Re: Kamail で IE の mailto プロトコルから新規メール作成できないか?



井上さん、こんにちは。

	2000年11月26日(日)[11:37:46]の、
	[xyzzy:05594] Re: Kamail で IE の mailto プロトコルから新規メール作成できないか?
	への返事です。

> 通信エラーを回避する方法はないでしょうか?
> それから、ファイルをダブルクリックしても表示がされません。

んー、全然だめでしたね。最初からやりなおし。

・estartup.l を添付と置き換え。
・kamail.l の 54 行目の (in-package "kamail") の *上* 
に以下を追加。

  (defun kamail-mailto (mailto)
    (km::kamail-mailto mailto))

・kamail-draft.l の一番下あたりに以下を追加。

  (defun kamail-parse-mailto (mailto)
    (when (string-matchp "mailto:\\([^?]+\\)\\(\\?\\(.+\\)\\)?" mailto)
      (let* ((header
  	    (cons (list "to" (subseq mailto (match-beginning 1) (match-end 1)))
  		  (and (match-beginning 3)
  		       (mapcan #'(lambda (x)
  				   (let ((i (position #\= x)))
  				     (and i (list (list (nstring-downcase (subseq x 0 i))
  							(subseq x (+ i 1)))))))
  			       (split-string (subseq mailto (match-beginning 3)) #\&)))))
  	   (encoding (and (find #\% mailto)
  			  (detect-char-encoding (si:www-url-decode mailto)))))
        (if encoding
  	  (mapcar #'(lambda (x)
  		      (mapcar #'(lambda (y)
  				  (convert-encoding-to-internal
  				   encoding (si:www-url-decode y)))
  			      x))
  		  header)
  	header))))
  
  (defun kamail-mailto (mailto)
    (let ((header (kamail-parse-mailto mailto)))
      (when header
        (kamail-start)
        (kamail-select-view)
        (kamail-prepare-mail header))))

・.xyzzy を以下のように変更。

  (autoload 'kamail-mailto "kamail/kamail" nil)
  (setq *command-line-mailto-hook* #'kamail-mailto)

-- 
亀井哲弥(Tetsuya Kamei)
kamei@xxxxxxxxxxxx

Attachment: estartup.l.lzh
Description: Binary data


Index Home