From: Ulrich Mueller Date: Sat, 25 Sep 2010 21:42:48 +0000 (-0700) Subject: Add more xz compression support. X-Git-Tag: emacs-pretest-24.0.90~104^2~275^2~438^2~47^2~42^2~19 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4c96435152dd2b343057f80f995910ba806774e8;p=emacs.git Add more xz compression support. * doc/man/etags.1: xz compression is now supported. * doc/misc/woman.texi (Interface Options): xz compression is now supported. * lib-src/etags.c (compressors, print_language_names): Support xz compression. * lisp/eshell/em-ls.el (eshell-ls-archive-regexp): * lisp/eshell/esh-util.el (eshell-tar-regexp): * lisp/ibuffer.el (ibuffer-compressed-file-name-regexp): * lisp/info.el (Info-suffix-list): * lisp/international/mule.el (auto-coding-alist): * lisp/woman.el (woman-file-regexp, woman-file-compression-regexp): * lisp/progmodes/etags.el (tags-compression-info-list): Support xz compression. --- diff --git a/doc/man/ChangeLog b/doc/man/ChangeLog index 47f059e7d3c..4688c27f9b5 100644 --- a/doc/man/ChangeLog +++ b/doc/man/ChangeLog @@ -1,3 +1,7 @@ +2010-09-25 Ulrich Mueller + + * etags.1: xz compression is now supported. + 2010-08-26 Sven Joachim * emacs.1: Mention "maximized" value for the "fullscreen" X resource. diff --git a/doc/man/etags.1 b/doc/man/etags.1 index 7b515807782..cddf7295595 100644 --- a/doc/man/etags.1 +++ b/doc/man/etags.1 @@ -62,7 +62,7 @@ Files specified with absolute file names will be recorded with absolute file names. Files generated from a source file\-\-like a C file generated from a source Cweb file\-\-will be recorded with the name of the source file. -Compressed files are supported using gzip and bzip2. +Compressed files are supported using gzip, bzip2, and xz. The programs recognize the language used in an input file based on its file name and contents. The \fB\-\-language\fP switch can be used to force parsing of the file names following the switch according to the given diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index 215e120078d..20dc22fc427 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@ -1,3 +1,7 @@ +2010-09-25 Ulrich Mueller + + * woman.texi (Interface Options): xz compression is now supported. + 2010-09-24 Glenn Morris * url.texi (Disk Caching): Tweak previous change. diff --git a/doc/misc/woman.texi b/doc/misc/woman.texi index ba772c4b4a1..788c10b87dd 100644 --- a/doc/misc/woman.texi +++ b/doc/misc/woman.texi @@ -1121,8 +1121,8 @@ A regular match expression used to match compressed man file extensions for which decompressors are available and handled by auto-compression mode. It should begin with @code{\\.} and end with @code{\\'} and @emph{must not} be optional. The default value is -@code{"\\.\\(g?z\\|bz2\\)\\'"}, which matches the @code{gzip} and -@code{bzip2} compression extensions. +@code{"\\.\\(g?z\\|bz2\\|xz\\)\\'"}, which matches the @code{gzip}, +@code{bzip2}, and @code{xz} compression extensions. @emph{Do not change this unless you are sure you know what you are doing!} diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index 4f3f386310a..5765bea74ae 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,3 +1,7 @@ +2010-09-25 Ulrich Mueller + + * etags.c (compressors, print_language_names): Support xz compression. + 2010-08-11 Jan Djärv * fakemail.c: Include stdlib.h for getenv. Remove declaration of diff --git a/lib-src/etags.c b/lib-src/etags.c index 42e4017ab50..abc8b06dd8e 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -561,6 +561,7 @@ static compressor compressors[] = { "gz", "gzip -d -c"}, { "GZ", "gzip -d -c"}, { "bz2", "bzip2 -d -c" }, + { "xz", "xz -d -c" }, { NULL } }; @@ -874,7 +875,7 @@ followed by the name of an interpreter. If no such sequence is found,\n\ Fortran is tried first; if no tags are found, C is tried next.\n\ When parsing any C file, a \"class\" or \"template\" keyword\n\ switches to C++."); - puts ("Compressed files are supported using gzip and bzip2.\n\ + puts ("Compressed files are supported using gzip, bzip2, and xz.\n\ \n\ For detailed help on a given language use, for example,\n\ etags --help --lang=ada."); diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 8adb6b03de6..7d1fcbc778d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,14 @@ +2010-09-25 Ulrich Mueller + + * eshell/em-ls.el (eshell-ls-archive-regexp): + * eshell/esh-util.el (eshell-tar-regexp): + * ibuffer.el (ibuffer-compressed-file-name-regexp): + * info.el (Info-suffix-list): + * international/mule.el (auto-coding-alist): + * woman.el (woman-file-regexp, woman-file-compression-regexp): + * progmodes/etags.el (tags-compression-info-list): + Support xz compression. + 2010-09-25 Chong Yidong * files.el (get-free-disk-space): Don't assume the "df" output diff --git a/lisp/eshell/em-ls.el b/lisp/eshell/em-ls.el index 860ad5c77d8..1bb7bd6f77a 100644 --- a/lisp/eshell/em-ls.el +++ b/lisp/eshell/em-ls.el @@ -162,10 +162,11 @@ faster and conserves more memory." (defcustom eshell-ls-archive-regexp (concat "\\.\\(t\\(a[rz]\\|gz\\)\\|arj\\|lzh\\|" - "zip\\|[zZ]\\|gz\\|bz2\\|deb\\|rpm\\)\\'") + "zip\\|[zZ]\\|gz\\|bz2\\|xz\\|deb\\|rpm\\)\\'") "*A regular expression that matches names of file archives. This typically includes both traditional archives and compressed files." + :version "24.1" ; added xz :type 'regexp :group 'eshell-ls) diff --git a/lisp/eshell/esh-util.el b/lisp/eshell/esh-util.el index 1a4c5e1021b..c86fa041f93 100644 --- a/lisp/eshell/esh-util.el +++ b/lisp/eshell/esh-util.el @@ -71,8 +71,9 @@ Setting this to nil is offered as an aid to debugging only." :group 'eshell-util) (defcustom eshell-tar-regexp - "\\.t\\(ar\\(\\.\\(gz\\|bz2\\|Z\\)\\)?\\|gz\\|a[zZ]\\|z2\\)\\'" + "\\.t\\(ar\\(\\.\\(gz\\|bz2\\|xz\\|Z\\)\\)?\\|gz\\|a[zZ]\\|z2\\)\\'" "*Regular expression used to match tar file names." + :version "24.1" ; added xz :type 'regexp :group 'eshell-util) diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el index c2492818b45..39a0bf0e859 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el @@ -332,8 +332,9 @@ directory, like `default-directory'." :group 'ibuffer) (defcustom ibuffer-compressed-file-name-regexp - "\\.\\(arj\\|bgz\\|bz2\\|gz\\|lzh\\|taz\\|tgz\\|zip\\|z\\)$" + "\\.\\(arj\\|bgz\\|bz2\\|gz\\|lzh\\|taz\\|tgz\\|xz\\|zip\\|z\\)$" "Regexp to match compressed file names." + :version "24.1" ; added xz :type 'regexp :group 'ibuffer) diff --git a/lisp/info.el b/lisp/info.el index 4fa9503b14e..9b0e87b3c25 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -402,24 +402,28 @@ or `Info-virtual-nodes'." (".info.gz". "gunzip") (".info.z". "gunzip") (".info.bz2" . ("bzip2" "-dc")) + (".info.xz". "unxz") (".info". nil) ("-info.Z". "uncompress") ("-info.Y". "unyabba") ("-info.gz". "gunzip") ("-info.bz2" . ("bzip2" "-dc")) ("-info.z". "gunzip") + ("-info.xz". "unxz") ("-info". nil) ("/index.Z". "uncompress") ("/index.Y". "unyabba") ("/index.gz". "gunzip") ("/index.z". "gunzip") ("/index.bz2". ("bzip2" "-dc")) + ("/index.xz". "unxz") ("/index". nil) (".Z". "uncompress") (".Y". "unyabba") (".gz". "gunzip") (".z". "gunzip") (".bz2" . ("bzip2" "-dc")) + (".xz". "unxz") ("". nil))) "List of file name suffixes and associated decoding commands. Each entry should be (SUFFIX . STRING); the file is given to diff --git a/lisp/international/mule.el b/lisp/international/mule.el index 9f1833924b3..a5775b59b28 100644 --- a/lisp/international/mule.el +++ b/lisp/international/mule.el @@ -1679,7 +1679,7 @@ ARC\\|ZIP\\|LZH\\|LHA\\|ZOO\\|[JEW]AR\\|XPI\\|RAR\\|7Z\\)\\'" . no-conversion-multibyte) ("\\.\\(exe\\|EXE\\)\\'" . no-conversion) ("\\.\\(sx[dmicw]\\|odt\\|tar\\|tgz\\)\\'" . no-conversion) - ("\\.\\(gz\\|Z\\|bz\\|bz2\\|gpg\\)\\'" . no-conversion) + ("\\.\\(gz\\|Z\\|bz\\|bz2\\|xz\\|gpg\\)\\'" . no-conversion) ("\\.\\(jpe?g\\|png\\|gif\\|tiff?\\|p[bpgn]m\\)\\'" . no-conversion) ("\\.pdf\\'" . no-conversion) ("/#[^/]+#\\'" . emacs-mule))) @@ -1690,6 +1690,7 @@ A file whose name matches REGEXP is decoded by CODING-SYSTEM on reading. The settings in this alist take priority over `coding:' tags in the file (see the function `set-auto-coding') and the contents of `file-coding-system-alist'." + :version "24.1" ; added xz :group 'files :group 'mule :type '(repeat (cons (regexp :tag "File name regexp") diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el index c72e705bcf9..042cc8c33f6 100644 --- a/lisp/progmodes/etags.el +++ b/lisp/progmodes/etags.el @@ -68,12 +68,14 @@ Use the `etags' program to make a tags table file." :type '(repeat file)) ;;;###autoload -(defcustom tags-compression-info-list (purecopy '("" ".Z" ".bz2" ".gz" ".tgz")) +(defcustom tags-compression-info-list + (purecopy '("" ".Z" ".bz2" ".gz" ".xz" ".tgz")) "*List of extensions tried by etags when jka-compr is used. An empty string means search the non-compressed file. These extensions will be tried only if jka-compr was activated \(i.e. via customize of `auto-compression-mode' or by calling the function `auto-compression-mode')." + :version "24.1" ; added xz :type '(repeat string) :group 'etags) diff --git a/lisp/woman.el b/lisp/woman.el index cc14091c2e7..358cb8fee61 100644 --- a/lisp/woman.el +++ b/lisp/woman.el @@ -810,7 +810,7 @@ without interactive confirmation, if it exists as a topic." (defvar woman-file-regexp nil "Regexp used to select (possibly compressed) man source files, e.g. -\"\\.\\([0-9lmnt]\\w*\\)\\(\\.\\(g?z\\|bz2\\)\\)?\\'\". +\"\\.\\([0-9lmnt]\\w*\\)\\(\\.\\(g?z\\|bz2\\|xz\\)\\)?\\'\". Built automatically from the customizable user options `woman-uncompressed-file-regexp' and `woman-file-compression-regexp'.") @@ -846,16 +846,17 @@ MUST NOT end with any kind of string terminator such as $ or \\'." :group 'woman-interface) (defcustom woman-file-compression-regexp - "\\.\\(g?z\\|bz2\\)\\'" + "\\.\\(g?z\\|bz2\\|xz\\)\\'" "Do not change this unless you are sure you know what you are doing! Regexp used to match compressed man file extensions for which decompressors are available and handled by auto-compression mode, -e.g. \"\\\\.\\\\(g?z\\\\|bz2\\\\)\\\\'\" for `gzip' or `bzip2'. +e.g. \"\\\\.\\\\(g?z\\\\|bz2\\\\|xz\\\\)\\\\'\" for `gzip', `bzip2', or `xz'. Should begin with \\. and end with \\' and MUST NOT be optional." ;; Should be compatible with car of ;; `jka-compr-file-name-handler-entry', but that is unduly ;; complicated, includes an inappropriate extension (.tgz) and is ;; not loaded by default! + :version "24.1" ; added xz :type 'regexp :set 'set-woman-file-regexp :group 'woman-interface)