]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoFix build on systems with older Pango versions
Lars Ingebrigtsen [Thu, 21 Oct 2021 13:07:08 +0000 (15:07 +0200)]
Fix build on systems with older Pango versions

* src/gtkutil.c (xg_weight_to_symbol): Don't break the build on
older systems.

3 years agoFix bold/black in w32_to_fc_weight
Lars Ingebrigtsen [Thu, 21 Oct 2021 12:36:50 +0000 (14:36 +0200)]
Fix bold/black in w32_to_fc_weight

* src/w32font.c (w32_to_fc_weight): Use symbols.

3 years agoAdd a comment to the Turkish casefiddle test
Lars Ingebrigtsen [Thu, 21 Oct 2021 02:41:35 +0000 (04:41 +0200)]
Add a comment to the Turkish casefiddle test

3 years agoSupport the "medium" font weight
Lars Ingebrigtsen [Thu, 21 Oct 2021 02:30:02 +0000 (04:30 +0200)]
Support the "medium" font weight

* lisp/faces.el (set-face-attribute): Mention new font weights in
doc string.
* src/font.c (struct table_entry): Allow more synonyms.
(weight_table): Expand to support separating medium and normal
weights.  Also add heavy/ultra-heavy and some other variants.
(font_parse_fcname): Support more names.

* src/gtkutil.c (xg_weight_to_symbol): Support all the Pango weights.
(xg_style_to_symbol): Make into functions.
(xg_get_font): Adjust.

* src/w32font.c (w32_to_fc_weight): Use symbols.

* src/xfaces.c (syms_of_xfaces): Add the new symbols.

3 years agoAdd some tests for floatfns.c
Stefan Kangas [Wed, 20 Oct 2021 18:03:34 +0000 (20:03 +0200)]
Add some tests for floatfns.c

* test/src/floatfns-tests.el (floatfns-tests-cos)
(floatfns-tests-sin, floatfns-tests-tan, floatfns-tests-isnan)
(floatfns-tests-exp, floatfns-tests-expt, floatfns-tests-log)
(floatfns-tests-sqrt, floatfns-tests-abs, floatfns-tests-logb)
(floatfns-tests-ceiling, floatfns-tests-floor)
(floatfns-tests-round, floatfns-tests-truncate)
(floatfns-tests-fceiling, floatfns-tests-ffloor)
(floatfns-tests-fround, floatfns-tests-ftruncate)
(divide-extreme-sign): New tests.

3 years ago; * etc/NEWS: fix typos
Robert Pluim [Wed, 20 Oct 2021 09:58:07 +0000 (11:58 +0200)]
; * etc/NEWS: fix typos

3 years agoFix typo in previous smerge-mode-map change
Lars Ingebrigtsen [Wed, 20 Oct 2021 09:49:22 +0000 (11:49 +0200)]
Fix typo in previous smerge-mode-map change

* lisp/vc/smerge-mode.el (smerge-mode-map): Fix typo (bug#51303).

3 years agoAvoid excessive specbinding in all-completions
Miha Rihtaršič [Tue, 19 Oct 2021 16:41:13 +0000 (18:41 +0200)]
Avoid excessive specbinding in all-completions

* src/minibuf.c (match_regexps):
(Ftry_completion):
(Fall_completions):
(Ftest_completion): Use fast_string_match_internal to match against
regexps in completion-regexp-list without having to bind
case-fold-search.

3 years agoFurther fixes for Turkish case changes in unibyte strings
Lars Ingebrigtsen [Wed, 20 Oct 2021 07:38:31 +0000 (09:38 +0200)]
Further fixes for Turkish case changes in unibyte strings

* src/casefiddle.c (struct casing_context): Add new slot to keep
track of what the previous operation was.
(case_character_impl): Set it.
(do_casify_unibyte_string): Use it to handle Turkish correctly.

3 years agoAdd new macro with-locale-environment
Lars Ingebrigtsen [Wed, 20 Oct 2021 07:36:25 +0000 (09:36 +0200)]
Add new macro with-locale-environment

* lisp/international/mule-cmds.el (with-locale-environment): New macro.
(current-locale-environment): New variable.

3 years agoAdd some tests for fns.c
Stefan Kangas [Wed, 20 Oct 2021 01:23:28 +0000 (03:23 +0200)]
Add some tests for fns.c

* test/src/fns-tests.el (fns-tests-identity, fns-tests-random)
(fns-tests-length, fns-tests-safe-length)
(fns-tests-string-bytes): New tests.

3 years agoRemove some XEmacs compat code from custom.el
Stefan Kangas [Tue, 19 Oct 2021 23:52:26 +0000 (01:52 +0200)]
Remove some XEmacs compat code from custom.el

* lisp/custom.el (deftheme, custom-declare-theme): Remove XEmacs
compat code.

3 years agoxref.el: Better compatibility with outdated Emacs 28 builds
Dmitry Gutov [Tue, 19 Oct 2021 22:03:52 +0000 (01:03 +0300)]
xref.el: Better compatibility with outdated Emacs 28 builds

* lisp/progmodes/xref.el:
Ensure better compatibility with outdated Emacs 28 builds as well
(like the pgtk branch).  Bump the version.

3 years ago* doc/lispref/files.texi (File Name Components): Mention GNU "path" convention
Stefan Monnier [Tue, 19 Oct 2021 21:18:05 +0000 (17:18 -0400)]
* doc/lispref/files.texi (File Name Components): Mention GNU "path" convention

3 years agoMake image-tests work in a no-x build
Lars Ingebrigtsen [Tue, 19 Oct 2021 21:10:46 +0000 (23:10 +0200)]
Make image-tests work in a no-x build

* test/src/image-tests.el: Make the tests work in a no-x build
(bug#51291).

3 years agoTweak how 'align' and 'align-regexp' align text
Lars Ingebrigtsen [Tue, 19 Oct 2021 20:39:00 +0000 (22:39 +0200)]
Tweak how 'align' and 'align-regexp' align text

* lisp/align.el (align-rules-list): Change to work without `C-u'.
(align): Doc clarification.
(align-regexp): Ditto, and change default `C-u' regexp from
"\\(\\s-*\\)" to "\\(\\s-*\\)" so that it'll make things columnar
if the user just hits RET through all the defaults.

3 years agoImprove TCO test coverage
Mattias Engdegård [Tue, 19 Oct 2021 10:03:15 +0000 (12:03 +0200)]
Improve TCO test coverage

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Exercise `cond` in tail position in two different ways.

3 years agoMake downcasing unibyte strings in Turkish less wrong
Lars Ingebrigtsen [Tue, 19 Oct 2021 18:36:48 +0000 (20:36 +0200)]
Make downcasing unibyte strings in Turkish less wrong

* src/casefiddle.c (ascii_casify_character): New function.
(do_casify_unibyte_string): Use it to make downcasing tr_TR.UTF-8
"I" less wrong.
(Fdowncase): Mention caveats.
(Fupcase):
(Fcapitalize):
(Fupcase_initials): Refer to details in `downcase'.
(syms_of_casefiddle): Define more symbols.

3 years agoMerge from origin/emacs-28
Glenn Morris [Tue, 19 Oct 2021 14:50:35 +0000 (07:50 -0700)]
Merge from origin/emacs-28

d742cc3c20 (origin/emacs-28) ; etc/NEWS: Fix typos
28db29590f * admin/notes/unicode: Refer to Unicode's emoji-style.txt
9bd2f59db6 Handle VS-16 correctly for non-emoji codepoints
e55e2d4a11 ; * etc/NEWS: Minor copyedit about 'repeat-mode'.
380981ddb5 Adjust bug-reference-bug-regexp default values to match on...
c1cf95a0e1 ; * doc/emacs/windows.texi: Doc fix.
98eb6d783a Fix a typo in emacs-lisp-intro.texi
f5b8f626e3 Fix some Tramp problems
fc988a7113 Adapt Tramp manual
0c241043a8 Further fixes to Elisp manual
8e8a920246 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): ...
5a3242301d Rename tab-bar-drag-maybe to tab-bar--dragging-in-progress
bb4209a5a5 Fix xref elisp identifier namespace mistake

# Conflicts:
# etc/NEWS

3 years ago* lisp/progmodes/xref.el: Bump version.
Dmitry Gutov [Tue, 19 Oct 2021 14:42:25 +0000 (17:42 +0300)]
* lisp/progmodes/xref.el: Bump version.

3 years agoFix Emacs 26 support in xref.el
Dmitry Gutov [Tue, 19 Oct 2021 14:32:35 +0000 (17:32 +0300)]
Fix Emacs 26 support in xref.el

* lisp/progmodes/xref.el (xref--defstruct): New macro.
(xref-item, xref-match-item): Use it in definitions.

3 years ago; etc/NEWS: Fix typos
Michael Albinus [Tue, 19 Oct 2021 13:06:30 +0000 (15:06 +0200)]
; etc/NEWS: Fix typos

3 years ago* admin/notes/unicode: Refer to Unicode's emoji-style.txt
Robert Pluim [Mon, 18 Oct 2021 12:52:49 +0000 (14:52 +0200)]
* admin/notes/unicode: Refer to Unicode's emoji-style.txt

3 years agoHandle VS-16 correctly for non-emoji codepoints
Robert Pluim [Mon, 18 Oct 2021 09:51:10 +0000 (11:51 +0200)]
Handle VS-16 correctly for non-emoji codepoints

* admin/unidata/blocks.awk: Remove emoji overrides for codepoints with
Emoji_Presentation = No, they're no longer necessary.
* lisp/composite.el: Remove #xFE0F (VS-16) from the range handled by
`compose-gstring-for-variation-glyph' so it can be handled by
`font_range'.
* src/composite.c (syms_of_composite): New variable
`auto-composition-emoji-eligible-codepoints'.
* admin/unidata/emoji-zwj.awk: Generate value for
`auto-composition-emoji-eligible-codepoints'.  Add
`composition-function-table' entries for 'codepoint + U+FE0F' for
them.
* src/font.c (codepoint_is_emoji_eligible): New function to check if
we should try to use the emoji font for a codepoint.
(font_range): Use it.

3 years ago; * etc/NEWS: Minor copyedit about 'repeat-mode'.
Eli Zaretskii [Tue, 19 Oct 2021 12:12:43 +0000 (15:12 +0300)]
; * etc/NEWS: Minor copyedit about 'repeat-mode'.

3 years ago* etc/NEWS: Move sql entry up. Fix typos.
Michael Albinus [Tue, 19 Oct 2021 07:43:34 +0000 (09:43 +0200)]
* etc/NEWS: Move sql entry up.  Fix typos.

3 years agoAdjust bug-reference-bug-regexp default values to match only at beg of word
Tassilo Horn [Tue, 19 Oct 2021 05:05:18 +0000 (07:05 +0200)]
Adjust bug-reference-bug-regexp default values to match only at beg of word

Previously, the "bug 1" in "(debug 1)" has also been highlighted.

* lisp/progmodes/bug-reference.el (bug-reference-bug-regexp)
(bug-reference--setup-from-vc-alist,bug-reference-setup-from-mail-alist)
(bug-reference-setup-from-irc-alist): Adjust bug-reference-bug-regexp
default values to match only at the beginning of a word.

3 years agoSQL mode supports sending passwords in process
Michael R. Mauger [Tue, 19 Oct 2021 04:18:17 +0000 (00:18 -0400)]
SQL mode supports sending passwords in process

3 years agoAdded sql-add-connection
Michael R. Mauger [Tue, 12 Oct 2021 00:04:46 +0000 (20:04 -0400)]
Added sql-add-connection

* lisp/progmodes/sql.el (sql-add-connection): Added.

3 years ago; * doc/emacs/windows.texi: Doc fix.
Pedro Mauro [Tue, 19 Oct 2021 03:14:07 +0000 (05:14 +0200)]
; * doc/emacs/windows.texi: Doc fix.

* doc/emacs/windows.texi (Window Choice): Make example a valid
alist (bug#51274).

3 years agoMake `lookup-key' understand the new key sequence syntax
Lars Ingebrigtsen [Tue, 19 Oct 2021 03:07:51 +0000 (05:07 +0200)]
Make `lookup-key' understand the new key sequence syntax

* src/keymap.c (possibly_translate_key_sequence): Factored out
into own function.
(Fdefine_key):
(Flookup_key): Use it.

3 years agoError out on invalid `define-keymap' keywords
Lars Ingebrigtsen [Tue, 19 Oct 2021 02:50:59 +0000 (04:50 +0200)]
Error out on invalid `define-keymap' keywords

* lisp/subr.el (define-keymap--define): Error out on invalid
keywords (bug#51268).

* lisp/emacs-lisp/byte-opt.el (byte-optimize-define-keymap): Check
keywords at compile time.
* lisp/vc/cvs-status.el (cvs-status-mode-map): Fix keyword.

3 years agoFix diff-mode-shared-map
Lars Ingebrigtsen [Mon, 18 Oct 2021 16:55:48 +0000 (18:55 +0200)]
Fix diff-mode-shared-map

* lisp/vc/diff-mode.el (diff-mode-shared-map): Fix syntax error in
`defvar-keymap' change.

3 years agoFix a typo in emacs-lisp-intro.texi
Stefan Kangas [Tue, 19 Oct 2021 00:36:06 +0000 (02:36 +0200)]
Fix a typo in emacs-lisp-intro.texi

* doc/lispintro/emacs-lisp-intro.texi (Lisp Atoms): Fix typo.
Reported by Mor Zahavi <morzahavi@me.com>.  (Bug#51271)

3 years agoAdd tests for image.c
Stefan Kangas [Mon, 18 Oct 2021 20:35:40 +0000 (22:35 +0200)]
Add tests for image.c

* test/src/image-tests.el: New file.

3 years agoFix some Tramp problems
Michael Albinus [Mon, 18 Oct 2021 17:54:13 +0000 (19:54 +0200)]
Fix some Tramp problems

* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
Use `tramp-adb-handle-file-executable-p' and
`tramp-adb-handle-file-readable-p'.
(tramp-adb-handle-file-executable-p)
(tramp-adb-handle-file-readable-p): New defuns.
(tramp-adb-handle-file-writable-p): Simplify.
(tramp-adb-handle-make-process): Handle :filter being t.
(tramp-adb-find-test-command): Remove.

* lisp/net/tramp-sh.el (tramp-sh-handle-file-readable-p):
* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-readable-p):
* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
Use `tramp-handle-file-readable-p'.
(tramp-gvfs-handle-file-executable-p): Do not check whether file
exists, this is done in `tramp-check-cached-permissions'.
(tramp-gvfs-handle-file-readable-p): Remove.

* lisp/net/tramp.el (tramp-error): Move binding of `inhibit-message' ...
(tramp-signal-hook-function): ... here.
(tramp-handle-access-file): Rewrite.
(tramp-handle-file-readable-p): New defun.
(tramp-handle-make-process): Setting :filter to t works since
Emacs 29.1 only.

* test/lisp/net/tramp-tests.el (tramp-test17-insert-directory)
(tramp-test18-file-attributes): Extend tests.

3 years agoAdapt Tramp manual
Michael Albinus [Mon, 18 Oct 2021 17:53:34 +0000 (19:53 +0200)]
Adapt Tramp manual

* doc/misc/tramp.texi: Use @uref instead of @url.
(Frequently Asked Questions): Adapt ELPA references.

3 years agoFurther fixes to Elisp manual
Martin Rudalics [Mon, 18 Oct 2021 17:18:42 +0000 (19:18 +0200)]
Further fixes to Elisp manual

* doc/lispref/frames.texi (Frame Layout): Index "tab bar" instead
of "internal tab bar".
(Implied Frame Resizing): Remove irritating hyphens.
* doc/lispref/windows.texi (Windows and Frames): Remove paragraph
relating 'minibuffer-window' to 'window-list'.

3 years ago* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): check type-start
Alan Mackenzie [Mon, 18 Oct 2021 16:49:19 +0000 (16:49 +0000)]
* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): check type-start

Check type-start is non-nil at L659 of the function.

3 years agoRename tab-bar-drag-maybe to tab-bar--dragging-in-progress
Juri Linkov [Mon, 18 Oct 2021 16:52:29 +0000 (19:52 +0300)]
Rename tab-bar-drag-maybe to tab-bar--dragging-in-progress

* lisp/tab-bar.el (tab-bar--event-to-item, tab-bar-mouse-down-1)
(tab-bar-mouse-move-tab): Rename tab-bar-drag-maybe to
tab-bar--dragging-in-progress.

* src/xdisp.c (note_mouse_highlight): Rename tab_bar_drag_maybe to
tab_bar__dragging_in_progress.

3 years agoFix xref elisp identifier namespace mistake
Mattias Engdegård [Mon, 18 Oct 2021 15:06:22 +0000 (17:06 +0200)]
Fix xref elisp identifier namespace mistake

Pressing `M-.` on ALPHA in

  (let ((ALPHA BETA)) ...)

would incorrectly search for ALPHA as a function rather than a variable.

* lisp/progmodes/elisp-mode.el (elisp--xref-infer-namespace): Fix logic.
* test/lisp/progmodes/elisp-mode-tests.el
(elisp-mode-infer-namespace): Add test case.

3 years agoMerge from origin/emacs-28
Glenn Morris [Mon, 18 Oct 2021 14:50:26 +0000 (07:50 -0700)]
Merge from origin/emacs-28

c163fd9260 (origin/emacs-28) Minor fixes for recent changes in ELisp ...
fefada4816 Fix example in calc manual
e74e17c1f0 Rewrites of Elisp manual including tab-bar and tab-line ch...
3b138917b7 ; * INSTALL: Fix typo.
ce71446585 * lisp/tab-bar.el: Improve docstrings (bug#51247)
ace4ce16a3 * lisp/tab-bar.el (tab-bar-mouse-move-tab): Don't drag tab...
04716ca48f Add tab-bar-drag-maybe for indication of tab dragging (bug...
81e3697600 * lisp/tab-bar.el: Add a new tab on [mouse-1] instead of [...
a191d3c725 Add new and fix existing docstrings in tab-bar.el and tab-...
77dbaedadc Add tab bar support to the nextstep port
7b6fb486c2 Fix potential buffer overflow (bug#50767)
ed9f5546aa Improve doc strings in tab-line.el
686a03ee22 More documentation fixes in tab-bar.el
35920791df Improve doc strings of tab-bar commands
2d15db6e89 Fix a semantic test on some macOS machines
ac6ac76e3a Update to Org 9.5-57-g9bc3a2

3 years agoMinor fixes for recent changes in ELisp manual
Eli Zaretskii [Mon, 18 Oct 2021 14:13:18 +0000 (17:13 +0300)]
Minor fixes for recent changes in ELisp manual

* doc/lispref/windows.texi (Basic Windows, Windows and Frames)
(Selecting Windows):
* doc/lispref/objects.texi (Window Type):
* doc/lispref/frames.texi (Input Focus, Frame Layout): Fix
wording, punctuation, and indexing.

3 years agoFix example in calc manual
Lars Ingebrigtsen [Mon, 18 Oct 2021 13:56:51 +0000 (15:56 +0200)]
Fix example in calc manual

* doc/misc/calc.texi (Arithmetic Tutorial): Fix sign in the
example (bug#51265).

3 years ago*-watch-for-password-prompt: Use run-at-time to read password
Miha Rihtaršič [Mon, 18 Oct 2021 13:24:54 +0000 (15:24 +0200)]
*-watch-for-password-prompt: Use run-at-time to read password

* lisp/comint.el (comint-watch-for-password-prompt):
* lisp/eshell/esh-mode.el (eshell-watch-for-password-prompt):
* lisp/term.el (term-watch-for-password-prompt):
Use run-at-time to read a password (bug#51263).

3 years agoAdd some defvar indent tests
Lars Ingebrigtsen [Mon, 18 Oct 2021 09:35:51 +0000 (11:35 +0200)]
Add some defvar indent tests

3 years agoMention that we now install the pdmp file with a fingerprinted name
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:48:45 +0000 (10:48 +0200)]
Mention that we now install the pdmp file with a fingerprinted name

3 years agoAdd indentation rules for DEFUN's def* functions
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:44:28 +0000 (10:44 +0200)]
Add indentation rules for DEFUN's def* functions

3 years agoUpdate elp-not-profilable
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:40:08 +0000 (10:40 +0200)]
Update elp-not-profilable

* lisp/emacs-lisp/elp.el (elp-not-profilable): Update list of
denied functions (bug#40335).

3 years agoRemove the "def" indentation heuristic
Lars Ingebrigtsen [Mon, 18 Oct 2021 08:00:20 +0000 (10:00 +0200)]
Remove the "def" indentation heuristic

* lisp/emacs-lisp/lisp-mode.el (lisp-indent-function): Don't
indent function calls with names that that start with "def"
specially (bug#43329).

3 years agoRewrites of Elisp manual including tab-bar and tab-line changes
Martin Rudalics [Mon, 18 Oct 2021 07:58:48 +0000 (09:58 +0200)]
Rewrites of Elisp manual including tab-bar and tab-line changes

* doc/lispref/buffers.texi (Current Buffer, Buffer List): Update
references to 'selected-window'.
* doc/lispref/elisp.texi (Top): Move up Selecting Windows section
in front of Window Sizes section.
* doc/lispref/frames.texi (Creating Frames): Say window system
instead of windowing system.
(Frame Layout): Add Tab Bar to layout.
(Layout Parameters): Add 'tab-bar-lines'.
(Input Focus): Say window system window instead of window
manager window.  Fix reference to 'selected-window'.
* doc/lispref/objects.texi (Window Type): Minor rewrite.
* doc/lispref/windows.texi (Basic Windows): Rewrite.  Settle on
term 'window system window' for disambiguation with our windows.
Move 'selected-window' description to Selecting Windows section.
Move schematic of window structure here.  Use 'decorations' for
objects outside the window body.  Say that the areas reserved
for continuation and truncation glyphs, vertical dividers and
line numbers are part of the window body.
(Windows and Frames): Minor rewrite, adding and fixing some
cross references.  Move live window schematic to 'Basic Windows'
section.
(Selecting Windows): Move section in front of Window Sizes
section.  Move description of 'selected-window' here.  Move up
description of 'frame-selected-window' and
'set-frame-selected-window'.  Update and move description of
'window-bump-use-time' here.
(Window Sizes): Throughout use the term 'decorations' instead of
enumerating them individually.  Add 'window-tab-line-height'
description.
(Resizing Windows): Again use the term 'decorations' instead of
enumerating them individually.
(Splitting Windows): Minor fix.
(Cyclic Window Ordering): Improve descriptions of 'get-lru-window'
and 'get-mru-window'.  Move 'window-bump-use-time' to Selecting
Windows section.
(Coordinates and Windows, Window Configurations): Once more use
the term 'decorations' instead of enumerating them individually.
* src/window.c (Fwindow_bump_use_time): Move after
'window-use-time'.  Make it work for live windows only.  Make
WINDOW argument optional.  Update doc-string.

3 years agoFontify :doc keywords as documentation
Lars Ingebrigtsen [Mon, 18 Oct 2021 07:44:24 +0000 (09:44 +0200)]
Fontify :doc keywords as documentation

* lisp/emacs-lisp/lisp-mode.el (lisp-string-after-doc-keyword-p):
Extend to :doc, too (bug#51230).

3 years agoNew option show-paren-context-when-offscreen
Daniel Martín [Sat, 16 Oct 2021 18:24:19 +0000 (20:24 +0200)]
New option show-paren-context-when-offscreen

* lisp/simple.el (blink-paren-open-paren-line-string): Extract
functionality that shows the open paren line in the echo area into its
own function, to reuse it from paren.el.
(blink-matching-open): Use blink-paren-open-paren-line-string.
* lisp/paren.el (show-paren-context-when-offscreen): New option
show-paren-context-when-offscreen.
(show-paren-function): Implement it using
blink-paren-open-paren-line-string.
* lisp/emacs-lisp/eldoc.el (eldoc-display-message-no-interference-p):
Make sure the feature works well with eldoc.
* test/lisp/paren-tests.el (paren-tests-open-paren-line): Test
blink-paren-open-paren-line-string.
* doc/emacs/programs.texi (Matching): Update the documentation.
* etc/NEWS: And announce the new feature.

3 years agoFix possible build issue in pcvs.el and diff-mode.el
Lars Ingebrigtsen [Mon, 18 Oct 2021 07:22:22 +0000 (09:22 +0200)]
Fix possible build issue in pcvs.el and diff-mode.el

* lisp/vc/pcvs.el (easy-mmode):
* lisp/vc/diff-mode.el (easy-mmode): Require.

3 years agoAdd sample user function in eww-auto-rename-buffer
Protesilaos Stavrou [Mon, 18 Oct 2021 07:07:03 +0000 (10:07 +0300)]
Add sample user function in eww-auto-rename-buffer

* eww.el (eww-auto-rename-buffer): Update doc string.

Fix bug#51176.

Co-authored-by: Abhiseck Paira <abhiseckpaira@disroot.org>
Co-authored-by: Protesilaos Stavrou <info@protesilaos.com>
3 years agoFix build issue with smerge-mode
Lars Ingebrigtsen [Mon, 18 Oct 2021 07:13:51 +0000 (09:13 +0200)]
Fix build issue with smerge-mode

* lisp/vc/smerge-mode.el (easy-mmode): Require.

3 years agoAllow :filter t in make-process to work as with set-process-filter
Lars Ingebrigtsen [Mon, 18 Oct 2021 06:58:02 +0000 (08:58 +0200)]
Allow :filter t in make-process to work as with set-process-filter

* src/process.c (create_process):
(create_pty):
(Fmake_pipe_process):
(Fmake_serial_process): Don't add the read_fd if the filter is t
(which means that we don't accept output from the filter).

3 years agoDo kbd-valid-p prefix comparisons case-sensitively
Lars Ingebrigtsen [Mon, 18 Oct 2021 05:37:08 +0000 (07:37 +0200)]
Do kbd-valid-p prefix comparisons case-sensitively

* lisp/subr.el (kbd-valid-p): Compare case-sensitively.

3 years ago; * INSTALL: Fix typo.
Stefan Kangas [Mon, 18 Oct 2021 00:35:33 +0000 (02:35 +0200)]
; * INSTALL: Fix typo.

3 years agoRecommend against using uce.el
Stefan Kangas [Sat, 16 Oct 2021 12:39:04 +0000 (14:39 +0200)]
Recommend against using uce.el

* lisp/mail/uce.el (uce-reply-to-uce): Recommend against its use on
the first invocation.  (Bug#46472)

3 years ago* lisp/erc/erc-compat.el (format-spec): Remove redundant require.
Stefan Kangas [Sun, 17 Oct 2021 23:49:39 +0000 (01:49 +0200)]
* lisp/erc/erc-compat.el (format-spec): Remove redundant require.

3 years agoPrefer defvar-local in MH-E
Stefan Kangas [Sun, 17 Oct 2021 23:33:21 +0000 (01:33 +0200)]
Prefer defvar-local in MH-E

* lisp/mh-e/mh-comp.el (mh-insert-auto-fields-done-local):
* lisp/mh-e/mh-e.el (mh-thread-scan-line-map)
(mh-thread-scan-line-map-stack):
* lisp/mh-e/mh-identity.el (mh-identity-pgg-default-user-id)
(mh-identity-local):
* lisp/mh-e/mh-scan.el (mh-cmd-note):
* lisp/mh-e/mh-seq.el (mh-non-seq-mode-line-annotation):
* lisp/mh-e/mh-thread.el (mh-thread-id-hash)
(mh-thread-subject-hash, mh-thread-id-table)
(mh-thread-index-id-map, mh-thread-id-index-map)
(mh-thread-subject-container-hash, mh-thread-duplicates)
(mh-thread-history): Prefer defvar-local.

3 years agoMake thumbs-image-type obsolete
Stefan Kangas [Sun, 17 Oct 2021 23:28:49 +0000 (01:28 +0200)]
Make thumbs-image-type obsolete

* lisp/thumbs.el (thumbs-image-type): Make into obsolete function
alias for 'image-type-from-file-name'.  Update callers.

3 years agoUse define-keymap in pcvs and pcvs-defs.el
Lars Ingebrigtsen [Sun, 17 Oct 2021 23:27:27 +0000 (01:27 +0200)]
Use define-keymap in pcvs and pcvs-defs.el

* lisp/vc/pcvs-defs.el (cvs-mode-diff-map):
* lisp/vc/pcvs.el (pcvs-defs):
(cvs-mode-diff-map): Move maps to pcvs (because the commands are
defined in pcvs.el and #' gives us checking) and transform from
easy-mmode-defmap to define-keymap.

3 years agoConvert diff-mode.el from easy-mmode-defmap to define-keymap
Lars Ingebrigtsen [Sun, 17 Oct 2021 22:49:56 +0000 (00:49 +0200)]
Convert diff-mode.el from easy-mmode-defmap to define-keymap

* lisp/vc/diff-mode.el (diff-mode-shared-map, diff-mode-map)
(diff-minor-mode-map): Convert from easy-mmode-defmap to
defvar-keymap.

3 years agoConvert smerge-mode.el from easy-mmode-defmap to define-keymap
Lars Ingebrigtsen [Sun, 17 Oct 2021 22:35:32 +0000 (00:35 +0200)]
Convert smerge-mode.el from easy-mmode-defmap to define-keymap

* lisp/vc/smerge-mode.el (smerge-basic-map, smerge-mode-map):
Convert form easy-mmode-defmap to define-keymap.

3 years agoAdd kbd examples to the doc string
Lars Ingebrigtsen [Sun, 17 Oct 2021 20:27:13 +0000 (22:27 +0200)]
Add kbd examples to the doc string

* lisp/subr.el (kbd): Add some examples to the doc string.

3 years agoReverse the edmacro-parse-keys/kbd vector/string logic
Lars Ingebrigtsen [Sun, 17 Oct 2021 20:14:30 +0000 (22:14 +0200)]
Reverse the edmacro-parse-keys/kbd vector/string logic

* lisp/edmacro.el (edmacro-parse-keys): Convert to a vector if
needed.
* lisp/subr.el (kbd): Remove the NEED-VECTOR parameter.

3 years agoAllow <mouse-1> in kbd-valid-p
Lars Ingebrigtsen [Sun, 17 Oct 2021 19:49:43 +0000 (21:49 +0200)]
Allow <mouse-1> in kbd-valid-p

* lisp/subr.el (kbd-valid-p): Allow (kbd-valid-p "<mouse-1>").

3 years agoReinstate defvar-keymap expansion
Lars Ingebrigtsen [Sun, 17 Oct 2021 19:29:59 +0000 (21:29 +0200)]
Reinstate defvar-keymap expansion

* lisp/emacs-lisp/byte-opt.el
(byte-optimize-define-keymap--define): Make more robust.

3 years agoBack out `define-keymap' optimization -- it leads to a build error
Lars Ingebrigtsen [Sun, 17 Oct 2021 19:06:26 +0000 (21:06 +0200)]
Back out `define-keymap' optimization -- it leads to a build error

3 years agoConvert cvs-status-mode-map to new syntax
Lars Ingebrigtsen [Sun, 17 Oct 2021 18:48:34 +0000 (20:48 +0200)]
Convert cvs-status-mode-map to new syntax

* lisp/vc/cvs-status.el (cvs-status-mode-map): Convert a small
keymap to the new ["..."] syntax.

3 years agoSupport a new ["..."] key binding syntax
Lars Ingebrigtsen [Sun, 17 Oct 2021 18:48:01 +0000 (20:48 +0200)]
Support a new ["..."] key binding syntax

* doc/lispref/keymaps.texi (Key Sequences):
(Changing Key Bindings): Document the various key syntaxes.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-define-key)
(byte-optimize-define-keymap)
(byte-optimize-define-keymap--define): New functions to check and
expand ["..."] syntax at compile time.

* src/keymap.c (Fdefine_key): Understand the ["..."] syntax.
(syms_of_keymap): Define `kbd' symbols.

3 years ago* lisp/tab-bar.el: Improve docstrings (bug#51247)
Juri Linkov [Sun, 17 Oct 2021 18:28:54 +0000 (21:28 +0300)]
* lisp/tab-bar.el: Improve docstrings (bug#51247)

* lisp/tab-bar.el (tab-bar--key-to-number)
(tab-bar--event-to-item, tab-bar--format-tab-group)
(tab-bar--current-tab-make): Improve docstrings.
(switch-to-buffer-other-tab): Obsolete the arg NORECORD.

3 years ago* lisp/tab-bar.el (tab-bar-mouse-move-tab): Don't drag tab to itself.
Juri Linkov [Sun, 17 Oct 2021 18:03:27 +0000 (21:03 +0300)]
* lisp/tab-bar.el (tab-bar-mouse-move-tab): Don't drag tab to itself.

3 years agoPacify gcc -Wsuggest-attribute=malloc
Paul Eggert [Sun, 17 Oct 2021 17:51:56 +0000 (10:51 -0700)]
Pacify gcc -Wsuggest-attribute=malloc

Problem found with gcc (Ubuntu 11.2.0-7ubuntu2) 11.2.0 x86-64.
* src/sysstdio.h (emacs_fopen): Mark with ATTRIBUTE_MALLOC.

3 years agoAdd tab-bar-drag-maybe for indication of tab dragging (bug#50993)
Martin Rudalics [Sun, 17 Oct 2021 17:48:45 +0000 (20:48 +0300)]
Add tab-bar-drag-maybe for indication of tab dragging (bug#50993)

* lisp/tab-bar.el (tab-bar--event-to-item)
(tab-bar-mouse-move-tab): Set tab-bar-drag-maybe to nil.
(tab-bar-mouse-down-1): Set tab-bar-drag-maybe to t.

* src/xdisp.c (note_mouse_highlight): Set cursor to 'hand_cursor'
when tab_bar_drag_maybe is true.
(syms_of_xdisp): New variable tab-bar-drag-maybe.

3 years ago* lisp/tab-bar.el: Add a new tab on [mouse-1] instead of [down-mouse-1]
Juri Linkov [Sun, 17 Oct 2021 17:27:16 +0000 (20:27 +0300)]
* lisp/tab-bar.el: Add a new tab on [mouse-1] instead of [down-mouse-1]

* lisp/tab-bar.el (tab-bar-mouse-down-1): Rename from
tab-bar-mouse-select-tab.  Ignore 'add-tab'.
(tab-bar-mouse-1): Rename from tab-bar-mouse-close-tab-from-button.
Use binding of 'add-tab'.
(tab-bar-map): Rebind [down-mouse-1] from tab-bar-mouse-select-tab to
tab-bar-mouse-down-1, and [mouse-1] from tab-bar-mouse-close-tab-from-button
to tab-bar-mouse-1 (bug#51246).

3 years agoRewrite kbd-valid-p to not use seq
Lars Ingebrigtsen [Sun, 17 Oct 2021 17:25:52 +0000 (19:25 +0200)]
Rewrite kbd-valid-p to not use seq

* lisp/subr.el (kbd-valid-p): Rewrite to not use seq.

3 years agoAdd new and fix existing docstrings in tab-bar.el and tab-line.el (bug#51247)
Juri Linkov [Sun, 17 Oct 2021 17:09:29 +0000 (20:09 +0300)]
Add new and fix existing docstrings in tab-bar.el and tab-line.el (bug#51247)

* lisp/tab-bar.el (tab-bar--key-to-number)
(tab-bar--event-to-item, tab-bar--format-tab)
(tab-bar--format-tab-group, tab-bar--tab, tab-bar--current-tab)
(tab-bar--current-tab-make): Add/fix docstrings.

3 years ago* src/image.c: Fix comment.
Stefan Kangas [Sun, 17 Oct 2021 14:07:59 +0000 (16:07 +0200)]
* src/image.c: Fix comment.

3 years ago; Fix typos in last change.
Eli Zaretskii [Sun, 17 Oct 2021 12:13:28 +0000 (15:13 +0300)]
; Fix typos in last change.

3 years agoMinor stylistic changes in last commit
Eli Zaretskii [Sun, 17 Oct 2021 12:10:04 +0000 (15:10 +0300)]
Minor stylistic changes in last commit

* src/xdisp.c (adjust_glyph_width_for_mouse_face): Renamed from
'get_glyph_pixel_width_delta_for_mouse_face'; all callers
changed.

3 years agoFix minor issues with text display when cursor is in mouse face
Po Lu [Thu, 14 Oct 2021 10:38:26 +0000 (18:38 +0800)]
Fix minor issues with text display when cursor is in mouse face

 * src/xdisp.c (get_cursor_offset_for_mouse_face): Don't calculate
offsets for the glyph the cursor is on, and move some logic to
get_glyph_pixel_width_delta_for_mouse_face.
(fill_composite_glyph_string)
(fill_gstring_glyph_string)
(fill_glyphless_glyph_string)
(fill_glyph_string)
(fill_image_glyph_string)
(fill_xwidget_glyph_string)
(fill_stretch_glyph_string): Set s->face to mouse face whenever
appropriate.
(get_glyph_pixel_width_delta_for_mouse_face): New function.
(set_glyph_string_background_width): Update background width and
s->width to take into account differing :box properties of the mouse
face, when producing strings for the cursor.
(erase_phys_cursor): Redraw mouse face when erasing a cursor on top of
the mouse face.
 * src/xterm.c (x_set_mouse_face_gc): Stop setting s->face when under
mouse face because redisplay now does that for us.
 * src/w32term.c (w32_set_mouse_face_gc): Likewise.

3 years agoFix up recent kbd simplification
Lars Ingebrigtsen [Sun, 17 Oct 2021 10:56:54 +0000 (12:56 +0200)]
Fix up recent kbd simplification

* lisp/subr.el (kbd): Fix breakage with X-<foo> from previous change.

3 years agoAdd tab bar support to the nextstep port
Po Lu [Fri, 15 Oct 2021 18:02:54 +0000 (19:02 +0100)]
Add tab bar support to the nextstep port

* src/nsfns.m (ns_change_tab_bar_height): New function.
(ns_set_tab_bar_lines): Check tab bar height and set tab bar
accordingly.
* src/nsterm.m (ns_clear_under_internal_border): Clear internal border
correctly when there is a tab bar.
(ns_create_terminal): Add ns_change_tab_bar_height.
(mouseDown): Handle tab bar mouse click events.

3 years agoFix potential buffer overflow (bug#50767)
Alan Third [Mon, 4 Oct 2021 21:35:41 +0000 (22:35 +0100)]
Fix potential buffer overflow (bug#50767)

* src/image.c (svg_load_image): Check how many bytes were actually
written to the buffer.  Don't check xmalloc return value as xmalloc
doesn't return if it fails.

3 years agoImprove doc strings in tab-line.el
Eli Zaretskii [Sun, 17 Oct 2021 09:49:04 +0000 (12:49 +0300)]
Improve doc strings in tab-line.el

* lisp/tab-line.el (tab-line-tab-name-function)
(tab-line-tab-name-truncated-buffer, tab-line-tabs-mode-buffers)
(tab-line-tabs-buffer-group-function)
(tab-line-tabs-buffer-group-sort-function)
(tab-line-tabs-buffer-groups, tab-line-tab-name-format-function)
(tab-line-tab-name-format-default, tab-line-format-template)
(tab-line-tab-face-inactive-alternating)
(tab-line-tab-face-special, tab-line-tab-face-modified)
(tab-line-format, tab-line-auto-hscroll, tab-line-hscroll-right)
(tab-line-hscroll-left, tab-line-new-tab, tab-line-select-tab)
(tab-line-switch-to-prev-tab, tab-line-switch-to-next-tab)
(tab-line-close-tab-function, tab-line-close-tab)
(tab-line-tab-context-menu, tab-line-context-menu)
(tab-line-mode, tab-line-exclude-modes, tab-line-mode--turn-on):
Add or fix doc strings.

3 years agoMore documentation fixes in tab-bar.el
Eli Zaretskii [Sun, 17 Oct 2021 08:42:23 +0000 (11:42 +0300)]
More documentation fixes in tab-bar.el

* lisp/tab-bar.el (tab-bar-detach-tab, tab-bar-move-window-to-tab)
(tab-bar-new-tab-to, tab-bar-new-tab, tab-bar-close-tab-select)
(tab-bar-close-last-tab-choice, tab-bar-tab-pre-close-functions)
(tab-bar-close-tab, tab-bar-close-tab-by-name)
(tab-bar-close-other-tabs, tab-bar-rename-tab)
(tab-bar-rename-tab-by-name, tab-bar-move-tab-to-group)
(tab-bar-change-tab-group, tab-bar-close-group-tabs)
(tab-switcher-next-line, tab-switcher-prev-line)
(tab-switcher-unmark, tab-switcher-delete, tab-switcher-select)
(tab-bar-get-buffer-tab, display-buffer-in-tab)
(display-buffer-in-new-tab, switch-to-buffer-other-tab)
(find-file-other-tab, find-file-read-only-other-tab): Doc fixes.

3 years agoWarn about `file-notify-rm-all-watches' side effects
Michael Albinus [Sun, 17 Oct 2021 07:36:59 +0000 (09:36 +0200)]
Warn about `file-notify-rm-all-watches' side effects

* doc/lispref/os.texi (File Notifications): Warn about
`file-notify-rm-all-watches' side effects.

3 years agoImprove doc strings of tab-bar commands
Eli Zaretskii [Sun, 17 Oct 2021 07:33:34 +0000 (10:33 +0300)]
Improve doc strings of tab-bar commands

* lisp/tab-bar.el (tab-bar-mouse-select-tab)
(tab-bar-mouse-move-tab, tab-bar-mouse-close-tab-from-button)
(tab-bar-mouse-close-tab, tab-bar-mouse-context-menu)
(tab-bar-switch-to-next-tab, tab-bar-switch-to-prev-tab)
(tab-bar-switch-to-last-tab, tab-bar-switch-to-recent-tab)
(tab-bar-move-tab-backward, tab-bar-move-tab)
(tab-bar-move-tab-to-frame): Add/fix doc strings.

3 years agoFix a semantic test on some macOS machines
Stefan Kangas [Sun, 17 Oct 2021 01:00:10 +0000 (03:00 +0200)]
Fix a semantic test on some macOS machines

* test/lisp/cedet/semantic/bovine/gcc-tests.el
(semantic-gcc-test-output-parser-this-machine): Fix test on some macOS
machines where running "gcc" runs "llvm" instead.

3 years agoSimplify condition in kbd
Stefan Kangas [Sat, 16 Oct 2021 20:09:54 +0000 (22:09 +0200)]
Simplify condition in kbd

* lisp/subr.el (kbd): Simplify condition.  This was discussed in:
https://lists.gnu.org/r/emacs-devel/2021-10/msg01136.html

3 years agoUpdate to Org 9.5-57-g9bc3a2
Kyle Meyer [Sat, 16 Oct 2021 18:01:34 +0000 (14:01 -0400)]
Update to Org 9.5-57-g9bc3a2

3 years ago; Merge from origin/emacs-28
Glenn Morris [Sat, 16 Oct 2021 16:18:37 +0000 (09:18 -0700)]
; Merge from origin/emacs-28

The following commit was skipped:

1dfe9d6285 (origin/emacs-28) Recommend against using uce.el

3 years agoMerge from origin/emacs-28
Glenn Morris [Sat, 16 Oct 2021 16:18:37 +0000 (09:18 -0700)]
Merge from origin/emacs-28

e8488808df Avoid aborts when a thread is signaled while "waiting for ...
21397cce51 Improve documentation string for 'compilation-error-regexp...
2971a6890f * lisp/emacs-lisp/comp.el (comp-trampoline-compile): Fix t...
e842d7f29a Fix removal of fringe indication of bookmarks
b5a0eda978 Prefer "graphical displays" to "X terminals" in documentation
4ad0fc0dd0 Precise documentation of file-notify-add-watch
f5b8df14c6 Fixes to account for windows' tab lines
ced72b6e4c * Fix `native-compile-target-directory' effectiveness on t...
502788bc3d Add missing single quotes in the Emacs manual
1af45ad04e ; * lisp/emacs-lisp/comp.el (comp-trampoline-compile): Fix...
12654b7423 * lisp/menu-bar.el (yank-menu-length): Fix docstring (bug#...

# Conflicts:
# lisp/gnus/gnus-undo.el
# lisp/menu-bar.el

3 years agoSet EMACS_TEST_TIMEOUT for emba
Michael Albinus [Sat, 16 Oct 2021 16:08:25 +0000 (18:08 +0200)]
Set EMACS_TEST_TIMEOUT for emba

* test/Makefile.in: Support EMACS_TEST_TIMEOUT environment variable.

* test/README: Mention EMACS_TEST_TIMEOUT environment variable.

* test/infra/gitlab-ci.yml (variables): Set default value of
EMACS_TEST_TIMEOUT.
(.job-template): Propagate EMACS_TEST_TIMEOUT and EMACS_TEST_VERBOSE.
(test-all-inotify): Set specific EMACS_TEST_TIMEOUT.

3 years agoAdd new function 'kbd-valid-p'
Lars Ingebrigtsen [Sat, 16 Oct 2021 15:50:36 +0000 (17:50 +0200)]
Add new function 'kbd-valid-p'

* doc/lispref/keymaps.texi (Key Sequences): New function
'kbd-valid-p'.

* lisp/subr.el (kbd-valid-p): Document it.

3 years agoFix :version of new faces in term.el
Michael Albinus [Sat, 16 Oct 2021 15:23:57 +0000 (17:23 +0200)]
Fix :version of new faces in term.el

* lisp/term.el (term-faint, term-italic, term-slow-blink)
(term-fast-blink): Set proper :version.

3 years agoRemove duplicate code in edmacro-parse-keys
Stefan Kangas [Wed, 13 Oct 2021 20:54:47 +0000 (22:54 +0200)]
Remove duplicate code in edmacro-parse-keys

* lisp/subr.el (kbd): Add argument NEED-VECTOR and make it suitable
for calling from 'edmacro-parse-keys'.
* lisp/edmacro.el (edmacro-parse-keys): Replace definition with a
call to 'kbd'.

This change was discussed in:
https://lists.gnu.org/r/emacs-devel/2021-10/msg00909.html