+(defun mm-uu-configure-p (key val)
+ (member (cons key val) mm-uu-configure-list))
+
+(defun mm-uu-configure (&optional symbol value)
+ (if symbol (set-default symbol value))
+ (setq mm-uu-begin-line nil)
+ (mapcar '(lambda (type)
+ (if (mm-uu-configure-p type 'disabled)
+ nil
+ (setq mm-uu-begin-line
+ (concat mm-uu-begin-line
+ (if mm-uu-begin-line "\\|")
+ (symbol-value
+ (intern (concat "mm-uu-" (symbol-name type)
+ "-begin-line")))))))
+ '(uu postscript binhex shar forward)))
+
+(defcustom mm-uu-configure-list nil
+ "A list of mm-uu configuration.
+To disable dissecting shar codes, for instance, add
+`(shar . disabled)' to this list."
+ :type '(repeat (cons
+ (choice (item postscript)
+ (item uu)
+ (item binhex)
+ (item shar)
+ (item forward))
+ (choice (item disabled))))
+ :group 'gnus-article-mime
+ :set 'mm-uu-configure)
+
+(mm-uu-configure)
+