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

142744 commits

Author SHA1 Message Date
Eli Zaretskii
f4b4166e00 Avoid aborts in display_mode_element
* src/xdisp.c (display_mode_element): Use parse_str_as_multibyte,
not multibyte_chars_in_text, to determine whether mode-line spec
shall be displayed as a multibyte or unibyte string.  We cannot
use multibyte_chars_in_text here because it aborts when it finds
raw bytes in the spec string.  (Bug#43409)
2020-09-15 18:44:01 +03:00
Robert Pluim
9bb9f43709 ; Fix grammar of previous commit
* doc/lispref/modes.texi (Mode Line Variables): Fix grammar
of mode-line-position-{line,column}-format descriptions.
2020-09-15 17:39:24 +02:00
Robert Pluim
20d13e424f Stop querying for fonts as soon as a match is found
Scanning through fonts can be very slow, especially with the 'x' font
backend, and the result is almost always not used.  Stop looking for a
font as soon as one is found rather than scanning all the backends.

* src/font.c (font_list_entities): Stop scanning through the font
backends as soon as we find a match unless
'query-all-font-backends is set (Bug#43177).
(syms_of_font): New variable 'query-all-font-backends', default
false.
2020-09-15 17:39:24 +02:00
Lars Ingebrigtsen
0a7152e095 Fix up previous replace-in-string commit
* lisp/subr.el (replace-in-string): Fix thinko in implementation.
2020-09-15 17:36:36 +02:00
Lars Ingebrigtsen
3beb8bc994 Allow controlling the look of the line/column indicators
* doc/lispref/modes.texi (Mode Line Variables): Document them.

* lisp/bindings.el (mode-line-position-line-format): New variable
(bug#28648).
(mode-line-position-column-format): Ditto.
(mode-line-position): Use them.

* lisp/simple.el (column-number-mode): Mention them.
(line-number-mode): Ditto.
2020-09-15 17:15:59 +02:00
Lars Ingebrigtsen
caf64ae08b Add new, simple `replace-in-string' function
* lisp/subr.el (replace-in-string): New, side-effect-free function.

* doc/lispref/searching.texi (Search and Replace): Document it.
2020-09-15 17:15:59 +02:00
Stefan Kangas
77aeddc149 * lisp/window.el: Add provide statement
* lisp/window.el (window): Put a `provide' form to help with the
popular `use-package' external package (bug#37053).
2020-09-15 17:15:59 +02:00
Eli Zaretskii
9d5b675f2c Fix MS-Windows compilation of Gnulib with old versions of MinGW
* nt/inc/ms-w32.h (_WIN32_WINNT_WIN2K, _WIN32_WINNT_WINXP)
(_WIN32_WINNT_WS03, _WIN32_WINNT_VISTA, _WIN32_WINNT_WIN7,
_WIN32_WINNT_WIN8, _WIN32_WINNT_WINBLUE, _WIN32_WINNT_WIN10)
[__MINGW32__]: Define if any of these is not defined.  Reported by
martin rudalics <rudalics@gmx.at>.
2020-09-15 18:09:03 +03:00
Jimmy Aguilar Mena
ffe893114f Merge branch 'feature/uniquify-as-function' into master 2020-09-15 16:18:02 +02:00
Jimmy Aguilar Mena
32220b53fd Document use of uniquify-buffer-name-style as a function. 2020-09-15 16:12:54 +02:00
Jimmy Aguilar Mena
7000396924 Enable uniquify-buffer-name-style to be a function.
* lisp/uniquify.el (uniquify-buffer-name-style) : Add "Other" custom
option
(uniquify-get-proposed-name) : Add condition for when
uniquify-buffer-name-style is a function.
2020-09-15 16:12:54 +02:00
Lars Ingebrigtsen
c5d53ac36d Fix mailclient-send-it after recent browse-url rewrite
* lisp/mail/mailclient.el (mailclient-send-it): Make this function
work again after the browse-url machinery was changed to use
browse-url-default-handlers instead.
2020-09-15 15:27:46 +02:00
Lars Ingebrigtsen
27bda2e140 Fix regression in non-querying about mail addresses in "emacs -Q"
* lisp/mail/emacsbug.el (report-emacs-bug-hook): Don't query about
the mail address if using an external mailer (bug#43386).
2020-09-15 15:26:55 +02:00
Daniel Martín
d727d3dad6 Check that the buffer in diff-buffer-with-file is visiting a file
* lisp/vc/diff.el (diff-buffer-with-file): Signal a specific error
when the buffer passed to diff-buffer-with-file is not visiting a
file (bug#43401).
2020-09-15 14:56:10 +02:00
Stefan Monnier
e408f2fab2 * test/lisp/emacs-lisp/find-func-tests.el: New file (for bug#43393)
* lisp/emacs-lisp/ert-x.el (ert-simulate-keys): New macro.

* test/lisp/international/mule-tests.el
(mule-cmds--test-universal-coding-system-argument): Use it and enable
the test also in batch mode.
2020-09-14 16:04:22 -04:00
Kevin Ryde
15d2f6af00 Tweak the `C-x v =' command when done from a diff buffer
* lisp/vc/vc.el (vc-diff): Offer to save the relevant buffer(s)
when doing `C-x v =' from a diff buffer (bug#5773).
2020-09-14 15:40:07 +02:00
Pip Cet
312da48719 Don't retry reading after receiving EINVAL
* src/process.c (wait_reading_process_output): Don't retry reading
from an fd after an unknown error (bug#6074).
2020-09-14 15:18:52 +02:00
Stephen Berman
f450e53d5c Fix problem of marking files with hidden subdirs
* lisp/dired.el (dired-unhide-subdir):
(dired-subdir-hidden-p):
(dired-subdir-min): Moved from subr-x.
(dired-get-filename): Get the correct filename when directories
are hidden (bug#8484).
2020-09-14 14:55:52 +02:00
Lars Ingebrigtsen
14486c4488 Allow preserving (some) text properties from completion tables
* doc/lispref/minibuf.texi (Text from Minibuffer): Document it.

* lisp/minibuffer.el (completion--replace): Preserve text
properties on completed items (bug#43218).
2020-09-14 14:22:06 +02:00
Lars Ingebrigtsen
cbfa411544 Allow hitting RET on info node names with multiple whitespace chars
* lisp/info.el (info--node-canonicalize-whitespace): New function
(bug#10784).
(Info-extract-menu-node-name): Use it.
(Info-find-node): Use it.
2020-09-14 13:49:04 +02:00
Lars Ingebrigtsen
7629aa7409 Revert "Fix completion in `read-library-name'"
This reverts commit ed44217d32.

This commit broke the use case of `M-x load-library RET o/or TAB' to
expand to org/org.
2020-09-14 13:26:17 +02:00
Lars Ingebrigtsen
7cc1614338 Further fixups in minibuffer-default--in-prompt-regexps
* lisp/minibuf-eldef.el (minibuffer-default--in-prompt-regexps):
Really allow shortening the default prompt format to [foo] (if
requested) (bug#12443).
2020-09-14 13:14:21 +02:00
Lars Ingebrigtsen
b40a7056e5 Support build of Emacs on ARM Macos machines
* configure.ac: Add support for aarch64-* on Macos (i.e., 64-bit
ARM) (bug#43369).
2020-09-14 12:34:56 +02:00
Mattias Engdegård
0e00f199cd Calc: fix binomial coefficients for negative arguments (bug#16999)
For some values outside integers 0≤k≤n, (n choose k) gave wrong
results, entered infinite recursion or used unreasonably amounts of
stack space.  This change fixes that and extends the function to all
integer arguments using the definitions from M. J. Kronenburg
(https://arxiv.org/abs/1105.3689).

* lisp/calc/calc-comb.el (calcFunc-choose):
Fix sign error to prevent infinite recursion and extend function to
handle all integer arguments.
(math-choose-iter, math-choose-float-iter): Rewrite in iterative form;
no TCO in elisp yet.
* test/lisp/calc/calc-tests.el (calc-tests--fac, calc-tests--choose)
(calc-tests--check-choose, calc-tests--explain-choose)
(calc-tests--calc-to-number): New helper functions.
(calc-choose): New test.
2020-09-14 11:19:22 +02:00
Mattias Engdegård
f66829e0f4 * lisp/simple.el (undo-redo): Rephrase error message. 2020-09-14 11:17:49 +02:00
Glenn Morris
1c84b187ab Fix builds without modules
* src/data.c (Finteractive_form):
* src/eval.c (Fcommandp): Fix builds without modules.
2020-09-13 17:19:19 -07:00
Lars Ingebrigtsen
1749d32d02 Fix up report-emacs-bug action on invalid From headers
* lisp/mail/emacsbug.el (report-emacs-bug-hook): Move point to the
From header if the user has to edit the From header.
2020-09-14 01:23:25 +02:00
akater
9cc992e68f Fix compilation-mode-map doc string
* lisp/progmodes/compile.el (compilation-mode-map): Remove mention of
compilation-minor-mode-map (bug#43382).

As the comment in the body says:

;; Don't inherit from compilation-minor-mode-map,
;; because that introduces a menu bar item we don't want.
;; That confuses C-down-mouse-3.

and the map actually inherits from special-mode-map.

Copyright-paperwork-exempt: yes
2020-09-14 01:08:26 +02:00
Philipp Stephani
da0e75e741 Add facility to make module functions interactive (Bug#23486).
* src/module-env-28.h: Add field for 'make_interactive' function.

* src/emacs-module.c (Lisp_Module_Function): Add new field holding the
interactive form.
(allocate_module_function): Adapt to structure layout change.
(module_make_interactive, module_function_interactive_form): New
functions.
(initialize_environment): Use them.

* src/eval.c (Fcommandp):
* src/data.c (Finteractive_form): Also handle interactive module
functions.

* test/data/emacs-module/mod-test.c (Fmod_test_identity): New test
function.
(emacs_module_init): Create two interactive module test functions.

* test/src/emacs-module-tests.el (module/interactive/return-t)
(module/interactive/return-t-int, module/interactive/identity):
New unit tests.

* doc/lispref/internals.texi (Module Functions): Document new
function.  Rework paragraph about wrapping module functions, as the
example no longer applies.

* etc/NEWS: Document new facility.
2020-09-13 20:26:47 +02:00
Reuben Thomas
3eb4e0db5c Escape ampersand in table.el LaTeX output
* lisp/textmodes/table.el (table--generate-source-scan-lines): Add
  ampersand '&' to the list of characters to escape in LaTeX output.
2020-09-13 18:05:47 +01:00
Lars Ingebrigtsen
f9aa499afa Further fixups of the variable-pitch eww header line change
* lisp/net/eww.el (eww-update-header-line-format): Protect against
:url not being set.
2020-09-13 18:51:51 +02:00
Stefan Kangas
2c62e9b20d Improve wording of cua-mode menu entry
* lisp/menu-bar.el (menu-bar-options-menu): Improve wording of the
cua-mode menu entry.  (Bug#43323)
2020-09-13 18:30:45 +02:00
Stefan Kangas
817dd54649 Improve frame-title-format and icon-title-format
* src/xdisp.c (syms_of_xdisp): Replace 'invocation-name' with the text
"%b - GNU Emacs" and replace "@" with " at ".  (Bug#41147)
* etc/NEWS: Announce the above change.
2020-09-13 18:24:31 +02:00
Eli Zaretskii
99af480d00 Fix punctuation in EWW manual
* doc/misc/eww.texi (Advanced): Fix punctuation of a recent
change.
2020-09-13 18:35:54 +03:00
Eli Zaretskii
762817003f ; * etc/NEWS: Document a recent change. 2020-09-13 18:32:31 +03:00
Eli Zaretskii
cc24931b2f ; * lisp/tab-line.el (tab-line-switch-cycling): Fix last change. 2020-09-13 18:27:44 +03:00
Lars Ingebrigtsen
54c2a8df3b Make diff--refine-hunk bug out less on broken patches
* lisp/vc/diff-mode.el (diff--refine-hunk): Don't bug out on
broken patches where we can't find the middle.
2020-09-13 17:25:08 +02:00
Lars Ingebrigtsen
dc01b992e2 Make the eww header work again even if the title is nil
* lisp/net/eww.el (eww-update-header-line-format): Don't bug out
if the title isn't set at all.
2020-09-13 17:06:35 +02:00
Dario Gjorgjevski
2bd41321a6 Make ERC desktop notifications lenient to invalid XML characters
* lisp/xml.el (xml-invalid-characters-re): New constant.

* lisp/erc/erc-desktop-notifications.el
(erc-notifications-notify): Strip IRC control codes and invalid
XML characters before notifying (bug#43328).
2020-09-13 16:49:00 +02:00
Lars Ingebrigtsen
def34a2076 Don't eagerly store articles in the Agent by default
* lisp/gnus/gnus-agent.el (gnus-agent-store-article): Made
obsolete.

* lisp/gnus/gnus-art.el (gnus-request-article-this-buffer): Don't
call it.

* lisp/gnus/gnus-async.el (gnus-async-article-callback): Ditto
(bug#43356).

This partially reverts f3b146e943, which
in was response to what appears to be an erroneous feature-request -
bug#8502.

Instead this should be done instead:

“If I read an article while plugged, do they get entered into the
Agent?”

     *No*. If you want this behavior, add
     ‘gnus-agent-fetch-selected-article’ to
     ‘gnus-select-article-hook’.
2020-09-13 16:46:11 +02:00
Lars Ingebrigtsen
c2dea983e8 Kill gpg-agents started by mml-sec-tests (bug#43358) 2020-09-13 16:05:25 +02:00
Brian Leung
467200dd6e Update .gitignore with ccls files
* .gitignore: Ignore files used by ccls, a language server for C
(bug#43365).

Copyright-paperwork-exempt: yes
2020-09-13 15:48:06 +02:00
Lars Ingebrigtsen
e0f304413c Doc string clarification in file-directory-p
* src/fileio.c (Ffile_directory_p): Mention that "" is a special
case (bug#43375).
2020-09-13 15:33:58 +02:00
Kiso Katsuyuki
2605eb9d0e Clarify when tab-line-switch-cycling is used
* lisp/tab-line.el (tab-line-switch-cycling): Clarify when the
variable is used.
Copyright-paperwork-exempt: yes
2020-09-13 15:23:25 +02:00
Stefan Kangas
1a4d8feb17 * lisp/time.el (display-time-world): Make obsolete. 2020-09-13 15:09:20 +02:00
Stefan Kangas
06d86b954d Make M-x show what aliases point to (Bug#43300)
* lisp/simple.el (read-extended-command--annotation): Show an
annotation for aliases saying what it points to.
2020-09-13 15:05:06 +02:00
Stefan Kangas
1b0a922a19 Make M-x show obsolete commands (Bug#43300)
* lisp/simple.el (read-extended-command): Don't hide obsolete
commands.
(read-extended-command--annotation): Show an annotation for obsolete
commands that says what their new name is.
2020-09-13 15:05:02 +02:00
Lars Ingebrigtsen
9ca83cdd79 Revert "Use format-prompt in read-file-name calls that have a default"
This reverts commit de4f347901.

read-file-name already displays a long path when given a default
(like INITIAL in many other prompting functions), so using
format-prompt here is superfluous.
2020-09-13 14:58:24 +02:00
Lars Ingebrigtsen
e1e93da9a9 Make ascii' a coding system alias for us-ascii'
* lisp/international/mule-conf.el (ascii): Define `ascii' as a
coding system alias to `us-ascii' (bug#43351).
2020-09-13 14:41:54 +02:00
Michael Albinus
a6321fd799 Fix a conversion failure in tramp-archive-tests (Bug#43353)
* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test-file-archive-hexlified): New defun.
(tramp-archive-test02-file-name-dissect): Use it.  (Bug#43353)
2020-09-13 13:25:52 +02:00