]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years ago* lisp/calendar/time-date.el (seconds-to-time): Use the original arg list
Stefan Monnier [Sun, 14 Aug 2022 14:41:40 +0000 (10:41 -0400)]
* lisp/calendar/time-date.el (seconds-to-time): Use the original arg list

2 years ago; Delete commented out manual section on emulation
Stefan Kangas [Sun, 14 Aug 2022 14:17:31 +0000 (16:17 +0200)]
; Delete commented out manual section on emulation

This section has been commented out for close to a decade already.  It
mostly deals with obsolete libraries, and there are separate manuals
for viper and edt.

* doc/emacs/misc.texi (Recursive Edit): Delete commented out section
on emulation.

2 years ago* src/Makefile.in (elnlisp): Delete autoload.eln from list.
Stefan Kangas [Sun, 14 Aug 2022 14:02:34 +0000 (16:02 +0200)]
* src/Makefile.in (elnlisp): Delete autoload.eln from list.

2 years agoMake Gnus FAQ more contemporary
Stefan Kangas [Sun, 14 Aug 2022 13:20:18 +0000 (15:20 +0200)]
Make Gnus FAQ more contemporary

* doc/misc/gnus-faq.texi (FAQ - Introduction): Fix timeline.
(FAQ - Changes): Delete outdated section.
(FAQ 5-5): Update to reflect that ispell.el and flyspell.el is
distributed with Emacs.
(FAQ 4-1, FAQ 4-7, FAQ 4-8, FAQ 4-14, FAQ 5-8, FAQ 5-10, FAQ 6-3)
(FAQ 7-2): Delete references to ancient versions of Gnus.
(FAQ 6-3): Delete reference to obsolete library nnir.el.
(FAQ - Glossary): Remove "Emacs" entry.  This is self-explanatory, and
risks causing confusion; our docs never mean anything but "GNU Emacs"
when we say "Emacs".

2 years agoStrength-reduce apply with (list ...) as tail argument
Mattias Engdegård [Fri, 12 Aug 2022 13:04:51 +0000 (15:04 +0200)]
Strength-reduce apply with (list ...) as tail argument

* lisp/emacs-lisp/byte-opt.el (byte-optimize-apply):
Transform (apply F ... (list X ...)) -> (funcall F ... X ...)

2 years agoSimplify code using take, ntake and butlast
Mattias Engdegård [Fri, 12 Aug 2022 11:35:01 +0000 (13:35 +0200)]
Simplify code using take, ntake and butlast

* lisp/calc/calc-vec.el (calcFunc-rhead):
* lisp/calc/calc.el (calc-top-list, calc-pop):
* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
Simplify.

2 years ago; * doc/misc/gnus-faq.texi (FAQ 1-3): Fix recent change.
Stefan Kangas [Sun, 14 Aug 2022 13:16:11 +0000 (15:16 +0200)]
; * doc/misc/gnus-faq.texi (FAQ 1-3): Fix recent change.

It

2 years agoFurther speedups of redisplay of long and truncated lines
Eli Zaretskii [Sun, 14 Aug 2022 12:47:59 +0000 (15:47 +0300)]
Further speedups of redisplay of long and truncated lines

* src/xdisp.c (mode_line_update_needed, redisplay_window)
(decode_mode_spec): Don't avoid calling current_column, as it is
now fast enough.
(redisplay_window) <optional_new_start>: Don't call 'move_it_to'
if its result will not be used.
(Flong_line_optimizations_p): New primitive.
* src/indent.c (Fcurrent_column): Doc fix.
(current_column, scan_for_column): When in a buffer with long
and/or truncated lines, quickly return an approximate value.
* src/window.c (Frecenter): Use the old text-mode code when the
buffer has very long lines.

* lisp/simple.el (line-move): Avoid costly calls to
'line-move-partial' and 'line-move-visual' when lines are
truncated and/or very long.
(move-beginning-of-line): Call 'line-beginning-position' instead
of the slower 'skip-chars-backward'.

* etc/NEWS: Announce 'long-line-optimizations-p'.

2 years ago; advice--interactive-form: Fix a typo introduced in recent change
Štěpán Němec [Sun, 14 Aug 2022 08:23:29 +0000 (10:23 +0200)]
; advice--interactive-form: Fix a typo introduced in recent change

* lisp/emacs-lisp/nadvice.el (advice--interactive-form): Fix a typo.

2 years ago; * src/xdisp.c (display_line): Fix a typo.
Eli Zaretskii [Sun, 14 Aug 2022 06:34:37 +0000 (09:34 +0300)]
; * src/xdisp.c (display_line): Fix a typo.

2 years agoMore fixes to MPX drag-and-drop interaction
Po Lu [Sun, 14 Aug 2022 01:39:08 +0000 (09:39 +0800)]
More fixes to MPX drag-and-drop interaction

* src/xterm.c (x_dnd_begin_drag_and_drop): Also initialize the
keyboard device used for drag-and-drop.
(handle_one_xevent): Verify deviceid in more places; also test
keyboard device before swallowing F1.

2 years ago; * etc/NEWS: Fix typo.
Philip Kaludercic [Sat, 13 Aug 2022 20:33:46 +0000 (22:33 +0200)]
; * etc/NEWS: Fix typo.

2 years agoDocument time-convert FORM argument as mandatory
Basil L. Contovounesios [Sat, 13 Aug 2022 18:59:39 +0000 (21:59 +0300)]
Document time-convert FORM argument as mandatory

This is a followup to commit b70369c557 of 2022-08-05
"time-convert): Deprecate calls without an explicit FORM arg".

* doc/lispref/os.texi (Time Conversion):
* src/timefns.c (Ftime_convert): Describe FORM argument as required
as per the advertised calling convention.

2 years agoImprove time-convert docstring formatting for readability
Stefan Kangas [Sat, 13 Aug 2022 18:30:12 +0000 (20:30 +0200)]
Improve time-convert docstring formatting for readability

* src/timefns.c (Ftime_convert): Doc fix; improve formatting for
readability.

2 years agonadvice.el: Avoid exponential blow up in interactive-form recursion
Stefan Monnier [Sat, 13 Aug 2022 16:03:22 +0000 (12:03 -0400)]
nadvice.el: Avoid exponential blow up in interactive-form recursion

* lisp/emacs-lisp/nadvice.el (advice--interactive-form): Sink the call
to `commandp` into the autoloaded function case since it's redundant in
the other branch.
(advice--make-interactive-form): Take just the interactive forms rather
than the actual functions as arguments.
(oclosure-interactive-form): Use `advice--interactive-form` rather than
`commandp` since we'd call `advice--interactive-form` afterwards anyway.

2 years ago; Fix documentation of 'deactivate-mark'
Eli Zaretskii [Sat, 13 Aug 2022 15:52:46 +0000 (18:52 +0300)]
; Fix documentation of 'deactivate-mark'

* src/keyboard.c (syms_of_keyboard):
* etc/NEWS: Fix the documentation of 'deactivate-mark' and its new
value 'dont-save'.  (Bug#57147)

2 years agoUpdate Gnus Installation FAQ
Stefan Kangas [Sat, 13 Aug 2022 15:40:17 +0000 (17:40 +0200)]
Update Gnus Installation FAQ

* doc/misc/gnus-faq.texi (FAQ 1-1, FAQ 1-2, FAQ 1-3, FAQ 1-4)
(FAQ 1-5): Update to reflect that Gnus is no longer released
separately from Emacs.  Delete FAQ on Gnus 5.10, released in May 2003.

2 years agoMake many gnus version variables obsolete
Stefan Kangas [Sat, 13 Aug 2022 15:29:36 +0000 (17:29 +0200)]
Make many gnus version variables obsolete

Many haven't been bumped since 1997, others not since 2004.
* lisp/gnus/deuglify.el (gnus-outlook-deuglify-version):
* lisp/gnus/gnus-diary.el (gnus-diary-version):
* lisp/gnus/nnagent.el (nnagent-version):
* lisp/gnus/nnbabyl.el (nnbabyl-version):
* lisp/gnus/nndiary.el (nndiary-version):
* lisp/gnus/nndir.el (nndir-version):
* lisp/gnus/nndoc.el (nndoc-version):
* lisp/gnus/nndraft.el (nndraft-version):
* lisp/gnus/nneething.el (nneething-version):
* lisp/gnus/nnfolder.el (nnfolder-version):
* lisp/gnus/nnmaildir.el (nnmaildir-version):
* lisp/gnus/nnmbox.el (nnmbox-version):
* lisp/gnus/nnmh.el (nnmh-version):
* lisp/gnus/nnml.el (nnml-version):
* lisp/gnus/nnrss.el (nnrss-version):
* lisp/gnus/nnspool.el (nnspool-version):
* lisp/gnus/nntp.el (nntp-version):
* lisp/gnus/nnvirtual.el (nnvirtual-version): Make obsolete in
favor of emacs-version.

2 years agojs.el: Tweak last change
Stefan Monnier [Sat, 13 Aug 2022 15:18:40 +0000 (11:18 -0400)]
js.el: Tweak last change

* lisp/progmodes/js.el (js-json-mode): Use a function as value of
`syntax-propertize-function`.

2 years agoSpeed up display of long lines under 'truncate-lines'
Eli Zaretskii [Sat, 13 Aug 2022 13:59:22 +0000 (16:59 +0300)]
Speed up display of long lines under 'truncate-lines'

* src/xdisp.c (partial_line_height): Return zero for long and
truncated lines.
(fast_move_it_horizontally): New function.
(hscroll_window_tree, display_line): Use
'fast_move_it_horizontally' in preference to
'move_it_in_display_line_to', when dealing with long and truncated
lines.
(redisplay_internal): Optimize "optimization 3" for long and
truncated lines.
* src/buffer.c (syms_of_buffer) <large-hscroll-threshold>: New
variable.

* etc/NEWS: Announce 'large-hscroll-threshold'.

2 years agoAdd new value `dont-save' to `deactivate-mark'
Po Lu [Sat, 13 Aug 2022 13:12:20 +0000 (21:12 +0800)]
Add new value `dont-save' to `deactivate-mark'

* etc/NEWS: Announce new value of `deactivate-mark'.

* lisp/simple.el (deactivate-mark): Handle new value.
(bug#57147)

* src/keyboard.c (syms_of_keyboard): Update doc string of
`deactivate-mark'.

2 years agoTweak outline symbol icons
Lars Ingebrigtsen [Sat, 13 Aug 2022 12:40:58 +0000 (14:40 +0200)]
Tweak outline symbol icons

* lisp/outline.el (outline-close, outline-open): Use icons of the
same size in Symbola.

2 years agoAllow EXCLUDED-FILES in loaddefs-generate to be relative
Lars Ingebrigtsen [Sat, 13 Aug 2022 12:07:41 +0000 (14:07 +0200)]
Allow EXCLUDED-FILES in loaddefs-generate to be relative

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Allow the
excluded files to be relative (bug#57144).

2 years agoDon't hide final dump in admin/emake
Lars Ingebrigtsen [Fri, 12 Aug 2022 20:41:30 +0000 (22:41 +0200)]
Don't hide final dump in admin/emake

2 years ago; * lisp/emulation/viper.el: Bump version to match variable.
Stefan Kangas [Sat, 13 Aug 2022 11:10:45 +0000 (13:10 +0200)]
; * lisp/emulation/viper.el: Bump version to match variable.

2 years agoMake ps-mode-version variable obsolete
Stefan Kangas [Sat, 13 Aug 2022 11:08:47 +0000 (13:08 +0200)]
Make ps-mode-version variable obsolete

* lisp/progmodes/ps-mode.el (ps-mode-version): Make obsolete.
(ps-mode-show-version, ps-mode-submit-bug-report): Don't use above
obsolete variable.

2 years agoMake htmlfontify-version variable obsolete
Stefan Kangas [Sat, 13 Aug 2022 11:00:46 +0000 (13:00 +0200)]
Make htmlfontify-version variable obsolete

* lisp/htmlfontify.el (htmlfontify-version): Make obolete.
(hfy-meta-tags): Don't use above obsolete variable.

2 years agoDelete many references to Emacs 23 or older from docs
Stefan Kangas [Sat, 13 Aug 2022 10:39:42 +0000 (12:39 +0200)]
Delete many references to Emacs 23 or older from docs

* doc/emacs/glossary.texi (Glossary):
* doc/emacs/msdos.texi (Windows Fonts):
* doc/lispref/loading.texi (Library Search):
* doc/lispref/processes.texi (Accepting Output):
* doc/misc/auth.texi (GnuPG and EasyPG Assistant Configuration):
* doc/misc/efaq-w32.texi (Font names):
* doc/misc/efaq.texi (Turning on syntax highlighting)
(Escape sequences in shell output):
* doc/misc/eshell.texi (Bugs and ideas):
* doc/misc/gnus.texi (nnmairix requirements):
* doc/misc/gnus-faq.texi (FAQ 1-5):
* doc/misc/idlwave.texi (Troubleshooting):
* doc/misc/message.texi (Using S/MIME):
* doc/misc/mh-e.texi (Preface, Incorporating Mail):
* doc/misc/viper.texi (Viper Specials): Delete references to Emacs 23
or older.

2 years ago; * etc/NEWS: Minor fixes. (Bug#57169)
Eli Zaretskii [Sat, 13 Aug 2022 10:40:00 +0000 (13:40 +0300)]
; * etc/NEWS: Minor fixes.  (Bug#57169)

2 years agoPrevent selection converter from signalling if buffer is narrowed
Po Lu [Sat, 13 Aug 2022 09:49:31 +0000 (17:49 +0800)]
Prevent selection converter from signalling if buffer is narrowed

* lisp/select.el (xselect-convert-to-string): If positions are
outside the accessible portion of the buffer, don't return
anything.

2 years agoFix a recently-added Eshell test on MS-Windows
Eli Zaretskii [Sat, 13 Aug 2022 06:58:44 +0000 (09:58 +0300)]
Fix a recently-added Eshell test on MS-Windows

* test/lisp/eshell/esh-var-tests.el
(esh-var-test/last-result-var-ext-cmd): Fix the test on
MS-Windows by making sure the internal 'format' command
is invoked.  (Bug#57129)

2 years agoMake '$?' and '$$' variables more consistent in Eshell
Jim Porter [Wed, 10 Aug 2022 03:09:57 +0000 (20:09 -0700)]
Make '$?' and '$$' variables more consistent in Eshell

Previously, '$?' (last exit code) was only useful for external
commands, and '$$' (last result) was only useful for Lisp commands.

* lisp/eshell/esh-cmd.el (eshell-lisp-form-nil-is-failure): New
option.
(eshell-lisp-command): Set last exit code to 1 when the command
signals an error, and 2 if it returns nil (for Lisp forms only).

* lisp/eshell/esh-proc.el (eshell-sentinel): Set last result to t if
the command succeeded.

* test/lisp/eshell/esh-cmd-tests.el
(esh-cmd-test/while-loop-lisp-form, esh-cmd-test/until-loop-lisp-form)
(esh-cmd-test/if-else-statement-lisp-form)
(esh-cmd-test/if-else-statement-lisp-form-2)
(esh-cmd-test/unless-else-statement-lisp-form): New tests.

* test/lisp/eshell/esh-var-tests.el
(esh-var-test/last-status-var-lisp-command)
(esh-var-test/last-status-var-lisp-form)
(esh-var-test/last-status-var-lisp-form-2)
(esh-var-test/last-status-var-ext-cmd)
(esh-var-test/last-status-var-ext-cmd): New tests.
(esh-var-test/last-result-var2): Rename from this...
( esh-var-test/last-result-var-twice): ... to this.

* doc/misc/eshell.texi (Variables): Update documentation about '$?'
and '$$'.
(Control Flow): Mention that '(lisp forms)' can be used as
conditionals.

* etc/NEWS: Announce this change (bug#57129).

2 years agoAllow using dollar expansions in Eshell conditionals
Jim Porter [Tue, 9 Aug 2022 04:24:27 +0000 (21:24 -0700)]
Allow using dollar expansions in Eshell conditionals

* lisp/eshell/esh-cmd.el (eshell-structure-basic-command): Forms
beginning with 'eshell-escape-arg' are "data-wise".

* test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/while-loop)
(esh-cmd-test/until-loop, esh-cmd-test/if-statement)
(esh-cmd-test/if-else-statement, esh-cmd-test/unless-statement)
(esh-cmd-test/unless-else-statement): Use variable interpolation.
(esh-cmd-test/while-loop-ext-cmd, esh-cmd-test/until-loop-ext-cmd)
(esh-cmd-test/if-else-statement-ext-cmd)
(esh-cmd-test/unless-else-statement-ext-cmd): New tests, adapted from
the existing ones.

* doc/misc/eshell.texi (Control Flow): Update documentation for
conditionals (bug#57129).

2 years agoOnly set Eshell execution result metavariables when non-nil
Jim Porter [Sat, 6 Aug 2022 20:37:28 +0000 (13:37 -0700)]
Only set Eshell execution result metavariables when non-nil

This simplifies usage of 'eshell-close-handles' in several places and
makes it work more like the docstring indicated it would.

* lisp/eshell/esh-io.el (eshell-close-handles): Only store EXIT-CODE
and RESULT if they're non-nil.  Also, use 'dotimes' and 'dolist' to
simplify the implementation.

* lisp/eshell/em-alias.el (eshell-write-aliases-list):
* lisp/eshell/esh-cmd.el (eshell-rewrite-for-command)
(eshell-structure-basic-command): Adapt calls to
'eshell-close-handles'.

* test/lisp/eshell/eshell-tests.el (eshell-test/simple-command-result)
(eshell-test/lisp-command, eshell-test/lisp-command-with-quote)
(eshell-test/for-loop, eshell-test/for-name-loop)
(eshell-test/for-name-shadow-loop, eshell-test/lisp-command-args)
(eshell-test/subcommand, eshell-test/subcommand-args)
(eshell-test/subcommand-lisp): Move from here...

* test/lisp/eshell/esh-cmd-tests.el
(esh-cmd-test/simple-command-result, esh-cmd-test/lisp-command)
(esh-cmd-test/lisp-command-with-quote, esh-cmd-test/for-loop)
(esh-cmd-test/for-name-loop, esh-cmd-test/for-name-shadow-loop)
(esh-cmd-test/lisp-command-args, esh-cmd-test/subcommand)
(esh-cmd-test/subcommand-args, esh-cmd-test/subcommand-lisp): ... to
here.
(esh-cmd-test/and-operator, esh-cmd-test/or-operator)
(esh-cmd-test/for-loop-list, esh-cmd-test/for-loop-multiple-args)
(esh-cmd-test/while-loop, esh-cmd-test/until-loop)
(esh-cmd-test/if-statement, esh-cmd-test/if-else-statement)
(esh-cmd-test/unless-statement, esh-cmd-test/unless-else-statement):
New tests.

* doc/misc/eshell.texi (Invocation): Explain '&&' and '||'.
(for loop): Move from here...
(Control Flow): ... to here, and add documentation for other control
flow forms.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Sat, 13 Aug 2022 04:30:27 +0000 (06:30 +0200)]
Merge from origin/emacs-28

72fc7258bf Delete references to deleted library hilit19.el
e746fc2e7b Delete stale comments from Lisp Intro manual
77613b9217 ; Delete redundant installation instructions from ebnf2ps.el

2 years ago; * src/xfns.c (Fx_set_mouse_absolute_pixel_position): Fix typo.
Po Lu [Sat, 13 Aug 2022 02:36:54 +0000 (10:36 +0800)]
; * src/xfns.c (Fx_set_mouse_absolute_pixel_position): Fix typo.

2 years agoImprove MPX interaction with drag-and-drop
Po Lu [Sat, 13 Aug 2022 02:35:08 +0000 (10:35 +0800)]
Improve MPX interaction with drag-and-drop

* src/xfns.c (Fx_set_mouse_absolute_pixel_position): Use
internal client pointer record.
* src/xterm.c (x_dnd_cancel_dnd_early): New function.  Only used
on XI2 builds so far.
(x_dnd_begin_drag_and_drop): Set the pointer device used for DND
events.
(xi_disable_devices): Cancel the drag-and-drop operation if that
device is disabled.
(x_send_scroll_bar_event): Update outdated comment.
(handle_one_xevent): Only accept DND events from that device.
(frame_set_mouse_pixel_position): Use internal client pointer
record.

2 years ago; * lisp/cedet/ede.el: Bump version header to match variable.
Stefan Kangas [Fri, 12 Aug 2022 20:32:39 +0000 (22:32 +0200)]
; * lisp/cedet/ede.el: Bump version header to match variable.

2 years agoHide local variable section in emacs-news-modes
Stefan Kangas [Fri, 12 Aug 2022 20:22:17 +0000 (22:22 +0200)]
Hide local variable section in emacs-news-modes

* lisp/textmodes/emacs-authors-mode.el
(emacs-authors-mode--hide-local-variables): Move from here...
* lisp/emacs-lisp/subr-x.el (emacs-etc--hide-local-variables):
...to here.

* lisp/textmodes/emacs-authors-mode.el (subr-x): Require.
(emacs-authors-mode): Use above renamed function.

* lisp/textmodes/emacs-news-mode.el (subr-x): Require.
(emacs-news--mode-common): Call 'emacs-etc--hide-local-variables'
to hide local variables section.

2 years agoDon't update loaddefs.el timestamps uselessly in loaddefs-generate
Lars Ingebrigtsen [Fri, 12 Aug 2022 18:22:26 +0000 (20:22 +0200)]
Don't update loaddefs.el timestamps uselessly in loaddefs-generate

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Don't
re-write the loaddefs.el file when there's no reason to.

2 years agoSupport imenu in emacs-authors-mode
Stefan Kangas [Fri, 12 Aug 2022 16:33:34 +0000 (18:33 +0200)]
Support imenu in emacs-authors-mode

* lisp/textmodes/emacs-authors-mode.el
(emacs-authors-imenu-generic-expression): New variable.
(emacs-authors-mode): Add imenu support.

2 years agoRename etc-authors-mode to emacs-authors-mode
Stefan Kangas [Thu, 11 Aug 2022 11:49:15 +0000 (13:49 +0200)]
Rename etc-authors-mode to emacs-authors-mode

* emacs-authors-mode.el: Rename all symbols from 'etc-authors-*' to
'emacs-authors-*'.  Make most old names into obsolete compat aliases.
* admin/authors.el:  (Bug#57105)
* etc/AUTHORS: Use 'emacs-authors' instead of 'etc-authors'.

2 years agoRename etc-authors-mode.el to emacs-authors-mode.el
Stefan Kangas [Thu, 11 Aug 2022 11:36:33 +0000 (13:36 +0200)]
Rename etc-authors-mode.el to emacs-authors-mode.el

* lisp/textmodes/etc-authors-mode.el: Move from here...
* lisp/textmodes/emacs-authors-mode.el: ...to here.  (Bug#57105)

2 years ago; etc/PROBLEMS: Move Ubuntu 8.04 entry to legacy systems.
Stefan Kangas [Fri, 12 Aug 2022 16:09:22 +0000 (18:09 +0200)]
; etc/PROBLEMS: Move Ubuntu 8.04 entry to legacy systems.

2 years agoDelete references to deleted library hilit19.el
Stefan Kangas [Fri, 12 Aug 2022 15:48:30 +0000 (17:48 +0200)]
Delete references to deleted library hilit19.el

* doc/misc/gnus.texi (Compatibility):
* lisp/progmodes/f90.el:
* lisp/ps-print.el:
* lisp/vc/ediff.el: Delete references to hilit19.el.

2 years agoFix emacs-news-view-mode-map inheritance
Lars Ingebrigtsen [Fri, 12 Aug 2022 15:44:51 +0000 (17:44 +0200)]
Fix emacs-news-view-mode-map inheritance

* lisp/textmodes/emacs-news-mode.el (emacs-news-view-mode-map):
Fix inheritance from `special-mode-map' (bug#57100).

2 years agoClarify bookmark-set prompt
Lars Ingebrigtsen [Fri, 12 Aug 2022 15:24:38 +0000 (17:24 +0200)]
Clarify bookmark-set prompt

* lisp/bookmark.el (bookmark-set): Clarify prompt further
(bug#57128).

2 years agogud.el: invoke 'perldb' with '-E' instead of '-e'
Harald Jörg [Fri, 12 Aug 2022 15:15:19 +0000 (17:15 +0200)]
gud.el: invoke 'perldb' with '-E' instead of '-e'

* lisp/progmodes/gud.el (gud-perldb-massage-args): Allow '-E' switch
and use it as a default in favor of '-e'

* etc/NEWS ('perldb' now recognizes '-E') New entry in section 'Gud'

2 years agoRemove some more outdated Gnus manual stuff
Lars Ingebrigtsen [Fri, 12 Aug 2022 15:10:27 +0000 (17:10 +0200)]
Remove some more outdated Gnus manual stuff

* doc/misc/gnus.texi (Mail Source Customization): Remove more
outdated text (bug#57156).

2 years agoRemove (gnus) Gnus Development manual section
Lars Ingebrigtsen [Fri, 12 Aug 2022 15:09:25 +0000 (17:09 +0200)]
Remove (gnus) Gnus Development manual section

* doc/misc/gnus.texi (Gnus Development): Remove outdated section
(bug#57156).

2 years ago* doc/misc/gnus.texi (Emacsen): Delete section.
Stefan Kangas [Fri, 12 Aug 2022 14:06:43 +0000 (16:06 +0200)]
* doc/misc/gnus.texi (Emacsen): Delete section.

2 years agoMake some more cedet version variables obsolete
Stefan Kangas [Fri, 12 Aug 2022 13:35:18 +0000 (15:35 +0200)]
Make some more cedet version variables obsolete

* lisp/cedet/ede.el (ede-version):
* lisp/cedet/semantic.el (semantic-version):
* lisp/cedet/srecode.el (srecode-version): Make obsolete.
* lisp/cedet/semantic/db-file.el (semanticdb-file-version): Don't
use above obsolete variable semantic-version.

2 years agoDelete stale comments from Lisp Intro manual
Stefan Kangas [Fri, 12 Aug 2022 13:58:33 +0000 (15:58 +0200)]
Delete stale comments from Lisp Intro manual

* doc/lispintro/emacs-lisp-intro.texi (Args as Variable or List)
(print-elements-of-list, Miscellaneous): Delete some references to
Emacs 22.

2 years agoClarify face-at-point doc string and add (thing-at-point 'face)
Lars Ingebrigtsen [Fri, 12 Aug 2022 13:54:55 +0000 (15:54 +0200)]
Clarify face-at-point doc string and add (thing-at-point 'face)

* lisp/faces.el (face-at-point): Say what this function does.

* lisp/thingatpt.el (thing-at-point-face-at-point): Add `face'
type (bug#57087).
(thing-at-point-provider-alist, thing-at-point): Mention it in the
doc strings.

2 years ago; Delete redundant installation instructions from ebnf2ps.el
Stefan Kangas [Fri, 12 Aug 2022 13:46:29 +0000 (15:46 +0200)]
; Delete redundant installation instructions from ebnf2ps.el

* lisp/progmodes/ebnf2ps.el: Delete redundant installation
instructions.

2 years agoFurther seq-uniq speed-ups for lists
Lars Ingebrigtsen [Fri, 12 Aug 2022 13:15:11 +0000 (15:15 +0200)]
Further seq-uniq speed-ups for lists

* lisp/emacs-lisp/seq.el (seq-uniq): Speed up more for long lists
(bug#57079).

2 years agoMake finder-mode inherit special-mode
Stefan Kangas [Fri, 12 Aug 2022 12:51:36 +0000 (14:51 +0200)]
Make finder-mode inherit special-mode

* lisp/finder.el (finder-mode): Inherit special-mode.
(finder-mode-map): Inherit special-mode-map.

2 years ago* lisp/finder.el (finder-summary): Improve formatting.
Stefan Kangas [Fri, 12 Aug 2022 12:25:27 +0000 (14:25 +0200)]
* lisp/finder.el (finder-summary): Improve formatting.

2 years agoUse help-key-binding face in package list help
Stefan Kangas [Fri, 12 Aug 2022 12:22:59 +0000 (14:22 +0200)]
Use help-key-binding face in package list help

* lisp/emacs-lisp/package.el (package--prettify-quick-help-key):
Use help-key-binding face.

2 years ago; * lisp/cedet/cedet.el: Delete stale comment.
Stefan Kangas [Thu, 11 Aug 2022 21:26:43 +0000 (23:26 +0200)]
; * lisp/cedet/cedet.el: Delete stale comment.

Since 2009, it is no longer the case that this file depends on other
parts of CEDET (see commit 715f35a55d).

2 years agoMake cedet version variables obsolete
Stefan Kangas [Thu, 11 Aug 2022 21:23:32 +0000 (23:23 +0200)]
Make cedet version variables obsolete

* lisp/cedet/cedet.el (cedet-version, cedet-packages): Make
obsolete.

2 years agoDefault outline-minor-mode-use-buttons to only happen in *Help*
Lars Ingebrigtsen [Fri, 12 Aug 2022 12:56:46 +0000 (14:56 +0200)]
Default outline-minor-mode-use-buttons to only happen in *Help*

* lisp/outline.el (outline-minor-mode-use-buttons): Change the
default to only use buttons in the *Help* buffer (for now),
because it's too disruptive in other modes.  This will probably be
changed again to have some other mechanism to opt in in certain
modes, but it's not clear what that mechanism should look like.

2 years agoReverse the outline arrows
Stephen Berman [Fri, 12 Aug 2022 12:49:22 +0000 (14:49 +0200)]
Reverse the outline arrows

* lisp/outline.el (outline-open): Reverse the arrows to match
arrows in Customize (bug#57082).

2 years ago; Fix documentation of 'loaddefs-generate' (bug#57144)
Eli Zaretskii [Fri, 12 Aug 2022 06:49:35 +0000 (09:49 +0300)]
; Fix documentation of 'loaddefs-generate' (bug#57144)

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Doc fix.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Fri, 12 Aug 2022 04:30:31 +0000 (06:30 +0200)]
Merge from origin/emacs-28

9419bc904d ; * lisp/printing.el: Delete outdated download instructions.
31af0f4eb7 Don't list Emacs as requirement for built-in package
ae348b719e Fix wrong metrics for bitmap-only fonts with HarfBuzz 5

2 years agoPrevent SelectionNotify etc from reaching GTK 3
Po Lu [Fri, 12 Aug 2022 01:25:12 +0000 (09:25 +0800)]
Prevent SelectionNotify etc from reaching GTK 3

* src/xterm.c (handle_one_xevent): Prevent selection events from
reaching GTK if they are destined for an Emacs window.

2 years agoNew debugging facility: backtraces from errors in Lisp called from redisplay
Alan Mackenzie [Thu, 11 Aug 2022 19:31:09 +0000 (19:31 +0000)]
New debugging facility: backtraces from errors in Lisp called from redisplay

Setting backtrace-on-redisplay-error to non-nil enables the generation of a
Lisp backtrace in buffer *Redisplay-trace* following an error in Lisp called
from redisplay.

* doc/lispref/debugging.texi (Debugging Redisplay): New subsection.
(Error Debugging): Reference to the new subsection.

* etc/NEWS: New entry for the new facility.

* src/eval.c (redisplay_deep_handler): New variable.
(init_eval): Initialize redisplay_deep_handler.
(call_debugger): Don't throw to top-level after calling debug-early
(internal_condition_case_n): "Bind" redisplay_deep_handler to the current
handler.
(backtrace_yet): New boolean variable.
(signal_or_quit): New code section to handle Lisp errors occurring in
redisplay.
(syms_of_eval): New DEFVAR_BOOL backtrace-on-redisplay-error.

* src/keyboard.c (command_loop_1): Set backtrace_yet to false each time around
the loop.
(safe_run_hooks_error): Allow args to be up to four Lisp_Objects long.
(safe_run_hooks_2): New function.

* src/lisp.h (top level): declare as externs backtrace_yet and
safe_run_hooks_2.

* src/xdisp.c (run_window_scroll_functions): Replace a call to
run_hook_with_args_2 with one to safe_run_hooks_2.

2 years agoSupport the full range of variation selectors
Axel Svensson [Mon, 8 Aug 2022 23:11:02 +0000 (01:11 +0200)]
Support the full range of variation selectors

* lisp/international/characters.el: Provide acronyms for variation
selectors.
(update-glyphless-char-display): Update display of the full range
of variation selectors.
(glyphless-char-display-control): Update doc string.  (Bug#57072)

* doc/lispref/display.texi (Glyphless Chars): Document more
variation selectors.

Copyright-paperwork-exempt: yes

2 years agoMake ad-version variable obsolete
Stefan Kangas [Thu, 11 Aug 2022 15:28:30 +0000 (17:28 +0200)]
Make ad-version variable obsolete

* lisp/emacs-lisp/advice.el (ad-version): Make obsolete in favor
of emacs-version.  It has not been bumped since 1994.

2 years agoMake ebnf-version variable obsolete
Stefan Kangas [Thu, 11 Aug 2022 15:19:45 +0000 (17:19 +0200)]
Make ebnf-version variable obsolete

* lisp/progmodes/ebnf2ps.el (ebnf-version): Make obsolete.
(ebnf-setup, ebnf-begin-file, ebnf-eps-finish-and-write): Don't
use above obsolete variable.

2 years agoMake ps-print-version variable obsolete
Stefan Kangas [Thu, 11 Aug 2022 15:10:52 +0000 (17:10 +0200)]
Make ps-print-version variable obsolete

* lisp/ps-print.el (ps-print-version): Make obsolete.
(ps-setup, ps-begin-file):
* lisp/progmodes/ebnf2ps.el:
* lisp/printing.el:
(pr-help-message, pr-interface-help-message)
(pr-create-interface): Don't use above obsolete variable.

2 years ago; * lisp/printing.el (pr-version): Avoid byte-compiler warning.
Eli Zaretskii [Thu, 11 Aug 2022 13:34:39 +0000 (16:34 +0300)]
; * lisp/printing.el (pr-version): Avoid byte-compiler warning.

2 years agoMake pr-version variable obsolete
Stefan Kangas [Thu, 11 Aug 2022 13:21:08 +0000 (15:21 +0200)]
Make pr-version variable obsolete

* lisp/printing.el (pr-version): Make obsolete.
(pr-help-message, pr-interface-help-message, pr-setup)
(pr-create-interface): Don't use above obsolete variable.

2 years ago; * lisp/printing.el: Delete outdated download instructions.
Stefan Kangas [Thu, 11 Aug 2022 13:16:31 +0000 (15:16 +0200)]
; * lisp/printing.el: Delete outdated download instructions.

2 years agoDon't list Emacs as requirement for built-in package
Stefan Kangas [Thu, 11 Aug 2022 13:03:29 +0000 (15:03 +0200)]
Don't list Emacs as requirement for built-in package

* doc/misc/htmlfontify.texi (Requirements): Don't list Emacs as
requirement for built-in package.

2 years agoDon't show status message in Helper-describe-bindings
Stefan Kangas [Thu, 11 Aug 2022 12:32:18 +0000 (14:32 +0200)]
Don't show status message in Helper-describe-bindings

* lisp/emacs-lisp/helper.el (Helper-describe-bindings): Don't show
status message.

2 years agonewsticker: fix bug#57045
Ulf Jasper [Thu, 11 Aug 2022 11:26:52 +0000 (13:26 +0200)]
newsticker: fix bug#57045

* lisp/net/newst-treeview.el
(newsticker--treeview-list-items-with-age) (newsticker-treeview-update):
Fix issues with changing sort order in virtual feed 'all' (Bug#57045).

2 years ago; * lisp/play/5x5.el (5x5-defvar-local): Improve obsoletion.
Stefan Kangas [Thu, 11 Aug 2022 11:16:34 +0000 (13:16 +0200)]
; * lisp/play/5x5.el (5x5-defvar-local): Improve obsoletion.

2 years ago* lisp/vc/emerge.el (emerge-show-file-name): Make obsolete.
Stefan Kangas [Thu, 11 Aug 2022 11:11:50 +0000 (13:11 +0200)]
* lisp/vc/emerge.el (emerge-show-file-name): Make obsolete.

2 years agoMake emerge-define-key-if-possible obsolete
Stefan Kangas [Thu, 11 Aug 2022 11:07:24 +0000 (13:07 +0200)]
Make emerge-define-key-if-possible obsolete

* lisp/vc/emerge.el (emerge-define-key-if-possible): Make unused
function obsolete.

2 years ago* test/lisp/net/tramp-tests.el (tramp--test-utf8): Adapt test.
Michael Albinus [Thu, 11 Aug 2022 10:34:01 +0000 (12:34 +0200)]
* test/lisp/net/tramp-tests.el (tramp--test-utf8): Adapt test.

2 years agoFix wrong metrics for bitmap-only fonts with HarfBuzz 5
YAMAMOTO Mitsuharu [Thu, 11 Aug 2022 09:16:24 +0000 (18:16 +0900)]
Fix wrong metrics for bitmap-only fonts with HarfBuzz 5

* src/ftcrfont.c (ftcrhbfont_begin_hb_font): Always use the standard
position unit value on HarfBuzz 5 and later regardless of whether the
font is bitmap-only or not.  (Bug#57066)

2 years ago; Fix typo in tramp-archive.el
Michael Albinus [Thu, 11 Aug 2022 06:41:11 +0000 (08:41 +0200)]
; Fix typo in tramp-archive.el

* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
Fix typo.  (Bug#57130)

2 years agoMerge from origin/emacs-28
Stefan Kangas [Thu, 11 Aug 2022 04:30:24 +0000 (06:30 +0200)]
Merge from origin/emacs-28

648acc8848 ; Fix @setfilename in calc.texi

2 years agoAdjust client pointer upon help event
Po Lu [Thu, 11 Aug 2022 01:56:15 +0000 (09:56 +0800)]
Adjust client pointer upon help event

* src/xterm.c (handle_one_xevent): Keep track of the device that
set do_help and make it the client pointer so that tooltips show
up under the right pointer.

2 years agoFix 'describe-char' in "C" locale
Eli Zaretskii [Wed, 10 Aug 2022 12:31:59 +0000 (15:31 +0300)]
Fix 'describe-char' in "C" locale

* lisp/descr-text.el (describe-char): Avoid assertions if
'buffer-file-coding-system' is nil.  (Bug#57066)

2 years agoImprove the bengali-probhat input method
Visuwesh [Tue, 9 Aug 2022 15:42:39 +0000 (21:12 +0530)]
Improve the bengali-probhat input method

* lisp/leim/quail/indian.el ("bengali-probhat"): Set KBD-TRANSLATE
and SHOW-LAYOUT flags non-nil.  This makes the IM usable with Dvorak
keyboard and also shows more useful help.  Reported by Akib Azmain
Turja <akib@disroot.org>.

2 years ago; Fix @setfilename in calc.texi
Eli Zaretskii [Wed, 10 Aug 2022 11:57:07 +0000 (14:57 +0300)]
; Fix @setfilename in calc.texi

* doc/misc/calc.texi: Move the @setfilename command to its proper
place.  (Bug#57107)

2 years agoFix some undesirable frame focus changes
Po Lu [Wed, 10 Aug 2022 11:30:55 +0000 (19:30 +0800)]
Fix some undesirable frame focus changes

* src/xterm.c (handle_one_xevent): Only detach upon actual
device tree change.

2 years ago; * lisp/emacs-lisp/subr-x.el (string-pad): Optimise.
Mattias Engdegård [Wed, 10 Aug 2022 11:06:12 +0000 (13:06 +0200)]
; * lisp/emacs-lisp/subr-x.el (string-pad): Optimise.

2 years agoMake gdb-pad-string obsolete in favor of string-pad
Stefan Kangas [Wed, 10 Aug 2022 10:54:31 +0000 (12:54 +0200)]
Make gdb-pad-string obsolete in favor of string-pad

* lisp/progmodes/gdb-mi.el (subr-x): Require.
(gdb-pad-string): Make obsolete in favor of 'string-pad'.  Update
callers.

2 years agoExtend LAP optimisations to more operations
Mattias Engdegård [Tue, 9 Aug 2022 08:57:46 +0000 (10:57 +0200)]
Extend LAP optimisations to more operations

Extend the set of eligible opcodes for certain peephole
transformations, which then provide further optimisation
opportunities.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode):
Optimise empty save-current-buffer in the same way as we already
do for save-excursion and save-restriction.  This is safe
because (save-current-buffer) is a no-op.
(byte-compile-side-effect-and-error-free-ops): Add list3, list4 and
listN.  These were all apparent oversights as list1 and list2 were
already included.
(byte-after-unbind-ops): Add stack-ref, stack-set, discard, list3,
list4 and listN.  Stack manipulation is safe because unbind cannot
read or modify stack entries.

2 years agoFix compilation warning in wisent/comp.el
Lars Ingebrigtsen [Wed, 10 Aug 2022 10:31:20 +0000 (12:31 +0200)]
Fix compilation warning in wisent/comp.el

* lisp/cedet/semantic/wisent/comp.el (require): string-pad is used
run-time.

2 years agoPrefer defvar-keymap in vc/*.el
Stefan Kangas [Wed, 10 Aug 2022 09:53:27 +0000 (11:53 +0200)]
Prefer defvar-keymap in vc/*.el

* lisp/vc/add-log.el (change-log-mode-map):
* lisp/vc/ediff-mult.el (ediff-dir-diffs-buffer-map):
* lisp/vc/vc-annotate.el (vc-annotate-mode-map):
* lisp/vc/vc-bzr.el (vc-bzr-shelve-map):
* lisp/vc/vc-dir.el (vc-dir-status-mouse-map)
(vc-dir-filename-mouse-map):
* lisp/vc/vc-git.el (vc-git-stash-shared-map, vc-git-stash-map)
(vc-git-stash-button-map, vc-git-log-edit-mode-map):
* lisp/vc/vc-hg.el (vc-hg-log-edit-mode-map)
(vc-hg-extra-menu-map):
* lisp/vc/vc-hooks.el (vc-prefix-map): Prefer defvar-keymap.

2 years agoDelete dead code in checkdoc.el
Stefan Kangas [Wed, 10 Aug 2022 09:27:14 +0000 (11:27 +0200)]
Delete dead code in checkdoc.el

* lisp/emacs-lisp/checkdoc.el: Delete code commented out since
1997.

2 years agoFix namespacing issues in array.el
Stefan Kangas [Wed, 10 Aug 2022 09:21:24 +0000 (11:21 +0200)]
Fix namespacing issues in array.el

* lisp/array.el (array--limit-index, array-current-line)
(array-move-to-column-untabify, array--untabify-backward): Rename
from 'limit-index', 'current-line', 'move-to-column-untabify', and
'untabify-backward'.  Update callers.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Wed, 10 Aug 2022 04:31:02 +0000 (06:31 +0200)]
Merge from origin/emacs-28

14833cd9df Improve wording when documenting other TRAMP syntaxes
628df15da5 ; * doc/misc/viper.texi (Rudimentary Changes): Avoid alias.
85de996bbb * lisp/vc/diff-mode.el: Don't mention XEmacs.

2 years agoImprove MPX interaction with xwidgets and drag-and-drop
Po Lu [Wed, 10 Aug 2022 02:33:43 +0000 (10:33 +0800)]
Improve MPX interaction with xwidgets and drag-and-drop

* src/xterm.c (handle_one_xevent): Handle focus interaction in
more places.

2 years agojs--font-lock-keywords-2: Remove the 'for each' matcher
Dmitry Gutov [Wed, 10 Aug 2022 00:18:29 +0000 (03:18 +0300)]
js--font-lock-keywords-2: Remove the 'for each' matcher

* lisp/progmodes/js.el (js--font-lock-keywords-2):
Remove the 'for each' matcher.  First, because it was slow
(bug#56682), and second: the 'for each' syntax was only present in
Mozilla's dialect of JavaScript (added in version 1.5), and has
been deprecated for a decade now.

2 years agoMake wisent-pad-string obsolete in favor of string-pad
Stefan Kangas [Tue, 9 Aug 2022 22:41:25 +0000 (00:41 +0200)]
Make wisent-pad-string obsolete in favor of string-pad

* lisp/cedet/semantic/wisent/comp.el (wisent-pad-string): Make
obsolete in favor of 'string-pad'.  Update callers.
(subr-x): Require when compiling.