diff scripts/miscellaneous/gunzip.m @ 19277:91a6f06c5052

Overhaul gzip.m and gunzip.m These functions now operate in the directory where the archive file is located rather than the current directory. * gunzip.m: Redo docstring. Default directory for unpacking is now the directory where the .gz file resides. Eliminate unnecessary varargout usage. Eliminate unnecessary mfilename() function call by replacing with string "gunzip". Add %!assert(1) to remove file from test statistics. The tests are located in gzip.m * gzip.m: Redo docstring. Rename outdir input variable to dir to match other compress/uncompress routines. * unpack.m: Redo seealso links in docstring.
author Rik <rik@octave.org>
date Thu, 09 Oct 2014 20:38:04 -0700
parents d63878346099
children a4e993343e93
line wrap: on
line diff
--- a/scripts/miscellaneous/gunzip.m	Thu Oct 09 16:14:46 2014 -0700
+++ b/scripts/miscellaneous/gunzip.m	Thu Oct 09 20:38:04 2014 -0700
@@ -17,28 +17,42 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {} gunzip (@var{gzfile}, @var{dir})
-## Unpack the gzip archive @var{gzfile} to the directory @var{dir}.  If
-## @var{dir} is not specified, it defaults to the current directory.  If
-## @var{gzfile} is a directory, all gzfiles in the directory will be
-## recursively gunzipped.
-## @seealso{gzip, unpack, bunzip2, unzip, untar}
+## @deftypefn  {Function File} {@var{files} =} gunzip (@var{gzfile})
+## @deftypefnx {Function File} {@var{files} =} gunzip (@var{gzfile}, @var{dir})
+## Unpack the gzip archive @var{gzfile}.
+##
+## If @var{gzfile} is a directory, all gzfiles in the directory will be
+## recursively unpacked.  
+##
+## If @var{dir} is specified the files are unpacked in this directory rather
+## than the one where @var{gzfile} is located.
+##
+## The optional output @var{files} is a list of the uncompressed files.
+## @seealso{gzip, bunzip2, unzip, untar, unpack}
 ## @end deftypefn
 
 ## Author: Bill Denney <denney@seas.upenn.edu>
 
-function varargout = gunzip (gzfile, dir = ".")
+function files = gunzip (gzfile, dir)
 
-  if (nargin != 1 && nargin != 2)
+  if (nargin < 1 || nargin > 2)
     print_usage ();
   endif
 
+  if (isempty (dir))
+    dir = fileparts (gzfile);
+  endif
+
   if (nargout > 0)
-    varargout = cell (1, nargout);
-    [varargout{:}] = unpack (gzfile, dir, mfilename ());
+    files = unpack (gzfile, dir, "gunzip");
   else
-    unpack (gzfile, dir, mfilename ());
+    unpack (gzfile, dir, "gunzip");
   endif
 
 endfunction
 
+
+## Tests for this m-file are located in gzip.m
+## Remove from test statistics
+%!assert (1);
+