1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-14 23:40:39 -08:00
Commit graph

142762 commits

Author SHA1 Message Date
Harald Jörg
f7e68759d0 cperl-mode: Add new value "PBP" for 'cperl-set-style'
* lisp/progmodes/cperl-mode.el (cperl-style-alist)
(cperl-set-style): Add indentation style recommended by Damian Conway's
book "Perl Best Practices".

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-mode-test-indent-styles): Add a test to verify indentation
and unraveling of conditionals (bug#43457).
2020-09-17 17:35:11 +02:00
Eli Zaretskii
fa0859fda9 Fix documentation of a recent change
* src/keyboard.c (update_recent_keys): Fix commentary.
(Flossage_size): Fix doc string.

* etc/NEWS: Move and fix wording of the recently added entry.
2020-09-17 18:24:22 +03:00
Masahiro Nakamura
8af0fe243f etc/refcards/refcard.tex: Fix some grouping regexps
* etc/refcards/refcard.tex (section{Regular Expressions}): Fix the
shy/numbered grouping examples (bug#43429).
2020-09-17 17:15:12 +02:00
Michael Albinus
6d6ef7b1d0 Work on D-Bus properties etc
* lisp/net/dbus.el (seq, subr-x): Require.
(dbus-error-disconnected, dbus-error-service-unknown): New defconst.
(dbus-set-property, dbus-register-property): Use `keywordp'.  Fix
proper value sending a signal.

* test/lisp/net/dbus-tests.el (dbus-test04-register-method):
Extend test.
(dbus--test-signal-received): New defvar.
(dbus--test-signal-handler): New defun.
(dbus-test05-register-signal)
(dbus-test06-register-property-emits-signal): New tests.
(dbus-test06-register-property)
(dbus-test06-register-property-several-paths): Rename tests.
2020-09-17 17:13:55 +02:00
Alex Bochannek
12aea1fa80 Allow user-defined scoring in Gnus
* lisp/gnus/gnus-score.el (gnus-score-func): New function (bug#43413).
* doc/misc/gnus.texi (Score File Format): Document it.
2020-09-17 17:02:48 +02:00
martin rudalics
82de8ecc08 Make delete-pair only delete pairs that are part of insert-pair-alist
* lisp/emacs-lisp/lisp.el (delete-pair): Only delete pairs that
are part of `insert-pair-alist' (bug#4136).
2020-09-17 16:43:45 +02:00
Tino Calancha
23a3333b3e Give Lisp control on the lossage size
Add a command 'lossage-size' to set the maximum
number or recorded keystrokes (Bug#38796).

* src/keyboard.c (lossage_limit):
Static variable with the current lossage size limit.
(MIN_NUM_RECENT_KEYS): Renamed from NUM_RECENT_KEYS.
Set it as 100 and use it as the minimum value for lossage_limit.
Keep the same default for the vector size as before (300).
(lossage-size): New command.
(update_recent_keys): Helper function.
(command_loop_1)
(record_char)
(recent-keys)
(syms_of_keyboard): Use lossage_limit as the vector size.

* lisp/help.el (view-lossage): Mention the new command in the docstring.
* etc/NEWS (Changes in Emacs 28.1): Announce this change.
* doc/emacs/help.texi (Misc Help): Update manual.
* test/src/keyboard-tests.el (keyboard-lossage-size): Add test.
2020-09-17 16:32:18 +02:00
Lars Ingebrigtsen
cd151d0608 Fix up previous change for column/line spec mechanism in the mode line
* lisp/bindings.el (column-number-indicator-zero-based): Make
obsolete (bug#28648).
(mode-line-position-column-line-format): New variable.
(mode-line-position--column-line-properties): New const.
(mode-line-position): Use it.
2020-09-17 16:09:37 +02:00
Andreas Schwab
c6291d6efe Remove pointless use of intern
* lisp/mwheel.el (mouse-wheel-left-event)
(mouse-wheel-right-event): Replace use of intern with quoted
symbol.
* lisp/profiler.el (profiler-calltree-build-unified): Likewise.
* lisp/vc/ediff-util.el (ediff-debug-info): Likewise.
2020-09-17 11:13:54 +02:00
Michael Albinus
92f342f38d D-Bus: keep type information in D-Bus events
* doc/misc/dbus.texi (Errors and Events):
* etc/NEWS: D-Bus events keep the type information of their arguments.

* lisp/net/dbus.el (dbus-check-event): Fix docstring.
(dbus-delete-types, dbus-flatten-types): New defuns.
(dbus-handle-event, dbus-register-property, dbus-property-handler):
Handle type information.
(dbus-set-property): Fix thinko.

* src/dbusbind.c (XD_BASIC_DBUS_TYPE): Simplify.
(xd_dbus_type_to_symbol): New function.
(xd_retrieve_arg): Return type information for the arguments.
(xd_read_message_1):  Return type information for the error name.
(dbus-registered-objects-table): Fix docstring.
2020-09-16 14:32:57 +02:00
Lars Ingebrigtsen
96f1fedf4d Fix problem with previous dired.el change
* lisp/dired.el (dired-get-filename): dired-current-directory
can't be called before the dired buffer has been set up.
(add-hook 'dired-mode-hook 'dired-sort-toggle) calls
dired-get-filename in a way that exposes this problem, so avoid
it.
2020-09-16 13:34:58 +02:00
Lars Ingebrigtsen
b43287e413 Tweak previous report-emacs-bug-hook change
* lisp/mail/emacsbug.el (report-emacs-bug-hook): Add to the hook
locally so sending stuff from Message afterwards won't trigger the
same question.
2020-09-16 13:25:10 +02:00
Masahiro Nakamura
f028a893a5 ; Minor fix for nsxwidget patch
* lisp/xwdget.el (xwidget-webkit-download-dir)
(xwidget-webkit-save-as-file): Set version to 28.1 because the patch
was introduced in Emacs 28.0.50.

* src/nsxwidget.m: Fix typo.
2020-09-16 00:51:04 +01:00
Lars Ingebrigtsen
eeae97282e Make sgml-validate not bug out from buffers not visiting a file
* lisp/textmodes/sgml-mode.el (sgml-validate): Don't bug out when
running from a buffer that's not visiting a file (bug#22906).
2020-09-15 18:13:14 +02:00
Eli Zaretskii
c07ec3f43e ; * etc/NEWS: Fix wording of a recently added entry. 2020-09-15 19:08:55 +03:00
Eli Zaretskii
360145a83c Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs 2020-09-15 19:06:23 +03:00
Eli Zaretskii
1b68d76dc1 ; * src/font.c (syms_of_font) <query-all-font-backends>: Doc fix. 2020-09-15 19:05:53 +03:00
Lars Ingebrigtsen
5e6393fc61 Use a square root character in calc displays
* lisp/calc/calccomp.el (math-compose-sqrt): Use a square root
character, if possible (bug#22919).  Suggested by Zephyr Pellerin
<zephyr.pellerin@gmail.com>.
2020-09-15 18:03:50 +02:00
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