Mercurial > hg > xemacs-beta
comparison lisp/pcl-cvs/pcl-cvs.el @ 76:c0c698873ce1 r20-0b33
Import from CVS: tag r20-0b33
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:05:10 +0200 |
parents | 131b0175ea99 |
children | 8619ce7e4c50 |
comparison
equal
deleted
inserted
replaced
75:a4e0195b387b | 76:c0c698873ce1 |
---|---|
1 ;;; | 1 ;;; |
2 ;;;#ident "@(#)OrigId: pcl-cvs.el,v 1.93 1993/05/31 22:44:00 ceder Exp " | 2 ;;;#ident "@(#)OrigId: pcl-cvs.el,v 1.93 1993/05/31 22:44:00 ceder Exp " |
3 ;;; | 3 ;;; |
4 ;;;#ident "@(#)cvs/contrib/pcl-cvs:$Name: r20-0b30 $:$Id: pcl-cvs.el,v 1.1.1.1 1996/12/18 22:42:58 steve Exp $" | 4 ;;;#ident "@(#)cvs/contrib/pcl-cvs:$Name: r20-0b33 $:$Id: pcl-cvs.el,v 1.2 1996/12/28 21:03:03 steve Exp $" |
5 ;;; | 5 ;;; |
6 ;;; pcl-cvs.el -- A Front-end to CVS 1.3 or later. | 6 ;;; pcl-cvs.el -- A Front-end to CVS 1.3 or later. |
7 ;;; Release 1.05-CVS-$Name: r20-0b30 $. | 7 ;;; Release 1.05-CVS-$Name: r20-0b33 $. |
8 ;;; Copyright (C) 1991, 1992, 1993 Per Cederqvist | 8 ;;; Copyright (C) 1991, 1992, 1993 Per Cederqvist |
9 | 9 |
10 ;;; This program is free software; you can redistribute it and/or modify | 10 ;;; This program is free software; you can redistribute it and/or modify |
11 ;;; it under the terms of the GNU General Public License as published by | 11 ;;; it under the terms of the GNU General Public License as published by |
12 ;;; the Free Software Foundation; either version 2 of the License, or | 12 ;;; the Free Software Foundation; either version 2 of the License, or |
17 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 17 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
18 ;;; GNU General Public License for more details. | 18 ;;; GNU General Public License for more details. |
19 ;;; | 19 ;;; |
20 ;;; You should have received a copy of the GNU General Public License | 20 ;;; You should have received a copy of the GNU General Public License |
21 ;;; along with this program; if not, write to the Free Software | 21 ;;; along with this program; if not, write to the Free Software |
22 ;;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 22 ;;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA |
23 ;;; 02111-1307, USA. | |
23 | 24 |
24 ;;; See below for installation instructions. | 25 ;;; See below for installation instructions. |
25 | 26 |
26 ;;; There is an TeXinfo file that describes this package. You should read it | 27 ;;; There is an TeXinfo file that describes this package. You should read it |
27 ;;; to get the most from this package. | 28 ;;; to get the most from this package. |
31 | 32 |
32 ;;; Don't try to use this with CVS 1.2 or earlier. It won't work. Get CVS 1.7 | 33 ;;; Don't try to use this with CVS 1.2 or earlier. It won't work. Get CVS 1.7 |
33 ;;; or newer. Use the version of RCS best suited for the version of CVS you're | 34 ;;; or newer. Use the version of RCS best suited for the version of CVS you're |
34 ;;; using. | 35 ;;; using. |
35 | 36 |
36 ; (require 'cookie) ; from ELIB-1.0 | 37 (require 'cookie) ; from ELIB-1.0 |
37 (load "cookie.el") | |
38 (require 'add-log) ; for all the ChangeLog goodies | 38 (require 'add-log) ; for all the ChangeLog goodies |
39 | |
40 (provide 'pcl-cvs) | |
41 | 39 |
42 ;;; ------------------------------------------------------- | 40 ;;; ------------------------------------------------------- |
43 ;;; START OF THINGS TO CHECK WHEN INSTALLING | 41 ;;; START OF THINGS TO CHECK WHEN INSTALLING |
44 | 42 |
45 ;; also use $GNU here, since may folks might install CVS as a GNU package | 43 ;; also use $GNU here, since may folks might install CVS as a GNU package |
46 ;; | 44 ;; |
47 (defvar local-path (cond | 45 (defun cvs-find-program (program) |
48 ((getenv "LOCAL") | 46 (let ((path (list (getenv "LOCAL") |
49 (getenv "LOCAL")) | 47 (getenv "GNU") |
50 ((getenv "GNU") | 48 "/usr/local/bin" |
51 (getenv "GNU")) | 49 "/usr/bin" |
52 (t | 50 "/bin"))) |
53 "/usr/local")) | 51 (while path |
54 "*Path prefix for most locally installed things.") | 52 (if (stringp (car path)) |
55 | 53 (let ((abs-program (expand-file-name program (car path)))) |
56 ;; this isn't likely to be right all the time.... | 54 (if (file-executable-p abs-program) |
57 ;; | 55 (setq path nil |
58 (defvar local-gnu-path (cond | 56 program abs-program)))) |
59 ((getenv "GNU") | 57 (setq path (cdr path))) |
60 (getenv "GNU")) | 58 program)) |
61 (t | 59 |
62 "/usr/local")) ; or "/usr/gnu"? | 60 (defvar cvs-program (cvs-find-program "cvs") |
63 "*Path prefix for locally installed GNU software.") | |
64 | |
65 (defvar cvs-program (concat local-path "/bin/cvs") | |
66 "*Full path to the cvs executable.") | 61 "*Full path to the cvs executable.") |
67 | 62 |
68 ;; SunOS-4.1.1_U1 has "diff.c 1.12 88/08/04 SMI; from UCB 4.6 86/04/03" | 63 ;; SunOS-4.1.1_U1 has "diff.c 1.12 88/08/04 SMI; from UCB 4.6 86/04/03" |
69 ;; | 64 ;; |
70 (defvar cvs-diff-program (concat local-gnu-path "/bin/diff") | 65 (defvar cvs-diff-program (cvs-find-program "diff") |
71 "*Full path to the best diff program you've got. | 66 "*Full path to the best diff program you've got. |
72 NOTE: there are some nasty bugs in the context diff variants of some vendor | 67 NOTE: there are some nasty bugs in the context diff variants of some vendor |
73 versions, such as the one in SunOS-4.1.1_U1") | 68 versions, such as the one in SunOS-4.1.1_U1") |
74 | 69 |
75 (defvar cvs-rmdir-program "/bin/rmdir" | 70 (defvar cvs-rmdir-program "/bin/rmdir" |
129 ;; delete-exited-processes is t. | 124 ;; delete-exited-processes is t. |
130 | 125 |
131 ;;; END OF THINGS TO CHECK WHEN INSTALLING | 126 ;;; END OF THINGS TO CHECK WHEN INSTALLING |
132 ;;; -------------------------------------------------------- | 127 ;;; -------------------------------------------------------- |
133 | 128 |
134 (defconst pcl-cvs-version "1.05-CVS-$Name: r20-0b30 $" | 129 (defconst pcl-cvs-version "1.05-CVS-$Name: r20-0b33 $" |
135 "A string denoting the current release version of pcl-cvs.") | 130 "A string denoting the current release version of pcl-cvs.") |
136 | 131 |
137 ;; You are NOT allowed to disable this message by default. However, you | 132 ;; You are NOT allowed to disable this message by default. However, you |
138 ;; are encouraged to inform your users that by adding | 133 ;; are encouraged to inform your users that by adding |
139 ;; (setq cvs-inhibit-copyright-message t) | 134 ;; (setq cvs-inhibit-copyright-message t) |
142 (defvar cvs-inhibit-copyright-message nil | 137 (defvar cvs-inhibit-copyright-message nil |
143 "*Non-nil means don't display a Copyright message in the ``*cvs*'' buffer.") | 138 "*Non-nil means don't display a Copyright message in the ``*cvs*'' buffer.") |
144 | 139 |
145 (defconst cvs-startup-message | 140 (defconst cvs-startup-message |
146 (if cvs-inhibit-copyright-message | 141 (if cvs-inhibit-copyright-message |
147 "PCL-CVS release 1.05-CVS-$Name: r20-0b30 $" | 142 "PCL-CVS release 1.05-CVS-$Name: r20-0b33 $" |
148 "PCL-CVS release 1.05 from CVS release $Name: r20-0b30 $. | 143 "PCL-CVS release 1.05 from CVS release $Name: r20-0b33 $. |
149 Copyright (C) 1992, 1993 Per Cederqvist | 144 Copyright (C) 1992, 1993 Per Cederqvist |
150 Pcl-cvs comes with absolutely no warranty; for details consult the manual. | 145 Pcl-cvs comes with absolutely no warranty; for details consult the manual. |
151 This is free software, and you are welcome to redistribute it under certain | 146 This is free software, and you are welcome to redistribute it under certain |
152 conditions; again, consult the TeXinfo manual for details.") | 147 conditions; again, consult the TeXinfo manual for details.") |
153 "*Startup message for CVS.") | 148 "*Startup message for CVS.") |
727 \\[cvs-mode-tag] Run ``cvs tag''. \\[cvs-mode-rtag] Run ``cvs rtag''. | 722 \\[cvs-mode-tag] Run ``cvs tag''. \\[cvs-mode-rtag] Run ``cvs rtag''. |
728 \\[cvs-mode-changelog-commit] Like \\[cvs-mode-commit], but get default log text from ChangeLog. | 723 \\[cvs-mode-changelog-commit] Like \\[cvs-mode-commit], but get default log text from ChangeLog. |
729 \\[cvs-mode-undo-local-changes] Revert the last checked in version - discard your changes to the file. | 724 \\[cvs-mode-undo-local-changes] Revert the last checked in version - discard your changes to the file. |
730 | 725 |
731 Entry to this mode runs cvs-mode-hook. | 726 Entry to this mode runs cvs-mode-hook. |
732 This description is updated for release 1.05-CVS-$Name: r20-0b30 $ of pcl-cvs. | 727 This description is updated for release 1.05-CVS-$Name: r20-0b33 $ of pcl-cvs. |
733 | 728 |
734 All bindings: | 729 All bindings: |
735 \\{cvs-mode-map}" | 730 \\{cvs-mode-map}" |
736 | 731 |
737 (interactive) | 732 (interactive) |
1016 (insert "Optional args: \"" indicator "\".\n")) | 1011 (insert "Optional args: \"" indicator "\".\n")) |
1017 (insert "\nEmacs-version: " (emacs-version) "\n") | 1012 (insert "\nEmacs-version: " (emacs-version) "\n") |
1018 (insert "Pcl-cvs Version: " | 1013 (insert "Pcl-cvs Version: " |
1019 "@(#)OrigId: pcl-cvs.el,v 1.93 1993/05/31 22:44:00 ceder Exp\n") | 1014 "@(#)OrigId: pcl-cvs.el,v 1.93 1993/05/31 22:44:00 ceder Exp\n") |
1020 (insert "CVS Version: " | 1015 (insert "CVS Version: " |
1021 "@(#)cvs/contrib/pcl-cvs:$Name: r20-0b30 $:$Id: pcl-cvs.el,v 1.1.1.1 1996/12/18 22:42:58 steve Exp $\n\n") | 1016 "@(#)lisp/pcl-cvs:$Name: r20-0b33 $:$Id: pcl-cvs.el,v 1.2 1996/12/28 21:03:03 steve Exp $\n\n") |
1022 (insert (format "--- Contents of stdout buffer (%d chars) ---\n" | 1017 (insert (format "--- Contents of stdout buffer (%d chars) ---\n" |
1023 (length stdout))) | 1018 (length stdout))) |
1024 (insert stdout) | 1019 (insert stdout) |
1025 (insert "--- End of stdout buffer ---\n") | 1020 (insert "--- End of stdout buffer ---\n") |
1026 (insert (format "--- Contents of stderr buffer (%d chars) ---\n" | 1021 (insert (format "--- Contents of stderr buffer (%d chars) ---\n" |
1227 ;; Cvs waits for a lock. Ignore. | 1222 ;; Cvs waits for a lock. Ignore. |
1228 | 1223 |
1229 ((looking-at | 1224 ((looking-at |
1230 "^cvs \\(update\\|server\\): \\[..:..:..\\] waiting for .*lock in ") | 1225 "^cvs \\(update\\|server\\): \\[..:..:..\\] waiting for .*lock in ") |
1231 (forward-line 1)) | 1226 (forward-line 1)) |
1227 ((looking-at | |
1228 "^cvs \\(update\\|server\\): \\[..:..:..\\] obtained lock in ") | |
1229 (forward-line 1)) | |
1232 | 1230 |
1233 ;; File removed in repository, but edited by you. | 1231 ;; File removed in repository, but edited by you. |
1234 | 1232 |
1235 ((looking-at | 1233 ((looking-at |
1236 "^cvs \\(update\\|server\\): conflict: \\(.*\\) is modified but no longer in the repository$") | 1234 "^cvs \\(update\\|server\\): conflict: \\(.*\\) is modified but no longer in the repository$") |
1348 ;; Merging differences between 1.1.1.1 and 1.1.1.2 into logout.sh | 1346 ;; Merging differences between 1.1.1.1 and 1.1.1.2 into logout.sh |
1349 ;; rcsmerge warning: overlaps during merge | 1347 ;; rcsmerge warning: overlaps during merge |
1350 | 1348 |
1351 ((looking-at | 1349 ((looking-at |
1352 ;; Allow both RCS 5.5 and 5.6. (5.6 prints "rcs" and " warning"). | 1350 ;; Allow both RCS 5.5 and 5.6. (5.6 prints "rcs" and " warning"). |
1353 "^\\(rcs\\)?merge[:]*\\( warning\\)?: \\((overlaps\\|conflicts\\) during merge$") | 1351 "^\\(rcs\\)?merge[:]*\\( warning\\)?: \\(overlaps\\|conflicts\\) during merge$") |
1354 | 1352 |
1355 ;; Yes, this is a conflict. | 1353 ;; Yes, this is a conflict. |
1356 (cvs-skip-line stdout-buffer stderr-buffer | 1354 (cvs-skip-line stdout-buffer stderr-buffer |
1357 "^\\(rcs\\)?merge[:]*\\( warning\\)?: \\(overlaps\\|conflicts\\) during merge$") | 1355 "^\\(rcs\\)?merge[:]*\\( warning\\)?: \\(overlaps\\|conflicts\\) during merge$") |
1358 | 1356 |
1602 (define-key cvs-mode-map "\C-k" 'cvs-mode-acknowledge) | 1600 (define-key cvs-mode-map "\C-k" 'cvs-mode-acknowledge) |
1603 (define-key cvs-mode-map "\C-n" 'cvs-mode-next-line) | 1601 (define-key cvs-mode-map "\C-n" 'cvs-mode-next-line) |
1604 (define-key cvs-mode-map "\C-p" 'cvs-mode-previous-line) | 1602 (define-key cvs-mode-map "\C-p" 'cvs-mode-previous-line) |
1605 ;; ^C- keys are used to set various flags to control CVS features | 1603 ;; ^C- keys are used to set various flags to control CVS features |
1606 (define-key cvs-mode-map "\C-c" 'cvs-mode-map-control-c-prefix) | 1604 (define-key cvs-mode-map "\C-c" 'cvs-mode-map-control-c-prefix) |
1607 (define-key cvs-mode-map "\C-cc" 'cvs-change-cvsroot) | 1605 (define-key cvs-mode-map "\C-c\C-c" 'cvs-change-cvsroot) |
1608 (define-key cvs-mode-map "\C-cd" 'cvs-set-diff-flags) | 1606 (define-key cvs-mode-map "\C-c\C-d" 'cvs-set-diff-flags) |
1609 (define-key cvs-mode-map "\C-cl" 'cvs-set-log-flags) | 1607 (define-key cvs-mode-map "\C-c\C-l" 'cvs-set-log-flags) |
1610 (define-key cvs-mode-map "\C-cs" 'cvs-set-status-flags) | 1608 (define-key cvs-mode-map "\C-c\C-s" 'cvs-set-status-flags) |
1611 (define-key cvs-mode-map "\C-cu" 'cvs-set-update-optional-flags) | 1609 (define-key cvs-mode-map "\C-c\C-u" 'cvs-set-update-optional-flags) |
1612 ;; M- keys are usually those that operate on modules | 1610 ;; M- keys are usually those that operate on modules |
1613 (define-key cvs-mode-map "\M-\C-?" 'cvs-mode-unmark-all-files) | 1611 (define-key cvs-mode-map "\M-\C-?" 'cvs-mode-unmark-all-files) |
1614 (define-key cvs-mode-map "\M-C" 'cvs-mode-rcs2log) ; i.e. "Create a ChangeLog" | 1612 (define-key cvs-mode-map "\M-C" 'cvs-mode-rcs2log) ; i.e. "Create a ChangeLog" |
1615 (define-key cvs-mode-map "\M-a" 'cvs-mode-admin) | 1613 (define-key cvs-mode-map "\M-a" 'cvs-mode-admin) |
1616 (define-key cvs-mode-map "\M-c" 'cvs-mode-checkout) | 1614 (define-key cvs-mode-map "\M-c" 'cvs-mode-checkout) |
3450 (cvs-edit-mode) | 3448 (cvs-edit-mode) |
3451 (make-local-variable 'cvs-commit-list) | 3449 (make-local-variable 'cvs-commit-list) |
3452 (setq cvs-commit-list marked) | 3450 (setq cvs-commit-list marked) |
3453 (message "Press C-c C-c when you are done editing.")))) | 3451 (message "Press C-c C-c when you are done editing.")))) |
3454 | 3452 |
3455 ;;;; end of file pcl-cvs.el | 3453 (provide 'pcl-cvs) |
3454 | |
3455 ;;; pcl-cvs.el ends here |