X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fuudecode.el;h=7ab2fcd1c620bd289325b088cfeb7322c9eb546f;hb=e831ccaaa5f070cc9ad3683d215b6f108161eb02;hp=74abeff6621ad4b0281dfc1992db1f56d44a4144;hpb=9b139a13c0650a18872ebd64849560a97554afa8;p=gnus diff --git a/lisp/uudecode.el b/lisp/uudecode.el index 74abeff66..7ab2fcd1c 100644 --- a/lisp/uudecode.el +++ b/lisp/uudecode.el @@ -1,17 +1,17 @@ ;;; uudecode.el -- elisp native uudecode ;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, -;; 2005, 2006, 2007 Free Software Foundation, Inc. +;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. ;; Author: Shenghuo Zhu ;; Keywords: uudecode news ;; This file is part of GNU Emacs. -;; GNU Emacs is free software; you can redistribute it and/or modify +;; GNU Emacs 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 3, or (at your option) -;; any later version. +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -19,9 +19,7 @@ ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. +;; along with GNU Emacs. If not, see . ;;; Commentary: @@ -35,23 +33,28 @@ 'char-int 'identity))) +(defgroup uudecode nil + "Decoding of uuencoded data." + :group 'mail + :group 'news) + (defcustom uudecode-decoder-program "uudecode" "*Non-nil value should be a string that names a uu decoder. The program should expect to read uu data on its standard input and write the converted data to its standard output." :type 'string - :group 'gnus-extract) + :group 'uudecode) (defcustom uudecode-decoder-switches nil "*List of command line flags passed to `uudecode-decoder-program'." - :group 'gnus-extract + :group 'uudecode :type '(repeat string)) (defcustom uudecode-use-external (executable-find uudecode-decoder-program) "*Use external uudecode program." :version "22.1" - :group 'gnus-extract + :group 'uudecode :type 'boolean) (defconst uudecode-alphabet "\040-\140") @@ -212,14 +215,14 @@ If FILE-NAME is non-nil, save the result to FILE-NAME." result)))) (skip-chars-forward non-data-chars end)) (if file-name - (let (default-enable-multibyte-characters) - (with-temp-file file-name - (insert (apply 'concat (nreverse result))))) + (with-temp-file file-name + (unless (featurep 'xemacs) (set-buffer-multibyte nil)) + (insert (apply 'concat (nreverse result)))) (or (markerp end) (setq end (set-marker (make-marker) end))) (goto-char start) (if enable-multibyte-characters - (mapc #'(lambda (x) (insert (uudecode-string-to-multibyte x))) - (nreverse result)) + (dolist (x (nreverse result)) + (insert (uudecode-string-to-multibyte x))) (insert (apply 'concat (nreverse result)))) (delete-region (point) end)))))) @@ -233,5 +236,4 @@ If FILE-NAME is non-nil, save the result to FILE-NAME." (provide 'uudecode) -;;; arch-tag: e1f09ed5-62b4-4677-9f13-4e81c4fe8ce3 ;;; uudecode.el ends here