Commit graph

84 commits

Author SHA1 Message Date
Andrii Kolomoiets
a1d9463ae7 Save and restore point in ewoc-invalidate
* lisp/emacs-lisp/ewoc.el (ewoc--refresh-node): Save and restore point line
and column offset.
(eowc-map) (ewoc--invalidate) (ewoc-set-hf): Don't use save-excursion
* lisp/vc/vc-dir.el (vc-dir-update): Don't save/restore point on calling
'ewoc-invalidate'.
2020-09-18 11:53:32 -04:00
Andrii Kolomoiets
f450798cb0 Don't move point in vc-dir on vc-register/vc-checkin (bug#43188)
* lisp/vc/vc-dir.el (vc-dir-update):
  Save and restore point on 'ewoc-invalidate'.
* lisp/vc/vc-dispatcher.el (vc-finish-logentry):
  Don't call 'vc-dir-move-to-goal-column'.
* lisp/vc/vc.el (vc-register): Don't call 'vc-dir-move-to-goal-column'.
2020-09-05 00:16:39 +03:00
Juri Linkov
c70a3a4163 Revert feature added in bfd96e995d using project directories in vc (bug#41821) 2020-07-02 01:08:18 +03:00
Juri Linkov
bfd96e995d M-n in read-directory-name of vc commands gets project dirs (bug#41821)
* lisp/progmodes/project.el (project-known-roots): New autoloaded function.

* lisp/vc/vc-hooks.el (vc-known-roots): New function.

* lisp/vc/vc.el (vc-root-diff, vc-print-root-log):
* lisp/vc/vc-dir.el (vc-dir): Use 'vc-known-roots' for default
values for read-directory-name.
2020-06-24 02:59:31 +03:00
Juri Linkov
ce4ec17930 Fix display-buffer-override-next-command to call action only once (bug#39722)
* lisp/vc/vc-dir.el (vc-dir-bookmark-jump): Don't use save-window-excursion.

* lisp/window.el (display-buffer-override-next-command): Reset
display-buffer-overriding-action after the first buffer display action.

* lisp/tab-bar.el (switch-to-buffer-other-tab): Don't reuse frame tabs.
(other-tab-prefix): Don't reuse frame tabs.
2020-06-22 02:36:16 +03:00
Matthias Meulien
0bfee4b18b Bookmark locations can refer to VC directory buffers (bug#39722)
* etc/NEWS: Document feature.
* lisp/vc/vc-dir.el (vc-dir-mode): Set local bookmark-make-record-function.
(bookmark-make-record-default, bookmark-prop-get, bookmark-default-handler)
(bookmark-get-bookmark-record): Declarations.
(vc-dir-bookmark-make-record): Make record used to bookmark a `vc-dir' buffer.
(vc-dir-bookmark-jump): Provides bookmark-jump behavior for a `vc-dir' buffer.
2020-05-21 01:37:30 +03:00
Juri Linkov
adfcc17e6f * lisp/vc/vc-dir.el: Commands to mark un/registered files (bug#34949)
* lisp/vc/vc-dir.el (vc-dir-mark-state-files): New function.
(vc-dir-mark-registered-files)
(vc-dir-mark-unregistered-files): New commands.
(vc-dir-mode-map): Bind vc-dir-mark-registered-files to '* r'.
(vc-dir-menu-map): Add menu entries for
vc-dir-mark-registered-files and vc-dir-mark-unregistered-files.
2020-04-03 01:08:09 +03:00
Juri Linkov
7a6f5a5167 Support state changing VC operations on directories in Dired (bug#34949)
* lisp/dired-aux.el (dired-vc-next-action): New command.
(dired-vc-deduce-fileset): Rename from vc-dired-deduce-fileset in vc.el.

* lisp/dired.el (dired-mode-map): Remap vc-next-action to
dired-vc-next-action.

* lisp/vc/vc-dir.el (vc-dir-mark-files): New function.
(vc-dir-refresh): Run hook vc-dir-refresh-hook.

* lisp/vc/vc.el (vc-deduce-fileset): Rename arg 'observer' to
'not-state-changing' and document it in docstring.
(vc-dired-deduce-fileset): Rename to dired-vc-deduce-fileset in dired-aux.el.

* lisp/cedet/ede.el (ede-turn-on-hook, ede-minor-mode):
* lisp/desktop.el (desktop-minor-mode-table): Rename the long ago
obsolete vc-dired-mode to vc-dir-mode.
2020-03-30 01:34:47 +03:00
Juri Linkov
52fab66c27 * lisp/vc/vc-dir.el (vc-dir-root): New command (bug#12492, bug#34949).
* lisp/vc/vc-hooks.el (vc-menu-map): Change menu command from
'vc-dir' to 'vc-dir-root'.
2020-03-29 02:08:05 +02:00
Dmitry Gutov
9ec6eb1065 vc-dir-ignore: More accurately choose base directory
* lisp/vc/vc-dir.el:
(vc-dir-ignore): Use it (bug#37189).

* lisp/vc/vc.el:
(vc--ignore-base-dir): Extract from vc-ignore.
2020-02-25 01:03:42 +02:00
Dmitry Gutov
dd5756436c Move more logic to vc-ignore from vc-default-ignore
* lisp/vc/vc-dir.el (vc-dir-ignore):
Pass relative file names to vc-ignore.

* lisp/vc/vc.el (vc-ignore): Move the responsibility of
constructing the ignore pattern (right now, most often a relative
file name) using a file name received from the user, here.
(vc-default-ignore): ...from here (bug#37189, see discussion).
Also clarify the docstring.
2020-02-23 01:51:38 +02:00
Wolfgang Scherer
2b12c2b6f2 Make sure not to mark directories
* lisp/vc/vc-dir.el (vc-dir-mark-all-files):
Make sure not to mark directories (bug#37182).
2020-02-12 00:29:40 +02:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Dmitry Gutov
2c8f1539ab Speed up vc-dir-update
* lisp/vc/vc-dir.el (vc-dir-update): Speed up.
(https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00568.html)
2019-12-21 00:12:44 +02:00
Wolfgang Scherer
c99c9ec28c Provide facility to ignore all marked files in vc
* lisp/vc/vc-dir.el: (vc-dir-ignore) With prefix argument, ignore all
marked files (bug#37240).
2019-09-15 15:00:20 +02:00
Juri Linkov
6253541c76 * lisp/vc/vc-dir.el (vc-dir-search): Remove lambda.
(Bug#31578) Thanks to Dmitry Gutov <dgutov@yandex.ru>
2019-07-16 01:12:12 +03:00
Noam Postavsky
150aec0af3 Use ngettext in vc-dir-clean-files
* lisp/vc/vc-dir.el (vc-dir-clean-files): Use ngettext to separate
pluralization from format string.
2019-07-14 10:04:22 -04:00
Lars Ingebrigtsen
d3256dc78a Rename vc-dir-delete-files-no-vc to vc-dir-clean-files
* doc/emacs/maintaining.texi (VC Directory Commands): Adjust
command name.

* lisp/vc/vc-dir.el (vc-dir-clean-files): Rename from
vc-dir-delete-files-no-vc, and work on unregistered files only
(bug#31732).
(vc-dir-menu-map): Adjust command name.
2019-07-14 14:25:44 +02:00
Lars Ingebrigtsen
a3509a71c0 Add a new command in vc-dir mode to delete files
* doc/emacs/maintaining.texi (VC Directory Commands): Document it.

* lisp/vc/vc-dir.el (vc-dir-delete-files-no-vc): New command and
keystroke (bug#31732).
2019-07-13 06:10:29 +02:00
Juri Linkov
147a2a8861 * lisp/vc/vc-dir.el (vc-dir-view-file): New command for consistency with dired
* lisp/vc/vc-git.el (vc-git-log-incoming, vc-git-log-outgoing):
Remove interactive spec from non-command functions.  (Bug#12492)
2019-07-08 01:54:29 +03:00
Stefan Monnier
5f485a2fc0 * lisp/vc/vc-dir.el (vc-dir-search): Avoid eval. 2019-06-20 17:45:52 -04:00
Lars Ingebrigtsen
e25d6cb038 Use fileloop directly in vc-dir to avoid obsolete function
* lisp/vc/vc-dir.el (vc-dir-query-replace-regexp): Rewrite to use
fileloop directly to avoid the obsolete function
tags-query-replace.
2019-06-16 15:21:17 +02:00
Paul Eggert
852d281769 Update author/maintainer info
Update email addresses and fix spellings of some author and
maintainer names.
2019-05-26 01:00:16 -07:00
Paul Eggert
ba809612c0 Merge from origin/emacs-26
2fcf2df Fix copyright years by hand
26bed8b Update copyright year to 2019
2814292 Fix value of default frame height.  (Bug#33921)
2018-12-31 17:57:29 -08:00
Paul Eggert
26bed8ba10 Update copyright year to 2019
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2019-01-01 01:01:13 +00:00
Glenn Morris
e0f18aa07f Merge from origin/emacs-26
675edec (origin/emacs-26) Fix some allout.el aliases
b2c069a * lisp/progmodes/ada-mode.el (ada-clean-buffer-before-saving)...
2f5420c Doc fixes re obsolete items
9edf82a Replace an obsolete alias in tpu-mapper
a643792 Doc fixes re obsolete items
3060fb8 Minor changes in mule.texi
3e39897 Avoid assertion violation under visual-order-cursor-movement
e4b73ab Stop mentioning options.el in doc
05669f0 ; * lisp/minibuffer.el (completion-cycle-threshold): Fix last...
758597f * lisp/vc/vc-dir.el (vc-dir-unmark): Fix documentation.
62f0a2b * lisp/minibuffer.el (completion-cycle-threshold): Doc fix.
761845c Fix last change in Xref documentation
5186675 More changes in the Emacs manual
b1aaa72 Improve documentation of Xref

Conflicts:
	lisp/w32-fns.el
2018-03-13 18:13:26 -07:00
Charles A. Roelli
758597fb3e * lisp/vc/vc-dir.el (vc-dir-unmark): Fix documentation. 2018-03-12 20:16:53 +01:00
Paul Eggert
bb267f17f9 Merge from origin/emacs-26
63b04c11d5 Fix copyright years by hand
5c7dd8a783 Update copyright year to 2018
220a9ecba1 Merge from Gnulib
312c565566 Don't add empty keyboard macro to macro ring (Bug#24992)
39ca289a7a Allow customization of decoding of "man" command
f8240815ea * etc/NEWS: Add security consideration note on passphrase ...
0c78822c70 Fix subtle problem with scroll-down when scroll-margin is ...
acd289c5a4 Fix problems with indexing in User manual
b240c7846b * lisp/help.el (describe-key): Only (copy-sequence elt) wh...
e879a5444a * src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846
81b1028b63 Improve documentation of 'inhibit-modification-hooks' and ...
7175496d7a Fix doc string of 'enable-recursive-minibuffers'
5b38406491 Fix documentation of delsel and of killing text

# Conflicts:
#	etc/NEWS
#	etc/refcards/ru-refcard.tex
2018-01-01 01:13:04 -08:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Charles A. Roelli
9685774e38 Fix infinite loop in vc-dir-mark-unmark
* lisp/vc/vc-dir.el (vc-dir-mark-unmark): Prevent from getting
stuck on the same line in an infinite loop.  (Bug#24017)
2017-12-18 20:56:03 +01:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Tom Tromey
9e9d381ff0 Add more branch support to vc-dir
Bug#25859:
* lisp/vc/vc-dir.el (vc-dir-mode-map) Add "B" bindings.
* lisp/vc/vc.el (vc-revision-history): New defvar.
(vc-read-revision): Use vc-revision-history.
(vc-print-branch-log): New function.
* doc/emacs/maintaining.texi (VC Directory Commands): Document new
bindings.
* etc/NEWS: Mention new vc-dir bindings.
2017-02-25 10:46:13 -07:00
Tom Tromey
0a670690f1 vc-log-outgoing fixes for git; add binding to vc-dir
* lisp/vc/vc-dir.el (vc-dir-mode-map): Bind "O" to vc-log-outgoing.
* lisp/vc/vc-git.el (vc-git-log-outgoing, vc-git-log-incoming): Use
async execution.
(vc-git-log-view-mode): Also truncate lines for log-outgoing and
log-incoming.
* lisp/vc/vc.el (vc-log-incoming, vc-log-outgoing): Don't pass nil
as remote-location argument.
2017-02-19 21:01:28 -07:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Juri Linkov
d2f73db50b Bind [?\S-\ ] to previous line command in Dired-like modes.
* lisp/arc-mode.el (archive-mode-map):
* lisp/dired.el (dired-mode-map):
* lisp/proced.el (proced-mode-map):
* lisp/vc/vc-dir.el (vc-dir-mode-map):
Bind [?\S-\ ] to previous line command.
(Bug#20790)
2015-11-12 22:54:01 +02:00
Dmitry Gutov
513fe25a50 Call vc-dir-defresh after stash operations
* lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
(vc-git-stash-pop-at-point): Call vc-dir-defresh (bug#13960).

* lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
since it can be abbreviated (as returned by vc-find-root).
2015-10-20 22:07:20 +03:00
Glenn Morris
660c30cc8c Add basic VC push support.
* lisp/vc/vc.el (vc-push): New autoloaded command.
* lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
* lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
(vc-bzr-pull): Reimplement using vc-bzr--pushpull.
(vc-bzr-push): New.
* lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
(vc-git-pull): Reimplement using vc-git--pushpull.
(vc-git-push): New.
* lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
(vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
* doc/emacs/maintaining.texi (Pulling / Pushing):
Rename from "VC Pull".  Mention pushing.
(VC With A Merging VCS, VC Change Log): Update xrefs.
(Branches): Update menu.
* doc/emacs/emacs.texi: Update menu.
* etc/NEWS: Mention this.
2015-05-12 20:42:42 -04:00
Daniel Colascione
f302475471 Make vc-dir default to repository root
* lisp/vc/vc-dir.el (vc-dir): Default to repository root, not
default-directory.
2015-01-19 21:45:25 -08:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Juri Linkov
df0f2a5f3b * lisp/vc/vc-dir.el (vc-dir-display-file): New command.
(vc-dir-mode-map): Bind it to "\C-o".
(vc-dir-menu-map): Add it to menu.

Fixes: debbugs:19450
2014-12-29 02:47:05 +02:00
Paul Eggert
d19bf72ac9 Spelling fixes 2014-12-12 18:42:57 -08:00
Eric S. Raymond
b1a765b3a8 In vc, abolish the dir-status method. 2014-12-02 10:11:48 -05:00
Eric S. Raymond
d4767877ac Eliminate an unuted function argument.
* vc.el, all backends: API simplification: Remove 4th 'default-state'
argument from vc-dir-status files and its backend methods - no backend
method ever set it.  It was used only in the fallback method to to set
a default of 'up-to-date, though a convoluted call chain obscured
this.
2014-12-02 08:01:46 -05:00
Dmitry Gutov
91982ede58 Fix bug#18964
* lisp/vc/vc-dir.el (vc-dir-hide-state): Also hide `ignored' items when
no state is specified.
2014-11-10 03:29:58 +02:00
Stefan Monnier
6ac5571c62 * lisp/vc/vc-dir.el (vc-dir-update): Don't burp in corner case. 2014-09-05 13:37:12 -04:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Xue Fuqiao
d052d3bdf3 Add keybinding for vc-log-incoming in vc-dir.
* doc/emacs/maintaining.texi (VC Directory Commands): Add keybinding for
vc-log-incoming in vc-dir.
* lisp/vc/vc-dir.el (vc-dir-mode-map): Add keybinding for vc-log-incoming.
2013-09-21 16:16:13 +08:00
Xue Fuqiao
99191b89ff Merge from mainline. 2013-08-04 10:59:08 +08:00
Xue Fuqiao
ab419665ca Cleanup for vc-ignore.
* vc/vc.el (vc-ignore): Rewrite.
(vc-default-ignore-completion-table):
(vc--read-lines):
(vc--add-line, vc--remove-regexp): New functions.

* vc/vc-svn.el (vc-svn-ignore): Doc fix.
(vc-svn-ignore-completion-table): New function.

* vc/vc-hg.el (vc-hg-ignore): Rewrite.
(vc-hg-ignore-completion-table):
(vc-hg-find-ignore-file): New functions.

* vc/vc-git.el (vc-git-ignore): Rewrite.
(vc-git-ignore-completion-table):
(vc-git-find-ignore-file): New functions.

* vc/vc-dir.el (vc-dir-menu-map): Add menu for vc-dir-ignore.

* vc/vc-bzr.el (vc-bzr-ignore): Rewrite.
(vc-bzr-ignore-completion-table):
(vc-bzr-find-ignore-file): New functions.
2013-08-04 10:55:45 +08:00