Mercurial > emacs
comparison lisp/vc-arch.el @ 89978:566253900690
Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-40
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-535
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-536
sync-tree with gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-537
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-538
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-539
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-540
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-541
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-542
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-545
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-546
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-547
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-548
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-549
Use symbol-matching for generic-mode keywords
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-550
Update from CVS
* miles@gnu.org--gnu-2004/gnus--devo--0--patch-2
Add {arch}/=cvs-sync-make-log
* miles@gnu.org--gnu-2004/gnus--rel--5.8--base-0
Import from Gnus CVS branch V5-8
* miles@gnu.org--gnu-2004/gnus--rel--5.8--patch-1
{arch}/=tagging-method: Add CVS and autoconf grot to junk regexp
* miles@gnu.org--gnu-2004/gnus--rel--5.8--patch-2
Use explicit tags for autoconf input files
* miles@gnu.org--gnu-2004/gnus--rel--5.8--patch-3
Remove RCS keywords
* miles@gnu.org--gnu-2004/gnus--rel--5.8--patch-4
Fix copied explicit id-tags
* miles@gnu.org--gnu-2004/gnus--rel--5.8--patch-5
Add {arch}/=cvs-sync-make-log
* miles@gnu.org--gnu-2004/gnus--rel--5.8--patch-6
configure.in: Use ifelse instead of m4_if for arch-tag: comment
* miles@gnu.org--gnu-2004/gnus--rel--5.10--base-0
tag of miles@gnu.org--gnu-2004/gnus--rel--5.8--base-0
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-1
Gnus 5.10, from CVS branch v5-10
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-2
Merge from gnus--rel--5.8
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-3
Use explicit tags for autoconf input files
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-4
sync-tree with gnus--rel--5.8
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-5
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-6
Merge from gnus--rel--5.8
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-7
Remove RCS keywords
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-8
Merge from gnus--rel--5.8
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-9
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-10
Add {arch}/=cvs-sync-make-log
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-11
Merge from gnus--rel--5.8
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-12
Update from CVS: make.bat: Fix line endings around arch-tag.
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-13
- miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-17
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-21
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-22
Update from CVS: lisp/nndb.el (require): Remove tcp and duplicate cl.
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-23
Update from CVS
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-24
lisp/nnimap.el (nnimap-open-connection): Remove extraneous end-paren
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-25
- miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-26
Update from CVS
author | Miles Bader <miles@gnu.org> |
---|---|
date | Wed, 15 Sep 2004 09:00:10 +0000 |
parents | cce1c0ee76ee 7883de80034e |
children | f3ec05478165 |
comparison
equal
deleted
inserted
replaced
89977:549fdd6f6856 | 89978:566253900690 |
---|---|
71 ;; Clear up the cache to force vc-call to check again and discover | 71 ;; Clear up the cache to force vc-call to check again and discover |
72 ;; new functions when we reload this file. | 72 ;; new functions when we reload this file. |
73 (put 'Arch 'vc-functions nil) | 73 (put 'Arch 'vc-functions nil) |
74 | 74 |
75 ;;;###autoload (defun vc-arch-registered (file) | 75 ;;;###autoload (defun vc-arch-registered (file) |
76 ;;;###autoload (let ((dir file)) | 76 ;;;###autoload (if (vc-find-root file "{arch}/=tagging-method") |
77 ;;;###autoload (while (and (stringp dir) | 77 ;;;###autoload (progn |
78 ;;;###autoload (not (equal | 78 ;;;###autoload (load "vc-arch") |
79 ;;;###autoload dir (setq dir (file-name-directory dir)))) | 79 ;;;###autoload (vc-arch-registered file)))) |
80 ;;;###autoload dir) | |
81 ;;;###autoload (setq dir (if (file-directory-p | |
82 ;;;###autoload (expand-file-name "{arch}" dir)) | |
83 ;;;###autoload t (directory-file-name dir)))) | |
84 ;;;###autoload (if (eq dir t) | |
85 ;;;###autoload (progn | |
86 ;;;###autoload (load "vc-arch") | |
87 ;;;###autoload (vc-arch-registered file))))) | |
88 | 80 |
89 (defun vc-arch-add-tagline () | 81 (defun vc-arch-add-tagline () |
90 "Add an `arch-tag' to the end of the current file." | 82 "Add an `arch-tag' to the end of the current file." |
91 (interactive) | 83 (interactive) |
92 (comment-normalize-vars) | 84 (comment-normalize-vars) |
184 'names)))) | 176 'names)))) |
185 | 177 |
186 (defun vc-arch-root (file) | 178 (defun vc-arch-root (file) |
187 "Return the root directory of a Arch project, if any." | 179 "Return the root directory of a Arch project, if any." |
188 (or (vc-file-getprop file 'arch-root) | 180 (or (vc-file-getprop file 'arch-root) |
189 (vc-file-setprop | 181 (vc-file-setprop |
190 file 'arch-root | 182 ;; Check the =tagging-method, in case someone naively manually |
191 (let ((root nil)) | 183 ;; creates a {arch} directory somewhere. |
192 (while (not (or root | 184 file 'arch-root (vc-find-root file "{arch}/=tagging-method")))) |
193 (equal file (setq file (file-name-directory file))) | |
194 (null file))) | |
195 ;; Check the =tagging-method, in case someone naively manually | |
196 ;; creates a {arch} directory somewhere. | |
197 (if (file-exists-p (expand-file-name "{arch}/=tagging-method" file)) | |
198 (setq root file) | |
199 (setq file (directory-file-name file)))) | |
200 root)))) | |
201 | 185 |
202 (defun vc-arch-register (file &optional rev comment) | 186 (defun vc-arch-register (file &optional rev comment) |
203 (if rev (error "Explicit initial revision not supported for Arch")) | 187 (if rev (error "Explicit initial revision not supported for Arch")) |
204 (let ((tagmet (vc-arch-tagging-method file))) | 188 (let ((tagmet (vc-arch-tagging-method file))) |
205 (if (and (memq tagmet '(tagline implicit)) comment-start) | 189 (if (and (memq tagmet '(tagline implicit)) comment-start) |