1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-07 06:41:00 -07:00
Commit graph

148415 commits

Author SHA1 Message Date
Lars Ingebrigtsen
84ec57fe06 Fix viewing of encrypted S/MIME messages
* lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): Don't
add a content-type header if there already is one (bug#41659).
2020-07-23 17:12:40 +02:00
Philipp Stephani
5c5eb97908 Fix memory leak for global module objects (Bug#42482).
Instead of storing the global values in a global 'emacs_value_storage'
object, store them as hash values alongside the reference counts.
That way the garbage collector takes care of cleaning them up.

* src/emacs-module.c (global_storage): Remove.
(struct module_global_reference): New pseudovector type.
(XMODULE_GLOBAL_REFERENCE): New helper function.
(module_make_global_ref, module_free_global_ref): Use
'module_global_reference' struct for global reference values.
(value_to_lisp, module_handle_nonlocal_exit): Adapt to deletion of
'global_storage'.
2020-07-23 14:03:27 +02:00
João Távora
fcd43287b3 Don't needlessly request docs from ElDoc functions
Fixes: bug#42421

Do this conservatively for now: if the ElDoc helper buffer (as
returned by eldoc--doc-buffer) is visible and showing documentation
for the very same "situation" (as computed by the the new
eldoc--request-state helper), don't request that documentation from
sources again.

Before this change, not only was that request inefficient but if the
user invoked scroll-other-window to see more of the helper buffer,
that would eventually cause it to be reformatted and unexpectedly
recentered.

Later on, when a customizable list of documentation "sinks" is offered
to the user, say, something like eldoc-display-functions, this process
must be consolidated.  In those circumstances, as soon as one of those
sinks signals that it doesn't have up-to-date documentation for the
state computed by eldoc--request-state, documentation will have to be
requested anew from eldoc-documentation-functions via
eldoc--invoke-strategy.

* lisp/emacs-lisp/eldoc.el (eldoc--request-docs-p): Rework from
eglot-display-message-p.
(eldoc--last-request-state): New variable.
(eldoc--request-state): New helper.
(eldoc--handle-docs): Memorize state of request in doc buffer.
(eldoc-print-current-symbol-info): Pass a token to
eldoc--request-docs-p.
(Version): Bump to 1.6.0
2020-07-23 11:57:27 +01:00
Glenn Morris
1bae7ba53b ; Merge from origin/emacs-27
The following commits were skipped:

8bc8565721 (origin/emacs-27) Revert "Rectify allout-widgets region un...
db479d6354 Revert "Resolve missing button-region keymap bindings."
259dc75c23 Revert "Provide missing let definition to prevent backgrou...
56422a6366 Revert "Don't let item decoration be disrupted by too-shal...
8e4eae0ce3 Revert "Fix allout-widgets-mode handling of edits to item ...
2020-07-22 07:50:47 -07:00
Glenn Morris
496ee0911a Merge from origin/emacs-27
4db3235fd8 Run custom-magic-reset in the customize buffer
3c9c3f04de ; spelling fix
2020-07-22 07:50:47 -07:00
Glenn Morris
0a71a7380f ; Merge from origin/emacs-27
The following commits were skipped:

bc10e467f1 Backport: Rectify allout-widgets region undecoration so it...
82742e295d Backport: Resolve missing button-region keymap bindings.
2035ecca57 Backport: Provide missing let definition to prevent backgr...
3071cecda0 Backport: Don't let item decoration be disrupted by too-sh...
044960ead2 Backport: Fix allout-widgets-mode handling of edits to ite...
2020-07-22 07:50:47 -07:00
Mattias Engdegård
687a9d3e2f Calc: fix interval entry snag (bug#42438)
* lisp/calc/calc.el (calcDigit-key): Don't signal a 'Bad format' error
when entering '..' after pushing an incomplete interval.

Reported by Allen Li.
2020-07-22 11:27:15 +02:00
Ken Manheimer
8bc8565721 Revert "Rectify allout-widgets region undecoration so item at start is not missed."
This reverts commit 33d85cb768.

Backporting it to emacs-27 was not appropriate.
2020-07-21 10:57:29 -04:00
Ken Manheimer
db479d6354 Revert "Resolve missing button-region keymap bindings."
This reverts commit dd7c191291.

Backporting it to emacs-27 was not appropriate.
2020-07-21 10:56:55 -04:00
Ken Manheimer
259dc75c23 Revert "Provide missing let definition to prevent background void-variable error."
This reverts commit 3c410b6b47.

Backporting it to emacs-27 was not appropriate.
2020-07-21 10:55:35 -04:00
Ken Manheimer
56422a6366 Revert "Don't let item decoration be disrupted by too-shallow items."
This reverts commit 8684216542.

Backporting it to emacs-27 was not appropriate.
2020-07-21 10:55:08 -04:00
Ken Manheimer
8e4eae0ce3 Revert "Fix allout-widgets-mode handling of edits to item cue, fixing (bug#11312)"
This reverts commit 8e13d33248.

Backporting it to emacs-27 was not appropriate.
2020-07-21 10:52:50 -04:00
Robert Pluim
4db3235fd8 Run custom-magic-reset in the customize buffer
If the user has navigated away from the customize buffer, then
clicking on a widget in the customize buffer applies changes in the
selected buffer rather than in the customize buffer.  Pass the
customize buffer to 'custom-magic-reset' to avoid this.

* lisp/cus-edit.el (custom-magic-reset): Add optional buffer argument,
apply changes in that buffer.
(custom-notify): Pass the buffer containing the widget to
'custom-magic-reset'.  (Bug#40788)
2020-07-21 16:37:59 +02:00
Robert Pluim
3c9c3f04de ; spelling fix 2020-07-21 09:59:54 +02:00
Ken Manheimer
bc10e467f1 Backport: Rectify allout-widgets region undecoration so item at start is not missed.
* lisp/allout-widgets.el (allout-widgets-undecorate-region):
Reorganize the loop so an item at the start is not skipped.

(cherry picked from commit 33d85cb768)
2020-07-20 14:31:27 -04:00
Ken Manheimer
82742e295d Backport: Resolve missing button-region keymap bindings.
* lisp/allout-widgets.el (allout-item-icon-keymap,
allout-item-body-keymap, allout-cue-span-keymap, allout-widgets-mode):
Inherit from both (current-local-map) and (current-global-map). This
provides for missing global bindings when inheriting from
just (current-local-map), eg Esc-<.

(cherry picked from commit dd7c191291)
2020-07-20 14:30:40 -04:00
Ken Manheimer
2035ecca57 Backport: Provide missing let definition to prevent background void-variable error.
* lisp/allout-widgets.el (allout-widgets-exposure-change-processor)
Let-declare handled-conceal, for reference through `(symbol-value)'
within the let body. (Because the error happens in an
after-change-functions hook, so it is caught and reported as a message
by allout-widgets-hook-error-handler.)

(cherry picked from commit 3c410b6b47)
2020-07-20 14:29:36 -04:00
Ken Manheimer
3071cecda0 Backport: Don't let item decoration be disrupted by too-shallow items.
* lisp/allout-widgets.el (allout-decorate-item-and-context): Check for
parent-position having value before using it.

Also, shift local emacs vars topic deeper so it doesn't constitute
an instance of that particular aberrant case.

(cherry picked from commit 8684216542)
2020-07-20 14:29:00 -04:00
Ken Manheimer
044960ead2 Backport: Fix allout-widgets-mode handling of edits to item cue, fixing (bug#11312)
* lisp/allout-widgets.el (allout-decorate-item-cue): Properly decorate
item cue span.
(allout-setup-text-properties): use allout-graphics-modification-handler
as allout-cue-span-category modification hook.

(cherry picked from commit 8e13d33248)
2020-07-20 14:27:17 -04:00
Ken Manheimer
33d85cb768 Rectify allout-widgets region undecoration so item at start is not missed.
* lisp/allout-widgets.el (allout-widgets-undecorate-region):
Reorganize the loop so an item at the start is not skipped.
2020-07-20 14:07:50 -04:00
Ken Manheimer
dd7c191291 Resolve missing button-region keymap bindings.
* lisp/allout-widgets.el (allout-item-icon-keymap,
allout-item-body-keymap, allout-cue-span-keymap, allout-widgets-mode):
Inherit from both (current-local-map) and (current-global-map). This
provides for missing global bindings when inheriting from
just (current-local-map), eg Esc-<.
2020-07-20 14:06:41 -04:00
Ken Manheimer
3c410b6b47 Provide missing let definition to prevent background void-variable error.
* lisp/allout-widgets.el (allout-widgets-exposure-change-processor)
Let-declare handled-conceal, for reference through `(symbol-value)'
within the let body. (Because the error happens in an
after-change-functions hook, so it is caught and reported as a message
by allout-widgets-hook-error-handler.)
2020-07-20 14:05:46 -04:00
Ken Manheimer
8684216542 Don't let item decoration be disrupted by too-shallow items.
* lisp/allout-widgets.el (allout-decorate-item-and-context): Check for
parent-position having value before using it.

Also, shift local emacs vars topic deeper so it doesn't constitute
an instance of that particular aberrant case.
2020-07-20 14:04:43 -04:00
Ken Manheimer
8e13d33248 Fix allout-widgets-mode handling of edits to item cue, fixing (bug#11312)
* lisp/allout-widgets.el (allout-decorate-item-cue): Properly decorate
item cue span.
(allout-setup-text-properties): use allout-graphics-modification-handler
as allout-cue-span-category modification hook.
2020-07-20 13:39:20 -04:00
Glenn Morris
fe2d0ede28 Merge from origin/emacs-27
cd93debc60 (origin/emacs-27) Merge branch 'emacs-27' of git.savannah....
2c0c613ec5 Document prefix arg effects for 'epa-mail-{sign,encrypt}'
551123e0b2 * etc/NEWS: Correct description of :client-certificate change
05c4329cf5 Revert "Fix filename completion in shell mode buffers"
de68572742 Improve documentation of 'bookmark-bmenu-mode'
fd85e70be7 Update systems using GnuTLS certificate files
0d4ba1c2b2 Improve documentation of 'kill-emacs'
b3bbd4fd00 Improve documentation of 'display-raw-bytes-as-hex'
f50d79af6b Correct descriptions of init file
e325d2638c Fix interrupt-process on MS-Windows
d24e56a5e4 Revert "* doc/misc/flymake.texi (An annotated example back...

# Conflicts:
#	etc/NEWS
2020-07-20 07:50:44 -07:00
Eli Zaretskii
cd93debc60 Merge branch 'emacs-27' of git.savannah.gnu.org:/srv/git/emacs into emacs-27 2020-07-20 17:31:50 +03:00
Michael Albinus
0cbafc236b Fix problem with Tramp progress reporter
* lisp/net/tramp.el (with-tramp-progress-reporter): Do not span a
new progress reporter if there's already another one.
2020-07-20 16:29:38 +02:00
Robert Pluim
2c0c613ec5 Document prefix arg effects for 'epa-mail-{sign,encrypt}'
* doc/misc/epa.texi (Mail-mode integration): Describe effect of
prefix arg to 'epa-mail-encrypt' and 'epa-mail-sign'.

* lisp/epa-mail.el (epa-mail-sign): Describe effect of prefix arg.
2020-07-20 14:47:43 +02:00
Robert Pluim
551123e0b2 * etc/NEWS: Correct description of :client-certificate change 2020-07-20 14:41:21 +02:00
Lars Ingebrigtsen
44d2368ca1 Make xwidget-webkit-browse-url slightly more DWIM
* lisp/xwidget.el (xwidget-webkit-browse-url): Prepend "https" to
URLs that don't have a protocol (bug#31369).
2020-07-20 12:21:46 +02:00
Mattias Engdegård
1da5b3abd5 Suppress relint false positive in gnus-start.el
* lisp/gnus/gnus-start.el (gnus-active-to-gnus-format):
Add suppressive comment.  Prepending "^to\\.\\|" is redundant when
'gnus-ignored-newsgroups' already matches that pattern, but adding
logic here is not worth the trouble.
2020-07-20 11:06:02 +02: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
Lars Ingebrigtsen
7a24cff1b2 Only kill url-retrieve-synchronously connections when we have a timeout
* lisp/url/url.el (url-retrieve-synchronously): Only kill the
connections when we have a timeout (bug#34607).
2020-07-19 23:12:54 +02:00
Lars Ingebrigtsen
5d2bc15439 Make timeouts work more reliably in url-retrieve-synchronously
* lisp/url/url.el (url-retrieve-synchronously): Ensure that the
processes have been killed on timeouts before returning the buffer
(bug#34607).
2020-07-19 22:41:28 +02:00
Andrea Corallo
37e0dbc972 Merge remote-tracking branch 'savannah/master' into HEAD 2020-07-19 20:39:27 +01:00
Daniele Nicolodi
5d2a83ea0e url-http: Fix handling of redirect locations
* lisp/url/url-http.el (url-http-parse-headers): Parse redirect
URIs more like other web browsers (bug#42382).

RFC 7231 the Location header is defined to carry a URI-reference.
According to RFC 3986 it should be percent-encoded and thus should not
contain spaces. However, there are HTTP server implementation (notably
nginx) that do not do that. This makes Emacs url-http.el behave like
most other HTTP client implementatios. Also remove the stripping of
angle bracket quotes as they are not valid according to the RFCs.

Copyright-paperwork-exempt: yes
2020-07-19 21:16:55 +02:00
Satoshi Nakagawa
f8f3e77fa8 Support Proxy-Authorization in HTTPS CONNECT proxies
* lisp/url/url-http.el (url-https-proxy-connect): Support CONNECT
with Proxy-Authorization header (bug#42422).

Copyright-paperwork-exempt: yes
2020-07-19 21:12:17 +02:00
Michael Albinus
13ca719a68 * lisp/net/tramp-adb.el (tramp-adb-prompt): Further simplification.
Suggested by Mattias Engdegård <mattiase@acm.org>.
2020-07-19 19:34:16 +02:00
Eric Abrahamsen
abe9497d74 Complete over the MIME types in gnus-summary-save-parts
* lisp/gnus/gnus-sum.el (gnus-summary-save-parts): Allow
completing over the parts in the first article in the list of the
process-marked articles (bug#39543).
2020-07-19 16:15:33 +02:00
Štěpán Němec
b89af66209 gnus-button-alist: Prefer URL links to Elisp library links
* lisp/gnus/gnus-art.el (gnus-button-alist): Move the URL clauses
higher up the list before library link setup to prevent URLs ending in
".el" from failing to be recognized (and invalid library links being
created instead) (bug#39781).
2020-07-19 16:05:11 +02:00
Lars Ingebrigtsen
b2eec81fcd Do window configuration change before killing Gnus buffers on exit
* lisp/gnus/gnus-sum.el (gnus-summary-exit): Do window
configuration changes before killing off the summary buffer, so
that the window conf machinery can return to a group-only
configuration (bug#40069).
2020-07-19 15:46:17 +02:00
Lars Ingebrigtsen
00a9712420 Allow adjusting the `W Q' Gnus summary command interactively
* doc/misc/gnus.texi (Article Washing): Document it.

* lisp/gnus/gnus-art.el (article-fill-long-lines): Take a numeric
prefix as the fill width (bug#38698).
2020-07-19 15:18:29 +02:00
Alan Mackenzie
1fc9d0a790 Remove redundant code from c-font-lock-fontify-region
* lisp/progmodes/cc-mode.el (c-font-lock-fontify-region): Remove variables
string-fence-beg and lim, and the code used to calculate them.
2020-07-19 10:55:48 +00: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
Kévin Le Gouguec
af5861569b Simplify dummy root subject before comparing it to the current article
* lisp/gnus/gnus-sum.el (gnus-summary-prepare-threads): Simplify both
the dummy root and the following article before comparing them,
otherwise both the former and the latter might display the thread's
subject even when gnus-summary-line-format contains "%s" (bug#40520).
2020-07-19 04:34:22 +02:00
Lars Ingebrigtsen
e68a455afb Fix C-c C-f in the Gnus article buffer
* lisp/gnus/gnus-art.el (gnus-article-mode-map): Make the C-c C-f
command work in the article buffer, too (bug#40548).
2020-07-19 04:28:46 +02:00
Lars Ingebrigtsen
e9d359af41 Mention the Emacs bug tracker in the bug reporting doc strings
* lisp/gnus/gnus-msg.el (gnus-bug): Mention the Emacs bug tracker.

* lisp/mail/emacsbug.el (report-emacs-bug): Link directly to the
Emacs portion of the bug reports (bug#41109).
2020-07-19 03:49:16 +02:00
Lars Ingebrigtsen
468b02a5da Doc fix for article-fill-long-lines
* lisp/gnus/gnus-art.el (article-fill-long-lines): Mention that it
also respects `fill-column' (bug#41534).
2020-07-19 03:20:13 +02:00
Lars Ingebrigtsen
17f646128f Allow open-network-stream to use different TLS capability commands
* doc/lispref/processes.texi (Network): Document non-string
capability command.
* lisp/gnus/nntp.el (nntp-open-connection): Use HELP for Typhoon
and CAPABILITIES for everything else (bug#41960).

* lisp/net/network-stream.el (open-network-stream): Document
function variety of :capability-command.
(network-stream-open-starttls): Use it.
(network-stream-open-tls): Ditto.
(network-stream-open-shell): Ditto.
(network-stream--capability-command): New helper function.
2020-07-19 02:56:40 +02:00