1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-18 00:50:44 -08:00
Commit graph

150286 commits

Author SHA1 Message Date
Dmitry Gutov
e646cb4e7a A bit less overhead when converting hits
* lisp/progmodes/xref.el (xref--collect-matches):
Move 'remote-id' and 'syntax-needed' definitions to the caller
function.  Bind 'inhibit-modification-hooks' to t (bug#50733).
2021-09-23 21:45:16 +03:00
Eli Zaretskii
0101e86df2 ; Fix recently installed documentation
* etc/NEWS:
* lisp/thingatpt.el
(thing-at-point-bounds-of-list-or-string-at-point): Clarify
wording of the documentation of 'list-or-string'.
2021-09-23 21:08:19 +03:00
Dmitry Gutov
90a7233199 More per-match overhead reduction
* lisp/progmodes/xref.el (xref--show-common-initialize)
(xref-revert-buffer): Inhibit modification hooks (bug#50733).
(xref--insert-xrefs): Cosmetics (no measurable difference here).
2021-09-23 20:37:11 +03:00
Dmitry Gutov
d0e9b88bf7 xref-matches-in-files: Decrease per match and per group overhead
* lisp/progmodes/xref.el (xref-search-program-alist):
Add '--null' argument for slightly faster parsing and probably
better behavior with weirder file names.
(xref--alistify): Don't accept TEST argument, use 'assoc' instead
of 'cl-assoc', use a tash table during sorting (bug#50733).
2021-09-23 20:37:10 +03:00
Philip Kaludercic
c44190ca5b Fix string-distance for two empty strings
* fns.c (Fstring_distance): Avoid using uninitialized memory.
* test/src/fns-tests.el (test-string-distance): Add test cases.
2021-09-23 19:10:38 +02:00
Juri Linkov
13d930dedd * lisp/mouse.el (context-menu-region): Use save-excursion for syntax-ppss. 2021-09-23 19:52:49 +03:00
Juri Linkov
5d96fad278 New thing-at-point target 'list-or-string' used in context-menu-region
* lisp/mouse.el (context-menu-region): Rearrange the order to
All>Defun>List>Line>Symbol.  Show title either "List" or "String"
depending on syntax-ppss, then use thing 'list-or-string' (bug#9054).

* lisp/thingatpt.el (thing-at-point-bounds-of-list-at-point): Add optional
args 'escape-strings' and 'no-syntax-crossing' like in 'up-list'.
(list-or-string): New target 'list-or-string'.
(thing-at-point-bounds-of-list-or-string-at-point): New function.
2021-09-23 19:32:36 +03:00
Juri Linkov
da50b7ec13 * lisp/outline.el (outline-minor-mode-cycle-filter): New defcustom (bug#50679)
(outline-minor-mode-cycle--bind): New helper function.
(outline-minor-mode-cycle-map): Rename from outline-mode-cycle-map.
(outline-mode-map): Revert part of 6458e16f33 to disassociate
keymaps outline-mode-map and outline-minor-mode-cycle-map.
(outline-font-lock-keywords, outline-minor-mode-highlight-buffer):
Use outline-minor-mode-cycle-map instead of outline-mode-cycle-map.

* lisp/help.el (describe-bindings): Rename outline-mode-cycle-map
to outline-minor-mode-cycle-map.
2021-09-23 19:14:56 +03:00
Wilson Snyder
ebe8b8f89e ; * lisp/progmodes/verilog-mode.el: Untabify doc-strings. 2021-09-23 11:43:29 -04:00
Michael Albinus
de7b9e31c4 * test/infra/Dockerfile.emba: Do not run 'make -j4 bootstrap'. 2021-09-23 16:04:35 +02:00
Eli Zaretskii
35e29d9d07 ; * etc/NEWS: Fix typos and punctuation in recently added entries. 2021-09-23 16:22:31 +03:00
Michael Albinus
72f8a9dd08 Fix Tramp's make-process on macOS
* lisp/net/tramp-sh.el (tramp-get-remote-mknod-or-mkfifo): New defun.
(tramp-sh-handle-make-process): Use it.  (Bug#50748)
2021-09-23 14:29:28 +02:00
Michael Albinus
23970e27ee * lisp/net/tramp-cmds.el (tramp-cleanup-connection): Remove trace buffer. 2021-09-23 14:28:42 +02:00
Philip Kaludercic
aef84c5f17 Add aggregate project discovery and maintenance functions
* project.el (project-remember-project): Add optional no-write argument
(project-remember-projects-under): Add command
(project-forget-zombie-projects): Add command
(project-forget-projects-under): Add command
* etc/NEWS: Document new commands
2021-09-23 14:07:00 +02:00
Dmitry Gutov
46a2c191f2 Fix vc-annotate-show-log-revision-at-line
* lisp/vc/vc-annotate.el (vc-annotate-show-log-revision-at-line):
Stop from being affected by 'vc-git-print-log-follow'.

* lisp/vc/vc-git.el (vc-git-print-log-follow):
Mention caveats in a comment.
2021-09-23 14:53:46 +03:00
Wilson Snyder
a6a1c8600f verilog-mode.el: Backout part of recent change showing wrong comment 2021-09-23 07:36:02 -04:00
Stefan Kangas
d817f88578 Clarify which-function tooltip text
* lisp/progmodes/which-func.el (which-func-format): Clarify tooltip
text.
2021-09-23 13:23:29 +02:00
Robert Pluim
6f790403a2 Improve NEWS entry for 'ffap-file-name-with-spaces'
* etc/NEWS: Mention default value of 'ffap-file-name-with-spaces'.
2021-09-23 11:10:34 +02:00
Martin Rudalics
d75b5c977d ;* lisp/whitespace.el (whitespace-display-window): Add doc-string. 2021-09-23 09:41:32 +02:00
Eli Zaretskii
47376da7e2 ; * lisp/subr.el (match-string): Clarify doc string. 2021-09-23 10:36:59 +03:00
Lars Ingebrigtsen
90547d370f Clarify align-regexp doc string
* lisp/align.el (align-regexp): Clarify what REGEXP has to
contain, and which bits are added automatically interactively
(bug#33541).
2021-09-23 00:18:21 +02:00
Stefan Kangas
bf0c072913 Add section to refcard explaining our keybinding notation
* etc/refcards/refcard.tex (Starting Emacs): Delete section.
(Key Binding Notation): New section.  (Bug#41403)
2021-09-23 00:15:50 +02:00
Stefan Kangas
3443506159 Use lexical-binding in emoji-zwj.el
* admin/unidata/emoji-zwj.awk: Add lexical-binding cookie to
generated fie emoji-zwj.el.
2021-09-23 00:15:40 +02:00
Lars Ingebrigtsen
866c1f56a3 Expand the `match-string' doc string
* lisp/subr.el (match-string): Mention some caveats (bug#34214).
2021-09-23 00:09:47 +02:00
Lars Ingebrigtsen
bb3a045501 Improve error messaging from byte-compiling dotted lists
* lisp/emacs-lisp/cconv.el (cconv-analyze-form): Improve error
messaging when byte-compiling dotted lists (bug#35186).

Test case -- byte-compile the following file:

;;;  -*- lexical-binding: t -*-

(defun foo ()
  (+ 1 2)
  (a . b))
2021-09-22 23:47:04 +02:00
Stefan Kangas
25019f5e24 ; * etc/NEWS: Fix typo in last commit. 2021-09-22 23:43:49 +02:00
Lars Ingebrigtsen
efdb89f15b Move 'kdb-macro-redisplay' key binding
* doc/emacs/kmacro.texi (Basic Keyboard Macro): Adjust.

* lisp/kmacro.el (kmacro-keymap): Move 'kdb-macro-redisplay' to
`C-x C-k d' since upper-case letters are reserved for users (bug#50727).
2021-09-22 21:56:31 +02:00
Stefan Kangas
aebba085cb ; More minor stylistic fixes found by checkdoc 2021-09-22 20:26:40 +02:00
Dmitry Gutov
7f06fe894c Put './' in the project directory completions
* lisp/progmodes/project.el (project--read-file-cpd-relative):
Put './' in the completions set when cpd was in the original
(bug#50732).
2021-09-22 21:08:42 +03:00
Eli Zaretskii
8816d67c61 ; Fix recently added documentation
* lisp/thingatpt.el (bounds-of-thing-at-mouse, thing-at-mouse):
Improve and clarify the doc strings.
2021-09-22 20:45:47 +03:00
Juri Linkov
ac6afe9c33 Many improvements for Context Menus (bug#9054)
* lisp/menu-bar.el (menu-bar-showhide-menu): Add "Context Menus".

* lisp/mouse.el (context-menu-undo): Add "in Region" to the titles
when the region is active.
(context-menu-region): Use 'mouse-yank-from-menu' in menu items
created from 'yank-menu' for submenu "Paste from Kill Menu".
(context-menu-region): Add submenu "Select" with things to mark.
(mark-thing-at-mouse, mouse-yank-from-menu): New functions.

* lisp/thingatpt.el (bounds-of-thing-at-mouse): New function.

* lisp/progmodes/elisp-mode.el (elisp-context-menu):
* lisp/progmodes/prog-mode.el (prog-context-menu):
Use full symbol/identifier names in :help strings.

Suggested by Martin Rudalics <rudalics@gmx.at>
2021-09-22 20:08:45 +03:00
Eli Zaretskii
2386b08526 Fix build with native compilation but without zlib
* src/comp.c (comp_hash_source_file): Condition code that requires
zlib with HAVE_ZLIB.

* etc/NEWS: Explain that '--without-compress-install' is necessary
when configuring with native compilation but without zlib.
2021-09-22 19:13:49 +03:00
Wilson Snyder
eb42c4b099 verilog-mode.el: Enable lexical binding, and merge from upstream.
* lisp/progmodes/verilog-mode.el: Enable lexical binding.  Templates that
  used the never-documented `inst' or `submod' variables may need to change
  to use vl-... variables.
  (verilog-at-constraint-p): Fix indentation on double curly brackets
  (#1719) (#1744).  Reported by Nikolay Puzanov.
2021-09-22 10:19:57 -04:00
Mattias Engdegård
6ad77d36fd Don't rely on lexical-binding being nil in tests
* test/lisp/button-tests.el (button--help-echo-form):
* test/lisp/files-tests.el (files-tests-permanent-local-variables):
Remove assumption that `with-temp-buffer` creates a buffer
where `lexical-binding` is nil.
2021-09-22 15:42:41 +02:00
Eli Zaretskii
8213729c93 ; * .gitignore: Add native-lisp/. 2021-09-22 16:03:39 +03:00
Eli Zaretskii
959d647568 Doc string fixes in comp.e
* src/comp.c (Fcomp_el_to_eln_filename)
(Fcomp_el_to_eln_rel_filename): Doc fix.
2021-09-22 16:01:30 +03:00
Eli Zaretskii
7973227f67 Update comments warning about GC-resistant C programming
* src/eval.c: Remove an outdated comment about protection from GC.
* src/buffer.h:
* src/lisp.h: Add warnings about using 'char *' pointers to text
of Lisp strings and buffer text in code that could GC.  Reported by
Po Lu <luangruo@yahoo.com>
2021-09-22 10:07:25 +03:00
Daniel Fleischer
3d575534d4 Native compilation on macOS: libgccjit not found
* etc/PROBLEMS: Describe the problem with libgccjit setup on
macOS.  (Bug#50411)
2021-09-22 09:46:29 +03:00
Stephen Gildea
e402a21704 ; * doc/misc/mh-e.texi (Scan Line Formats): Fix typo, an extra "the". 2021-09-21 22:34:35 -07:00
Lars Ingebrigtsen
f2bd2386a7 Speed up `replace-match' slightly
* src/search.c (Freplace_match): Speed up non-literal (but
actually literal) common case.

This makes

(benchmark-run 1000000
  (replace-regexp-in-string
  "a+" "foo"
  "ogihdipofdhookfdohkfdpokhpokhfdpokfdhpokfdhkdfkhgoadfphokfkhpofdkhkdpokf"))

about 10% faster.
2021-09-22 07:22:22 +02:00
Stephen Gildea
7ce721bdac Migrate MH-E functional tests from SourceForge
* test/lisp/mh-e/mh-limit-tests.el:
* test/lisp/mh-e/mh-utils-tests.el:
* test/lisp/mh-e/mh-xface-tests.el:
Import the functional tests from src/mh-unit.el.

mh-unit.el is from the old SourceForge mh-e repository, last changed
in 2017.  To this are applied unmerged patches Mike Kupfer wrote in
2018 ("Refactor mh-unit into functional and release tests" and
"Fix the functional tests").

All tests have been converted to run under Emacs's ERT framework.

Some tests for mh-utils use MH programs to examine mail folders.
These tests require an MH variant to be installed on the system; for
these, added both a mock harness that pretends the needed files and MH
programs do exist, and a wrapper that creates the necessary mail files.

New function 'mh-test-utils-setup-with-variant' bears some resemblance
to 'mh-test-folders-set-up' from the original tests.  New function
'mh-test-utils-setup-with-mocks' is new functionality for these tests.
2021-09-21 22:03:08 -07:00
Lars Ingebrigtsen
2a73673809 Change how thread-first/thread-last indent the first argument
* lisp/doc-view.el (doc-view--current-cache-dir): Reindent.

* lisp/emacs-lisp/subr-x.el (thread-first):
(thread-last): Change indentation to match examples.
(internal--build-binding): Reindent.

* test/lisp/emacs-lisp/subr-x-tests.el
(subr-x-test-thread-first-function-names-are-threaded):
(subr-x-test-thread-first-examples):
(subr-x-test-thread-last-function-names-are-threaded):
(subr-x-test-thread-last-examples): Reindent.
2021-09-22 05:57:48 +02:00
Lars Ingebrigtsen
8a8319140c Make global-auto-revert-non-file-buffers work better
* lisp/autorevert.el (global-auto-revert-mode): Always switch on
the non-file tracking.
(auto-revert--global-possibly-adopt-current-buffer): New function
to respect dynamically changing `global-auto-revert-non-file-buffers'.
2021-09-21 23:09:38 +02:00
Stefan Monnier
e000a7ab10 (etc-authors-mode--hide-local-variables): Obfuscate more efficiently 2021-09-21 16:53:25 -04:00
Stefan Kangas
7f5ac1468d ; * etc/NEWS: Improve wording of an item.
* lisp/emacs-lisp/hierarchy.el: Improve wording of package description.
2021-09-21 22:21:31 +02:00
Stefan Kangas
b58228903f Fix warning in etc-authors-mode.el
* lisp/textmodes/etc-authors-mode.el
(etc-authors-mode--hide-local-variables): Avoid warning.
2021-09-21 22:21:31 +02:00
Lars Ingebrigtsen
85e9e5f616 Don't quote nil and t in doc strings and comments
* test/src/minibuf-tests.el (test-try-completion-ignore-case):
* test/lisp/url/url-auth-tests.el
(url-auth-test-digest-auth-retrieve-cache):
* test/lisp/subr-tests.el (subr-tests-add-hook-depth):
* test/lisp/so-long-tests/so-long-tests.el
(so-long-tests-invisible-buffer-function):
* test/lisp/emacs-lisp/tabulated-list-test.el (tabulated-list-sort):
* src/xfaces.c:
* src/process.c (Finterrupt_process):
(syms_of_process):
* src/minibuf.c (Fread_from_minibuffer):
(Fcompleting_read):
(syms_of_minibuf):
* src/dispnew.c (syms_of_display):
* src/data.c:
* lisp/so-long.el (so-long--hack-local-variables):
* lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
(elisp--xref-find-definitions):
* lisp/org/ox-html.el (org-html-htmlize-output-type):
* lisp/org/org-agenda.el (org-agenda-do-in-region):
* lisp/net/tramp.el:
* lisp/minibuffer.el (set-minibuffer-message):
* lisp/isearch.el (isearch-wrap-pause):
(isearch-repeat-on-direction-change):
* lisp/emacs-lisp/timer.el (timer):
* lisp/emacs-lisp/package.el (package-read-archive-contents):
* lisp/emacs-lisp/faceup.el (faceup-next-property-change):
* lisp/emacs-lisp/comp.el (comp-func):
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-empty-p):
* lisp/emacs-lisp/cl-macs.el (cl-do):
(cl-do*):
(cl--self-tco):
* lisp/emacs-lisp/bytecomp.el (byte-compile-unresolved-functions):
(byte-compile-cond-jump-table): Don't quote t and nil.
2021-09-21 22:11:43 +02:00
Lars Ingebrigtsen
636e082e45 Document isearch-wrap-pause
* doc/emacs/search.texi (Repeat Isearch): Document
`isearch-wrap-pause'.
2021-09-21 22:01:28 +02:00
Stefan Kangas
7b62ea95c9 New major mode with font-locking for etc/AUTHORS
* lisp/textmodes/etc-authors-mode.el: New file.  (Bug#50674)
* etc/AUTHORS (mode): Add "mode: etc-authors" to local variables.
* admin/authors.el (authors): Add "mode: etc-authors" to local
variables of the generated AUTHORS file.
2021-09-21 21:40:15 +02:00
Stefan Kangas
e4a9aa940b ; * doc/lispref/windows.texi (Cyclic Window Ordering): Fix typo. 2021-09-21 21:07:37 +02:00