Commit graph

141112 commits

Author SHA1 Message Date
Michal Nazarewicz
fab2332851 cc-mode: add ‘c-lineup-ternary-bodies’ (bug#41061)
Introduce ‘c-lineup-ternary-bodies’ function which, when used as
a c lineup function, aligns question mark and colon of a ternary
operator.  For example:

    return arg % 2 == 0 ? arg / 2
                        : (3 * arg + 1);

* lisp/progmodes/cc-align.el (c-lineup-ternary-bodies): New function.
* doc/misc/cc-mode.texi (Operator Line-Up Functions): Document the
new function.
* test/lisp/progmodes/cc-mode-tests.el (c-lineup-ternary-bodies): New
test case.
2020-05-09 11:30:32 +01:00
Clément Pit-Claudel
0bd6ae773a Only treat display strings as buttons if they have 'button' property
* lisp/button.el (push-button): Use 'posn-point' instead of
'posn-string' if the string doesn't have the 'button'
property (Bug#40859).
2020-05-09 10:42:30 +03:00
Federico Tedin
1f149cb392 Prevent hanging in next-single-char-property-change
* src/textprop.c (Fnext_single_char_property_change): Clarify in
the doc string the behavior when LIMIT is past the end of OBJECT.
Stop the search when position gets to end of buffer, for when LIMIT
is beyond that.  (Bug#40000)
2020-05-09 10:27:06 +03:00
Tassilo Horn
0d861f25b2 Fix reading kind argument in browse-url-with-browser-kind.
* lisp/net/browse-url.el (browse-url-with-browser-kind): Convert KIND
argument queried from the user to a symbol.
2020-05-08 21:07:56 +02:00
Tassilo Horn
909591a4b2 Allow predicates for matching in browse-url-handlers.
* lisp/net/browse-url.el (browse-url-handlers): Allow predicates for
matching in browse-url-handlers.  Adapt docs and customize type.
(browse-url-select-handler): Support predicates in addition to
regexes.
(browse-url--non-html-file-url-p): New defun.
(browse-url-default-handlers): Use above predicate entry instead of
two entries.
2020-05-08 20:57:19 +02:00
Zhu Zihao
39b2a598d2 Make pcase pattern 'eieio' respect slot access related functions.
* lisp/emacs-lisp/eieio.el: Make pcase pattern respect slot-missing and
slot-unbound
2020-05-08 11:08:02 -04:00
Basil L. Contovounesios
958ddc9526 ; Update recent function declaration in dnd.el
* lisp/dnd.el (dnd-handle-one-url): Update arglist declaration for
browse-url-select-handler following recent change.
2020-05-07 21:40:09 +01:00
Tassilo Horn
b2581eea1b Allow browsing an URL explicitly with an internal or external browser.
* lisp/net/browse-url.el (browse-url-with-browser-kind): New command.
2020-05-07 19:44:10 +02:00
Tassilo Horn
b0f9cbb3da Categorize browse-url functions into internal and external ones.
* lisp/net/browse-url.el: Write package documentation explaining
browse-url-browser-kind symbol property.  Categorize existing
browse-url functions into internal and external ones.
(browse-url--browser-kind, browse-url--browser-kind-mailto)
(browse-url--browser-kind-man, browse-url--browser-kind-browser): New
functions.
(browse-url-select-handler): Add KIND argument to restrict selection.
* lisp/dnd.el (dnd-handle-one-url): Only select browse-url handler of
kind `internal'.
* lisp/net/eww.el (eww): Add `browse-url-browser-kind' symbol property
with value `internal'.
2020-05-07 19:43:41 +02:00
Basil L. Contovounesios
263ab750a5 ; Fix recent byte-compiler warning in dnd.el again
* lisp/dnd.el (dnd-handle-one-url): Declare new autoloaded function
browse-url-select-handler to silence the byte-compiler during 'make
bootstrap'.
2020-05-07 18:39:48 +01:00
Basil L. Contovounesios
5b5039caa2 ; Improve recent change to browse-url.el
* lisp/net/browse-url.el (browse-url-select-handler): Use lwarn with
specific warning type, as recommended in "(elisp) Warning Basics".
2020-05-07 16:59:26 +01:00
Noam Postavsky
ddc8020327 Don't increment array index in cl-loop twice (Bug#40727)
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause): Put the temp-idx
increment in cl--loop-body, leaving just the side-effect free testing
of the index for both cl--loop-body and cl--loop-conditions.
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-and-arrays):
Extend test to cover this case.
2020-05-07 08:23:56 -04:00
Noam Postavsky
de7158598f Revert "cl-loop: Calculate the array length just once"
It fails when using 'and' (parallel bindings) for arrays (Bug#40727).
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause): Revert to
recomputing array length.
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-and-arrays): New
test.
2020-05-07 08:23:56 -04:00
Tassilo Horn
2c905fb8a1 Fix browse-url (remove debugging leftover).
* lisp/net/browse-url.el (browse-url): Fix "No suitable browser for
URL" always popping up.
2020-05-07 13:12:22 +02:00
Michael Albinus
de5f59219a Handle signals in Tramp's process-file
* lisp/net/tramp-adb.el (tramp-adb-handle-process-file):
* lisp/net/tramp-sh.el (tramp-sh-handle-process-file): Handle signals.

* test/lisp/net/tramp-tests.el (tramp-test28-process-file): Adapt test.
2020-05-07 10:27:14 +02:00
Tassilo Horn
3b5f728bff Refactor browse-url handler selection into separate function.
* lisp/net/browse-url.el (browse-url-select-handler): New function.
(browse-url): Use it.
* lisp/dnd.el (dnd-handle-one-url): Use it.
2020-05-07 09:53:54 +02:00
Basil L. Contovounesios
281b9e42a4 ; Fix recent byte-compiler warnings in dnd.el
* lisp/dnd.el (dnd-handle-one-url): Don't require browse-url twice
in the same function.  Declare non-autoloaded browse-url-handlers to
silence byte-compiler.
2020-05-07 01:54:43 +01:00
Tassilo Horn
86fef6ab89 Restore HTML rendering behavior of browse-url-of-buffer/file.
* lisp/net/browse-url.el (browse-url-default-handlers): Add a browser
handler for HTML page file:// URLs before the generic file:// handler.
(browse-url--browser): New defun.
2020-05-06 22:23:03 +02:00
Paul Eggert
02f5a419fd Pacify buggy old GCC with a cast
* src/bignum.h (bignum_integer): Pacify GCC 4.8.5.
Problem reported by Andreas Schwab in:
https://lists.gnu.org/r/emacs-devel/2020-05/msg00781.html
2020-05-06 11:01:57 -07:00
Glenn Morris
153241d664 Merge from origin/emacs-27
76516465bf (origin/emacs-27) * doc/emacs/modes.texi (Major Modes): Fi...
f8e6cd11b3 Fix docstring quoting
2020-05-06 09:28:36 -07:00
Glenn Morris
b16d553ecd ; Merge from origin/emacs-27
The following commits were skipped:

1e09364d67 ; Mark Bug#29799 tests as failing since we reverted the fix
de1b33f5a8 Revert "cl-loop: Calculate the array length just once"
caf155c463 Revert "cl-loop: Add missing guard condition"
79e133da03 Revert "Refix conditional step clauses in cl-loop"
2020-05-06 09:28:36 -07:00
Glenn Morris
3568c5d86f Merge from origin/emacs-27
7be160d800 Improve "Help Summary" section in user manual
f6d6ccc984 Clarify message-sendmail-extra-arguments docstring
95fde1a851 * src/editfns.c (Fformat): Small documentation fix.
2020-05-06 09:28:36 -07:00
Glenn Morris
033bdd1b90 ; Merge from origin/emacs-27
The following commit was skipped:

9f5999b08d Remove calls to non-existent functions from edebug.el.
2020-05-06 09:28:36 -07:00
Glenn Morris
e292097f55 Merge from origin/emacs-27
4b419083f9 Honor search-upper-case
310112fdc7 Fix eww-follow-link on URLs with #target

# Conflicts:
#	lisp/fileloop.el
2020-05-06 09:28:36 -07:00
Glenn Morris
29171c3a8c ; Merge from origin/emacs-27
The following commit was skipped:

f5cb5bb828 Revert part of recent commit 85544f8ef5 (bug#40808)
2020-05-06 09:22:55 -07:00
Glenn Morris
b147e6e507 Merge from origin/emacs-27
f9fa726ced Improve doc strings of makunbound and fmakunbound
2020-05-06 09:22:55 -07:00
Tassilo Horn
4b8e6939bf Consult browse-url-{default-,}handlers in drag&drop.
* lisp/dnd.el (dnd-handle-one-url): Consult `browse-url-handlers' and
`browse-url-default-handlers' for a matching handler.  Adapt
docstring.
* doc/lispref/frames.texi (Drag and Drop): Remove the docs for the
deprecated alist choice of `browse-url-browser-function' and mention
`browse-url-handlers' and `browse-url-default-handlers'.
2020-05-06 16:48:57 +02:00
Eli Zaretskii
76516465bf * doc/emacs/modes.texi (Major Modes): Fix quoting. (Bug#41110) 2020-05-06 17:13:55 +03:00
Michael Albinus
d9e10a1d1a process-file in Tramp must return exit code (Bug#41099)
* lisp/net/tramp-adb.el (tramp-adb-send-command-and-check): Add optional
argument EXIT-STATUS.
(tramp-adb-handle-process-file): Use it.

* lisp/net/tramp-sh.el (tramp-send-command-and-check): Add optional
argument EXIT-STATUS.
(tramp-sh-handle-process-file): Use it.  (Bug#41099)

* test/lisp/net/tramp-tests.el (tramp-test28-process-file): Adapt test.
2020-05-06 10:36:43 +02:00
Tassilo Horn
c4adfbae24 Allow for custom URL handlers in browse-url.
* lisp/net/browse-url.el (browse-url-handlers): New defcustom.
(browse-url-default-handlers): New defvar.
(browse-url): Use them.  Adapt docstring.  Issue a warning pointing to
browse-url-handlers when browse-url-browser-function is an alist.
(browse-url--mailto, browse-url--man): New functions.
(browse-url--browser-defcustom-type): Add :doc that the alist usage is
deprecated.
(browse-url-browser-function): Remove documentation referring to the
alist usage and mention browse-url-handlers.
* doc/emacs/misc.texi: Document browse-url-handlers in Browse-URL
node.
* etc/NEWS: Mention browse-url-default-handlers and
browse-url-handlers.
2020-05-06 10:14:58 +02:00
Stefan Kangas
58c234aa8c Prefer 'strong' and 'em' to 'b' and 'i' in html-mode
* lisp/textmodes/sgml-mode.el (html-face-tag-alist): Prefer inserting
'strong' and 'em' tags to 'b' and 'i' in html-mode.  (Bug#41031)
* lisp/textmodes/sgml-mode.el (html-mode): Update docstring to do the
same.
2020-05-06 03:30:20 +02:00
Noam Postavsky
f8e6cd11b3 Fix docstring quoting
* lisp/gnus/message.el (message-sendmail-extra-arguments): Fix
escaping of quotes in docstring.
2020-05-05 21:13:31 -04:00
Noam Postavsky
1e09364d67 ; Mark Bug#29799 tests as failing since we reverted the fix
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-for-as-equals-and)
(cl-macs-loop-conditional-step-clauses): Set :expected-result to
:failed.

Don't merge to master.  The mentioned reverts are a safe-for-release
fix for Bug#40727.
2020-05-05 21:07:58 -04:00
Noam Postavsky
de1b33f5a8 Revert "cl-loop: Calculate the array length just once"
Don't merge to master.  This is a safe-for-release fix for Bug#40727.
2020-05-05 21:07:58 -04:00
Noam Postavsky
caf155c463 Revert "cl-loop: Add missing guard condition"
Don't merge to master.  This is a safe-for-release fix for Bug#40727.
2020-05-05 21:07:58 -04:00
Noam Postavsky
79e133da03 Revert "Refix conditional step clauses in cl-loop"
Don't merge to master.  This is a safe-for-release fix for Bug#40727.
2020-05-05 21:07:58 -04:00
Paul Eggert
8f6524db83 Don’t assume __has_attribute in emacs-module.c
Problem reported by Glenn Morris in:
https://lists.gnu.org/r/emacs-devel/2020-05/msg00724.html
* src/emacs-module.c: Use HAS_ATTRIBUTE instead of assuming
the compiler supports __has_attribute.
2020-05-05 17:22:07 -07:00
Stefan Monnier
bbc34d3762 Try and improve the *Help* layout for things like diff-refine.
* lisp/help-fns.el (describe-variable-custom-version-info): Follow the
usual format of other `help-fns-describe-variable-functions`.
2020-05-05 17:53:23 -04:00
Eli Zaretskii
7be160d800 Improve "Help Summary" section in user manual
* doc/emacs/help.texi (Help Summary): Add cross-references to
sections with details of each Help command.
2020-05-05 17:47:33 +03:00
Stefan Kangas
f6d6ccc984 Clarify message-sendmail-extra-arguments docstring
* lisp/gnus/message.el (message-sendmail-extra-arguments): Clarify
docstring.
2020-05-05 16:45:26 +02:00
Philipp Stephani
95fde1a851 * src/editfns.c (Fformat): Small documentation fix. 2020-05-05 14:59:27 +02:00
Paul Eggert
daab2d3a62 Fix typos in recent attribute.h simplification
Problem reported by Andreas Schwab in:
https://lists.gnu.org/r/emacs-devel/2020-05/msg00650.html
* src/conf_post.h (HAS_ATTR_no_sanitize): Define to false in case
cpp is picky, fixing a longstanding glitch here.
(ATTRIBUTE_NO_SANITIZE_ADDRESS, ATTRIBUTE_NO_SANITIZE_UNDEFINED):
Use HAS_ATTRIBUTE, not __has_attribute.
2020-05-05 00:51:24 -07:00
Alan Mackenzie
9f5999b08d Remove calls to non-existent functions from edebug.el.
Do not merge to master.

*lisp/emacs-lisp/edebug.el (edebug--display-1)
(edebug-toggle-disable-breakpoint): Remove calls to
edebug--overlay-breakpoints and edebug--overlay-breakpoints-removed which had
been overlooked in a recent changed to edebug.
2020-05-04 18:26:38 +00:00
Michael Albinus
2db70edd9c Adapt Tramp tests
* test/lisp/net/tramp-tests.el (tramp-test33-environment-variables):
Adapt test.
2020-05-04 13:09:32 +02:00
Michael Albinus
221e6a9bcd Fix setting of INSIDE_EMACS in Tramp
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process)
(tramp-sh-handle-process-file, tramp-open-shell): Set proper
INSIDE_EMACS environment variable.
2020-05-04 10:43:58 +02:00
Dmitry Gutov
4b419083f9 Honor search-upper-case
* lisp/fileloop.el (fileloop--case-fold):
Extract from existing code.  Honor search-upper-case (bug#40940).
(fileloop-initialize-replace, fileloop-initialize-search): Use it.
Update the docstring.
2020-05-04 02:56:39 +03:00
Basil L. Contovounesios
310112fdc7 Fix eww-follow-link on URLs with #target
* lisp/net/eww.el (eww-display-html): Ensure shr-target-id is set as
callers depend on this (bug#28441, bug#40532).
2020-05-04 00:40:38 +01:00
Juri Linkov
f5cb5bb828 Revert part of recent commit 85544f8ef5 (bug#40808)
* lisp/isearch.el (isearch-lazy-highlight-search): Remove recent fix of
lazy-highlighting of hidden matches.  In emacs-27 leave only the fix for
lazy-counting of hidden matches when isearch-lazy-count is non-nil.

; Do not merge to master.
2020-05-04 01:31:44 +03:00
Paul Eggert
106936415d Simplify by using attribute.h macros
attribute.h is partly designed for C2X forward compatibility,
since C2X will add some standard attributes.  Using its macros
should help insulate Emacs from C2X teething problems.
* src/conf_post.h: Include attribute.h.
(HAS_ATTRIBUTE, HAS_FEATURE): Rename from __has_attribute and
__has_feature, to avoid polluting the builtin namespace.
All uses changed.
(ATTRIBUTE_COLD, ATTRIBUTE_FORMAT, FALLTHROUGH, ATTRIBUTE_CONST)
(ATTRIBUTE_PURE, ATTRIBUTE_UNUSED, ATTRIBUTE_MAY_ALIAS)
(ATTRIBUTE_MALLOC, ATTRIBUTE_ALLOC_SIZE)
(ATTRIBUTE_RETURNS_NONNULL): Remove, as attribute.h does this now.
(NO_INLINE, EXTERNALLY_VISIBLE, ARG_NONNULL, ATTRIBUTE_UNUSED):
Simplify by defining in terms of attribute.h macros.
* src/systhread.h (ATTRIBUTE_WARN_UNUSED_RESULT): Remove.
All uses replaced by attribute.h’s NODISCARD.
2020-05-03 15:10:07 -07:00
Paul Eggert
6bd47f4477 Update from Gnulib
This incorporates:
2020-05-03 attribute: new module
2020-04-13 explicit_bzero: improve code style
2020-04-13 explicit_bzero: On native Windows, use SecureZeroMemory
2020-04-13 explicit_bzero: use memset_s() when available
2020-04-04 maint: remove a stray inter-word space
* build-aux/config.guess, build-aux/config.sub:
* build-aux/gitlog-to-changelog, build-aux/update-copyright:
* doc/misc/texinfo.tex, lib/explicit_bzero.c, lib/ieee754.in.h:
* lib/nstrftime.c, m4/explicit_bzero.m4, m4/gnulib-common.m4:
Copy from Gnulib.
* lib/attribute.h: New file, copied from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
2020-05-03 15:10:07 -07:00