Stefan Kangas
d652efcd08
Make 'mapconcat' argument 'separator' optional
...
* src/fns.c (Fmapconcat): Make third 'separator' argument
optional. (Bug#50965)
* doc/lispref/functions.texi (Mapping Functions): Update
documentation for above change.
* test/src/fns-tests.el (fns-tests-mapconcat): New test.
* doc/misc/cl.texi (Obsolete Setf Customization): Don't use third
mapconcat argument in example.
* lisp/emacs-lisp/subr-x.el (string-join): Doc fix.
2021-10-05 15:38:38 +02:00
Lars Ingebrigtsen
4103123806
Change the call convention for `defvar-keymap'
...
* doc/lispref/keymaps.texi (Changing Key Bindings): Adjust
documentation.
* lisp/simple.el (special-mode-map):
* lisp/net/shr.el (shr-map):
* lisp/net/eww.el (eww-link-keymap):
(eww-mode-map):
(eww-submit-map):
(eww-textarea-map):
(eww-bookmark-mode-map):
(eww-history-mode-map):
(eww-buffers-mode-map):
* lisp/gnus/message.el (message-mode-map):
* lisp/gnus/gnus-html.el (gnus-html-image-map):
* lisp/gnus/gnus-eform.el (gnus-edit-form-mode-map):
* lisp/gnus/gnus-dired.el (gnus-dired-mode-map):
* lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map):
Adjust usage of `defvar-keymap'.
* lisp/subr.el (define-keymap, define-keymap--define): Change how
these functions call each other.
(defvar-keymap): Change interface to be more like `define-keymap'.
* lisp/emacs-lisp/lisp-mode.el (lisp-indent--defvar-keymap): Remove.
(lisp-indent-function): Don't use it.
2021-10-05 10:34:37 +02:00
Lars Ingebrigtsen
e498e5be20
Make `memory-report-object-size' work standalone
...
* lisp/emacs-lisp/memory-report.el (memory-report--type-size):
Default to nil so that the test in `memory-report-object-size' works.
(memory-report--set-size): Initialize
memory-report-object-size.
2021-10-05 08:40:58 +02:00
Stefan Kangas
6640942221
Use format-prompt for many more prompts
...
* lisp/bookmark.el (bookmark-completing-read):
* lisp/calc/calc-prog.el (calc-user-define-formula):
* lisp/calc/calc-store.el (calc-permanent-variable):
* lisp/calc/calc-units.el (calc-convert-units)
(calc-convert-exact-units, calc-convert-temperature):
* lisp/cedet/semantic/complete.el
(semantic-complete-read-tag-engine):
* lisp/cus-edit.el (customize-read-group):
* lisp/dired-aux.el (dired-do-chxxx):
* lisp/dired-x.el (dired-mark-unmarked-files):
* lisp/emacs-lisp/debug.el (cancel-debug-on-entry)
(cancel-debug-on-variable-change):
* lisp/emacs-lisp/edebug.el (edebug-cancel-on-entry)
(edebug-remove-instrumentation):
* lisp/epa.el (epa-read-file-name, epa-export-keys):
* lisp/faces.el (read-face-name):
* lisp/format.el (format-decode-buffer, format-decode-region):
* lisp/gnus/gnus-art.el (gnus-read-save-file-name):
* lisp/gnus/gnus-util.el (gnus-completing-read):
* lisp/gnus/message.el (message-check-news-header-syntax):
* lisp/info.el (Info-follow-reference):
* lisp/international/mule-diag.el (describe-font)
(describe-fontset):
* lisp/international/quail.el (quail-show-keyboard-layout):
* lisp/language/cyril-util.el
(standard-display-cyrillic-translit):
* lisp/mail/rmailkwd.el (rmail-read-label):
* lisp/mail/rmailmm.el (rmail-mime-save):
* lisp/mail/rmailout.el (rmail-output-read-file-name):
* lisp/man.el (Man-goto-section, Man-follow-manual-reference):
* lisp/menu-bar.el (emacs-index--prompt):
* lisp/net/ange-ftp.el (ange-ftp-get-passwd):
* lisp/proced.el (proced-send-signal):
* lisp/progmodes/cpp.el (cpp-choose-face):
* lisp/progmodes/ebrowse.el (ebrowse-set-tree-indentation):
* lisp/progmodes/etags.el (visit-tags-table)
(visit-tags-table-buffer):
* lisp/progmodes/grep.el (grep-read-files):
* lisp/progmodes/hideif.el (hide-ifdef-define):
* lisp/progmodes/pascal.el (pascal-goto-defun):
* lisp/progmodes/prolog.el (prolog-read-predicate):
* lisp/progmodes/sql.el (sql-get-login-ext):
* lisp/ses.el (ses-define-local-printer):
* lisp/textmodes/artist.el (artist-figlet-choose-font):
* lisp/textmodes/tex-mode.el (tex-compile):
* lisp/vc/diff.el (diff):
* lisp/vc/ediff-ptch.el (ediff-prompt-for-patch-file):
* lisp/vc/ediff-util.el (ediff-read-file-name):
* lisp/vc/pcvs.el (cvs-mode-mark-on-state):
* lisp/vc/vc.el (vc-diff-build-argument-list-internal)
(vc-revision-other-window, vc-retrieve-tag):
* lisp/wid-edit.el: Prefer format-prompt unconditionally.
* lisp/org/org-capture.el (org-capture-fill-template):
* lisp/org/org-refile.el (org-refile-get-location):
* lisp/progmodes/python.el (python-eldoc-at-point):
* lisp/progmodes/verilog-mode.el (verilog-surelint-off)
(verilog-goto-defun):
* lisp/progmodes/xref.el (xref--read-identifier): Prefer format-prompt
when it is fboundp.
2021-10-05 03:44:56 +02:00
Mattias Engdegård
0f2df36559
Run ERT tests with lexical-binding
bound to t
...
* lisp/emacs-lisp/ert.el (ert-deftest, ert--run-test-internal):
Use t rather than the ambient file value for `lexical-binding` to
avoid bad lexbind coverage by mistake.
2021-10-04 18:11:40 +02:00
Glenn Morris
e0fdb68f8c
Merge from origin/emacs-28
...
3b8dda6c90
Add safety check in x_menu_show
e1fb731393
Tweak x_connection_closed when I/O error
595e506c82
* lisp/erc/erc.el (erc-user-mode): Set "+i" by default.
d00f3d4c05
Port unused decls to C2x
317eb2d5b5
Improve structure of TODO
c0793cd9de
Don't use some obsolete names in documentation
87153cc915
Tweak x_hide_tip for consistency
7e871dcd27
Remove encode_terminal_code UNINITs
2a00634880
Port pdumper.c maybe_unused to C2x
6d9b3c0eaa
Port systhreads.h to C2x
fd274d7d24
Pacify -Wanalyzer-null-argument in lisp_malloc
cc3fc94f09
Pacify gcc 11.2.1 -Wanalyzer-null-argument
d3a832a61a
Simplify hack-read-symbol-shorthands again (bug#50946)
4831426158
Fix recipe for 'native-lisp' directory
0bb42ef803
; * lisp/time-stamp.el (time-stamp-format): Doc string.
732c70a0d9
Simplify socket symlink-attack checking
fc32a3bd95
; * doc/lispref/files.texi (Reading from Files): Fix wording.
3cc77aa976
Clarify (elisp) insert-file-contents with BEG or END not o...
5deeb0947d
* src/Makefile.in: Simplify conditionals.
121a5abeae
Move context-menu selection items Defun/List/Symbol to pro...
0c341e6e84
* lisp/tab-bar.el (tab-bar-detach-tab): Handle frame selec...
931a7276c0
* lisp/tab-line.el (tab-line-format): Add face-modified to...
3863919a00
Fix unmounting in Tramp
7a6d34cd1f
* etc/themes/light-blue-theme.el: Add "Maintainer: emacs-d...
c1b1e1f545
Define HAVE_NATIVE_COMP in src/Makefile.in
137fa2d716
Rename elisp-shorthands to read-symbol-shorthands
e6fbc45b7b
Font-lock shorthands in elisp-mode for quick visual recogn...
17e6f3bee5
; Fix last change in tramp-sshfs.el
3dae1e33d1
Suppress superfluous error messages in Tramp
b228ec9fab
Fix reading the tail of a file in shorthands.el
7fb2789509
Fix substitution of pretty quotes in code in easy-mmode
b47d7ce1b8
Fix agent directory deletion
b1a8a66fb0
; * etc/TODO: Fix previous commit; delete the right thing.
6c01a21365
Clarify the purpose of internal--format-docstring-line
55dadbc57e
* lisp/net/dictionary.el (context-menu-dictionary): Move m...
bb209cd5ab
Update to Org 9.5-30-g10dc9d
4341e79a5f
Remove bogus ":safe t" custom properties
b6f6b593c6
Fix 'apropos-compact-layout'
62d6cecfcd
Remove bogus ":safe nil" custom properties
f9111d8784
The safe-local-variable property is a function (bug#50944)
3dc094abee
; Some minor tweaks to TODO
a5b4356d37
Revert "; * etc/TODO: Move elpa.gnu.org items to the end."
7bc0cee115
Revert "* etc/TODO: Rearrange to start with "Simple tasks"."
3489471417
Fix selection of fonts for Arabic on Posix platforms
13e5943386
; Fix a typo in a doc string
bd60fca2fa
Fix ox-koma-letter compilation warnings
340e527bed
Preload paren.el
a9052248da
Improve documentation of 'shift-select-mode'
d505971894
; Standardize some license headers
9307889d68
Simplify shorthand injection (bug#50946)
5c77cc9584
; * admin/release-branch.txt: Tweak previous.
# Conflicts:
# etc/NEWS
# test/lisp/subr-tests.el
2021-10-04 08:13:11 -07:00
Lars Ingebrigtsen
8b4a6a722a
Add new command 'ensure-empty-lines'.
...
* doc/lispref/text.texi (Commands for Insertion): Document it.
* lisp/emacs-lisp/subr-x.el (ensure-empty-lines): New command.
2021-10-04 13:23:22 +02:00
Lars Ingebrigtsen
192f9357f2
Add 'define-keymap' and 'defvar-keymap'
...
* doc/lispref/keymaps.texi (Changing Key Bindings): Document
define-keymap and defvar-keymap.
* lisp/subr.el (define-keymap): New function.
(define-keymap--define): New function.
(defvar-keymap): New macro.
* lisp/emacs-lisp/lisp-mode.el (lisp-indent--defvar-keymap): New
function.
(lisp-indent-function): Use it to indent defvar-keymap.
2021-10-04 10:15:11 +02:00
Lars Ingebrigtsen
7fb2789509
Fix substitution of pretty quotes in code in easy-mmode
...
* lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): Adjust.
(easy-mmode--mode-docstring): Avoid making quotes into pretty
quotes in code (bug#50968).
2021-10-03 11:35:28 +02:00
Stefan Kangas
6c01a21365
Clarify the purpose of internal--format-docstring-line
...
* test/lisp/subr-tests.el (subr-test-internal--format-docstring-line):
* lisp/subr.el (internal--format-docstring-line): Make it more clear
that this function is not intended for the first line of a docstring.
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Add comment explaining
why we use 'internal--format-docstring-line'.
Problem pointed out by Stefan Monnier <monnier@iro.umontreal.ca>.
2021-10-03 01:59:52 +02:00
Stefan Monnier
58f8c3affc
* lisp/emacs-lisp/cl-generic.el: Fix test/lisp/loadhist-tests
...
Revert 2fcd34f202
which was redundant anyway since e165bf3d4
had fixed it in a better way anyway (a way which doesn't litter the
`load-history`).
2021-10-01 23:53:20 -04:00
Stefan Monnier
2fcd34f202
* lisp/emacs-lisp/cl-generic.el (cl--generic-get-dispatcher): Fix regression
2021-10-01 15:34:09 -04:00
Tassilo Horn
e165bf3d49
; If Invalid function: with-memoization error introduced in 3c972723
2021-10-01 21:15:51 +02:00
Stefan Monnier
3c972723e4
* lisp/emacs-lisp/subr-x.el (with-memoization): New macro
...
Extracted from `cl-generic.el`.
* lisp/emacs-lisp/cl-generic.el (cl--generic-get-dispatcher)
(cl--generic-build-combined-method, cl-generic-generalizers): Use it.
(cl--generic-with-memoization): Delete.
2021-10-01 14:33:37 -04:00
Lars Ingebrigtsen
4b90aacf79
Refactor out ert-test--erts-test
...
* lisp/emacs-lisp/ert.el (ert-test--erts-test): Refactor out the
bulk of the function for easier reuse.
2021-10-01 15:23:32 +02:00
akater
5988d6fa26
Restore the flet indentation fixes
...
* lisp/emacs-lisp/lisp-mode.el (lisp--local-defform-body-p): New
function.
(lisp-indent-function): Use it to fix cl-flet indentation.
2021-10-01 13:25:42 +02:00
Lars Ingebrigtsen
295d552e4e
Allow skipping erts tests
...
* doc/misc/ert.texi (erts files): Document it.
* lisp/emacs-lisp/ert.el (ert-test-erts-file): Allow skipping tests.
2021-10-01 13:20:20 +02:00
Lars Ingebrigtsen
1a65320903
Add new functionality to write buffer-based tests
...
* doc/misc/ert.texi (erts files): New node.
* lisp/files.el (auto-mode-alist): Map .erts to erts-mode.
* lisp/emacs-lisp/ert.el (ert-test-erts-file): New function.
* lisp/emacs-lisp/ert.el (ert--erts-specifications)
(ert--erts-unquote): Helper functions.
* lisp/progmodes/erts-mode.el: New mode and file.
2021-10-01 12:17:47 +02:00
Nikolay Kudryavtsev
8477d3b339
Make checkdoc's docstring substitution consistent with other docs
...
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
In error text, say "mapvar" instead of "keymap", and "command"
instead of "function", to be consistent with the ELisp manual.
(Bug#50903)
2021-09-30 19:24:35 +03:00
Mattias Engdegård
41723a329e
Revert "Indent bodies of local function definitions properly in elisp-mode"
...
This reverts commit 38037e04cb
.
2021-09-30 16:52:16 +02:00
Mattias Engdegård
be493ea67a
Revert "Fix regressions in cl-flet indentation"
...
This reverts commit c42af5aee7
.
2021-09-30 16:52:16 +02:00
akater
c42af5aee7
Fix regressions in cl-flet indentation
...
* lisp/emacs-lisp/lisp-mode.el (lisp--local-defform-body-p):
Rename (from -p-less form) and fix indentation regression
introduced by 38037e04cb
(bug#9622). Also add cl-macrolet cl-flet* cl-symbol-macrolet.
2021-09-30 08:33:14 +02:00
Lars Ingebrigtsen
b4b4cc98ac
Revert "Obsolete local set difference functions in favor of seq-difference"
...
This reverts commit 20f7fa691b
.
gnus-set-difference is orders of magnitude faster than seq-difference
(on these sets), and using seq-difference makes nnimap too
slow.
2021-09-29 17:28:02 +02:00
Lars Ingebrigtsen
c4866ad1ac
Tweak the whitespace before "This is a generic function"
...
* lisp/emacs-lisp/cl-generic.el (cl--generic-describe): Make the
number of blank lines before this section consistent (whether
there's an indented section before it or not).
2021-09-29 08:25:14 +02:00
Stefan Kangas
7cc6e1dda7
Add shortdoc for text properties
...
* lisp/emacs-lisp/shortdoc.el (text-properties): New shortdoc.
e for your changes. Lines starting
2021-09-28 20:45:08 +02:00
Stefan Kangas
ccb35fb8fb
Mention describe-symbol in cl-defstruct docstring
...
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Mention 'describe-symbol'
in docstring.
2021-09-28 18:38:10 +02:00
Stefan Kangas
b9611e9c7e
Mention cl-describe-type in cl-defstruct docstring
...
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Mention
'cl-describe-type' in docstring.
2021-09-28 18:09:36 +02:00
Stefan Monnier
fa92b040c6
* lisp/emacs-lisp/map.el: Restore compatibility with Emacs-26
...
Don't use the new `eql` syntax.
2021-09-28 10:29:27 -04:00
Stefan Kangas
a5b8140d4e
Improve docstrings of ert-resource-{directory,file}
...
* lisp/emacs-lisp/ert-x.el (ert-resource-directory)
(ert-resource-file): Improve docstrings.
2021-09-28 14:32:06 +02:00
Stefan Kangas
b27a8f1554
Signal error on newline in internal--format-docstring-line
...
* lisp/subr.el (internal--format-docstring-line): Signal error
when trying to fill a line containing a newline.
* lisp/cedet/semantic/decorate/mode.el
(define-semantic-decoration-style):
* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Don't pass newlines to 'internal--format-docstring-line'.
2021-09-28 14:15:00 +02:00
Eli Zaretskii
73b2b9f67a
; * lisp/emacs-lisp/comp.el (batch-native-compile): Don't use non-ASCII.
2021-09-28 15:03:38 +03:00
Eli Zaretskii
90655e4bc0
Make the build of source tarball produce *.eln files
...
* lisp/emacs-lisp/comp.el (batch-native-compile): Accept an
optional argument; if non-nil, place the .eln file as appropriate
for building a source tarball.
* doc/lispref/compile.texi (Native-Compilation Functions):
Document the new optional argument of 'batch-native-compile'.
* lisp/Makefile.in (.PHONY, $(THEFILE)n) [HAVE_NATIVE_COMP]: New
targets.
* src/Makefile.in (%.eln) [HAVE_NATIVE_COMP]: New recipe.
(all) [HAVE_NATIVE_COMP]: Add ../native-lisp to prerequisites.
(elnlisp) [HAVE_NATIVE_COMP]: New list of *.eln files.
(../native-lisp) [HAVE_NATIVE_COMP]: New recipe.
* src/verbose.mk.in (AM_V_ELN): New macro.
2021-09-28 15:00:50 +03:00
Eli Zaretskii
b02a7ad263
; * lisp/emacs-lisp/comp.el (batch-native-compile): Doc fix.
2021-09-28 11:18:17 +03:00
Stefan Kangas
3cabf64131
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.
2021-09-28 01:12:36 +02:00
Stefan Kangas
3d2d7e8ea2
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.
2021-09-27 11:47:55 +02:00
Stefan Kangas
77494628e2
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.
2021-09-26 20:23:59 +02:00
Stefan Kangas
b8b1d8dee7
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>.
2021-09-26 15:30:40 +02:00
Stefan Kangas
3bab1476f6
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.
2021-09-26 14:55:19 +02:00
Stefan Kangas
8ea1765fea
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.
2021-09-26 14:55:19 +02:00
Stefan Kangas
a0d5de4fb9
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.
2021-09-26 14:55:19 +02:00
Stefan Kangas
c51b1c02db
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.
2021-09-26 13:33:29 +02:00
Stefan Kangas
8c3ec4e3cc
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.
2021-09-26 13:23:57 +02:00
Stefan Kangas
f3a6fe2c7d
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.
2021-09-26 13:23:57 +02:00
Stefan Kangas
c78e16962e
; Adjust overly long docstrings to fit 80 characters
2021-09-26 13:23:57 +02:00
Stefan Kangas
f4ea15907a
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'.
2021-09-26 13:21:53 +02:00
Stefan Kangas
90948eb9d7
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.
2021-09-26 11:37:29 +02:00
Lars Ingebrigtsen
50798267f2
Expand the ` doc string slightly
...
* lisp/emacs-lisp/backquote.el (backquote): Note that ` is used
for other things in some macros (bug#25462).
2021-09-26 08:47:08 +02:00
Stefan Kangas
c92444b4ba
; Bump seq version to 2.23
2021-09-25 21:44:55 +02:00
Stefan Kangas
822625fde5
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)
2021-09-25 21:27:11 +02:00
Mattias Engdegård
45c32d7f00
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.
2021-09-25 20:25:02 +02:00