capitaomorte pushed a change to branch externals/eglot. at 4c0bfc3 Support didChangeWatchedFiles with dynamic registration
This branch includes the following new commits: new d90efdf Initial commit new 3a8f9a1 Remove a couple of comments new 2775dea Rename eglot--continuations eglot--pending-continuations new 3489176 Add a mode-line construct and some minor fanciness new a4f99e0 Introduce and use `eglot--current-process-or-lose' new 72895ca Handle notifications new 0222e7e Improve `eglot--current-process' new 6f0a8df Organize a bit new c417eb4 Cancel timeouts when process dies unexpectedly new bc011d0 Minor cleanup new dfab9a0 Experimental diagnostic overlays new 0ec7801 Simplify `eglot--protocol-initialize` new e60c7fc Overhaul async mechanism safety new e1d36d2 Fix some byte-compilation warnings new efd14d6 Fix mode line new 8bd634c Start working on this again new 4f246b5 * eglot.el (eglot-mode-map): Move up before minor mode. new 6f6f01d Doc fixes new c222c3b Lay groundwork for uniform treatment of network connections new 16be2fc Fix parser to accept multiple messages in one chunk new 1dc2a9f Implement spinners and RLS's window/progress new b4dd4f8 Report server status in the mode-line new 8e6488f Don't switch to possibly dead buffer in sentinel new 7c82a03 Start experimenting with python new 328c7ae Auto update mode-line after setting some process properties new 6689a15 Add eglot-clear-status interactive command new 3403f86 Correctly report what we currently are capable of new 95983c9 Change status to error everytime an error is found new 7ec0dcf Events buffer uses eglot-mode, source buffers use eglot-editing-mode new 63f2208 Less obstrusive flymake stuff for now new e8f859e Rework commands for connecting and reconnecting new 931093e Don't clutter UI with warnings new 75495dc Slightly more user friendly start new 22dc2f7 Ready to start fixing flymake integration new c948713 Auto-reconnect on unexpected connection loss new b511b7d Redesign and simplify parser new be52e1e Rework connection restarting again new 92bf3a0 Signal textDocument/didClose new fdb4de1 Simplify flymake integration new 88e3655 Appease checkdoc.el new c95a0a4 Multiple servers per project are possible new 0e95167 Watch for files opened under umbrella of existing process new cc183a6 Fix assorted bugs new f7f77e1 Make M-x eglot the main entry point new d2eca65 Fix another Flymake sync bug new 51ff863 Must re-announce didOpen after reconnect new 17e0ca4 Fix Flymake diagnostic positions new 2b61a3b Delete two useless forward declarations new 46bb1c0 Reorganize file new a3545fb Rename RPC methods for clarity new 9665a3e Fix textDocument/didChange new 1514e0f Fix a couple of Rust-related edge cases new f1b6485 Trim some edges and add a bunch of boring RPC methods new 9d404c9 Update README.md new b1554fc * eglot.el (eglot--process-receive): Skip null method notifs. new 29d4103 Fix mode-line mouse-clicks from outside selected window new f76f04e More correctly keep track of didOpen/didClose per buffer new 95187cf Connect to LSP server via TCP new eebd32b When user declines to reconnect, first quit existing server new b69302c Make M-x eglot's interactive spec a separate function new 4d4b85d eglot-editing-mode becomes eglot--managed-mode new 7d0bf64 Workaround RLS's regusal to treat nil as empty json object new c2862f4 Don't auto-reconnect if last attempt lasted less than 3 seconds new f8bfb7e Handle requests from server correctly new df5d76d Reply to client/registerCapability (don't handle it yet) new ea918ab Include source info in diagnostics new e7ffc31 Make reported capabilities into its own function new b657b32 Use rootUri instead of rootPath new 79a2a1e Be quite explicit about our lack of capabilities right now new a199c8e Honour textDocumentSync new 8160cd4 Handle dynamic registration in general (but nothing specific yet) new 9882bf2 Cleanup mistake with TextDocumentItem and TextDocumentIdentifier new e86f9b4 New helper eglot--sync-request new ff5a03d Very basic xref support new 193c57d Half-decent xref support new 571b08f Fix the odd bug here and there new e9b5e54 ETOOMANYLAMBDAS new 1add335 Workaround two suspected Emacs bugs new 9ff97a6 Increase request timeout length to 10 seconds new a7ddce6 Support javascript's javascript-typescript-langserver new 39e8b9e Add (dummy) tests and Travis CI integration new d254f97 Solve another textDocument/didChange bug new c4ffabc Half-decent completion support new fc6879f Explain why didOpen on after-revert-hook is a bad idea new 889ef20 Tweak the async request engine. new 714e5be Half-baked textDocument/hover support new bbc64b4 Clean up client capabilities new d431d41 Fix bug in hover support new f257d63 * eglot.el: Reformat to shave off some lines. new fceb6bb Get rid of eglot--special-buffer-process new e964abe Get rid of eglot--buffer-open-count new e63dad0 Simplify mode-line code with a helper. new af14364 Only request stuff that server says it's capable of new d40f9ac Half-decent imenu support via textDocument/documentSymbol new dda11dd Try to fix some textDocument/completion bugs new 24466a9 When killing server, always wait 3 seconds new 1356844 Fix odd bugs new 37b7329 Reasonable textDocument/documentHighlight support new 3a6c637 Support textDocument/rename new 6e76b08 Support workspace/applyEdit new ecd334f Update README new 71e47d2 Fix odd bugs and tweak stuff new d33a9b5 Simplify eglot--signal-textDocument/didChange new 56c2e1d Get rid of eglot-mode new 8a80fb7 Simplify `eglot-shutdown` new 5ce9ab0 Call eglot-eldoc-function after completion finishes new 42177d0 New "deferred requests" that wait until server is ready new bfd82b5 Fancier RLS spinner new 3dcbc30 Add minimal headers, commentary and autoloads new 458bc69 More correctly setup rust-mode-related autoloads new 23b79e0 Shorten summary line to appease package-lint.el new 05c67ee Adjust flymake integration new 54fc885 More RLS-specifics: update Flymake diags when indexing done new f89f859 Simplify mode-line updating logic new 581608f Resist server failure during synchronous requests new c7b9002 Only call deferred actions after a full message has been received new d0b7773 Reduce log chatter new c7bd095 Improve eglot-eldoc-function new d1cdcf1 Friendlier M-x eglot new ab575d2 Rename functions. eglot--request is now the synchronous one new ef80455 Support :completionItem/resolve new 3e0f1c3 Misc little adjustments for readability new 0625b6c (eglot--xref-make): Fix Use of cl-destructuring-bind. new 9af84a2 Prepare to sumbit to GNU ELPA new 9577dfc Duh, json.el is in Emacs, and json-mode.el is useless here new 56cf02d Rework autoreconnection logic new 29f58a6 Get rid of catch/loop/throw idiom (suggested by Thien-Thi Nguyen) new 764347d New command eglot-help-at-point and a README update new 29f6b4c Tweak README.md new 77856c2 Reinstate the catch/loop/throw idiom in eglot-request new 418412b Fix copyright header. Obviously not since 2003 new 1fb2bcb Ask server for textDocument/signatureHelp if it supports it new 8448d9b Work with any old directory, no formal project needed new dc08e8e Fix automatic project creation new 49fb02f Use RLS in Travis CI and add actual tests new 9bf3166 Don't define a menu if nothing to show there for now new 41f5922 Now send willSaveWaitUntil new 589e1ea Remove an unused variable new 4c0bfc3 Support didChangeWatchedFiles with dynamic registration