emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/arc-mode.el


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/arc-mode.el
Date: Thu, 30 Jun 2005 18:17:01 -0400

Index: emacs/lisp/arc-mode.el
diff -c emacs/lisp/arc-mode.el:1.62 emacs/lisp/arc-mode.el:1.63
*** emacs/lisp/arc-mode.el:1.62 Thu Jun 30 21:52:17 2005
--- emacs/lisp/arc-mode.el      Thu Jun 30 22:17:01 2005
***************
*** 131,137 ****
    (make-temp-name
     (expand-file-name (if (eq system-type 'ms-dos) "ar" "archive.tmp")
                     temporary-file-directory))
!   "*Directory for temporary files made by arc-mode.el"
    :type 'directory
    :group 'archive)
  
--- 131,137 ----
    (make-temp-name
     (expand-file-name (if (eq system-type 'ms-dos) "ar" "archive.tmp")
                     temporary-file-directory))
!   "Directory for temporary files made by arc-mode.el."
    :type 'directory
    :group 'archive)
  
***************
*** 367,373 ****
        (substitute-key-definition 'undo 'archive-undo map global-map))
  
      (define-key map
!       (if (featurep 'xemacs) 'button2 [mouse-2]) 'archive-mouse-extract)
  
      (if (featurep 'xemacs)
          ()                            ; out of luck
--- 367,373 ----
        (substitute-key-definition 'undo 'archive-undo map global-map))
  
      (define-key map
!       (if (featurep 'xemacs) 'button2 [mouse-2]) 'archive-extract)
  
      (if (featurep 'xemacs)
          ()                            ; out of luck
***************
*** 633,640 ****
  
        ;; Remote archives are not written by a hook.
        (if archive-remote nil
!         (make-local-variable 'write-contents-hooks)
!         (add-hook 'write-contents-hooks 'archive-write-file))
  
        (make-local-variable 'require-final-newline)
        (setq require-final-newline nil)
--- 633,639 ----
  
        ;; Remote archives are not written by a hook.
        (if archive-remote nil
!         (add-hook 'write-contents-functions 'archive-write-file nil t))
  
        (make-local-variable 'require-final-newline)
        (setq require-final-newline nil)
***************
*** 747,765 ****
     (apply
      (function concat)
      (mapcar
!      (function
!       (lambda (fil)
!       ;; Using `concat' here copies the text also, so we can add
!       ;; properties without problems.
!       (let ((text (concat (aref fil 0) "\n")))
!         (if (featurep 'xemacs)
!             ()                        ; out of luck
!           (add-text-properties
!            (aref fil 1) (aref fil 2)
!            '(mouse-face highlight
!              help-echo "mouse-2: extract this file into a buffer")
!            text))
!         text)))
       files)))
    (setq archive-file-list-end (point-marker)))
  
--- 746,763 ----
     (apply
      (function concat)
      (mapcar
!      (lambda (fil)
!        ;; Using `concat' here copies the text also, so we can add
!        ;; properties without problems.
!        (let ((text (concat (aref fil 0) "\n")))
!          (if (featurep 'xemacs)
!              ()                         ; out of luck
!            (add-text-properties
!             (aref fil 1) (aref fil 2)
!             '(mouse-face highlight
!               help-echo "mouse-2: extract this file into a buffer")
!             text))
!          text))
       files)))
    (setq archive-file-list-end (point-marker)))
  
***************
*** 894,911 ****
        (kill-local-variable 'buffer-file-coding-system)
        (after-insert-file-set-coding (- (point-max) (point-min))))))
  
! (defun archive-mouse-extract (event)
!   "Extract a file whose name you click on."
!   (interactive "e")
!   (mouse-set-point event)
!   (switch-to-buffer
!    (save-excursion
!      (archive-extract)
!      (current-buffer))))
  
! (defun archive-extract (&optional other-window-p)
    "In archive mode, extract this entry of the archive into its own buffer."
!   (interactive)
    (let* ((view-p (eq other-window-p 'view))
         (descr (archive-get-descr))
           (ename (aref descr 0))
--- 892,903 ----
        (kill-local-variable 'buffer-file-coding-system)
        (after-insert-file-set-coding (- (point-max) (point-min))))))
  
! (define-obsolete-function-alias 'archive-mouse-extract 'archive-extract 
"22.1")
  
! (defun archive-extract (&optional other-window-p event)
    "In archive mode, extract this entry of the archive into its own buffer."
!   (interactive (list nil last-input-event))
!   (if event (mouse-set-point event))
    (let* ((view-p (eq other-window-p 'view))
         (descr (archive-get-descr))
           (ename (aref descr 0))
***************
*** 937,944 ****
            (setq default-directory arcdir)
            (make-local-variable 'archive-superior-buffer)
            (setq archive-superior-buffer archive-buffer)
!           (make-local-variable 'local-write-file-hooks)
!           (add-hook 'local-write-file-hooks 'archive-write-file-member)
            (setq archive-subfile-mode descr)
          (if (and
               (null
--- 929,935 ----
            (setq default-directory arcdir)
            (make-local-variable 'archive-superior-buffer)
            (setq archive-superior-buffer archive-buffer)
!           (add-hook 'write-file-functions 'archive-write-file-member nil t)
            (setq archive-subfile-mode descr)
          (if (and
               (null
***************
*** 972,997 ****
            (setq buffer-saved-size (buffer-size))
            (normal-mode)
            ;; Just in case an archive occurs inside another archive.
!           (if (eq major-mode 'archive-mode)
!               (progn
!                 (setq archive-remote t)
!                 (if read-only-p (setq archive-read-only t))
!                 ;; We will write out the archive ourselves if it is
!                 ;; part of another archive.
!                 (remove-hook 'write-contents-hooks 'archive-write-file t)))
!           (run-hooks 'archive-extract-hooks)
            (if archive-read-only
                (message "Note: altering this archive is not implemented."))))
        (archive-maybe-update t))
        (or (not (buffer-name buffer))
!         (progn
!           (if view-p
!               (view-buffer buffer (and just-created 'kill-buffer))
!             (if (eq other-window-p 'display)
!                 (display-buffer buffer)
!               (if other-window-p
!                   (switch-to-buffer-other-window buffer)
!                 (switch-to-buffer buffer))))))))
  
  (defun archive-*-extract (archive name command)
    (let* ((default-directory (file-name-as-directory archive-tmpdir))
--- 963,984 ----
            (setq buffer-saved-size (buffer-size))
            (normal-mode)
            ;; Just in case an archive occurs inside another archive.
!           (when (derived-mode-p 'archive-mode)
!               (setq archive-remote t)
!               (if read-only-p (setq archive-read-only t))
!               ;; We will write out the archive ourselves if it is
!               ;; part of another archive.
!               (remove-hook 'write-contents-functions 'archive-write-file t))
!             (run-hooks 'archive-extract-hooks)
            (if archive-read-only
                (message "Note: altering this archive is not implemented."))))
        (archive-maybe-update t))
        (or (not (buffer-name buffer))
!           (cond
!            (view-p (view-buffer buffer (and just-created 'kill-buffer)))
!            ((eq other-window-p 'display) (display-buffer buffer))
!            (other-window-p (switch-to-buffer-other-window buffer))
!            (t (switch-to-buffer buffer))))))
  
  (defun archive-*-extract (archive name command)
    (let* ((default-directory (file-name-as-directory archive-tmpdir))
***************
*** 1298,1304 ****
         (append (cdr command) (cons archive files))))
  
  (defun archive-rename-entry (newname)
!   "Change the name associated with this entry in the tar file."
    (interactive "sNew name: ")
    (if archive-read-only (error "Archive is read-only"))
    (if (string= newname "")
--- 1285,1291 ----
         (append (cdr command) (cons archive files))))
  
  (defun archive-rename-entry (newname)
!   "Change the name associated with this entry in the archive file."
    (interactive "sNew name: ")
    (if archive-read-only (error "Archive is read-only"))
    (if (string= newname "")
***************
*** 1307,1313 ****
        (descr (archive-get-descr)))
      (if (fboundp func)
          (progn
!         (funcall func (buffer-file-name)
                   (if enable-multibyte-characters
                       (encode-coding-string newname file-name-coding-system)
                     newname)
--- 1294,1300 ----
        (descr (archive-get-descr)))
      (if (fboundp func)
          (progn
!         (funcall func
                   (if enable-multibyte-characters
                       (encode-coding-string newname file-name-coding-system)
                     newname)
***************
*** 1383,1389 ****
              "\n"))
      (apply 'vector (nreverse files))))
  
! (defun archive-arc-rename-entry (archive newname descr)
    (if (string-match "[:\\\\/]" newname)
        (error "File names in arc files must not contain a directory 
component"))
    (if (> (length newname) 12)
--- 1370,1376 ----
              "\n"))
      (apply 'vector (nreverse files))))
  
! (defun archive-arc-rename-entry (newname descr)
    (if (string-match "[:\\\\/]" newname)
        (error "File names in arc files must not contain a directory 
component"))
    (if (> (length newname) 12)
***************
*** 1417,1423 ****
             (time2   (archive-l-e (+ p 17) 2)) ;and UNIX format in level 2 
header.)
             (hdrlvl  (char-after (+ p 20))) ;header level
             thsize             ;total header size (base + extensions)
!            fnlen efnname fiddle ifnname width p2 creator
             neh        ;beginning of next extension header (level 1 and 2)
             mode modestr uid gid text dir prname
             gname uname modtime moddate)
--- 1404,1410 ----
             (time2   (archive-l-e (+ p 17) 2)) ;and UNIX format in level 2 
header.)
             (hdrlvl  (char-after (+ p 20))) ;header level
             thsize             ;total header size (base + extensions)
!            fnlen efnname fiddle ifnname width p2
             neh        ;beginning of next extension header (level 1 and 2)
             mode modestr uid gid text dir prname
             gname uname modtime moddate)
***************
*** 1430,1442 ****
                          (string-as-multibyte str))))
          (setq p2      (+ p 22 fnlen))) ;
        (if (= hdrlvl 1)
!           (progn              ;specific to level 1 header
!             (setq creator (if (>= (- hsize fnlen) 24) (char-after (+ p2 2)) 
0))
!             (setq neh (+ p2 3)))
          (if (= hdrlvl 2)
!             (progn            ;specific to level 2 header
!               (setq creator (char-after (+ p 23)) )
!               (setq neh (+ p 24)))))
        (if neh         ;if level 1 or 2 we expect extension headers to follow
            (let* ((ehsize (archive-l-e neh 2)) ;size of the extension header
                   (etype (char-after (+ neh 2)))) ;extension type
--- 1417,1425 ----
                          (string-as-multibyte str))))
          (setq p2      (+ p 22 fnlen))) ;
        (if (= hdrlvl 1)
!             (setq neh (+ p2 3))         ;specific to level 1 header
          (if (= hdrlvl 2)
!               (setq neh (+ p 24))))     ;specific to level 2 header
        (if neh         ;if level 1 or 2 we expect extension headers to follow
            (let* ((ehsize (archive-l-e neh 2)) ;size of the extension header
                   (etype (char-after (+ neh 2)))) ;extension type
***************
*** 1552,1558 ****
            p (1+ p)))
      (logand sum 255)))
  
! (defun archive-lzh-rename-entry (archive newname descr)
    (save-restriction
      (save-excursion
        (widen)
--- 1535,1541 ----
            p (1+ p)))
      (logand sum 255)))
  
! (defun archive-lzh-rename-entry (newname descr)
    (save-restriction
      (save-excursion
        (widen)
***************
*** 1606,1612 ****
  (defun archive-lzh-chmod-entry (newmode files)
    (archive-lzh-ogm
     ;; This should work even though newmode will be dynamically accessed.
!    (function (lambda (old) (archive-calc-mode old newmode t)))
     files "a unix-style mode" 8))
  ;; -------------------------------------------------------------------------
  ;; Section: Zip Archives
--- 1589,1595 ----
  (defun archive-lzh-chmod-entry (newmode files)
    (archive-lzh-ogm
     ;; This should work even though newmode will be dynamically accessed.
!    (lambda (old) (archive-calc-mode old newmode t))
     files "a unix-style mode" 8))
  ;; -------------------------------------------------------------------------
  ;; Section: Zip Archives
***************
*** 1621,1627 ****
        visual)
      (while (string= "PK\001\002" (buffer-substring p (+ p 4)))
        (let* ((creator (char-after (+ p 5)))
!            (method  (archive-l-e (+ p 10) 2))
               (modtime (archive-l-e (+ p 12) 2))
               (moddate (archive-l-e (+ p 14) 2))
               (ucsize  (archive-l-e (+ p 24) 4))
--- 1604,1610 ----
        visual)
      (while (string= "PK\001\002" (buffer-substring p (+ p 4)))
        (let* ((creator (char-after (+ p 5)))
!            ;; (method  (archive-l-e (+ p 10) 2))
               (modtime (archive-l-e (+ p 12) 2))
               (moddate (archive-l-e (+ p 14) 2))
               (ucsize  (archive-l-e (+ p 24) 4))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]