]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoFix keymap-lookup implementation
Lars Ingebrigtsen [Sat, 4 Dec 2021 04:24:54 +0000 (05:24 +0100)]
Fix keymap-lookup implementation

* lisp/keymap.el (keymap-lookup): Make this actually work for
looking up keys.

3 years agoFix highlighting of "Exit*" phrases in f90-mode
Lars Ingebrigtsen [Sat, 4 Dec 2021 04:07:41 +0000 (05:07 +0100)]
Fix highlighting of "Exit*" phrases in f90-mode

* lisp/progmodes/f90.el (f90-font-lock-keywords-2): Don't
highlight phrases that start with "Exit" as an exit statement
(bug#14442).

3 years agoMake `mouse-1' restart the cua-rect rectangle
Lars Ingebrigtsen [Sat, 4 Dec 2021 03:06:27 +0000 (04:06 +0100)]
Make `mouse-1' restart the cua-rect rectangle

* lisp/emulation/cua-rect.el (cua-mouse-set-rectangle-mark):
Restart the rectangle on mouse-1 (bug#51557).

3 years agoMake last change work for deltas that are multiples of max-height
Po Lu [Sat, 4 Dec 2021 01:43:44 +0000 (09:43 +0800)]
Make last change work for deltas that are multiples of max-height

* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down-page)
(pixel-scroll-precision-scroll-up-page): Use `max-height' that
is slightly less than the text height of the window.

3 years agoMake it work to pixel scroll by deltas larger than the window
Po Lu [Sat, 4 Dec 2021 01:09:28 +0000 (09:09 +0800)]
Make it work to pixel scroll by deltas larger than the window

* lisp/pixel-scroll.el
(pixel-scroll-precision-scroll-down-page):
(pixel-scroll-precision-scroll-up-page): New functions.

(pixel-scroll-precision-scroll-up)
(pixel-scroll-precision-scroll-down): Make it safe to scroll
by deltas larger than the current window.

3 years agoEnsure that MAIN_FIRST have finished compilation before doing the rest
Lars Ingebrigtsen [Fri, 3 Dec 2021 21:21:41 +0000 (22:21 +0100)]
Ensure that MAIN_FIRST have finished compilation before doing the rest

* lisp/Makefile.in (main-first): Ensure that we're done with the
main bits before starting on the rest.
(GREP_OPTIONS): Depend on main-first.
(MAIN_FIRST): Compile cconv.el before c-by.el (bug#8764).

3 years agoPort to Tiny C on x86-64
Paul Eggert [Fri, 3 Dec 2021 21:05:31 +0000 (13:05 -0800)]
Port to Tiny C on x86-64

This allows Emacs to build on Ubuntu 21.10 x86-64 with
‘./configure --without-modules CC=tcc’.
* configure.ac (GC_SETJMP_WORKS):
Accept __x86_64__ as an alias for __amd64__.
* src/lisp.h (alignas): Provide a no-op substitute.

3 years agoRevert "emacs-lisp-mode: Use error face for "/d" indicator"
Eli Zaretskii [Fri, 3 Dec 2021 19:55:10 +0000 (21:55 +0200)]
Revert "emacs-lisp-mode: Use error face for "/d" indicator"

This reverts commit ddc875d9f75bdd1d5dda6a721489f43317b0f8b5.

I disagree with the need to make it more prominent than the
warning face.  The warning face is prominent enough.  We
never decided to annoy people like that.

3 years agoAdd more dired-x tests
Eli Zaretskii [Fri, 3 Dec 2021 19:52:49 +0000 (21:52 +0200)]
Add more dired-x tests

* test/lisp/dired-x-tests.el (dired-x--string-to-number): Add more
tests with various thousands separators.

3 years ago; * etc/NEWS: Move incompatible changes into a separate section.
Eli Zaretskii [Fri, 3 Dec 2021 19:44:26 +0000 (21:44 +0200)]
; * etc/NEWS: Move incompatible changes into a separate section.

3 years agoRemove some more items obsolete since Emacs 23
Stefan Kangas [Fri, 3 Dec 2021 18:53:46 +0000 (19:53 +0100)]
Remove some more items obsolete since Emacs 23

* lisp/emacs-lisp/shadow.el (find-emacs-lisp-shadows):
* lisp/net/newst-backend.el (newsticker-cache-filename)
(newsticker--cache-save-version1, newsticker--cache-update)
(newsticker--cache-read-version1):
* lisp/obsolete/vc-arch.el (vc-arch-command): Remove items
obsolete since Emacs 23.

3 years agoRemove two functions obsolete since Emacs 23
Stefan Kangas [Fri, 3 Dec 2021 18:25:59 +0000 (19:25 +0100)]
Remove two functions obsolete since Emacs 23

* lisp/international/mule-cmds.el (unify-8859-on-encoding-mode)
(unify-8859-on-decoding-mode): Remove functions obsolete since
Emacs 23.
* lisp/nxml/xsd-regexp.el: Doc fix.

3 years agoPrefer rsvg_handle_get_intrinsic_size_in_pixels
Paul Eggert [Fri, 3 Dec 2021 17:47:22 +0000 (09:47 -0800)]
Prefer rsvg_handle_get_intrinsic_size_in_pixels

Use rsvg_handle_get_intrinsic_size_in_pixels if available,
as this is simpler and better than what we were doing.
From a comment by by Alan Third (Bug#44655#56).
* src/image.c (init_svg_functions): Arrange for the new function.
(svg_load_image): Prefer the results of
rsvg_handle_get_intrinsic_size_in_pixels if available.

3 years agoImprove overflow checking in svg_load_image
Paul Eggert [Fri, 3 Dec 2021 17:47:22 +0000 (09:47 -0800)]
Improve overflow checking in svg_load_image

* src/image.c: Include math.h, for lrint.
(scale_image_size, compute_image_size): Use ‘double’, not ‘int’
for image size args, since librsvg uses ‘double’ for pixel counts.
(scale_image_size): Use ceil instead of rounding, to avoid
discarding fractional SVG pixels.  Divisor and multiplier are now
double instead of int, for better portability to librsvg
functions with fractional pixel sizes.
(image_get_dimension, compute_image_size, svg_load_image):
Be more careful about ignoring, rejecting or clipping scale
factors or sizes that are out of integer range.
(compute_image_size): Don’t bother to calculate :max-width if
:width is specified, and likewise for :max-height and :height.

3 years agoSimplify svg_load_image
Paul Eggert [Fri, 3 Dec 2021 17:47:22 +0000 (09:47 -0800)]
Simplify svg_load_image

* src/image.c (svg_load_image): Simplify slightly.

3 years agoMore-robust svg_load_image fallback
Paul Eggert [Fri, 3 Dec 2021 17:47:22 +0000 (09:47 -0800)]
More-robust svg_load_image fallback

Suggested by Alan Third (Bug#44655#56).
* src/image.c (svg_load_image): Fall back on
rsvg_handle_get_geometry_for_layer if the
rsvg_handle_get_intrinsic_dimensions computations yielded unusable
viewbox width and height, instead of falling back only if
rsvg_handle_get_intrinsic_dimensions did not report image width
and height, or did not report a viewbox.

3 years agoUse gnus-message instead of plain message in gnus-search
Eric Abrahamsen [Fri, 3 Dec 2021 17:19:31 +0000 (09:19 -0800)]
Use gnus-message instead of plain message in gnus-search

bug#51778

* lisp/gnus/gnus-search.el: All messaging should be done via
`gnus-message'.

3 years agoAdd a docstring to `iso-transl-set-language'
Tor Kringeland [Fri, 3 Dec 2021 17:09:07 +0000 (18:09 +0100)]
Add a docstring to `iso-transl-set-language'

* lisp/international/iso-transl.el: Document
`iso-transl-set-language' (bug#52261).
Copyright-paperwork-exempt: yes

3 years agoMove 'C-x 8 .' to 'C-x 8 . .'
Lars Ingebrigtsen [Fri, 3 Dec 2021 16:43:02 +0000 (17:43 +0100)]
Move 'C-x 8 .' to 'C-x 8 . .'

* lisp/international/iso-transl.el (iso-transl-char-map): Move
'C-x 8 .' to 'C-x 8 . .' and add ż.

3 years agoAdd support for some Polish characters with `C-x 8'
Tor Kringeland [Fri, 3 Dec 2021 16:40:14 +0000 (17:40 +0100)]
Add support for some Polish characters with `C-x 8'

* lisp/international/iso-transl.el: Add support for some Polish
characters (bug#52173).
Copyright-paperwork-exempt: yes

3 years agoFix regression introduced by the previous date-to-time change
Katsumi Yamaoka [Fri, 3 Dec 2021 16:28:48 +0000 (17:28 +0100)]
Fix regression introduced by the previous date-to-time change

* lisp/calendar/time-date.el (date-to-time): The function needs to
test if `parse-time-string' returns a valid data as the old
version did it with the help of `encode-time' (bug#52209).

3 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.

3 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).

3 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).

3 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).

3 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.

3 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.

3 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'

3 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.

3 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.

3 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.

3 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.

3 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

3 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

3 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

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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).

3 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

3 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”.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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

3 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

3 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...

3 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).

3 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.

3 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

3 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).

3 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).

3 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.

3 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'.

3 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)

3 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.

3 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.

3 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).

3 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).

3 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).

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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).

3 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'.

3 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'.

3 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

3 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.

3 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).

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

3 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

3 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).

3 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)

3 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.

3 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).

3 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.

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

3 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.

3 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.

3 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'.

3 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.

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