diff options
Diffstat (limited to 'lisp/vc')
-rw-r--r-- | lisp/vc/vc-annotate.el | 5 | ||||
-rw-r--r-- | lisp/vc/vc-arch.el | 8 | ||||
-rw-r--r-- | lisp/vc/vc-bzr.el | 14 | ||||
-rw-r--r-- | lisp/vc/vc-cvs.el | 4 | ||||
-rw-r--r-- | lisp/vc/vc-dir.el | 9 | ||||
-rw-r--r-- | lisp/vc/vc-git.el | 50 | ||||
-rw-r--r-- | lisp/vc/vc-hg.el | 12 | ||||
-rw-r--r-- | lisp/vc/vc-hooks.el | 7 | ||||
-rw-r--r-- | lisp/vc/vc-mtn.el | 10 | ||||
-rw-r--r-- | lisp/vc/vc-rcs.el | 44 | ||||
-rw-r--r-- | lisp/vc/vc.el | 1 |
11 files changed, 80 insertions, 84 deletions
diff --git a/lisp/vc/vc-annotate.el b/lisp/vc/vc-annotate.el index f4964ef85cc..1b98194e74a 100644 --- a/lisp/vc/vc-annotate.el +++ b/lisp/vc/vc-annotate.el @@ -29,8 +29,7 @@ (require 'vc) ;;; Code: -(eval-when-compile - (require 'cl)) +(eval-when-compile (require 'cl-lib)) (defcustom vc-annotate-display-mode 'fullscale "Which mode to color the output of \\[vc-annotate] with by default." @@ -195,7 +194,7 @@ The current time is used as the offset." (let ((bol (point)) (date (vc-call-backend vc-annotate-backend 'annotate-time)) (inhibit-read-only t)) - (assert (>= (point) bol)) + (cl-assert (>= (point) bol)) (put-text-property bol (point) 'invisible 'vc-annotate-annotation) date)) diff --git a/lisp/vc/vc-arch.el b/lisp/vc/vc-arch.el index afeab878f1e..2e20d97e21d 100644 --- a/lisp/vc/vc-arch.el +++ b/lisp/vc/vc-arch.el @@ -54,7 +54,7 @@ ;;; Code: -(eval-when-compile (require 'vc) (require 'cl)) +(eval-when-compile (require 'vc)) ;;; Properties of the backend @@ -391,9 +391,9 @@ CALLBACK expects (ENTRIES &optional MORE-TO-COME); see (if (string-match (car rule) rev) (setq rev (replace-match (cdr rule) t nil rev)))) (format "Arch%c%s" - (case (vc-state file) - ((up-to-date needs-update) ?-) - (added ?@) + (pcase (vc-state file) + ((or `up-to-date `needs-update) ?-) + (`added ?@) (t ?:)) rev))) diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index b5488eb96a9..ce4d76dc5f2 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -46,7 +46,7 @@ ;;; Code: (eval-when-compile - (require 'cl) + (require 'cl-lib) (require 'vc) ;; for vc-exec-after (require 'vc-dir)) @@ -102,9 +102,9 @@ Invoke the bzr command adding `BZR_PROGRESS_BAR=none' and `LC_MESSAGES=C' to the environment. If BZR-COMMAND is \"status\", prepends `vc-bzr-status-switches' to ARGS." (let ((process-environment - (list* "BZR_PROGRESS_BAR=none" ; Suppress progress output (bzr >=0.9) - "LC_MESSAGES=C" ; Force English output - process-environment))) + `("BZR_PROGRESS_BAR=none" ; Suppress progress output (bzr >=0.9) + "LC_MESSAGES=C" ; Force English output + ,@process-environment))) (apply 'vc-do-command (or buffer "*vc*") okstatus vc-bzr-program file-or-list bzr-command (if (and (string-equal "status" bzr-command) @@ -123,8 +123,8 @@ Use the current Bzr root directory as the ROOT argument to `vc-do-async-command', and specify an output buffer named \"*vc-bzr : ROOT*\". Return this buffer." (let* ((process-environment - (list* "BZR_PROGRESS_BAR=none" "LC_MESSAGES=C" - process-environment)) + `("BZR_PROGRESS_BAR=none" "LC_MESSAGES=C" + ,@process-environment)) (root (vc-bzr-root default-directory)) (buffer (format "*vc-bzr : %s*" (expand-file-name root)))) (apply 'vc-do-async-command buffer root @@ -861,7 +861,7 @@ stream. Standard error output is discarded." (apply #'process-file command nil (list (current-buffer) nil) nil args) (buffer-substring (point-min) (point-max))))) -(defstruct (vc-bzr-extra-fileinfo +(cl-defstruct (vc-bzr-extra-fileinfo (:copier nil) (:constructor vc-bzr-create-extra-fileinfo (extra-name)) (:conc-name vc-bzr-extra-fileinfo->)) diff --git a/lisp/vc/vc-cvs.el b/lisp/vc/vc-cvs.el index 300dc463a3c..2a672623c01 100644 --- a/lisp/vc/vc-cvs.el +++ b/lisp/vc/vc-cvs.el @@ -25,7 +25,7 @@ ;;; Code: -(eval-when-compile (require 'cl) (require 'vc)) +(eval-when-compile (require 'vc)) ;; Clear up the cache to force vc-call to check again and discover ;; new functions when we reload this file. @@ -790,7 +790,7 @@ For an empty string, nil is returned (invalid CVS root)." ((= len 3) ;; :METHOD:PATH or :METHOD:USER@HOSTNAME/PATH (cons (cadr root-list) - (vc-cvs-parse-uhp (caddr root-list)))) + (vc-cvs-parse-uhp (nth 2 root-list)))) (t ;; :METHOD:[USER@]HOST:PATH (cdr root-list))))) diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el index acb1a4d8862..7c840fd071b 100644 --- a/lisp/vc/vc-dir.el +++ b/lisp/vc/vc-dir.el @@ -43,8 +43,7 @@ (require 'ewoc) ;;; Code: -(eval-when-compile - (require 'cl)) +(eval-when-compile (require 'cl-lib)) (defcustom vc-dir-mode-hook nil "Normal hook run by `vc-dir-mode'. @@ -54,7 +53,7 @@ See `run-hooks'." ;; Used to store information for the files displayed in the directory buffer. ;; Each item displayed corresponds to one of these defstructs. -(defstruct (vc-dir-fileinfo +(cl-defstruct (vc-dir-fileinfo (:copier nil) (:type list) ;So we can use `member' on lists of FIs. (:constructor @@ -92,13 +91,13 @@ See `run-hooks'." (let* ;; Look for another buffer name BNAME visiting the same directory. ((buf (save-excursion (unless create-new - (dolist (buffer vc-dir-buffers) + (cl-dolist (buffer vc-dir-buffers) (when (buffer-live-p buffer) (set-buffer buffer) (when (and (derived-mode-p 'vc-dir-mode) (eq vc-dir-backend backend) (string= default-directory dir)) - (return buffer)))))))) + (cl-return buffer)))))))) (or buf ;; Create a new buffer named BNAME. ;; We pass a filename to create-file-buffer because it is what diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 8b48efbfd24..4dbc9eab27f 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -104,7 +104,7 @@ ;; - find-file-hook () NOT NEEDED (eval-when-compile - (require 'cl) + (require 'cl-lib) (require 'vc) (require 'vc-dir) (require 'grep)) @@ -201,7 +201,7 @@ matching the resulting Git log output, and KEYWORDS is a list of (defun vc-git--state-code (code) "Convert from a string to a added/deleted/modified state." - (case (string-to-char code) + (pcase (string-to-char code) (?M 'edited) (?A 'added) (?D 'removed) @@ -261,7 +261,7 @@ matching the resulting Git log output, and KEYWORDS is a list of (propertize def-ml 'help-echo (concat help-echo "\nCurrent branch: " branch))))) -(defstruct (vc-git-extra-fileinfo +(cl-defstruct (vc-git-extra-fileinfo (:copier nil) (:constructor vc-git-create-extra-fileinfo (old-perm new-perm &optional rename-state orig-name)) @@ -275,12 +275,12 @@ matching the resulting Git log output, and KEYWORDS is a list of (if (string-match "[\n\t\"\\]" name) (concat "\"" (mapconcat (lambda (c) - (case c + (pcase c (?\n "\\n") (?\t "\\t") (?\\ "\\\\") (?\" "\\\"") - (t (char-to-string c)))) + (_ (char-to-string c)))) name "") "\"") name)) @@ -289,28 +289,28 @@ matching the resulting Git log output, and KEYWORDS is a list of "Return a string describing the file type based on its permissions." (let* ((old-type (lsh (or old-perm 0) -9)) (new-type (lsh (or new-perm 0) -9)) - (str (case new-type + (str (pcase new-type (?\100 ;; File. - (case old-type + (pcase old-type (?\100 nil) (?\120 " (type change symlink -> file)") (?\160 " (type change subproject -> file)"))) (?\120 ;; Symlink. - (case old-type + (pcase old-type (?\100 " (type change file -> symlink)") (?\160 " (type change subproject -> symlink)") (t " (symlink)"))) (?\160 ;; Subproject. - (case old-type + (pcase old-type (?\100 " (type change file -> subproject)") (?\120 " (type change symlink -> subproject)") (t " (subproject)"))) (?\110 nil) ;; Directory (internal, not a real git state). (?\000 ;; Deleted or unknown. - (case old-type + (pcase old-type (?\120 " (symlink)") (?\160 " (subproject)"))) - (t (format " (unknown type %o)" new-type))))) + (_ (format " (unknown type %o)" new-type))))) (cond (str (propertize str 'face 'font-lock-comment-face)) ((eq new-type ?\110) "/") (t "")))) @@ -378,18 +378,18 @@ or an empty string if none." "Process sentinel for the various dir-status stages." (let (next-stage result) (goto-char (point-min)) - (case stage - (update-index + (pcase stage + (`update-index (setq next-stage (if (vc-git--empty-db-p) 'ls-files-added (if files 'ls-files-up-to-date 'diff-index)))) - (ls-files-added + (`ls-files-added (setq next-stage 'ls-files-unknown) (while (re-search-forward "\\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} 0\t\\([^\0]+\\)\0" nil t) (let ((new-perm (string-to-number (match-string 1) 8)) (name (match-string 2))) (push (list name 'added (vc-git-create-extra-fileinfo 0 new-perm)) result)))) - (ls-files-up-to-date + (`ls-files-up-to-date (setq next-stage 'diff-index) (while (re-search-forward "\\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} 0\t\\([^\0]+\\)\0" nil t) (let ((perm (string-to-number (match-string 1) 8)) @@ -397,18 +397,18 @@ or an empty string if none." (push (list name 'up-to-date (vc-git-create-extra-fileinfo perm perm)) result)))) - (ls-files-unknown + (`ls-files-unknown (when files (setq next-stage 'ls-files-ignored)) (while (re-search-forward "\\([^\0]*?\\)\0" nil t 1) (push (list (match-string 1) 'unregistered (vc-git-create-extra-fileinfo 0 0)) result))) - (ls-files-ignored + (`ls-files-ignored (while (re-search-forward "\\([^\0]*?\\)\0" nil t 1) (push (list (match-string 1) 'ignored (vc-git-create-extra-fileinfo 0 0)) result))) - (diff-index + (`diff-index (setq next-stage 'ls-files-unknown) (while (re-search-forward ":\\([0-7]\\{6\\}\\) \\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\(\\([ADMUT]\\)\0\\([^\0]+\\)\\|\\([CR]\\)[0-9]*\0\\([^\0]+\\)\0\\([^\0]+\\)\\)\0" @@ -447,28 +447,28 @@ or an empty string if none." (defun vc-git-dir-status-goto-stage (stage files update-function) (erase-buffer) - (case stage - (update-index + (pcase stage + (`update-index (if files (vc-git-command (current-buffer) 'async files "add" "--refresh" "--") (vc-git-command (current-buffer) 'async nil "update-index" "--refresh"))) - (ls-files-added + (`ls-files-added (vc-git-command (current-buffer) 'async files "ls-files" "-z" "-c" "-s" "--")) - (ls-files-up-to-date + (`ls-files-up-to-date (vc-git-command (current-buffer) 'async files "ls-files" "-z" "-c" "-s" "--")) - (ls-files-unknown + (`ls-files-unknown (vc-git-command (current-buffer) 'async files "ls-files" "-z" "-o" "--directory" "--no-empty-directory" "--exclude-standard" "--")) - (ls-files-ignored + (`ls-files-ignored (vc-git-command (current-buffer) 'async files "ls-files" "-z" "-o" "-i" "--directory" "--no-empty-directory" "--exclude-standard" "--")) ;; --relative added in Git 1.5.5. - (diff-index + (`diff-index (vc-git-command (current-buffer) 'async files "diff-index" "--relative" "-z" "-M" "HEAD" "--"))) (vc-exec-after diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index e3af8a353ef..6dbf6978372 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el @@ -111,7 +111,7 @@ ;;; Code: (eval-when-compile - (require 'cl) + (require 'cl-lib) (require 'vc) (require 'vc-dir)) @@ -485,7 +485,7 @@ REV is the revision to check out into WORKFILE." (defvar log-view-vc-backend) -(defstruct (vc-hg-extra-fileinfo +(cl-defstruct (vc-hg-extra-fileinfo (:copier nil) (:constructor vc-hg-create-extra-fileinfo (rename-state extra-name)) (:conc-name vc-hg-extra-fileinfo->)) @@ -501,10 +501,10 @@ REV is the revision to check out into WORKFILE." (when extra (insert (propertize (format " (%s %s)" - (case (vc-hg-extra-fileinfo->rename-state extra) - (copied "copied from") - (renamed-from "renamed from") - (renamed-to "renamed to")) + (pcase (vc-hg-extra-fileinfo->rename-state extra) + (`copied "copied from") + (`renamed-from "renamed from") + (`renamed-to "renamed to")) (vc-hg-extra-fileinfo->extra-name extra)) 'face 'font-lock-comment-face))))) diff --git a/lisp/vc/vc-hooks.el b/lisp/vc/vc-hooks.el index a753004d784..54c33769267 100644 --- a/lisp/vc/vc-hooks.el +++ b/lisp/vc/vc-hooks.el @@ -30,8 +30,7 @@ ;;; Code: -(eval-when-compile - (require 'cl)) +(eval-when-compile (require 'cl-lib)) ;; Customization Variables (the rest is in vc.el) @@ -311,7 +310,7 @@ non-nil if FILE exists and its contents were successfully inserted." (let ((filepos 0)) (while (and (< 0 (cadr (insert-file-contents - file nil filepos (incf filepos blocksize)))) + file nil filepos (cl-incf filepos blocksize)))) (progn (beginning-of-line) (let ((pos (re-search-forward limit nil 'move))) (when pos (delete-region (match-beginning 0) @@ -561,7 +560,7 @@ Return non-nil if FILE is unchanged." (if (or (not (eq (cadr err) (indirect-function (vc-find-backend-function backend 'diff)))) - (not (eq (caddr err) 4))) + (not (eq (cl-caddr err) 4))) (signal (car err) (cdr err)) (vc-call-backend backend 'diff (list file))))))) diff --git a/lisp/vc/vc-mtn.el b/lisp/vc/vc-mtn.el index a3d5f09255e..67c0f985ae1 100644 --- a/lisp/vc/vc-mtn.el +++ b/lisp/vc/vc-mtn.el @@ -32,7 +32,7 @@ ;;; Code: -(eval-when-compile (require 'cl) (require 'vc)) +(eval-when-compile (require 'vc)) (defgroup vc-mtn nil "VC Monotone (mtn) backend." @@ -167,10 +167,10 @@ If nil, use the value of `vc-diff-switches'. If t, use no switches." (if (string-match (car rule) branch) (setq branch (replace-match (cdr rule) t nil branch)))) (format "Mtn%c%s" - (case (vc-state file) - ((up-to-date needs-update) ?-) - (added ?@) - (t ?:)) + (pcase (vc-state file) + ((or `up-to-date `needs-update) ?-) + (`added ?@) + (_ ?:)) branch))) (defun vc-mtn-register (files &optional _rev _comment) diff --git a/lisp/vc/vc-rcs.el b/lisp/vc/vc-rcs.el index 4f50e1c8690..ecd7b826437 100644 --- a/lisp/vc/vc-rcs.el +++ b/lisp/vc/vc-rcs.el @@ -38,7 +38,7 @@ ;;; (eval-when-compile - (require 'cl) + (require 'cl-lib) (require 'vc)) (defgroup vc-rcs nil @@ -705,17 +705,17 @@ Optional arg REVISION is a revision to annotate from." (goto-char (point-min)) (forward-line (1- (pop insn))) (setq p (point)) - (case (pop insn) - (k (setq s (buffer-substring-no-properties - p (progn (forward-line (car insn)) - (point)))) - (when prda - (push `(,p . ,(propertize s :vc-rcs-r/d/a prda)) path)) - (delete-region p (point))) - (i (setq s (car insn)) - (when prda - (push `(,p . ,(length s)) path)) - (insert s))))) + (pcase (pop insn) + (`k (setq s (buffer-substring-no-properties + p (progn (forward-line (car insn)) + (point)))) + (when prda + (push `(,p . ,(propertize s :vc-rcs-r/d/a prda)) path)) + (delete-region p (point))) + (`i (setq s (car insn)) + (when prda + (push `(,p . ,(length s)) path)) + (insert s))))) ;; For the initial revision, setting `:vc-rcs-r/d/a' directly is ;; equivalent to pushing an insert instruction (of the entire buffer ;; contents) onto `path' then erasing the buffer, but less wasteful. @@ -737,14 +737,14 @@ Optional arg REVISION is a revision to annotate from." (dolist (insn (cdr (assq :insn meta))) (goto-char (point-min)) (forward-line (1- (pop insn))) - (case (pop insn) - (k (delete-region - (point) (progn (forward-line (car insn)) - (point)))) - (i (insert (propertize - (car insn) - :vc-rcs-r/d/a - (or prda (setq prda (r/d/a)))))))) + (pcase (pop insn) + (`k (delete-region + (point) (progn (forward-line (car insn)) + (point)))) + (`i (insert (propertize + (car insn) + :vc-rcs-r/d/a + (or prda (setq prda (r/d/a)))))))) (prog1 (not (string= (if nbls (caar nbls) revision) pre)) (setq pre (cdr (assq 'next meta))))))))) ;; Lastly, for each line, insert at bol nicely-formatted history info. @@ -1461,7 +1461,7 @@ The `:insn' key is a keyword to distinguish it as a vc-rcs.el extension." start (read (current-buffer)) act (read (current-buffer))) (forward-char 1) - (push (case cmd + (push (pcase cmd (?d ;; `d' means "delete lines". ;; For Emacs spirit, we use `k' for "kill". @@ -1475,7 +1475,7 @@ The `:insn' key is a keyword to distinguish it as a vc-rcs.el extension." `(,(1+ start) i ,(funcall sub (point) (progn (forward-line act) (point))))) - (t (error "Bad command `%c' in `text' for rev `%s'" + (_ (error "Bad command `%c' in `text' for rev `%s'" cmd context))) acc)) (goto-char (1+ e)) diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 651008b4e65..0f3298d2686 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -658,7 +658,6 @@ (declare-function diff-setup-whitespace "diff-mode" ()) (eval-when-compile - (require 'cl) (require 'dired)) (unless (assoc 'vc-parent-buffer minor-mode-alist) |