]> git.eshelyaron.com Git - emacs.git/log
emacs.git
2 years agoClarify the run-at-time documentation about "integral multiple"
Lars Ingebrigtsen [Fri, 3 Dec 2021 16:22:54 +0000 (17:22 +0100)]
Clarify the run-at-time documentation about "integral multiple"

* lisp/emacs-lisp/timer.el (run-at-time):
* doc/lispref/os.texi (Timers): Explain what "integral multiple"
really means.

2 years agoRemove separators at the beginning and end of the context menu
Jim Porter [Fri, 3 Dec 2021 16:10:10 +0000 (17:10 +0100)]
Remove separators at the beginning and end of the context menu

* lisp/mouse.el (context-menu-map): Remove beginning/end
seperators (bug#52237).

2 years agoImprove how dired-mark-sexp interprets file sizes in non-C locales
Lars Ingebrigtsen [Fri, 3 Dec 2021 16:01:30 +0000 (17:01 +0100)]
Improve how dired-mark-sexp interprets file sizes in non-C locales

* lisp/dired-x.el (dired-x--string-to-number): Try to understand
localised numbers (with "." separators or the like) (bug#23373).

2 years ago; Minor cleanup in re-builder after my last commit
Stefan Kangas [Fri, 3 Dec 2021 16:18:33 +0000 (17:18 +0100)]
; Minor cleanup in re-builder after my last commit

* lisp/emacs-lisp/re-builder.el (reb-lisp-mode, reb-cook-regexp):
Very minor cleanup (by popular demand).

2 years agoemacs-lisp-mode: Use error face for "/d" indicator
Stefan Kangas [Fri, 3 Dec 2021 15:55:27 +0000 (16:55 +0100)]
emacs-lisp-mode: Use error face for "/d" indicator

* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Use 'error' face for
the dynamic scoping ("/d") indicator in the mode line to make it stand
out more.

2 years agoDon't support obsolete sregex syntax in re-builder
Stefan Kangas [Fri, 3 Dec 2021 15:42:24 +0000 (16:42 +0100)]
Don't support obsolete sregex syntax in re-builder

* lisp/emacs-lisp/re-builder.el (reb-lisp-mode)
(reb-lisp-syntax-p, reb-change-syntax, reb-cook-regexp): Remove final
remaining references to the long obsolete sregex syntax.

2 years agoFix typo in NEWS about 'write-file'
Lars Ingebrigtsen [Fri, 3 Dec 2021 15:28:29 +0000 (16:28 +0100)]
Fix typo in NEWS about 'write-file'

2 years agoFix dired--insert-disk-space
Michael Albinus [Fri, 3 Dec 2021 14:50:09 +0000 (15:50 +0100)]
Fix dired--insert-disk-space

* lisp/dired.el (dired--insert-disk-space): Handle case
`get-free-disk-space' returns nil.

2 years ago* lisp/image.el (image): Add :prefix and :link.
Stefan Kangas [Fri, 3 Dec 2021 14:19:26 +0000 (15:19 +0100)]
* lisp/image.el (image): Add :prefix and :link.

2 years agoimage-mode: Advertize viewing as text less eagerly
Stefan Kangas [Fri, 3 Dec 2021 14:13:32 +0000 (15:13 +0100)]
image-mode: Advertize viewing as text less eagerly

* lisp/image-mode.el (image-text-based-formats): New defcustom.
(image-mode--setup-mode): Don't show message to show image as text
unless it is a text based image format.  Don't mention key binding
for editing as hex.  (Bug#51961)
(image-mode-as-text): Don't mention key binding for editing as hex.
(image-mode-as-hex): Minor cleanup.

2 years ago; * lisp/image-mode.el (image-mode): Minor doc fix.
Stefan Kangas [Fri, 3 Dec 2021 13:34:19 +0000 (14:34 +0100)]
; * lisp/image-mode.el (image-mode): Minor doc fix.

2 years ago* lisp/emacs-lisp/cl-macs.el (natnum): Fix typo
Stefan Monnier [Fri, 3 Dec 2021 14:07:37 +0000 (09:07 -0500)]
* lisp/emacs-lisp/cl-macs.el (natnum): Fix typo

2 years ago* lisp/emacs-lisp/cl-macs.el (natnum): Define it as a type
Stefan Monnier [Fri, 3 Dec 2021 13:56:52 +0000 (08:56 -0500)]
* lisp/emacs-lisp/cl-macs.el (natnum): Define it as a type

2 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Fri, 3 Dec 2021 13:24:49 +0000 (14:24 +0100)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

2 years agoAdapt directory summary line handling in Tramp
Michael Albinus [Fri, 3 Dec 2021 13:24:43 +0000 (14:24 +0100)]
Adapt directory summary line handling in Tramp

* lisp/net/tramp-sh.el (tramp-sh-handle-insert-directory):
* lisp/net/tramp-smb.el (tramp-smb-handle-insert-directory):
Do not add or modify summary line when `dired-free-space' is bound.

2 years agoRevert "Support display of non-ASCII characters with aligned columns"
Eli Zaretskii [Fri, 3 Dec 2021 08:02:46 +0000 (10:02 +0200)]
Revert "Support display of non-ASCII characters with aligned columns"

This reverts commit 608267c71e11da9c757c269a5e22e62ef04d0bfe.

2 years agoSend scroll stop events to xwidgets when built with XInput 2
Po Lu [Fri, 3 Dec 2021 06:31:20 +0000 (14:31 +0800)]
Send scroll stop events to xwidgets when built with XInput 2

* src/xwidget.c (xwidget_scroll): Set xg_event->scroll.is_stop
when appropriate.

2 years agoImprove velocity calculation in momentum scrolling
Po Lu [Fri, 3 Dec 2021 05:55:39 +0000 (13:55 +0800)]
Improve velocity calculation in momentum scrolling

* lisp/pixel-scroll.el
(pixel-scroll-precision-momentum-factor): Remove option.
(pixel-scroll-precision-initial-velocity-factor)
(pixel-scroll-precision-momentum-min-velocity): New user
options.
(pixel-scroll-accumulate-velocity): Clear velocity ring
if sign is different.
(pixel-scroll-calculate-velocity): Use current time.
(pixel-scroll-start-momentum): Use better algorithm.

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

9c222b9c1a Port to C compilers that lack size-0 arrays
fed35a8951 Port emacsclient to Solaris 10
f35d6a9c73 * CONTRIBUTE: Improve commit message instructions
e0ee1d003a Work around IBM XL C compiler bug
6b99b6eb8b * admin/make-tarball.txt: Various clarifications.
bbf4140091 * admin/diff-tar-files: Don't assume .tar.gz.
0a50ad11db * lisp/tab-bar.el (tab-bar-close-other-tabs): Fix regression.

2 years agoPort to C compilers that lack size-0 arrays
Paul Eggert [Fri, 3 Dec 2021 03:01:33 +0000 (19:01 -0800)]
Port to C compilers that lack size-0 arrays

The C standard does not allow size-zero arrays, so redo struct
Lisp_Subr to not use size-zero arrays when native compilation is
not being used.  Formerly, the code was using size-zero arrays (a
GNU C extension) to avoid using memory unnecessarily when
HAVE_NATIVE_COMP is not defined.  Replace this hack with the
more-traditional hack of putting the relevant members inside
‘#ifdef HAVE_NATIVE_COMP’.
* src/alloc.c (cleanup_vector, mark_object):
* src/comp.c (make_subr):
* src/data.c (Fsubr_native_lambda_list, Fsubr_native_comp_unit):
* src/eval.c (init_eval_once, funcall_lambda):
* src/lisp.h (SUBR_NATIVE_COMPILEDP, SUBR_NATIVE_COMPILED_DYNP)
(SUBR_TYPE):
* src/lread.c (Fload):
Conditionally compile with ‘#ifdef HAVE_NATIVE_COMP’ instead of
with ‘if (NATIVE_COMP_FLAG)’.  Redo members like native_comp_u[0]
to be plain native_comp_u.  Put all uses of these members inside
‘#ifdef HAVE_NATIVE_COMP’.
* src/lisp.h (struct Lisp_Subr): Members native_comp_u,
native_c_name, lambda_list, type are now all ifdeffed out if
HAVE_NATIVE_COMP is not defined, instead of being size-zero
arrays.  All uses changed.
* src/pdumper.c (dump_subr, dump_cold_native_subr)
(dump_do_dump_relocation):
* src/comp.h (NATIVE_COMP_FLAG): Remove; no longer needed.

2 years agoPort emacsclient to Solaris 10
Paul Eggert [Fri, 3 Dec 2021 02:43:43 +0000 (18:43 -0800)]
Port emacsclient to Solaris 10

Without this patch, the build fails on Solaris 10 with the diagnostic
“Undefined symbol acl_trivial first referenced in file
../lib/libgnu.a(file-has-acl.o)”.
* lib-src/Makefile.in (LIB_HAS_ACL): New macro.
(emacsclient${EXEEXT}): Link with $(LIB_HAS_ACL).

2 years ago* CONTRIBUTE: Improve commit message instructions
Karl Fogel [Fri, 3 Dec 2021 02:38:25 +0000 (20:38 -0600)]
* CONTRIBUTE: Improve commit message instructions

2 years agoWork around IBM XL C compiler bug
Paul Eggert [Fri, 3 Dec 2021 02:18:39 +0000 (18:18 -0800)]
Work around IBM XL C compiler bug

* src/fileio.c (Fcopy_file): Work around a compiler bug in IBM XL
C for AIX, V12.1 (5765-J02, 5725-C72).  Without this patch, the
compiler incorrectly complains “Initialization between types "int"
and "struct timespec" is not allowed” and “Initialization between
types "long" and "struct timespec" is not allowed”.

2 years agoMake momentum scrolling much nicer
Po Lu [Fri, 3 Dec 2021 02:12:29 +0000 (10:12 +0800)]
Make momentum scrolling much nicer

* lisp/pixel-scroll.el (pixel-scroll-precision-momentum-tick):
Set default value to 0.01.
(pixel-scroll-precision-momentum-seconds): New user option.
(pixel-scroll-start-momentum): Improvements to momentum
algorithm.

2 years ago* lisp/pixel-scroll.el (pixel-scroll-start-momentum): Fix algorithm.
Po Lu [Fri, 3 Dec 2021 00:59:24 +0000 (08:59 +0800)]
* lisp/pixel-scroll.el (pixel-scroll-start-momentum): Fix algorithm.

2 years ago* admin/make-tarball.txt: Various clarifications.
Stefan Kangas [Thu, 2 Dec 2021 22:57:23 +0000 (23:57 +0100)]
* admin/make-tarball.txt: Various clarifications.

2 years ago* admin/diff-tar-files: Don't assume .tar.gz.
Stefan Kangas [Thu, 2 Dec 2021 22:51:35 +0000 (23:51 +0100)]
* admin/diff-tar-files: Don't assume .tar.gz.

2 years ago* etc/NEWS: Mention change in `insert-directory' derivates. Fix typos.
Michael Albinus [Thu, 2 Dec 2021 18:31:43 +0000 (19:31 +0100)]
* etc/NEWS: Mention change in `insert-directory' derivates.  Fix typos.

2 years ago* lisp/tab-bar.el (tab-bar-close-other-tabs): Fix regression.
Juri Linkov [Thu, 2 Dec 2021 18:12:05 +0000 (20:12 +0200)]
* lisp/tab-bar.el (tab-bar-close-other-tabs): Fix regression.

* test/lisp/tab-bar-tests.el: New file.
(tab-bar-tests-close-other-tabs-with-arg): Test for regression
that closed the selected tab after selecting it.

2 years ago; * src/xdisp.c (syms_of_xdisp) <align-columns-display>: Doc fix.
Eli Zaretskii [Thu, 2 Dec 2021 17:46:26 +0000 (19:46 +0200)]
; * src/xdisp.c (syms_of_xdisp) <align-columns-display>: Doc fix.

2 years agoSupport display of non-ASCII characters with aligned columns
Eli Zaretskii [Thu, 2 Dec 2021 17:44:46 +0000 (19:44 +0200)]
Support display of non-ASCII characters with aligned columns

* src/xdisp.c (get_normal_width): New function.
(gui_produce_glyphs): Use 'get_normal_width' to widen on display
characters whose width is not an integral multiple of the
"standard" width.
(syms_of_xdisp) <align-columns-display>: New boolean variable.

2 years agoupdate_autogen: Improve error handling slightly
Stefan Kangas [Thu, 2 Dec 2021 17:30:16 +0000 (18:30 +0100)]
update_autogen: Improve error handling slightly

* admin/update_autogen: Check exit status of cd.  Use single
quoting for trap condition.

2 years agoupdate_autogen: Remove unused -H flag
Stefan Kangas [Thu, 2 Dec 2021 17:17:14 +0000 (18:17 +0100)]
update_autogen: Remove unused -H flag

We now update ChangeLog files only when preparing a new release, so
this flag is never used.  Keeping it risks confusing more than it
helps.
* admin/update_autogen: Remove the -H flag as it is no longer used.

2 years ago; update_autogen: Remove -I flag handling completely
Stefan Kangas [Thu, 2 Dec 2021 17:15:41 +0000 (18:15 +0100)]
; update_autogen: Remove -I flag handling completely

* admin/update_autogen: Fix my previous commit to now completely
remove any trace of the -I flag.

2 years agoMerge from origin/emacs-28
Stefan Kangas [Thu, 2 Dec 2021 16:34:10 +0000 (17:34 +0100)]
Merge from origin/emacs-28

f38dfa56a0 ; Update loaddefs files.
b3d4b18507 ; make change-history-commit
334ff0232e * lisp/repeat.el: Use same logic for repeat-check-key and ...
8230a47ecc * lisp/help.el (help--analyze-key): Prefer posn-set-point ...

# Conflicts:
# lisp/ldefs-boot.el

2 years ago; Merge from origin/emacs-28
Stefan Kangas [Thu, 2 Dec 2021 16:34:10 +0000 (17:34 +0100)]
; Merge from origin/emacs-28

The following commit was skipped:

740ae2818f Bump Emacs version to 28.0.90

2 years agoMerge from origin/emacs-28
Stefan Kangas [Thu, 2 Dec 2021 16:34:10 +0000 (17:34 +0100)]
Merge from origin/emacs-28

aa1d7dd867 ; * etc/AUTHORS: Update.
6294e60205 ; * admin/authors.el (authors-aliases): More fixes.
40fc31ea28 ; * ChangeLog.3: Update.
2be090d5d3 ; * ChangeLog.3: Minor fixes.
9963b11bf7 ; * admin/authors.el (authors-aliases): Further updates.
50b40e1d4f ; * lisp/org/ob-julia.el: Fix Author header for authors.el.
84166ea2e6 CC Mode: Recognise "struct foo {" as introducing a type de...

2 years agoFix characters.el build issue
Lars Ingebrigtsen [Thu, 2 Dec 2021 16:33:00 +0000 (17:33 +0100)]
Fix characters.el build issue

* lisp/international/characters.el
(glyphless--bidi-control-characters): Don't use names here,
because it's too early (bug#52240).

2 years agoFix previous macroexp--warn-wrap change
Lars Ingebrigtsen [Thu, 2 Dec 2021 15:47:42 +0000 (16:47 +0100)]
Fix previous macroexp--warn-wrap change

* lisp/emacs-lisp/macroexp.el (macroexp--warn-wrap): Don't call
byte-compile-warning-enabled-p with zero parameters.

2 years ago* lisp/gnus/gnus-art.el (gnus--variable-pitch-p): Don't error out if face nil
Filipp Gunbin [Thu, 2 Dec 2021 13:15:32 +0000 (16:15 +0300)]
* lisp/gnus/gnus-art.el (gnus--variable-pitch-p): Don't error out if face nil

2 years agoMake `C-c C-w' copy the executable bits to the new file
Lars Ingebrigtsen [Thu, 2 Dec 2021 12:21:20 +0000 (13:21 +0100)]
Make `C-c C-w' copy the executable bits to the new file

* lisp/files.el (write-file): When visiting an executable file,
make the new file executable, too (bug#18915).

2 years agoAdd a new variable 'process-error-pause-time'
Lars Ingebrigtsen [Thu, 2 Dec 2021 11:53:59 +0000 (12:53 +0100)]
Add a new variable 'process-error-pause-time'

* doc/lispref/processes.texi (Asynchronous Processes): Document it.
* lisp/cus-start.el (standard): Customize.

* src/process.c (read_process_output_error_handler)
(exec_sentinel_error_handler): Use it.
(syms_of_process): New variable process-error-pause-time (bug#19457).

2 years agoImprove momentum scrolling algorithm
Po Lu [Thu, 2 Dec 2021 11:35:09 +0000 (19:35 +0800)]
Improve momentum scrolling algorithm

* lisp/pixel-scroll.el (pixel-scroll-precision-momentum-tick):
(pixel-scroll-precision-momentum-factor): New user options.

(pixel-scroll-kinetic-state, pixel-scroll-accumulate-velocity):
Set scroll momentum ring size to 10.

(pixel-scroll-start-momentum): Improve algorithm.

2 years agoFix display of free disk space in Dired
Eli Zaretskii [Thu, 2 Dec 2021 11:04:45 +0000 (13:04 +0200)]
Fix display of free disk space in Dired

* lisp/dired.el (dired--insert-disk-space): Fix 'first' display on
MS-Windows.
(dired-free-space): Clarify the meaning of 'first'.

2 years ago; * lisp/dired-x.el (dired-virtual): Doc fix. (Bug#20992)
Eli Zaretskii [Thu, 2 Dec 2021 10:43:51 +0000 (12:43 +0200)]
; * lisp/dired-x.el (dired-virtual): Doc fix.  (Bug#20992)

2 years ago; * lisp/international/characters.el: Fix a typo in last change.
Eli Zaretskii [Thu, 2 Dec 2021 10:34:37 +0000 (12:34 +0200)]
; * lisp/international/characters.el: Fix a typo in last change.

2 years agoFix recent changes related to 'glyphless-display-mode'
Eli Zaretskii [Thu, 2 Dec 2021 10:32:17 +0000 (12:32 +0200)]
Fix recent changes related to 'glyphless-display-mode'

* lisp/textmodes/glyphless-mode.el (glyphless-mode-types): Fix
spelling of "bidirectional".
* lisp/international/characters.el (char-acronym-table): Fix
acronyms for LRI and RLI: use their accepted shorthands.
(glyphless-char-display-control): Fix spelling of doc string.

* doc/lispref/display.texi (Glyphless Chars): Fix spelling and add
a cross-reference.

2 years agoMake dired-virtual doc string less confusing
Lars Ingebrigtsen [Thu, 2 Dec 2021 09:47:18 +0000 (10:47 +0100)]
Make dired-virtual doc string less confusing

* lisp/dired-x.el (dired-virtual): Make the doc string less
confusing (bug#20992).

2 years agoAdd `cl-constantly' function
Lars Ingebrigtsen [Thu, 2 Dec 2021 09:19:10 +0000 (10:19 +0100)]
Add `cl-constantly' function

* lisp/emacs-lisp/cl-lib.el (cl-constantly): Add Common Lisp
function missing (bug#21584).

2 years agoEnsure there are no duplicate separators when creating a context menu
Jim Porter [Thu, 2 Dec 2021 05:55:31 +0000 (21:55 -0800)]
Ensure there are no duplicate separators when creating a context menu

Previously, if there were three or more consecutive menu separators,
not all of them would be removed.

* lisp/mouse.el (context-menu-map): Ensure no duplicate separators
(bug#52237).

2 years agobrowse-url-button-regexp: Recognize gemini: links
Daniel Fleischer [Thu, 2 Dec 2021 08:11:21 +0000 (09:11 +0100)]
browse-url-button-regexp: Recognize gemini: links

Gemini is a relatively new text-based web protocol, similar to
gopher. There's the "elpher" package to browse gopher and gemini
pages. Adding it to the regexp will make Emacs be aware of gemini links,
e.g. in ERC.

* lisp/net/browse-url.el (browse-url-button-regexp): Add support
for the gemini: URL type.

2 years agoFix usage of deprecated syntax in some cedet tests
Michael Levine [Thu, 2 Dec 2021 08:06:19 +0000 (09:06 +0100)]
Fix usage of deprecated syntax in some cedet tests

* test/lisp/cedet/srecode/fields-tests.el
(srecode-field-utest-impl): Fix deprecated syntax.

2 years agoAdd a bidi-control target for `glyphless-char-display-control'
Lars Ingebrigtsen [Thu, 2 Dec 2021 07:31:37 +0000 (08:31 +0100)]
Add a bidi-control target for `glyphless-char-display-control'

* doc/lispref/display.texi (Glyphless Chars): Document bidi-control.

* lisp/international/characters.el (char-acronym-table): Add the
ISOLATE characters.
(update-glyphless-char-display): Implement bidi-control, and mark
all Cf characters we don't know about as UNK.
(glyphless--bidi-control-characters): New variable.
(glyphless-char-display-control): Add a new type -- bidi-control.

* lisp/textmodes/glyphless-mode.el (glyphless-mode-types): Add a
new type -- bidi-control.

2 years ago* lisp/cedet/semantic/bovine/c.el (semantic-tag-protection): Silence warning
Stefan Monnier [Thu, 2 Dec 2021 03:59:35 +0000 (22:59 -0500)]
* lisp/cedet/semantic/bovine/c.el (semantic-tag-protection): Silence warning

We used to get

    cedet/semantic/bovine/c.el:1462:25: Warning: value returned from
    (string= s "static") is unused

* lisp/cedet/semantic/bovine/c.el (semantic-tag-protection): Merge two
`when` into an `if` and set `prot` instead of throwing away a result.
Use `pcase` while we're at it.

2 years ago* lisp/emacs-lisp/macroexp.el: Improve last change
Stefan Monnier [Thu, 2 Dec 2021 03:51:39 +0000 (22:51 -0500)]
* lisp/emacs-lisp/macroexp.el: Improve last change

Don't burp when `byte-compile-warning-enabled-p` is not yet defined.
And use the call that we had already instead of adding a new one.

(macroexp--warn-wrap): Allow `category`
to be a list to pass to `byte-compile-warning-enabled-p`.
(macroexp-macroexpand): Simplify accordingly.

2 years agoAdd some primitive momentum-based precision scrolling
Po Lu [Thu, 2 Dec 2021 03:01:59 +0000 (11:01 +0800)]
Add some primitive momentum-based precision scrolling

The algorithm used to scroll the display kinetically is very
simple and needs improvement.  Someone should work on that
eventually.

* lisp/pixel-scroll.el (pixel-scroll-precision-use-momentum):
New user option.
(pixel-scroll-precision-mode-map): Add
`pixel-scroll-start-momentum'.
(pixel-scroll-kinetic-state):
(pixel-scroll-accumulate-velocity):
(pixel-scroll-calculate-velocity): New functions.
(pixel-scroll-start-momentum): New command.

* src/xterm.c (handle_one_xevent): Fix touch-end event
generation.

2 years agoAdd `touch-end' event type
Po Lu [Thu, 2 Dec 2021 02:27:24 +0000 (10:27 +0800)]
Add `touch-end' event type

* etc/NEWS:
* doc/lispref/commands.texi (Misc Events): Document new
`touch-end' event type.

* lisp/bindings.el: Ignore touch-end events by default.

* src/keyboard.c (make_lispy_event): Add support for
TOUCH_END_EVENT events.
(syms_of_keyboard): New symbol `touch-end'.

* src/termhooks.h (enum event_kind): New member
`TOUCH_END_EVENT'.

* src/xterm.c (handle_one_xevent): Send touch-end events when
appropriate.

2 years agoFix precision scrolling when there is a scroll margin
Po Lu [Thu, 2 Dec 2021 01:56:52 +0000 (09:56 +0800)]
Fix precision scrolling when there is a scroll margin

* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down)
(pixel-scroll-precision-scroll-up): Take scroll margin into
accout.

2 years agoGet rid of vmotion loop in `pixel-scroll-precision-scroll-up'
Po Lu [Thu, 2 Dec 2021 01:15:43 +0000 (09:15 +0800)]
Get rid of vmotion loop in `pixel-scroll-precision-scroll-up'

* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-up): Use
posn-at-x-y for cursor motion.

2 years agoChange how Dired displays available space
Lars Ingebrigtsen [Wed, 1 Dec 2021 22:27:09 +0000 (23:27 +0100)]
Change how Dired displays available space

* doc/emacs/dired.texi (Misc Dired Features): Document it (bug#23812).
* lisp/dired.el (dired-free-space): New user option.
(dired-insert-directory): Use it from here.
(dired--insert-disk-space): New function that uses the user option.

* lisp/files.el (insert-directory): Don't transform "total" here.
* lisp/ls-lisp.el (ls-lisp--insert-directory): Or here.  Instead
just leave the "total <num>" bit alone, and let Dired transform it.

* test/lisp/files-tests.el (files-tests): Move "available" tests
to dired-tests.
* test/lisp/dired-tests.el (data-dir): Moved here.

2 years agoFix "SEE ALSO" buttons in some man pages
Lars Ingebrigtsen [Wed, 1 Dec 2021 19:31:14 +0000 (20:31 +0100)]
Fix "SEE ALSO" buttons in some man pages

* lisp/man.el (Man-highlight-references0): Don't include "and" in
the links (bug#52229).

2 years agoMake use of `comp-cstr-shallow-copy'
Andrea Corallo [Wed, 1 Dec 2021 14:01:55 +0000 (15:01 +0100)]
Make use of `comp-cstr-shallow-copy'

* lisp/emacs-lisp/comp.el (comp-mvar-propagate): Remove.
(comp-fwprop-call, comp-fwprop-insn): Use `comp-cstr-shallow-copy'.

* lisp/emacs-lisp/comp-cstr.el (comp-cstr-set-cmp-range)
(comp-cstr-union-1-no-mem, comp-cstr-union-1)
(comp-cstr-intersection-no-mem, comp-cstr-intersection)
(comp-cstr-negation): Use `comp-cstr-shallow-copy'.

2 years ago* Redefine `comp-cstr-shallow-copy'
Andrea Corallo [Wed, 1 Dec 2021 13:39:33 +0000 (14:39 +0100)]
* Redefine `comp-cstr-shallow-copy'

* lisp/emacs-lisp/comp-cstr.el (comp-cstr): Don't synthesize copier
function.
(comp-cstr-shallow-copy): New function.
(comp-cstr-=): Use `copy-sequence'.

2 years ago* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Decl struct predicates as pure
Andrea Corallo [Wed, 1 Dec 2021 10:23:25 +0000 (11:23 +0100)]
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Decl struct predicates as pure

2 years ago; Update loaddefs files. emacs-28.0.90
Stefan Kangas [Wed, 1 Dec 2021 20:11:38 +0000 (21:11 +0100)]
; Update loaddefs files.

2 years agoMake `C-x C-d' require either an existing directory or a wildcard
Lars Ingebrigtsen [Wed, 1 Dec 2021 19:16:29 +0000 (20:16 +0100)]
Make `C-x C-d' require either an existing directory or a wildcard

* lisp/files.el (list-directory): Require either an existing
directory or a wildcard (bug#25807).

2 years ago; make change-history-commit
Stefan Kangas [Wed, 1 Dec 2021 19:15:20 +0000 (20:15 +0100)]
; make change-history-commit

2 years ago* lisp/emacs-lisp/cconv.el (cconv--lifted-arg): Simplify
Stefan Monnier [Wed, 1 Dec 2021 19:05:09 +0000 (14:05 -0500)]
* lisp/emacs-lisp/cconv.el (cconv--lifted-arg): Simplify

2 years agoFix table-fixed-width-mode when typing fast
Lars Ingebrigtsen [Wed, 1 Dec 2021 18:49:07 +0000 (19:49 +0100)]
Fix table-fixed-width-mode when typing fast

* lisp/textmodes/table.el (table-with-cache-buffer): Use the value
of table-fixed-width-mode in the correct buffer (bug#26701).

2 years agoMention 'glyphless-display-mode' in conjunction with bidi display
Eli Zaretskii [Wed, 1 Dec 2021 18:11:21 +0000 (20:11 +0200)]
Mention 'glyphless-display-mode' in conjunction with bidi display

* doc/emacs/mule.texi (Bidirectional Editing): Mention
'glyphless-display-mode'.  (Bug#27544)

2 years ago* lisp/repeat.el: Use same logic for repeat-check-key and repeat-exit-timeout.
Juri Linkov [Wed, 1 Dec 2021 17:41:37 +0000 (19:41 +0200)]
* lisp/repeat.el: Use same logic for repeat-check-key and repeat-exit-timeout.

* lisp/repeat.el (repeat-check-key): Use for repeat-check-key the same logic
as is used for repeat-exit-timeout in repeat-post-hook (bug#51390).
(repeat-post-hook): Check for repeat-exit-timeout symbol property.

2 years ago* lisp/help.el (help--analyze-key): Prefer posn-set-point over mouse-set-point
Juri Linkov [Wed, 1 Dec 2021 17:36:00 +0000 (19:36 +0200)]
* lisp/help.el (help--analyze-key): Prefer posn-set-point over mouse-set-point

* lisp/help.el (help--analyze-key): Use posn-set-point instead of
mouse-set-point that runs the hook mouse-leave-buffer-hook via
mouse-minibuffer-check.  Using posn-set-point also unnecessitates
extra conditions added in bug#51421.

* lisp/isearch.el (isearch-describe-key, isearch-describe-mode):
Add precautions to not call isearch-update when the executed
command exited isearch-mode (bug#51173).

2 years agoBump Emacs version to 28.0.90
Stefan Kangas [Wed, 1 Dec 2021 16:42:52 +0000 (17:42 +0100)]
Bump Emacs version to 28.0.90

* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version to 28.0.90.

2 years ago; * etc/AUTHORS: Update.
Stefan Kangas [Wed, 1 Dec 2021 16:38:49 +0000 (17:38 +0100)]
; * etc/AUTHORS: Update.

2 years ago; * admin/authors.el (authors-aliases): More fixes.
Stefan Kangas [Wed, 1 Dec 2021 16:14:04 +0000 (17:14 +0100)]
; * admin/authors.el (authors-aliases): More fixes.

2 years agoFix fencepost error in pixel-fill--fill-line
Lars Ingebrigtsen [Wed, 1 Dec 2021 16:33:34 +0000 (17:33 +0100)]
Fix fencepost error in pixel-fill--fill-line

* lisp/textmodes/pixel-fill.el (pixel-fill--fill-line): Don't add
a newline (and continuation) if we're at the end of the line.

2 years agocharacters.el: remove repetition in glyphless-char-display-control
Robert Pluim [Wed, 1 Dec 2021 16:11:07 +0000 (17:11 +0100)]
characters.el: remove repetition in glyphless-char-display-control

* lisp/international/characters.el (glyphless-char-display-method):
New custom widget for the different options for displaying glyphless
characters.
(glyphless-char-display-control): Use 'glyphless-char-display-method'.

2 years agoAdd new face `variable-pitch-text'
Lars Ingebrigtsen [Wed, 1 Dec 2021 16:20:11 +0000 (17:20 +0100)]
Add new face `variable-pitch-text'

* doc/emacs/display.texi (Standard Faces): Mention in.

* lisp/faces.el (variable-pitch-text): New face.

* lisp/gnus/gnus-art.el (gnus-header): Use it.

* lisp/net/shr.el (shr-text): Use it.

2 years ago; * ChangeLog.3: Update.
Stefan Kangas [Wed, 1 Dec 2021 16:05:48 +0000 (17:05 +0100)]
; * ChangeLog.3: Update.

2 years ago; * ChangeLog.3: Minor fixes.
Stefan Kangas [Wed, 1 Dec 2021 15:01:23 +0000 (16:01 +0100)]
; * ChangeLog.3: Minor fixes.

2 years ago; * admin/authors.el (authors-aliases): Further updates.
Stefan Kangas [Wed, 1 Dec 2021 15:56:59 +0000 (16:56 +0100)]
; * admin/authors.el (authors-aliases): Further updates.

2 years ago; * lisp/org/ob-julia.el: Fix Author header for authors.el.
Stefan Kangas [Wed, 1 Dec 2021 15:21:34 +0000 (16:21 +0100)]
; * lisp/org/ob-julia.el: Fix Author header for authors.el.

2 years agoFix closure-conversion of shadowed captured lambda-lifted vars
Mattias Engdegård [Mon, 22 Nov 2021 15:56:38 +0000 (16:56 +0100)]
Fix closure-conversion of shadowed captured lambda-lifted vars

Lambda-lifted variables (ones passed explicitly to lambda-lifted
functions) that are also captured in an outer closure and shadowed
were renamed incorrectly (bug#51982).

Reported by Paul Pogonyshev.

* lisp/emacs-lisp/cconv.el (cconv--lifted-arg): New.
(cconv-convert): Provide correct definiens for the closed-over
variable.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
* test/lisp/emacs-lisp/cconv-tests.el (cconv-tests--intern-all)
(cconv-closure-convert-remap-var): Add tests.

2 years agoAdd a new minor mode `glyphless-display-mode'
Lars Ingebrigtsen [Wed, 1 Dec 2021 15:53:00 +0000 (16:53 +0100)]
Add a new minor mode `glyphless-display-mode'

* doc/emacs/display.texi (Text Display): Mention it.

* doc/lispref/display.texi (Glyphless Chars): Document it.
* lisp/textmodes/glyphless-mode.el: New minor mode (bug#27544).

2 years agoFix update-glyphless-char-display variable setting
Lars Ingebrigtsen [Wed, 1 Dec 2021 15:48:06 +0000 (16:48 +0100)]
Fix update-glyphless-char-display variable setting

* lisp/international/characters.el
(update-glyphless-char-display): Only set the variable if given.

2 years agoCC Mode: Recognise "struct foo {" as introducing a type declaration
Alan Mackenzie [Wed, 1 Dec 2021 15:41:09 +0000 (15:41 +0000)]
CC Mode: Recognise "struct foo {" as introducing a type declaration

This fixes bug #52157.

* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): If such a construct
is parsed, set the flag at-type-decl which is part of the function's return
value.

2 years agoMake pixel-fill-region handle space regions better
Lars Ingebrigtsen [Wed, 1 Dec 2021 14:03:16 +0000 (15:03 +0100)]
Make pixel-fill-region handle space regions better

* lisp/textmodes/pixel-fill.el (pixel-fill-region): Preserve the
face on the replacement spaces.

2 years ago; * src/w32term.c (w32_construct_mouse_wheel): Fix a typo.
Eli Zaretskii [Wed, 1 Dec 2021 13:57:59 +0000 (15:57 +0200)]
; * src/w32term.c (w32_construct_mouse_wheel): Fix a typo.

2 years agoFix precision pixel scrolling for a recent change
Po Lu [Wed, 1 Dec 2021 13:54:10 +0000 (21:54 +0800)]
Fix precision pixel scrolling for a recent change

* lisp/pixel-scroll.el (pixel-scroll-precision-mode-map): Use
`mwheel-coalesce-scroll-events' instead.

2 years agoEnable gnus-treat-fold-headers by default
Lars Ingebrigtsen [Wed, 1 Dec 2021 13:10:19 +0000 (14:10 +0100)]
Enable gnus-treat-fold-headers by default

* lisp/gnus/gnus-art.el (gnus-treat-fold-headers): Change default
to `head'.

2 years agoUse proportional fonts in the Gnus headers by default
Lars Ingebrigtsen [Wed, 1 Dec 2021 05:30:32 +0000 (06:30 +0100)]
Use proportional fonts in the Gnus headers by default

* lisp/gnus/gnus-art.el (gnus-header): Inherit from `variable-pitch'.
(gnus--variable-pitch-p): New helper function.
(gnus-article-treat-fold-headers): Fill using pixel filling.

2 years agoPreserve newlines at the end of pixel-fill-region
Lars Ingebrigtsen [Wed, 1 Dec 2021 05:18:12 +0000 (06:18 +0100)]
Preserve newlines at the end of pixel-fill-region

* lisp/textmodes/pixel-fill.el (pixel-fill-region): Preserve
newlines at the end.

2 years agoSupport precision mouse scrolling on MS-Windows
Eli Zaretskii [Wed, 1 Dec 2021 13:36:55 +0000 (15:36 +0200)]
Support precision mouse scrolling on MS-Windows

* src/w32fns.c (w32_wnd_proc): Pass the WM_SETTINGCHANGE message
to the Lisp thread.
* src/w32term.c (w32_construct_mouse_wheel): Support mice with
precision scrolling wheel.
(w32_get_mouse_wheel_vertical_delta): New function.
(w32_read_socket): When the WM_SETTINGCHANGE is received, call
'w32_get_mouse_wheel_vertical_delta'.
(w32_initialize): Call 'w32_get_mouse_wheel_vertical_delta' at
startup.
* src/nsterm.m (syms_of_nsterm):
* src/haikuterm.c (syms_of_haikuterm):
* src/xterm.c (syms_of_xterm): Remove window-system specific
variables for coalescing mwheel events.
* src/keyboard.c (syms_of_keyboard)
<mwheel-coalesce-scroll-events>: New variable, to replace the
above platform-specific ones.

* doc/lispref/commands.texi (Misc Events): Improve wording of the
description of mouse-wheel events.

2 years agoupdate_autogen: Remove deprecated -I flag
Stefan Kangas [Wed, 1 Dec 2021 10:23:29 +0000 (11:23 +0100)]
update_autogen: Remove deprecated -I flag

* admin/update_autogen (info_dir): Remove deprecated -I flag; it is no
longer used since info/dir is now generated at install time if needed,
and is not in the repository any more.

2 years ago; Merge from origin/emacs-28
Stefan Kangas [Wed, 1 Dec 2021 05:30:23 +0000 (06:30 +0100)]
; Merge from origin/emacs-28

The following commit was skipped:

bc6bcb8f0b ; Auto-commit of loaddefs files.

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

e632b83a28 Update authors.el for Emacs 28
e9fdb11903 ; * ChangeLog.3: Some additional fixes.
8fa4749df1 ; * ChangeLog.3: Filename fixes.
ea5a90b4f4 * lisp/repeat.el: Fix long-standing problem when a random ...
ef4954b69c * lisp/repeat.el (repeat-keep-prefix): Change default to nil.
6d5886e780 * test/lisp/repeat-tests.el (repeat-tests-call-b): Test fo...
9e16c6a96d ; * src/comp.c (syms_of_comp) <comp-no-native-file-h>: Doc...
9aa8fd6e62 * src/callint.c (Fcall_interactively): Fix inhibit_mouse_e...
70c229b1fc Fix regression in gdb-frame-handler
cd9dd26d24 Format and index concept 'predicate' in ELisp Intro
ab291656d0 ; * ChangeLog.3: Fix typos.
354f6c5609 ; * ChangeLog.3: Formatting fixes.
6192525a96 ; make change-history-commit

2 years agoUpdate SKK-JISYO.L from upstream
Stefan Kangas [Wed, 1 Dec 2021 05:01:07 +0000 (06:01 +0100)]
Update SKK-JISYO.L from upstream

* leim/SKK-DIC/SKK-JISYO.L: Update from
https://raw.githubusercontent.com/skk-dev/dict/master/SKK-JISYO.L

2 years agoUpdate publicsuffix.txt from upstream
Stefan Kangas [Wed, 1 Dec 2021 05:01:05 +0000 (06:01 +0100)]
Update publicsuffix.txt from upstream

* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2021-11-26 23:07:15 UTC.

2 years agoSuppress emacsclient message that daemon should have started if --quiet
Jim Porter [Wed, 1 Dec 2021 04:56:55 +0000 (05:56 +0100)]
Suppress emacsclient message that daemon should have started if --quiet

* lib-src/emacsclient.c (start_daemon_and_retry_set_socket): Don't
output "daemon should have started" message if --quiet (bug#52214).

2 years agoMake date-to-time work with date-only date strings
Bob Rogers [Wed, 1 Dec 2021 04:14:26 +0000 (05:14 +0100)]
Make date-to-time work with date-only date strings

* lisp/calendar/time-date.el (date-to-time): Try harder to parse
dates with no times (bug#52209).