]> git.eshelyaron.com Git - emacs.git/log
emacs.git
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 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.

3 years agoAdd FIXME comment
Lars Ingebrigtsen [Sat, 11 Dec 2021 07:18:02 +0000 (08:18 +0100)]
Add FIXME comment

* lisp/sqlite-mode.el (sqlite-mode-delete): New command.
(sqlite--mode--list-data, sqlite-mode-list-data): Adjust to new
command.

3 years agoAdd an sqlite-mode-delete command
Lars Ingebrigtsen [Sat, 11 Dec 2021 07:11:10 +0000 (08:11 +0100)]
Add an sqlite-mode-delete command

* lisp/sqlite-mode.el (sqlite-mode-delete): New command.
(sqlite--mode--list-data, sqlite-mode-list-data): Adjust to new
command.

3 years agoFix Fsqlite_finalize book-keeping
Lars Ingebrigtsen [Sat, 11 Dec 2021 06:47:34 +0000 (07:47 +0100)]
Fix Fsqlite_finalize book-keeping

* src/sqlite.c (Fsqlite_finalize): Mark the object as dead.

3 years ago; * etc/NEWS: Fix wording in recent entry.
Stefan Kangas [Sat, 11 Dec 2021 06:10:02 +0000 (07:10 +0100)]
; * etc/NEWS: Fix wording in recent entry.

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

5708da48d1 Revert "Make `M-x run-python' select the window again"
aa2872a127 Make `M-x run-python' select the window again
c8e19b3a84 Don't bug out on certain empty elements with ids

3 years agoImprove sqlite-mode--tablify tables
Lars Ingebrigtsen [Sat, 11 Dec 2021 05:50:58 +0000 (06:50 +0100)]
Improve sqlite-mode--tablify tables

* lisp/sqlite-mode.el (sqlite-mode--tablify): Tweak column widths
and sanitize newlines.

3 years agoCheck whether the sqlite supports sqlite3_load_extension
Lars Ingebrigtsen [Sat, 11 Dec 2021 05:40:01 +0000 (06:40 +0100)]
Check whether the sqlite supports sqlite3_load_extension

* configure.ac: Check for sqlite3_load_extension, which is
apparently missing in some versions.
* src/sqlite.c: Add guards.
(Fsqlite_load_extension): Ifdef out on systems that doesn't have it.

3 years agoFix sqlite-mode.el build problems
Lars Ingebrigtsen [Sat, 11 Dec 2021 05:31:42 +0000 (06:31 +0100)]
Fix sqlite-mode.el build problems

* lisp/sqlite-mode.el (sqlite-mode-list-tables): Fix function
rename usage.

3 years agoFix some sqlite doc string typos
Lars Ingebrigtsen [Sat, 11 Dec 2021 05:26:37 +0000 (06:26 +0100)]
Fix some sqlite doc string typos

* src/sqlite.c (Fsqlite_load_extension, Fsqlite_more_p): Fix typos
in doc strings.

3 years agoAdd a new mode for examining sqlite files
Lars Ingebrigtsen [Sat, 11 Dec 2021 05:23:57 +0000 (06:23 +0100)]
Add a new mode for examining sqlite files

* lisp/sqlite-mode.el: New file.

3 years agoFix comment in heading
Lars Ingebrigtsen [Sat, 11 Dec 2021 04:22:42 +0000 (05:22 +0100)]
Fix comment in heading

3 years agoAdd NEWS entry for sqlite
Lars Ingebrigtsen [Sat, 11 Dec 2021 03:57:22 +0000 (04:57 +0100)]
Add NEWS entry for sqlite

3 years agoAdd sqlite3 support to Emacs
Lars Ingebrigtsen [Sat, 11 Dec 2021 03:55:57 +0000 (04:55 +0100)]
Add sqlite3 support to Emacs

* configure.ac: Add check for the sqlite library.
* doc/lispref/text.texi (Database): Document it.

* lisp/sqlite.el: New file.

* lisp/term/w32-win.el (dynamic-library-alist): Add a mapping.

* src/Makefile.in (SQLITE3_LIBS): Add the libraries.

* src/alloc.c (union emacs_align_type): Add a Lisp_Sqlite struct.

* src/data.c (Ftype_of): Add sqlite.

* src/emacs.c (main): Load the syms.

* src/lisp.h (DEFINE_GDB_SYMBOL_BEGIN): Add PVEC_SQLITE.
(GCALIGNED_STRUCT): New struct to keep data for sqlite database
objects and statement objects.
(SQLITEP, SQLITE, CHECK_SQLITE, XSQLITE): New macros for accessing
the objects.

* src/pdumper.c (dump_vectorlike): Update hash.
(dump_vectorlike): Don't dump it.

* src/print.c (print_vectorlike): Add a printer for the sqlite
object.

* src/sqlite.c: New file.

* test/src/sqlite-tests.el: Add tests.

3 years agoFix bibtex-biblatex-entry-alist sorting when using latex
Lars Ingebrigtsen [Sat, 11 Dec 2021 03:16:00 +0000 (04:16 +0100)]
Fix bibtex-biblatex-entry-alist sorting when using latex

* lisp/textmodes/bibtex.el (bibtex-biblatex-entry-alist): Sort
PhdThesis and TechReport correctly when using the latex variant
(bug#52354).

3 years ago* etc/TODO: Entry about converting to defvar-keymap.
Stefan Kangas [Fri, 10 Dec 2021 14:47:09 +0000 (15:47 +0100)]
* etc/TODO: Entry about converting to defvar-keymap.

3 years ago; * lisp/dired.el: Remove code commented out since 2000.
Stefan Kangas [Fri, 10 Dec 2021 14:39:23 +0000 (15:39 +0100)]
; * lisp/dired.el: Remove code commented out since 2000.

3 years agoUse defvar-keymap for package-menu-mode-map
Stefan Kangas [Fri, 10 Dec 2021 14:33:54 +0000 (15:33 +0100)]
Use defvar-keymap for package-menu-mode-map

* lisp/emacs-lisp/package.el (package-menu-mode-map): Use
defvar-keymap.

3 years ago; * etc/NEWS: Improve recently added entry.
Stefan Kangas [Fri, 10 Dec 2021 13:11:22 +0000 (14:11 +0100)]
; * etc/NEWS: Improve recently added entry.

3 years agoMake keymap-lookup work for keymap results, too
Lars Ingebrigtsen [Fri, 10 Dec 2021 12:11:26 +0000 (13:11 +0100)]
Make keymap-lookup work for keymap results, too

* lisp/keymap.el (keymap-lookup): Make this function work for
non-symbol lookups, too (bug#52374).

3 years agoRevert "Make `M-x run-python' select the window again"
Lars Ingebrigtsen [Fri, 10 Dec 2021 12:07:24 +0000 (13:07 +0100)]
Revert "Make `M-x run-python' select the window again"

This reverts commit aa2872a12770282ede3548ed3fcab00c5a5b9f18.

This led to a test failure.

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

* lisp/progmodes/python.el (python-shell-make-comint): Make `M-x
run-python' select the window again like in 27.2 (bug#52380).

3 years agoDon't bug out on certain empty elements with ids
Lars Ingebrigtsen [Fri, 10 Dec 2021 11:46:55 +0000 (12:46 +0100)]
Don't bug out on certain empty elements with ids

* lisp/net/shr.el (shr-descend): Fix empty-element #id targetting
(bug#52391).

3 years agoMake dired-buffers-for-dir expand the DIR argument
Lars Ingebrigtsen [Fri, 10 Dec 2021 11:32:49 +0000 (12:32 +0100)]
Make dired-buffers-for-dir expand the DIR argument

* lisp/dired.el (dired-buffers-for-dir): Expand DIR argument
(bug#52395).
(dired-find-buffer-nocreate, dired-clean-up-after-deletion):
Adjust callers.

3 years agoFurther reduce image-related stutter during precision scrolling
Po Lu [Fri, 10 Dec 2021 06:20:32 +0000 (14:20 +0800)]
Further reduce image-related stutter during precision scrolling

* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page): Disable
`scroll-preserve-screen-position' and `auto-window-vscroll'
while scrolling.

3 years agoStop setting `make-cursor-line-fully-visible' in precision scrolling
Po Lu [Fri, 10 Dec 2021 06:01:44 +0000 (06:01 +0000)]
Stop setting `make-cursor-line-fully-visible' in precision scrolling

* lisp/pixel-scroll.el (pixel-scroll-precision-mode): Stop
setting `make-cursor-line-fully-visible'.

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

7a25ba0fde ; * lisp/image-dired.el: Fix typo.
dda6337066 emacsclient takes more care about XDG_RUNTIME_DIR
26fb4168b8 ; Prefer HTTPS in more URLs
6b89578524 ; * lisp/progmodes/flymake.el: Update the minimum Emacs ve...

3 years agoFix bob detection when pixel scrolling upwards
Po Lu [Fri, 10 Dec 2021 03:30:07 +0000 (11:30 +0800)]
Fix bob detection when pixel scrolling upwards

* lisp/pixel-scroll.el (pixel-point-and-height-at-unseen-line):
Don't go to the beginning-of-visual-line if bobp.

3 years agoFix pixel scrolling upwards in Info buffers
Po Lu [Fri, 10 Dec 2021 03:25:10 +0000 (11:25 +0800)]
Fix pixel scrolling upwards in Info buffers

* lisp/pixel-scroll.el (pixel-point-and-height-at-unseen-line):
Don't blindly trust window start to be the beginning of a
visual line.

3 years agoRemove unused let-bindings from pixel-scroll.el
Po Lu [Fri, 10 Dec 2021 02:38:24 +0000 (10:38 +0800)]
Remove unused let-bindings from pixel-scroll.el

* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page): Remove unused
bindings.

3 years agoFix precision scrolling for stretch glyphs
Po Lu [Fri, 10 Dec 2021 02:33:00 +0000 (10:33 +0800)]
Fix precision scrolling for stretch glyphs

* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page): Simplify logic.
(pixel-scroll-precision-interpolate): Block throw-on-input
when actually scrolling.