summaryrefslogtreecommitdiff
path: root/lisp/jka-compr.el
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2000-10-08 02:58:24 +0000
committerMiles Bader <miles@gnu.org>2000-10-08 02:58:24 +0000
commit6fee86a3c9c799c856894f9f2f78d5f9256d8799 (patch)
tree2eb2cfd99e6e88bd9b57f95aee5a399c20657e83 /lisp/jka-compr.el
parenta43709e643cb34622422a35efa477ab7895fd530 (diff)
downloademacs-6fee86a3c9c799c856894f9f2f78d5f9256d8799.tar.gz
(auto-compression-mode): Move to the end of the file, because
`define-minor-mode' actually calls the mode-function if the associated variable is non-nil, which requires that all needed functions be already defined. (with-auto-compression-mode): Add autoload cookie.
Diffstat (limited to 'lisp/jka-compr.el')
-rw-r--r--lisp/jka-compr.el58
1 files changed, 30 insertions, 28 deletions
diff --git a/lisp/jka-compr.el b/lisp/jka-compr.el
index 3938590cabc..9adeddfefa7 100644
--- a/lisp/jka-compr.el
+++ b/lisp/jka-compr.el
@@ -755,34 +755,6 @@ It is not recommended to set this variable permanently to anything but nil.")
(inhibit-file-name-operation operation))
(apply operation args)))
-;;;###autoload
-(define-minor-mode auto-compression-mode
- "Toggle automatic file compression and uncompression.
-With prefix argument ARG, turn auto compression on if positive, else off.
-Returns the new status of auto compression (non-nil means on)."
- nil nil nil :global t :group 'jka-compr
- (let* ((installed (jka-compr-installed-p))
- (flag auto-compression-mode))
- (cond
- ((and flag installed) t) ; already installed
- ((and (not flag) (not installed)) nil) ; already not installed
- (flag (jka-compr-install))
- (t (jka-compr-uninstall)))))
-
-
-(defmacro with-auto-compression-mode (&rest body)
- "Evalutes BODY with automatic file compression and uncompression enabled."
- (let ((already-installed (make-symbol "already-installed")))
- `(let ((,already-installed (jka-compr-installed-p)))
- (unwind-protect
- (progn
- (unless ,already-installed
- (jka-compr-install))
- ,@body)
- (unless ,already-installed
- (jka-compr-uninstall))))))
-(put 'with-auto-compression-mode 'lisp-indent-function 0)
-
(defun jka-compr-build-file-regexp ()
(mapconcat
@@ -901,6 +873,36 @@ The return value is the entry in `file-name-handler-alist' for jka-compr."
installed))
+;;;###autoload
+(define-minor-mode auto-compression-mode
+ "Toggle automatic file compression and uncompression.
+With prefix argument ARG, turn auto compression on if positive, else off.
+Returns the new status of auto compression (non-nil means on)."
+ nil nil nil :global t :group 'jka-compr
+ (let* ((installed (jka-compr-installed-p))
+ (flag auto-compression-mode))
+ (cond
+ ((and flag installed) t) ; already installed
+ ((and (not flag) (not installed)) nil) ; already not installed
+ (flag (jka-compr-install))
+ (t (jka-compr-uninstall)))))
+
+
+;;;###autoload
+(defmacro with-auto-compression-mode (&rest body)
+ "Evalutes BODY with automatic file compression and uncompression enabled."
+ (let ((already-installed (make-symbol "already-installed")))
+ `(let ((,already-installed (jka-compr-installed-p)))
+ (unwind-protect
+ (progn
+ (unless ,already-installed
+ (jka-compr-install))
+ ,@body)
+ (unless ,already-installed
+ (jka-compr-uninstall))))))
+(put 'with-auto-compression-mode 'lisp-indent-function 0)
+
+
;;; Add the file I/O hook if it does not already exist.
;;; Make sure that jka-compr-file-name-handler-entry is eq to the
;;; entry for jka-compr in file-name-handler-alist.