Function: archive-zip-extract
archive-zip-extract is a byte-compiled function defined in
arc-mode.el.gz.
Signature
(archive-zip-extract ARCHIVE NAME)
Source Code
;; Defined in /usr/src/emacs/lisp/arc-mode.el.gz
(defun archive-zip-extract (archive name)
(cond
((member-ignore-case (car archive-zip-extract) '("pkunzip" "pkzip"))
(archive-*-extract archive name archive-zip-extract))
((equal (car archive-zip-extract) archive-7z-program)
(let ((archive-7z-extract archive-zip-extract))
(archive-7z-extract archive name)))
(t
(archive-extract-by-stdout
archive
;; unzip expands wildcard characters in NAME, so we need to quote
;; wildcard characters in a special way: replace each such
;; character C with a single-character alternative [C]. We
;; cannot use 'shell-quote-argument' here because that doesn't
;; protect wildcard characters from being expanded by unzip
;; itself.
(if (equal (car archive-zip-extract) "unzip")
(replace-regexp-in-string "[[?*]" "[\\&]" name)
name)
archive-zip-extract))))