;;;
;;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
;;; Version:
-;;; $Id: tm-def.el,v 7.1 1995/11/10 10:43:15 morioka Exp $
+;;; $Id: tm-def.el,v 7.5 1995/12/09 04:11:11 morioka Exp $
;;; Keywords: mail, news, MIME, multimedia, definition
;;;
;;; This file is part of tm (Tools for MIME).
;;;
(defconst mime/output-buffer-name "*MIME-out*")
-(defconst mime/decoding-buffer-name "*MIME-decoding*")
+(defconst mime/temp-buffer-name " *MIME-temp*")
;;; @ for various Emacs variants
(insert str)))))
+;;; @ field
+;;;
+
+(defun tm:add-fields (sym field-list &optional regexp-sym)
+ (or regexp-sym
+ (setq regexp-sym
+ (let ((name (symbol-name sym)))
+ (intern
+ (concat (if (string-match "\\(.*\\)-list" name)
+ (substring name 0 (match-end 1))
+ name)
+ "-regexp")
+ )))
+ )
+ (let ((fields (eval sym)))
+ (mapcar (function
+ (lambda (field)
+ (or (member field fields)
+ (setq fields (cons field fields))
+ )
+ ))
+ (reverse field-list)
+ )
+ (set regexp-sym
+ (concat "^" (apply (function regexp-or) fields) ":"))
+ (set sym fields)
+ ))
+
+(defun tm:delete-fields (sym field-list &optional regexp-sym)
+ (or regexp-sym
+ (setq regexp-sym
+ (let ((name (symbol-name sym)))
+ (intern
+ (concat (if (string-match "\\(.*\\)-list" name)
+ (substring name 0 (match-end 1))
+ name)
+ "-regexp")
+ )))
+ )
+ (let ((fields (eval sym)))
+ (mapcar (function
+ (lambda (field)
+ (setq fields (delete field fields))
+ ))
+ field-list)
+ (set regexp-sym
+ (concat "^" (apply (function regexp-or) fields) ":"))
+ (set sym fields)
+ ))
+
+
;;; @ end
;;;