[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch scratch/eglot2emacs created (now 9ea179be88)
From: |
João Távora |
Subject: |
branch scratch/eglot2emacs created (now 9ea179be88) |
Date: |
Mon, 19 Sep 2022 12:04:00 -0400 (EDT) |
capitaomorte pushed a change to branch scratch/eglot2emacs.
at 9ea179be88 ; Merge from https://github.com/joaotavora/eglot
This branch includes the following new commits:
new 1e5b753bf4 Initial commit
new 6beef2a347 Remove a couple of comments
new 9f98c5a20d Rename eglot--continuations eglot--pending-continuations
new d663b9282d Add a mode-line construct and some minor fanciness
new 8baf2c7ac2 Introduce and use `eglot--current-process-or-lose'
new 18b582dde2 Handle notifications
new a0003aa19a Improve `eglot--current-process'
new 18ed39789a Organize a bit
new 3f7298d57a Cancel timeouts when process dies unexpectedly
new 07ed15a69b Minor cleanup
new 9385726727 Experimental diagnostic overlays
new 3bede3a57d Simplify `eglot--protocol-initialize`
new d341e77423 Overhaul async mechanism safety
new a7f705cd15 Fix some byte-compilation warnings
new 6c43ef184a Fix mode line
new 0acb2a132c Start working on this again
new c5a7b4bf8f * eglot.el (eglot-mode-map): move up before minor mode.
new 6a7a7a005f Doc fixes
new 624365ecb7 Lay groundwork for uniform treatment of network
connections
new fb8e9f9a2e Fix parser to accept multiple messages in one chunk
new e0ca323c7b Implement spinners and rls's window/progress
new 3369eaea82 Report server status in the mode-line
new 65ed51a4ae Don't switch to possibly dead buffer in sentinel
new 1c1f2875d9 Start experimenting with python
new 20153d9922 Auto update mode-line after setting some process
properties
new 096318cc30 Add eglot-clear-status interactive command
new 2075880e14 Correctly report what we currently are capable of
new 4c4d9f4587 Change status to error everytime an error is found
new e3218439b4 Events buffer uses eglot-mode, source buffers use
eglot-editing-mode
new a9a8583a3b Less obstrusive flymake stuff for now
new 8e44b51c5a Rework commands for connecting and reconnecting
new 9aae5301e8 Don't clutter ui with warnings
new 6a6d1902b9 Slightly more user friendly start
new cb92012ea3 Ready to start fixing flymake integration
new 63691d9220 Auto-reconnect on unexpected connection loss
new d634d58add Redesign and simplify parser
new 4972defc6c Rework connection restarting again
new 40fe781852 Signal textdocument/didclose
new d583b182b4 Simplify flymake integration
new de2c2d2e62 Appease checkdoc.el
new 8157c8358b Multiple servers per project are possible
new b1a1c362fb Watch for files opened under umbrella of existing process
new 4bcd762694 Fix assorted bugs
new 7ee7e4b1a5 Make m-x eglot the main entry point
new e7717ba981 Fix another flymake sync bug
new a363e7682a Must re-announce didopen after reconnect
new 94c5707c09 Fix flymake diagnostic positions
new 3ae5d1beb9 Delete two useless forward declarations
new f0f9fbfdd3 Reorganize file
new 3a1278bdca Rename rpc methods for clarity
new 07caf7d05f Fix textdocument/didchange
new dca1b1baa3 Fix a couple of rust-related edge cases
new fd65b8a1c3 Trim some edges and add a bunch of boring rpc methods
new 0227f0cfc9 * eglot.el (eglot--process-receive): skip null method
notifs.
new 4126615b92 Fix mode-line mouse-clicks from outside selected window
new 51158acd67 More correctly keep track of didopen/didclose per buffer
new 813276c5f0 Connect to lsp server via tcp
new f9bc26a475 When user declines to reconnect, first quit existing
server
new 1170634cfc Make m-x eglot's interactive spec a separate function
new 11d50dd62e Eglot-editing-mode becomes eglot--managed-mode
new 6f2708d820 Workaround rls's regusal to treat nil as empty json
object
new a5addf43cf Don't auto-reconnect if last attempt lasted less than 3
seconds
new a2f759e0c3 Handle requests from server correctly
new 41c78937cd Reply to client/registercapability (don't handle it yet)
new c89c585405 Include source info in diagnostics
new 239f3d0eb8 Make reported capabilities into its own function
new f61af381de Use rooturi instead of rootpath
new 5192047e20 Be quite explicit about our lack of capabilities right
now
new 1ac7792624 Honour textdocumentsync
new 7b6cdabef0 Handle dynamic registration in general (but nothing
specific yet)
new dc3f63d5c3 Cleanup mistake with textdocumentitem and
textdocumentidentifier
new 9be0be5e05 New helper eglot--sync-request
new d7cc23d265 Very basic xref support
new e0c7b47930 Half-decent xref support
new 7feeaeef09 Fix the odd bug here and there
new 7aa73638df Etoomanylambdas
new 3c3484e725 Workaround two suspected emacs bugs
new 458fe49d72 Increase request timeout length to 10 seconds
new e62edec1cc Support javascript's javascript-typescript-langserver
new 6ae42f0bc4 Solve another textdocument/didchange bug
new 5afff3c4bd Half-decent completion support
new ac97b59527 Explain why didopen on after-revert-hook is a bad idea
new 434f8202b0 Tweak the async request engine.
new 06973ddf11 Half-baked textdocument/hover support
new 823474d600 Clean up client capabilities
new 748aab09a1 Fix bug in hover support
new d13da6db33 * eglot.el: reformat to shave off some lines.
new cbc1e7ca04 Get rid of eglot--special-buffer-process
new 39a25ab15a Get rid of eglot--buffer-open-count
new e5330b9e55 Simplify mode-line code with a helper.
new e8e0dd9ffa Only request stuff that server says it's capable of
new 1e06fb4827 Half-decent imenu support via textdocument/documentsymbol
new e2821ca252 Try to fix some textdocument/completion bugs
new cf2b469479 When killing server, always wait 3 seconds
new 9679b18ee0 Fix odd bugs
new 2c29234689 Reasonable textdocument/documenthighlight support
new 4e4316ac71 Support textdocument/rename
new 6edb7e606e Support workspace/applyedit
new 650a7378cc Fix odd bugs and tweak stuff
new c63629c333 Simplify eglot--signal-textdocument/didchange
new 586fb6edc3 Get rid of eglot-mode
new 28cc9a24fe Simplify `eglot-shutdown`
new 41a646ba83 Call eglot-eldoc-function after completion finishes
new 417d8612d6 New "deferred requests" that wait until server is ready
new c6294cda39 Fancier rls spinner
new 31820654a3 Add minimal headers, commentary and autoloads
new 37a588f8f2 More correctly setup rust-mode-related autoloads
new 54a4ac1966 Shorten summary line to appease package-lint.el
new d5d35143ee Adjust flymake integration
new 73fc6e4070 More rls-specifics: update flymake diags when indexing
done
new 88c046b792 Simplify mode-line updating logic
new ee7ab95af6 Resist server failure during synchronous requests
new 11577f660f Only call deferred actions after a full message has been
received
new 3010c1dfd9 Reduce log chatter
new 1218d394bf Improve eglot-eldoc-function
new 0646d30a4b Friendlier m-x eglot
new 3230405726 Rename functions. eglot--request is now the synchronous
one
new 8a49dfb4d1 Support :completionitem/resolve
new 889b47e39f Misc little adjustments for readability
new 97d7c37e40 (eglot--xref-make): fix use of cl-destructuring-bind.
new e2bcaf2054 Prepare to sumbit to gnu elpa
new e21c44d9c5 Duh, json.el is in emacs, and json-mode.el is useless
here
new 0a8b633a8c Rework autoreconnection logic
new 17a5ced11f Get rid of catch/loop/throw idiom (suggested by
thien-thi nguyen)
new 90b554e8b7 New command eglot-help-at-point and a readme update
new 57b2a9cd28 Fix copyright header. obviously not since 2003
new fd5f02a940 Reinstate the catch/loop/throw idiom in eglot-request
new 24c331be13 Refactor json-rpc lib jrpc.el from eglot.el
new 086f1e45af Fix copyright header. obviously not since 2003
new 64095313ba Ask server for textdocument/signaturehelp if it supports
it
new 008feec7a6 Work with any old directory, no formal project needed
new e109ed56bc Fix automatic project creation
new a07e78d2d1 Use rls in travis ci and add actual tests
new d88f0feb71 Don't define a menu if nothing to show there for now
new a724a322b7 Now send willsavewaituntil
new 39c7898fe0 Remove an unused variable
new 512441a4de Support didchangewatchedfiles with dynamic registration
new 1a149188f8 Proper server shutdown when jrpc.el is used
new 95df5a59e7 Merge master into jsonrpc-refactor (using imerge)
new 7b65d1489e Jrpc-connect is now passed a generic dispatching function
new ba59ea1d42 Fix a ridiculous bug when generating transient projects
new b947ee7723 Fix a ridiculous bug when generating transient projects
new 1606fe02ca Shutdown server if connection initialization fails
new 48a1edd665 More quietly report request timeouts as events
new 6957eef16f Bump version and slightly improve doc
new b4d169bd37 Add php's php-language-server to built-in guessed servers
new d9e35cca8f Merge master into jsonrpc-refactor (using imerge)
new 61a14fa184 More flexible jrpc.el and improve eglot.el's doc
new 98b387fb92 Simpler callback protocol for jsonrpc parameters and
results
new 9bc13edd3f Replace eglot--with-lsp-range with a function and
pcase-let
new 035440bcb5 Simplify some function calling infrastructure
new 6c7802e884 * eglot.el (eglot--lambda): add missing indent spec.
new a2d1ac4e82 Fix eglot--error and eglot--message helpers
new a00a148504 Make it work on windows
new a0006816fa * eglot.el (version): bump to 0.3
new 6c0c74e303 Merge branch 'master' into jsonrpc-refactor (using good
ol' git merge)
new 324878291a Improve jrpc.el's doc (and change jrpc-request's
protocol a tiny bit)
new f6397bd775 Jrpc.el should know nothing of mode-line updates
new 76d6875a28 Simplify some infrastructure fucntions
new 4ef802900f Robustify timer handling for eglot--async-request
new ce298e0f90 If we're going to send rootpath, better send an absolute
one
new 22f417280f Collect regions to change as markers, then edit
new 9f7f7966eb * eglot.el (eglot-clear-status): remember to update
modeline
new c7f746b837 Better decide what text exactly to present as completions
new 87ebbae6e2 Check capabilities before sending :completionitem/resolve
new 1ab54eeeb6 Robustness fixes for the request mechanism
new 7d976ced8a Handle managed buffers in own process var
new 0bf492f901 Add some completion tests for pyls
new 139ff834e7 * eglot.el (version): bump to 0.4
new 72fa68db64 Rewrite a couple of defs and shave a yak
new 0f473628f2 Fix a bug introduced in the previous commit
new ac04a1d93c Rename jrpc.el to jsonrpc.el
new 49d4437f41 Heroically merge master into jsonrpc-refactor (using
imerge)
new abe796070f Get rid of jsonrpc.el customization group and timeout
new 6979a670b8 Introduce eglot-handle-request and
eglot-handle-notification as api
new a825e63b64 Use an eieio class to represent a server.
new 58c081f569 Do rust's rls hack properly with new class-based api
new c72ae58eef Introduce new api methods for experimental clients to use
new 7cf8f1b379 Fix indentation broken by the defclass monster commit
new 7f9f2aca5d Add cquery support for c/c++ projects
new 1878ef5480 Introduce eglot--debug for unimportant messages
new e94369c24d Demote unvisited diagnostics logging to debug level
new 79ed044fe6 Log debug messages through eglot--debug
new b0aa66e040 Merge branch use-eieio-server-defclass into
jsonrpc-refactor
new fea63b227c Document current api breaches a bit
new 371cc5d4a0 Don't rely on flymake's idle timer for
textdocument/didchange
new ded74bfe29 Simpify eglot--server-receive
new 6c7ebb71e3 Cleanup deferred request mechanism with a readable log
new 6bc969aa75 Get rid of eglot--obj, an uninteresting abstraction
new 1089a8ea8f Really ensure eglot--shutdown deletes a process
completely
new 13cea0e9a9 Merge branch 'cquery-support' into master
new 1f01e76a3f * eglot.el (version): bump to 0.5
new bf674c62e8 Fix assorted cquery-related bugs
new d787802cf1 Set spinner in textdocument/didchange as it matters to
rls
new f10305a2fd Hopefully fix the flymake bootstrap problem
new c4f47831c0 * eglot.el (version): bump to 0.6
new cd39b449e0 Correctly apply workspace edits in documentchanges form
new ab64d5d84b Set eglot--versioned-identifier to 0 on didopen
new 62afe19087 Make eglot--recent-changes a simpler list
new b4036b7ccf Be more criterious before running the idle timer
new ac660c67ca On reconnection, ignore errors of shutting down hung
server
new 8ed45f44af New m-x eglot-stderr-buffer useful for debugging
new a5a5cb36ca More yak shaving
new de527de322 * eglot.el (version): bump to 0.7
new 2e4454a544 Merge master into jsonrpc-refactor (using imerge)
new 46676c7ec6 Prevent possible cquery choke on :initializationoptions
new b3df54729e Add melpa badge
new 862b3f5442 Revert an unfinished feature that made it to the last
commit
new 58df1d09ab New command m-x eglot-code-actions
new 4c7fcb9018 Explicitly trigger eldoc after workspace edits
new ae0a6820e1 Fix completionitem/resolve
new 75033e0135 * eglot.el (version): bump to 0.8
new d4dd7ac765 * eglot.el (eglot-eldoc-function): remove spurious log
message
new 20bb614420 Fix another merge-related bug in eglot-eldoc-function
new b96c10a83b Fix typos
new 6a84accc27 Support purposedly ignoring a server capability
new 1387a03ebf Cleanup the flymake 26.1 hack slightly
new cfa1a126e7 Shoosh compiler
new 9a881e81bb Merge master into jsonrpc-refactor (using imerge)
new 7eb842a91e * eglot.el (eglot--make-process): use 'utf-8-emacs-unix
new 7d4dd83597 Slightly polish the flymake integration
new 544beca357 Support json.c. api purely based on classes
new fa88533d4b Simplify jsonrpc connection shutdown
new b933ab7363 Merge master into jsonrpc-refactor
new dc0dcc86d9 Check flymake-mode before calling report-fn
new bbc6bd3472 Attempt to handle rls sophisticated globs for
didchangewwatchedfiles
new d87f0d1158 Fix indentation f@#$%^ by previous commit
new f26198bd99 Merge branch 'master' into jsonrpc-refactor
new 4c7ab891de Request dispatcher's return value determines response
new e85db8efca Simplify jsonrpc status setting
new 77a68399bd Remove connection grabbing antics from jsonrpc.el
new b0c73d30f3 New eglot-ensure to put in a major-mode's hook
new 59a6974bed Merge branch 'master' into jsonrpc-refactor
new f0f68e9cac * eglot.el (version): bump to 0.9
new fa793b9fd7 Fix bug in querying server capabilities
new b536979685 * eglot.el (eglot-shutdown): accept timeout param.
new 3478e64b55 Fix a bug when eglot--request times out
new 33a477d9fd * eglot.el (version): bump to 0.10
new b6633af0f4 Implement formatting ()
new 0f0f834f3c Minor cleanup to new textdocument/formatting feature
new f5a7acd3d0 Use gfm-mode for formatted strings ()
new 4d374d5c72 Improve eglot-ensure and mention it in readme.md
new 6a8f331471 Guess server for js2-mode and rjsx-mode
new e08e9ce9d5 Simplify eglot-format-buffer
new dbd6b1758d Defer textdocument/formatting requests
new d51d297c1c Apply text edits atomically
new 9a45be5d83 Report progress when applying edits
new edd604438e Apply text edits as a single undoable edit
new c98b5b8a65 Empty ranges are valid in lsp
new 46ffb434fa Merge master into jsonrpc-refactor (using imerge)
new db8f8daacf * eglot.el (version): bump to 0.11
new e83d812036 Merge branch 'jsonrpc-refactor', bump version to 1.0
new 47c54594bc Implement tcp autostart/autoconnect (and support ruby's
solargraph)
new 5a476e7306 Fix some rather silly bugs in some interactive specs
new 558a02380c Fix typo in the solargraph server program
new 12001b9a14 Unbreak basic imenu functionality
new 547349908e Unbreak imenu for cquery servers (and probably more)
new 7c2ee6d6b2 Cache buffer's managing server
new 6bb604d1fc Bind default-directory when launching servers
new e7e7623b13 Inhibit auto-reconnect until connection is established
new fda8c2ed51 Handle outrageously large and buggy line numbers
new 31bec66567 Unbreak completion when no possible annotation
new 01c4b74688 Format documentation in completion annotations
new fe73ee7bb0 * eglot.el (eglot-completion-at-point): fix broken
indentation
new 0e7f21154e Jsonrpc.el is now a gnu elpa depedency
new 5f5a6c3f5c Handle experimental/unknown server methods gracefully
new 686888e775 Implement workspace/didchangeconfiguration ()
new 5ffcb68b94 Robustify in the face of manual mode changes
new 47dec3fb83 Don't turn on flymake-mode any more than is needed
new 09dd1e5181 Fix messages of eglot-ensure
new 54ab507bf2 Add entry for haskell-ide-engine in
eglot-server-programs ()
new bc73a5ac4c Be less verbose when using eglot-ensure
new 3ae55920b7 Work around emacs bugs 32237, 32278 ()
new aef9f138ec Fix typo in willsavewaituntil rpc request ()
new f69cd45748 Correctly make lsp positions in narrowed buffers
new 979b29d7f0 Implement textdocument/rangeformatting
new 630c476c97 * eglot.el (eglot-client-capabilities): fix a typo.
new 9b1d349393 Erase company-doc buffer in between doc requests
new 0cea5f2057 Fix placement of diagnostics with same start and end
positions
new 035cfdc536 Default eglot-handle-notifictiona|request must
&allow-other-keys
new 313f90e3c1 Eglot-workspace-configuration's keys needn't be keywords
new 9291cf4e70 Accept functions as entries in eglot-server-programs
new 161eeb4999 * eglot.el (eglot-initialization-options): fix spurious
typo.
new c8a3234898 Notify server of recent changes before save notification
new ed2b1ce452 Snappier completions that don't hinder typing
new 0e9b30f92f Require jsonrpc.el 1.0.2 (gnu elpa didn't build 1.0.1)
new 9f29ba28d6 * eglot.el (advice-add jsonrpc-request): add
&allow-other-keys
new e8c25709d2 * eglot.el (eglot-cquery): capitalize docstring.
new 52c2fab0d0 Add a generic eglot-execute-command api
new 17de174c2f Improve eglot-execute-command api to ease overriding by
servers
new 3fbb185e7f Kill server's output and events buffers from
eglot-shutdown ()
new 46d215836c Implement asynchronous server connection
new c64e8d8d83 Control the size of the events buffer
new 035caba5de Handle edits to same position in the correct order
new a5edee2504 Add kotlin-language-server ()
new 75472c4f25 Prompt for server in interactive eglot-shutdown
new 21b46ba997 Fix eglot-capabilities when querying for multiple
features
new 08ae86c570 Support snippet completions
new 1ab000850f Fix textdocument/hover responses where markedstring is a
plist ()
new 14f78a377e Don't error if server replies with empty hover message
new 38b75f90b3 Add go-langserver ()
new def9448924 Improve snippet support
new 702ebd61ea Consider :triggercharacters in company completion
new 620a530fda Ignore extra keys in textdocument/publishdiagnostics ()
new 80c5ef8015 Correctly delete text before expanding snippet
completions
new 5af81eced5 Handle case when :textdocumentsync isn't a number
new 98dc52f679 When exiting emacs, don't ask the user to confirm
killing processes ()
new 503f1d5760 Don't warn on implementation-specific notifications ()
new b24e20ccad Fix serious breakage introduced by
new 0036f31cdd Prefer ccls over cquery for c/c++
new bc7be060b9 Don't send other notifications before initialized
new a53241032d Don't block kill-buffer-hook if server somehow hangs
new e12c03816e Autoload eglot-ensure ()
new b8484b8cfc Correctly map documentsymbol's :kind to its name ()
new 727726a678 Make eglot-ignored-server-capabilites more user-friendly
()
new 6247f800b5 Eglot-ignored-server-capabilites: prefer all choices
over "other"
new 8ca761b9f8 Handle case when diagnostic :character is out of range
new d37c4d0a90 Merge pull request from
mkcms/fix-diagnostics-wrong-type-argument
new 2abaddf727 Sort references and definitions by line number
new 1072feeec0 Improve signature help
new 5ccfb9a0a9 Allow function contacts to be interactive
new 59ffc9eb68 Add support for eclipse.jdt.ls server
new 1f83355d28 Override eglot-execute-command for eclipse.jdt.ls server
new 8c488d18ea Handle case when project was not found in eclipse.jdt.ls
contact
new 6376b571dd Fix misspelling of "outstanding" ()
new 9f4895d4d5 Accept deprecated field in symbolinformation
new 2595806223 Require subr-x at compile time ()
new 7088098026 Remove duplicates from imenu
new d9274dd513 Don't ignore unknown symbolkinds in imenu
new 1844cae849 Use the container name of a symbol in imenu
new 23dfe2f774 Add support for code action literals
new 12387e1458 Simplify eglot-code-action. fix compilation warning
new dec16eeeb1 Fix a bug when response to definitions request is a
single location
new b4cfe80024 Make imenu hierarchical
new 44b255d65b * eglot.el (eglot-client-capabilities): mention
supported symbolkinds.
new 815e40deb1 Support ocaml-language-server out of the box ()
new 55f19eb0c3 Move constants to top instead of forward-declaring
new ae0f8d418c Fix a bug introduced by previous bugfix
new 4b58ba1418 Add ability to move to lsp-precise columns
new 4035ba5243 Complex completions work when chosen from *completions*
new 400d07799a Tweak solution to with a hint from fangrui song
new d399bd8d50 Add support for textedits in completion
new e570cb18c3 Add ability to report lsp-compliant columns
new 8ccb543437 Format documentation of signature parameters
new 42b7824448 Treat tab characters as 1 column wide in position
conversion functions
new 650b50c5ca Properly delete inserted text after completion
new ac38e99487 Add support for r's languageserver ()
new d4f870d1b9 Fix potential security issue fontifying lsp doc
new aca086d061 Correctly insert textedit-less snippets
new edc28624c3 * eglot.el (eglot-completion-at-point): less chatter.
new 47ddcdaae0 * eglot.el (version): bump to 1.2
new c9fe681aa5 Control strictness towards incoming lsp messages
new 395ea4a08e Codeaction command can be a command object ()
new 931ef8392a Revert "codeaction command can be a command object ()"
new 68bb979d4c Use entire line as xref summary when available
new 11392be8ea Improve performance of xref summary line collection
new 924177bedf * eglot.el (eglot--current-column): new helper.
new 0da240289f Touch up last commit
new 1dd2a4a8ff Simplify interface of eglot--dbind macro
new b31d0e16e5 Introduce eglot--dcase
new 8a0130e9d4 Use eglot--dbind for destructuring
new 23e1a3c5ff Don't break in indirect buffers
new c11c5cd5bc Support completioncontext to help servers like ccls
new 9faa9ff783 Use javascript-typescript-langserver for typescript-mode
()
new 05f5060010 Properly clear old diagnostics when making new ones
new d8a3a377f2 Robustify previous fix against non-standard insertion
bindings
new c3ba23b03b Handle codeaction/command polymorphism with eglot--dcase
new 7ad8ba6c22 Fix bug introduced by previous fix
new c76979cfd9 Adjust previous fix
new 3e27fbc00b Use eglot--dbind and eglot--lambda throughout
new e138837bdd Warn about suspicious interface usage at compile-time
new 3d1e7d37ac Scratch/use elpa flymake ()
new 2b3f997c20 Handle array params to server notification or requests
new 880896b365 Be lenient by default to unknown methods or notifications
new 07acb6d071 * eglot.el (version): bump to 1.3
new 5ccb9b96e1 Apply eglot--format-markup to signature documentation
new efed3ab53e Adjust active param highlighting in first line of
signature (1/3)
new 01230a7339 Adjust active param highlighting in first line of
signature (2/3)
new 2caeae15fd Adjust active param highlighting in first line of
signature (3/3)
new 2371b7755c Rewrite eglot--sig-info a bit for readability
new f14872f752 Add edebug specs to destructuring macros
new b31645b7e1 Don't make bogus responses to
client/(un)registercapability
new 13e796ab43 Be more careful when making xref summaries
new 5befe216cc Take over flymake and eldoc completely while managing
buffers
new 2d937c8029 * eglot.el (package-requires): require jsonrpc 1.0.7.
new 5d529cbbf9 Remove workaround for company bug that has been fixed
new 644ad60c1c Use gfm-view-mode
new dd29af5a03 Fix previous commit where workaround had been removed
new a181a1c04f Actually make completion sorting work
new d79da13f6e Slightly simplify eglot-completion-at-point
new 518e027835 Remove a hard dependency on flymake-mode
new b45023c778 Allow read-only modes for markup rendering
new 27eac436d1 Run connection hooks with proper dir-locals
new 7e308a1a64 * eglot.el (eglot-workspace-configuration): safe when
listp.
new c74fc71c8c Appease checkdoc
new e42dfc483f Handle (un)registercapability requests via generic
functions
new 98ef9c61bd Prevent eldoc flicker when moving around
new 89f22ab844 Show large docs in help buffer instead of echo are by
default
new 03ec726eab Fix test failure introduced by previous commit
new 68140739cc Rename new defcustoms with friendlier names
new 892e8a5d2a Display truncated docstring if too large for echo area
new 59fb58311f Handle label offsets in parameterinformation
new 659c64970a Add built-in support for dart's dart_language_server
new eb5a38d754 Fix bug introduced by commit fixing this issue
new 8e3c5a7137 Protect against null messages from eldoc
new f9fd91ce24 Consider mode derivation when guessing servers
new b545841e26 Don't teardown company if started via trigger chars
new c691141471 Use a less buggy flymake
new 596103c4a6 Don't sort xref's by default
new e7780eb54f * eglot.el (xref-backend-references): don't use
return-from.
new 0bc6f50e63 Unbreak build
new 6afa879882 Fix local function call in directory watcher ()
new b5ac5df8d8 Only consider eglot's own diagnostics in
eglot-code-actions
new 4955825808 Fix case when eglot-put-doc-in-help-buffer is nil
new 5c3d0cab79 Work around a bug in emacs's change detection
new 8cebfd22c1 Add built-in support for elixir's elixir-ls ()
new 8cadf0267c Leniently handle invalid positions sent by some servers
new 6a1369b918 Simplify eldoc usage ()
new b568899147 Fix a typo
new 318167708c Fix invalid guess for php language server ()
new 3de81402af Expand directory watcher globs containing ** ()
new 0e80d87727 Require array package to use current-line ()
new c98bb3bb44 Change the default of eglot-move-to-column-function
new 346795b414 Treat null/nil server capabilities as false
new e4e3677242 Use gopls server as the default for go ()
new 8cbed7c4bc Merge pull request from jorams/nil-capabilities-as-false
new e3af511ea6 Also use signature label offsets for parameter info
new 52c47e6d08 On buffer kill, first send didclose then teardown local
structures
new 3fdb9cd434 Optionally shutdown after killing last buffer of managed
project ()
new e34d65c74f Don't send dummy json object in "initialized"
notification ()
new 3ccebaca69 Revert "treat null/nil server capabilities as false"
new 5dec1ca3e8 Unbreak elm language server which does use
:triggercharacters
new f845100b43 Much less noisy mode line
new b9aca07bb7 Allow user to set idle time to wait before processing
changes
new 11153a8bd8 Support goto-{declaration, implementation,
typedefinition}
new 8161f19430 Rework and correct major part of xref glue code
new 56a8bf2b8f Misc improvements to the xref glue code
new 3a9029d874 Unbreak xref-find-definitions
new 45c75154de Fix eglot-completion-at-point to work with bare
completion-at-point
new f1d02ae546 Add support for the ada language server
new 98d5ff30a3 Fix bug in workspace/didchangewatchedfiles
new fe529a884c Always filter completions client-side by prefix
new 71f1690bdf Play along with lsp's filtertext hacks
new 483c25dcc6 Use of company-capf backend in eglot-managed buffers
new ade6bb7d60 Unbreak eglot--setq-saving if symbol is unbound
new 10bc14eede Don't choke on single-location reply to td/definition
new 58a2bddaf2 Protect against zero-length completions
new a58ae38a42 Don't immediately request completions in
eglot-completion-at-point
new 408366b2c6 Let user keep control of some variables during eglot
sessions
new f8446fd343 * eglot.el (version): bump to 1.5
new ba379ec60b (again): fix issue with replace-buffer-contents
new cfa69992ca Unbreak m-x vc-revert, which reverts preserving modes
new 5cf30dc753 Fix race condition when company-completing quickly
new 4a404c8151 Force company to align completion annotations in eglot
sessions
new 2572e7bc1b Unbreak imenu
new b512a679fb Expand readme.md section on handling quirky servers
new 37a29b1be6 Support workspace/configuration
new 4a25e4a3cb Don't run mode hooks in eglot--format-markup
new a5a23e9096 Support markdown for textdocument/hover ()
new 3399df82da Use completionitem/resolve more abundantly
new f2e6fcade5 Merge -onoff proxy code into minor mode function
new 3bcfa3e91b Simplify "maybe"-activation, dump "server" arg
new f320c2f705 Only set eglot--cached-current-server by (more
aggressive) caching
new 12f4f58477 Don't choke on workspace/configuration with no scopeuri
new a2917eeaf6 Provide stable eglot-current-server helper
new 4cab2074d3 Protect against empty-string inserttext in completions
new 317d915a04 Set nobreak-char-display to nil in *eglot-help*
new a880f35dac Support serverinfo of lsp 3.15.0
new e8cdec1894 Let other imenu functions work if lsp server's doesn't
new acd585315b Ensure process starts in project's root
new 280332c5b0 * eglot.el (eglot-completion-at-point): remove spurious
unrelated change.
new 12ae2652c9 Waste less space in completion annotations
new 6e366c37d1 Fail when eglot-find-* finds no references
new c9ed6bfef0 Locally tweak imenu-create-index-function
new efb3ba5536 Resolve compilation warnings
new 835f183b17 Unbreak window/showmessagerequest
new 652d36b6aa Allow non-standard keys in
textdocument/publishdiagnostics.
new b541e4a592 Add metals as the language server for scala
new 61c6658e09 Add built-in support for tex and friends
new b3de922919 New eglot-confirm-server-initiated-edits defcustom
new 9f0eb6d615 Add elm-language-server as the language server for elm
new 3b24a85af3 * eglot.el (eglot-eldoc-function): fix outdated
docstring.
new 5aac4be42f Use completing-read in eglot-code-actions
new c7bd97b67f Avoid double shutdowns and simplify shutdown logic
new a855a5f691 Send exit as a notification
new ea79a77adb Merge pull request from
joaotavora/scratch/fix-277-exit-notification
new e6524c1e53 Abide by lsp when reporting and moving to columns
new 2177256ec1 Document the changes in column calculation
new 86f1d75b29 Revert the last change about column calculation
new 7a11c9ef11 Support bug-reference-prog-mode
new 870ba460b8 Call shutdown/exit methods with params:{}, not null
new 00fa67790d Introduce and use eglot--{}, the empty json object
new 129b5b749c Add public hook eglot-managed-mode-hook
new ee11abc717 Make a public reader for project-nickname
new 78fa1d5084 Ignore empty hover info
new 8d943dde29 Send shutdown and exit messages without arguments
new b4be68dc14 Fix eglot-move-to-lsp-abiding-column ()
new adf0e9c07d Abide by lsp when reporting and moving to columns
new f9a56a43f3 * eglot.el (version): bump to 1.6
new 3d1902ded6 Simplify a bit of code
new 1bb8385926 Update dependencies and copyright years
new ead2a04b76 Use text-mode for plaintext markup
new 8dadfc93cc Don't reupdate help buffer if already rendered
new 55d547c9e0 * eglot.el (eglot-put-doc-in-help-buffer): tiny
docstring fix.
new e595b9aec4 Create match xrefs when possible
new 865ef8d356 Tests: print contents of *eglot ...* buffers in batch
mode.
new 308d484879 Hide eldoc-message on empty hover info
new 61dc9968fb Also check types when destructuring lsp objects
new b03c9bc991 Support hierarchical documentsymbol in eglot-imenu
new 6d2b6e0bcf Tweak docstring of eglot-server-programs
new ef2831ab44 Unbreak eglot--guess-contact for host-and-port case
new eebb43e91c Kind of honour eldoc-echo-area-use-multiline-p
new b0f84ec479 Always string-trim markup
new 99f42a65de Declare markdown support iff gfm-view-mode installed
new a29259ed40 Fontify markdown source code blocks by default
new d96acc3ce7 Tweak handling of eldoc-echo-area-use-multiline-p
new 8662473ca0 Remap display-local-help (c-h .) to eglot-help-at-point
new 0e02124c80 Survive hover responses with empty markdown strings
new 2cb5e1a9a0 Simplify bug-reporting instructions
new 132498b29a Remove trailing whitespaces
new 2eeb9f2444 Fix "free variable" warning
new 43f04fe0ad Don't call flymake report function if flymake is disabled
new 6009c36254 Prompt for executable if supplied name does not exist
new acc3b6951d Require xref, project and eldoc from gnu elpa
new 5b5cc0f8c1 Correctly place diagnostics in narrowed buffers
new 4f5824a391 Add support for erlang_ls
new ad7552623c Fix type error in eglot--xref-make-match
new d37dc94214 Rework computation of string given to eldoc (again)
new ee2ad9a3b0 Also consider label of a completionitem for snippets
new eec2b05a77 Replace uses of project-roots with project-root
new a0115e0958 Use filter-buffer-substring to get buffer text
new 8636b1d8c7 Simplify eglot-code-actions
new e3dea93477 Fix small problems around eglot's help buffer
new 294f5071ef Delegate "hover" and "signature" doc synchronization
efforts to eldoc
new 347f8b53a4 * eglot.el (package-requires): require flymake 1.0.9 and
eldoc 1.2.0
new 7aa29ece8f Fix sorting of completion items
new dffff5e1ca Reload eldoc if needed on emacs < 28
new 429f99ce65 Use a hash-table for storing resolved completions
new 604e189649 Ensure completion terminates in correct buffer
new dd2a8e8a7d Add built-int support for godot engine
new cabb1e6252 Correct paren mismatch blunder introduced by earlier
commit
new 6372c24aa9 Provide suitable default to m-x eglot-rename
new e963162651 Unbreak haskell's hie-wrapper built-in incantation
new 6cfd86e7e9 Don't send json null (elisp nil) down the wire
new b8f53c27ed Handle lsp 3.15's ispreferred code action property
new 54718f63d3 Don't force eglot-strict-mode completely in eglot--dcase
new 08c1c5afe2 Don't let m-x fill-paragraph break didchange
new 9586bbaf62 Robustify previous fix of onchange breakage
new dc1b09451e Use haskell-language-server in eglot-server-programs
new 198440aa8d Cosmetic whitespace fix (indentation, long lines,
tabs->spaces)
new 66b507e98a Allow eglot to stay out of xref configuration
new b4f16861fa Bump eglot version to 1.7
new cbcd9fef8e Use flex completion if available by default
new b004b3289f Don't block in eglot-imenu if performing non-essential
task
new 5f854bbf2d Flex completion style is not available on emacs < 27
new 4bbc6ed416 C-u m-x eglot discards class guessed by
eglot--guess-contact
new 4007cfcbc1 Unbreak interactivee eglot--connect for complex contact
specs
new cdf3565c89 Define a face for symbol highlight
new 62ce72a117 Use `path-separator', not ":", in eclipse/jdt custom
code
new c16cc3fc20 Run exit-function only for finished completion
new 520656fb9c Fix eglot-completion-at-point for multiple matches
new 21fd6b1f6d Add rnix-lsp server for nix-mode, community suggestion
new 7ba35ac8e7 Add fortls for fotran (f90-mode)
new 7a02cb8eda Offer shortcut commands to commonly invoked code actions
new 2ec8bee377 * eglot.el (eglot): tweak docstring grammar.
new 4404860de6 #fix 608: fix bug in eglot-code-actions
new c32d9c9553 Flush pending changes to server before code actions
request
new 616c227419 Fully handle lsp glob syntax
new eceffd53e0 Support activeparameter property for signatureinformation
new ce3067b9b1 Explicitly require seq.el
new d03bf93ddd Also override global flymake-diagnostic-functions
new c9e98a94e1 Prefer typescript-language-server for js&ts
new 441c2be8de Remove duplicate entry for "registration" lsp type
new 96b6453ca3 Support phps-mode
new 511113c2da Speed up glob matching 2x
new d2c10685a1 Make eglot-ignored-server-capabilites defcustom a set
new 236e52f2df Tweak glob-parsing grammar
new 06a359bb6b Simplify dir-watching strategy of w/didchangewatchedfiles
new c232c9a14c Silence messages while formatting markup
new 0a7064b1a4 Handle null reply for textdocument/definition
new e832709aad Handle empty actions array in window/showmessagerequest
new a28b5fa9af Fixup last commit to fix
new a4e439930b Urify better
new 6afd4c390d Protect against empty uris on windows
new d5fdce7848 Correctly protect against zero-length completion items
new 24bc68b0bf Add tramp support
new 9c6c1b5163 Convert colon to hex in uri
new 98fc63f27c Remove highlight overlays immediately when symbol edited
new 7d0271670c Simplify eglot--apply-workspace-edit
new aabc7b20bd Indicate support for activeparameter
new e5e8d92841 Autoload eglot-workspace-configuration's safe-l-v spec
new 6880e7c831 Add new command eglot-shutdown-all
new 679f5e0622 Add support for zls, the zig language server
new e7349fd311 Offer better control over "languageid" value sent to lsp
new 74ce4901ed Generalize eglot-flymake-backend
new b8b59ac488 Attempt to speed up initial directory/glob correspondence
new ec7f5ccd36 Highlight relevant part of xref hits using xref-match
face
new 6698b1c296 Add :company-kind to eglot-completion-at-point
new 047577b7c0 Merge pull request from mohkale/company-kind
new 7817559d61 Add a passing test demonstrating clangd + tramp works
new 76d4e51518 Make eglot-current-server work in notification handlers
new 944f2532a4 Declare eglot--cached-server before use
new 24e6e482c9 Switch default langserver for ocaml to ocamllsp
new 1f81f7b57a Add a completion-category-defaults entry
new d2f0117175 Allow lsp languageid to be overridden via
eglot-server-programs
new df46ca67ec Fix emacs 28 warning by avoiding positional args in
define-minor-mode
new 64213db9e4 Provide context for finer project-find-functions
new 7525ce2a28 Correct path/uri when using tramp from ms windows
new b2d68a1440 Manage cross-referenced files outside project in same
server
new 97762f6d3a Allow staying out of flymake-mode, eldoc-mode
new 8e8033db41 Support multiple servers out-of-box for same mode
new 6e22812b81 Again speed up directory watching
new 6d8590bdee Hard code an exception to "node_modules" directores
new d097be26a5 Use project-files to know which directory watchers to
skip
new 4461d4434a Consider tramp in eglot-alternatives
new 589fab4bd2 Don't call eglot--executable-find more than needed
new cffb629ee4 Transpose order of "pylsp" and "pyls" alternatives
new 307f8a0eae Add support for locationlink
new 49c4c9495e Let eglot-flymake-backend be in flymake-d-functions even
if eglot off
new 108f3928de Fall back to prompting user if eglot-alternatives fails
new 3015424316 Fix typo in user-visible
eglot-ignored-server-capabilities
new 28e98c0dff Respect completion-regexp-alist in eglot's completion
table
new 5397fb18d0 Fixup last commit
new 506b48bc78 Fix workspace/configuration handling when given scopeuri
directory
new 6590f3c442 Fix issues; severity not set in
textdocument/publishdiagnostics
new dbf53151f2 Merge pull request from stephe-ada-guru/master
new cd66f21c2d Mark eglot-completion-at-point capf "non-exclusive"
new 2ca52ecfa0 Add missing entries from completionitemkind
new 5738d8850c ; prefer https to http addresses
new 990b4195cd Use `locate-user-emacs-file` instead of `concat`
new b0f3744949 Add yaml-language-server for yaml-mode
new db80137e03 Use fortls also for fortran-mode
new 387c4475e2 ; fix typos
new 7f2a26993b Add pyright language server support for python-mode
new 20881d5eb4 Add support for the mint language server
new e961b8c7fc Add lua-lsp support for lua-mode
new 721d972747 Minor checkdoc fixes
new ac0d9871e5 Support language server for html, css, json and docker
new 611035a8fd Add variable to withhold the init req process id
new 94843da1b5 Un-reverse references in xref buffer
new e8a928a43b Add cmake-language-server for cmake-mode
new 3283da25aa Add vim-language-server for vimrc-mode
new ce6c435d8a ; update copyright years
new 497a53c4c4 ; fix license statement
new 4f78146037 Add up-to-date server executables for html/css/json
new 606d02aa0b Properly print error message of eglot-alternatives
new 14e828b1db Add tooltip describing pending requests
new f14f307d82 Support autoimporttext from pyright language server
new 9125043c30 Don't error out on unsupported diagnostic.codedescription
new 58931a3ca8 Bump eglot version to 1.8
new 095fe4c93a Support racket-langserver
new cf72c12d28 * eglot.el: improve commentary section.
new af21eea862 Support optional diagnostic.tags
new 2b3de4c695 Change from symbol-at-point to thing-at-point
new 0a24e96770 ; * eglot.el (eglot-server-initialized-hook): fix
punctuation.
new 985d8feab1 Print server command to events buffer
new 80e6e19255 * eglot.el (eglot--connect): display seconds on timeout.
new 54d066d400 * eglot.el (eglot-strict-mode): very minor docfix.
new 34a6a9c744 Improve backwards-compatibility of eglot-mode-map
new e3b872baf4 Remove unnecessary compatibility code
new 204efba160 ; * eglot.el: move obsolete definition to new section.
new 55f797a97f Obsolete eglot--plist-keys in favor of map-keys
new 44fff1396e * eglot.el (eglot--server-capable): don't use obsolete
name.
new 93b93debe1 ; unbreak tests on emacs 26
new 6f175da526 Change rust language server to rust-analyzer
new be09843f29 ; fix thinko in last commit
new c2f01be4c1 Add clojure-lsp support for clojure
new e38715bd98 Enable lsp project-wide diagnostics via flymake
new e1ae14bea5 Don't use :exclusive no
new 577f340ca6 Add support for optional completionitem.tags
new a1766a9bc0 * eglot.el (eglot-handle-notification): silence
byte-compiler.
new 9e66e7c315 Properly check the completionitem.deprecated property
new ef6eab9273 Prevent empty diagnostic tags vector hiding main
fontification
new 6722fda451 Have a couple of lsp faces inherit from basic "shadow"
new 88fe2acc9a Don't strip invisible text when formatting hover string
new 6b3a5fb1e0 Use new jdtls script for eclipse jdt
new dfd5c14a51 Change capability 'documentchanges' to t
new 0ec0a4041f Don't advertise didchangewatchedfiles on tramp
new fce1f3ac1a Defend against broken move-to-column in recent emacs
new 7276a55e25 Add simple support for workspacefolders
new b03b43c5bd Use bounds of thing at point when asking for code actions
new db9a59c420 Add omnisharp support for c#
new f25d7ef80b Map more emacs variables to lsp formattingoptions fields
new 34a1cf60d7 Implement on-type-formatting support
new 592ea9c438 Tweak on-type-formatting code
new 1f900d9abc Easier initializationoptions in eglot-server-programs
new 56ccf1fa3e Protect against empty firsttriggercharacter strings
new 8e26cc80f9 Make eglot--plist-keys a simple (non-map.el) helper again
new 5880b433f4 Rework eglot's mode-line
new 33e6755c9c Tweak eglot mode-line menus
new 9b53c88efb Guess language-id if manually entering server program
new 7859229d15 Check textdocumentsync/willsave cap before sending it
new 46b17925a0 Update invocation for out-of-box dart ls support
new 68326c929b Solve flymake diagnostics synchronization problems
new 4defdd9220 Add out-of-box support for futhark lsp server
new bd87f924e1 Ensure non-null :settings param in
didchangeconfiguration notif
new 52b999a951 Add out-of-box support for purescript lsp server
new e4c8d38446 Ensure exit-function of eglot-c-at-point runs on exact
match
new ef85b8c996 Consider diagnostic.code when generating flymake
diagnostics
new fcf34b4c79 Fix egregious thinko in eglot--uri-to-path
new 9ce9f9cea0 Use format string instead of concat
new 5c842f6794 Don't ignore flymake-no-changes-timeout
new 7d342a6aae Update docstring of eglot-events-buffer-size
new 6983dd7535 Reduce memory footprint of eglot--{}
new 79f0f78d58 Reduce eldoc noise from hover messages
new c35b4617b7 Apply any additionaltextedits unconditionally
new 14e8c47895 Prevent desktop.el from saving/restoring
eglot--managed-mode
new 931c28505a Add support for jedi-language-server
new 6b73eaec5c Make c-u m-. work half decently
new 8ae2a38739 Experiment with grouping in
xref-backend-identifier-completion-table
new bd8a4b00cd Cosmetic decisions guaranteed to tick off someone
somewhere (tm)
new f41ee8d0b3 Tweak some details, fix some bugs
new bc5d332270 Guess the "lsp identifier at point"
new 6a97d119a5 Be more conservative with the lsp identifier guess
new 8190a95379 Eglot-workspace-configuration can be a function
new 2a2db2843e Appease byte-compiler warnings about wrong use of quotes
new c189a22c2b Reply more reasonably to server's workspace/applyedit
new e1ce003dd3 Fix embarrassing paren-matching blunder in eglot.el
new be797f8133 Always default eglot-strict-mode to nil
new b609b4a96b Merge commit 'c558fd6a24' to fix fallout of force-push
in gnu elpa
new 5bce95f3b5 Add out-of-box support for perl lsp server
new 71cd2c29f0 Add marksman server for markdown
new 9a5be5297f Fix jdtls support
new 3371e0073b Don't return poorly supported "special elements" in
eglot-imenu
new 33d254cfe7 Add support for jedi-language-server (again)
new 814ae50e8b Prefer documentchanges to changes in server-initiated
edits
new 63115a9d08 Add eglot-show-configuration to debug workspace
configurations
new 9e5c327ebc Rework readme.md about workspace configuration again
new 32b54a9efa Adjust last commit about workspace configuration
new b4601ed440 Allow :initializationoptions in eglot-server-programs
new b9c47779ba Don't exceed max-specdl-size in big go projects
new 24fb67c2ca Allow eglot-workspace-configuration to be a plist
new 5bf7809288 Don't return hash tables from e-w-configuration-plist
new 077c48afd1 Don't use three-argument plist-get
new 76df5feb85 Revert "fix jdtls support"
new 9ea179be88 ; Merge from https://github.com/joaotavora/eglot
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch scratch/eglot2emacs created (now 9ea179be88),
João Távora <=