(eword-analyze-atom): New function.
authormorioka <morioka>
Sun, 11 Jan 1998 03:07:16 +0000 (03:07 +0000)
committermorioka <morioka>
Sun, 11 Jan 1998 03:07:16 +0000 (03:07 +0000)
(eword-lexical-analyze-internal): Use `eword-analyze-atom' instead of
`std11-analyze-atom'.

eword-decode.el

index 06ddc3a..c2c743b 100644 (file)
@@ -10,7 +10,7 @@
 ;;     Renamed: 1993/06/03 to tiny-mime.el
 ;;     Renamed: 1995/10/03 from tiny-mime.el (split off encoder)
 ;;     Renamed: 1997/02/22 from tm-ew-d.el
-;; Version: $Revision: 0.19 $
+;; Version: $Revision: 0.20 $
 ;; Keywords: encoded-word, MIME, multilingual, header, mail, news
 
 ;; This file is part of SEMI (SEMI is Emacs MIME Interfaces).
@@ -41,7 +41,7 @@
 ;;;
 
 (defconst eword-decode-RCS-ID
-  "$Id: eword-decode.el,v 0.19 1997-08-30 14:26:13 morioka Exp $")
+  "$Id: eword-decode.el,v 0.20 1998-01-11 03:07:16 morioka Exp $")
 (defconst eword-decode-version (get-version-string eword-decode-RCS-ID))
 
 
@@ -348,6 +348,15 @@ It is max size of eword-lexical-analyze-cache - 1.")
        (cons (cons 'atom dest) string)
        )))
 
+(defun eword-analyze-atom (string)
+  (if (string-match std11-atom-regexp string)
+      (let ((end (match-end 0)))
+       (cons (cons 'atom (decode-mime-charset-string
+                          (substring string 0 end)
+                          default-mime-charset))
+             (substring string end)
+             ))))
+
 (defun eword-lexical-analyze-internal (string must-unfold)
   (let (dest ret)
     (while (not (string-equal string ""))
@@ -358,7 +367,7 @@ It is max size of eword-lexical-analyze-cache - 1.")
                (std11-analyze-spaces string)
                (std11-analyze-special string)
                (eword-analyze-encoded-word string must-unfold)
-               (std11-analyze-atom string)
+               (eword-analyze-atom string)
                '((error) . "")
                ))
       (setq dest (cons (car ret) dest))