summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Don't quote lambdas in several placesStefan Kangas2020-11-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/allout-widgets.el (allout-widgets-adjusting-message) (allout-widgets-exposure-change-processor) (allout-widgets-count-buttons-in-region): * lisp/ansi-color.el (ansi-color-make-color-map): * lisp/case-table.el (describe-buffer-case-table): * lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1): * lisp/gnus/gnus-agent.el (gnus-agent-regenerate-group): * lisp/gnus/nnir.el (nnir-run-swish++, nnir-run-swish-e) (nnir-run-hyrex, nnir-run-namazu): * lisp/hippie-exp.el (make-hippie-expand-function) (try-complete-lisp-symbol, try-complete-lisp-symbol-partially) (try-expand-all-abbrevs): * lisp/international/mule-cmds.el (sort-coding-systems) (select-safe-coding-system, select-message-coding-system) (read-language-name, encoded-string-description): * lisp/international/quail.el (quail-keyseq-translate) (quail-get-translations, quail-build-decode-map) (quail-insert-decode-map): * lisp/jka-compr.el (jka-compr-uninstall): * lisp/locate.el (locate-in-alternate-database): * lisp/mail/mailabbrev.el (mail-resolve-all-aliases-1) (mail-abbrev-make-syntax-table): * lisp/mh-e/mh-seq.el (mh-read-folder-sequences): * lisp/net/eudcb-ldap.el (eudc-ldap-simple-query-internal): * lisp/progmodes/make-mode.el (makefile-query-targets) (makefile-prompt-for-gmake-funargs): * lisp/shadowfile.el (shadow-cancel, shadow-shadows-of): * lisp/sort.el (sort-pages, sort-fields, sort-regexp-fields): * lisp/subr.el (listify-key-sequence): * lisp/term/wyse50.el (terminal-init-wyse50): * lisp/textmodes/ispell.el (ispell-help) (ispell-begin-tex-skip-regexp): * lisp/textmodes/page-ext.el (pages-sort-region): * lisp/textmodes/refer.el (refer-find-entry-in-file): * lisp/url/url-expand.el (url-expand-file-name): Don't quote lambdas.
* | Remove mention of `edebug-on-signal' from a doc stringLars Ingebrigtsen2020-11-121-1/+0
| | | | | | | | | | * lisp/emacs-lisp/edebug.el (edebug-mode): Don't mention non-existent user option (bug#44577).
* | Remove redundant installation instructionsStefan Kangas2020-11-121-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/newsticker.el: * lisp/net/sieve-mode.el: * lisp/play/bubbles.el: * lisp/play/handwrite.el: * lisp/progmodes/python.el: * lisp/progmodes/ruby-mode.el: * lisp/whitespace.el: Remove redundant installation instructions. These packages are distributed with Emacs and/or GNU ELPA. * lisp/calendar/timeclock.el: * lisp/ehelp.el: * lisp/emacs-lisp/checkdoc.el: * lisp/filesets.el: * lisp/mail/reporter.el: * lisp/net/rfc2104.el: * lisp/net/webjump.el: * lisp/pixel-scroll.el: Remove redundant recommendation to call require before using autoloaded functions. * lisp/tar-mode.el: Remove reference to package uncompress, removed in Emacs 23.
* | shortdoc: prefer seq-contains-p over seq-containsBrian Leung2020-11-091-2/+2
| | | | | | | | | | | | | | * lisp/emacs-lisp/shortdoc.el (sequence): use seq-contains-p instead of seq-contains, which is obsolete as of 27.1. (Bug#44536) Copyright-paperwork-exempt: yes
* | Fix pcase rx form snag with '?' and '??' (bug#44532)Mattias Engdegård2020-11-091-1/+1
| | | | | | | | | | | | | | | | This is a regression from Emacs 26. Reported by Phillip Stephani. * lisp/emacs-lisp/rx.el (rx--pcase-transform): Process ? and ?? correctly. * test/lisp/emacs-lisp/rx-tests.el (rx-pcase): Add test case.
* | Clarify Lisp warning about elements following other expressionsLars Ingebrigtsen2020-11-091-2/+2
| | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs): Clarify warning in help text (bug#44482).
* | * lisp/emacs-lisp/lisp-mode.el: Avoid false-positive "hidden arg" in stringsStefan Monnier2020-11-071-2/+5
| | | | | | | | | | | | (lisp--match-hidden-arg): Don't misfire in strings and comments. Reported by: Andrii Kolomoiets <andreyk.mad@gmail.com>
* | Improve display of tabulated list header line labels (bug#44068)Stephen Berman2020-11-042-16/+22
| | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header): Ensure sort indicator appears after the label of any selected sortable column that is wide enough and enable label truncation when narrowing a column. * lisp/emacs-lisp/timer-list.el (timer-list-mode): Improve column alignment. (timer-list--function-predicate): Correct typo in doc string.
* | * lisp-mode.el: Fix missing highlight of "hidden" string argStefan Monnier2020-11-041-2/+4
| | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2) (lisp-cl-font-lock-keywords-2): Highlight "hidden arg" even if it already has another face.
* | Improve ert-resource-directory docstringStefan Kangas2020-11-031-9/+10
| | | | | | | | | | * lisp/emacs-lisp/ert-x.el (ert-resource-directory): Improve docstring.
* | Merge from origin/emacs-27Glenn Morris2020-11-021-1/+2
|\| | | | | | | | | | | | | | | | | | | | | | | 1fc9de4b81 Improve reproducibility of generated -pkg.el files da6234e2df Make sure pixel sizes are zero when setting window size fo... 2d15296db1 Fix failure of 'emacs --daemon' on Cygwin 8abce5b0c6 CC Mode: Only recognize foo (*bar) as a function pointer w... 85d1d8d768 Fix NEWS entry for fix of Bug#44080 2443b15a91 * src/buffer.c (syms_of_buffer) <fill-column>: Improve doc... # Conflicts: # etc/NEWS
| * Improve reproducibility of generated -pkg.el filesGlenn Morris2020-10-301-1/+2
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (package-generate-description-file): Don't include the full name of the source file in the header, since that varies non-reproducibly according to the build directory. https://bugs.debian.org/972861 Note that elpa.gnu.org's admin/archive-contents.el does this by hand and already only includes the nondirectory part.
* | Partially revert previous define-minor-mode changeLars Ingebrigtsen2020-11-021-6/+4
| | | | | | | | | | | | | | * lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): Only document the values we want to support, not the ones we actually support. (define-minor-mode): Partially revert to previous behaviour.
* | * lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): Doc typo.Glenn Morris2020-11-011-1/+1
| |
* | Add missing side-effect-free and error-free propertiesMattias Engdegård2020-11-011-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | Any function that is pure is also side-effect-free and some are also error-free. Right now these have to be declared separately. * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Add bool-vector-count-consecutive, bool-vector-count-population, bool-vector-subsetp, copysign, isnan, lax-plist-get, ldexp, memql, regexp-opt and string-to-syntax. (side-effect-and-error-free-fns): Add type-of. * lisp/subr.el (kbd, string-replace): Declare side-effect-free.
* | * lisp/emacs-lisp/byte-opt.el (pure-fns): Fix typos.Mattias Engdegård2020-11-011-2/+2
| |
* | Make minor mode ARG work as documentedLars Ingebrigtsen2020-11-011-9/+19
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/easy-mmode.el (easy-mmode--arg-docstring): Clarify when minor modes are switched on/off when called from lisp (bug#44341). (define-minor-mode): Make calls from Lisp switch the mode on/off as documented.
* | Doc string clarification for cl-someLars Ingebrigtsen2020-11-011-2/+5
| | | | | | | | | | * lisp/emacs-lisp/cl-extra.el (cl-some): Clarify the return value (bug#44330).
* | 'assoc' is not side-effect-free; constprop its pure subsetMattias Engdegård2020-10-311-6/+8
| | | | | | | | | | | | | | | | | | | | | | Since a supplied test function can do anything, assoc is not side-effect-free (bug#44018). However, with only two arguments it is pure and should be optimised accordingly. * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Remove 'assoc'. (byte-optimize-assoc): Constant-propagate through 2-arg assoc calls. * test/lisp/emacs-lisp/bytecomp-tests.el (byte-opt-testsuite-arith-data): Add test cases.
* | Trim and explain set of safe forms for 'unsafep' (bug#44018)Mattias Engdegård2020-10-311-4/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/unsafep.el: Add comment explaining the policy for which forms can be considered 'safe' in the sense of unsafep. Remove ones that didn't make the cut: play-sound-file (large attack surface) catch, throw (alter program flow, inject data) replace-regexp-in-string (execute arbitary code) error, signal (deceptive messages) * test/lisp/emacs-lisp/unsafep-tests.el (unsafep-tests--unsafe): Add test cases. * etc/NEWS: Announce the change.
* | Shoosh byte-compilation warning in lisp/emacs-lisp/eldoc.elJoão Távora2020-10-301-2/+3
| | | | | | | | | | | | | | | | | | | | Per bug#43609, elisp-eldoc-documentation-function is again in master, but since it's now officially obsoleted, this backward compatibility shim in eldoc--eval-expression-setup shouldn't unnecessarily trigger warnings in master's code. * lisp/emacs-lisp/eldoc.el (eldoc--eval-expression-setup): Shoosh by-compilation warning.
* | Don't make ElDoc doc buffer visible in buffer list by defaultJoão Távora2020-10-301-18/+30
| | | | | | | | | | | | | | | | | | | | Fixes: bug#44334 * lisp/emacs-lisp/eldoc.el (eldoc-doc-buffer): No longer take INTERACTIVE arg. Show buffer if invisible. (eldoc--format-doc-buffer): Don't change buffer visibility. (eldoc-display-in-buffer): Show buffer if invisible if by calling eldoc-doc-buffer.
* | Clarify point position after text-property-searchStefan Kangas2020-10-301-6/+6
| | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/text-property-search.el (text-property-search-forward, text-property-search-backward): Doc fix to clarify placement of point after search. * test/lisp/emacs-lisp/text-property-search-tests.el (text-property-search--pos-test): New defun. (text-property-search-forward-point-at-beginning) (text-property-search-backward-point-at-end): New test.
* | Make list-timers do sub-second timesLars Ingebrigtsen2020-10-301-2/+3
| | | | | | | | | | * lisp/emacs-lisp/timer-list.el (list-timers): Do sub-second times (bug#39956).
* | ; Remove spurious FIXMEs in my last commitStefan Kangas2020-10-301-2/+0
| |
* | Add shortdoc navigation commandsStefan Kangas2020-10-301-3/+53
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/shortdoc.el (text-property-search): Require. (shortdoc-mode): New major mode. (shortdoc-mode-map): New variable. (shortdoc--goto-section): New macro. (shortdoc-next, shortdoc-previous, shortdoc-next-section) (shortdoc-previous-section): New commands. (shortdoc-display-group): Use new shortdoc-models. Propertize section header. (shortdoc--display-function): Propertize function header.
* | ; * lisp/emacs-lisp/shortdoc.el (regexp): less contrived rx exampleMattias Engdegård2020-10-281-1/+1
| |
* | Run substitute-command-keys on shortdoc section headingsStefan Kangas2020-10-281-1/+1
| | | | | | | | | | * lisp/emacs-lisp/shortdoc.el (shortdoc-display-group): Run substitute-command-keys on section headings before displaying.
* | Extend the regexp shortdoc groupStefan Kangas2020-10-281-10/+34
| | | | | | | | | | * lisp/emacs-lisp/shortdoc.el (regexp): New section "Match Data"; add save-match-data. New section "The `rx' Structured Regexp Notation".
* | Display times in a more human-readable way in list-timersLars Ingebrigtsen2020-10-281-18/+19
| | | | | | | | | | * lisp/emacs-lisp/timer-list.el (list-timers): Format the intervals in a more human-readable way (bug#39956).
* | ERT: escape control characters in pretty-printed error outputMattias Engdegård2020-10-271-1/+2
| | | | | | | | | | | | * lisp/emacs-lisp/ert.el (ert--pp-with-indentation-and-newline): Escape control characters which would otherwise be blasted directly to the terminal (when running noninteractively) with unpleasant results.
* | Don't leak result of nested byte-compilation to outer levelPaul Pogonyshev2020-10-271-2/+1
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Bind `byte-compiler-error-flag' instead of setting it (bug#41065). This fixes a problem of "leaking" the flag when compiling something that then compiles something that errors out (i.e., an "inner" compile).
* | Make the -modes variable autoloadedLars Ingebrigtsen2020-10-261-19/+19
| | | | | | | | | | * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Make the -modes variable be autoloaded.
* | Implement a :predicate parameter for globalized minor modesLars Ingebrigtsen2020-10-261-19/+86
| | | | | | | | | | | | | | | | | | * doc/lispref/modes.texi (Defining Minor Modes): Describe the new :predicate keyword (bug#44232). * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode): Allow a new :predicate keyword. (easy-mmode--globalized-predicate-p): New function.
* | Tweak how shortdocs are displayedLars Ingebrigtsen2020-10-261-16/+18
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/shortdoc.el (shortdoc-example): Removed. (shortdoc-section): Remove colors. (shortdoc-separator): New face. (shortdoc-display-group, shortdoc--display-function): Don't use background colours, because that makes things harder to read. Separate with a horizontal line instead.
* | Revert "Don't consider play-sound-file to be a 'safe' function (bug#44018)"Mattias Engdegård2020-10-261-1/+1
| | | | | | | | This reverts commit cdb3c9d662c772ce25ea4d803eccd2c9e6a6ae99.
* | Don't consider play-sound-file to be a 'safe' function (bug#44018)Mattias Engdegård2020-10-261-1/+1
| | | | | | | | | | | | | | | | | | While there are currently no known security holes in play-sound-file, the attack surface is considerable and historically audio file processing has had more than its share of security problems; the benefit to risk ratio is low. * lisp/emacs-lisp/unsafep.el: Don't mark play-sound-file as safe.
* | Add section "Replacing Match" to the regexp shortdoc groupStefan Kangas2020-10-251-0/+7
| | | | | | | | * lisp/emacs-lisp/shortdoc.el (regexp): New section "Replacing Match".
* | Remove some Emacs 19 compat code and referencesStefan Kangas2020-10-251-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/sql.el: * lisp/mh-e/mh-show.el (mh-display-msg): Remove Emacs 19 compat code. * lisp/emacs-lisp/edebug.el (edebug-mark-marker): Make into obsolete alias for mark-marker. (edebug--display-1, edebug-bounce-point) (edebug-outside-excursion): Adjust callers. * lisp/net/snmp-mode.el: * lisp/forms.el: Remove references to Emacs 19. (forms-use-text-properties): Doc fix.
* | Fix problem when replacing the final char in checkdocLars Ingebrigtsen2020-10-251-1/+1
| | | | | | | | | | | | * lisp/emacs-lisp/checkdoc.el (checkdoc-autofix-ask-replace): Ensure that the end-of-doc-string marker is really at the end, even if we replace the final " char in the string (bug#44201).
* | Add shortdoc group for alistStefan Kangas2020-10-251-0/+39
| | | | | | | | * lisp/emacs-lisp/shortdoc.el (alist): New shortdoc group.
* | Add shortdoc group for hash-tableStefan Kangas2020-10-251-0/+31
| | | | | | | | * lisp/emacs-lisp/shortdoc.el (hash-table): New shortdoc group.
* | Rework semantics of eldoc-echo-are-use-multiline-pJoão Távora2020-10-241-57/+61
| | | | | | | | | | | | | | | | | | | | Per bug#43543. Now uses logical lines, not visual lines. * lisp/emacs-lisp/eldoc.el (eldoc-echo-area-use-multiline-p): Rework semantics. (eldoc--echo-area-substring): New helper. (eldoc--echo-area-prefer-doc-buffer-p): New helper. (eldoc-display-in-echo-area): Rework using new helpers.
* | Rename ElDoc user option controlling display of truncation noticeJoão Távora2020-10-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new name makes it consistent with other variables controlling the display of ElDoc documentation in the echo area. Per bug#43543. * etc/NEWS (Eldoc): Rename eldoc-display-truncation-message to eldoc-echo-area-display-truncation-message. * lisp/emacs-lisp/eldoc.el (eldoc-echo-area-display-truncation-message): Rename from eldoc-display-truncation-message. (eldoc-display-in-echo-area): Use new variable name.
* | Rework eldoc-echo-area-prefer-doc-buffer (bug#42532)João Távora2020-10-241-14/+25
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/eldoc.el: (eldoc-echo-area-prefer-doc-buffer): Rename from eldoc-echo-area-prefer-doc-buffer (eldoc-display-in-echo-area): Rework to honour eldoc-echo-area-prefer-doc-buffer.
* | Introduce eldoc-display-functionsJoão Távora2020-10-241-111/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See bug#43609. * lisp/emacs-lisp/eldoc.el (eldoc--request-state): Add comment. (eldoc--last-request-state): No longer buffer-local. (eldoc--request-docs-p): Delete. (eldoc-display-functions): New user variable. (eldoc--doc-buffer-docs): New variable. (eldoc-display-message-p): Rework. (eldoc--format-doc-buffer): Rework from eldoc--handle-docs. (eldoc-display-in-echo-area, eldoc-display-in-buffer): New user-visible function. (eldoc--invoke-strategy): Take INTERACTIVE arg. Invoke eldoc-display-in-buffer (eldoc-print-current-symbol-info): Simplify. (Version): Bump to 1.11.0 * etc/NEWS: Mention eldoc-display-functions.
* | Revert "Use lexical-binding in bindat.el"Stefan Kangas2020-10-241-85/+89
| | | | | | | | | | | | | | | | | | This reverts commit a497b8e4a41e3223089654da4b36d0fdd51ce555. This conversion to lexical-binding broke the eval specification, documented in the ELisp manual. We will probably want to add tests for that before we can confidently convert this to lexical-binding. Problem reported by Mattias Engdegård <mattiase@acm.org>.
* | Use lexical-binding in copyright.el and add testsStefan Kangas2020-10-241-8/+1
| | | | | | | | | | | | * lisp/emacs-lisp/copyright.el: Use lexical-binding. Remove redundant :group args. * test/lisp/emacs-lisp/copyright-tests.el: New file.
* | * lisp/emacs-lisp/pcase.el: Add "extensions" to keyword header.Stefan Kangas2020-10-231-1/+1
| |
* | ; * lisp/emacs-lisp/bindat.el (bindat-unpack): Fix typo.Stefan Kangas2020-10-211-1/+1
| |