Commit graph

2076 commits

Author SHA1 Message Date
Stefan Monnier
9ceb3070e3 * lisp/subr.el (event-start, event-end): Handle (menu-bar) events
* lisp/net/browse-url.el (browse-url-interactive-arg): Simplify accordingly
2021-11-22 14:23:42 -05:00
Stefan Kangas
4a3ba8528b Use substitute-command-keys for literal key sequences
* lisp/abbrev.el (expand-region-abbrevs):
* lisp/calc/calc-graph.el (calc-graph-show-dumb):
* lisp/calc/calc-help.el (calc-help-for-help):
* lisp/calc/calc-mode.el (calc-auto-why):
* lisp/calc/calc.el (calc-do):
* lisp/calculator.el (calculator-mode):
* lisp/dired-aux.el (dired-create-files)
(dired-do-create-files-regexp, dired-create-files-non-directory):
* lisp/dired-x.el (dired-virtual):
* lisp/dired.el (dired-mark-region, dired-unmark-all-files):
* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
* lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
* lisp/epa-ks.el (epa-ks--display-keys):
* lisp/erc/erc.el (erc-toggle-debug-irc-protocol):
* lisp/files.el (save-some-buffers):
* lisp/gnus/gnus-dired.el (gnus-dired-find-file-mailcap)
(gnus-dired-print):
* lisp/gnus/gnus-group.el (gnus-keep-same-level):
* lisp/gnus/gnus-score.el (gnus-score-find-trace):
* lisp/gnus/gnus.el (to-list):
* lisp/gnus/message.el (message--send-mail-maybe-partially):
* lisp/mail/supercite.el (sc-set-variable):
* lisp/minibuffer.el (minibuffer-inactive-mode):
* lisp/progmodes/etags.el (select-tags-table):
* lisp/progmodes/idlw-shell.el (idlwave-shell-mode)
(idlwave-shell-char-mode-loop):
* lisp/replace.el (query-replace-help):
* lisp/simple.el (set-variable):
* lisp/subr.el (read-char-from-minibuffer):
* lisp/textmodes/ispell.el (ispell-help, ispell-message):
* lisp/textmodes/reftex-global.el (reftex-find-duplicate-labels):
* lisp/textmodes/reftex-vars.el
(reftex-toc-include-file-boundaries)
(reftex-toc-include-labels, reftex-toc-include-index-entries)
(reftex-toc-include-context, reftex-toc-follow-mode)
(reftex-index-include-context, reftex-index-follow-mode)
(reftex-enable-partial-scans)
(reftex-auto-update-selection-buffers)
(reftex-highlight-selection):
* lisp/time.el (display-time-update):
* lisp/vc/ediff-help.el (ediff-help-for-quick-help):
* lisp/vc/ediff-init.el (ediff-keep-variants):
* lisp/vc/ediff-ptch.el (ediff-fixup-patch-map)
(ediff-patch-file-internal):
* lisp/windmove.el (windmove-delete-default-keybindings): Use
'substitute-command-keys' for literal key sequences.

* lisp/userlock.el (userlock--fontify-key): Remove function.
(ask-user-about-lock, ask-user-about-lock-help)
(ask-user-about-supersession-threat)
(ask-user-about-supersession-help): Use 'substitute-command-keys' for
literal key sequences.

* lisp/ibuffer.el (ibuffer-unmark-all): Use 'substitute-command-keys'
for command.
2021-11-22 12:04:19 +01:00
Lars Ingebrigtsen
de477ec683 Add new 'keymap-*' functions
* lisp/keymap.el: New file with all the new keymap-* functions.

* lisp/loadup.el ("keymap"): Load.

* lisp/subr.el (kbd): Refactor out all the code to key-parse.
(define-key-after, keyboard-translate, global-set-key)
(local-set-key, global-unset-key, local-unset-key)
(local-key-binding, global-key-binding)
(substitute-key-definition): Note in doc strings that these are
legacy functions.
(define-keymap--define): Use keymap-set.

* lisp/emacs-lisp/byte-opt.el: Remove the optimizations for
defvar-keymap and define-keymap since the macros now only
understand the kbd syntax.
* lisp/emacs-lisp/bytecomp.el (byte-compile-define-keymap)
(byte-compile-define-keymap--define): Warn about invalid key
definitions in all keymap-* functions.

* lisp/emacs-lisp/shortdoc.el (keymaps): Add shortdocs form
keymap* functions.

* src/keymap.c (possibly_translate_key_sequence): Adjust callers
to key-valid-p and key-parse.
(syms_of_keymap): Adjust defs.
2021-11-16 08:26:24 +01:00
Filipp Gunbin
e30cb92db6 * lisp/subr.el (add-hook): Fix adding into hook--depth-alist (bug#51620). 2021-11-11 19:44:27 +03:00
Campbell Barton
5861b8d027 * lisp/subr.el (with-undo-amalgamate): New macro
This allows commands to be made without adding undo-barriers, e.g.
kmacro-exec-ring-item.
2021-11-08 08:34:52 -05:00
Lars Ingebrigtsen
c062c9d4db Expand the kbd-valid-p doc string
* lisp/subr.el (kbd-valid-p): Expand the doc string.
2021-10-31 15:56:37 +01:00
Lars Ingebrigtsen
03366de394 Add new function 'string-pixel-width'
* doc/lispref/display.texi (Size of Displayed Text): Mention it.
* lisp/emacs-lisp/shortdoc.el (string): Mention it.

* lisp/emacs-lisp/subr-x.el (string-pixel-width): New function.
2021-10-27 15:41:32 +02:00
Lars Ingebrigtsen
9ce0008edd Change the with-delayed-message syntax to allow future extensibility
* doc/lispref/display.texi (Progress): Document it.
* lisp/subr.el (with-delayed-message): Change the syntax to allow
future extensibility.

* lisp/net/eww.el (eww-display-html): Use it.
2021-10-25 17:10:34 +02:00
Lars Ingebrigtsen
c2055d41b4 Add new macro `with-delayed-message'
* doc/lispref/display.texi (Progress): Document it.
* lisp/subr.el (with-delayed-message): New macro.

* src/eval.c (with_delayed_message_display)
(with_delayed_message_cancel): Helper functions.
(Ffuncall_with_delayed_message): New function (bug#19776).
2021-10-24 22:21:19 +02:00
Lars Ingebrigtsen
5c996471ba 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.
2021-10-19 04:50:59 +02:00
Lars Ingebrigtsen
595dcf88fd Do kbd-valid-p prefix comparisons case-sensitively
* lisp/subr.el (kbd-valid-p): Compare case-sensitively.
2021-10-18 07:37:08 +02:00
Lars Ingebrigtsen
1638f81f9d Add kbd examples to the doc string
* lisp/subr.el (kbd): Add some examples to the doc string.
2021-10-17 22:27:13 +02:00
Lars Ingebrigtsen
3fa6f72423 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.
2021-10-17 22:14:30 +02:00
Lars Ingebrigtsen
c0f5987ffd Allow <mouse-1> in kbd-valid-p
* lisp/subr.el (kbd-valid-p): Allow (kbd-valid-p "<mouse-1>").
2021-10-17 21:49:43 +02:00
Lars Ingebrigtsen
9e46267755 Rewrite kbd-valid-p to not use seq
* lisp/subr.el (kbd-valid-p): Rewrite to not use seq.
2021-10-17 19:25:59 +02:00
Lars Ingebrigtsen
5a5651a2f9 Fix up recent kbd simplification
* lisp/subr.el (kbd): Fix breakage with X-<foo> from previous change.
2021-10-17 12:56:54 +02:00
Stefan Kangas
ae9bfaa891 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
2021-10-16 22:24:25 +02:00
Lars Ingebrigtsen
4c468c6b3c 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.
2021-10-16 17:50:40 +02:00
Stefan Kangas
8ee63604e3 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
2021-10-16 16:07:03 +02:00
Stefan Kangas
e082a16284 Make kbd usable during bootstrap
* lisp/subr.el (kbd): Make 'kbd' usable during bootstrap by copying
the definition of 'read-kbd-macro' into it, and adjusting it to no
longer use CL-Lib functions.

This change was discussed in:
https://lists.gnu.org/r/emacs-devel/2021-10/msg00909.html
2021-10-16 16:06:55 +02:00
Lars Ingebrigtsen
3b3211c023 Mark def* macros for indentation
* lisp/widget.el (define-widget-keywords):
* lisp/vc/pcvs.el (defun-cvs-mode):
* lisp/subr.el (defvar-local):
(defvar-keymap):
* lisp/skeleton.el (define-skeleton):
* lisp/simple.el (define-alternatives):
* lisp/progmodes/gud.el (gdb-script-mode):
* lisp/progmodes/gdb-mi.el (def-gdb-preempt-display-buffer):
(def-gdb-auto-update-trigger):
(def-gdb-auto-update-handler):
(def-gdb-trigger-and-handler):
(def-gdb-thread-buffer-command):
(def-gdb-thread-buffer-simple-command):
(def-gdb-thread-buffer-gud-command):
(def-gdb-set-positive-number):
(def-gdb-memory-format):
(def-gdb-memory-unit):
(def-gdb-memory-show-page):
* lisp/progmodes/compile.el (define-compilation-mode):
* lisp/progmodes/cc-vars.el (defcustom-c-stylevar):
* lisp/obsolete/cl.el (define-setf-expander):
(defsetf):
(define-modify-macro):
* lisp/obsolete/cl-compat.el (defkeyword):
* lisp/net/hmac-def.el (define-hmac-function):
* lisp/international/mule-conf.el (define-iso-single-byte-charset):
* lisp/international/ccl.el (define-ccl-program):
* lisp/image.el (defimage):
* lisp/gnus/gmm-utils.el (defun-gmm):
* lisp/ezimage.el (defezimage):
* lisp/erc/erc.el (define-erc-module):
* lisp/emacs-lisp/shortdoc.el (define-short-documentation-group):
* lisp/emacs-lisp/eieio.el (defclass):
* lisp/emacs-lisp/eieio-compat.el (defgeneric):
(defmethod):
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
(define-globalized-minor-mode):
* lisp/emacs-lisp/derived.el (define-derived-mode):
* lisp/emacs-lisp/byte-run.el (defsubst):
(define-obsolete-function-alias):
(define-obsolete-variable-alias):
* lisp/custom.el (defcustom):
(defface):
(defgroup):
(deftheme):
* lisp/cedet/semantic/wisent.el (define-wisent-lexer):
* lisp/cedet/semantic/lex.el (define-lex):
(define-lex-analyzer):
(define-lex-regex-analyzer):
(define-lex-simple-regex-analyzer):
(define-lex-block-analyzer):
(define-lex-keyword-type-analyzer):
(define-lex-sexp-type-analyzer):
(define-lex-regex-type-analyzer):
(define-lex-string-type-analyzer):
(define-lex-block-type-analyzer):
* lisp/cedet/semantic/lex-spp.el
(define-lex-spp-macro-declaration-analyzer):
(define-lex-spp-macro-undeclaration-analyzer):
(define-lex-spp-include-analyzer):
* lisp/cedet/semantic/dep.el
(defcustom-mode-local-semantic-dependency-system-include-path):
* lisp/cedet/semantic/decorate/mode.el
(define-semantic-decoration-style):
* lisp/cedet/mode-local.el (define-child-mode):
(define-overloadable-function):
(define-mode-local-override):
* lisp/calc/calc.el (defcalcmodevar):
(defmath): Explicitly mark all macros that have names that start
with "def" that should indent defunly-like (bug#43329).
2021-10-13 21:52:57 +02:00
Lars Ingebrigtsen
43f59b91aa Mark all def* functions that should indent as `defun'
* lisp/abbrev.el (define-abbrev):
(define-abbrev-table): Mark all functions that have names that
start with "def" that should indent according to the current
heuristics (bug#43329).
* lisp/autoinsert.el (define-auto-insert):

* lisp/button.el (define-button-type):

* lisp/subr.el (define-key-after):
(define-mail-user-agent):
(define-keymap):

* lisp/widget.el (define-widget):

* lisp/emacs-lisp/package.el (define-package):

* lisp/international/mule-cmds.el (define-char-code-property):

* lisp/international/mule.el (define-charset):
(define-coding-system):
(define-translation-table):
(define-translation-hash-table):
2021-10-13 21:52:57 +02:00
Lars Ingebrigtsen
6d68fbd57f Add a new after-pdump-load-hook variable
* doc/lispref/internals.texi (Building Emacs): Document it.

* lisp/subr.el (after-pdump-load-hook): New variable.
* src/emacs.c (main): Run the new hook.

* src/pdumper.c (syms_of_pdumper): Define a symbol.
2021-10-12 13:57:52 +02:00
Martin Rudalics
7865bd6782 Have 'while-no-input-ignore-events' handle idle timers too (Bug#49997)
* src/keyboard.c (read_char): Use Vwhile_no_input_ignore_events to
check which idle timers should be resumed (Bug#49997).
(init_while_no_input_ignore_events): New function to
initialize Vwhile_no_input_ignore_events.
(Vwhile_no_input_ignore_events): Say in doc-string that events in
this list do not stop idle timers.
* lisp/subr.el (while-no-input): Remove initialization of
'while-no-input-ignore-events'; do that in keyboard.c now.
2021-10-12 09:53:57 +02:00
Glenn Morris
8aceb37b47 Merge from origin/emacs-28
1a1b206a8b Adapt the recent 'num_processors' change to MS-Windows
7cb4637923 Minor fix to clarify a sentence in emacs-lisp-intro
ab60144ea3 ; Pacify recent shorthand unused lexarg warnings.
e9df86004f Make tty-run-terminal-initialization load the .elc file (i...
07edc28bdb Fix ert errors when there's a test that binds `debug-on-er...
96278de8ac New function num-processors
575e626105 Add symbol property 'save-some-buffers-function' (bug#46374)
a3e10af95c Keep reading when typed RET in read-char-from-minibuffer a...
013e3be832 * lisp/userlock.el (ask-user-about-supersession-threat): A...
ae61d7a57d Fix point positioning on mouse clicks with non-zero line-h...
4c7e74c386 Complete shorthands to longhands for symbol-completing tables
c2513c5d0d Add new failing test for bug#51089
1d1e96377c ; * lisp/emacs-lisp/shortdoc.el: Fix typo.
6bf29072e9 Avoid mapping file names through 'substring'
bcce93f04c Update to Org 9.5-46-gb71474
5d408f1a24 Expanded testing of MH-E with multiple MH variants
b497add971 Fix Seccomp filter for newer GNU/Linux systems (Bug#51073).
75d9fbec88 Tramp code cleanup

# Conflicts:
#	etc/NEWS
#	test/lisp/progmodes/elisp-mode-tests.el
2021-10-11 08:04:57 -07:00
Juri Linkov
a3e10af95c Keep reading when typed RET in read-char-from-minibuffer and y-or-n-p
* lisp/subr.el (read-char-from-minibuffer-map):
Remap exit-minibuffer to read-char-from-minibuffer-insert-other.
(y-or-n-p-map): Remap 'exit' to y-or-n-p-insert-other.
(y-or-n-p): Don't mention RET in docstring.  (Bug#51101)
2021-10-10 20:31:15 +03:00
Glenn Morris
cc202c713b Merge from origin/emacs-28
394209c1a0 (origin/emacs-28) ; Fix indentation in etc/NEWS
81f20e8b89 Fix thinko in ls-lisp--insert-directory
ec9f25bd35 Mention that RET means "yes" in y-or-n-p
00eb21c897 ; * src/dispextern.h (struct glyph_string): Comment on NCH...
20eb3644ba Rewrite Antinews for Emacs 28
3a9b881603 ; * etc/NEWS: Rearrange the "incompatible changes" sections.
ebb7e26013 ; * etc/NEWS: Fix a typo.
315fe20086 ; * src/Makefile.in (../native-lisp): Add comment.
47cbd103f5 * lisp/bindings.el (mode-line-position): Improve tooltip.
35a752863a * lisp/progmodes/xref.el: Bump the version.
bbcd8cc1a9 Slight simplificaiton
e139dd1b1e Fix doc strings of 2 categories
59782839cb (xref--collect-matches-1): Remove some intermediate alloca...
1c7d056f4d ; Fix two typos where em dash was written as en dash

# Conflicts:
#	etc/NEWS
2021-10-09 07:50:36 -07:00
Lars Ingebrigtsen
ec9f25bd35 Mention that RET means "yes" in y-or-n-p
* lisp/subr.el (y-or-n-p): Mention that RET also means yes (bug#51101).
2021-10-09 15:04:18 +02:00
Lars Ingebrigtsen
36d7c4af7c Update inhibit-changing-match-data obsoletion data
* lisp/subr.el (inhibit-changing-match-data): Link to
`save-match-data'.
2021-10-07 21:10:50 +02:00
Lars Ingebrigtsen
a26824e5cb Make 'inhibit-changing-match-data' obsolete and adjust callers
* doc/lispref/searching.texi (Regexp Search):
(POSIX Regexps): Document this.
* lisp/subr.el (inhibit-changing-match-data): Make obsolete.
(looking-at-p): Adjust call.

* lisp/vc/vc-hg.el (vc-hg--raw-dirstate-search):
(vc-hg--ignore-patterns-ignored-p):
(vc-hg--cached-dirstate-search): Don't use
`inhibit-changing-match-data'.

* src/minibuf.c (Ftry_completion):
(Fall_completions):
(Ftest_completion): Adjust Fstring_match calls.

* src/search.c (looking_at_1): Pass in modify_data.
(Flooking_at): Add optional inhibit-modify parameter.
(string_match_1): Pass in modify_data.
(Fstring_match):
(Fposix_looking_at, Fposix_string_match): Add optional
inhibit-modify parameter.
2021-10-07 20:46:50 +02:00
Glenn Morris
2dc88a27a4 Merge from origin/emacs-28
63abe976ce (origin/emacs-28) Document minibuffer-default-prompt-forma...
b5afbedc90 Backward compatibility option for 'nobreak-char-display'
ea1b728a06 ; * lisp/dired.el: Fix typo.
984eafeb98 Unbreak the build after Gnulib update
5946370cd1 Check, whether an FUSE mount has been broken in Tramp
90575a6c0c Disable 'nobreak-char-display' in Eldoc buffers
570e2c9a17 Fix small error in comint-send-input
fd7bb31412 Update documentation of search-whitespace-regexp
1f4ced47a1 Fix cc-compat.el syntax error
b431f54c1b Mention `seq-uniq' in `delete-dups' documentation
0a7bab689c ; Minor stylistic fixes found by checkdoc
e2861e2d08 ; * etc/NEWS: Fix typo.
1a65d49931 Port recent Gnulib changes to MS-Windows
68a256c892 Update from Gnulib
63cb65dcce * Fix mh tests for native comp builds (bug#50975)
e606cc6f40 * Fix `batch-native-compile' not to spawn a subprocess
894dfe70da Fix native-compilation build from tarball on Cygwin
2ce5e08058 Remove U+FE0F from script-representative-chars

# Conflicts:
#	etc/NEWS
2021-10-05 07:50:22 -07: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
Tak Kunihiro
b431f54c1b Mention seq-uniq' in delete-dups' documentation
* doc/lispref/lists.texi (Sets And Lists): Mention `seq-uniq'
(bug#50928).

* lisp/subr.el (delete-dups): Link to `seq-uniq' in doc string.
2021-10-05 09:11:33 +02:00
Lars Ingebrigtsen
19444fb093 Fix syntax error in define-keymap doc string
* lisp/subr.el (define-keymap): Fix syntax error in (fn.
2021-10-04 21:02:23 +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
7b409dfe96 Remove :copy from define-keymap
* doc/lispref/keymaps.texi (Changing Key Bindings): Update
documentation.

* lisp/subr.el (define-keymap):
(define-keymap--define): Remove :copy from the signature.

* lisp/net/eww.el (eww-link-keymap): Use :parent.
2021-10-04 16:37:30 +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
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 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
Stefan Kangas
44da8dd3e4 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.
2021-09-26 13:23:57 +02:00
Lars Ingebrigtsen
7a72358994 Use temporary-file-directory' in with-existing-directory'
* lisp/subr.el (with-existing-directory): Use
`temporary-file-directory' over TMPDIR.
2021-09-25 02:55:55 +02:00
Eli Zaretskii
47376da7e2 ; * lisp/subr.el (match-string): Clarify doc string. 2021-09-23 10:36:59 +03:00
Lars Ingebrigtsen
866c1f56a3 Expand the `match-string' doc string
* lisp/subr.el (match-string): Mention some caveats (bug#34214).
2021-09-23 00:09:47 +02:00
Stefan Kangas
aebba085cb ; More minor stylistic fixes found by checkdoc 2021-09-22 20:26:40 +02:00
Eli Zaretskii
fd77065fc6 Improve recently added documentation
* doc/lispref/lists.texi (Building Lists):
* lisp/subr.el (ensure-list): Avoid passive tense in documenting
'ensure-list'.
2021-09-21 21:51:38 +03:00
Lars Ingebrigtsen
be4f858498 Add new function `ensure-list'
* doc/lispref/lists.texi (Building Lists): Document it.

* lisp/subr.el (ensure-list): New function.

* lisp/emacs-lisp/shortdoc.el (list): Mention it.
2021-09-21 20:31:05 +02:00
Philip Kaludercic
995a623594 Fix dolist-with-progress-reporter behaviour
* subr.el (dolist-with-progress-reporter): Use the length of list
  argument as maximal value the reporter with reach
2021-09-20 01:56:07 +02:00
Phil Sainty
68b190c8b4 ; * lisp/subr.el (setq-local): Fix docstring quotes (bug#50646) 2021-09-19 22:40:12 +12:00
Juri Linkov
4b3dc7a139 * lisp/subr.el (string-replace): Add dashes to arg names (bug#50644)
* lisp/net/tramp-compat.el (tramp-compat-string-replace): Idem.
* doc/lispref/searching.texi (Search and Replace): Idem.
2021-09-18 21:43:18 +03:00
Stefan Kangas
63f419f133 ; Minor stylistic fixes found by checkdoc 2021-09-16 19:37:07 +02:00