Napisao sam slijedeću zakrpu jka-compr.el-u. Ona bzip2 dodaje
auto-compression-modeu.
Napomena: Ovo sam testirao samo na emacsu 20.2, ali ne vidim razloga zašto sličan pristup ne bi radio s drugim verzijama.
Primjenite ju ovako:
emacs-20.2/lisp s izvornim kodom (gdje god ste ga
otpakirali).jka-compr.el.diff (u toj bi datoteci
trebala biti samo ona ;).
patch < jka-compr.el.diff
M-x byte-compile-file jka-compr.el
jka-compr.elc maknite na sigurnije mjesto za slučaj
greške.
--- jka-compr.el Sat Jul 26 17:02:39 1997
+++ jka-compr.el.new Thu Feb 5 17:44:35 1998
@@ -44,7 +44,7 @@
;; The variable, jka-compr-compression-info-list can be used to
;; customize jka-compr to work with other compression programs.
;; The default value of this variable allows jka-compr to work with
-;; Unix compress and gzip.
+;; Unix compress and gzip. David Fetter added bzip2 support :)
;;
;; If you are concerned about the stderr output of gzip and other
;; compression/decompression programs showing up in your buffers, you
@@ -121,7 +121,9 @@
;;; I have this defined so that .Z files are assumed to be in unix
-;;; compress format; and .gz files, in gzip format.
+;;; compress format; and .gz files, in gzip format, and .bz2 files,
+;;; in the snappy new bzip2 format from http://www.muraroa.demon.co.uk.
+;;; Keep up the good work, people!
(defcustom jka-compr-compression-info-list
;;[regexp
;; compr-message compr-prog compr-args
@@ -131,6 +133,10 @@
"compressing" "compress" ("-c")
"uncompressing" "uncompress" ("-c")
nil t]
+ ["\\.bz2\\'"
+ "bzip2ing" "bzip2" ("")
+ "bunzip2ing" "bzip2" ("-d")
+ nil t]
["\\.tgz\\'"
"zipping" "gzip" ("-c" "-q")
"unzipping" "gzip" ("-c" "-q" "-d")
Za ovo hvala Ulriku Dickowu, ukd@kampsax.dk, sistemskom programeru iz Kampsax Technology.
Ako želite automatski koristiti bzip2 kada niste root, samo dodajte ovo
svojoj .emacs datoteci.
;; Automatska (de)kompresija kod učitavanja/snimanja datoteka (gzip(1) i
;; slično)
;; Pokrećemo ju u ugašenom stanju tako da se može dodati podrška za
;; bzip2(1). Kod skupio Ulrik Dickow za ~/.emacs uz Emacs 19.34. Trebalo bi
;; raditi i s mnogim starijim i novijim Emacsima. Ipak, nema jamstva.
;;
(if (fboundp 'auto-compression-mode) ; Emacs 19.30+
(auto-compression-mode 0)
(require 'jka-compr)
(toggle-auto-compression 0))
;; Sad dodajmo bzip2 podršku i ponovo uključimo automatsku kompresiju
(add-to-list 'jka-compr-compression-info-list
["\\.bz2\\(~\\|\\.~[0-9]+~\\)?\\'"
"zipping" "bzip2" ()
"unzipping" "bzip2" ("-d")
nil t])
(toggle-auto-compression 1 t)