Mercurial > emacs
changeset 81990:cd7d70b6659e
(vc-delistify): Use mapconcat.
(vc-do-command): Minor simplification.
(vc-expand-dirs): Use push.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Fri, 20 Jul 2007 03:59:03 +0000 |
parents | f9f0d45ce573 |
children | f41d4ecf6cb4 |
files | lisp/ChangeLog lisp/vc.el |
diffstat | 2 files changed, 20 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Fri Jul 20 03:57:14 2007 +0000 +++ b/lisp/ChangeLog Fri Jul 20 03:59:03 2007 +0000 @@ -1,5 +1,9 @@ 2007-07-20 Stefan Monnier <monnier@iro.umontreal.ca> + * vc.el (vc-delistify): Use mapconcat. + (vc-do-command): Minor simplification. + (vc-expand-dirs): Use push. + * vc-mcvs.el (vc-mcvs-create-repo): * vc-cvs.el (vc-cvs-create-repo): Remove.
--- a/lisp/vc.el Fri Jul 20 03:57:14 2007 +0000 +++ b/lisp/vc.el Fri Jul 20 03:59:03 2007 +0000 @@ -998,9 +998,7 @@ (defun vc-delistify (filelist) "Smash a FILELIST into a file list string suitable for info messages." - (cond ((not filelist) ".") - ((= (length filelist) 1) (car filelist)) - (t (concat (car filelist) " " (vc-delistify (cdr filelist)))))) + (if (not filelist) "." (mapconcat 'identity filelist " "))) (defvar w32-quote-process-args) ;;;###autoload @@ -1019,12 +1017,10 @@ ;; FIXME: file-relative-name can return a bogus result because ;; it doesn't look at the actual file-system to see if symlinks ;; come into play. - (let* ((files - (mapcar 'file-relative-name - (cond ((not file-or-list) '()) - ((listp file-or-list) (mapcar 'expand-file-name file-or-list)) - (t (list (expand-file-name file-or-list)))))) - (full-command + (let* ((files + (mapcar (lambda (f) (file-relative-name (expand-file-name f))) + (if (listp file-or-list) file-or-list (list file-or-list)))) + (full-command (concat command " " (vc-delistify flags) " " (vc-delistify files)))) (if vc-command-messages (message "Running %s..." full-command)) @@ -1555,9 +1551,11 @@ (defun vc-expand-dirs (file-or-dir-list) "Expands directories in a file list specification. Only files already under version control are noticed." + ;; FIXME: Kill this function. (let ((flattened '())) (dolist (node file-or-dir-list) - (vc-file-tree-walk node (lambda (f) (if (vc-backend f) (setq flattened (cons f flattened)))))) + (vc-file-tree-walk + node (lambda (f) (if (vc-backend f) (push f flattened))))) (nreverse flattened))) (defun vc-resynch-window (file &optional keep noquery) @@ -3492,6 +3490,7 @@ (defun vc-file-tree-walk (dirname func &rest args) "Walk recursively through DIRNAME. Invoke FUNC f ARGS on each VC-managed file f underneath it." + ;; FIXME: Kill this function. (vc-file-tree-walk-internal (expand-file-name dirname) func args) (message "Traversing directory %s...done" dirname)) @@ -3502,13 +3501,13 @@ (let ((dir (file-name-as-directory file))) (mapcar (lambda (f) (or - (string-equal f ".") - (string-equal f "..") - (member f vc-directory-exclusion-list) - (let ((dirf (expand-file-name f dir))) - (or - (file-symlink-p dirf);; Avoid possible loops - (vc-file-tree-walk-internal dirf func args))))) + (string-equal f ".") + (string-equal f "..") + (member f vc-directory-exclusion-list) + (let ((dirf (expand-file-name f dir))) + (or + (file-symlink-p dirf) ;; Avoid possible loops. + (vc-file-tree-walk-internal dirf func args))))) (directory-files dir))))) (provide 'vc)