Commit graph

152185 commits

Author SHA1 Message Date
Lars Ingebrigtsen
5fb9a033f8 Allow inhibiting warnings about obsolete macros again
* lisp/emacs-lisp/macroexp.el (macroexp-macroexpand): Inhibit
warning if requested (bug#50984).
2021-11-30 14:38:15 +01:00
Po Lu
5cab2684c0 * src/nsterm.m (Vns_scroll_event_delta_factor): Fix doc string. 2021-11-30 21:10:36 +08:00
Po Lu
55151f94ea Fix pixel scrolling again
* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down): Fix
confusion about absolutivity of `window-edges'.
2021-11-30 20:49:59 +08:00
Po Lu
6c17cdc1dc Fix 1-off errors in pixel scrolling code
* lisp/pixel-scroll.el (pixel-scroll-precision-scroll-down): Fix
one-off errors.
2021-11-30 20:44:54 +08:00
Po Lu
b79d779ae8 Improve upwards pixel scrolling for large images
This fixes most of the problem, but with a large image the
vscroll can sometimes jump about, which has to be fixed.

* lisp/pixel-scroll.el (pixel-scroll-precision-up): Handle
vscrolling large images in the first unseen line.
2021-11-30 20:36:43 +08:00
Mattias Engdegård
68c09c6b74 Better CPS conversion of multi-binding let
* lisp/emacs-lisp/generator.el (cps--transform-1):
Don't translate single-binding `let` into `let*` with an extra
temporary variable; it just adds two more useless states.
2021-11-30 13:03:49 +01:00
Po Lu
f633116c09 * lisp/pixel-scroll.el (pixel-scroll-precision): Handle zero delta. 2021-11-30 19:28:04 +08:00
Stefan Kangas
4e2fa4c34b Merge from origin/emacs-28
30553d889d Merge branch 'emacs-28' of git.savannah.gnu.org:/srv/git/e...
ecf3bf66ba Remove problematic characters from modus-themes.org (bug#5...
de9d27f679 Avoid undefined behaviour when copying part of structure

# Conflicts:
#	doc/misc/modus-themes.org
2021-11-30 07:38:52 +01:00
Stefan Kangas
0c9f98f761 ; Merge from origin/emacs-28
The following commit was skipped:

de9d27f679 Avoid undefined behaviour when copying part of structure
2021-11-30 07:35:37 +01:00
Po Lu
3cba568886 Fix annoying bell rings when pixel scrolling to buffer limits
* lisp/pixel-scroll.el (pixel-scroll-precision): Don't ding at
buffer limits.
2021-11-30 14:05:18 +08:00
Po Lu
f3bb2b80b4 Add `ns-scroll-event-delta-factor'
* src/nsterm.m (- mouseDown): Take delta factor into account.
(Vns_scroll_event_delta_factor): New variable.

* lisp/cus-start.el: Add option.
2021-11-30 13:41:16 +08:00
Po Lu
a59deef359 Allow non-float values in x-scroll-event-delta-factor
* src/xterm.c (handle_one_xevent): Use XFLOATINT instead of
XFLOAT_DATA.
2021-11-30 09:46:25 +08:00
Lars Ingebrigtsen
72b7fccc15 Add new package pixel-fill.el
* lisp/net/shr.el (shr-char-breakable-p, shr-char-nospace-p)
(shr-char-kinsoku-bol-p, shr-char-kinsoku-eol-p)
(shr-find-fill-point): Moved to pixel-fill.el and renamed.
(shr-pixel-region): Made obsolete.
(shr-fill-line): Use pixel-fill-region.

* lisp/textmodes/pixel-fill.el: New package.
2021-11-30 02:07:22 +01:00
Lars Ingebrigtsen
804c69dafd Audit the Emacs manual for keymap-*-related changes
* doc/emacs/programs.texi (Other C Commands):
* doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
* doc/emacs/custom.texi (Init Examples):
* doc/emacs/abbrevs.texi (Editing Abbrevs): Change some examples
to use keymap-* functions.
2021-11-30 00:14:51 +01:00
Lars Ingebrigtsen
1bd7b5dd51 Fix some of the argument handling in keymap-set and keymap-substitute
* lisp/keymap.el (keymap-set): Fix handling of binding one key to
another key.
(keymap-substitute): Fix confusion in implementation -- the args
are definitions, not keys.
2021-11-30 00:13:47 +01:00
Lars Ingebrigtsen
1efc14561d Edit the lispref manual for define-key/keymap-set fallout
* doc/lispref/variables.texi (Tips for Defining):
* doc/lispref/text.texi (Clickable Text):
* doc/lispref/modes.texi (Derived Modes):
(Example Major Modes):
* doc/lispref/loading.texi (Autoload):
(Hooks for Loading):
* doc/lispref/keymaps.texi (Creating Keymaps):
(Inheritance and Keymaps):
(Controlling Active Maps):
(Changing Key Bindings):
(Low-Level Key Binding):
(Remapping Commands):
(Translation Keymaps):
(Key Binding Commands):
* doc/lispref/help.texi (Help Functions):
* doc/lispref/display.texi (Abstract Display Example):
* doc/lispref/commands.texi (Interactive Codes):
(Keyboard Events):
(Misc Events):
(Classifying Events):
(Strings of Events): Prefer `keymap-set' instead of `define-key'
most places, and use `defvar-keymap' in some of the examples.
2021-11-29 23:55:00 +01:00
Alan Third
50379fb78d Fix build on macOS
* src/nsterm.h (NSPasteboardTypeMultipleTextSelection):
(NSPasteboardTypePNG): These are already defined on macOS 10.6 and
above and aren't used at all in GNUstep.
2021-11-29 22:11:04 +00:00
Alan Third
67676bb5a0 Fix NS port text decorations (bug#52156)
* src/nsterm.m (ns_draw_text_decoration): Set the correct colors for
decorations other than underline.
(ns_draw_glyph_string): Remove superfluous color setting call.
2021-11-29 21:58:42 +00:00
Lars Ingebrigtsen
0c1c6f0ba7 Regenerate ldefs-boot.el 2021-11-29 22:40:38 +01:00
Lars Ingebrigtsen
c623746241 Fix up generation of help text for ldefs-boot.el
* lisp/emacs-lisp/autoload.el (autoload-rubric): Don't put the
help text into cedet/*/loaddefs.el (bug#51744).
2021-11-29 22:39:57 +01:00
Michael Albinus
708ffac5ea * test/infra/gitlab-ci.yml (.job-template): Modify find scripts. 2021-11-29 21:36:51 +01:00
Eli Zaretskii
30553d889d Merge branch 'emacs-28' of git.savannah.gnu.org:/srv/git/emacs into emacs-28 2021-11-29 22:30:37 +02:00
Protesilaos Stavrou
030a5c5704
Remove problematic characters from modus-themes.org (bug#52126)
* doc/misc/modus-themes.org
(Enable and load, Font configurations for Org and others)
(Note on highlight-parentheses.el, Note on god-mode.el): Update links to
headings so that they no longer include the removed portions of text.

(Option for color-coding success state, Option for line highlighting)
(Option for line numbers, Option for parenthesis matching)
(Advanced customization, Per-theme customization settings)
(Case-by-case face specs using the themes' palette)
(Face specs at scale using the themes' palette)
(Remap face with local value, Cycle through arbitrary colors)
(Override colors, Override color saturation)
(Font configurations for Org and others, Configure bold and italic faces)
(Custom Org user faces, Update Org block delimiter fontification)
(Measure color contrast, Load theme depending on time of day)
(Backdrop for pdf-tools, Decrease mode line height)
(A theme-agnostic hook for theme loading, Note on EWW and Elfeed fonts)
(Frequently Asked Questions): Remove parentheses from headings as they
can cause problems in the .texi version of the file.
2021-11-29 21:18:28 +02:00
Protesilaos Stavrou
ecf3bf66ba
Remove problematic characters from modus-themes.org (bug#52126)
* doc/misc/modus-themes.org
(Enable and load, Font configurations for Org and others)
(Note on highlight-parentheses.el, Note on god-mode.el): Update links to
headings so that they no longer include the removed portions of text.

(Option for color-coding success state, Option for line highlighting)
(Option for line numbers, Option for parenthesis matching)
(Advanced customization, Per-theme customization settings)
(Case-by-case face specs using the themes' palette)
(Face specs at scale using the themes' palette)
(Remap face with local value, Cycle through arbitrary colors)
(Override colors, Override color saturation)
(Font configurations for Org and others, Configure bold and italic faces)
(Custom Org user faces, Update Org block delimiter fontification)
(Measure color contrast, Load theme depending on time of day)
(Backdrop for pdf-tools)
(A theme-agnostic hook for theme loading, Note on EWW and Elfeed fonts)
(Frequently Asked Questions): Remove parentheses from headings as they
can cause problems in the .texi version of the file.
2021-11-29 21:13:55 +02:00
Lars Ingebrigtsen
c2c9e7e3cb Don't return whitespace for thing-at-point in whitespace-only buffers
* lisp/thingatpt.el (bounds-of-thing-at-point): If the buffer is
empty, return nil for most things (bug#52098).
2021-11-29 17:18:49 +01:00
Lars Ingebrigtsen
73cf27aa45 Make Re: recognition in ispell-message less ambiguous
* lisp/textmodes/ispell.el (ispell-message): Require a "Re" as a
word, not as a word ending (bug#52104).
2021-11-29 17:08:11 +01:00
Brahimi Saifullah
f0eba4ea5e Make `group' widgets prettier in Customize
* lisp/wid-edit.el (group): Make the ":" invisible so that the
buffer looks prettier (bug#52143).

Copyright-paperwork-exempt: yes
2021-11-29 16:52:26 +01:00
Matthias Meulien
0d2f184a11 project-kill-buffers can display list of buffers to kill
* lisp/progmodes/project.el
(project-kill-buffers-display-buffer-list): Option to toggle
temporarily display of the list of buffers to kill when calling
project-kill-buffers
(project-kill-buffers): Handle
project-kill-buffers-display-buffer-list option (bug#52148).
2021-11-29 16:42:02 +01:00
Lars Ingebrigtsen
4de13ef147 Signal a better error in tabulated-list-sort
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort): Signal
error earlier on invalid column numbers (bug#52154).
2021-11-29 16:39:02 +01:00
Daniel Martín
e3351f6152 Use mupdf in doc-view-mode if gs is not installed
* lisp/doc-view.el (doc-view-mode-p): Use mupdf to render PDF and
related formats if gs is not installed (bug#52170).
2021-11-29 15:48:03 +01:00
Ikumi Keita
247ed6ccbc Make fill-region-as-paragraph clear the markers it creates
* lisp/textmodes/fill.el (fill-region-as-paragraph): Clear
temporary markers (bug#52175).

Copyright-paperwork-exempt: yes
2021-11-29 15:40:19 +01:00
Gregory Heytings
49422d2e69 Do not buttonize key bindings outside of *Help* buffers
* etc/NEWS: Mention the new variable.

* lisp/apropos.el (apropos-describe-plist): Bind the new
variable (bug#52053).
* lisp/button.el (button-describe): Bind the new variable.

* lisp/help-fns.el (describe-function, describe-variable)
(describe-face, describe-symbol, describe-syntax)
(describe-categories, describe-keymap, describe-mode)
(describe-widget): Bind the new variable.

* lisp/help-macro.el (make-help-screen): Bind the new variable.

* lisp/help.el (help-buffer-under-preparation): New variable
that is bound to t by commands that create a *Help* buffer.
(substitute-command-keys): Use the new variable:
help-link-key-to-documentation is supposed to have an effect
only "in *Help* buffers". Fixes bug#52053.
(view-lossage, describe-bindings, describe-key): Bind the new
variable.

* lisp/repeat.el (describe-repeat-maps): Bind the new variable.

* lisp/international/mule-cmds.el (describe-input-method)
(describe-language-environment): Bind the new variable.

* lisp/international/mule-diag.el (describe-character-set)
(describe-coding-system, describe-font, describe-fontset)
((list-fontsets): Bind the new variable.
2021-11-29 15:13:31 +01:00
Andreas Schwab
de9d27f679 Avoid undefined behaviour when copying part of structure
* src/dispnew.c (copy_row_except_pointers): Don't use address of
subobject as starting point.

(cherry picked from commit 6943786b5c)
2021-11-29 14:45:40 +02:00
Po Lu
d8dd705e9d Really make `x-scroll-event-delta-factor' dependent on system
* lisp/cus-start.el: Move X specific builtins that start
with "x-" before the catch-all test.
2021-11-29 18:27:12 +08:00
Andreas Schwab
6943786b5c Avoid undefined behaviour when copying part of structure
* src/dispnew.c (copy_row_except_pointers): Don't use address of
subobject as starting point.
2021-11-29 10:30:10 +01:00
Po Lu
4320180111 Fix last change for non-X platforms
* lisp/cus-start.el: Don't announce
`scroll-bar-adjust-thumb-portion' on non-X systems.
2021-11-29 17:19:27 +08:00
Po Lu
618070d4b4 Allow customizing the pixel delta of wheel events on X
* lisp/cus-start.el: Add `x-scroll-event-delta-factor'.
* src/xterm.c (handle_one_xevent): Apply scroll event
delta factor to wheel events with pixel data.
(Vx_scroll_event_delta_factor): New user option.
2021-11-29 15:37:41 +08:00
Po Lu
a1aa9cbf57 Make overhangs in ftcrfont work on Haiku
* src/ftcrfont.c (ftcrfont_draw): Dump left overhang clipping
on Haiku and always set `background_filled_p'.
2021-11-29 07:12:25 +00:00
Po Lu
0400b3c329 * doc/emacs/haiku.texi (Haiku Basics): Fix a typo. 2021-11-29 06:57:33 +00:00
Stefan Kangas
d648874110 Merge from origin/emacs-28
c4daff9cf8 * Makefile.in (PREFERRED_BRANCH): Now emacs-28.
bca57086be ; Remove an obsolete comment
455b64c336 * src/coding.c (Fdecode_coding_region, Fencode_coding_regi...
2021-11-29 07:00:25 +01:00
Stefan Kangas
c4daff9cf8 * Makefile.in (PREFERRED_BRANCH): Now emacs-28. 2021-11-29 05:57:13 +01:00
Po Lu
390361cb24 Update XKB map on MappingNotify
* src/xterm.c (handle_one_xevent): Update XKB map when X
tells us the keyboard map has been updated.
2021-11-29 12:39:16 +08:00
Lars Ingebrigtsen
c8df4d1ca3 Tweak gnus-art key binding
* lisp/gnus/gnus-art.el (:keymap): Fix mnemonic key binding.
2021-11-28 22:59:35 +01:00
Karl Fogel
bca57086be ; Remove an obsolete comment
* src/editfns.c (Ftranspose_regions): Remove an obsolete comment about
  memmove, following up to commit 72af86bd8c of 8 Jul 2010 by Andreas
  Schwab and commit 354f9f0fc6 of 23 Feb 2016 by Fredrik Bergroth,
  both of which added calls to memmove.
2021-11-28 13:34:57 -06:00
Eli Zaretskii
455b64c336 * src/coding.c (Fdecode_coding_region, Fencode_coding_region): Doc fix. 2021-11-28 20:18:16 +02:00
Mattias Engdegård
9a0492ca7c ; Don't use remq (breaks bootstrapping) 2021-11-28 19:06:33 +01:00
Mattias Engdegård
d50e0bdbac Use compiler macros for the key syntax checks
Compile-time key string syntax checks are better written using
compiler macros than with byte-hunk-handlers inside the compiler
proper.

* lisp/emacs-lisp/bytecomp.el (byte-compile-define-keymap)
(byte-compile-define-keymap--define): Remove.
* lisp/keymap.el (keymap--compile-check): New.
(keymap-set, keymap-global-set, keymap-local-set, keymap-global-unset)
(keymap-local-unset, keymap-unset, keymap-substitute)
(keymap-set-after, key-translate, keymap-lookup, keymap-local-lookup)
(keymap-global-lookup): Use compiler-macro for argument checks.
* lisp/subr.el (define-keymap--compile): New.
(define-keymap--define): Fold into define-keymap.
(define-keymap): Use compiler-macro.
(defvar-keymap): Use define-keymap.
2021-11-28 18:10:23 +01:00
Mattias Engdegård
1e8074f5ea Avoid unused argument warnings in lambda compiler macros
* lisp/emacs-lisp/byte-run.el (byte-run--set-compiler-macro):
Don't warn when a compiler macro with lambda-form expander does not
use all the arguments of the function.  Nobody expected any warning
since the arguments look like free variables inside the lambda form.
2021-11-28 18:10:23 +01:00
Michael Albinus
58128f9b05 ; Use /usr/bin/find in gitlab-ci.yml 2021-11-28 17:05:32 +01:00
Stefan Kangas
f5498a608f Merge from origin/emacs-28
1fffe9a210 ; * lisp/org/org.el: Fix version header.
2a4de5e5e5 Fix Subject when forwarding message with 2-line From
b8b2dd17c5 Update to Org 9.5.1-11-g96d91b
a937f536b3 * doc/lispref/commands.texi (Click Events): Fix wording (b...
2021-11-28 14:59:44 +01:00