]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoNew variable `redisplay_adhoc_scroll_in_resize_mini_windows`
Stefan Monnier [Sat, 12 Dec 2020 15:16:42 +0000 (10:16 -0500)]
New variable `redisplay_adhoc_scroll_in_resize_mini_windows`

* src/xdisp.c (syms_of_xdisp): Define it.
(resize_mini_window): Obey it.

3 years ago* src/keyboard.c: Fix bug#5803.
Stefan Monnier [Sat, 12 Dec 2020 14:56:04 +0000 (09:56 -0500)]
* src/keyboard.c: Fix bug#5803.

A long time ago, `read_key_sequence` used to read the keymaps at the
start, so if something happened between this start and the moment
the user actually hits a key, `read_key_sequence` could end up using
the wrong keymaps.  To work around this problem, the code used
`record_asynch_buffer_change` to try and trigger `read_key_sequence`
to re-read the keymaps in some known cases.

Several years ago, `read_key_sequence` was changed so as to read the keymaps
only once the user hits a key, making this machinery now redundant
(and also harmful apparently in bug#5803 because it introduces
"spurious" events).

So we here remove `record_asynch_buffer_change` and the
`BUFFER_SWITCH_EVENT` and `Qbuffer_switch` pseudo-events it generated.

* src/termhooks.h (enum event_kind): Delete `BUFFER_SWITCH_EVENT`.
* src/keyboard.c: (record_asynch_buffer_change): Delete function.
(syms_of_keyboard): Delete `Qbuffer_switch`.
(force_auto_save_soon, readable_events)
(kbd_buffer_store_buffered_event, kbd_buffer_get_event)
(make_lispy_event):
* src/xterm.c (handle_one_xevent):
* src/w32term.c (w32_read_socket):
* src/process.c (wait_reading_process_output)
(read_and_dispose_of_process_output, exec_sentinel): Simplify accordingly.

3 years agoCC Mode: Handle several K&R parameters per declaration
Alan Mackenzie [Sat, 12 Dec 2020 14:38:38 +0000 (14:38 +0000)]
CC Mode: Handle several K&R parameters per declaration

This fixes bug #45160.

* lisp/progmodes/cc-engine.el (c-in-knr-argdecl): Reformulate the latter part
of this function using c-do-declarators.

3 years agoAlter the "Redundant pcase patter" warning message
Lars Ingebrigtsen [Sat, 12 Dec 2020 13:22:58 +0000 (14:22 +0100)]
Alter the "Redundant pcase patter" warning message

* lisp/emacs-lisp/pcase.el (pcase--expand): Make the "Redundant
pcase pattern" warning less vague (bug#31350).

3 years agoMake elint load `require'd packages
Lars Ingebrigtsen [Sat, 12 Dec 2020 13:13:32 +0000 (14:13 +0100)]
Make elint load `require'd packages

* lisp/emacs-lisp/elint.el (elint-require-form): New function to
load files that are `require'd (bug#27006).
(elint-special-forms): Add function.

3 years ago; * lisp/info.el (Info-toc-build): Fix last change. (Bug#28074)
Eli Zaretskii [Sat, 12 Dec 2020 13:05:26 +0000 (15:05 +0200)]
; * lisp/info.el (Info-toc-build): Fix last change.  (Bug#28074)

3 years agoExplicitly specify svg base_uri using `:base-uri' image property
Zajcev Evgeny [Thu, 3 Dec 2020 15:37:18 +0000 (18:37 +0300)]
Explicitly specify svg base_uri using `:base-uri' image property

* src/image.c (svg_load): Check `:base-uri' image property to
explicitly set base_uri for images embedded into SVG
(enum svg_keyword_index):
(svg_format): Add :base-uri.
* lisp/svg.el (svg-embed-base-uri-image): New function to embed images
located relative to images `:base-uri'

3 years agoRevert "Explicitly specify svg base_uri using `:base-uri' image property"
Alan Third [Sat, 12 Dec 2020 12:30:57 +0000 (12:30 +0000)]
Revert "Explicitly specify svg base_uri using `:base-uri' image property"

This reverts commit a8e2143a5c03785742464406306fda7fce6caf04.

I applied the incorrect version of the patch.

3 years agoOffer to save tutorial position on Emacs exit
Lars Ingebrigtsen [Sat, 12 Dec 2020 12:46:33 +0000 (13:46 +0100)]
Offer to save tutorial position on Emacs exit

* lisp/tutorial.el (tutorial--buffer): New variable (bug#27998).
(tutorial--save-on-kill): Use it.
(help-with-tutorial): Set it and add new function to
kill-emacs-query-functions.

3 years agoUpdate Info-toc-build parsing
Lars Ingebrigtsen [Sat, 12 Dec 2020 12:33:09 +0000 (13:33 +0100)]
Update Info-toc-build parsing

* lisp/info.el (Info-toc-build): Update to understand EMDASH
instead of a hyphen in the detailed node listing (bug#28074).

3 years agoPrefer setq-local in python.el
Stefan Kangas [Sat, 12 Dec 2020 12:27:35 +0000 (13:27 +0100)]
Prefer setq-local in python.el

* lisp/progmodes/python.el: Require Emacs 24.2 instead of 24.1.
(python-indent-guess-indent-offset)
(python-shell-font-lock-with-font-lock-buffer)
(python-shell-font-lock-turn-on)
(python-shell-font-lock-turn-off, python-shell-font-lock-toggle)
(python-shell-comint-watch-for-first-prompt-output-filter)
(inferior-python-mode, python-shell-completion-native-turn-off)
(python-shell-completion-native-turn-on)
(python-pdbtrack-comint-output-filter-function, python-mode):
Prefer setq-local.

3 years agoPreserve point in dired buffers in dired-*-find-file* commands
Lars Ingebrigtsen [Sat, 12 Dec 2020 11:48:53 +0000 (12:48 +0100)]
Preserve point in dired buffers in dired-*-find-file* commands

* lisp/dired.el (dired--find-file): New function (bug#28949).
(dired-find-file): Use it.
(dired-mouse-find-file): Ditto.
(dired-find-file-other-window): Ditto.

3 years agoMake dired-toggle-read-only check whether the directory is writable
Lars Ingebrigtsen [Sat, 12 Dec 2020 11:32:15 +0000 (12:32 +0100)]
Make dired-toggle-read-only check whether the directory is writable

* lisp/dired.el (dired-toggle-read-only): Check that the directory
is writable (bug#29412).

3 years agoUnbreak the MS-Windows build broken by recent changes
Eli Zaretskii [Sat, 12 Dec 2020 11:25:35 +0000 (13:25 +0200)]
Unbreak the MS-Windows build broken by recent changes

* src/image.c (rsvg_handle_set_dpi_x_y) [WINDOWSNT]: DEF_DLL_FN it.
(init_svg_functions): LOAD_DLL_FN rsvg_handle_set_dpi_x_y.
<rsvg_handle_set_dpi_x_y>: Define as a macro

3 years agoImprove the documentation of marker handling when reverting
Lars Ingebrigtsen [Sat, 12 Dec 2020 11:20:38 +0000 (12:20 +0100)]
Improve the documentation of marker handling when reverting

* doc/lispref/backups.texi (Reverting): Mention markers from
non-file sources (bug#30028).

* lisp/files.el (revert-buffer): Mention what happens with markers
(bug#30028).

* src/fileio.c (Finsert_file_contents): Say a bit more about what
markers are restored (bug#30028).

3 years agoImprove support for 'memory-report' on MS-Windows
Eli Zaretskii [Sat, 12 Dec 2020 11:12:57 +0000 (13:12 +0200)]
Improve support for 'memory-report' on MS-Windows

* src/w32term.c (w32_image_size): New function.
* src/image.c (image_frame_cache_size) [HAVE_NTGUI]: Support
reporting the size of frame image cache.
(image_frame_cache_size, Fimage_cache_size): The total size is
now of the type 'size_t', not 'int'.

3 years agoAllow customizing the Gnus summary thread indicators
Pankaj Jangid [Sat, 12 Dec 2020 10:47:12 +0000 (11:47 +0100)]
Allow customizing the Gnus summary thread indicators

* doc/misc/gnus.texi (Summary Buffer Lines): Document them.

* lisp/gnus/gnus-sum.el (gnus-summary-prepare-threads): Use them.

* lisp/gnus/gnus-sum.el (gnus-sum-opening-bracket)
(gnus-sum-closing-bracket, gnus-sum-opening-bracket-adopted)
(gnus-sum-closing-bracket-adopted): New variables.

3 years agoImprove some NS drawing code
Alan Third [Fri, 11 Dec 2020 19:52:20 +0000 (19:52 +0000)]
Improve some NS drawing code

* src/nsterm.m (ns_update_end): There's no need to schedule a redraw
if nothing has been changed.
(ns_set_vertical_scroll_bar):
(ns_set_horizontal_scroll_bar): Fix the logic for clearing under the
scrollbars.
(ns_clear_under_internal_border): No need to clip, the default
clipping rectangle will be fine.

3 years agoUse real DPI when rendering SVGs (bug#45124)
Alan Third [Wed, 9 Dec 2020 00:02:44 +0000 (00:02 +0000)]
Use real DPI when rendering SVGs (bug#45124)

* src/image.c (svg_css_length_to_pixels): Pass in a DPI value instead
of using a hard coded value.
(svg_load_image): Set the DPI on the rsvg_handle, and pass it to
svg_css_length_to_pixels.

3 years agoExplicitly specify svg base_uri using `:base-uri' image property
Zajcev Evgeny [Thu, 3 Dec 2020 15:37:18 +0000 (18:37 +0300)]
Explicitly specify svg base_uri using `:base-uri' image property

* src/image.c (svg_load): Check `:base-uri' image property to
  explicitly set base_uri for images embedded into SVG

3 years ago* lisp/emacs-lisp/thunk.el (thunk-let*): Don't modify `bindings`
Stefan Monnier [Sat, 12 Dec 2020 00:26:43 +0000 (19:26 -0500)]
* lisp/emacs-lisp/thunk.el (thunk-let*): Don't modify `bindings`

3 years ago* lisp/play/dunnet.el: Make it so loading the file is harmless
Stefan Monnier [Sat, 12 Dec 2020 00:06:55 +0000 (19:06 -0500)]
* lisp/play/dunnet.el: Make it so loading the file is harmless

Move comments into docstrings while at it.

(dun-batch): New function.

3 years agoFix copyright line
Lars Ingebrigtsen [Fri, 11 Dec 2020 22:18:01 +0000 (23:18 +0100)]
Fix copyright line

3 years agobutton-buttonize doc string clarification
Lars Ingebrigtsen [Fri, 11 Dec 2020 20:30:25 +0000 (21:30 +0100)]
button-buttonize doc string clarification

* lisp/button.el (button-buttonize): Clarify what happens when
DATA isn't present.

3 years agoFix image-cache-size crash
Lars Ingebrigtsen [Fri, 11 Dec 2020 20:16:04 +0000 (21:16 +0100)]
Fix image-cache-size crash

* src/image.c (image_frame_cache_size): Ensure that img->pixmap is
in use before trying to access it.

3 years ago* src/fns.c (Fbuffer_hash): Doc fix. (Bug#45178)
Stefan Kangas [Fri, 11 Dec 2020 19:08:24 +0000 (20:08 +0100)]
* src/fns.c (Fbuffer_hash): Doc fix.  (Bug#45178)

3 years ago; cperl-mode: Eliminate fallbacks if font-lock isn't loaded
Harald Jörg [Fri, 11 Dec 2020 16:48:30 +0000 (17:48 +0100)]
; cperl-mode: Eliminate fallbacks if font-lock isn't loaded

* lisp/progmodes/cperl-mode.el (cperl-find-pods-heres):
Eliminate conditionals which always evaluate to true if
font-lock is preloaded (since Emacs 22.1).  (Bug#45183)

3 years agoAlso sort the totals section by size
Lars Ingebrigtsen [Fri, 11 Dec 2020 17:58:41 +0000 (18:58 +0100)]
Also sort the totals section by size

* lisp/emacs-lisp/memory-report.el (memory-report): Sort the
totals by size, too.

3 years agoTweak memory-report--format
Lars Ingebrigtsen [Fri, 11 Dec 2020 17:48:44 +0000 (18:48 +0100)]
Tweak memory-report--format

* lisp/emacs-lisp/memory-report.el (memory-report--format): Make
everything line up, even when there's "1023.4kB".

3 years agoAppend incremental message segments in socks-filter
F. Jason Park [Fri, 11 Dec 2020 15:36:02 +0000 (16:36 +0100)]
Append incremental message segments in socks-filter

* lisp/net/socks.el (socks-filter): Preserve the order data arrive
instead of semi-reversing it (bug#45162).

Copyright-paperwork-exempt: yes

3 years agodocstring: If FRAME is nil, it defaults to selected frame.
Pankaj Jangid [Fri, 11 Dec 2020 15:31:48 +0000 (16:31 +0100)]
docstring: If FRAME is nil, it defaults to selected frame.

* src/frame.c (Fset_frame_size): Clarify what a nil FRAME
parameter means (bug#45170).

3 years agoClarify fortran-beginning-of-subprogram doc string after change
Lars Ingebrigtsen [Fri, 11 Dec 2020 15:17:31 +0000 (16:17 +0100)]
Clarify fortran-beginning-of-subprogram doc string after change

* lisp/progmodes/fortran.el (fortran-beginning-of-subprogram):
Clarify doc string (bug#33208).

3 years ago* lisp/progmodes/python.el: Bump version.
Stefan Kangas [Fri, 11 Dec 2020 15:16:36 +0000 (16:16 +0100)]
* lisp/progmodes/python.el: Bump version.

3 years agoFix compilation of image.c on non-Cairo systems
Lars Ingebrigtsen [Fri, 11 Dec 2020 15:02:50 +0000 (16:02 +0100)]
Fix compilation of image.c on non-Cairo systems

* src/image.c (image_frame_cache_size): pixmap->width etc is only
defined on Cairo.  Return 0 for now on other systems.

3 years agobibtex-autokey-get-year: Follow iso8601
Roland Winkler [Fri, 11 Dec 2020 15:00:26 +0000 (09:00 -0600)]
bibtex-autokey-get-year: Follow iso8601

* lisp/textmodes/bibtex.el (bibtex-autokey-get-year): Follow
iso8601 (bug#36252).

3 years agoFix object-interval tests
Lars Ingebrigtsen [Fri, 11 Dec 2020 14:21:44 +0000 (15:21 +0100)]
Fix object-interval tests

* test/src/fns-tests.el (object-intervals): Fix tests.

3 years agoFix parsing error in exif
Lars Ingebrigtsen [Fri, 11 Dec 2020 14:16:05 +0000 (15:16 +0100)]
Fix parsing error in exif

* lisp/image/exif.el (exif--parse-exif-chunk): The offset is a
four-byte number.  Reported by Alan Light <lightalan@gmail.com>.

3 years agoAdd a new command `memory-report'
Lars Ingebrigtsen [Fri, 11 Dec 2020 13:49:53 +0000 (14:49 +0100)]
Add a new command `memory-report'

* doc/lispref/internals.texi (Garbage Collection): Document it.
* lisp/emacs-lisp/memory-report.el: New package.

3 years agoAdd new function `object-intervals'
Lars Ingebrigtsen [Fri, 11 Dec 2020 13:40:20 +0000 (14:40 +0100)]
Add new function `object-intervals'

* doc/lispref/text.texi (Examining Properties): Document it.
* src/fns.c (Fobject_intervals): New defun.
(collect_interval): New function.

3 years agoAdd new function 'image-cache-size'
Lars Ingebrigtsen [Fri, 11 Dec 2020 13:30:44 +0000 (14:30 +0100)]
Add new function 'image-cache-size'

* src/image.c (Fimage_cache_size): New defun.
(image_frame_cache_size): New function.

3 years agoAdd a new function `button-buttonize'
Lars Ingebrigtsen [Fri, 11 Dec 2020 13:25:20 +0000 (14:25 +0100)]
Add a new function `button-buttonize'

* doc/lispref/display.texi (Manipulating Buttons): Document it.

* lisp/button.el (button-buttonize): Implement it.

3 years ago* lisp/battery.el (battery--upower-devices): Protect the D-Bus call.
Michael Albinus [Fri, 11 Dec 2020 10:31:10 +0000 (11:31 +0100)]
* lisp/battery.el (battery--upower-devices): Protect the D-Bus call.

(Bug#45163)

3 years agoFix quoting in gnus-buffer-configuration
Basil L. Contovounesios [Fri, 11 Dec 2020 01:50:17 +0000 (01:50 +0000)]
Fix quoting in gnus-buffer-configuration

* lisp/gnus/gnus-win.el (gnus-buffer-configuration): Include
shell-command-buffer-name value rather than symbol in pipe
configuration.  (Bug#39138, bug#45154)

3 years agoBe more graceful about handling Gnus search errors
Eric Abrahamsen [Fri, 13 Nov 2020 04:03:05 +0000 (20:03 -0800)]
Be more graceful about handling Gnus search errors

One search may be applied to several servers: don't let one server's
error derail the whole process.

* lisp/gnus/gnus-search.el (gnus-search-config-error): Define new
error.
(gnus-search-run-search, gnus-search-server-to-engine): Raise this
specific error as appropriate.
(gnus-search-run-query): Catch this error and effectively demote it.

3 years agoRemove some ancient Emacs compat code from cperl-mode
Stefan Kangas [Thu, 10 Dec 2020 16:42:50 +0000 (17:42 +0100)]
Remove some ancient Emacs compat code from cperl-mode

This variable has this value by default since Emacs 19.34.

* lisp/progmodes/cperl-mode.el (cperl-mode): Remove some compat code.

3 years agoPrefer setq-local in cperl-mode.el
Stefan Kangas [Thu, 10 Dec 2020 16:34:05 +0000 (17:34 +0100)]
Prefer setq-local in cperl-mode.el

* lisp/progmodes/cperl-mode.el (cperl-mode, cperl-info-buffer)
(cperl-setup-tmp-buf, cperl-emulate-lazy-lock): Prefer setq-local.

3 years agoPrefer setq-local in bibtex-style.el
Stefan Kangas [Thu, 10 Dec 2020 08:44:25 +0000 (09:44 +0100)]
Prefer setq-local in bibtex-style.el

* lisp/textmodes/bibtex-style.el (bibtex-style-mode): Prefer
setq-local.

3 years agoAvoid segfaults in pos_visible_p
Eli Zaretskii [Thu, 10 Dec 2020 15:10:06 +0000 (17:10 +0200)]
Avoid segfaults in pos_visible_p

* src/xdisp.c (pos_visible_p): Don't try accessing the glyphs
produced by iterator whose glyph_row was set to NULL; instead,
record the X coordinate before the display string when moving past
it, and use the recorded coordinate if needed.  (Bug#45156)

3 years agoFupcase no longer maps ?ß to itself (bug#11309)
Mattias Engdegård [Thu, 10 Dec 2020 09:57:16 +0000 (10:57 +0100)]
Fupcase no longer maps ?ß to itself (bug#11309)

* test/src/casefiddle-tests.el (casefiddle-tests-char-casing):
(upcase ?ß) now returns ?ẞ (U+7838), partly for technical reasons but
the previous behaviour was arbitrary and arguably less useful.
Correct upcasing of ß is normally SS, which is what Fupcase returns if
given a string, or (for special purposes) ẞ.

3 years agoAllow creating a new tab from the minibuffer (bug#45072)
Juri Linkov [Thu, 10 Dec 2020 08:28:32 +0000 (10:28 +0200)]
Allow creating a new tab from the minibuffer (bug#45072)

* lisp/tab-bar.el (tab-bar-new-tab-to): Select the original window
when selected window is the minibuffer.

3 years agoValentin Gatien-Baron <valentin.gatienbaron@gmail.com>
Dmitry Gutov [Thu, 10 Dec 2020 00:31:39 +0000 (02:31 +0200)]
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>

* lisp/vc/vc-hg.el (vc-hg-working-revision):
Use 'hg log -T' instead of 'hg parent' (bug#36534).

Copyright-paperwork-exempt: yes

3 years agoFix thinko in my previous commit
Stefan Kangas [Wed, 9 Dec 2020 21:40:31 +0000 (22:40 +0100)]
Fix thinko in my previous commit

* lisp/pcomplete.el (pcomplete-comint-setup): Fix thinko in my
previous commit.  This was not a quoted symbol but a variable, and
therefore cannot use setq-local.

3 years ago* lisp/progmodes/xref.el: Bump the version.
Dmitry Gutov [Wed, 9 Dec 2020 21:37:53 +0000 (23:37 +0200)]
* lisp/progmodes/xref.el: Bump the version.

3 years ago; Fix typo in my previous commit
Stefan Kangas [Wed, 9 Dec 2020 21:24:43 +0000 (22:24 +0100)]
; Fix typo in my previous commit

* lisp/pcomplete.el (pcomplete-comint-setup): Fix typo.

3 years agoAllow specifying the project to switch to programmatically
Dmitry Gutov [Wed, 9 Dec 2020 20:56:12 +0000 (22:56 +0200)]
Allow specifying the project to switch to programmatically

* lisp/progmodes/project.el (project-switch-project):
Allow specifying the project to switch to programmatically
(bug#45134).

3 years agoAdd missing defcustom keywords to new variables
Dmitry Gutov [Wed, 9 Dec 2020 19:42:19 +0000 (21:42 +0200)]
Add missing defcustom keywords to new variables

* lisp/progmodes/xref.el (xref-search-program-alist)
(xref-search-program): Add :version and :package-version.

3 years agoClarify `scroll-preserve-screen-position' doc string
Lars Ingebrigtsen [Wed, 9 Dec 2020 19:40:03 +0000 (20:40 +0100)]
Clarify `scroll-preserve-screen-position' doc string

* src/window.c (syms_of_window): Clarify the doc string (bug#7910).

3 years agoRemove isearch-input-method-local-p and always set buffer-local input-method
Juri Linkov [Wed, 9 Dec 2020 19:30:47 +0000 (21:30 +0200)]
Remove isearch-input-method-local-p and always set buffer-local input-method

* lisp/isearch.el (isearch-input-method-local-p): Remove defvar.
(isearch-mode): Don't set isearch-input-method-local-p.
Set buffer-local input-method-function to nil.
(isearch-done): When isearch-input-method-function is still non-nil,
set the buffer-local value of input-method-function.  (Bug#45005)

* lisp/international/isearch-x.el (isearch-toggle-specified-input-method)
(isearch-toggle-input-method, isearch-transient-input-method):
Don't set isearch-input-method-local-p to t.  Set buffer-local
input-method-function to nil.

* lisp/language/korea-util.el (isearch-toggle-korean-input-method)
(isearch-hangul-switch-symbol-ksc, isearch-hangul-switch-hanja):
Don't set isearch-input-method-local-p to t.  Set buffer-local
input-method-function to nil.

3 years agoSupport highlighting of ripgrep output (bug#44983)
Juri Linkov [Wed, 9 Dec 2020 19:16:03 +0000 (21:16 +0200)]
Support highlighting of ripgrep output (bug#44983)

* etc/grep.txt: Add ripgrep samples.

* lisp/progmodes/grep.el (grep-match-regexp): Highlight ripgrep matches too.
(grep-regexp-alist): Remove $ to highlight ripgrep binary file matches.

3 years agoStricter gradle-kotlin message pattern
Mattias Engdegård [Sun, 6 Dec 2020 15:22:09 +0000 (16:22 +0100)]
Stricter gradle-kotlin message pattern

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Rule 'gradle-kotlin': don't be more forgiving than necessary; we know
exactly what the output looks like (see
https://github.com/JetBrains/kotlin/commit/\
ffe8ae3840d7b9bdc82170c8181031f05ced68bd) and there is no reason to
risk mismatches or expensive backtracking (bug#18109).  Recognise
'info' level messages.  Convert to rx.

3 years agoInclude the keymap in the gud-mode doc string
Lars Ingebrigtsen [Wed, 9 Dec 2020 17:42:36 +0000 (18:42 +0100)]
Include the keymap in the gud-mode doc string

* lisp/progmodes/gud.el (gud-mode): Add the gud keymap to the end
of the doc string for easier access (bug#31406).

3 years ago`pdb' doc string clarification
Lars Ingebrigtsen [Wed, 9 Dec 2020 17:36:41 +0000 (18:36 +0100)]
`pdb' doc string clarification

* lisp/progmodes/gud.el (pdb): Mention that this command is for
debugging Python scripts.

3 years ago; Merge from origin/emacs-27
Glenn Morris [Wed, 9 Dec 2020 16:50:12 +0000 (08:50 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

809b22d18d (origin/emacs-27) Fix crash (segfault) in etags on generat...

3 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 9 Dec 2020 16:50:12 +0000 (08:50 -0800)]
Merge from origin/emacs-27

c0b3e38d7c Update publicsuffix.txt from upstream
3fe6cea6e0 * lisp/vc/vc.el: Update args of backend API calls in the h...

3 years ago; Merge from origin/emacs-27
Glenn Morris [Wed, 9 Dec 2020 16:50:12 +0000 (08:50 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

a40be60ec8 Backport Handle read-char-from-minibuffer and y-or-n-p fro...

3 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 9 Dec 2020 16:50:12 +0000 (08:50 -0800)]
Merge from origin/emacs-27

32090a3de4 Improve documentation of streams in batch mode
34feded008 Support ks_c_5601-1987 encoding
da00a6f317 Fix Xaw widget text disappearing when built with cairo (bu...
6916e7954a Improve documentation of 'ps-print-color-p'
6663b2f211 ; * lisp/simple.el (move-beginning-of-line): Doc fix.
a4dd03ebe9 ; * src/charset.c (Fmap_charset_chars): Doc fix.
d86cc3ffcb ; * src/chartab.c, src/lisp.h: Fix typos in comments.

3 years agoFix mark-defun in fortran-mode
Lars Ingebrigtsen [Wed, 9 Dec 2020 16:35:59 +0000 (17:35 +0100)]
Fix mark-defun in fortran-mode

* lisp/progmodes/fortran.el (fortran-beginning-of-subprogram):
Make mark-defun work (bug#33208).

3 years agoImprove predictability of 'scroll-preserve-screen-position'
Eli Zaretskii [Wed, 9 Dec 2020 16:13:35 +0000 (18:13 +0200)]
Improve predictability of 'scroll-preserve-screen-position'

* src/window.c (window_scroll_pixel_based): Compute the new
window-start more precisely when 'scroll-preserve-screen-position'
is non-nil.  (Bug#8355)

3 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Wed, 9 Dec 2020 15:18:01 +0000 (17:18 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

3 years agoUpdate docs of 'defvar' and 'defface'
Eli Zaretskii [Wed, 9 Dec 2020 15:17:09 +0000 (17:17 +0200)]
Update docs of 'defvar' and 'defface'

* doc/lispref/display.texi (Defining Faces):
* doc/lispref/variables.texi (Defining Variables): Update the
descriptions of 'defvar' and 'defface' per recent changes in
'eval-last-sexp'.  (Bug#45125)

3 years agoFix info mode fontification of built-in (*note Built-ins::)
Lars Ingebrigtsen [Wed, 9 Dec 2020 15:07:50 +0000 (16:07 +0100)]
Fix info mode fontification of built-in (*note Built-ins::)

* lisp/info.el (Info-fontify-node): Don't interpret things like
"built-in" as being the word "in" (bug#34661).

3 years agoFix crash (segfault) in etags on generating tags for Erlang files
Serge Tupchii [Tue, 8 Dec 2020 20:22:34 +0000 (21:22 +0100)]
Fix crash (segfault) in etags on generating tags for Erlang files

* lib-src/etags.c: Set allocated and lastlen to zero, after
freeing last ptr in Erlang_functions to prevent dereferencing NULL
pointer (bug#45122).

Copyright-paperwork-exempt: yes

(cherry picked from commit 2d8f0364fcd1d5dad2b82dd3a9af870b03854547)

3 years agoRecognise ß properly as a lower-case letter (bug#11309)
Mattias Engdegård [Wed, 9 Dec 2020 12:27:16 +0000 (13:27 +0100)]
Recognise ß properly as a lower-case letter (bug#11309)

ß was incorrectly treated as a caseless character and thus not matched
by the regexp [[:lower:]] (or, in case-folding mode, [[:upper:]]).
The reason is that the upcase table maps it to itself, which can be
remedied by mapping it to ẞ (U+7838) instead.  Doing so does not
affect upcasing since the special-uppercase property maps it to SS.

* lisp/international/characters.el (tbl): Map ß to ẞ in the upcase
table.
* test/src/regex-emacs-tests.el (regexp-eszett): Uncomment previously
failing tests.  Add checks to make sure that case transformations
remain valid.

3 years agocl-pushnew manual clarification
Lars Ingebrigtsen [Wed, 9 Dec 2020 13:52:49 +0000 (14:52 +0100)]
cl-pushnew manual clarification

* doc/misc/cl.texi (Modify Macros): Don't claim that cl-pushnew
uses eql.
(Lists as Sets): Mention that eql is the default comparison function.

3 years agocl-defmethod doc string clarification
Lars Ingebrigtsen [Wed, 9 Dec 2020 13:51:48 +0000 (14:51 +0100)]
cl-defmethod doc string clarification

* lisp/emacs-lisp/cl-generic.el (cl-defmethod): Clarify the doc
string, and give an example (bug#42322).

3 years agoClarify the default-boundp doc string
Lars Ingebrigtsen [Wed, 9 Dec 2020 13:18:28 +0000 (14:18 +0100)]
Clarify the default-boundp doc string

* src/data.c (Fdefault_boundp): Doc string clarification (bug#44141).

3 years agoMake ediff offer to create files it's inferring
Lars Ingebrigtsen [Wed, 9 Dec 2020 12:50:06 +0000 (13:50 +0100)]
Make ediff offer to create files it's inferring

* lisp/vc/ediff-ptch.el (ediff-fixup-patch-map): Offer to create
the inferred file name (if it doesn't exist) (bug#8009).  This allows
applying a patch that creates a file.

3 years agoImprove tests for gio file notifications
Michael Albinus [Wed, 9 Dec 2020 13:49:58 +0000 (14:49 +0100)]
Improve tests for gio file notifications

* .gitlab-ci.yml (test-filenotify-gio): Call "make -k".

* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
Set connection property "gio-file-monitor".

* lisp/net/tramp-sh.el (tramp-get-remote-gio-file-monitor): New defun.
(tramp-sh-handle-file-notify-add-watch): Use it.

* test/lisp/filenotify-tests.el (file-notify--test-read-event): Simplify.
(file-notify--test-monitor): Handle also remote "gio monitor".
(file-notify-test03-events, file-notify-test04-autorevert)
(file-notify-test05-file-validity, file-notify-test08-backup)
(file-notify-test09-watched-file-in-watched-dir):
Handle GKqueueFileMonitor.

3 years agoFilter revoked keys when saving files
Lars Ingebrigtsen [Wed, 9 Dec 2020 12:17:06 +0000 (13:17 +0100)]
Filter revoked keys when saving files

* lisp/epa-file.el (epa-file-write-region): Use it to select a
non-revoked key (bug#22359).

* lisp/epg.el (epg--filter-revoked-keys): New function.

3 years agoPrefer setq-local in most files
Stefan Kangas [Wed, 9 Dec 2020 08:44:38 +0000 (09:44 +0100)]
Prefer setq-local in most files

* lisp/apropos.el (apropos-print):
* lisp/buff-menu.el (Buffer-menu-mode):
* lisp/calc/calc.el (calc-trail-buffer):
* lisp/chistory.el (command-history-mode):
* lisp/dabbrev.el:
* lisp/dframe.el (dframe-frame-mode):
* lisp/doc-view.el (doc-view-presentation-mode):
* lisp/ebuff-menu.el (electric-buffer-menu-mode)
(electric-buffer-update-highlight):
* lisp/edmacro.el (edit-kbd-macro):
* lisp/face-remap.el (buffer-face-set, buffer-face-toggle):
* lisp/files.el:
(find-file-noselect-1, hack-local-variables-confirm)
(set-visited-file-name, revert-buffer--default):
* lisp/filesets.el (filesets-spawn-external-viewer):
* lisp/find-dired.el (find-dired):
* lisp/find-lisp.el (find-lisp-find-dired-internal):
* lisp/finder.el (finder-mode):
* lisp/font-core.el (font-lock-default-function):
* lisp/format.el (format-annotate-function):
* lisp/help-fns.el (describe-variable):
* lisp/help-mode.el (help-mode):
* lisp/icomplete.el (icomplete-minibuffer-setup)
(icomplete--in-region-setup):
* lisp/ido.el (ido-completion-help, ido-tidy):
* lisp/international/robin.el (robin-activate):
* lisp/leim/quail/hangul.el (hangul-input-method-activate):
* lisp/leim/quail/uni-input.el (ucs-input-activate):
* lisp/man.el (Man-mode):
* lisp/master.el (master-set-slave):
* lisp/minibuffer.el (minibuffer-completion-help)
(read-file-name-default):
* lisp/outline.el (outline-minor-mode):
* lisp/pcomplete.el (pcomplete-comint-setup):
* lisp/proced.el (proced-mode):
* lisp/recentf.el (recentf-edit-list, recentf-open-files-items):
* lisp/replace.el (occur-1):
* lisp/reveal.el (reveal-mode):
* lisp/ruler-mode.el (ruler--save-header-line-format):
* lisp/scroll-lock.el (scroll-lock-mode):
* lisp/startup.el (normal-top-level, normal-splash-screen):
* lisp/strokes.el (strokes-list-strokes):
* lisp/thumbs.el (thumbs-insert-image, thumbs-show-thumbs-list):
* lisp/tree-widget.el (tree-widget-set-theme):
* lisp/window.el (read-buffer-to-switch):
* lisp/xwidget.el (xwidget-webkit-begin-edit-textarea): Prefer
setq-local.

3 years agoPrefer setq-local in dired extensions
Stefan Kangas [Wed, 9 Dec 2020 08:18:04 +0000 (09:18 +0100)]
Prefer setq-local in dired extensions

* lisp/dired-aux.el (dired-diff, dired-compare-directories)
(dired-do-create-files, dired-isearch-filenames):
* lisp/dired-x.el (dired-virtual, dired-vm):
* lisp/wdired.el (wdired-change-to-wdired-mode)
(wdired-change-to-dired-mode, wdired-preprocess-perms):

3 years agoUpdate publicsuffix.txt from upstream
Stefan Kangas [Wed, 9 Dec 2020 10:52:59 +0000 (11:52 +0100)]
Update publicsuffix.txt from upstream

* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2020-11-30 21:57:25 UTC.

3 years agoFix [:upper:] and [:lower:] for Unicode characters (bug#11309)
Mattias Engdegård [Tue, 8 Dec 2020 11:47:58 +0000 (12:47 +0100)]
Fix [:upper:] and [:lower:] for Unicode characters (bug#11309)

* src/regex-emacs.c (execute_charset): Add canon_table argument to
allow expression of a correct predicate for [:upper:] and [:lower:].
(mutually_exclusive_p, re_match_2_internal): Pass extra argument.
* test/src/regex-emacs-tests.el (regexp-case-fold, regexp-eszett):
New tests.  Parts of regexp-eszett still fail and are commented out.

3 years agoPrefer setq-local in some remaining progmodes
Stefan Kangas [Wed, 9 Dec 2020 07:34:35 +0000 (08:34 +0100)]
Prefer setq-local in some remaining progmodes

* lisp/progmodes/dcl-mode.el (dcl-mode):
* lisp/progmodes/hideif.el (hide-ifdef-mode)
(hide-ifdef-toggle-shadowing):
* lisp/progmodes/ps-mode.el (ps-mode, ps-run-mode):
* lisp/progmodes/xscheme.el (xscheme-start)
(local-set-scheme-interaction-buffer, scheme-interaction-mode):
Prefer setq-local.

3 years agoPrefer setq-local in gdb-mi.el
Stefan Kangas [Wed, 9 Dec 2020 07:30:09 +0000 (08:30 +0100)]
Prefer setq-local in gdb-mi.el

* lisp/progmodes/gdb-mi.el (gdb--check-interpreter, gdb)
(gdb-init-buffer, gdb-get-buffer-create, gdb-threads-mode)
(gdb-memory-mode, gdb-disassembly-mode, gdb-frames-mode): Prefer setq-local.

3 years agoPrefer setq-local in etags.el
Stefan Kangas [Wed, 9 Dec 2020 07:29:03 +0000 (08:29 +0100)]
Prefer setq-local in etags.el

* lisp/progmodes/etags.el (initialize-new-tags-table)
(etags-recognize-tags-table, tags-recognize-empty-tags-table):
Prefer setq-local.

3 years agoPrefer setq-local in cfengine.el
Stefan Kangas [Wed, 9 Dec 2020 07:21:05 +0000 (08:21 +0100)]
Prefer setq-local in cfengine.el

* lisp/progmodes/cfengine.el (cfengine-common-settings)
(cfengine3-mode, cfengine2-mode): Prefer setq-local.

3 years agoPrefer setq-local in sql.el
Stefan Kangas [Wed, 9 Dec 2020 07:13:41 +0000 (08:13 +0100)]
Prefer setq-local in sql.el

* lisp/progmodes/sql.el (sql--oracle-show-reserved-words)
(sql-product-font-lock, sql-list-all, sql-mode)
(sql-interactive-mode, sql-product-interactive): Prefer
setq-local.

3 years agoPrefer setq-local in font-lock.el
Stefan Kangas [Wed, 9 Dec 2020 07:09:56 +0000 (08:09 +0100)]
Prefer setq-local in font-lock.el

* lisp/font-lock.el:
(font-lock-add-keywords, font-lock-turn-on-thing-lock)
(font-lock-fontify-syntactic-keywords-region)
(font-lock-set-defaults): Prefer setq-local.

3 years ago* lisp/progmodes/sql.el: Remove redundant URL.
Stefan Kangas [Wed, 9 Dec 2020 06:58:55 +0000 (07:58 +0100)]
* lisp/progmodes/sql.el: Remove redundant URL.

3 years agoMake abbrev-tests.el more deterministic
Basil L. Contovounesios [Wed, 9 Dec 2020 00:54:34 +0000 (00:54 +0000)]
Make abbrev-tests.el more deterministic

* test/lisp/abbrev-tests.el (abbrev--table-symbols-test): Don't rely
on order of symbols in obarray.

3 years agoMake uncache_image slightly more efficient
Lars Ingebrigtsen [Wed, 9 Dec 2020 00:10:04 +0000 (01:10 +0100)]
Make uncache_image slightly more efficient

* src/image.c (uncache_image): Extremely minor speed-up: Only
compute the hash once.

3 years ago* src/fns.c: Remove left over include
Stefan Monnier [Tue, 8 Dec 2020 23:54:52 +0000 (18:54 -0500)]
* src/fns.c: Remove left over include

3 years agoRestore Emacs 27 image cache semantics
Lars Ingebrigtsen [Tue, 8 Dec 2020 23:42:06 +0000 (00:42 +0100)]
Restore Emacs 27 image cache semantics

* src/image.c (equal_lists): Remove.
(search_image_cache): Use Fequal instead of equal_lists.
Benchmarking shows no measurable time difference, and this
restores the cache semantics from Emacs 27 (where file names
didn't have to be EQ for the cache to be used).

3 years agoRemove interactive spec from internal eldoc--format-doc-buffer
João Távora [Tue, 8 Dec 2020 23:40:13 +0000 (23:40 +0000)]
Remove interactive spec from internal eldoc--format-doc-buffer

Per bug#43609.

* lisp/emacs-lisp/eldoc.el (eldoc--format-doc-buffer): Remove
useless interactive spec.

3 years ago* src/fns.c (hash_string): Speed up on large strings
Stefan Monnier [Tue, 8 Dec 2020 23:08:54 +0000 (18:08 -0500)]
* src/fns.c (hash_string): Speed up on large strings

3 years agoterm.el comment update
Lars Ingebrigtsen [Tue, 8 Dec 2020 22:41:24 +0000 (23:41 +0100)]
term.el comment update

* lisp/term.el: Fix wrong command name in the comments (bug#7041).

3 years agoFix crash (segfault) in etags on generating tags for Erlang files
Serge Tupchii [Tue, 8 Dec 2020 20:22:34 +0000 (21:22 +0100)]
Fix crash (segfault) in etags on generating tags for Erlang files

* lib-src/etags.c: Set allocated and lastlen to zero, after
freeing last ptr in Erlang_functions to prevent dereferencing NULL
pointer (bug#45122).
Copyright-paperwork-exempt: yes

3 years agoMake rcirc nick renaming heed nickname max lengths
Lars Ingebrigtsen [Tue, 8 Dec 2020 17:22:47 +0000 (18:22 +0100)]
Make rcirc nick renaming heed nickname max lengths

* lisp/net/rcirc.el (rcirc-server-parameters): New variable (bug#6795).
(rcirc-connect): Set it.
(rcirc-handler-433): Use the length from the server.
(rcirc-handler-005): Collect server data.
(rcirc-server-parameter-value): New utility function.
(rcirc--make-new-nick): New function.

3 years agoMake hexl scrolling commands work more like the normal ones
Lars Ingebrigtsen [Tue, 8 Dec 2020 16:57:10 +0000 (17:57 +0100)]
Make hexl scrolling commands work more like the normal ones

* lisp/hexl.el (hexl-scroll-down):
(hexl-scroll-up): Heed `next-screen-context-lines' (bug#7031).