tm 7.99.
[elisp/tm.git] / tm-eword.el
index b1fc9d0..96728b9 100644 (file)
 ;;; Copyright (C) 1993,1994,1995 MORIOKA Tomohiko
 ;;;
 ;;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
+;;; Maintainer: MORIOKA Tomohiko <morioka@jaist.ac.jp>
+;;; Created: 1993/6/3 (1995/10/3 obsolete tiny-mime.el)
+;;; Version:
+;;;    $Id: tm-eword.el,v 7.10 1995/12/06 08:20:02 morioka Exp $
 ;;; Keywords: mail, news, MIME, RFC 1522, multilingual, encoded-word
+;;; Commentary: This module is obsoleted. tm-ew-d.el is part of
+;;;             tm-view.el, and tm-ew-e.el is part of tm-edit.el.
 ;;;
+;;; This file is part of tm (Tools for MIME).
+;;;
+;;; This program is free software; you can redistribute it and/or
+;;; modify it under the terms of the GNU General Public License as
+;;; published by the Free Software Foundation; either version 2, or
+;;; (at your option) any later version.
+;;;
+;;; This program is distributed in the hope that it will be useful,
+;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;;; General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with This program.  If not, write to the Free Software
+;;; Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+;;;
+;;; Code:
 
 (require 'tl-822)
 (require 'tl-str)
 (require 'tm-def)
 
-(autoload 'mime/decode-encoded-words-string "tm-ew-d")
-(autoload 'mime/decode-encoded-words-region "tm-ew-d" nil t)
+(autoload 'mime/encode-message-header "tm-ew-e" nil t)
 (autoload 'mime/decode-message-header "tm-ew-d" nil t)
+(autoload 'mime/encode-field "tm-ew-e" nil t)
 
-(require 'tm-ew-e)
-
+(autoload 'mime-eword/decode-region "tm-ew-d" nil t)
+(autoload 'mime-eword/encode-string "tm-ew-e")
+(autoload 'mime-eword/decode-string "tm-ew-d")
 
-;;; @ version
-;;;
-
-(defconst tm-eword/RCS-ID
-  "$Id: tm-eword.el,v 7.3 1995/10/06 05:44:48 morioka Exp $")
-
-(defconst tm-eword/version (get-version-string tm-eword/RCS-ID))
-
-
-;;; @ variables
-;;;
+(autoload 'mime/exist-encoded-word-in-subject "tm-ew-e" nil t)
 
-(defvar mime/no-encoding-header-fields '("X-Nsubject" "Newsgroups"))
 
-(defvar mime/use-X-Nsubject nil)
-
-
-;;; @ Application Interface
-;;;
-
-;;; @@ MIME header encoders
-;;;
-
-(defun mime/encode-field (str)
-  (setq str (rfc822/unfolding-string str))
-  (let ((ret (string-match rfc822/field-top-regexp str)))
-    (if ret
-       (let ((field-name (substring str 0 (match-end 1)))
-             (field-body (eliminate-top-spaces
-                          (substring str (match-end 0))))
-             fname)
-         (concat field-name ": "
-                 (cond ((string= field-body "") "")
-                       ((member (setq fname (downcase field-name))
-                                '("reply-to" "from" "sender"
-                                  "resent-reply-to" "resent-from"
-                                  "resent-sender" "to" "resent-to"
-                                  "cc" "resent-cc"
-                                  "bcc" "resent-bcc" "dcc")
-                                )
-                        (car (tm-eword::encode-address-list
-                              (+ (length field-name) 1) field-body))
-                        )
-                       (t
-                        (catch 'tag
-                          (let ((r mime/no-encoding-header-fields) fn)
-                            (while r
-                              (setq fn (car r))
-                              (if (string= (downcase fn) fname)
-                                  (throw 'tag field-body)
-                                )
-                              (setq r (cdr r))
-                              ))
-                          (car (tm-eword::encode-string
-                                (+ (length field-name) 1) field-body))
-                          ))
-                       ))
-         )
-      str)))
-
-(defun mime/exist-encoded-word-in-subject ()
-  (let ((str (rfc822/get-field-body "Subject")))
-    (if (and str (string-match mime/encoded-word-regexp str))
-       str)))
-
-(defun mime/encode-message-header ()
-  (interactive "*")
-  (save-excursion
-    (save-restriction
-      (narrow-to-region (goto-char (point-min))
-                       (progn
-                         (re-search-forward
-                          (concat
-                           "^" (regexp-quote mail-header-separator) "$")
-                          nil t)
-                         (match-beginning 0)
-                         ))
-      (goto-char (point-min))
-      (let (beg end field)
-       (while (re-search-forward "^.+:.*\\(\n\\s +.*\\)*" nil t)
-         (setq beg (match-beginning 0))
-         (setq end  (match-end 0))
-         (if (setq field (mime/encode-field
-                          (buffer-substring-no-properties beg end)))
-             (progn
-               (delete-region beg end)
-               (insert field)
-               ))
-         ))
-      (if mime/use-X-Nsubject
-         (let ((str (mime/exist-encoded-word-in-subject)))
-           (if str
-               (insert
-                (concat
-                 "\nX-Nsubject: "
-                 (mime/decode-encoded-words-string
-                  (rfc822/unfolding-string str))
-                 )))))
-      )))
-
-             
 ;;; @ end
 ;;;
 
 (provide 'tm-eword)
-
-(run-hooks 'tm-eword-load-hook)