Require `poem' instead of `emu'.
[elisp/flim.git] / eword-encode.el
index bfff8a7..1bca5cf 100644 (file)
@@ -24,7 +24,7 @@
 
 ;;; Code:
 
-(require 'emu)
+(require 'poem)
 (require 'mel)
 (require 'std11)
 (require 'mime-def)
@@ -332,23 +332,28 @@ MODE is allows `text', `comment', `phrase' or nil.  Default value is
     ))
 
 (defun eword-encode-rword-list (column rwl)
-  (let (ret dest ps special str ew-f pew-f)
+  (let (ret dest ps special str ew-f pew-f bew)
     (while rwl
       (setq ew-f (nth 2 (car rwl)))
       (if (and pew-f ew-f)
          (setq rwl (cons '(" ") rwl)
+               bew t
                pew-f nil)
-       (setq pew-f ew-f)
+       (setq pew-f ew-f
+             bew nil)
        )
       (setq ret (tm-eword::encode-string-1 column rwl))
       (setq str (car ret))
       (if (eq (elt str 0) ?\n)
-         (if (eq special ?\()
-             (progn
-               (setq dest (concat dest "\n ("))
-               (setq ret (tm-eword::encode-string-1 2 rwl))
-               (setq str (car ret))
-               ))
+         (cond
+          ((eq special ?\()
+           (setq dest (concat dest "\n ("))
+           (setq ret (tm-eword::encode-string-1 2 rwl))
+           (setq str (car ret)))
+          ((eq bew t)
+           (setq dest (concat dest "\n "))
+           (setq ret (tm-eword::encode-string-1 1 (cdr rwl)))
+           (setq str (car ret))))
        (cond ((eq special ? )
               (if (string= str "(")
                   (setq ps t)
@@ -525,10 +530,12 @@ MODE is allows `text', `comment', `phrase' or nil.  Default value is
     dest))
 
 (defsubst eword-encode-msg-id-to-rword-list (msg-id)
-  (cons '(" " nil nil)
-       (cons '("<" nil nil)
-             (nconc (eword-encode-addr-seq-to-rword-list (cdr msg-id))
-                    '((">" nil nil))))))
+  (list
+   (list
+    (concat "<"
+           (caar (eword-encode-addr-seq-to-rword-list (cdr msg-id)))
+           ">")
+    nil nil)))
 
 (defsubst eword-encode-in-reply-to-to-rword-list (in-reply-to)
   (let (dest)