From: simm Date: Sun, 20 May 2001 17:40:30 +0000 (+0000) Subject: new branch (apply unlimited patch to flim-1_14 branch) X-Git-Tag: limit-1_14_7 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=dae8663db444229cae347ed24479ab3a00ba726a;p=elisp%2Fflim.git new branch (apply unlimited patch to flim-1_14 branch) --- diff --git a/ChangeLog b/ChangeLog index cba1a3c..2928d8b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2001-05-21 SHIMADA Mitsunobu + + * LIMIT: CVS commit + (apply unlimited patch to flim-1_14 branch) + 2001-04-27 Shuhei KOBAYASHI * mime.el (mime-entity-read-field): Would capitalize twice. @@ -8,6 +13,11 @@ * mmgeneric.el (mime-entity-fetch-field): Ditto. +2001-04-22 TAKAHASHI Kaoru + + * LIMIT: Version 1.14.7 (Fujiidera) released. + (apply unlimited patch to FLIM Version 1.14.2) + 2001-04-15 Shuhei KOBAYASHI * eword-decode.el (eword-lexical-analyze-internal): diff --git a/Makefile b/Makefile index d10c19f..7af1c40 100644 --- a/Makefile +++ b/Makefile @@ -2,9 +2,9 @@ # Makefile for FLIM. # -PACKAGE = flim +PACKAGE = limit API = 1.14 -RELEASE = 2 +RELEASE = 7 TAR = tar RM = /bin/rm -f diff --git a/VERSION b/VERSION index 4c95594..76efd59 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ -[FLIM Version names] +[FLIM Version names] -*- coding: ctext; -*- 1.0.0 ----- @@ -48,11 +48,11 @@ 1.13.0 Iwami $(B@P8+(B 1.13.1 Tawaramoto $(BED86K\(B ; <=> $(B6aE4(B $(B@>ED86K\(B 1.13.2 Kasanui $(B3^K%(B -1.14.0 Ninokuchi $(B?7%N8}(B -1.14.1 Yagi $(BH,LZ(B ; = $(B6aE4(B $(BBg:e@~(B -1.14.2 Yagi-Nishiguchi $(BH,LZ@>8}(B +------ Ninokuchi $(B?7%N8}(B +------ Yagi $(BH,LZ(B ; = $(B6aE4(B $(BBg:e@~(B +------ Yagi-Nishiguchi $(BH,LZ@>8}(B ------ Unebigory-Dòmae-A $(B@&K58fNMA0(B ------- Kashiharajing-Dþ-mae-A $(B3`86?@5\A0(B ; = $(B6aE4(B $(BFnBg:e@~!"5HLn@~(B +------ Kashiharajingu-mae $(B3`86?@5\A0(B ; = $(B6aE4(B $(BFnBg:e@~!"5HLn@~(B [Chao Version names] @@ -90,3 +90,91 @@ 1.14.0 Momoyama $(BEm;3(B 1.14.1 Rokujiz-Dò-A $(BO;COB"(B ------ Kohata $(BLZH((B +------ -DÒbaku-A $(B2+]!(B +------ Uji $(B1'<#(B +------ Shinden $(B?7ED(B +------ J-Dòyò-A $(B>kM[(B +------ Nagaike $(BD9CS(B +------ Yamashiro-Aodani $(B;3>k@DC+(B +------ Yamashiro-Taga $(B;3>kB?2l(B +------ Tamamizu $(B6L?e(B +------ Tanakura $(BC*AR(B +------ Kamikoma $(B>e9}(B +------ Kidu $(BLZDE(B + + +[CLIME Version names] + +;;------------------------------------------------------------------------- +;; $(BBg:eEE5$50F;(B +;; $(BK!N4;{@~(B $(B!J5l(B $(BE7M}7ZJXoDF;(B $(BE7M}@~!K(B +;;------------------------------------------------------------------------- +1.13.0 Shin-H-Dòryþji-A $(B?7K!N4;{(B ; <=> $(B4X@>K\@~(B $(BK!N4;{(B +1.13.1 Ando $(B0BEH(B +1.13.2 Nukatabe $(B3[EDIt(B +1.13.3 Hirahata $(BJ?C<(B ; = $(BBg50(B $(BE7M}@~!"@&K5@~(B + +;;------------------------------------------------------------------------- +;; Hokuriku Railway $(BKLN&E4F;(B +;; Nomi Line $(BG=H~@~(B $(B!J5l(B $(BG=H~EE5$E4F;!K(B +;;------------------------------------------------------------------------- +1.13.4 Shin-Terai $(B?7;{0f(B ; <=> $(BKLN&K\@~(B $(B;{0f(B +1.13.5 Kaga-Fukuoka $(B2C2lJ!2,(B +1.13.6 Nakanosh-Dò-A $(BCf%N>1(B + + +[LIMIT Version names] + +;;------------------------------------------------------------------------- +;; Kinki Nippon Railway $(B6a5&F|K\E4F;(B http://www.kintetsu.co.jp/ +;; Minami--DÒsaka-A Line $(BFnBg:e@~(B +;;------------------------------------------------------------------------- +1.13.0 -DÒsaka-Abenobashi-A $(BBg:e0$ItLn66(B ; <=> JR, $(BBg:e;T8rDL6I(B +1.13.1 Koboreguchi $(B2OKY8}(B +1.13.2 Kita-tanabe $(BKLEDJU(B +1.13.3 Imagawa $(B:#@n(B +1.13.4 Harinakano $(B?KCfLn(B +1.14.0 Yata $(BLpED(B +1.14.1 Kawachi-Amami $(B2OFbE7H~(B +1.14.2 Nunose $(BI[G&(B +1.14.3 Takaminosato $(B9b8+%NN$(B +1.14.4 Kawachi-Matsubara $(B2OFb>>86(B +1.14.5 Eganosh-Dò-A $(B7C2f%NAq(B +1.14.6 Takawashi $(B9bOI(B +------ Fuj-Dïdera-A $(BF#0f;{(B +------ Hajinosato $(BEZ;U$NN$(B +------ D-Dòmyòji-A $(BF;L@;{(B +------ Furuichi $(B8E;T(B ; = $(B6aE4(B $(BD9Ln@~(B +------ Komagatani $(B6p%vC+(B +------ Kaminotaishi $(B>e%NB@;R(B +------ Nij-Dòsan-A $(BFs>e;3(B +------ Nij-Dòjinjaguchi-A $(BFs>e?@k(B +------ Shakudo $(B<\EZ(B ; = $(B6aE4(B $(B8f=j@~(B +------ Takadashi $(B9bED;T(B +------ Ukiana $(BIb9&(B +------ B-Dòjò-A $(BK7>k(B +------ Kashiharajing-Dþ-Nisiguchi-A $(B3`86?@5\@>8}(B +------ Kashiharajing-Dþmae-A $(B3`86?@5\A0(B ; = $(B6aE4(B $(B3`86@~(B + +;;------------------------------------------------------------------------- +;; Kinki Nippon Railway $(B6a5&F|K\E4F;(B http://www.kintetsu.co.jp/ +;; Yoshino Line $(B5HLn@~(B [$(B$G$b!"$3$l!"K\2H$,;H$&$s$d$m$J$!!D(B (^^;] +;;------------------------------------------------------------------------- + (Kashiharajing-Dþmae)-A ($(B3`86?@5\A0(B) +------ Okadera $(B2,;{(B +------ Asuka $(BHtD;(B +------ Tsubosakayama $(BTd:e;3(B +------ Ichio $(B;THx(B +------ Kuzu $(B3k(B +------ Yoshinoguchi $(B5HLn8}(B ; = JR $(BOB2N;3@~(B +------ Kusurimizu $(BLt?e(B +------ Fukugami $(BJ!?@(B +------ -DÒada-A $(BBg0$B@(B +------ Shimoichiguchi $(B2<;T8}(B +------ Koshibe $(B1[It(B +------ Muda $(BO;ED(B +------ Yamato-Kamiichi $(BBgOB>e;T(B +------ Yoshinojing-Dþ-A $(B5HLn?@5\(B +------ Yoshino $(B5HLn(B diff --git a/eword-decode.el b/eword-decode.el index e4143e6..cc58861 100644 --- a/eword-decode.el +++ b/eword-decode.el @@ -180,24 +180,31 @@ decode the charset included in it, it is not decoded." (concat result (eword-decode-token token)) result)))) +;; unlimited patch by simm-emacs@fan.gr.jp +;; Tue, 01 Feb 2000 13:43:09 +0900 (defun eword-decode-unstructured-field-body (string &optional start-column max-column) (eword-decode-string - (decode-mime-charset-string string default-mime-charset))) + (decode-mime-charset-string-unlimited + string + (or default-mime-charset-unlimited default-mime-charset)))) (defun eword-decode-and-unfold-unstructured-field-body (string &optional start-column max-column) (eword-decode-string - (decode-mime-charset-string (std11-unfold-string string) - default-mime-charset) + (decode-mime-charset-string-unlimited + (std11-unfold-string string) + (or default-mime-charset-unlimited default-mime-charset)) 'must-unfold)) (defun eword-decode-unfolded-unstructured-field-body (string &optional start-column max-column) (eword-decode-string - (decode-mime-charset-string string default-mime-charset) + (decode-mime-charset-string-unlimited + string + (or default-mime-charset-unlimited default-mime-charset)) 'must-unfold)) @@ -743,10 +750,13 @@ be the result.") (setq ret (let ((rest mime-header-lexical-analyzer) func r) + ;; unlimited patch by simm-emacs@fan.gr.jp, + ;; Mon, 10 Jan 2000 12:52:39 +0900 (while (and (setq func (car rest)) - (null - (setq r (funcall func string start must-unfold))) - ) + (or (and mime-decode-unlimited + (eq func 'eword-analyze-quoted-string)) + (null + (setq r (funcall func string start must-unfold))))) (setq rest (cdr rest))) (or r (cons (cons 'error (substring string start)) (1+ len))) @@ -787,8 +797,14 @@ characters encoded as encoded-words or invalid \"raw\" format. (while value (setq dest (concat dest (if (stringp (car value)) - (std11-wrap-as-quoted-pairs - (car value) '(?( ?))) + ;; unlimited patch by simm-emacs@fan.gr.jp + ;; Mon, 10 Jan 2000 12:53:46 +0900 + (if mime-decode-unlimited + (eword-decode-string + (std11-wrap-as-quoted-pairs + (car value) '(?( ?)))) + (std11-wrap-as-quoted-pairs + (car value) '(?( ?)))) (eword-decode-token (car value)) )) value (cdr value)) diff --git a/eword-encode.el b/eword-encode.el index f075db3..e8707b4 100644 --- a/eword-encode.el +++ b/eword-encode.el @@ -516,14 +516,14 @@ MODE is allows `text', `comment', `phrase' or nil. Default value is (list (list ";" nil nil)))))) (defsubst eword-encode-addresses-to-rword-list (addresses) - (let ((dest (eword-encode-address-to-rword-list (car addresses)))) + (let ((dest (eword-encode-mailbox-to-rword-list (car addresses)))) (if dest (while (setq addresses (cdr addresses)) (setq dest (nconc dest (list '("," nil nil)) ;; (list '(" " nil nil)) - (eword-encode-address-to-rword-list (car addresses)))))) + (eword-encode-mailbox-to-rword-list (car addresses)))))) dest)) (defsubst eword-encode-msg-id-to-rword-list (msg-id) diff --git a/mime-def.el b/mime-def.el index 5ff449e..deeb740 100644 --- a/mime-def.el +++ b/mime-def.el @@ -1,4 +1,4 @@ -;;; mime-def.el --- definition module about MIME -*- coding: iso-8859-4; -*- +;;; mime-def.el --- definition module about MIME -*- coding: ctext; -*- ;; Copyright (C) 1995,96,97,98,99,2000 Free Software Foundation, Inc. @@ -34,7 +34,7 @@ ) (eval-and-compile - (defconst mime-library-product ["FLIM" (1 14 2) "Yagi-Nishiguchi"] + (defconst mime-library-product ["LIMIT" (1 14 7) "Fujiidera"] "Product name, version number and code name of MIME-library package.")) (defmacro mime-product-name (product) @@ -394,6 +394,39 @@ variable and (nth 1 (car (last ARGS))) is name of backend (encoding)." )))) +;;; @ unlimited patch +;;; + +;; unlimited patch by simm-emacs@fan.gr.jp +;; Mon, 10 Jan 2000 12:55:49 +0900 +(defvar mime-decode-unlimited t + "If non-nil, LIMIT decodes where RFC-illegal position. +If nil, LIMIT behaves as FLIM.") + +(defvar default-mime-charset-unlimited 'auto-detect + "Default Value of MIME-charset. +It is used when MIME-charset is not specified. +It must be symbol. + +If its value is 'auto-detect, (mime-insert-text-content) detects +Japanese coding-system and convert it. + +If its value is nil, use `default-mime-charset' instead.") + +(static-if (boundp 'nonascii-translation-table) + (defconst nonascii-translation-table-unlimited + (let ((i 0) (vec (make-vector 256 0))) + (while (< i 256) + (aset vec i i) + (setq i (1+ i))) + vec) + "Translation table to convert non-ASCII unibyte codes to multibyte. +This is used for no-converting unibyte text to multibyte, +and for inserting character codes specified by number. + +See `nonascii-translation-table'.")) + + ;;; @ end ;;; diff --git a/mime-parse.el b/mime-parse.el index 2323fba..ce8aeaf 100644 --- a/mime-parse.el +++ b/mime-parse.el @@ -83,16 +83,30 @@ be the result." (concat "^[ \t]*\;[ \t]*\\(" mime-token-regexp "\\)" "[ \t]*=[ \t]*\\(" mime/content-parameter-value-regexp "\\)")) -(defun mime-parse-parameter (str) - (if (string-match mime::parameter-regexp str) - (let ((e (match-end 2))) - (cons - (cons (downcase (substring str (match-beginning 1) (match-end 1))) - (std11-strip-quoted-string - (substring str (match-beginning 2) e)) - ) - (substring str e) - )))) +;; unlimited patch by simm-emacs@fan.gr.jp +;; Mon, 10 Jan 2000 12:59:46 +0900 +(defun mime-parse-parameter (string) + (let ((str string)) + (and mime-decode-unlimited + (string-match "\033" str) + (setq str (decode-coding-string string 'iso-2022-7bit-ss2))) + (if (string-match mime::parameter-regexp str) + (let ((e (match-end 2))) + (if mime-decode-unlimited + (cons + (cons (downcase + (encode-coding-string + (substring str (match-beginning 1) (match-end 1)) + 'iso-2022-7bit-ss2)) + (encode-coding-string + (std11-strip-quoted-string + (substring str (match-beginning 2) e)) + 'iso-2022-jp)) + (encode-coding-string (substring str e) 'iso-2022-7bit-ss2)) + (cons + (cons (downcase (substring str (match-beginning 1) (match-end 1))) + (std11-strip-quoted-string (substring sutr (match-beginning 2) e))) + (substring str e))))))) ;;; @ Content-Type diff --git a/mime.el b/mime.el index 005790e..49707a9 100644 --- a/mime.el +++ b/mime.el @@ -388,16 +388,23 @@ default value." (buffer-substring (match-beginning 0)(match-end 0)) ))))) +;; unlimited patch by simm-emacs@fan.gr.jp +;; Mon, 10 Jan 2000 12:59:46 +0900 (defun mime-entity-filename (entity) "Return filename of ENTITY." - (or (mime-entity-uu-filename entity) - (mime-content-disposition-filename - (mime-entity-content-disposition entity)) - (cdr (let ((param (mime-content-type-parameters - (mime-entity-content-type entity)))) - (or (assoc "name" param) - (assoc "x-name" param)) - )))) + (let ((filename + (or (mime-entity-uu-filename entity) + (mime-content-disposition-filename + (mime-entity-content-disposition entity)) + (cdr (let ((param (mime-content-type-parameters + (mime-entity-content-type entity)))) + (or (assoc "name" param) + (assoc "x-name" param)))) + ""))) + (or (and mime-decode-unlimited + (string-match "\033" filename) + (decode-mime-charset-string filename 'iso-2022-jp 'CRLF)) + (eword-decode-string filename)))) (defsubst mime-entity-media-type (entity) @@ -426,6 +433,150 @@ default value." (mime-entity-set-encoding-internal entity encoding)) +;;; @ unlimited patch +;;; + +;; unlimited patch by simm-emacs@fan.gr.jp (code derives from irchat-pj) +;; Tue, 01 Feb 2000 01:42:05 +0900 +(defun mime-detect-coding-system-region-unlimited (beg end) + "Detect coding system on region." + (let (ch esc prev flag) + (save-excursion + (catch 'detect + ;; check ISO-2022-JP / ascii + (catch 'quit + (goto-char beg) + (while (< (point) end) + (setq ch (following-char)) + (and (<= 256 ch) + (throw 'detect nil)) ;;'noconv)) + (and (<= 128 ch) + (throw 'quit t)) + (and (= 27 ch) + (setq esc t)) + (forward-char 1)) + (throw 'detect (if esc 'iso-2022-jp nil))) ;;'noconv))) + ;; check EUC-JP / SHIFT-JIS + (if esc (throw 'detect 'iso-2022-jp)) + (while (< (point) end) + (setq ch (following-char)) + (or (and (= 27 ch) ;; ESC + (throw 'detect 'iso-2022-jp)) + (and (<= 128 ch) (<= ch 141) ;; 0x80 <= ch <= 0x8d + (throw 'detect 'shift_jis)) + (and (<= 144 ch) (<= ch 159) ;; 0x90 <= ch <= 0x9f + (throw 'detect 'shift_jis)) + (and (eq 'shift_jis prev) (<= ch 127) ;; second byte MSB == 0 + (throw 'detect 'shift_jis)) + (and (eq 'euc-jp prev) + (<= 161 ch) (<= ch 243) ;; second byte of EUC Kana + (setq prev nil + flag 'euc-jp)) + (and (eq nil prev) + (or (= 164 ch) (= 165 ch)) ;; first byte of EUC kana + (setq prev 'euc-jp)) + (< ch 160) ;; ch <= 0xa0 + (and (eq 'euc-jp prev) + (throw 'detect 'euc-jp)) + (setq prev (if prev nil 'shift_jis) + flag (if (eq 'euc-jp flag) 'euc-jp 'shift_jis))) + (forward-char 1)) + flag)))) + ;;(or flag 'noconv))))) + +;; unlimited patch by simm-emacs@fan.gr.jp +;; Tue, 01 Feb 2000 01:56:38 +0900 +(defun mime-detect-coding-system-string-unlimited (str) + "Detect coding system on string." + (save-excursion + (set-buffer (get-buffer-create " *Temporary unlimited*")) + (insert str) + (unwind-protect + (mime-detect-coding-system-region-unlimited (point-min) (point-max)) + (kill-buffer nil)))) + +;; unlimited patch by simm-emacs@fan.gr.jp +;; Tue, 01 Feb 2000 13:32:14 +0900 +(defsubst insert-unlimited (str) + "Insert with no-conversion. +On GNU Emacs 20.*, (insert str) after (set-buffer-multibyte nil). +Other environment, perform (insert str)." + (static-if (boundp 'nonascii-translation-table-unlimited) + (let ((nonascii-translation-table nonascii-translation-table-unlimited)) + (insert str)) + (insert str))) + +(defun decode-mime-charset-string-dist-unlimited (str charset &optional lbt) + "Detect coding system on string." + (if (not (eq 'auto-detect charset)) + (decode-mime-charset-string str charset lbt) + (save-excursion + (set-buffer (get-buffer-create " *Temporary unlimited*")) + (unwind-protect + (let (code) + (insert-unlimited str) + (setq code (mime-detect-coding-system-region-unlimited (point-min) (point-max))) + (cond ((eq code 'euc-jp) + (message "EUC-JP code detected, so convert this message.")) + ((eq code 'shift_jis) + (message "SHIFT-JIS code detected, so convert this message."))) + (decode-mime-charset-region (point-min) (point-max) + (or code default-mime-charset) + lbt) + (buffer-substring (point-min) (point-max))) + (kill-buffer nil))))) + +(defun decode-mime-charset-string-unlimited (str charset &optional lbt) + "Detect coding system on string." + (cond ((eq 'auto-detect charset) + (save-excursion + (set-buffer (get-buffer-create " *Temporary unlimited*")) + (unwind-protect + (let (code) + (insert-unlimited str) + (setq code + (mime-detect-coding-system-region-unlimited (point-min) (point-max))) + (cond ((eq code 'euc-jp) + (message "EUC-JP code detected, so convert this message.")) + ((eq code 'shift_jis) + (message "SHIFT-JIS code detected, so convert this message."))) + (decode-mime-charset-region (point-min) (point-max) + (or code default-mime-charset) + lbt) + (buffer-substring (point-min) (point-max))) + (kill-buffer nil)))) + ((string= "us-ascii" charset) + (save-excursion + (set-buffer (get-buffer-create " *Temporary unlimited*")) + (unwind-protect + (let ((code 'us-ascii)) + (insert-unlimited str) + (goto-char (point-min)) + (while (not (eobp)) + (if (and (<= 32 (following-char)) (< (following-char) 128)) + (forward-char 1) + (setq code nil) + (goto-char (point-max)))) + (cond ((eq code 'us-ascii) + (decode-mime-charset-region (point-min) (point-max) nil lbt)) + (code + (decode-mime-charset-region (point-min) (point-max) code lbt)) + (t + (setq code + (mime-detect-coding-system-region-unlimited + (point-min) (point-max))) + (when code + (message "Declared US-ASCII but detected %s, so convert." + (if (eq code 'shift_jis) "SHIFT-JIS" + (upcase (prin1-to-string code)))) + (decode-mime-charset-region (point-min) (point-max) + (or code default-mime-charset) + lbt)))) + (buffer-substring (point-min) (point-max))) + (kill-buffer nil)))) + (t + (decode-mime-charset-string str charset lbt)))) + ;;; @ end ;;; diff --git a/mmgeneric.el b/mmgeneric.el index 4b632f3..4690f32 100644 --- a/mmgeneric.el +++ b/mmgeneric.el @@ -41,21 +41,19 @@ ;; (autoload 'mime-parse-external "mime-parse") (autoload 'mime-entity-content "mime") -(eval-and-compile - (luna-define-class mime-entity () - (location - content-type children parent - node-id - content-disposition encoding - ;; for other fields - original-header parsed-header)) - - (luna-define-internal-accessors 'mime-entity) - ) +(luna-define-class mime-entity () + (location + content-type children parent + node-id + content-disposition encoding + ;; for other fields + original-header parsed-header)) (defalias 'mime-entity-representation-type-internal 'luna-class-name) (defalias 'mime-entity-set-representation-type-internal 'luna-set-class-name) +(luna-define-internal-accessors 'mime-entity) + (luna-define-method mime-entity-fetch-field ((entity mime-entity) field-name) (or (symbolp field-name) @@ -63,15 +61,18 @@ (cdr (assq field-name (mime-entity-original-header-internal entity)))) +;; unlimited patch by simm-emacs@fan.gr.jp +;; Tue, 01 Feb 2000 13:32:14 +0900 (luna-define-method mime-insert-text-content ((entity mime-entity)) (insert - (decode-mime-charset-string (mime-entity-content entity) - (or (mime-content-type-parameter - (mime-entity-content-type entity) - "charset") - default-mime-charset) - 'CRLF) - )) + (decode-mime-charset-string-unlimited + (mime-entity-content entity) + (or (mime-content-type-parameter + (mime-entity-content-type entity) + "charset") + default-mime-charset-unlimited + default-mime-charset) + 'CRLF))) ;;; @ for mm-backend diff --git a/std11.el b/std11.el index 97f9359..4523043 100644 --- a/std11.el +++ b/std11.el @@ -217,15 +217,29 @@ If BOUNDARY is not nil, it is used as message header separator." )) (setq i (1+ i)) ) - (concat dest (substring string b)) - )) + ;; unlimited patch by simm-emacs@fan.gr.jp + ;; Mon, 10 Jan 2000 13:03:02 +0900 + (if mime-decode-unlimited + (eword-encode-string (concat dest (substring string b))) + (concat dest (substring string b))))) (defconst std11-non-qtext-char-list '(?\" ?\\ ?\r ?\n)) +;; unlimited patch by simm-emacs@fan.gr.jp +;; Mon, 10 Jan 2000 13:03:02 +0900 +(defvar std11-filename-coding-system nil + "Define coding-system for non-ASCII filename when send. +Set this variable coding system symbol (ie. 'iso-2022-jp) or nil. +If non-nil, std11-wrap-as-quoted-string use encode-coding-string.") + (defun std11-wrap-as-quoted-string (string) "Wrap STRING as RFC 822 quoted-string." (concat "\"" - (std11-wrap-as-quoted-pairs string std11-non-qtext-char-list) + ;; unlimited patch by simm-emacs@fan.gr.jp + ;; Mon, 10 Jan 2000 13:03:02 +0900 + (if std11-filename-coding-system + (encode-coding-system string std11-filename-coding-system) + (std11-wrap-as-quoted-pairs string std11-non-qtext-char-list)) "\"")) (defun std11-strip-quoted-pair (string) @@ -762,7 +776,7 @@ represents addr-spec of RFC 822." "Return string of address part from parsed ADDRESS of RFC 822." (cond ((eq (car address) 'group) (mapconcat (function std11-address-string) - (nth 2 address) + (car (cdr address)) ", ") ) ((eq (car address) 'mailbox)