]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoFix encode-time doc string
Paul Eggert [Thu, 16 Dec 2021 17:40:21 +0000 (09:40 -0800)]
Fix encode-time doc string

* src/timefns.c (Fencode_time): Fix incorrect doc string
that talks about FORM (which doesn’t exist) by copying
wording from the manual instead.

3 years ago* lisp/vc/vc-dispatcher.el (vc-command-messages): Add choice 'log'.
Juri Linkov [Thu, 16 Dec 2021 19:16:50 +0000 (21:16 +0200)]
* lisp/vc/vc-dispatcher.el (vc-command-messages): Add choice 'log'.

(vc-do-command): Don't display messages but only write them to the *Messages*
buffer when vc-command-messages is 'log' (bug#52518).

3 years agoImprove documentation of multisession variables
Eli Zaretskii [Thu, 16 Dec 2021 09:13:03 +0000 (11:13 +0200)]
Improve documentation of multisession variables

* doc/lispref/variables.texi (Multisession Variables): Improve
wording and markup, add indexing.

3 years agoUpdate files times in multisesssion properly
Lars Ingebrigtsen [Thu, 16 Dec 2021 07:05:37 +0000 (08:05 +0100)]
Update files times in multisesssion properly

* lisp/emacs-lisp/multisession.el
(multisession--backend-set-value): Make cached/external files
times match up.

3 years agoMake the multisession files value read more resilient
Lars Ingebrigtsen [Thu, 16 Dec 2021 07:00:01 +0000 (08:00 +0100)]
Make the multisession files value read more resilient

* lisp/emacs-lisp/multisession.el
(multisession--update-file-value): Make more resilient towards errors.

3 years agoSkip extension tests on hosts without the function
Lars Ingebrigtsen [Thu, 16 Dec 2021 06:43:29 +0000 (07:43 +0100)]
Skip extension tests on hosts without the function

3 years agoMake emoji--recent use multisession variables
Lars Ingebrigtsen [Thu, 16 Dec 2021 06:23:52 +0000 (07:23 +0100)]
Make emoji--recent use multisession variables

* lisp/international/emoji.el (emoji--recent): Make into a
multisession variable.
(emoji-recent, emoji--recent-transient): Use it.
(emoji--add-recent): Update it.

3 years agoDeclare a couple more functions in multisession.el
Lars Ingebrigtsen [Thu, 16 Dec 2021 06:22:00 +0000 (07:22 +0100)]
Declare a couple more functions in multisession.el

* lisp/emacs-lisp/multisession.el: New file.

3 years agoAdd support for multisession variables
Lars Ingebrigtsen [Thu, 16 Dec 2021 06:19:58 +0000 (07:19 +0100)]
Add support for multisession variables

* doc/lispref/elisp.texi (Top): Add to menu.
(Top):
* doc/lispref/variables.texi (Variables): Ditto.
(Multisession Variables): Document multisession variables.

* lisp/emacs-lisp/multisession.el: New file.

3 years agoRequire xwidget.el in `make-xwidget'
Po Lu [Thu, 16 Dec 2021 06:12:25 +0000 (14:12 +0800)]
Require xwidget.el in `make-xwidget'

* src/xwidget.c (Fmake_xwidget): Require `xwidget'.

3 years agoMerge from origin/emacs-28
Stefan Kangas [Thu, 16 Dec 2021 05:31:48 +0000 (06:31 +0100)]
Merge from origin/emacs-28

1e578267fb Fix control buffer window height in 'ediff-setup-control-b...

3 years agoPrefer command remapping in ses.el
Stefan Kangas [Thu, 16 Dec 2021 02:14:31 +0000 (03:14 +0100)]
Prefer command remapping in ses.el

* lisp/ses.el (ses-mode-print-map): Use command remapping instead of
substitute-key-definition.

3 years agoUse defvar-keymap in hideif.el
Stefan Kangas [Wed, 15 Dec 2021 20:38:55 +0000 (21:38 +0100)]
Use defvar-keymap in hideif.el

* lisp/progmodes/hideif.el (hide-ifdef-mode-submap): Use
defvar-keymap.  Use command remapping instead of
substitute-key-definition.

3 years agoAdd errors in ert JUnit test reports
Michael Albinus [Wed, 15 Dec 2021 17:54:31 +0000 (18:54 +0100)]
Add errors in ert JUnit test reports

* lisp/emacs-lisp/ert.el (ert-write-junit-test-report)
(ert-write-junit-test-summary-report): Handle errors.

3 years agoFix control buffer window height in 'ediff-setup-control-buffer' (Bug#49277)
Martin Rudalics [Wed, 15 Dec 2021 17:53:49 +0000 (18:53 +0100)]
Fix control buffer window height in 'ediff-setup-control-buffer' (Bug#49277)

* lisp/vc/ediff-util.el (ediff-setup-control-buffer): Emulate
original 'shrink-window-if-larger-than-buffer' call by calling
'fit-window-to-buffer' with an appropriate maximum height
argument (Bug#49277).

3 years ago* lisp/outline.el (outline-minor-mode-use-buttons): Add :safe #'booleanp.
Juri Linkov [Wed, 15 Dec 2021 17:17:48 +0000 (19:17 +0200)]
* lisp/outline.el (outline-minor-mode-use-buttons): Add :safe #'booleanp.

(outline-minor-mode-cycle, outline-minor-mode-highlight):
Replace `put safe-local-variable' with :safe tag.

3 years agoHave 'dlopen' use RTLD_GLOBAL in 'dynlib_open'
Andrea Corallo [Wed, 15 Dec 2021 14:47:14 +0000 (15:47 +0100)]
Have 'dlopen' use RTLD_GLOBAL in 'dynlib_open'

* src/pdumper.c (dump_do_dump_relocation): Use 'dynlib_open_for_eln'
in place of 'dynlib_open'.
* src/dynlib.h (dynlib_open_for_eln): Declare it.
* src/dynlib.c (dynlib_open_for_eln): New function.
(dynlib_open): Add RTLD_GLOBAL.
* src/comp.c (Fnative_elisp_load): Use 'dynlib_open_for_eln' in place
of 'dynlib_open'.

3 years agoRecognize starred environments
Arash Esbati [Wed, 15 Dec 2021 11:10:05 +0000 (12:10 +0100)]
Recognize starred environments

* lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin): Add
missing starred environments from sidecap and rotating packages.

3 years agoMerge from origin/emacs-28
Stefan Kangas [Wed, 15 Dec 2021 05:30:41 +0000 (06:30 +0100)]
Merge from origin/emacs-28

7078f32b5b Fix crash when dumping charset_table with portable dumper ...
a4fcbf46a7 ; etc/NEWS: Move the note about Xref EIEIO change to the p...
f88c1d222f Remove maintainer comment from Emacs 28 module snippet.

# Conflicts:
# etc/NEWS

3 years agoFix crash when dumping charset_table with portable dumper (Bug#52461)
YAMAMOTO Mitsuharu [Wed, 15 Dec 2021 04:12:02 +0000 (13:12 +0900)]
Fix crash when dumping charset_table with portable dumper (Bug#52461)

* src/charset.h:
* src/charset.c (charset_table_used): Now extern.
* src/pdumper.c (dump_charset): Don't dump code_space_mask for unused
slots of charset_table.

3 years agoPrevent GDK from handling emulated button events
Po Lu [Wed, 15 Dec 2021 02:34:51 +0000 (10:34 +0800)]
Prevent GDK from handling emulated button events

* src/xterm.c (handle_one_xevent): Drop emulated button events.

3 years agoWork around pixel scrolling issues when line numbers are displayed
Po Lu [Wed, 15 Dec 2021 02:27:27 +0000 (10:27 +0800)]
Work around pixel scrolling issues when line numbers are displayed

* lisp/pixel-scroll.el (pixel-point-and-height-at-unseen-line):
Compare start position against line number display width
instead.

3 years ago; etc/NEWS: Move the note about Xref EIEIO change to the proper section
Dmitry Gutov [Wed, 15 Dec 2021 01:05:11 +0000 (04:05 +0300)]
; etc/NEWS: Move the note about Xref EIEIO change to the proper section

3 years agoproject-kill-buffers-display-buffer-list: Fix :package-version value
Dmitry Gutov [Tue, 14 Dec 2021 23:58:45 +0000 (02:58 +0300)]
project-kill-buffers-display-buffer-list: Fix :package-version value

* lisp/progmodes/project.el (project-kill-buffers-display-buffer-list):
Fix :package-version value.

3 years agoAdd 'comint-mode' and 'change-log-mode' to project-kill-buffer-conditions
Dmitry Gutov [Tue, 14 Dec 2021 23:57:20 +0000 (02:57 +0300)]
Add 'comint-mode' and 'change-log-mode' to project-kill-buffer-conditions

* lisp/progmodes/project.el (project-kill-buffer-conditions):
Add 'comint-mode' and 'change-log-mode' to the list (bug#52465).

3 years agoeieio-compat.el: Move to lisp/obsolete
Stefan Monnier [Tue, 14 Dec 2021 22:01:34 +0000 (17:01 -0500)]
eieio-compat.el: Move to lisp/obsolete

The file only contains obsolete definitions, so it really belongs in
`lisp/obsolete`.  Moving it there will also signal a warning for those
people who run old `.elc` files using EIEIO and generated with
Emacs<25 and who otherwise might not know about the obsolescence of
some of the functions they use.

* lisp/emacs-lisp/eieio-compat.el: Move to ...
* lisp/obsolete/eieio-compat.el: ... here.

3 years agoPrefer command remapping in allout.el
Stefan Kangas [Tue, 14 Dec 2021 19:19:32 +0000 (20:19 +0100)]
Prefer command remapping in allout.el

* lisp/allout.el (allout-compose-and-institute-keymap): Use command
remapping instead of substitute-key-definition.

3 years agoFix ert.texi error from previous change
Lars Ingebrigtsen [Tue, 14 Dec 2021 15:28:02 +0000 (16:28 +0100)]
Fix ert.texi error from previous change

* doc/misc/ert.texi (Running Tests in Batch Mode): Fix @r command.

3 years ago* lisp/net/eudc.el (custom-menu-create): Remove unnecessary autoload.
Stefan Kangas [Tue, 14 Dec 2021 15:10:43 +0000 (16:10 +0100)]
* lisp/net/eudc.el (custom-menu-create): Remove unnecessary autoload.

3 years agoRemove Emacs 21 compat code for command-remapping
Stefan Kangas [Tue, 14 Dec 2021 11:35:57 +0000 (12:35 +0100)]
Remove Emacs 21 compat code for command-remapping

* lisp/arc-mode.el (archive-mode-map):
* lisp/obsolete/iswitchb.el (iswitchb-global-map): Remove Emacs 21
compat code.

3 years agoMinor Tramp cleanup
Michael Albinus [Tue, 14 Dec 2021 13:40:18 +0000 (14:40 +0100)]
Minor Tramp cleanup

* lisp/net/tramp.el (tramp-get-buffer-string): Simplify.
(tramp-lock-pid): Fix docstring.

3 years agoExplain JUnit test reports in ert doc
Michael Albinus [Tue, 14 Dec 2021 13:39:53 +0000 (14:39 +0100)]
Explain JUnit test reports in ert doc

* doc/misc/ert.texi (Running Tests in Batch Mode): Explain
generation of JUnit test reports.

3 years agoUse defvar-keymap in elisp-mode.el
Stefan Kangas [Tue, 14 Dec 2021 11:27:57 +0000 (12:27 +0100)]
Use defvar-keymap in elisp-mode.el

* lisp/progmodes/elisp-mode.el (emacs-lisp-mode-map)
(elisp--dynlex-modeline-map, lisp-interaction-mode-map): Use
defvar-keymap.

3 years agoPrefer command remapping in cperl-mode.el
Stefan Kangas [Tue, 14 Dec 2021 03:41:45 +0000 (04:41 +0100)]
Prefer command remapping in cperl-mode.el

* lisp/progmodes/cperl-mode.el (cperl-mode-map): Use command remapping
instead of substitute-key-definition.

3 years agoRemove maintainer comment from Emacs 28 module snippet.
Philipp Stephani [Tue, 14 Dec 2021 10:17:37 +0000 (11:17 +0100)]
Remove maintainer comment from Emacs 28 module snippet.

This is the same as 44c13eefe8d30841000a96d82f467fb8d222e365 on
master.  We should also remove this comment on the release branch,
otherwise it ends up in the emacs-module.h shipped to users.

* src/module-env-28.h: Remove maintainer comment.

3 years agoOnly allow SQLite extensions from an allowlist
Lars Ingebrigtsen [Tue, 14 Dec 2021 08:29:06 +0000 (09:29 +0100)]
Only allow SQLite extensions from an allowlist

* src/sqlite.c (Fsqlite_load_extension): Only allow extensions
from an allowlist.

3 years agoMerge from origin/emacs-28
Stefan Kangas [Tue, 14 Dec 2021 05:31:37 +0000 (06:31 +0100)]
Merge from origin/emacs-28

3607508f3f Set calc-make-windows-dedicated to nil by default
9de8eec3bc * make-dist: Don't run "make --question info".  (Bug#52322)
cea8deea72 ; * src/xdisp.c (move_it_vertically_backward): Clarify com...
6170c5036e Fix regression in help-mode prompt

# Conflicts:
# etc/NEWS

3 years agoSet calc-make-windows-dedicated to nil by default
Stefan Kangas [Tue, 14 Dec 2021 02:38:11 +0000 (03:38 +0100)]
Set calc-make-windows-dedicated to nil by default

* lisp/calc/calc.el (calc-make-windows-dedicated):
Default to nil.  (Bug#52016)

3 years ago* make-dist: Don't run "make --question info". (Bug#52322)
Stefan Kangas [Tue, 14 Dec 2021 02:08:37 +0000 (03:08 +0100)]
* make-dist: Don't run "make --question info".  (Bug#52322)

3 years agocompletion.el: Make two compat aliases obsolete
Stefan Kangas [Tue, 14 Dec 2021 01:16:41 +0000 (02:16 +0100)]
completion.el: Make two compat aliases obsolete

* lisp/completion.el (cmpl-syntax-table, initialize-completions):
Make compat aliases obsolete.

3 years ago; * src/xdisp.c (move_it_vertically_backward): Clarify commentary.
Eli Zaretskii [Mon, 13 Dec 2021 19:02:38 +0000 (21:02 +0200)]
; * src/xdisp.c (move_it_vertically_backward): Clarify commentary.

3 years ago; Add a FIXME regarding the GMP memory allocation functions.
Philipp Stephani [Mon, 13 Dec 2021 17:28:13 +0000 (18:28 +0100)]
; Add a FIXME regarding the GMP memory allocation functions.

* src/bignum.c (init_bignum): Add a warning about the technically
incorrect use of the GMP memory allocation functions.

3 years agoERT can generate JUnit test reports
Michael Albinus [Mon, 13 Dec 2021 15:09:56 +0000 (16:09 +0100)]
ERT can generate JUnit test reports

* .gitignore: Add test/**/*.xml.

* admin/notes/emba: Mention JUnit test report.

* etc/NEWS: ERT can generate JUnit test reports.

* lisp/emacs-lisp/ert.el (xml-escape-string): Autoload.
(ert-write-junit-test-report)
(ert-write-junit-test-summary-report): New defuns.
(ert-run-tests-batch, ert-summarize-tests-batch-and-exit): Call them.

* test/Makefile.in (clean): Remove *.xml.

* test/README: Mention $EMACS_TEST_JUNIT_REPORT environment variable.

* test/infra/Makefile.in ($(FILE)): Generate header commentary.
(clean): Remove.

* test/infra/gitlab-ci.yml (variables): Set EMACS_TEST_JUNIT_REPORT.
(.job-template): Use it in script and after_script.
(.build-template, .gnustep-template, .filenotify-gio-template)
(.native-comp-template): Adapt rules.
(.test-template): Trigger JUnit test report.

* test/infra/test-jobs.yml: Regenerate.

3 years agoMake alias obsolete in xscheme.el
Stefan Kangas [Mon, 13 Dec 2021 14:57:54 +0000 (15:57 +0100)]
Make alias obsolete in xscheme.el

* lisp/progmodes/xscheme.el (xscheme-yank-previous-send): Make
obsolete.

3 years agoMake two aliases obsolete in lisp/international/robin.el
Stefan Kangas [Mon, 13 Dec 2021 14:57:04 +0000 (15:57 +0100)]
Make two aliases obsolete in lisp/international/robin.el

* lisp/international/robin.el (robin-transliterate-region)
(robin-transliterate-buffer): Make obsolete.

3 years ago* lisp/emacs-lisp/generator.el (iter-yield): Simplify
Stefan Monnier [Mon, 13 Dec 2021 14:31:49 +0000 (09:31 -0500)]
* lisp/emacs-lisp/generator.el (iter-yield): Simplify

3 years agolisp/pcomplete.el: Mark obsolete some unused functions
Stefan Monnier [Mon, 13 Dec 2021 14:29:42 +0000 (09:29 -0500)]
lisp/pcomplete.el: Mark obsolete some unused functions

* lisp/pcomplete.el (pcomplete-match-beginning, pcomplete-match-end):
Mark as obsolete.
(pcomplete-opt, pcomplete--here, pcomplete--help): Use lexical-binding.

3 years agoFix regression in help-mode prompt
Eli Zaretskii [Mon, 13 Dec 2021 13:51:38 +0000 (15:51 +0200)]
Fix regression in help-mode prompt

* lisp/help-macro.el (make-help-screen): Restore SPC and DEL in
prompt.  Reported by Colin Baxter <m43cap@yandex.com>.

3 years ago* src/sqlite.c (Fsqlite_open, Fsqlite_load_extension): Use ENCODE_FILE.
Eli Zaretskii [Mon, 13 Dec 2021 13:35:31 +0000 (15:35 +0200)]
* src/sqlite.c (Fsqlite_open, Fsqlite_load_extension): Use ENCODE_FILE.

3 years ago* lisp/ielm.el (ielm-map): Use defvar-keymap.
Stefan Kangas [Mon, 13 Dec 2021 13:14:19 +0000 (14:14 +0100)]
* lisp/ielm.el (ielm-map): Use defvar-keymap.

3 years ago* lisp/ielm.el (ielm-header): Show key binding for describe-mode.
Stefan Kangas [Mon, 13 Dec 2021 01:54:32 +0000 (02:54 +0100)]
* lisp/ielm.el (ielm-header): Show key binding for describe-mode.

3 years agoMerge from origin/emacs-28
Stefan Kangas [Mon, 13 Dec 2021 05:30:58 +0000 (06:30 +0100)]
Merge from origin/emacs-28

9bd3f78645 Make `M-x run-python' select the window again
62139aeb42 * lisp/tab-bar.el (tab-bar-switch-to-last-tab): Add 'abs' ...
ea8422204f * make-dist (manifest): Filter out msdos/autogen/* files.
b5354e989d Rewrite the "Quitting Windows" section of Emacs Lisp Refer...
64ea1a178c Fix eshell for systems that do not have subprocesses

3 years agoAdd a new `sqlite-pragma' command
Lars Ingebrigtsen [Mon, 13 Dec 2021 05:08:09 +0000 (06:08 +0100)]
Add a new `sqlite-pragma' command

* doc/lispref/text.texi (Database): Document it.
* src/sqlite.c (Fsqlite_pragma): Add a separate command for
pragmas.  These can be done via sqlite-execute, but it's less
confusing to have them in a separate command.

3 years agoIntroduce a new sqlite-locked-error
Lars Ingebrigtsen [Mon, 13 Dec 2021 04:38:29 +0000 (05:38 +0100)]
Introduce a new sqlite-locked-error

* src/sqlite.c (Fsqlite_execute): Use it.
(syms_of_sqlite): Introduce a new error for locked databases so
that we can catch that condition on higher levels.

3 years agoMake `M-x run-python' select the window again
Kévin Le Gouguec [Mon, 13 Dec 2021 04:17:00 +0000 (05:17 +0100)]
Make `M-x run-python' select the window again

Interactively, we want M-x run-python to focus the interpreter buffer.
The previous code failed in two ways:

- the call to 'display-buffer' was not reached if an interpreter
  was already running,

- set-buffer is ineffectual if the interpreter's window is not
  selected: once Emacs returns to the command loop, the current buffer
  will revert back to what the selected window contains.

* lisp/progmodes/python.el (python-shell-make-comint): Handle the SHOW
argument regardless of whether an interpreter buffer exists, and use
pop-to-buffer to select the window.
(run-python): Delegate buffer management to
'python-shell-make-comint'.

* test/lisp/progmodes/python-tests.el
(python-tests--run-python-selects-window): Rename from
'python-tests--bug31398', and adjust assertions (bug#52380).

3 years agoWork around pixel scrolling issues when org-indent-mode is on
Po Lu [Mon, 13 Dec 2021 01:59:39 +0000 (09:59 +0800)]
Work around pixel scrolling issues when org-indent-mode is on

* lisp/pixel-scroll.el (pixel-point-and-height-at-unseen-line):
Subtract line height of window start when it doesn't appear
at the 0th pixel of the line.

3 years agoStop using XI focus events on non-GTK builds
Po Lu [Mon, 13 Dec 2021 01:17:55 +0000 (09:17 +0800)]
Stop using XI focus events on non-GTK builds

* src/xfns.c (setup_xi_event_mask): Stop setting XI_FocusIn
and XI_FocusOut.
* src/xterm.c (x_detect_focus_change) <GenericEvent>: Don't
handle XI_FocusIn and XI_FocusOut events when not on GTK.

3 years ago; * etc/NEWS: Add 'char-fold-override' (bug#52394).
Juri Linkov [Sun, 12 Dec 2021 19:58:53 +0000 (21:58 +0200)]
; * etc/NEWS: Add 'char-fold-override' (bug#52394).

3 years ago* lisp/char-fold.el (char-fold-override): Doc fix.
Eli Zaretskii [Sun, 12 Dec 2021 19:34:57 +0000 (21:34 +0200)]
* lisp/char-fold.el (char-fold-override): Doc fix.

3 years ago* lisp/char-fold.el (char-fold-override): New defcustom (bug#52394).
Juri Linkov [Sun, 12 Dec 2021 19:11:47 +0000 (21:11 +0200)]
* lisp/char-fold.el (char-fold-override): New defcustom (bug#52394).

(char-fold--default-override): New defconst with the default value nil.
(char-fold--previous): Add char-fold--default-override.
(char-fold--make-table): Don't populate the table with default chars
when char-fold-override or char-fold--default-override is non-nil.
(char-fold-update-table): Add char-fold--default-override.

3 years ago* lisp/tab-bar.el (tab-bar-switch-to-last-tab): Add 'abs' for precautions.
Juri Linkov [Sun, 12 Dec 2021 18:25:54 +0000 (20:25 +0200)]
* lisp/tab-bar.el (tab-bar-switch-to-last-tab): Add 'abs' for precautions.

https://lists.gnu.org/archive/html/emacs-devel/2021-11/msg01149.html

3 years ago* make-dist (manifest): Filter out msdos/autogen/* files.
Eli Zaretskii [Sun, 12 Dec 2021 18:20:51 +0000 (20:20 +0200)]
* make-dist (manifest): Filter out msdos/autogen/* files.

3 years ago* lisp/startup.el: Let-bind browse-url-browser-function instead of setq-local
Juri Linkov [Sun, 12 Dec 2021 17:48:40 +0000 (19:48 +0200)]
* lisp/startup.el: Let-bind browse-url-browser-function instead of setq-local

* lisp/startup.el (fancy-startup-text, fancy-about-text)
(fancy-splash-head, normal-about-screen): Let-bind browse-url-browser-function
to eww-browse-url around functions that use browse-url.
(fancy-startup-screen, fancy-about-screen): Don't set buffer-local
browse-url-browser-function.
https://lists.gnu.org/archive/html/emacs-devel/2021-12/msg00939.html

3 years agoFix overline display over stretch glyphs with box on NS
Po Lu [Sun, 12 Dec 2021 13:33:56 +0000 (21:33 +0800)]
Fix overline display over stretch glyphs with box on NS

* src/nsterm.m (ns_dumpglyphs_stretch): Don't draw text
decorations when there is a box.
(ns_draw_glyph_string): Draw text decorations after the box
in stretch glyph that have one.

3 years agoFix overline display when there is a box
Po Lu [Sun, 12 Dec 2021 13:05:35 +0000 (21:05 +0800)]
Fix overline display when there is a box

* src/w32term.c (w32_draw_glyph_string):
* src/xterm.c (x_draw_glyph_string): Draw box before any text
decorations.

3 years agoRewrite the "Quitting Windows" section of Emacs Lisp Reference
Richard Stallman [Wed, 8 Dec 2021 04:35:31 +0000 (23:35 -0500)]
Rewrite the "Quitting Windows" section of Emacs Lisp Reference

* doc/lispref/windows.texi (Quitting Windows): Rewrite for
clarity.  (Bug#52328)

3 years agoReally fix the etags TEX parsing
Lars Ingebrigtsen [Sun, 12 Dec 2021 10:45:11 +0000 (11:45 +0100)]
Really fix the etags TEX parsing

* lib-src/etags.c (TEX_decode_env): Re-fix off-by-one parsing of
TEXTAGS environment variable (bug#52438).

3 years agoFix an off-by-one error in TEX parsing in etags
Lars Ingebrigtsen [Sun, 12 Dec 2021 10:26:22 +0000 (11:26 +0100)]
Fix an off-by-one error in TEX parsing in etags

* lib-src/etags.c (TEX_decode_env): Fix off-by-one parsing of
TEXTAGS environment variable (bug#52438).  Based on a patch by
David Fussner <dfussner@googlemail.com> and amended by Andreas
Schwab <schwab@linux-m68k.org>.

3 years agoCheck for support in sqlite-mode-open-file
Lars Ingebrigtsen [Sun, 12 Dec 2021 09:22:52 +0000 (10:22 +0100)]
Check for support in sqlite-mode-open-file

* lisp/sqlite-mode.el (sqlite-mode-open-file): Error out earlier
when we don't have sqlite support.

3 years agoeshell: Prefer octal number for file modes
Stefan Kangas [Sun, 12 Dec 2021 08:12:14 +0000 (09:12 +0100)]
eshell: Prefer octal number for file modes

* lisp/eshell/esh-util.el (eshell-private-file-modes)
(eshell-private-directory-modes): Prefer octal number for file modes.

3 years ago; * lisp/emacs-lisp/shortdoc.el (keymaps): Fix typo.
Stefan Kangas [Sun, 12 Dec 2021 08:04:11 +0000 (09:04 +0100)]
; * lisp/emacs-lisp/shortdoc.el (keymaps): Fix typo.

3 years agoFix eshell for systems that do not have subprocesses
Po Lu [Sun, 12 Dec 2021 07:50:28 +0000 (15:50 +0800)]
Fix eshell for systems that do not have subprocesses

* lisp/eshell/esh-cmd.el (eshell-eval-command): Use
`eshell-processp' instead of `processp'.

3 years agoMake with-sqlite-transaction mode code efficient
Lars Ingebrigtsen [Sun, 12 Dec 2021 06:22:44 +0000 (07:22 +0100)]
Make with-sqlite-transaction mode code efficient

* lisp/sqlite.el (with-sqlite-transaction): Rewrite to only
include BODY once.

3 years ago* src/xterm.c (x_detect_focus_change): Fix XI2 focus on GTK builds.
Po Lu [Sun, 12 Dec 2021 06:20:18 +0000 (14:20 +0800)]
* src/xterm.c (x_detect_focus_change): Fix XI2 focus on GTK builds.

3 years agoFix last change
Po Lu [Sun, 12 Dec 2021 06:13:05 +0000 (14:13 +0800)]
Fix last change

* src/xterm.c (x_detect_focus_change): Test against
FOCUS_EXPLICIT.

3 years agoFix some compilation warnings in sqlite-less builds
dick r. chiang [Sun, 12 Dec 2021 06:13:37 +0000 (07:13 +0100)]
Fix some compilation warnings in sqlite-less builds

* test/src/sqlite-tests.el:
* lisp/sqlite-mode.el: Avoid compilation warnings in builds
without libsqlite (bug#52440).

3 years agoFix frame focus on X Toolkit builds with XInput 2
Po Lu [Sun, 12 Dec 2021 06:00:09 +0000 (14:00 +0800)]
Fix frame focus on X Toolkit builds with XInput 2

* src/xterm.c (x_detect_focus_change): Allow focus_state to not
be FOCUS_EXPLICIT when handling FocusIn and FocusOut events.

3 years agoUpdate bovine/gcc-tests for newer Macos versions
Lars Ingebrigtsen [Sun, 12 Dec 2021 05:57:02 +0000 (06:57 +0100)]
Update bovine/gcc-tests for newer Macos versions

* test/lisp/cedet/semantic/bovine/gcc-tests.el
(semantic-gcc-test-output-parser-this-machine): Update gcc->llvm
detection to Macos Monterey.

3 years agoMerge from origin/emacs-28
Stefan Kangas [Sun, 12 Dec 2021 05:31:07 +0000 (06:31 +0100)]
Merge from origin/emacs-28

8a0734329a Avoid undefined behavior in 'send-process-region' (Bug#523...
30dd5c9acc Update to Org 9.5.1-25-g9ca3bc
a374849926 Fix the DJGPP port

3 years agoTweak erroring in sqlite-mode-delete
Lars Ingebrigtsen [Sun, 12 Dec 2021 04:55:35 +0000 (05:55 +0100)]
Tweak erroring in sqlite-mode-delete

* lisp/sqlite-mode.el (sqlite-mode-delete): Use user-error instead
of error for user-level stuff.

3 years agoMake sqlite-mode-list-tables work on older sqlite versions
Lars Ingebrigtsen [Sun, 12 Dec 2021 04:41:07 +0000 (05:41 +0100)]
Make sqlite-mode-list-tables work on older sqlite versions

* lisp/sqlite-mode.el (sqlite-mode-list-tables): Use sqlite_master
instead of sqlite_schema, since the former name is the historical
name and is available in all sqlite3 versions:
https://sqlite.org/schematab.html

3 years agoClear precision scroll interpolation when direction changes
Po Lu [Sun, 12 Dec 2021 02:54:50 +0000 (10:54 +0800)]
Clear precision scroll interpolation when direction changes

* lisp/pixel-scroll.el (pixel-scroll-precision-interpolate):
Clear scroll interpolation when direction changes.

3 years agoFix drawing overlines on top of stretch glyphs when there is a box
Po Lu [Sun, 12 Dec 2021 01:17:00 +0000 (01:17 +0000)]
Fix drawing overlines on top of stretch glyphs when there is a box

* src/haikuterm.c (haiku_draw_string_box): Also draw text
decorations if the clipping is to be set.
(haiku_draw_glyph_string): Only draw text decorations if
the box will not be drawn with clipping.

3 years agoConstant-propagate access to captured variables
Mattias Engdegård [Sat, 11 Dec 2021 21:11:08 +0000 (22:11 +0100)]
Constant-propagate access to captured variables

* lisp/emacs-lisp/byte-opt.el (byte-optimize--substitutable-p):
Treat (internal-get-closed-var N) as constants for propagation
purposes, because that is effectively what such forms will be compiled
to.  This allows for the elimination of some lexical variables.

* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
Add test case.

3 years agoReimplement gnus-thread-header in Lisp
Mattias Engdegård [Sat, 11 Dec 2021 20:59:13 +0000 (21:59 +0100)]
Reimplement gnus-thread-header in Lisp

* lisp/gnus/gnus-sum.el (gnus-thread-header):
Replace lovingly hand-crafted assembler code with plain Lisp.
With lexical binding the difference is unlikely to be detectable.

3 years ago; * lisp/subr.el (start-process-shell-command): Add missing period.
Philipp Stephani [Sat, 11 Dec 2021 18:33:50 +0000 (19:33 +0100)]
; * lisp/subr.el (start-process-shell-command): Add missing period.

3 years agoFix hang when deleting a pipe process
Eli Zaretskii [Sat, 11 Dec 2021 18:15:53 +0000 (20:15 +0200)]
Fix hang when deleting a pipe process

* src/w32.h (FILE_DONT_CLOSE): New flag.
* src/w32.c (sys_close): Don't close descriptors used to read from
the pipe process.  Leave the FILE_DONT_CLOSE flag set in the
descriptor's info.
(register_aux_fd): Set the FILE_DONT_CLOSE flag in the
descriptor's info.
* src/w32proc.c (reader_thread): When exiting normally, close the
file descriptor used to read from a pipe process.  (Bug#52414)

3 years agoAvoid undefined behavior in 'send-process-region' (Bug#52369).
Philipp Stephani [Sat, 11 Dec 2021 12:51:34 +0000 (13:51 +0100)]
Avoid undefined behavior in 'send-process-region' (Bug#52369).

* src/process.c (send_process): Signal an error if the file descriptor
has already been closed.

3 years agoUpdate to Org 9.5.1-25-g9ca3bc
Kyle Meyer [Sat, 11 Dec 2021 17:31:13 +0000 (12:31 -0500)]
Update to Org 9.5.1-25-g9ca3bc

3 years agoFix the DJGPP port
Po Lu [Fri, 10 Dec 2021 13:36:59 +0000 (21:36 +0800)]
Fix the DJGPP port

* config.bat:
* msdos/sed1v2.inp:
* msdos/sed2v2.inp:
* msdos/sed3v2.inp:
* msdos/sedlibmk.inp: Update for Emacs 28.
* msdos/langinfo.h: New file.

* lisp/loadup.el: Use correct path to temacs when dumping on
MS-DOS.
* src/callproc.c (environ) [MSDOS]: New declaration.
(child_setup, emacs_spawn): Update MS-DOS parts for Emacs 28.
* src/fileio.c (Fcopy_file): Don't use copy_file_range on
MS-DOS.
* src/msdos.c (initialize_msdos_display): Add
`defined_color_hook'.
(openat, fchmodat, futimens, utimensat): New functions.

* src/msdos.h (FRAME_X_DISPLAY): New macro.
* src/process.c: Make some more things conditional on
subprocess support.
(PIPECONN_P, PIPECONN1_P) [!subprocesses]: New placeholder
macros.
(Fnum_processors): Return 1 on MSDOS.
(open_channel_for_module): Avoid subprocess specific code
on MSDOS.

3 years agoImprove documentation of sqlite3 support
Eli Zaretskii [Sat, 11 Dec 2021 11:04:55 +0000 (13:04 +0200)]
Improve documentation of sqlite3 support

* lisp/sqlite-mode.el (sqlite-mode-list-data):
* configure.ac (HAVE_SQLITE3): Fix typos.

* doc/lispref/text.texi (Database): Improve and clarify wording,
add index entries, mention all the function arguments.

* etc/NEWS: Minor wording changes of the sqlite entries.

3 years agoUse window height to determine wheel event pixel deltas on XInput 2
Po Lu [Sat, 11 Dec 2021 10:30:01 +0000 (18:30 +0800)]
Use window height to determine wheel event pixel deltas on XInput 2

* src/xterm.c (handle_one_xevent): Use window height instead of
frame height to determine the height of a scroll unit.

3 years agoPrevent hang when exiting Emacs on Haiku
Po Lu [Sat, 11 Dec 2021 10:07:48 +0000 (10:07 +0000)]
Prevent hang when exiting Emacs on Haiku

* src/haiku_support.cc (be_app_quit): Don't wait for app
thread to also quit.

3 years ago* src/sqlite.c (row_to_value): Call 'make_unibyte_string'.
Eli Zaretskii [Sat, 11 Dec 2021 10:05:54 +0000 (12:05 +0200)]
* src/sqlite.c (row_to_value): Call 'make_unibyte_string'.

3 years agoPacify unused variable warning in xterm.c
Basil L. Contovounesios [Sat, 11 Dec 2021 09:47:55 +0000 (11:47 +0200)]
Pacify unused variable warning in xterm.c

* src/xterm.c (handle_one_xevent) <GenericEvent> [HAVE_XINPUT2]: The
variable any_stop_p is used only when HAVE_XWIDGETS, so guard its
declaration accordingly to pacify GCC's -Wunused-variable warning.

3 years agoMinor cleanups in sqlite.c
Eli Zaretskii [Sat, 11 Dec 2021 09:54:44 +0000 (11:54 +0200)]
Minor cleanups in sqlite.c

* src/sqlite.c (Fsqlite_open): Signal an error if
'init_sqlite_functions' fails.  Encode FILE using UTF-8.
(Fsqlite_close, Fsqlite_execute, Fsqlite_select)
(Fsqlite_load_extension): Doc fixes.
(Fsqlite_load_extension): Encode MODULE using UTF-8.

3 years agoMinor cleanups of sqlite3 code on MS-Windows
Eli Zaretskii [Sat, 11 Dec 2021 09:26:04 +0000 (11:26 +0200)]
Minor cleanups of sqlite3 code on MS-Windows

* src/sqlite.c (sqlite_loaded_p): Function deleted: not used
anymore.
(init_sqlite_functions) [WINDOWSNT]: Use a static 'bool' variable
to indicate if sqlite3 DLL was successfully loaded.
(Fsqlite_available_p) [WINDOWSNT]: Just call
'init_sqlite_functions' if Vlibrary_cache doesn't mention
'sqlite3'.

3 years agoFix a typo in sqlite.c
Eli Zaretskii [Sat, 11 Dec 2021 08:51:09 +0000 (10:51 +0200)]
Fix a typo in sqlite.c

* src/sqlite.c (Fsqlite_select): Fix a typo in arguments to
make_sqlite.

3 years agoAdd confirmation to sqlite-mode-delete
Lars Ingebrigtsen [Sat, 11 Dec 2021 08:28:57 +0000 (09:28 +0100)]
Add confirmation to sqlite-mode-delete

* lisp/sqlite-mode.el (sqlite-mode-delete): Add confirmation.

3 years agoDon't leave open cursors when listing sqlite data
Lars Ingebrigtsen [Sat, 11 Dec 2021 08:02:52 +0000 (09:02 +0100)]
Don't leave open cursors when listing sqlite data

* lisp/sqlite-mode.el (sqlite-mode-list-data)
(sqlite--mode--list-data): Don't leave open cursor (because they
block other processes from deleting stuff).
(sqlite-mode-delete): Adjust to new layout.