diff options
author | Miles Bader <[email protected]> | 2000-10-08 02:58:24 +0000 |
---|---|---|
committer | Miles Bader <[email protected]> | 2000-10-08 02:58:24 +0000 |
commit | 6fee86a3c9c799c856894f9f2f78d5f9256d8799 (patch) | |
tree | 2eb2cfd99e6e88bd9b57f95aee5a399c20657e83 /lisp/jka-compr.el | |
parent | a43709e643cb34622422a35efa477ab7895fd530 (diff) |
(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.el | 58 |
1 files changed, 30 insertions, 28 deletions
diff --git a/lisp/jka-compr.el b/lisp/jka-compr.el index 3938590cab..9adeddfefa 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. |