--- Begin Message ---
Subject: |
archive-mode: recognize ZIP files with non-standard "PK00" header |
Date: |
Mon, 06 Jul 2009 23:28:37 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) |
Some ZIP files have the string "PK00" before the first PK^C^D header.
Apparently this is added by certain archivers when writing to removable
media.
archive-find-type does not currently recognize such files. The rest of
archive-mode handles them correctly, so I believe they can be supported
with a trivial change: something like
diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el
index cc59d6e..174d205 100644
--- a/lisp/arc-mode.el
+++ b/lisp/arc-mode.el
@@ -716,7 +716,7 @@ archive.
;; The funny [] here make it unlikely that the .elc file will be treated
;; as an archive by other software.
(let (case-fold-search)
- (cond ((looking-at "[P]K\003\004") 'zip)
+ (cond ((looking-at "\\(PK00\\)?[P]K\003\004") 'zip)
((looking-at "..-l[hz][0-9ds]-") 'lzh)
((looking-at "....................[\334]\247\304\375") 'zoo)
((and (looking-at "\C-z") ; signature too simple, IMHO
--- End Message ---
--- Begin Message ---
Subject: |
Re: archive-mode: recognize ZIP files with non-standard "PK00" header |
Date: |
Sun, 12 Jul 2009 14:56:27 -0400 |
> Some ZIP files have the string "PK00" before the first PK^C^D header.
> Apparently this is added by certain archivers when writing to removable
> media.
Thanks. I've checked in your patch into CVS trunk.
--- End Message ---