summaryrefslogtreecommitdiff
path: root/lisp
Commit message (Collapse)AuthorAge
* Merge upstream Git snapshot into athena/unstableSean Whitton2023-04-16
|\
| * Merge from origin/emacs-29Eli Zaretskii2023-04-15
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b7023da6627 Make image-map bindings available on image links d9e96c029bb * CONTRIBUTE: Fix a typo 3f71a2a0cf6 ; * lisp/progmodes/c-ts-mode.el (treesit-node-next-siblin... adf9c956c28 Add to Eglot support for additional language-servers. b3603b84bd9 Partial support for DEFUN in c-ts-mode (bug#62825) # Conflicts: # lisp/progmodes/c-ts-mode.el
| | * Make image-map bindings available on image linksAndreas Schwab2023-04-15
| | | | | | | | | | | | | | | * lisp/net/shr.el (shr-map): Move shr-browse-image to "M-i". * lisp/net/eww.el (eww-image-link-keymap): Use shr-image-map.
| | * ; * lisp/progmodes/c-ts-mode.el (treesit-node-next-sibling): Declare.Eli Zaretskii2023-04-15
| | |
| | * Add to Eglot support for additional language-servers.Jostein Kjønigsen2023-04-15
| | | | | | | | | | | | | | | | | | * lisp/progmodes/eglot.el (eglot-server-programs): Add 'vscode-markdown-language-server' for Markdown and 'dot-language-server' for GraphViz. (Bug#62844)
| | * Partial support for DEFUN in c-ts-mode (bug#62825)Yuan Fu2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DEFUN is hard to incorporate because it's made of two nodes rather than one, and most tree-sitter functionalities assume a defun is one node. I fixed the indent-defun and add-log functionality, but beginning/end-of-defun and imenu still don't recognize DEFUN. * lisp/progmodes/c-ts-mode.el (c-ts-mode-emacs-devel): New variable. (c-ts-mode--defun-name): Support DEFUN. (c-ts-mode--defun-valid-p): Support DEFUN. (c-ts-mode--emacs-defun-p) (c-ts-mode--emacs-defun-at-point): New functions. (c-ts-mode-indent-defun): Use c-ts-mode--emacs-defun-at-point. (c-ts-mode--emacs-current-defun-name): New function. (c-ts-mode, c++-ts-mode): Optionally setup custom defun-name function.
| * | Merge from origin/emacs-29Eli Zaretskii2023-04-15
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 864a4dc2363 Fix compilation of w32.c with old MinGW system headers a22eb9ae0f9 ruby-add-log-current-method: Reduce the use of 'nreverse' 17d803d0a75 Fix detection of WebP images by their signature 43290391ce2 ; Eglot: make version parseable by version-to-list 6e6e8b5c974 Add more documentation for the keys of `package-vc-select... 7972b76c2c7 ; vc-checkout: Wrap var lookup in 'bound-and-true-p' e9fef1d70ff vc-checkout: Try to use the vc-dir's backend first 372e024accd ; Fix wallpaper-tests on XFCE 7055fd8e43e Improve documentation related to 'ispell-complete-word' 61fd017abde * configure.ac: Add -lbsd on Haiku. 05971c4d9a4 Add menu to 'c-ts-mode' and 'c++-ts-mode' # Conflicts: # lisp/progmodes/eglot.el # lisp/progmodes/ruby-mode.el
| | * ruby-add-log-current-method: Reduce the use of 'nreverse'Dmitry Gutov2023-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/ruby-mode.el (ruby-add-log-current-method): Reduce the use of 'nreverse' (bug#62761). * test/lisp/progmodes/ruby-mode-tests.el (ruby-add-log-current-method-singleton-referencing-outer): New test.
| | * Fix detection of WebP images by their signatureVisuwesh2023-04-12
| | | | | | | | | | | | | | | | | | * lisp/image.el (image-type-header-regexps): The 4 characters between "RIFF" and "WEBP" in WebP images can also be newlines. (Bug#62790)
| | * ; Eglot: make version parseable by version-to-listJoão Távora2023-04-12
| | | | | | | | | | | | * lisp/progmodes/eglot.el (Version): Correct version.
| | * Add more documentation for the keys of `package-vc-selected-packages`.Earl Hyatt2023-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/emacs/package.texi (Specifying Package Sources): List the accepted keys in a new subsection of Fetching Package Sources. * lisp/emacs-lisp/package-vc.el (package-vc-selected-packages): Mention the `:doc` key. Add the `:doc` key to the Customize form, mention the new Info node, correct "TexInfo" to "Texinfo", avoid Git-specific terms for the description of `:branch`, mention guessing `:vc-backend` based on the URL.
| | * ; vc-checkout: Wrap var lookup in 'bound-and-true-p'Dmitry Gutov2023-04-12
| | |
| | * vc-checkout: Try to use the vc-dir's backend firstDmitry Gutov2023-04-11
| | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-checkout): Try to use the vc-dir's backend before looking for the file's one. The latter doesn't work when the file doesn't exist on disk yet (bug#62674).
| | * Improve documentation related to 'ispell-complete-word'Eli Zaretskii2023-04-11
| | | | | | | | | | | | | | | | | | * lisp/textmodes/ispell.el (ispell-alternate-dictionary) (ispell-complete-word-dict, ispell-complete-word): Doc fixes. (Bug#62775)
| | * Add menu to 'c-ts-mode' and 'c++-ts-mode'Eli Zaretskii2023-04-11
| | | | | | | | | | | | * lisp/progmodes/c-ts-mode.el (c-ts-mode-menu): New menu.
| * | Merge from origin/emacs-29Eli Zaretskii2023-04-15
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c62afb10cf0 Fix wallpaper-tests on MS-Windows f2d212c6966 Fix a couple of eglot-tests 338b3718b6c Fix visiting RPM files b4afee03193 Fix ff-quiet-mode doc 2445100d7d6 ; Improve documentation of 'match-buffers' d4d0da96f0b ; Update make-tarball.txt for Emacs 29. 9b0bf694da4 ; Fix ldefs-boot.el. 0cb86a348c7 ; Update ChangeLog.4. # Conflicts: # ChangeLog.4
| | * Fix visiting RPM filesEli Zaretskii2023-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We cannot call 'sh-set-shell' inside 'sh-base-mode', since various settings of 'sh-mode', in particular the syntax table, is not yet set. Likewise with various hooks: since 'sh-base-mode' is not a mode any file should be visited with, it makes no sense to set up stuff like 'hack-local-variables-hook' in 'sh-base-mode'; it should be set in the descendant modes instead. * lisp/progmodes/sh-script.el (sh-base-mode): Move the call to 'sh-set-shell' from here... (sh-mode): ...to here... (bash-ts-mode): ...with a copy here. (Bug#62748)
| | * Fix ff-quiet-mode docBasil L. Contovounesios2023-04-10
| | | | | | | | | | | | | | | * lisp/find-file.el (ff-quiet-mode, ff-find-other-file): Say that ff-quiet-mode disables tracing, not the inverse.
| | * ; Improve documentation of 'match-buffers'Eli Zaretskii2023-04-10
| | | | | | | | | | | | | | | | | | * doc/lispref/buffers.texi (Buffer List): * lisp/subr.el (match-buffers): Fix documentation of 'buffer-match-p' and 'match-buffers'.
| | * ; Fix ldefs-boot.el.emacs-29.0.90Eli Zaretskii2023-04-10
| | |
| | * * lisp/ldefs-boot.el: Regenerate.Eli Zaretskii2023-04-10
| | |
| * | Merge from origin/emacs-29Eli Zaretskii2023-04-15
| |\| | | | | | | | | | | | | db8f207e52f Fix some cases of incomplete code's indentation [c/c++-ts... 589959fb09d project-search: Pipe the list of files through 'file-regu...
| | * Fix some cases of incomplete code's indentation [c/c++-ts-mode]Dmitry Gutov2023-04-10
| | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/c-ts-mode.el (c-ts-base--before-indent): Try to guess when the parse tree is incomplete, and provide a better node to indent against (bug#62717). (c-ts-base-mode): Set up advice for local treesit-indent-function.
| | * project-search: Pipe the list of files through 'file-regular-p'Dmitry Gutov2023-04-10
| | | | | | | | | | | | | | | * lisp/progmodes/project.el (project-search): Pipe the list of files through 'file-regular-p' to skip directories (bug#62735).
| * | Merge from origin/emacs-29Eli Zaretskii2023-04-15
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ef7ff05736 ; Start a new ChangeLog.4 file. 11126c6d30a Fix 'C-h k' for "Paste from Kill Menu" in context menus 74ddfe811f9 ; * doc/misc/calc.texi (Rewrites Tutorial): Fix a typo (b... 08cda286c3f Improve the documentation of the XDS support 14d1c00e806 Allow reindentation of images inserted by 'mm-inline-image' b63a9eda01c Fix "C-h k" and "C-h c" with Paste from Kill Menu b36c21e27dc Change cursor color on NS port when it matches the face b... 96714c106b7 Improve documentation of image-related commands 6a2863ca016 Fix handling of sliced images 5be79fd05a5 ; * etc/NEWS: Announce 'cyrillic-mongolian' IM. ca1a0fda98a ; Fix last change. ce63462dbda Add cyrillic-mongolian input method 58801792706 ; Minor addition to the Emacs FAQ 88847dee125 Jsonrpc: don't bind inhibit-read-only to t so early cb8c87a423a Allow active region when IM is used # Conflicts: # etc/NEWS
| | * Fix 'C-h k' for "Paste from Kill Menu" in context menusEli Zaretskii2023-04-08
| | | | | | | | | | | | | | | | | | * lisp/mouse.el (context-menu-region): Make the entries be symbols, not just integers, to prevent "C-h c" from interpreting them as character keys. (Bug#62626)
| | * Improve the documentation of the XDS supportEli Zaretskii2023-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/lispref/frames.texi (Drag and Drop): Rephrase and rearrange the documentation of XDS support. Add indexing. Document 'x-dnd-save-direct' and 'x-dnd-save-direct-immediately'. Original patch from Po Lu <luangruo@yahoo.com>. * lisp/x-dnd.el (x-dnd-types-alist, x-dnd-test-function) (x-dnd-default-test-function, x-dnd-direct-save-function): Doc fixes. (x-dnd-save-direct, x-dnd-save-direct-immediately): Rename the second argument to FILENAME. Doc fix.
| | * Allow reindentation of images inserted by 'mm-inline-image'Eli Zaretskii2023-04-08
| | | | | | | | | | | | | | | | | | * lisp/gnus/mm-view.el (mm-inline-image): Use "x" as text on which to put the image 'display' property, so that indentation commands don't destroy the image inadvertently. (Bug#62637)
| | * Fix "C-h k" and "C-h c" with Paste from Kill MenuEli Zaretskii2023-04-08
| | | | | | | | | | | | | | | * lisp/subr.el (event-basic-type, event-modifiers): Return nil if EVENT is a string. (Bug#62626)
| | * Improve documentation of image-related commandsEli Zaretskii2023-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/image.el (image-map): Make it inherit from 'image-slice-map' instead of repeating the bindings. * doc/emacs/files.texi (Image Mode): Document the key bindings set by 'insert-image'. Add indexing. * doc/lispref/display.texi (Showing Images): Make the description of user commands more concise. Add index entries and cross-reference to the Emacs manual. * etc/NEWS: Rearrange entries relevant to image commands.
| | * Fix handling of sliced imagesEli Zaretskii2023-04-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/image.el (image-slice-map): New keymap, without some bindings that make no sense with sliced images. (insert-image, insert-sliced-image): Use it. (insert-sliced-image): Make the 'keymap' property rear-nonsticky, to prevent calling image commands when point is to the right of the slice. (Bug#62679) * lisp/image/image-crop.el (image-cut, image-crop): Doc fixes. (image-crop): Don't try using stock MS-Widows convert.exe program. Use 'image--get-image' to support sliced images.
| | * ; Fix last change.Eli Zaretskii2023-04-08
| | |
| | * Add cyrillic-mongolian input methodgarid30002023-04-08
| | | | | | | | | | | | | | | * lisp/leim/quail/cyrillic.el (cyrillic-mongolian): New input method. (Bug#56617)
| | * Jsonrpc: don't bind inhibit-read-only to t so earlyJoão Távora2023-04-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Related to https://github.com/joaotavora/eglot/discussions/1202, where because of this very wide binding to inhibit-read-only to t, Eglot was managing to write into read-only buffers from the response handlers that ran from within the stack of the jsonrpc.el process filter. This is of course illegal and dangerous, but Eglot wasn't made aware because of the binding. * lisp/jsonrpc.el (jsonrpc--process-filter): Don't bind inhibit-read-only so early.
| | * Allow active region when IM is usedEli Zaretskii2023-04-07
| | | | | | | | | | | | | | | | | | * lisp/international/quail.el (quail-minibuffer-message): Bind deactivate-mark to allow setting active region in the minibuffer when an input method is used. (Bug#62709)
| * | Cleaner solution for Org version updatesEli Zaretskii2023-04-15
| | | | | | | | | | | | | | | | | | | | | * lisp/Makefile.in (BYTE_COMPILE_FLAGS): Set org--built-in-p non-nil, to avoid aborting the build when Org's version is bumped. ($(lisp)/org/org.elc): Remove dependencies of org-version.el, as no longer needed. (Bug#62762)
| * | ; * lisp/treesit.el (treesit-node-top-level): Fix typo.Eli Zaretskii2023-04-15
| | |
| * | Fix errors when nnselect-always-regenerate is t (bug#61539)Andrew G Cohen2023-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The group parameter nnselect-always-regenerate causes the list of articles in the group to be generated each time it is needed. For this to work reliably the list of articles has to be generated at the appropriate time and to have a reproducible ordering. * lisp/gnus/gnus-search.el (gnus-search-run-search): For nnselect groups if the article list has not been stored, regenerate it. * lisp/gnus/nnselect.el (nnselect-generate-artlist): Sort the generated list of articles by RSV, group, and number. Store the artlist after generation. When the new optional argument INFO is non-nil, update the group info. (nnselect-compress-artlist, nnselect-uncompress-artlist): Preserve the article list ordering. (nnselect-get-artlist): Return nil when nnselect-always-regenerate is t. (nnselect-store-artlist): Store the group active range along with the artlist. Don't keep the artlist if nnselect-always-regenerate is t. (nnselect-request-group): The full article list isn't needed at this stage, only the active range. (nnselect-retrieve-headers): Regenerate the article list if there is no stored value. Inhibit gnus-demon while retrieving headers. (nnselect-request-group-scan): Don't generate the article list when nnselect-always-regenerate is t since it will be generated again later on. (nnselect-request-create-group): Allow the artlist to be passed as an argument to the function. Update the group info and store the artlist.
| * | Improve gnus thread-referralAndrew G Cohen2023-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow thread referral to use search whenever possible, displaying the results in the current summary buffer if possible and a new nnselect buffer if not. * lisp/gnus/nnimap.el (nnimap-request-thread): Obsolete function. * lisp/gnus/gnus-search.el (gnus-search-thread): Allow detailed specification of how/where to search. Add found articles to the current summary buffer if possible, or create a new ephemeral nnselect group if not. * lisp/gnus/gnus-sum.el (gnus-refer-thread-use-search): Allow a list of servers and groups to search. (gnus-summary-refer-thread): Find thread-related articles by using a backend-specific method, gnus-search, or retrieving nearby headers in the current group. * lisp/gnus/nnselect.el (nnselect-search-thread): Obsolete function. (nnselect-request-thread): Allow thread referral from nnselect groups. * doc/misc/gnus.texi (Finding the Parent): Document changes to thread referral.
| * | Add treesit-thing-settingsYuan Fu2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/treesit.el (treesit--things-around) (treesit--navigate-thing) (treesit-thing-at-point): Update docstring. * src/treesit.c (treesit_traverse_validate_predicate): Refer to treesit-thing-settings. (syms_of_treesit): Add Vtreesit_thing_settings.
| * | Convert PATTERN and REGEXP to PRED in tree-sitter functionsYuan Fu2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just changing names. * lisp/treesit.el (treesit-beginning-of-thing): (treesit-end-of-thing) (treesit--things-around) (treesit--navigate-thing) (treesit-thing-at-point): Change REGEXP and PATTERN to PRED.
| * | Make use of the new pred shapes in treesit.elYuan Fu2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | treesit-search-forward and friends now accept more shapes for PRED, make use of it in navigation functions. * lisp/treesit.el (treesit-node-top-level): Use treesit-node-match-p. (treesit--thing-unpack-pattern): Remove function. (treesit-beginning-of-thing) (treesit-end-of-thing): Remove PRED argument. (treesit--things-around): Remove PRED argument, use treesit-node-match-p. (treesit--top-level-thing): Remove function. (treesit--navigate-thing): Remove PRED argument. (treesit-thing-at-point): Update docstring, don't unpack PATTERN. * test/src/treesit-tests.el: (treesit--ert-test-defun-navigation): Don't unpack pattern.
| * | Improve C++ concept indentation.Alan Mackenzie2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes bug #62386. * lisp/progmodes/cc-engine.el (c-forward-over-compound-identifier): Don't move forward over whitespace following the identifier. (c-forward-primary-expression): Add parameter stop-at-end meaning don't move forward over whitespace after the construct when non-nil. Don't recognise a primary expression when an open brace follows a parenthesized expression. (c-forward-constraint-clause): Extracted from c-forward-c++-requires-clause. Add parameter stop-at-end as above. (c-forward-c++-requires-clause): New stop-at-end parameter as above. Call the new function c-forward-constraint-clause. (c-forward-concept-fragment, c-looking-at-concept) (c-in-requires-or-at-end-of-clause, c-c++-vsemi-p): New functions. (c-guess-basic-syntax): New CASE 5A.7: "defun" open in a requires expression. CASE 5F: Close of a non-class declaration level block: Move to earlier in the function. CASE 5D: Also check for being in or at end of a constraint. New CASE 20: A C++ requires sub-clause. New CASE 16G: The closing brace of a requires clause. New CASE 17J: First "statement" inside a requires "function". (c-forward-primary-expression, c-forward-declarator, c-forward-decl-or-cast-1) (c-looking-at-or-maybe-in-bracelist): Amend the method of detecting end of symbol "requires" (aka c-fun-name-substitute-key). * lisp/progmodes/cc-fonts.el (c-get-fontification-context): Amend the method of detecting end of symbol "requires". * lisp/progmodes/cc-langs.el (c-at-vsemi-p-fn): Change the C++ entry to c-c++-vsemi-p. (c-fun-name-substitute-key): Change to an unadorned regexp. * lisp/progmodes/cc-vars.el (c-offsets-alist): Add new syntactic symbol constraint-cont. * doc/misc/cc-mode.texi (Syntactic Symbols): Add an entry for contraint-cont. (Constraint Symbols): New node under Syntactic Symbols.
| * | ; Fix typosMichael Albinus2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | * etc/NEWS: Fix typos. * lisp/progmodes/flymake.el (flymake-error-echo) (flymake-warning-echo, flymake-note-echo) (flymake-show-diagnostics-at-end-of-line): Fix :package-version.
| * | Make c-emacs-features use the proper binding of parse-sexp-lookup-propertiesAlan Mackenzie2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is relevant for bug #58558, although it does not fix it. Due to a wrong ordering of with-current-buffer and a let form, the function overwrote the global value of parse-sexp-lookup-properties and two other variables. * lisp/progmodes/cc-defs.el (c-emacs-features): Change the nesting of with-current-buffer and let so that the let bindings get used.
| * | Fix and cleanup nnselect-push-infoAndrew G Cohen2023-04-14
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/gnus/nnselect.el (nnselect-push-info): Don't update backend marks when quit-config is not nil since gnus-update-marks has already been called. Move checking for unread articles outside the gnus-atomic block so it may be interrupted. Replace let* with let. Cleanup code.
| * | Faster and less wrong cl-defsubst inliningMattias Engdegård2023-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Always have inlining of functions defined by `cl-defsubst` let-bind arguments instead of making incorrect guesses when it might be safe to substitute them and then botching the substitution. This change generally results in better and safer code for all callers, in particular `cl-defstruct` constructors, accessors and mutators. * lisp/emacs-lisp/cl-macs.el (cl-defsubst): Remove outdated comment. (cl--defsubst-expand): Simplify: always let-bind. (cl--sublis): Remove. (cl-defstruct): Simplify: remove old hack that is no longer needed.
| * | Eldoc: don't overdisplay if using eldoc-documentation-composeJoão Távora2023-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug#62816 This is about a particular value for 'eldoc-documentation-strategy', 'eldoc-documentation-compose'. Its helper 'eldoc--documentation-compose-1' was buggy. It created the callback for all the backends in 'eldoc-documentation-functions', but arranged so that it could potentially be invoked immediately and trigger display, half-defeating the purpose of the "patience" and causing blinking in the echo area. Now it creates all the callbacks beforehand and only then passes them to the corresponding members of eldoc-documentation-functions. This sets up the correct state in eldoc--invoke-strategy. * lisp/emacs-lisp/eldoc.el (eldoc--documentation-compose-1): Delete. (eldoc-documentation-compose) (eldoc-documentation-compose-eagerly): Rework.
| * | Eglot: fix LSP "languageId" detectionJoão Távora2023-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This sweeping fix has been planned for a while, but a user recently hit this bug as described in https://github.com/joaotavora/eglot/discussions/1206. More and more servers today are "multi-language", meaning can handle more than one file type. This relies on the ':languageId' string being set to the correct value for every buffer managed by Eglot (TextDocumentItem in LSP parlance). Previously this string was calculated based on an imperfect heuristic and was wrong quite often. Many servers don't even care but some others do, so we have to fix it. * lisp/progmodes/eglot.el (eglot-lsp-server): Remove slots 'major-modes' and 'language-id'. Add slot 'languages'. (eglot--major-modes, eglot--language-ids): New helpers. (eglot--lookup-mode): Simplify or maybe complicate. (eglot--guess-contact): Use new eglot--looup-mode. Change return value. (eglot): Rework docstring. (eglot-reconnect): Use eglot--language-ids, not id. (eglot--connect): Setup eglot--languages slot in server. (eglot--TextDocumentItem): Finally, get correct language id. * test/lisp/progmodes/eglot-tests.el (eglot--guessing-contact): Enhance macro. (eglot-test-server-programs-guess-lang): Update test.
| * | Flymake: add new flymake-show-diagnostics-at-end-of-line optionJoão Távora2023-04-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some editors have this. Depending on your preference, this can either be wildly distracting and easily confused with actual code, or a significant early aid that relieves you from moving around or reaching for the mouse to consult an error message. To be safe, hide this behind a customization variable and keep it disabled. Personally, I find it less obstrusive and more helpful than expected. * lisp/progmodes/flymake.el (flymake--delete-overlay): New helper. (flymake--highlight-line): Handle flymake-show-diagnostics-at-end-of-line. (flymake--clear-foreign-diags): Use flymake--delete-overlay. (flymake--publish-diagnostics): Use flymake--delete-overlay. (flymake-mode): Use flymake--delete-overlay. (flymake-error-echo) (flymake-warning-echo, flymake-note-echo): New faces. (flymake-show-diagnostics-at-end-of-line): New option. (Version): Bump to 1.3.4 * doc/misc/flymake.texi: (Finding diagnostics): Mention flymake-show-diagnostics-at-end-of-line. (Customizable variables): Mention flymake-show-diagnostics-at-end-of-line and a few more relevant faces. * etc/NEWS (Flymake): Mention flymake-show-diagnostics-at-end-of-line.