]> git.eshelyaron.com Git - emacs.git/log
emacs.git
3 years agoAdjust ispell-look-command type
Lars Ingebrigtsen [Tue, 28 Sep 2021 06:06:31 +0000 (08:06 +0200)]
Adjust ispell-look-command type

* lisp/textmodes/ispell.el (ispell-look-command): Adjust :type
after previous change.

3 years agoFix search of the look program
André A. Gomes [Tue, 28 Sep 2021 05:51:14 +0000 (07:51 +0200)]
Fix search of the look program

* lisp/textmodes/ispell.el (ispell-look-command): Fix logic
concerning the existence of the look program (bug#50852) -- search
through the executable path.
(ispell-look-p): Adjust logic.

3 years agoUse ert-resource-file in the shorthand tests
Lars Ingebrigtsen [Tue, 28 Sep 2021 04:49:03 +0000 (06:49 +0200)]
Use ert-resource-file in the shorthand tests

Also move to the standard directory naming.

3 years agocheckdoc: Allow Lisp symbols to start a message
Stefan Kangas [Sat, 25 Sep 2021 23:20:55 +0000 (01:20 +0200)]
checkdoc: Allow Lisp symbols to start a message

* lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine): Allow
Lisp symbols to start a message.
(checkdoc--error-bad-format-p): New helper function.

* test/lisp/emacs-lisp/checkdoc-tests.el
(checkdoc-test-error-format-is-good)
(checkdoc-test-error-format-is-bad): New helper functions.
(checkdoc-tests-error-message-bad-format-p)
(checkdoc-tests-error-message-bad-format-p/defined-symbols)
(checkdoc-tests-error-message-bad-format-p/not-capitalized):
New tests.

3 years agoMake .eln files executable on Cygwin
Ken Brown [Mon, 27 Sep 2021 18:46:41 +0000 (14:46 -0400)]
Make .eln files executable on Cygwin

* Makefile.in (INSTALL_ELN): New variable, equal to $(INSTALL) on
Cygwin and $(INSTALL_DATA) on other platforms.
(install-eln): Use INSTALL_ELN instead of INSTALL_DATA.
(Bug#50818)

3 years ago; Still more instrumentation on autorevert-tests.el
Michael Albinus [Mon, 27 Sep 2021 18:36:12 +0000 (20:36 +0200)]
; Still more instrumentation on autorevert-tests.el

3 years agoSimplify `file-notify--rm-descriptor'
Michael Albinus [Mon, 27 Sep 2021 18:35:31 +0000 (20:35 +0200)]
Simplify `file-notify--rm-descriptor'

* lisp/filenotify.el (file-notify--rm-descriptor):
Use `file-notify-handle-event'.

3 years ago; * etc/NEWS: fix errors in previous changes
Robert Pluim [Mon, 27 Sep 2021 16:28:11 +0000 (18:28 +0200)]
; * etc/NEWS: fix errors in previous changes

3 years ago* lisp/mouse.el (context-menu-region): Check for nil for char-after at eobp.
Juri Linkov [Mon, 27 Sep 2021 15:41:34 +0000 (18:41 +0300)]
* lisp/mouse.el (context-menu-region): Check for nil for char-after at eobp.

3 years ago* lisp/progmodes/flymake.el (flymake-menu): Don't use obsolete name.
Mattias Engdegård [Mon, 27 Sep 2021 14:00:32 +0000 (16:00 +0200)]
* lisp/progmodes/flymake.el (flymake-menu): Don't use obsolete name.

3 years agoFix GNUstep build failure
Alan Third [Mon, 27 Sep 2021 13:23:02 +0000 (14:23 +0100)]
Fix GNUstep build failure

* src/nsfns.m (Fns_hide_emacs): NSRunningApplication is only available
in GNUstep 0.27 and above.

3 years agoDocument 'glyphless-char-display-control' changes
Robert Pluim [Mon, 27 Sep 2021 12:42:18 +0000 (14:42 +0200)]
Document 'glyphless-char-display-control' changes

* etc/NEWS: Document 'glyphless-char-display-control' changes for
Variation Selectors.

3 years agoTry to be consistent about user options in NEWS
Robert Pluim [Mon, 27 Sep 2021 12:37:28 +0000 (14:37 +0200)]
Try to be consistent about user options in NEWS

* etc/NEWS: Try to be consistent about calling 'user options' that
instead of 'variables'.

3 years agoFix resizing glitches in NS port (bug#50413)
Alan Third [Mon, 27 Sep 2021 12:33:49 +0000 (13:33 +0100)]
Fix resizing glitches in NS port (bug#50413)

* src/nsterm.m ([EmacsView resizeWithOldSuperviewSize:]): Use the
superview's size instead of trusting the view's size.

3 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Mon, 27 Sep 2021 12:28:50 +0000 (14:28 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

3 years ago; More instrumentation in autorevert-tests.el
Michael Albinus [Mon, 27 Sep 2021 12:28:32 +0000 (14:28 +0200)]
; More instrumentation in autorevert-tests.el

* test/lisp/autorevert-tests.el
(auto-revert-test--instrument-kill-buffer-hook): New defun.
(auto-revert-test05-global-notify): More instrumentation.

3 years ago; Update some links to HTTPS and note some broken links
Stefan Kangas [Mon, 27 Sep 2021 10:40:04 +0000 (12:40 +0200)]
; Update some links to HTTPS and note some broken links

3 years agoAttempt to debug a graphical glitch on macOS
Alan Third [Mon, 27 Sep 2021 09:50:02 +0000 (10:50 +0100)]
Attempt to debug a graphical glitch on macOS

* src/nsterm.m (ns_scroll_run):
(ns_shift_glyphs_for_insert): Switch to using NSPoint for destination.
([EmacsView copyRect:to:]): Use NSPoint for the destination, always
use the view's layer, and log any questionable copy requests.

3 years agoFix NS toolbar again (bug#50534)
Alan Third [Sun, 26 Sep 2021 10:12:48 +0000 (11:12 +0100)]
Fix NS toolbar again (bug#50534)

* src/nsmenu.m (free_frame_tool_bar): Remove toolbar.
(update_frame_tool_bar_1): New function.
(update_frame_tool_bar): Move most of the functionality to
update_frame_tool_bar_1.
* src/nsterm.h: Definitions of functions and methods.
* src/nsterm.m (ns_update_begin):
([EmacsView windowDidEnterFullScreen]):
([EmacsView windowDidExitFullScreen]): We no longer need to reset the
toolbar visibility as that's done when we create the new fullscreen
window.
([EmacsWindow initWithEmacsFrame:fullscreen:screen:]): Move the check
for undecorated frames into createToolbar:.
([EmacsWindow createToolbar:]): Check whether a toolbar should be
created, and run the toolbar update immediately.

3 years agoFix automatic filling of docstring in cl-defstruct
Stefan Kangas [Mon, 27 Sep 2021 09:26:31 +0000 (11:26 +0200)]
Fix automatic filling of docstring in cl-defstruct

* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix bug where a paragraph
was filled as if it were a single line, which led to garbled
output in the docstring.  (Bug#50839)

* test/lisp/subr-tests.el
(subr-test-internal--format-docstring-line): New test.

3 years agoMinor fix in 'w32-find-non-USB-fonts'
Eli Zaretskii [Mon, 27 Sep 2021 09:28:54 +0000 (12:28 +0300)]
Minor fix in 'w32-find-non-USB-fonts'

* lisp/term/w32-win.el (w32--filter-USB-scripts): Handle
representative characters given as a vector, not a list.

3 years ago; Fix compilation of doc/lispref/symbols.texi.
Basil L. Contovounesios [Mon, 27 Sep 2021 09:20:54 +0000 (10:20 +0100)]
; Fix compilation of doc/lispref/symbols.texi.

3 years ago* etc/NEWS (Shorthands for Lisp symbols): Reword.
João Távora [Mon, 27 Sep 2021 09:19:35 +0000 (10:19 +0100)]
* etc/NEWS (Shorthands for Lisp symbols): Reword.

3 years agoEnhance font_range to check for emoji composition triggers
Robert Pluim [Sun, 26 Sep 2021 15:26:22 +0000 (17:26 +0200)]
Enhance font_range to check for emoji composition triggers

If the codepoint that triggered composition is from the emoji script,
use the emoji font to check the string being composed, rather than the
font of the first character of the string.  This makes e.g.

"emoji codepoint with Emoji_Presentation = No followed by VS-16 (FE0F)"

display the emoji version of the glyph for that codepoint.

* admin/unidata/blocks.awk: Add VS-1 through VS-16 to the emoji
script.
* src/composite.c (autocmp_chars): Accept additional argument CH for
the codepoint that triggered composition, pass it to font_range.
(composition_reseat_it, find_automatic_composition): Pass codepoint
that triggered composition to autocmp_chars.
* src/font.c (font_range): Accept additional argument CH for the
triggering codepoint.  If the codepoint is from the 'emoji' script,
use Vscript_representative_chars to find the font to use for the
composition attempt.
(syms_of_font): Add Qemoji symbol.
* src/font.h: Update font_range prototype for argument CH.
* etc/NEWS: Announce change.

3 years agoFix checkdoc-related test failure
Lars Ingebrigtsen [Mon, 27 Sep 2021 07:33:56 +0000 (09:33 +0200)]
Fix checkdoc-related test failure

3 years agoFix two doc-related test failures
Lars Ingebrigtsen [Mon, 27 Sep 2021 07:28:34 +0000 (09:28 +0200)]
Fix two doc-related test failures

3 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Michael Albinus [Mon, 27 Sep 2021 07:22:10 +0000 (09:22 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs

3 years agoOptimize emba builds
Michael Albinus [Mon, 27 Sep 2021 07:21:53 +0000 (09:21 +0200)]
Optimize emba builds

* test/infra/Dockerfile.emba (emacs-base): Install also
libdbus-1-dev and libacl1-dev.

* test/infra/gitlab-ci.yml (prep-image-base): Comment out.  This
stage is activated by default in Dockerfile.emba.

3 years agoMinor stylistic fixes of shorthand code in C
Eli Zaretskii [Mon, 27 Sep 2021 07:20:54 +0000 (10:20 +0300)]
Minor stylistic fixes of shorthand code in C

* src/lread.c (oblookup_considering_shorthand): Now static.  Move
prototype to where it belongs.
(read1, Fintern, Fintern_soft, Funintern)
(oblookup_considering_shorthand, syms_of_lread): Fix style of
braces and indentation, comments, and doc strings.

3 years agoMinor fixes of Lisp doc strings for shorthands feature
Eli Zaretskii [Mon, 27 Sep 2021 06:49:28 +0000 (09:49 +0300)]
Minor fixes of Lisp doc strings for shorthands feature

* lisp/progmodes/elisp-mode.el (obarray-cache)
(elisp--completion-local-symbols):
* lisp/international/mule.el (hack-elisp-shorthands)
(load-with-shorthands-and-code-conversion): Doc string fixes.

3 years agoMinor fixes in documentation of shorthands
Eli Zaretskii [Mon, 27 Sep 2021 06:37:33 +0000 (09:37 +0300)]
Minor fixes in documentation of shorthands

* etc/NEWS:
* doc/lispref/symbols.texi (Symbol Components, Creating Symbols)
(Shorthands): Improve wording, fix indexing and typos.

3 years agoMake comint understand the ccrypt password phrases
Lars Ingebrigtsen [Mon, 27 Sep 2021 06:15:24 +0000 (08:15 +0200)]
Make comint understand the ccrypt password phrases

* lisp/comint.el (comint-password-prompt-regexp): Add the ccrypt
confirmation phrase (bug#50837).

* lisp/international/mule-conf.el (password-word-equivalents): Add
the ccrypt phrases.

3 years agoAdd "passwd" (change password) prompt to comint
Lars Ingebrigtsen [Mon, 27 Sep 2021 05:55:37 +0000 (07:55 +0200)]
Add "passwd" (change password) prompt to comint

* lisp/comint.el (comint-password-prompt-regexp): Add "passwd" (to
change the password) first promp in Debian bullseye.

3 years agoNote that the Packaging sub-nodes are mostly for maintainers
Lars Ingebrigtsen [Mon, 27 Sep 2021 04:12:53 +0000 (06:12 +0200)]
Note that the Packaging sub-nodes are mostly for maintainers

* doc/lispref/package.texi (Packaging): Note that the information
is mostly for ELPA maintainers (bug#50825).

3 years agoGet a `package-test-signed` to work again
dickmao [Sun, 26 Sep 2021 19:48:04 +0000 (15:48 -0400)]
Get a `package-test-signed` to work again

The test signing key succumbed to either expiration or bitrot.
I hope I didn't just publish my secret key to the world.

* test/lisp/emacs-lisp/package-resources/key.pub: Refresh.
* test/lisp/emacs-lisp/package-resources/key.sec: Refresh.

3 years agoMove test-cl-flet-indentation to the right file
Lars Ingebrigtsen [Mon, 27 Sep 2021 03:57:04 +0000 (05:57 +0200)]
Move test-cl-flet-indentation to the right file

3 years agoImprove describe-char buffer extremely slightly
Lars Ingebrigtsen [Sun, 26 Sep 2021 07:05:38 +0000 (09:05 +0200)]
Improve describe-char buffer extremely slightly

* lisp/descr-text.el (describe-char): Add a colon to further
signify that we're talking about the following line (bug#50795).

3 years agoDocument shorthands in the Elisp manual section on Symbols
João Távora [Thu, 23 Sep 2021 16:45:24 +0000 (17:45 +0100)]
Document shorthands in the Elisp manual section on Symbols

* doc/lispref/symbols.texi (Symbol Components): Mentione "Shorthands".
(Creating Symbols): Mention shorthands.  Correct references to Common
Lisp.
(Shorthands): New section.

* etc/NEWS (Shorthands): New entry.

3 years agoAdd #_ reader macro to escape shorthand renaming
João Távora [Wed, 22 Sep 2021 22:53:15 +0000 (23:53 +0100)]
Add #_ reader macro to escape shorthand renaming

* src/lread.c (read1): Add skip_shorthand variable.  Add a '#_'
case.  If skip_shorthand call oblookup instead of
oblookup_considering_shorthand.

* test/lisp/progmodes/elisp-mode-tests.el
(elisp-shorthand-escape): New test.

* test/lisp/progmodes/elisp-resources/simple-shorthand-test.el
(#_f-test4---): New fixture function.

3 years agoConsider shorthands in Elisp's elisp-completion-at-point
João Távora [Tue, 21 Sep 2021 21:20:17 +0000 (22:20 +0100)]
Consider shorthands in Elisp's elisp-completion-at-point

Instead of referencing obarray directly, that function has to consider
a collection of completions which includes the shorthand versions of
some of the symbols.  That collection changes from buffer to buffer,
depending on the choice of elisp-shorthands.

To make this process efficient, and avoid needless recalculation of
the above collection, a new obarray-specific cache was invented.  The
Elisp variable obarray-cache is immediately nullified if something
touches the obarray.

* lisp/progmodes/elisp-mode.el : New helper.
(elisp-completion-at-point): Use new helpers.
(elisp--completion-local-symbols)
(elisp--fboundp-considering-shorthands)
(elisp--bboundp-considering-shorthands): New helpers

* src/lread.c (intern_driver): Nullify Qobarray_cache.
(syms_of_lread): Add Qobarray_cache.

* test/lisp/progmodes/elisp-mode-tests.el
(elisp-shorthand-completion-at-point): New test.

* test/lisp/progmodes/elisp-resources/simple-shorthand-test.el
(f-test-complete-me): New fixture.

3 years agoRework Elisp shorthands to only allow only prefix substitution
João Távora [Wed, 23 Dec 2020 19:57:27 +0000 (19:57 +0000)]
Rework Elisp shorthands to only allow only prefix substitution

This simplification in requirements makes for more complex C code but
that code is much less wasteful in Lisp strings than the previous
implementation.

* src/lread.c (read1): Rework.
(Fintern): Rework.
(Fintern_soft): Rework.
(Funintern): Rework.
(oblookup_considering_shorthand): Rewrite.

* test/lisp/progmodes/elisp-mode-tests.el (elisp-shorthand-read-buffer)
(elisp-shorthand-read-from-string): Use new format of
elisp-shorthands.

* test/lisp/progmodes/elisp-resources/simple-shorthand-test.el (f-test)
(f-test2, f-test3): Use new form of elisp-shorthands.

3 years agoMove most of the shorthand implementation to C code
João Távora [Sat, 19 Sep 2020 21:16:38 +0000 (22:16 +0100)]
Move most of the shorthand implementation to C code

It passes the tests designed for the previous Elisp implementation.

Likely, this isn't the final form of the implementation.  For one, the
reader is much slower and allocates a Lisp string for every atom read,
regardless if its already interned or not.  This has the potential to
be catastrophic in terms of GC.

Also rename the main variable to elisp-shorthands, from the
repetitive shorthand-shorthands.

For some reason, I had to put 'hack-elisp-shorthands' and
'load-with-shorthands-and-code-conversion', the new source-file
loading functions, in lisp/international/mule.el.

Otherwise, lisp/loadup.el wouldn't see them, for some reason that I
didn't investigate.  This should probably be fixed.

* lisp/shorthand.el: Remove.

* test/lisp/shorthand-tests.el: Remove.

* src/lread.c:
(read1, Fintern, Fintern_soft, Funintern): Use
oblookup_considering_shorthand.
(oblookup_considering_shorthand): New helper.
(syms_of_lread): Declare elisp-shorthands.

* lisp/progmodes/elisp-mode.el (elisp-shorthands):
Put a safe-local-variable spec.

* test/lisp/progmodes/elisp-mode-tests.el (elisp-shorthand-read-buffer)
(elisp-shorthand-read-from-string)
(elisp-shorthand-byte-compile-a-file)
(elisp-shorthand-load-a-file): New tests.

* test/lisp/progmodes/elisp-resources/simple-shorthand-test.el: New file

* lisp/loadup.el (load-source-file-function): Set to
load-with-shorthands-and-code-conversion.

* lisp/international/mule.el (hack-elisp-shorthands): Move here.
(load-with-shorthands-and-code-conversion): And here.

3 years agoFirst Elisp version of lisp/shorthand.el, failing some tests
João Távora [Wed, 26 Aug 2020 20:29:15 +0000 (21:29 +0100)]
First Elisp version of lisp/shorthand.el, failing some tests

* lisp/shorthand.el: New file

* test/lisp/shorthand-tests.el: New file

3 years agoAdd 'doc-string' declaration to defcalcmodevar
Stefan Kangas [Sun, 26 Sep 2021 18:56:36 +0000 (20:56 +0200)]
Add 'doc-string' declaration to defcalcmodevar

* lisp/calc/calc.el (defcalcmodevar): Add 'doc-string' declaration.

3 years agoMove two incorrectly named test files
Stefan Kangas [Sun, 26 Sep 2021 18:34:34 +0000 (20:34 +0200)]
Move two incorrectly named test files

* test/lisp/emacs-lisp/tabulated-list-test.el: Move from here...
* test/lisp/emacs-lisp/tabulated-list-tests.el: ...to here.
* test/lisp/url/url-handlers-test.el: Move from here...
* test/lisp/url/url-handlers-tests.el: ...to here.

3 years agocheckdoc: Don't add "Commentary" header to test files
Stefan Kangas [Sun, 26 Sep 2021 18:20:20 +0000 (20:20 +0200)]
checkdoc: Don't add "Commentary" header to test files

* lisp/emacs-lisp/checkdoc.el (checkdoc-file-comments-engine):
Don't add "Commentary:" header if it looks like a test file.

3 years agoAdd glyphless-char-display-control for Variation Selectors
Robert Pluim [Fri, 24 Sep 2021 12:13:24 +0000 (14:13 +0200)]
Add glyphless-char-display-control for Variation Selectors

* lisp/international/characters.el (update-glyphless-char-display):
(glyphless-char-display-control): Add control knob for U+FE00 through
U+FE0F, defaulting to 'thin-space'.
* doc/lispref/display.texi (Glyphless Chars): Document it.

3 years agoExplicitly make the rest of erc-compat.el obsolete
Stefan Kangas [Sun, 26 Sep 2021 16:14:27 +0000 (18:14 +0200)]
Explicitly make the rest of erc-compat.el obsolete

* lisp/obsolete/erc-compat.el (erc-decode-coding-string)
(erc-encode-coding-string, erc-set-write-file-functions)
(erc-emacs-build-time, erc-replace-match-subexpression-in-string)
(erc-member-if, erc-delete-if, erc-remove-if-not, erc-subseq):
Explicitly declare obsolete.
(erc-define-minor-mode): Make into obsolete function alias for
'define-minor-mode'.
(erc-user-emacs-directory): Make into obsolete variable alias for
'user-emacs-directory'.

3 years ago; Minor stylistic checkdoc fixes in test/**/*.el
Stefan Kangas [Sat, 25 Sep 2021 23:53:56 +0000 (01:53 +0200)]
; Minor stylistic checkdoc fixes in test/**/*.el

3 years ago; Clarify and simplify time-stamp comments
Stephen Gildea [Sun, 26 Sep 2021 15:23:29 +0000 (08:23 -0700)]
; Clarify and simplify time-stamp comments

* lisp/time-stamp.el (time-stamp-end, time-stamp-string-preprocess,
time-stamp-formatz-from-parsed-options): Simplify doc.
* test/lisp/time-stamp-tests.el (time-stamp-custom-pattern):
Refactor to set limit-number only once.

3 years ago; Fix some recent fixes to doc strings
Eli Zaretskii [Sun, 26 Sep 2021 13:50:11 +0000 (16:50 +0300)]
; Fix some recent fixes to doc strings

* lisp/whitespace.el (whitespace-empty-at-bob-regexp):
* lisp/vc/vc-dir.el (vc-dir-child-files-and-states):
* lisp/vc/vc-annotate.el
(vc-annotate-show-changeset-diff-revision-at-line):
* lisp/vc/ediff.el (ediff-merge-with-ancestor-command):
* lisp/gnus/nnvirtual.el (nnvirtual-update-xref-header)
(nnvirtual-map-article):
* lisp/emulation/viper-init.el (viper-ESC-keyseq-timeout):
* lisp/emulation/viper-cmd.el
(viper-set-parsing-style-toggling-macro):
* lisp/cedet/data-debug.el (data-debug-insert-hash-table-button):
"The first line of a doc string must be a complete sentence."
Also, fix some awkward wording in doc strings while at that.

3 years agoAdd fast-path to ert--explain-string-equal
Stefan Kangas [Sun, 26 Sep 2021 13:29:20 +0000 (15:29 +0200)]
Add fast-path to ert--explain-string-equal

* lisp/emacs-lisp/ert.el (ert--explain-string-equal): Add fast-path to
avoid doing extra work.
Problem reported by Mattias Engdegård <mattiase@acm.org>.

3 years ago* test/infra/gitlab-ci.yml (variables): Set DOCKER_BUILDKIT.
Michael Albinus [Sun, 26 Sep 2021 13:28:17 +0000 (15:28 +0200)]
* test/infra/gitlab-ci.yml (variables): Set DOCKER_BUILDKIT.

3 years agoRename "Homepage" field to "Website" in package description
Stefan Kangas [Sun, 26 Sep 2021 12:32:58 +0000 (14:32 +0200)]
Rename "Homepage" field to "Website" in package description

* lisp/emacs-lisp/package.el (describe-package-1): Rename
"Homepage" field to "Website".

* test/lisp/emacs-lisp/package-tests.el
(package-test-describe-package)
(package-test-describe-installed-multi-file-package)
(package-test-describe-non-installed-package)
(package-test-describe-non-installed-multi-file-package): Update tests.

3 years agoPrefer https for other domains than gnu.org in package URL
Stefan Kangas [Sun, 26 Sep 2021 12:29:41 +0000 (14:29 +0200)]
Prefer https for other domains than gnu.org in package URL

* lisp/emacs-lisp/package.el (describe-package-1): Prefer https for
some other common domains in the package URL.

3 years agoAdd test for lm-website
Stefan Kangas [Sun, 26 Sep 2021 12:13:03 +0000 (14:13 +0200)]
Add test for lm-website

* lisp/emacs-lisp/lisp-mnt.el (lm-website): Use rx.
* test/lisp/emacs-lisp/lisp-mnt-tests.el
(lm--tests-lm-website): New test.

3 years agoRx documentation touch-ups (bug#46910)
Mattias Engdegård [Sun, 26 Sep 2021 12:36:02 +0000 (14:36 +0200)]
Rx documentation touch-ups (bug#46910)

* doc/lispref/searching.texi (Rx Constructs, Rx Functions):
Add clarifications and improve naming of arguments.  Add examples
illustrating the differences between `rx` and `rx-to-string`.

3 years agoWarn about overly long docstring in lambda
Stefan Kangas [Fri, 24 Sep 2021 17:10:46 +0000 (19:10 +0200)]
Warn about overly long docstring in lambda

* lisp/emacs-lisp/bytecomp.el
(byte-compile-docstring-length-warn): Warn about overly long
docstring in lambda.  (Bug#44858)

(byte-compile--wide-docstring-p): Improve comment.
* test/lisp/emacs-lisp/bytecomp-tests.el
("warn-wide-docstring-defun.el"): Update to test for the above new
warning.

3 years agoAvoid warning about long docstring lines in defcustom
Stefan Kangas [Fri, 24 Sep 2021 15:44:40 +0000 (17:44 +0200)]
Avoid warning about long docstring lines in defcustom

* lisp/custom.el (defcustom): Avoid warning about long docstring
lines.  This was caused by the value of the defcustom being treated as
docstring due to it being wrapped in a lambda.

3 years agoFill some auto-generated docstring lines
Stefan Kangas [Fri, 24 Sep 2021 15:47:35 +0000 (17:47 +0200)]
Fill some auto-generated docstring lines

* lisp/cedet/mode-local.el (define-mode-local-override):
* lisp/cedet/semantic/decorate/mode.el (define-semantic-decoration-style):
* lisp/cedet/semantic/idle.el (define-semantic-idle-service):
* lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
* lisp/emacs-lisp/eieio.el (defclass): Fill auto-generated docstring
lines.

3 years agoAvoid false positives in bytecomp docstring width warning
Stefan Kangas [Fri, 24 Sep 2021 15:45:37 +0000 (17:45 +0200)]
Avoid false positives in bytecomp docstring width warning

* lisp/emacs-lisp/bytecomp.el (byte-compile--wide-docstring-p):
Ignore more function argument lists.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests-byte-compile--wide-docstring-p): New test.

3 years agoImprove filling of generated docstring lines
Stefan Kangas [Fri, 24 Sep 2021 15:47:43 +0000 (17:47 +0200)]
Improve filling of generated docstring lines

* lisp/subr.el (internal--fill-string-single-line): Improve filling to
use full width.  Fix bug where line was not wrapped correctly.

3 years ago; Adjust overly long docstrings to fit 80 characters
Stefan Kangas [Fri, 24 Sep 2021 12:46:56 +0000 (14:46 +0200)]
; Adjust overly long docstrings to fit 80 characters

3 years agoert: Add basic explainer for string-equal
Stefan Kangas [Sun, 26 Sep 2021 11:18:29 +0000 (13:18 +0200)]
ert: Add basic explainer for string-equal

* lisp/emacs-lisp/ert.el (ert--explain-string-equal): Add basic
explainer for 'string-equal' based on 'ert--explain-equal'.

3 years agoUnbreak ert tests
Stefan Kangas [Sun, 26 Sep 2021 11:17:38 +0000 (13:17 +0200)]
Unbreak ert tests

* test/lisp/emacs-lisp/tabulated-list-test.el (tabulated-list-print)
(tabulated-list-sort): Update tests for recent change.

3 years ago; More instrumentation in autorevert-tests.el
Michael Albinus [Sun, 26 Sep 2021 10:40:55 +0000 (12:40 +0200)]
; More instrumentation in autorevert-tests.el

3 years agoDoc fix: mode name in local variables needs no suffix
Stefan Kangas [Sun, 26 Sep 2021 09:28:36 +0000 (11:28 +0200)]
Doc fix: mode name in local variables needs no suffix

* doc/emacs/custom.texi (Specifying File Variables): Clarify that a
mode name does not need the "-mode" suffix.  (Bug#50801)

3 years agocheckdoc: Library footer must match package.el requirement
Stefan Kangas [Sun, 26 Sep 2021 00:02:52 +0000 (02:02 +0200)]
checkdoc: Library footer must match package.el requirement

* lisp/emacs-lisp/checkdoc.el (checkdoc-file-comments-engine):
Don't accept footer format unless it matches the requirement in
package.el.

3 years ago; Improve documentation of 'with-environment-variables'
Eli Zaretskii [Sun, 26 Sep 2021 09:11:56 +0000 (12:11 +0300)]
; Improve documentation of 'with-environment-variables'

* lisp/env.el (with-environment-variables):
* doc/lispref/os.texi (System Environment): Improve the
documentation of 'with-environment-variables'.

3 years agoAdapt Tramp's make-process for macOS.
Michael Albinus [Sun, 26 Sep 2021 08:32:15 +0000 (10:32 +0200)]
Adapt Tramp's make-process for macOS.

* lisp/net/tramp-sh.el (tramp-check-remote-uname): New defun.
(tramp-sh-handle-file-ownership-preserved-p)
(tramp-sh-handle-make-process, tramp-find-executable)
(tramp-find-shell, tramp-get-remote-stat): Use it.  (Bug#50748)

* test/lisp/net/tramp-tests.el (tramp-check-remote-uname): Declare.
(tramp-test29-start-file-process, tramp-test30-make-process):
Instrument for macOS.
(tramp--test-hpux-p): Adapt function.
(tramp--test-macos-p): New defun.

3 years agoExpand the ` doc string slightly
Lars Ingebrigtsen [Sun, 26 Sep 2021 06:47:08 +0000 (08:47 +0200)]
Expand the ` doc string slightly

* lisp/emacs-lisp/backquote.el (backquote): Note that ` is used
for other things in some macros (bug#25462).

3 years agoFix rendering non-ASCII text with links
Lars Ingebrigtsen [Sun, 26 Sep 2021 06:29:38 +0000 (08:29 +0200)]
Fix rendering non-ASCII text with links

* lisp/gnus/mm-view.el (mm-text-html-renderer-alist): Add a new
form for links.
(mm-links-remove-leading-blank): Make obsolete.
(mm-inline-wash-with-file):
(mm-inline-render-with-file): Make obsolete -- they were awkwardly
defined and only used with links.
(mm-inline-render-with-links): New function.

3 years agoAdd new macro with-environment-variables
Lars Ingebrigtsen [Sun, 26 Sep 2021 06:27:51 +0000 (08:27 +0200)]
Add new macro with-environment-variables

* doc/lispref/os.texi (System Environment): Document it.

* lisp/env.el (with-environment-variables): New macro.

3 years agoRevert "; Fix capitalization of F1..F12 keys in docs"
Stefan Kangas [Sat, 25 Sep 2021 20:49:47 +0000 (22:49 +0200)]
Revert "; Fix capitalization of F1..F12 keys in docs"

This reverts commit fe5b20410f68546821e6c87577d7f826167491dc.

This change was not correct; these are Lisp symbols that should be in
lower-case.  Problem reported by Mattias Engdegård <mattiase@acm.org>.

3 years ago; Bump seq version to 2.23
Stefan Kangas [Sat, 25 Sep 2021 19:44:44 +0000 (21:44 +0200)]
; Bump seq version to 2.23

3 years agoRevert part of previous doc fix
Stefan Kangas [Sat, 25 Sep 2021 19:25:58 +0000 (21:25 +0200)]
Revert part of previous doc fix

* lisp/emacs-lisp/derived.el (define-derived-mode): Revert part of
previous doc fix.  This change made the text confusing.  (Bug#17567)

3 years ago* lisp/tab-bar.el (tab-bar-new-tab-to): Use ignore-window-parameters.
Juri Linkov [Sat, 25 Sep 2021 19:24:48 +0000 (22:24 +0300)]
* lisp/tab-bar.el (tab-bar-new-tab-to): Use ignore-window-parameters.

Suggested by Adam Porter <adam@alphapapa.net> in
https://lists.gnu.org/archive/html/emacs-devel/2021-09/msg01758.html

3 years ago* lisp/tab-line.el: Add modified-buffer face
Adam Porter [Fri, 24 Sep 2021 04:47:56 +0000 (04:47 +0000)]
* lisp/tab-line.el: Add modified-buffer face

(tab-line-tab-modified): New face.
(tab-line-tab-face-modified): New function.
(tab-line-tab-face-functions): Use new function.

* etc/NEWS: Update.

3 years ago; Fix capitalization of F1..F12 keys in docs
Stefan Kangas [Sat, 25 Sep 2021 18:51:13 +0000 (20:51 +0200)]
; Fix capitalization of F1..F12 keys in docs

* doc/emacs/custom.texi (Function Keys):
* doc/misc/edt.texi (Unix):
* doc/misc/idlwave.texi (Custom Expression Examination):
* doc/misc/viper.texi (Improved Search, Vi Macros): Fix
capitalization of F1..F12 keys.

3 years ago; * lisp/wid-edit.el (natnum): rectify tag string
Mattias Engdegård [Sat, 25 Sep 2021 18:27:28 +0000 (20:27 +0200)]
; * lisp/wid-edit.el (natnum): rectify tag string

3 years agoFix byte-compiler crash for legal dynamic-binding code
Mattias Engdegård [Sat, 25 Sep 2021 10:15:21 +0000 (12:15 +0200)]
Fix byte-compiler crash for legal dynamic-binding code

This should really be taken care of by a syntax normalisation step in
the frontend, but there is no such step for non-lexbind code yet.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-letX): Tolerate bindingsa
without initialising expressions.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
Add test cases.

3 years ago; * doc/emacs/help.texi (Misc Help): @key{f1} -> @key{F1}
Mattias Engdegård [Sat, 25 Sep 2021 07:09:58 +0000 (09:09 +0200)]
; * doc/emacs/help.texi (Misc Help): @key{f1} -> @key{F1}

3 years agoConstant-propagate variables bound outside loops
Mattias Engdegård [Wed, 22 Sep 2021 09:03:30 +0000 (11:03 +0200)]
Constant-propagate variables bound outside loops

Previously, variables bound outside `while` loops were not substituted
inside even in the absense of mutation.  Add the necessary mutation
checking inside loops to allow propagation of values and aliased
variables.

* lisp/emacs-lisp/byte-opt.el
(byte-optimize--inhibit-outside-loop-constprop): New variable.
(byte-optimize-form-code-walker): First traverse each loop without
substitution to discover mutation, then without restrictions.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-test-loop): New.
(bytecomp-tests--test-cases): Add test cases.

3 years ago; Remove various duplicated words
Mattias Engdegård [Fri, 24 Sep 2021 12:18:57 +0000 (14:18 +0200)]
; Remove various duplicated words

* doc/lispref/searching.texi (Extending Rx):
* doc/lispref/strings.texi (Creating Strings):
* doc/misc/modus-themes.org (Measure color contrast (DIY)):
* etc/NEWS:
* lisp/find-file.el (ff-find-other-file):
* lisp/gnus/gnus-group.el (gnus-group-suspend):
* lisp/progmodes/cc-langs.el (c-ml-string-any-closer-re):
* lisp/progmodes/flymake.el (flymake-list-only-diagnostics):
* lisp/progmodes/xref.el (xref--group-name-for-display):
* lisp/transient.el (transient-child, transient-files)
(transient-infix-value):
* src/alloc.c:
* src/regex-emacs.c (regex_compile):

Remove duplicate words in comments, documentation etc.

3 years agoUse ambient lexical-binding value in ert-deftest body (bug#50738)
Mattias Engdegård [Thu, 23 Sep 2021 12:02:21 +0000 (14:02 +0200)]
Use ambient lexical-binding value in ert-deftest body (bug#50738)

* lisp/emacs-lisp/ert.el (ert-deftest):
Evaluate the body of `ert-deftest` with the `lexical-binding` value of
the source file (or more precisely the value in force when the
definition is evaluated), which is what everyone expected, instead of
always using dynamic binding which is what they got until now.
* test/lisp/emacs-lisp/ert-tests.el
(ert-test-deftest-lexical-binding-t): New test.

3 years agoRenege on anonymous &rest (bug#50268, bug#50720)
Mattias Engdegård [Thu, 23 Sep 2021 10:43:41 +0000 (12:43 +0200)]
Renege on anonymous &rest (bug#50268, bug#50720)

Allowing &rest without a variable name following turned out not to be
very useful, and it never worked properly.  Disallow it.

* lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list):
* src/eval.c (funcall_lambda):
Signal error for &rest without variable name.
* doc/lispref/functions.texi (Argument List): Adjust manual.
* etc/NEWS (file): Announce.
* test/src/eval-tests.el (eval-tests--bugs-24912-and-24913):
Extend test, also checking with and without lexical binding.
(eval-tests-accept-empty-optional-rest): Reduce to...
(eval-tests-accept-empty-optional): ...this, again checking
with and without lexical binding.

3 years agoClarify define-derived-mode docstring
Stefan Kangas [Sat, 25 Sep 2021 16:59:37 +0000 (18:59 +0200)]
Clarify define-derived-mode docstring

* lisp/emacs-lisp/derived.el (define-derived-mode): Doc fixes;
correctly mention that the mode name is used in the mode line, clarify
argument types, and how the mode hook is named.  (Bug17567)

(derived-mode-hook-name, derived-mode-map-name)
(derived-mode-syntax-table-name, derived-mode-abbrev-table-name):
Clarify that argument is a symbol.

3 years ago; Fix typo in ert.texi
Michael Albinus [Sat, 25 Sep 2021 16:50:32 +0000 (18:50 +0200)]
; Fix typo in ert.texi

3 years agoAdd myself as rcirc maintainer
Philip Kaludercic [Sat, 25 Sep 2021 16:32:33 +0000 (18:32 +0200)]
Add myself as rcirc maintainer

3 years ago* rcirc.el (rcirc-sentinel): Use process-status
Philip Kaludercic [Sat, 25 Sep 2021 15:59:52 +0000 (17:59 +0200)]
* rcirc.el (rcirc-sentinel): Use process-status

3 years ago* rcirc.texi (Using rcirc with bouncers): Remove confusing sentence
Philip Kaludercic [Sat, 25 Sep 2021 14:49:26 +0000 (16:49 +0200)]
* rcirc.texi (Using rcirc with bouncers): Remove confusing sentence

3 years ago* rcirc.el (rcirc-reconnect): Use rcirc-reconnect-delay
Philip Kaludercic [Sat, 25 Sep 2021 14:27:12 +0000 (16:27 +0200)]
* rcirc.el (rcirc-reconnect): Use rcirc-reconnect-delay

3 years ago* rcirc.el (rcirc-reconnect): Set rcirc-joined
Philip Kaludercic [Sat, 25 Sep 2021 14:25:03 +0000 (16:25 +0200)]
* rcirc.el (rcirc-reconnect): Set rcirc-joined

3 years ago* lisp/isearch.el (isearch-forward-regexp): Doc fix. (Bug22483)
Stefan Kangas [Sat, 25 Sep 2021 16:07:24 +0000 (18:07 +0200)]
* lisp/isearch.el (isearch-forward-regexp): Doc fix.  (Bug22483)

3 years agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Sat, 25 Sep 2021 15:57:17 +0000 (18:57 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

3 years ago; Another minor improvement in ERT manual
Eli Zaretskii [Sat, 25 Sep 2021 15:56:02 +0000 (18:56 +0300)]
; Another minor improvement in ERT manual

* doc/misc/ert.texi (Running Tests Interactively): State the
function run by each key, per conventions.

3 years agoMinor clarification of define-minor-mode :keymap argument
Stefan Kangas [Sat, 25 Sep 2021 15:54:49 +0000 (17:54 +0200)]
Minor clarification of define-minor-mode :keymap argument

* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Minor doc fix;
clarify by saying that ":keymap" should be an "unquoted variable
name".  (Bug#25505)

3 years ago; * doc/misc/ert.texi (Running Tests Interactively): Fix markup.
Eli Zaretskii [Sat, 25 Sep 2021 15:46:33 +0000 (18:46 +0300)]
; * doc/misc/ert.texi (Running Tests Interactively): Fix markup.

3 years agoButtonize functions in curved quotes in ERC
Stefan Kangas [Sat, 25 Sep 2021 15:03:13 +0000 (17:03 +0200)]
Buttonize functions in curved quotes in ERC

* lisp/erc/erc-button.el (erc-button-alist): Buttonize Emacs
functions in curved quotes.  (Bug#49964)

3 years agoExtend and improve ERT manual section on running interactively
Stefan Kangas [Sat, 25 Sep 2021 14:55:04 +0000 (16:55 +0200)]
Extend and improve ERT manual section on running interactively

* doc/misc/ert.texi (Running Tests Interactively): Format commands in
a table, improve indexing, and add several missing
commands.  (Bug#41829)