1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-20 12:40:56 -08:00
Commit graph

317 commits

Author SHA1 Message Date
Sean Whitton
e3614fcc62 Add project-display-buffer and project-display-buffer-other-frame
* lisp/progmodes/project.el (project-display-buffer,
project-display-buffer-other-frame): Add commands.
2020-07-27 02:52:10 +03:00
Sean Whitton
7479c11b4e Factor out project--read-project-buffer from project-switch-buffer
* lisp/progmodes/project.el (project--read-project-buffer): New
function extracted from project-switch-buffer.
* lisp/progmodes/project.el (project-switch-buffer): Instead of
unconditionally reading a project buffer from the user, add
buffer-or-name argument, and populate it using
project--read-project-buffer when called interactively.  Update
docstring.
2020-07-27 02:52:10 +03:00
Dmitry Gutov
19064761ad project-remember-project: New public function
* lisp/progmodes/project.el (project-remember-project):
Rename from project--add-to-project-list-front (bug#42332).
And autoload it.
2020-07-25 03:17:47 +03:00
Dmitry Gutov
4c08c2f45b ; project.el: Talk about equality 2020-07-20 04:07:11 +03:00
Dmitry Gutov
7259377d70 project.el: Add more docs and two new key bindings
* lisp/progmodes/project.el:
Add a longer description of the package and how to use it.
(project-prefix-map): Add entries for
'project-or-external-find-file' and
'project-or-external-find-regexp'.
2020-07-20 03:58:08 +03:00
Philipp Stephani
f700fc1482 Add missing 'require'.
* lisp/progmodes/project.el: Require seq.el explicitly as
'seq-every-p' isn't autoloaded in Emacs 26.3.
2020-07-19 10:32:51 +02:00
Eli Zaretskii
0339325d53 ;* lisp/progmodes/project.el (project-current): Doc fix. 2020-07-12 21:48:39 +03:00
Dmitry Gutov
96173fbfab ; Roll back certain doc changes; clarify what "transient" is 2020-07-12 20:55:23 +03:00
Eli Zaretskii
f5bc508be5 Fix last doc changes in project.el
* lisp/progmodes/project.el (project-find-functions)
(project-current): Add back information which was recently
removed.
2020-07-12 16:57:40 +03:00
Dmitry Gutov
4a467f7591 project-kill-buffers: Update the docstring too
* lisp/progmodes/project.el (project-kill-buffers):
Copy a sentence over from project-switch-to-buffer.
2020-07-12 03:46:37 +03:00
Dmitry Gutov
ebcbd50c53 More docstring updates in project.el
* lisp/progmodes/project.el (project-find-functions)
(project-current, project-switch-to-buffer):
More docstring updates.
2020-07-12 03:39:16 +03:00
Eli Zaretskii
d8e17a4c4e Another minor improvement of project.el doc strings
* lisp/progmodes/project.el (project-find-functions)
(project-current, project-switch-to-buffer): Doc fix.
(project-current): Rename the argument DIR to DIRECTORY.
2020-07-11 15:33:51 +03:00
Dmitry Gutov
86c860f1a1 project-switch-to-buffer: Reword the docstring
* lisp/progmodes/project.el (project-switch-to-buffer):
Reword the docstring, copying the style from project-kill-buffers.
2020-07-11 04:39:58 +03:00
Dmitry Gutov
10a0941f4d ; Revert "; Add a note about a bottleneck"
This reverts commit 9f9ce631a2.

It's still a bottleneck, but so are mapcar (with its effect on GC) and
concat. So our limits show in several places at once.
2020-07-06 04:29:52 +03:00
Dmitry Gutov
9f9ce631a2 ; Add a note about a bottleneck 2020-07-06 03:50:59 +03:00
Dmitry Gutov
3c7bae2337 * lisp/progmodes/project.el: Bump the version. 2020-07-06 00:51:24 +03:00
Dmitry Gutov
bcde7952b3 ; Add a couple of FIXMEs 2020-07-06 00:51:24 +03:00
Dmitry Gutov
4ca13d98c9 project-switch-to-buffer: Don't filter based on default-directory
* lisp/progmodes/project.el (project-switch-to-buffer):
Don't filter based on default-directory
(https://lists.gnu.org/archive/html/emacs-devel/2020-07/msg00075.html).
(project-switch-to-buffer): Ditto.
2020-07-06 00:51:24 +03:00
Basil L. Contovounesios
89c744c380 ; Fix recent indentation in project.el
* lisp/progmodes/project.el (project-ignores, project-find-file-in)
(project-eshell, project--read-project-list): Fix indentation.
2020-06-26 09:37:52 +01:00
Dmitry Gutov
96ff641cd9 project--read-project-list: Add structure verification
* lisp/progmodes/project.el (project--list): Update docstring.
(project--read-project-list): Add structure verification.
2020-06-26 03:43:14 +03:00
Dmitry Gutov
733921edfe project-known-roots: Rename and improve
* lisp/progmodes/project.el (project-known-project-roots):
Rename from 'project-known-roots'.  Update the docstring.  Make
sure the returned value is a list of strings.  Update the caller
(bug#41821).
2020-06-26 03:43:14 +03:00
Dmitry Gutov
beaff813e1 Rename project-kill-buffers-{skip-conditions,ignores}
* lisp/progmodes/project.el (project-kill-buffers-ignores):
Rename from project-kill-buffers-skip-conditions (bug#41868).
Update both references.
Add a :package-version attribute.
2020-06-26 03:43:14 +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
Dmitry Gutov
bea5eb77b3 project-switch-to-buffer: Improve Ido compatibility
* lisp/progmodes/project.el (project-switch-to-buffer):
Check that the entry contains a non-nil CDR.
2020-06-22 16:58:02 +03:00
Dmitry Gutov
2be719827f project-switch-to-buffer: Do not require matching input
* lisp/progmodes/project.el (project-switch-to-buffer):
Do not require matching input, to allow creating buffers as well
(bug#41879).
2020-06-22 16:48:43 +03:00
Theodor Thornhill
a1686c00d0 Forward declare eshell-buffer-name in project-eshell
* lisp/progmodes/project.el: Forward declare 'eshell-buffer-name' so
that 'project-eshell' can use dynamically scoping with it.
2020-06-22 01:49:20 +03:00
Dmitry Gutov
7221d844b1 ; project-shell, project-eshell: Doc fixes 2020-06-22 01:47:55 +03:00
Eli Zaretskii
8df2957df1 Improve doc strings of 'project-shell' and 'project-eshell'
* lisp/progmodes/project.el (project-shell, project-eshell): Doc
fixes.
2020-06-21 19:20:37 +03:00
Basil L. Contovounesios
a4d3897d8f Replace some uses of cl-mapcan with mapcan
* lisp/progmodes/project.el (project-files, project-files):
* lisp/progmodes/xref.el (xref-backend-references)
(xref--convert-hits):
* test/lisp/emacs-lisp/package-tests.el
(package-test-strip-version): Replace cl-mapcan with equivalent
calls to mapcan.
2020-06-21 14:33:16 +01:00
Dmitry Gutov
a1b487eac0 ; project-shell, project-eshell: Docstring tweaks 2020-06-21 04:19:29 +03:00
Theodor Thornhill
c1056b0387 Pop to an existing Eshell buffer by default
* lisp/progmodes/project.el (project-shell): Improve docstring to
include information about an implementation detail.

* list/progmodes/project.el (project-eshell): Modelled after
'project-shell', change default behavior such that we don't create too
many eshell buffers by default.  Use universal argument to create
subsequent buffers.
2020-06-21 04:07:44 +03:00
Theodor Thornhill
be5d0c0f63 project-shell: Pop to an existing shell buffer by default
* lisp/progmodes/project.el (project-shell):
Pop to an existing shell buffer by default.
If there's none, or if universal argument is used, open a subsequent
shell buffer and jump to it.  Prefix shell buffer name with the base
name of project root directory. (Bug#41858)
2020-06-20 04:02:18 +03:00
Eli Zaretskii
2eda8199bf Fix last change in doc strings of project.el
* lisp/progmodes/project.el (project-switch-to-buffer): More accurate
doc string.
2020-06-19 21:50:30 +03:00
Eli Zaretskii
1e3b0f2d95 Improve doc strings of project.el
* lisp/progmodes/project.el (project-dired, project-shell)
(project-eshell, project-switch-to-buffer, project-kill-buffers)
(project-list-file, project--read-project-list)
(project--ensure-read-project-list, project--write-project-list)
(project--add-to-project-list-front)
(project--remove-from-project-list, project-prompt-project-dir)
(project-switch-commands, project-switch-project): Fix wording and
formatting of doc strings.
2020-06-19 10:52:00 +03:00
Andrii Kolomoiets
6fe5c21c72 project-switch-to-buffer: Use the "other buffer" as default
* lisp/progmodes/project.el
(project-switch-to-buffer): Pass the "other buffer" as DEF to
read-buffer if it belongs to the current project (bug#41879).
2020-06-19 03:44:01 +03:00
Dmitry Gutov
363d981811 Add binding for project-kill-buffers
* lisp/progmodes/project.el (project-prefix-map):
Add binding for project-kill-buffers (bug#41868).
2020-06-18 18:42:38 +03:00
Philip K
7c177ecb84 New command: project-kill-buffers
* lisp/progmodes/project.el
(project-kill-buffers-skip-conditions): New variable.
(project--buffer-list): New function.
(project-kill-buffers): New command (bug#41868).
2020-06-18 04:04:13 +03:00
Dmitry Gutov
4b9b9cb43a ; Add a heading and a binding 2020-06-18 02:11:51 +03:00
Theodor Thornhill
eb3b03c1c6 New command: project-switch-to-buffer
* lisp/progmodes/project.el (project-switch-to-buffer): New command.
2020-06-18 02:09:41 +03:00
Theodor Thornhill
2f231fcfb7 Add global bindings for project commands
* lisp/progmodes/project.el
(project-prefix-map): New variable.
Add the new keymap to ctl-x-map.
2020-06-18 02:05:31 +03:00
Dmitry Gutov
2cc48d3d10 Fix setting project-vc-merge-submodules via .dir-locals.el
* lisp/progmodes/project.el
(project--vc-merge-submodules-p): New function.
(project-try-vc, project--vc-list-files): Use it.
2020-06-18 01:30:32 +03:00
Dmitry Gutov
3bff583337 Bump the project.el package version
* lisp/progmodes/project.el: Bump the package version.
2020-06-17 01:27:37 +03:00
Dmitry Gutov
1d2c0a2527 Change the key for project-find-regexp
* lisp/progmodes/project.el (project-switch-commands):
Change the key for 'project-find-regexp' to 'g', which seems to be
the consensus.
2020-06-17 01:24:40 +03:00
Dmitry Gutov
6e777a6639 Make project file name completion adhere to customization
* lisp/progmodes/project.el (project-find-file-in):
Bind completion-ignore-case to the value of
read-file-name-completion-ignore-case (bug#41902).
2020-06-17 01:24:40 +03:00
Basil L. Contovounesios
9e04d0f289 ; Simplify last change
* lisp/progmodes/project.el (project--read-project-list): We are
already at BOB after insert-file-contents.
2020-06-10 01:00:01 +01:00
Simen Heggestøyl
d4e7087b68 Save project list as lisp data
Save the project list file as lisp data instead of line separated
strings to make it more extendable in the future.

* lisp/progmodes/project.el (project--read-project-list)
(project--write-project-list, project--add-to-project-list-front)
(project--remove-from-project-list): Adjust to `project--list' now
being an alist.
2020-06-09 20:45:55 +02:00
Simen Heggestøyl
f4568bac56 Change default project list filename to "projects"
* lisp/progmodes/project.el (project-list-file): Change the default
filename to "projects".
2020-06-04 20:16:54 +02:00
Simen Heggestøyl
e7fb0a48a6 Use characters for keys in project-switch-commands
* lisp/progmodes/project.el (project-switch-commands): Use
characters for keys instead of string for better future
compatibility with 'read-multiple-choice'.
(project-switch-project): Adjust to above change.
2020-06-04 20:14:02 +02:00
Simen Heggestøyl
b41be0ee83 ; Small cleanup in project.el
* lisp/progmodes/project.el (project--add-to-project-list-front):
Minor simplification after recent changes.
2020-06-04 20:11:58 +02:00
Basil L. Contovounesios
74966904b0 ; Clean up recent project.el additions
* lisp/progmodes/project.el (project): Add :version tag.
(project-list-file): Fix custom :type and add :version tag.
2020-06-03 11:45:54 +01:00