X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=mel-dl.el;h=0e79ccaa96bdf7023c95323afbc43a95070766ad;hb=635edef501f7deb04cdf7e5c327e3c8afd67ca46;hp=e42635be3094a84233a22f073dd7c5e5596a71e0;hpb=fd2323ddc3635fd4295501e0ab676424444f03d8;p=elisp%2Fflim.git diff --git a/mel-dl.el b/mel-dl.el index e42635b..0e79cca 100644 --- a/mel-dl.el +++ b/mel-dl.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1998 Free Software Foundation, Inc. ;; Author: MORIOKA Tomohiko -;; Version: $Id: mel-dl.el,v 1.1 1998-01-11 16:21:43 morioka Exp $ ;; Keywords: MIME, Base64 ;; This file is part of MEL (MIME Encoding Library). @@ -93,6 +92,12 @@ START and END are buffer positions." (defvar base64-external-encoder '("mmencode") "*list of base64 encoder program name and its arguments.") +(defvar base64-external-decoder '("mmencode" "-u") + "*list of base64 decoder program name and its arguments.") + +(defvar base64-external-decoder-option-to-specify-file '("-o") + "*list of options of base64 decoder program to specify file.") + (defun base64-insert-encoded-file (filename) "Encode contents of file FILENAME to base64, and insert the result. It calls external base64 encoder specified by @@ -103,6 +108,21 @@ mmencode included in metamail or XEmacs package)." filename t nil (cdr base64-external-encoder)) ) +(defun base64-write-decoded-region (start end filename) + "Decode and write current region encoded by base64 into FILENAME. +START and END are buffer positions." + (interactive + (list (region-beginning) (region-end) + (read-file-name "Write decoded region to file: "))) + (as-binary-process + (apply (function call-process-region) + start end (car base64-external-decoder) + nil nil nil + (append (cdr base64-external-decoder) + base64-external-decoder-option-to-specify-file + (list filename)) + ))) + ;;; @ etc ;;;