Mercurial > emacs
annotate lisp/pcvs-defs.el @ 47208:5a35f521b33d
*** empty log message ***
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Tue, 03 Sep 2002 01:16:33 +0000 |
parents | 4cc4a5d2bae2 |
children | b4a43403c371 |
rev | line source |
---|---|
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
1 ;;; pcvs-defs.el --- variable definitions for PCL-CVS |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
2 |
34304 | 3 ;; Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
4 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
5 ;; Author: Stefan Monnier <monnier@cs.yale.edu> |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
6 ;; Keywords: pcl-cvs |
46098
4cc4a5d2bae2
(cvs-mode-map): Bind ! to `force'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
45965
diff
changeset
|
7 ;; Revision: $Id: pcvs-defs.el,v 1.18 2002/06/22 20:24:42 monnier Exp $ |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
8 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
9 ;; This file is part of GNU Emacs. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
10 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
11 ;; GNU Emacs is free software; you can redistribute it and/or modify |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
12 ;; it under the terms of the GNU General Public License as published by |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
13 ;; the Free Software Foundation; either version 2, or (at your option) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
14 ;; any later version. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
15 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
16 ;; GNU Emacs is distributed in the hope that it will be useful, |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
19 ;; GNU General Public License for more details. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
20 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
21 ;; You should have received a copy of the GNU General Public License |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
22 ;; along with GNU Emacs; see the file COPYING. If not, write to the |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
23 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
24 ;; Boston, MA 02111-1307, USA. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
25 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
26 ;;; Commentary: |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
27 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
28 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
29 ;;; Code: |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
30 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
31 (eval-when-compile (require 'cl)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
32 (require 'pcvs-util) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
33 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
34 ;;;; ------------------------------------------------------- |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
35 ;;;; START OF THINGS TO CHECK WHEN INSTALLING |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
36 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
37 (defvar cvs-program "cvs" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
38 "*Name or full path of the cvs executable.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
39 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
40 (defvar cvs-version |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
41 (ignore-errors |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
42 (with-temp-buffer |
45965
20686887461a
(cvs-version): Use cvs-program rather than "cvs".
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
42205
diff
changeset
|
43 (call-process cvs-program nil t nil "-v") |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
44 (goto-char (point-min)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
45 (when (re-search-forward "(CVS) \\([0-9]+\\)\\.\\([0-9]+\\)" nil t) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
46 (cons (string-to-number (match-string 1)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
47 (string-to-number (match-string 2)))))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
48 "*Version of `cvs' installed on your system. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
49 It must be in the (MAJOR . MINOR) format.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
50 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
51 ;; FIXME: this is only used by cvs-mode-diff-backup |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
52 (defvar cvs-diff-program (or (and (boundp 'diff-command) diff-command) "diff") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
53 "*Name or full path of the best diff program you've got. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
54 NOTE: there are some nasty bugs in the context diff variants of some vendor |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
55 versions, such as the one in SunOS-4.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
56 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
57 ;;;; END OF THINGS TO CHECK WHEN INSTALLING |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
58 ;;;; -------------------------------------------------------- |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
59 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
60 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
61 ;;;; User configuration variables: |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
62 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
63 ;;;; NOTE: these should be set in your ~/.emacs (or site-lisp/default.el) file. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
64 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
65 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
66 (defgroup pcl-cvs nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
67 "Special support for the CVS versioning system." |
29628
4580fc7c0a80
(pcl-cvs) <defgroup>: Add :version.
Dave Love <fx@gnu.org>
parents:
29566
diff
changeset
|
68 :version "21.1" |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
69 :group 'tools |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
70 :prefix "cvs-") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
71 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
72 ;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
73 ;; cvsrc options |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
74 ;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
75 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
76 (defcustom cvs-cvsrc-file "~/.cvsrc" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
77 "Path to your cvsrc file." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
78 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
79 :type '(file)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
80 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
81 (defvar cvs-shared-start 4 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
82 "Index of the first shared flag. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
83 If set to 4, for instance, a numeric argument smaller than 4 will |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
84 select a non-shared flag, while a numeric argument greater than 3 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
85 will select a shared-flag.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
86 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
87 (defvar cvs-shared-flags (make-list cvs-shared-start nil) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
88 "List of flags whose settings is shared among several commands.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
89 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
90 (defvar cvs-cvsroot nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
91 "*Specifies where the (current) cvs master repository is. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
92 Overrides the environment variable $CVSROOT by sending \" -d dir\" to |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
93 all CVS commands. This switch is useful if you have multiple CVS |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
94 repositories. It can be set interactively with \\[cvs-change-cvsroot.] |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
95 There is no need to set this if $CVSROOT is set to a correct value.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
96 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
97 (defcustom cvs-auto-remove-handled nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
98 "*If up-to-date files should be acknowledged automatically. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
99 If T, they will be removed from the *cvs* buffer after every command. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
100 If DELAYED, they will be removed from the *cvs* buffer before every command. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
101 If STATUS, they will only be removed after a `cvs-mode-status' command. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
102 Else, they will never be automatically removed from the *cvs* buffer." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
103 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
104 :type '(choice (const nil) (const status) (const delayed) (const t))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
105 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
106 (defcustom cvs-auto-remove-directories 'handled |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
107 "*If ALL, directory entries will never be shown. |
46098
4cc4a5d2bae2
(cvs-mode-map): Bind ! to `force'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
45965
diff
changeset
|
108 If HANDLED, only non-handled directories will be shown. |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
109 If EMPTY, only non-empty directories will be shown." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
110 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
111 :type '(choice (const :tag "No" nil) (const all) (const handled) (const empty))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
112 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
113 (defcustom cvs-auto-revert t |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
114 "*Non-nil if changed files should automatically be reverted." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
115 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
116 :type '(boolean)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
117 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
118 (defcustom cvs-sort-ignore-file t |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
119 "*Non-nil if `cvs-mode-ignore' should sort the .cvsignore automatically." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
120 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
121 :type '(boolean)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
122 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
123 (defcustom cvs-force-dir-tag t |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
124 "*If non-nil, tagging can only be applied to directories. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
125 Tagging should generally be applied a directory at a time, but sometimes it is |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
126 useful to be able to tag a single file. The normal way to do that is to use |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
127 `cvs-mode-force-command' so as to temporarily override the restrictions," |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
128 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
129 :type '(boolean)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
130 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
131 (defcustom cvs-default-ignore-marks nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
132 "*Non-nil if cvs mode commands should ignore any marked files. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
133 Normally they run on the files that are marked (with `cvs-mode-mark'), |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
134 or the file under the cursor if no files are marked. If this variable |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
135 is set to a non-nil value they will by default run on the file on the |
29566
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
136 current line. See also `cvs-invert-ignore-marks'" |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
137 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
138 :type '(boolean)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
139 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
140 (defvar cvs-diff-ignore-marks t |
29566
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
141 "Obsolete: use `cvs-invert-ignore-marks' instead.") |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
142 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
143 (defcustom cvs-invert-ignore-marks |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
144 (let ((l ())) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
145 (unless (equal cvs-diff-ignore-marks cvs-default-ignore-marks) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
146 (push "diff" l)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
147 (when (and cvs-force-dir-tag (not cvs-default-ignore-marks)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
148 (push "tag" l)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
149 l) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
150 "*List of cvs commands that invert the default ignore-mark behavior. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
151 Commands in this set will use the opposite default from the one set |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
152 in `cvs-default-ignore-marks'." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
153 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
154 :type '(set (const "diff") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
155 (const "tag") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
156 (const "ignore"))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
157 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
158 (defcustom cvs-confirm-removals t |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
159 "*Ask for confirmation before removing files. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
160 Non-nil means that PCL-CVS will ask confirmation before removing files |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
161 except for files whose content can readily be recovered from the repository. |
33230
feebcbad81ae
(cvs-menu): Add entries for tree and insert.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
29628
diff
changeset
|
162 A value of `list' means that the list of files to be deleted will be |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
163 displayed when asking for confirmation." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
164 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
165 :type '(choice (const list) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
166 (const t) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
167 (const nil))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
168 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
169 (defcustom cvs-add-default-message nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
170 "*Default message to use when adding files. |
42205 | 171 If set to nil, `cvs-mode-add' will always prompt for a message." |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
172 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
173 :type '(choice (const :tag "Prompt" nil) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
174 (string))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
175 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
176 (defvar cvs-diff-buffer-name "*cvs-diff*" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
177 "Obsolete variable: use `cvs-buffer-name-alist' instead.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
178 |
29566
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
179 (defcustom cvs-find-file-and-jump nil |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
180 "Jump to the modified area when finding a file. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
181 If non-nil, `cvs-mode-file-file' will place the cursor at the beginning of |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
182 the modified area. If the file is not locally modified, this will obviously |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
183 have no effect." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
184 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
185 :type '(boolean)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
186 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
187 (defcustom cvs-buffer-name-alist |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
188 '(("diff" cvs-diff-buffer-name diff-mode) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
189 ("status" "*cvs-info*" cvs-status-mode) |
36613
6fd7e79e9d1f
(cvs-buffer-name-alist): Use *cvs-info* for
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34652
diff
changeset
|
190 ("tree" "*cvs-info*" cvs-status-mode) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
191 ("message" "*cvs-commit*" nil log-edit) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
192 ("log" "*cvs-info*" log-view-mode)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
193 "*Buffer name and mode to be used for each command. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
194 This is a list of elements of the form |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
195 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
196 (CMD BUFNAME MODE &optional POSTPROC) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
197 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
198 CMD is the name of the command. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
199 BUFNAME is an expression that should evaluate to a string used as |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
200 a buffer name. It can use the variable CMD if it wants to. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
201 MODE is the command to use to setup the buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
202 POSTPROC is a function that should be executed when the command terminates |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
203 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
204 The CMD used for `cvs-mode-commit' is \"message\". For that special |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
205 case, POSTPROC is called just after MODE with special arguments." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
206 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
207 :type '(repeat |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
208 (list (choice (const "diff") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
209 (const "status") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
210 (const "tree") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
211 (const "message") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
212 (const "log") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
213 (string)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
214 (choice (const "*vc-diff*") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
215 (const "*cvs-info*") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
216 (const "*cvs-commit*") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
217 (const (expand-file-name "*cvs-commit*")) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
218 (const (format "*cvs-%s*" cmd)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
219 (const (expand-file-name (format "*cvs-%s*" cmd))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
220 (sexp :value "my-cvs-info-buffer") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
221 (const nil)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
222 (choice (function-item diff-mode) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
223 (function-item cvs-edit-mode) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
224 (function-item cvs-status-mode) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
225 function |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
226 (const nil)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
227 (set :inline t |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
228 (choice (function-item cvs-status-cvstrees) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
229 (function-item cvs-status-trees) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
230 function))))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
231 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
232 (defvar cvs-buffer-name '(expand-file-name "*cvs*" dir) ;; "*cvs*" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
233 "Name of the cvs buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
234 This expression will be evaluated in an environment where DIR is set to |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
235 the directory name of the cvs buffer.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
236 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
237 (defvar cvs-temp-buffer-name '(expand-file-name " *cvs-tmp*" dir) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
238 "*Name of the cvs temporary buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
239 Output from cvs is placed here for asynchronous commands.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
240 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
241 (defcustom cvs-idiff-imerge-handlers |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
242 (if (fboundp 'ediff) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
243 '(cvs-ediff-diff . cvs-ediff-merge) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
244 '(cvs-emerge-diff . cvs-emerge-merge)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
245 "*Pair of functions to be used for resp. diff'ing and merg'ing interactively." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
246 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
247 :type '(choice (const :tag "Ediff" (cvs-ediff-diff . cvs-ediff-merge)) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
248 (const :tag "Emerge" (cvs-emerge-diff . cvs-emerge-merge)))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
249 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
250 (defvar pcl-cvs-load-hook nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
251 "Run after loading pcl-cvs.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
252 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
253 (defvar cvs-mode-hook nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
254 "Run after `cvs-mode' was setup.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
255 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
256 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
257 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
258 ;;;; Internal variables, used in the process buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
259 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
260 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
261 (defvar cvs-postprocess nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
262 "(Buffer local) what to do once the process exits.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
263 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
264 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
265 ;;;; Internal variables for the *cvs* buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
266 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
267 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
268 (defcustom cvs-reuse-cvs-buffer 'subdir |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
269 "When to reuse an existing cvs buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
270 Alternatives are: |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
271 CURRENT: just reuse the current buffer if it is a cvs buffer |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
272 SAMEDIR: reuse any cvs buffer displaying the same directory |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
273 SUBDIR: or reuse any cvs buffer displaying any sub- or super- directory |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
274 ALWAYS: reuse any cvs buffer." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
275 :group 'pcl-cvs |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
276 :type '(choice (const always) (const subdir) (const samedir) (const current))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
277 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
278 (defvar cvs-temp-buffer nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
279 "(Buffer local) The temporary buffer associated with this *cvs* buffer.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
280 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
281 (defvar cvs-lock-file nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
282 "Full path to a lock file that CVS is waiting for (or was waiting for). |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
283 This variable is buffer local and only used in the *cvs* buffer.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
284 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
285 (defvar cvs-lock-file-regexp "^#cvs\\.\\([trw]fl\\.[-.a-z0-9]+\\|lock\\)\\'" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
286 "Regexp matching the possible names of locks in the CVS repository.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
287 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
288 (defconst cvs-cursor-column 22 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
289 "Column to position cursor in in `cvs-mode'.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
290 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
291 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
292 ;;;; Global internal variables |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
293 ;;;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
294 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
295 (defconst cvs-vendor-branch "1.1.1" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
296 "The default branch used by CVS for vendor code.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
297 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
298 (easy-mmode-defmap cvs-mode-diff-map |
34406
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
299 '(("E" "imerge" . cvs-mode-imerge) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
300 ("=" . cvs-mode-diff) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
301 ("e" "idiff" . cvs-mode-idiff) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
302 ("2" "other" . cvs-mode-idiff-other) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
303 ("d" "diff" . cvs-mode-diff) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
304 ("b" "backup" . cvs-mode-diff-backup) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
305 ("h" "head" . cvs-mode-diff-head) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
306 ("v" "vendor" . cvs-mode-diff-vendor)) |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
307 "Keymap for diff-related operations in `cvs-mode'." |
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
308 :name "Diff") |
37819
c1646601f895
(cvs-mode-map): bind "z" and [RET]
Sam Steingold <sds@gnu.org>
parents:
37695
diff
changeset
|
309 ;; This is necessary to allow correct handling of \\[cvs-mode-diff-map] |
29566
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
310 ;; in substitute-command-keys. |
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
311 (fset 'cvs-mode-diff-map cvs-mode-diff-map) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
312 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
313 (easy-mmode-defmap cvs-mode-map |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
314 ;;(define-prefix-command 'cvs-mode-map-diff-prefix) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
315 ;;(define-prefix-command 'cvs-mode-map-control-c-prefix) |
37695
377af5547011
(cvs-mode-map): Don't rebind `undo'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
37340
diff
changeset
|
316 '(;; simulate `suppress-keymap' |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
317 (self-insert-command . undefined) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
318 (("0" "1" "2" "3" "4" "5" "6" "7" "8" "9") . digit-argument) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
319 ("-" . negative-argument) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
320 ;; various |
37695
377af5547011
(cvs-mode-map): Don't rebind `undo'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
37340
diff
changeset
|
321 ;; (undo . cvs-mode-undo) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
322 ("?" . cvs-help) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
323 ("h" . cvs-help) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
324 ("q" . cvs-bury-buffer) |
37819
c1646601f895
(cvs-mode-map): bind "z" and [RET]
Sam Steingold <sds@gnu.org>
parents:
37695
diff
changeset
|
325 ("z" . kill-this-buffer) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
326 ("F" . cvs-mode-set-flags) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
327 ("\M-f" . cvs-mode-force-command) |
46098
4cc4a5d2bae2
(cvs-mode-map): Bind ! to `force'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
45965
diff
changeset
|
328 ("!" . cvs-mode-force-command) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
329 ("\C-c\C-c" . cvs-mode-kill-process) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
330 ;; marking |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
331 ("m" . cvs-mode-mark) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
332 ("M" . cvs-mode-mark-all-files) |
37340
3ae41b8bb994
(cvs-mode-map): Bind C-o like in dired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36613
diff
changeset
|
333 ("S" . cvs-mode-mark-on-state) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
334 ("u" . cvs-mode-unmark) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
335 ("\C-?". cvs-mode-unmark-up) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
336 ("%" . cvs-mode-mark-matching-files) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
337 ("T" . cvs-mode-toggle-marks) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
338 ("\M-\C-?" . cvs-mode-unmark-all-files) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
339 ;; navigation keys |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
340 (" " . cvs-mode-next-line) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
341 ("n" . cvs-mode-next-line) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
342 ("p" . cvs-mode-previous-line) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
343 ;; M- keys are usually those that operate on modules |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
344 ;;("\M-C". cvs-mode-rcs2log) ; i.e. "Create a ChangeLog" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
345 ;;("\M-t". cvs-rtag) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
346 ;;("\M-l". cvs-rlog) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
347 ("\M-c". cvs-checkout) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
348 ("\M-e". cvs-examine) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
349 ("g" . cvs-mode-revert-buffer) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
350 ("\M-u". cvs-update) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
351 ("\M-s". cvs-status) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
352 ;; diff commands |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
353 ("=" . cvs-mode-diff) |
29566
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
354 ("d" . cvs-mode-diff-map) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
355 ;; keys that operate on individual files |
40581
55442821b27d
(cvs-mode-map): bind C-m, not RET
Sam Steingold <sds@gnu.org>
parents:
38422
diff
changeset
|
356 ("\C-k" . cvs-mode-acknowledge) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
357 ("A" . cvs-mode-add-change-log-entry-other-window) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
358 ;;("B" . cvs-mode-byte-compile-files) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
359 ("C" . cvs-mode-commit-setup) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
360 ("O" . cvs-mode-update) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
361 ("U" . cvs-mode-undo) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
362 ("I" . cvs-mode-insert) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
363 ("a" . cvs-mode-add) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
364 ("b" . cvs-set-branch-prefix) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
365 ("B" . cvs-set-secondary-branch-prefix) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
366 ("c" . cvs-mode-commit) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
367 ("e" . cvs-mode-examine) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
368 ("f" . cvs-mode-find-file) |
40581
55442821b27d
(cvs-mode-map): bind C-m, not RET
Sam Steingold <sds@gnu.org>
parents:
38422
diff
changeset
|
369 ("\C-m" . cvs-mode-find-file) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
370 ("i" . cvs-mode-ignore) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
371 ("l" . cvs-mode-log) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
372 ("o" . cvs-mode-find-file-other-window) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
373 ("r" . cvs-mode-remove) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
374 ("s" . cvs-mode-status) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
375 ("t" . cvs-mode-tag) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
376 ;;("v" . cvs-mode-diff-vendor) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
377 ("x" . cvs-mode-remove-handled) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
378 ;; cvstree bindings |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
379 ("+" . cvs-mode-tree) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
380 ;; mouse bindings |
29566
3334012b1cb4
(cvs-default-ignore-marks, cvs-diff-ignore-marks):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28256
diff
changeset
|
381 ([mouse-2] . cvs-mode-find-file) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
382 ([(down-mouse-3)] . cvs-menu) |
37340
3ae41b8bb994
(cvs-mode-map): Bind C-o like in dired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36613
diff
changeset
|
383 ;; dired-like bindings |
3ae41b8bb994
(cvs-mode-map): Bind C-o like in dired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36613
diff
changeset
|
384 ("\C-o" . cvs-mode-display-file) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
385 ;; Emacs-21 toolbar |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
386 ;;([tool-bar item1] . (menu-item "Examine" cvs-examine :image (image :file "/usr/share/icons/xpaint.xpm" :type xpm))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
387 ;;([tool-bar item2] . (menu-item "Update" cvs-update :image (image :file "/usr/share/icons/mail1.xpm" :type xpm))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
388 ) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
389 "Keymap for `cvs-mode'." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
390 :dense t) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
391 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
392 (fset 'cvs-mode-map cvs-mode-map) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
393 |
34375
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
394 (easy-menu-define cvs-menu cvs-mode-map "Menu used in `cvs-mode'." |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
395 '("CVS" |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
396 ["Open file.." cvs-mode-find-file t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
397 [" ..other window" cvs-mode-find-file-other-window t] |
37340
3ae41b8bb994
(cvs-mode-map): Bind C-o like in dired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36613
diff
changeset
|
398 ["Display in other window" cvs-mode-display-file t] |
34375
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
399 ["Interactive merge" cvs-mode-imerge t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
400 ("View diff" |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
401 ["Interactive diff" cvs-mode-idiff t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
402 ["Current diff" cvs-mode-diff t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
403 ["Diff with head" cvs-mode-diff-head t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
404 ["Diff with vendor" cvs-mode-diff-vendor t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
405 ["Diff with backup" cvs-mode-diff-backup t]) |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
406 ["View log" cvs-mode-log t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
407 ["View status" cvs-mode-status t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
408 ["View tag tree" cvs-mode-tree t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
409 "----" |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
410 ["Insert" cvs-mode-insert] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
411 ["Update" cvs-mode-update (cvs-enabledp 'update)] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
412 ["Re-examine" cvs-mode-examine t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
413 ["Commit" cvs-mode-commit-setup (cvs-enabledp 'commit)] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
414 ["Undo changes" cvs-mode-undo (cvs-enabledp 'undo)] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
415 ["Add" cvs-mode-add (cvs-enabledp 'add)] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
416 ["Remove" cvs-mode-remove (cvs-enabledp 'remove)] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
417 ["Ignore" cvs-mode-ignore (cvs-enabledp 'ignore)] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
418 ["Add ChangeLog" cvs-mode-add-change-log-entry-other-window t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
419 "----" |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
420 ["Mark all" cvs-mode-mark-all-files t] |
37340
3ae41b8bb994
(cvs-mode-map): Bind C-o like in dired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36613
diff
changeset
|
421 ["Mark by regexp..." cvs-mode-mark-matching-files t] |
3ae41b8bb994
(cvs-mode-map): Bind C-o like in dired.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36613
diff
changeset
|
422 ["Mark by state..." cvs-mode-mark-on-state t] |
34375
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
423 ["Unmark all" cvs-mode-unmark-all-files t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
424 ["Hide handled" cvs-mode-remove-handled t] |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
425 "----" |
3cd9d12d2b5d
* pcvs-defs.el (cvs-menu): Move. Make submenu for diff commands.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34304
diff
changeset
|
426 ["Quit" cvs-mode-quit t])) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
427 |
37819
c1646601f895
(cvs-mode-map): bind "z" and [RET]
Sam Steingold <sds@gnu.org>
parents:
37695
diff
changeset
|
428 ;;;; |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
429 ;;;; CVS-Minor mode |
37819
c1646601f895
(cvs-mode-map): bind "z" and [RET]
Sam Steingold <sds@gnu.org>
parents:
37695
diff
changeset
|
430 ;;;; |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
431 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
432 (defcustom cvs-minor-mode-prefix "\C-xc" |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
433 "Prefix key for the `cvs-mode' bindings in `cvs-minor-mode'." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
434 :group 'pcl-cvs) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
435 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
436 (easy-mmode-defmap cvs-minor-mode-map |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
437 `((,cvs-minor-mode-prefix . cvs-mode-map)) |
34406
26b5a3053881
(cvs-mode-diff-map): Use minibuffer menu prompts.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
34375
diff
changeset
|
438 "Keymap for `cvs-minor-mode', used in buffers related to PCL-CVS.") |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
439 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
440 (defvar cvs-buffer nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
441 "(Buffer local) The *cvs* buffer associated with this buffer.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
442 (put 'cvs-buffer 'permanent-local t) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
443 ;;(make-variable-buffer-local 'cvs-buffer) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
444 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
445 (defvar cvs-minor-wrap-function nil |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
446 "Function to call when switching to the *cvs* buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
447 Takes two arguments: |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
448 - a *cvs* buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
449 - a zero-arg function which is guaranteed not to switch buffer. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
450 It is expected to call the function.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
451 ;;(make-variable-buffer-local 'cvs-minor-wrap-function) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
452 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
453 (defvar cvs-minor-current-files) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
454 ;;"Current files in a `cvs-minor-mode' buffer." |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
455 ;; This should stay `void' because we want to be able to tell the difference |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
456 ;; between an empty list and no list at all. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
457 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
458 (defconst cvs-pcl-cvs-dirchange-re "^pcl-cvs: descending directory \\(.*\\)$") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
459 |
37819
c1646601f895
(cvs-mode-map): bind "z" and [RET]
Sam Steingold <sds@gnu.org>
parents:
37695
diff
changeset
|
460 ;;;; |
28256
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
461 ;;;; autoload the global menu |
37819
c1646601f895
(cvs-mode-map): bind "z" and [RET]
Sam Steingold <sds@gnu.org>
parents:
37695
diff
changeset
|
462 ;;;; |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
463 |
28256
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
464 ;;;###autoload |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
465 (defvar cvs-global-menu |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
466 (let ((m (make-sparse-keymap "PCL-CVS"))) |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
467 (define-key m [status] |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
468 '(menu-item "Directory Status" cvs-status |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
469 :help "A more verbose status of a workarea")) |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
470 (define-key m [checkout] |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
471 '(menu-item "Checkout Module" cvs-checkout |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
472 :help "Check out a module from the repository")) |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
473 (define-key m [update] |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
474 '(menu-item "Update Directory" cvs-update |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
475 :help "Fetch updates from the repository")) |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
476 (define-key m [examine] |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
477 '(menu-item "Examine Directory" cvs-examine |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
478 :help "Examine the current state of a workarea")) |
06cfa273543d
* pcvs.el: Add a minimal leading commentary.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
28160
diff
changeset
|
479 m)) |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
480 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
481 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
482 ;; cvs-1.10 and above can take file arguments in other directories |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
483 ;; while others need to be executed once per directory |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
484 (defvar cvs-execute-single-dir |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
485 (if (and (consp cvs-version) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
486 (or (>= (cdr cvs-version) 10) (> (car cvs-version) 1))) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
487 '("status") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
488 t) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
489 "Whether cvs commands should be executed a directory at a time. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
490 If a list, specifies for which commands the single-dir mode should be used. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
491 If T, single-dir mode should be used for all operations. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
492 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
493 CVS versions before 1.10 did not allow passing them arguments in different |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
494 directories, so pcl-cvs checks what version you're using to determine |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
495 whether to use the new feature or not. |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
496 Sadly, even with a new cvs executable, if you connect to an older cvs server |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
497 \(typically a cvs-1.9 on the server), the old restriction applies. In such |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
498 a case the sanity check made by pcl-cvs fails and you will have to manually |
42205 | 499 set this variable to t (until the cvs server is upgraded). |
28088
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
500 When the above problem occurs, pcl-cvs should (hopefully) catch cvs' error |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
501 message and replace it with a message tell you to change this variable.") |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
502 |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
503 ;; |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
504 (provide 'pcvs-defs) |
b442dfc3cef0
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
diff
changeset
|
505 |
38422
7a94f1c588c4
Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents:
37819
diff
changeset
|
506 ;;; pcvs-defs.el ends here |