Commit graph

116 commits

Author SHA1 Message Date
2beff7d468 Fix issue with files showing as needs-update in vc-dir
Files that have move/delete as their head action would show up as needing
updates in vc-dir.
2022-03-14 23:47:29 -07:00
f48d5b449c Show P4 file type in vc-dir 2022-03-13 21:25:57 -07:00
99ca65c5cb Change the visited file name of the renamed file's buffer
If ‘p4-vc-rename-file’ is used and the file that's been renamed is open in a
buffer, change that buffer's visited file name so that when you switch to it and
start editing it, it doesn't save to the original file and your modifications
will have to be moved over.
2022-03-02 20:23:04 -08:00
4ecf8cd2bc Fix ‘rename-file’ method name 2022-03-02 16:39:11 -08:00
3d066413de Replace ‘goto-line’ with ‘forward-line’
According to the documentation of ‘goto-line’, it's usually not what you want
for a lisp program. It's not entirely clear why, but I suspect it has something
to do with either hooks run, or some effect it'll have on state.

This commit replaces it with the suggested

    (goto-char (point-min))
    (forward-line (-1 N))

Where N is the argument previously given to ‘goto-line’.
2022-01-23 20:58:25 -08:00
bab0d7083d
Set the current directory in ‘vc-p4-dir-extra-headers’
It seems like it might be possible that this function gets called in the wrong
directory, so just to be sure set the current directory to the one passed in.
This _should_ make sure that ‘p4’ is called in the right directory.
2021-09-16 23:02:04 -07:00
2180dc8535
Replace ‘vc-workfile-version’ with ‘vc-working-revision’
As far as I can tell there is no ‘vc-workfile-version’ function anywhere. There
is a property with that name set on files by vc-p4, but it seems that the
function we’re looking for is actually ‘vc-working-revision’.
2021-09-08 00:22:54 -07:00
b5c4732eb4
Reformat README
I use the ‘org-indent-mode’ now to view org-mode files, which means that
formatting looks even better without having to maintain much along the lines of
indentation.
2021-09-08 00:15:50 -07:00
e84aff5944
Repository information can be viewed in ‘vc-dir’ 2021-09-08 00:14:27 -07:00
905e88a1bd
Remove ‘vc-p4-client’
When I wrote this feature I didn’t realize that this functionality is already
built into Perforce itself. By using the ‘P4CONFIG’ variable you can specify the
name of a file that ‘p4’ will look for that can specify the client (among
others) for that directory and all subdirectories.
2021-09-08 00:12:03 -07:00
0f054faa4d Use the right client for ‘vc-dir’ 2021-03-10 18:10:16 -08:00
461b1357f9 Rename ‘vc-p4-find-version’ to ‘vc-p4-find-revision’
It seems that nothing uses ‘vc-p4-find-version’, or ‘vc-find-version’, and it’s
not mentioned as a function to implement in vc.el. There is a ‘find-revision’
mentioned with the same signature though.
2021-02-27 15:25:22 -08:00
a4c79a8ea3 Fix some warnings 2021-02-27 15:12:12 -08:00
dcb212c410 Fix as many as possible checkdoc issues 2021-02-27 14:09:44 -08:00
48237437e8 Add ‘vc-p4-rename’
In Perforce renaming and deleting and creating files are different things. In
the latter situation any history is lost.
2021-02-24 22:17:00 -08:00
f3423ce275 Add ‘vc-p4-dir-extra-headers’
This function shows extra information in the header of VC dir buffers.
2021-01-28 18:54:27 -08:00
45a6cf8173 Update CHANGELOG 2021-01-28 16:19:39 -08:00
ccccdbe03e Fix the status where a file has changes
VC Expects the backend to report that the status is ‘needs-update’, not
‘needs-patch’. I don’t know if this has changed over the years, but this is what
it needs now.
2021-01-28 16:18:02 -08:00
39efc77e07 Fix ‘vc-p4-checkin’
- The arguments ‘comment’ and ‘rev’ have been switched. I don’t know if this
  used to be different from how it is now, but ‘rev’ comes last now and is
  optional.

- The ‘vc-p4-client’ needs to be collected from the first file in the list of
  files to check in because ‘vc-p4-checkin’ is called from a different buffer
  that isn’t in the same directory.

- ‘vc-p4-client’ also needs to be stored under a different name so that when it
  changes to the ‘*p4-lowlevel-changes*’ buffer it doesn’t clear the value.

- Instead of inserting the specified comment directly, send it through
  ‘log-edit-extract-headers’ which removes the "Summary: " header that
  ‘vc-log-edit’ adds.

- Indent rigidly to ‘tab-width’ instead of 8. Indenting to 8 added too many tabs
  to the description and caused all lines to be prefixed by a tab.
2021-01-25 17:06:41 -08:00
79262464fd Update changelog 2021-01-23 11:21:34 -08:00
b4999a2cac Add README 2021-01-23 11:12:17 -08:00
7af739cc7d Add client argument to ‘vc-p4-delete’ 2021-01-23 10:34:05 -08:00
a9bf4c10ad Add client arg to ‘vc-p4-update-changelog’ 2021-01-23 10:30:34 -08:00
7726d77a94 Add client argument to ‘vc-p4-print-log’ 2021-01-23 10:25:34 -08:00
ed30884133 Add client argument to ‘vc-p4-steal-lock’ 2021-01-23 10:19:13 -08:00
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
174054e58f Add CHANGELOG 2020-05-27 22:24:55 -07:00
079ab80831 Bump version 2020-05-27 22:13:18 -07:00
62e038846b Require at least Emacs 25
I’ve started using ‘alist-get’, which wasn’t added until Emacs 25.
2020-05-27 22:12:28 -07: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
d181ea1e1f Rename deploy -> pages
It needs to be named pages to deploy to gitlab pages.
2020-05-13 22:08:21 -07:00
1281ec775f Make sure the deploy directory exists 2020-05-13 22:03:22 -07:00
2e610ebb9a Fix location of tar files 2020-05-13 22:00:52 -07:00
cbd2d724a5 Don’t need to escape 2020-05-13 21:05:53 -07:00
ddfb19a6fc Load ‘package-x’ which contains the ‘package-upload-file’ function 2020-05-13 20:57:15 -07:00
902d4a070b Escape quotes
oops!
2020-05-13 20:53:36 -07:00
7c272fe107 Try moving the tar file 2020-05-13 20:46:38 -07:00
1f3ea1cd05 Fix .gitlab-ci.yml
- ‘stage’ doesn’t exist as a top-level key.
- It looks like the ‘paths’ in ‘artifacts’ can’t start with a glob.
2020-05-13 20:40:24 -07:00