summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
Commit message (Collapse)AuthorAgeFilesLines
* Make loaddefs-generate--parse-file more robustLars Ingebrigtsen2022-06-041-36/+43
| | | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--parse-file): Ensure that we don't have an autoload cookie on the first column inside a string.
* Fix failing shortdoc testLars Ingebrigtsen2022-06-041-5/+5
| | | | | | * lisp/emacs-lisp/shortdoc.el (string): Each example section is supposed to contain only examples of using the function in question (as policed by the FAILED shortdoc-examples test).
* Further raise-sexp doc string improvementLars Ingebrigtsen2022-06-041-1/+1
| | | | | * lisp/emacs-lisp/lisp.el (raise-sexp): Fix the key binding syntax in the doc string.
* Improve the raise-sexp doc stringLars Ingebrigtsen2022-06-041-1/+16
| | | | | * lisp/emacs-lisp/lisp.el (raise-sexp): Try to explain what the command does (bug#55788).
* Fix warnings introduced by the lisp-mode-autoload-regexp changeLars Ingebrigtsen2022-06-041-1/+1
| | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs): The package name bit in ###;;;foo-autoload may be missing, so do a lax match (bug#55784).
* Add a face to \\= doc string escapesLars Ingebrigtsen2022-06-041-0/+3
| | | | | * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs): Add a face to \\= doc string escapes (bug#55783).
* * lisp/emacs-lisp/shortdoc.el (string): Add `string-collate-lessp'.Michael Albinus2022-06-041-1/+6
|
* Don't issue warnings for Unicode quotes for nowLars Ingebrigtsen2022-06-031-6/+0
| | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-docstring-style-warn): Remove warning for "Unicode quotes" for now (bug#55780).
* Make checkdoc-file-comments-engine match more ;;;### formsLars Ingebrigtsen2022-06-021-4/+2
| | | | | | * lisp/emacs-lisp/checkdoc.el (checkdoc-file-comments-engine): Use the more general lisp-mode-autoload-regexp instead of generate-autoload-cookie (i.e., also match ;;;###tramp-autoload).
* Fix out-of-tree build problems with loaddefs.elLars Ingebrigtsen2022-06-021-16/+23
| | | | | | | | | | | | * lisp/Makefile.in ($(lisp)/loaddefs.el): Use the new function. * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Pass in whether to inhibit a partial build (to make the code more general). (loaddefs-generate--emacs-batch): Add a new function specially for the Emacs build that has the special rules needed. (This also fixes out-of-tree builds.) loaddefs-generate-batch can be used in general for packages etc. (loaddefs-generate-batch): Remove the special code for Emacs builds.
* Speed up loaddefs-generate on slow disksLars Ingebrigtsen2022-06-021-1/+5
| | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Make file update comparisons faster.
* Merge remote-tracking branch 'refs/remotes/origin/master'Stefan Monnier2022-06-011-2/+9
|\
| * Fix up the loaddefs-gen updating logicLars Ingebrigtsen2022-06-011-1/+1
| | | | | | | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Only do the updating logic if we're really updating.
| * Revert "Fix loaddefs generation"Lars Ingebrigtsen2022-06-011-1/+1
| | | | | | | | | | | | This reverts commit 28358db93007456a1e0a6d9118823d4ddea4ba39. This has been fixed in a different way.
| * Tweak how loaddefs-gen decides whether to do a full updateLars Ingebrigtsen2022-06-011-1/+8
| | | | | | | | | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Do a complete build more often to avoid problems with going from old loaddefs.el files to new ones.
| * Fix loaddefs generationPo Lu2022-06-011-1/+1
| | | | | | | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Prevent one kind of string match error.
* | bindat (strz): Fix wrong-type-argument error when unpackingRichard Hansen2022-06-011-2/+2
| | | | | | | | | | | | | | * lisp/emacs-lisp/bindat.el (strz): Fix (wrong-type-argument number-or-marker-p nil) error when unpacking a strz with unspecified (variable) length. * test/lisp/emacs-lisp/bindat-tests.el (strz): Mark test as passing.
* | ; bindat (strz): Consistent length type checkRichard Hansen2022-06-011-1/+1
| | | | | | | | | | The strz length computation uses `numberp' to switch between fixed-length and variable-length modes, so packing should too.
* | bindat (strz): Fix off-by-one bug in computed lengthRichard Hansen2022-06-011-2/+2
|/ | | | | | * lisp/emacs-lisp/bindat.el (strz): Include null terminator when computing packed string length. * test/lisp/emacs-lisp/bindat-tests.el (strz): Mark tests as passing.
* Fix the loaddefs updating logicLars Ingebrigtsen2022-05-311-49/+49
| | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Fix the logic of updating -- we update per loaddefs file.
* Make partial loaddefs updates work againLars Ingebrigtsen2022-05-311-24/+43
| | | | | | * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Only update the loaddefs section for the files that have changed. This makes "git pull" (when few/no Lisp files have changed much faster).
* Speed up generation of loaddefs filesLars Ingebrigtsen2022-05-314-343/+663
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/loading.texi (Autoload, Autoload by Prefix): Refer to loaddefs-generate instead of update-file-autoloads. * lisp/Makefile.in (LOADDEFS): Remove, because all the loaddefs files are created in one go now. (COMPILE_FIRST): Add loaddefs-gen/radix-tree, and drop autoload. ($(lisp)/loaddefs.el): Use loaddefs-gen. (MH_E_DIR, $(TRAMP_DIR)/tramp-loaddefs.el) ($(MH_E_DIR)/mh-loaddefs.el, $(CAL_DIR)/cal-loaddefs.el) ($(CAL_DIR)/diary-loaddefs.el, $(CAL_DIR)/hol-loaddefs.el): Remove. * lisp/generic-x.el: Inhibit computing prefixes, because the namespace here is all wonky. * lisp/w32-fns.el (w32-batch-update-autoloads): Removed -- unused function. * lisp/calendar/holidays.el ("holiday-loaddefs"): Renamed from hol-loaddefs to have a more regular name. * lisp/cedet/ede/proj-elisp.el (ede-emacs-cedet-autogen-compiler): Refer to loaddefs-gen instead of autoload. * lisp/emacs-lisp/autoload.el (make-autoload, autoload-rubric) (autoload-insert-section-header): Made into aliases of loaddefs-gen functions. (autoload--make-defs-autoload): Ditto. (autoload-ignored-definitions, autoload-compute-prefixes): Moved to loaddefs-gen. * lisp/emacs-lisp/lisp-mode.el (lisp-mode-autoload-regexp): New constant. (lisp-fdefs, lisp-mode-variables, lisp-outline-level): Use it to recognize all ;;;###autoload forms. * lisp/emacs-lisp/loaddefs-gen.el: New file. * lisp/emacs-lisp/package.el: Use loaddefs-generate instead of make-directory-autoloads. * test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-faulty-bzr-autoloads): Use loaddefs instead of autoloads.
* Traverse record literals in byte-compile--first-symbol-with-posMattias Engdegård2022-05-291-1/+1
| | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile--first-symbol-with-pos): Traverse record literals as well as vectors. Either is rather pointless but there were some strong feelings about it.
* pp--insert-lisp: Don't bug out on certain forms at beginning of bufferVisuwesh2022-05-281-1/+1
| | | | | * pp.el (pp--insert): Check if point is in beginning of buffer before calling `looking-back' (bug#55677).
* Fix native-comp of trampolines after previous changeLars Ingebrigtsen2022-05-281-0/+1
| | | | | * lisp/emacs-lisp/comp.el (comp--native-compile): Don't delete the explicitly specified output file, just temp files.
* Make package-update-all also refresh the listLars Ingebrigtsen2022-05-271-1/+2
| | | | | * lisp/emacs-lisp/package.el (package-update-all): Also refresh package list.
* Merge from origin/emacs-28Stefan Kangas2022-05-271-1/+1
|\ | | | | | | | | 9283508fb2 Fix format specifiers in tramp-adb.el a9f17ccce3 ; Fix some doc typos and minor language issues
| * ; Fix some doc typos and minor language issuesŠtěpán Němec2022-05-261-1/+1
| |
* | Merge remote-tracking branch 'origin/scratch/bug-55156'Stefan Monnier2022-05-261-13/+10
|\ \
| * | eval.c: New functions `defvar-1` and `defconst-1` (bug#55156)Stefan Monnier2022-05-261-13/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bytecode interpreter can't directly call special forms, so the byte-compiler usually converts special forms into some sequence of byte codes (basically, providing a duplicate definition of the special form). There are still two exceptions to this: `defconst` and `defvar`, where the compiler instead generates a convoluted chunk of code like: (funcall '(lambda (x) (defvar <sym> x <doc>)) <value>) where the quote makes sure we keep the function non-compiled, so as to end up running the special form at run time. Get rid of this workaround by introducing `defvar-1` and `defconst-1` which provide a *functional* interface to the functionality of the corresponding special form. * src/eval.c (defvar, Fdefvar_1, Fdefconst_1): New functions, extracted from `Fdefvar` and `Fdefconst`. (Fdefvar, Fdefconst): Use them. (syms_of_eval): `defsubr` the new functions. * lisp/emacs-lisp/bytecomp.el (byte-compile-tmp-var): Delete const. (byte-compile-defvar): Simplify using the new functions. * doc/lispref/variables.texi (Defining Variables): Adjust the doc of `defvar` to reflect the actual semantics implemented.
* | | package-activate-all: Use the quickstart more conservativelyStefan Monnier2022-05-261-1/+3
| | | | | | | | | | | | | | | * lisp/emacs-lisp/package.el (package-activate-all): Don't use the quickstart file if some packages have already been activated.
* | | Avoid duplicates in `package-activated-list'Sam Steingold2022-05-261-2/+3
|/ / | | | | | | | | | | * lisp/emacs-lisp/package.el (package-quickstart-refresh): Calling `package-activate-all' twice leads to duplicates in `package-activated-list' - avoid that.
* | Faster and less recursive byte-compile--first-symbol-with-posMattias Engdegård2022-05-261-31/+26
| | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile--first-symbol-with-pos) (byte-compile--warning-source-offset): Remove recursion for cdr-traversal of lists, and optimise (bug#55414).
* | Make comp--native-compile delete the temp file it createsLars Ingebrigtsen2022-05-261-42/+53
| | | | | | | | | | * lisp/emacs-lisp/comp.el (comp--native-compile): Delete the temporary files we create (bug#55611).
* | Make memory-report not bug out with symbols with positionsLars Ingebrigtsen2022-05-261-0/+4
| | | | | | | | | | * lisp/emacs-lisp/memory-report.el (memory-report--object-size-1): Don't bug out when there are symbols with positions.
* | Don't have edebug bug out if C-x is reboundLars Ingebrigtsen2022-05-251-1/+4
| | | | | | | | | | * lisp/emacs-lisp/edebug.el (edebug-global-prefix): Don't bug out if C-x has been rebound (bug#55607).
* | Update edebug commentsLars Ingebrigtsen2022-05-251-1/+1
| | | | | | | | | | * lisp/emacs-lisp/edebug.el: Update function name in comments (bug#55607).
* | Fix ert-run-tests-batch-and-exit doc string typoLars Ingebrigtsen2022-05-251-1/+1
| | | | | | | | | | * lisp/emacs-lisp/ert.el (ert-run-tests-batch-and-exit): Fix doc string typo.
* | Autoload package-update-allLars Ingebrigtsen2022-05-251-1/+2
| | | | | | | | | | * lisp/emacs-lisp/package.el (package-update-all): Autoload and tweak querying so that -f works.
* | Fix comp-mvar doc string quotingLars Ingebrigtsen2022-05-241-1/+1
| | | | | | | | | | * lisp/emacs-lisp/comp.el (comp-mvar): Fix quoting of symbol in doc string.
* | Make byte compilation warn about wrong quoting in doc stringsLars Ingebrigtsen2022-05-241-15/+32
| | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-docstring-length-warn): Made into obsolete alias. (byte-compile-docstring-style-warn): Also warn about other stylistic issues. (byte-compile-file-form-autoload, byte-compile-file-form-defvar) (byte-compile-file-form-defvar-function, byte-compile-lambda) (byte-compile-defvar, byte-compile-file-form-defalias): Adjust callers.
* | Make `yank-transform-functions` a proper hookStefan Monnier2022-05-241-1/+1
| | | | | | | | | | | | * lisp/subr.el (insert-for-yank): Use `run-hook-wrapped` to run `yank-transform-functions`. * lisp/simple.el (yank-transform-functions): Adjust accordingly.
* | Make the nativecomp test eln directory more reliably be removedLars Ingebrigtsen2022-05-241-12/+22
| | | | | | | | | | | | | | | | | | | | * lisp/startup.el (startup-redirect-eln-cache, normal-top-level): Don't create the nativecomp directory here, because this led to brittle deletions of the directory -- there would be several instances of the directory left over after a test run. * lisp/emacs-lisp/ert.el (ert-run-tests-batch-and-exit): Create the nativecomp directory.
* | Further audits of single quotes in Lisp doc stringsLars Ingebrigtsen2022-05-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * test/manual/etags/el-src/emacs/lisp/progmodes/etags.el (tags-apropos-additional-actions): * lisp/window.el (delete-window-choose-selected): * lisp/vc/ediff-merg.el (ediff-combination-pattern): * lisp/vc/diff.el (diff-no-select): * lisp/tab-bar.el (tab-bar-new-tab-choice): * lisp/simple.el (next-error-message-highlight): (backward-delete-char-untabify): * lisp/ses.el (ses-jump-cell-name-function): * lisp/org/org.el (org-latex-to-html-convert-command): * lisp/org/org-agenda.el (org-agenda-sorting-strategy): * lisp/net/tramp.el (tramp-default-file-modes): * lisp/net/newst-treeview.el (newsticker-treeview-use-feed-name-from-url-list-in-treeview): * lisp/net/eww.el (eww-auto-rename-buffer): * lisp/mwheel.el (mouse-wheel-scroll-amount): * lisp/mail/rmail.el (rmail-re-abbrevs): * lisp/info.el (Info-history-forward-menu): * lisp/gnus/nnselect.el (nnselect-retrieve-headers-override-function): * lisp/gnus/gnus-start.el (gnus-subscribe-hierarchical-interactive): * lisp/fringe.el (fboundp): * lisp/eshell/esh-var.el (eshell-variable-aliases-list): * lisp/emacs-lisp/checkdoc.el (checkdoc-column-zero-backslash-before-paren): * lisp/dired-aux.el (dired-confirm-shell-command): * lisp/calendar/calendar.el (calendar-time-zone-style): * lisp/ansi-color.el (ansi-color-faces-vector): (ansi-color-names-vector): Audit use of various single quotes in Lisp doc strings.
* | Audit symbol quoting in Lisp doc stringsLars Ingebrigtsen2022-05-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-svn.el (vc-svn-dir-status-files): * lisp/so-long.el (so-long-mode-maintain-preserved-variables): * lisp/help-fns.el (help-fns--most-relevant-active-keymap): * lisp/gnus/nnselect.el (nnselect-get-artlist): (nnselect-store-artlist): * lisp/forms.el (forms-enumerate): * lisp/ffap.el (ffap-string-at-point): * lisp/emacs-lisp/byte-run.el (define-obsolete-variable-alias): Audit symbol quoting in Lisp doc strings.
* | Fix previous warning suppression changeLars Ingebrigtsen2022-05-222-3/+3
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/bytecomp.el (byte-compile-emit-callargs-warn) (byte-compile-subr-wrong-args): * lisp/emacs-lisp/byte-run.el (with-suppressed-warnings): * lisp/cedet/semantic/fw.el (semantic-install-function-overrides): The `wrong-args' warning is really called `callargs'.
* | Allow suppressing messages about the wrong number of argumentsLars Ingebrigtsen2022-05-222-16/+18
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/byte-run.el (with-suppressed-warnings): Add `wrong-args'. * lisp/emacs-lisp/bytecomp.el (byte-compile-emit-callargs-warn) (byte-compile-subr-wrong-args): Allow suppressing wrong number of arguments.
* | comp.el: Cosmetic changesStefan Monnier2022-05-221-23/+39
| | | | | | | | | | | | * lisp/emacs-lisp/comp.el (comp-run-async-workers): Tweak code. (comp-run-async-workers): Don't set `buffer-read-only` directly. (native--compile-async): Fix misuse of "path".
* | Rename compare-window-configurations and update docLars Ingebrigtsen2022-05-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/windows.texi (Window Configurations): Update name. * lisp/strokes.el (strokes-window-configuration-changed-p): * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Update callers and references. * lisp/subr.el (compare-window-configurations): Make into obsolete alias. * src/window.c (Fwindow_configuration_equal_p): Rename (bug#14964).
* | Fix font-locking of (defun foo (function ...))Lars Ingebrigtsen2022-05-201-0/+3
| | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (lisp--el-funcall-position-p): Don't colorize the `function' in (defun foo (function ...)) as a special form (bug#37074).