a24331f2cc
Fix ‘p4-lowlevel-sync’ call
2021-01-23 10:04:00 -08:00
8c75982f01
Add client argument for merging files
2021-01-23 10:01:21 -08:00
5c39509421
Add client argument for checking in files
2021-01-23 09:50:29 -08:00
553914a5ac
Fix using client for registering new files
2021-01-23 09:39:24 -08:00
b95132e71e
Add client arguments for ‘p4 add’
2021-01-23 09:34:20 -08:00
5bc33dcc44
Fix usage of ‘alist-get’
...
By default ‘alist-get’ uses ‘eq’ to compare keys, which doesn’t work for strings
reliably (I’m actually surprised it works at all).
2021-01-23 09:30:46 -08:00
a535c47e93
Make ‘vc-revert’ work with the current client
2021-01-22 21:58:40 -08:00
a60278efa7
Make checking out files with a client work
2021-01-22 21:35:20 -08:00
2b270a93f0
Add client argument to ‘p4-lowlevel-revert’
2021-01-21 23:13:18 -08:00
6724d2b827
Specify client for initial responsibility check
2021-01-21 19:15:08 -08:00
4c5fc58d6d
Enable lexical binding for project files
2021-01-14 23:12:30 -08:00
23bacc0d4b
Add login commands
...
- Add command ‘vc-p4-logged-in-p’ to check if the user is currently logged in.
- Add command ‘vc-p4-login’ to log in if the user isn’t already logged in.
- Add better error reporting for the situation where a user isn’t logged in.
2021-01-14 22:39:21 -08:00
a1141460b8
Update ‘vc-p4-dir-status’ to ‘vc-p4-dir-status-files’
...
Newer versions of VC have changed the way ‘vc-dir’ calls each back-end.
2020-05-27 18:18:41 -07:00
d32dd5f376
Simplify and fix ‘vc-p4-is-in-client’
...
Quoting the string with Windows paths in it would double-quote the directory
separators. It also seems easier to use ‘string-prefix-p’ than an anchored
regular expression.
‘alist-get’ is a function that was introduced in Emacs 25 that is easier to use
than ‘assoc’ + ‘cdr’.
2020-05-27 17:57:45 -07:00
35beacc3d6
Fix indentation of comments, reflow
2020-05-13 11:29:35 -07:00
749665a8ae
Add support for the vc-delete command
2020-05-13 11:07:38 -07:00
774ab55e9e
Add simplistic vc-p4-switch-client command
2020-03-02 21:08:23 -08:00
d53eb68743
Fix indentation
2017-06-07 12:34:06 -07:00
94077d5136
Update vc-p4-diff argument list
...
Newer versions of vc add in an async flag, this is not currently used
by us.
2017-06-07 12:08:30 -07:00
5596f66072
Fix vc-p4-diff for buffer string argument
...
BUFF may be a string as well as a buffer. In case it is a string it
should use that string to create the buffer for the diff.
2017-06-07 00:12:36 -07:00
600e9e2f71
Update vc-p4-checkout for modern vc
...
The argument list for the ‘vc-*-checkout’ function doesn’t include
destfile or editable anymore.
2017-06-07 00:09:07 -07:00
47eb5350df
Add required vc function
...
‘vc-p4-revision-granularity’ is a required function that should be
implemented by all vc backends. Perforce has per-file revisions.
2017-06-07 00:05:59 -07:00
e7a25a4fda
Fix whitespace
2017-06-07 00:03:49 -07:00
Ben_Key
3cb296d970
Various modifications to vc-p4 that I have been using for years.
...
Unfortunately I did not document the changes as I made them. I have been able to determine the purpose of most of the changes by code inspection but there are a few changes for which I have not been able to determine a purpose.
* Modifications to support XEmacs.
* Added the p4-lowlevel-locate-p4 function. This function is used to locate the p4 executable on the exec-path. It is used by the vc-p4-registered function to avoid an error on systems on which the Perforce client is not installed. This is useful if the same .emacs file is used on multiple systems, some of which do not have the Perforce client installed.
* Modified the p4-lowlevel-successful-alist-p function so that a command that returns the message "file(s) up-to-date" does not trigger an error. As part of this change I added the p4-lowlevel-ignore-error-list defcustom and the p4-lowlevel-should-ignore-error function.
* Modified the vc-p4-registered function so that it uses the p4-lowlevel-locate-p4 function to verify that the Perforce client is installed.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 12013]
2015-03-10 14:43:47 -08:00
Magnus Henoch
015a4a67dc
* vc-p4.el (vc-p4-state): Mark new files as added.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7742]
2010-08-09 09:58:53 -08:00
Magnus Henoch
508d650136
* vc-p4.el (vc-p4-state): Don't compare non-existent files.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7741]
2010-08-09 08:46:04 -08:00
Magnus Henoch
0cfe10cab9
* vc-p4.el (vc-p4-workfile-unchanged-p): Return nil for files marked for deletion.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7740]
2010-08-09 08:35:34 -08:00
Magnus Henoch
1674c9ea2a
* vc-p4.el (vc-p4-diff): Handle deleted files.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7739]
2010-08-09 08:28:09 -08:00
Magnus Henoch
a8fbf9a3b1
* vc-p4.el (vc-p4-state): Mark file as `removed' if action is "delete".
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7738]
2010-08-09 07:53:27 -08:00
Magnus Henoch
6c3758972c
* vc-p4.el (vc-p4-previous-revision): New function, shamelessly
...
copied from vc-svn.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7546]
2010-01-13 09:01:58 -08:00
Magnus Henoch
a546229293
* vc-p4.el (vc-p4-print-log): Accept optional argument revision,
...
as required by Emacs 23.1.91.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7545]
2010-01-13 08:57:06 -08:00
Magnus Henoch
a0e7fbe5e1
* vc-p4.el (vc-p4-print-log): Accept optional arguments shortlog
...
and limit, as required by Emacs 23.1.50.
* p4-lowlevel.el (p4-lowlevel-filelog): Accept limit argument.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7487]
2009-11-17 16:35:08 -08:00
Magnus Henoch
af857b4d50
* vc-p4.el (vc-p4-revert): Fix revert of unopened files.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7486]
2009-11-17 08:06:39 -08:00
Magnus Henoch
2e8b1f0015
* vc-p4.el (vc-p4-diff): Fix Perforce file headers.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7485]
2009-11-16 14:10:55 -08:00
Magnus Henoch
4667f79c0a
* vc-p4.el (vc-p4-diff): Support lists of files. Perform only a
...
single request to the server in the simplest case (diff edited
file to synced version).
* p4-lowlevel.el (p4-lowlevel-command-into-buffer): Don't reorder
info and text lines.
(p4-lowlevel-diff): Support lists of files as well as a single file.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7484]
2009-11-16 12:56:58 -08:00
Magnus Henoch
2d9b785e7c
* vc-p4.el (vc-p4-state): Avoid error when saving non-Perforce
...
file inside Perforce working directory. Still gives incorrect
'up-to-date' status in vc-dir sometimes.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7377]
2009-09-09 06:16:58 -08:00
Magnus Henoch
d4562f9ba7
* vc-p4.el (vc-p4-state): Display files present neither on client
...
nor in depot head as `up-to-date'.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7362]
2009-08-27 04:24:27 -08:00
Magnus Henoch
c24b959ed3
* vc-p4.el (vc-p4-state): Change if' mess to
cond'.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7361]
2009-08-27 04:18:55 -08:00
Magnus Henoch
7292914d99
* vc-p4.el (vc-p4-dir-status): Don't list up-to-date files.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7360]
2009-08-27 04:14:59 -08:00
Magnus Henoch
876b3ef83c
* vc-p4.el: Note that Emacs 23 is required.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7330]
2009-07-20 13:07:17 -08:00
Magnus Henoch
0786aae292
(vc-p4-working-revision): Renamed from
...
`vc-p4-workfile-version', to avoid deprecation message on commit.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7270]
2009-06-05 11:51:36 -08:00
Magnus Henoch
97229d0b82
(vc-p4-checkin): Multiple files commit.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7269]
2009-06-05 11:47:35 -08:00
Magnus Henoch
c68de18b24
(vc-p4-init-revision): Renamed from `vc-p4-init-version'.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7268]
2009-06-05 11:40:15 -08:00
Magnus Henoch
bbc4dd3ee5
Remove obsolete redefinitions.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7239]
2009-05-27 09:58:25 -08:00
Magnus Henoch
4c98e00c6b
* vc-p4.el (vc-p4-annotate-command-internal): s/string-to-int/string-to-number/
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7238]
2009-05-27 09:57:06 -08:00
Magnus Henoch
d1bbfc11ce
* vc-p4.el (vc-p4-dir-state): Remove unused function.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7237]
2009-05-27 09:54:56 -08:00
Magnus Henoch
eacbba72bc
* vc-p4.el (vc-p4-dir-status): Handle subdirectories. Use
...
information from vc-p4-state.
(vc-p4-state): New argument: dont-compare-nonopened.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7236]
2009-05-27 09:54:01 -08:00
Magnus Henoch
1391eebeb5
(vc-p4-dir-status): Initial implementation.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7232]
2009-05-27 05:53:57 -08:00
Magnus Henoch
b52aaa3e2c
Update copyright notices. Update URL; include URL of previous version.
...
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7231]
2009-05-27 03:11:58 -08:00
Magnus Henoch
7e94b5b0ff
* vc-p4.el (vc-p4-diff): Reorder let* variables. Don't use
...
`buffer-file-name'.
[git-p4: depot-paths = "//guest/Ben_Key/vc-p4/,//guest/jonathan_kamens/vc-p4/,//guest/magnus_henoch/vc-p4/": change = 7217]
2009-05-19 11:22:59 -08:00