[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch scratch/eglot2emacs created (now c8af476fc0)
From: |
João Távora |
Subject: |
branch scratch/eglot2emacs created (now c8af476fc0) |
Date: |
Fri, 23 Sep 2022 11:07:24 -0400 (EDT) |
capitaomorte pushed a change to branch scratch/eglot2emacs.
at c8af476fc0 ; 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 b2ea73ca9c Cancel timeouts when process dies unexpectedly
new b864866dac Minor cleanup
new 584ae9e0b5 Experimental diagnostic overlays
new dc6c221a76 Simplify `eglot--protocol-initialize`
new 5f1839bf17 Overhaul async mechanism safety
new 0391fdf062 Fix some byte-compilation warnings
new 2b972ba05b Fix mode line
new b84c050589 Start working on this again
new 2ff4dff73d * eglot.el (eglot-mode-map): move up before minor mode.
new 76dd0850a7 Doc fixes
new 69a3abdd0f Lay groundwork for uniform treatment of network
connections
new 09dfb21d3e Fix parser to accept multiple messages in one chunk
new c170dbedf8 Implement spinners and rls's window/progress
new 235574be15 Report server status in the mode-line
new 2c2aec71fb Don't switch to possibly dead buffer in sentinel
new 7d6547dfa4 Start experimenting with python
new dc5b0eb42a Auto update mode-line after setting some process
properties
new ef1924c8e2 Add eglot-clear-status interactive command
new 4a87a536b9 Correctly report what we currently are capable of
new 9bd7605d12 Change status to error everytime an error is found
new 5ece72dc5c Events buffer uses eglot-mode, source buffers use
eglot-editing-mode
new 4602fc02ae Less obstrusive flymake stuff for now
new dd467a4706 Rework commands for connecting and reconnecting
new f35d1d51cd Don't clutter ui with warnings
new bdfba7ed62 Slightly more user friendly start
new 2b8142d285 Ready to start fixing flymake integration
new dfe551f577 Auto-reconnect on unexpected connection loss
new b81dcb530f Redesign and simplify parser
new 8277231fa8 Rework connection restarting again
new 976896f2c3 Signal textdocument/didclose
new a371a8d2ad Simplify flymake integration
new b950cb40b6 Appease checkdoc.el
new 508c8efe23 Multiple servers per project are possible
new 7ba401ce38 Watch for files opened under umbrella of existing process
new 65f421f724 Fix assorted bugs
new dd7ce8988a Make m-x eglot the main entry point
new 878922319e Fix another flymake sync bug
new e366550f05 Must re-announce didopen after reconnect
new f706000c89 Fix flymake diagnostic positions
new 58c19b7683 Delete two useless forward declarations
new 4d1c9b903d Reorganize file
new e5e9437882 Rename rpc methods for clarity
new 22965312e1 Fix textdocument/didchange
new 6c84a2e8cb Fix a couple of rust-related edge cases
new 009062feb7 Trim some edges and add a bunch of boring rpc methods
new 0a587a881a * eglot.el (eglot--process-receive): skip null method
notifs.
new 465635456c Fix mode-line mouse-clicks from outside selected window
new 0d002553ed More correctly keep track of didopen/didclose per buffer
new 5a3d92cab3 Connect to lsp server via tcp
new c1e66cf87a When user declines to reconnect, first quit existing
server
new f26ff4e816 Make m-x eglot's interactive spec a separate function
new 6b01d54a76 Eglot-editing-mode becomes eglot--managed-mode
new fd9792fcc7 Workaround rls's regusal to treat nil as empty json
object
new 4f62e731d8 Don't auto-reconnect if last attempt lasted less than 3
seconds
new 70fc9cc98d Handle requests from server correctly
new 20e044b1a1 Reply to client/registercapability (don't handle it yet)
new 4b678a2fa9 Include source info in diagnostics
new adbed0c21a Make reported capabilities into its own function
new 42733a1e9f Use rooturi instead of rootpath
new 8e4db75209 Be quite explicit about our lack of capabilities right
now
new 1e893ab726 Honour textdocumentsync
new b83cd67751 Handle dynamic registration in general (but nothing
specific yet)
new 632a39624d Cleanup mistake with textdocumentitem and
textdocumentidentifier
new a2c01431d8 New helper eglot--sync-request
new bdd5f69618 Very basic xref support
new f23a8e8486 Half-decent xref support
new ace4b9150d Fix the odd bug here and there
new 963f9f4bf9 Etoomanylambdas
new ab858c8ab1 Workaround two suspected emacs bugs
new c5232c581e Increase request timeout length to 10 seconds
new 083ed923a7 Support javascript's javascript-typescript-langserver
new b9a3366a42 Solve another textdocument/didchange bug
new 2b307d5a11 Half-decent completion support
new 711d3a1d33 Explain why didopen on after-revert-hook is a bad idea
new 82c04790bd Tweak the async request engine.
new 72712e5aed Half-baked textdocument/hover support
new a3fb899cb5 Clean up client capabilities
new 283cfbcd4d Fix bug in hover support
new f1b7d1d15c * eglot.el: reformat to shave off some lines.
new 44cdd8062b Get rid of eglot--special-buffer-process
new ea51ade3a2 Get rid of eglot--buffer-open-count
new 3299a6a4b6 Simplify mode-line code with a helper.
new fe01515f05 Only request stuff that server says it's capable of
new 6fd613042e Half-decent imenu support via textdocument/documentsymbol
new 378a8371d2 Try to fix some textdocument/completion bugs
new 2c093aeb84 When killing server, always wait 3 seconds
new dbe81138d6 Fix odd bugs
new 3d3c12faf2 Reasonable textdocument/documenthighlight support
new ca678a54c8 Support textdocument/rename
new 038dd046bf Support workspace/applyedit
new 461d48a1d0 Fix odd bugs and tweak stuff
new 54a59fc000 Simplify eglot--signal-textdocument/didchange
new dad1b764c0 Get rid of eglot-mode
new 0aa29932a6 Simplify `eglot-shutdown`
new 0a9c14efad Call eglot-eldoc-function after completion finishes
new d76cc9aea9 New "deferred requests" that wait until server is ready
new 040d3e78ea Fancier rls spinner
new d2fa8fea9a Add minimal headers, commentary and autoloads
new eac9d29178 More correctly setup rust-mode-related autoloads
new dd4fada6b5 Shorten summary line to appease package-lint.el
new 4d5eff8c97 Adjust flymake integration
new 845063c090 More rls-specifics: update flymake diags when indexing
done
new f0d4e043b1 Simplify mode-line updating logic
new 8fb14037db Resist server failure during synchronous requests
new 68892622c9 Only call deferred actions after a full message has been
received
new 979a90456d Reduce log chatter
new 522bcdf0e8 Improve eglot-eldoc-function
new e36892ef51 Friendlier m-x eglot
new 0f73b0ef43 Rename functions. eglot--request is now the synchronous
one
new 572bb298b2 Support :completionitem/resolve
new 3d193f2f33 Misc little adjustments for readability
new dfd5947b11 (eglot--xref-make): fix use of cl-destructuring-bind.
new abfe41cc2c Prepare to sumbit to gnu elpa
new 1251bd1336 Duh, json.el is in emacs, and json-mode.el is useless
here
new 4af0193fad Rework autoreconnection logic
new fabee14ed5 Get rid of catch/loop/throw idiom (suggested by
thien-thi nguyen)
new 72b7487c55 New command eglot-help-at-point and a readme update
new 1aa3018c65 Fix copyright header. obviously not since 2003
new bb08431bca Reinstate the catch/loop/throw idiom in eglot-request
new 0804d7da83 Refactor json-rpc lib jrpc.el from eglot.el
new dd4d81696e Fix copyright header. obviously not since 2003
new c8bed84122 Ask server for textdocument/signaturehelp if it supports
it
new bf1365c4f8 Work with any old directory, no formal project needed
new 9d0984c0cd Fix automatic project creation
new 33583c642a Use rls in travis ci and add actual tests
new 188cd6da28 Don't define a menu if nothing to show there for now
new 92efbb8dac Now send willsavewaituntil
new d0e32ae98c Remove an unused variable
new c511228cda Support didchangewatchedfiles with dynamic registration
new 35dae7034b Proper server shutdown when jrpc.el is used
new 10a19cb11b Merge master into jsonrpc-refactor (using imerge)
new f529f554a3 Jrpc-connect is now passed a generic dispatching function
new 1deb7cf8ac Fix a ridiculous bug when generating transient projects
new 0d3e4ea1bd Fix a ridiculous bug when generating transient projects
new 149bb814e6 Shutdown server if connection initialization fails
new 11debd99a7 More quietly report request timeouts as events
new 4ef2d1875c Bump version and slightly improve doc
new 40e256a1bf Add php's php-language-server to built-in guessed servers
new d184bed317 Merge master into jsonrpc-refactor (using imerge)
new 8bbd2ba28d More flexible jrpc.el and improve eglot.el's doc
new a6046e9efd Simpler callback protocol for jsonrpc parameters and
results
new 5db50ddd47 Replace eglot--with-lsp-range with a function and
pcase-let
new 0eb1ef8d36 Simplify some function calling infrastructure
new b7d0c91afc * eglot.el (eglot--lambda): add missing indent spec.
new 1104060048 Fix eglot--error and eglot--message helpers
new 04da3b6abd Make it work on windows
new 3596240259 * eglot.el (version): bump to 0.3
new d29b695179 Merge branch 'master' into jsonrpc-refactor (using good
ol' git merge)
new 868d531c9e Improve jrpc.el's doc (and change jrpc-request's
protocol a tiny bit)
new 99cb423db6 Jrpc.el should know nothing of mode-line updates
new 2290ce100f Simplify some infrastructure fucntions
new 6ee1deebf7 Robustify timer handling for eglot--async-request
new 937f999a13 If we're going to send rootpath, better send an absolute
one
new a570c09fad Collect regions to change as markers, then edit
new 9606e5950a * eglot.el (eglot-clear-status): remember to update
modeline
new 75ca40724b Better decide what text exactly to present as completions
new 212db69280 Check capabilities before sending :completionitem/resolve
new 5b8aa5c908 Robustness fixes for the request mechanism
new 490ad2ce0b Handle managed buffers in own process var
new 749e83c57c Add some completion tests for pyls
new 65ed542c78 * eglot.el (version): bump to 0.4
new baf1b82eaa Rewrite a couple of defs and shave a yak
new 28b199c344 Fix a bug introduced in the previous commit
new 1b62dfd97b Rename jrpc.el to jsonrpc.el
new 351eb7f4ce Heroically merge master into jsonrpc-refactor (using
imerge)
new 3a127eed7b Get rid of jsonrpc.el customization group and timeout
new 7938af0c4a Introduce eglot-handle-request and
eglot-handle-notification as api
new 7e1b0cd133 Use an eieio class to represent a server.
new 40d7fc6f04 Do rust's rls hack properly with new class-based api
new c765121f67 Introduce new api methods for experimental clients to use
new 0ebd4a816d Fix indentation broken by the defclass monster commit
new e4039bba6d Add cquery support for c/c++ projects
new 3650efa65e Introduce eglot--debug for unimportant messages
new 45d4814a80 Demote unvisited diagnostics logging to debug level
new 9c14cfd179 Log debug messages through eglot--debug
new 5e767fb73c Merge branch use-eieio-server-defclass into
jsonrpc-refactor
new 8a7d17b5ea Document current api breaches a bit
new 1dcdc11127 Don't rely on flymake's idle timer for
textdocument/didchange
new 545e9c8a13 Simpify eglot--server-receive
new f165670762 Cleanup deferred request mechanism with a readable log
new 9499875370 Get rid of eglot--obj, an uninteresting abstraction
new 004702460d Really ensure eglot--shutdown deletes a process
completely
new d366cc04b7 Merge branch 'cquery-support' into master
new 9b468c1cc1 * eglot.el (version): bump to 0.5
new f20edc04ed Fix assorted cquery-related bugs
new 92593bb4c1 Set spinner in textdocument/didchange as it matters to
rls
new 22294e04cd Hopefully fix the flymake bootstrap problem
new d7864900a5 * eglot.el (version): bump to 0.6
new 882b571693 Correctly apply workspace edits in documentchanges form
new f7e5adc1b1 Set eglot--versioned-identifier to 0 on didopen
new 0c80d78b6d Make eglot--recent-changes a simpler list
new 7652fd0909 Be more criterious before running the idle timer
new 1febf62714 On reconnection, ignore errors of shutting down hung
server
new 9ad9651c4f New m-x eglot-stderr-buffer useful for debugging
new 84189937d4 More yak shaving
new db5dc348a1 * eglot.el (version): bump to 0.7
new 97b0735156 Merge master into jsonrpc-refactor (using imerge)
new 07d71f4ec7 Prevent possible cquery choke on :initializationoptions
new ee6ab89666 Add melpa badge
new 5a8d94c768 Revert an unfinished feature that made it to the last
commit
new 0e3d15f51c New command m-x eglot-code-actions
new 8429c2c2fe Explicitly trigger eldoc after workspace edits
new 7b040d4d18 Fix completionitem/resolve
new 7a5eb10f35 * eglot.el (version): bump to 0.8
new 172c58f304 * eglot.el (eglot-eldoc-function): remove spurious log
message
new 77a3060610 Fix another merge-related bug in eglot-eldoc-function
new b1b6be0c3a Fix typos
new 6bda52d1ac Support purposedly ignoring a server capability
new 24898b7d60 Cleanup the flymake 26.1 hack slightly
new b03cf2115b Shoosh compiler
new 41d646a830 Merge master into jsonrpc-refactor (using imerge)
new ae85cee296 * eglot.el (eglot--make-process): use 'utf-8-emacs-unix
new 34f10965a9 Slightly polish the flymake integration
new 43d9c7b865 Support json.c. api purely based on classes
new 8def9a6196 Simplify jsonrpc connection shutdown
new 75c6d5b9d3 Merge master into jsonrpc-refactor
new 96edec8d36 Check flymake-mode before calling report-fn
new af32ce29ef Attempt to handle rls sophisticated globs for
didchangewwatchedfiles
new 4d07619584 Fix indentation f@#$%^ by previous commit
new dbf42e651a Merge branch 'master' into jsonrpc-refactor
new ce96614d8a Request dispatcher's return value determines response
new 4d68028194 Simplify jsonrpc status setting
new bbfc1fdcf6 Remove connection grabbing antics from jsonrpc.el
new 1d61ff4043 New eglot-ensure to put in a major-mode's hook
new 97c17252e3 Merge branch 'master' into jsonrpc-refactor
new 7bdc94f79c * eglot.el (version): bump to 0.9
new c86410efad Fix bug in querying server capabilities
new 332657f444 * eglot.el (eglot-shutdown): accept timeout param.
new b21929955d Fix a bug when eglot--request times out
new 249dd2bd0d * eglot.el (version): bump to 0.10
new 504389181d Implement formatting ()
new e10f933d61 Minor cleanup to new textdocument/formatting feature
new 8bb92096ef Use gfm-mode for formatted strings ()
new 30d3874723 Improve eglot-ensure and mention it in readme.md
new 29b44f7ec1 Guess server for js2-mode and rjsx-mode
new 4f346ba250 Simplify eglot-format-buffer
new 6fc53b840d Defer textdocument/formatting requests
new 31b21e371d Apply text edits atomically
new 1e49d2f3b4 Report progress when applying edits
new 81b7c8e7d7 Apply text edits as a single undoable edit
new 7826b265a0 Empty ranges are valid in lsp
new c45e4a916a Merge master into jsonrpc-refactor (using imerge)
new d370eeb128 * eglot.el (version): bump to 0.11
new 55ed673ae7 Merge branch 'jsonrpc-refactor', bump version to 1.0
new 0c61c1b4a9 Implement tcp autostart/autoconnect (and support ruby's
solargraph)
new 5556a341ed Fix some rather silly bugs in some interactive specs
new d40cbb99a5 Fix typo in the solargraph server program
new 5b66bec822 Unbreak basic imenu functionality
new 9b3ef1315c Unbreak imenu for cquery servers (and probably more)
new 973b025522 Cache buffer's managing server
new 2b071ccba5 Bind default-directory when launching servers
new 1a58481719 Inhibit auto-reconnect until connection is established
new d599dfd79f Handle outrageously large and buggy line numbers
new d8a14e9ea8 Unbreak completion when no possible annotation
new 6aeaf37c9b Format documentation in completion annotations
new 03caf3bb27 * eglot.el (eglot-completion-at-point): fix broken
indentation
new f52846f56f Jsonrpc.el is now a gnu elpa depedency
new 46de6683a7 Handle experimental/unknown server methods gracefully
new 228ddf368d Implement workspace/didchangeconfiguration ()
new c959101180 Robustify in the face of manual mode changes
new 693e428251 Don't turn on flymake-mode any more than is needed
new eb7702b61d Fix messages of eglot-ensure
new 273c5b62f3 Add entry for haskell-ide-engine in
eglot-server-programs ()
new 9bc459df6d Be less verbose when using eglot-ensure
new eb279829cb Work around emacs bugs 32237, 32278 ()
new 6ffe90229b Fix typo in willsavewaituntil rpc request ()
new e6a801ccf6 Correctly make lsp positions in narrowed buffers
new 5fc7c9a9ef Implement textdocument/rangeformatting
new 308b1a9ee3 * eglot.el (eglot-client-capabilities): fix a typo.
new b14cba5cb7 Erase company-doc buffer in between doc requests
new 7b7312f8d6 Fix placement of diagnostics with same start and end
positions
new af0e2e5b1f Default eglot-handle-notifictiona|request must
&allow-other-keys
new ea04e60ce5 Eglot-workspace-configuration's keys needn't be keywords
new 71a3fb813f Accept functions as entries in eglot-server-programs
new c93150ebbe * eglot.el (eglot-initialization-options): fix spurious
typo.
new da11bba15e Notify server of recent changes before save notification
new c61b3624f5 Snappier completions that don't hinder typing
new 0eddf00dd9 Require jsonrpc.el 1.0.2 (gnu elpa didn't build 1.0.1)
new 4144d9adc5 * eglot.el (advice-add jsonrpc-request): add
&allow-other-keys
new c76c0240dc * eglot.el (eglot-cquery): capitalize docstring.
new 2ebf34f1e1 Add a generic eglot-execute-command api
new 4dc3c8d0dc Improve eglot-execute-command api to ease overriding by
servers
new ef5266397a Kill server's output and events buffers from
eglot-shutdown ()
new d164ece5cf Implement asynchronous server connection
new cc2044834e Control the size of the events buffer
new b5e28c2ea6 Handle edits to same position in the correct order
new 04415fa066 Add kotlin-language-server ()
new b72a4e4e2e Prompt for server in interactive eglot-shutdown
new 25a7b3d4a1 Fix eglot-capabilities when querying for multiple
features
new 0f33ef3e67 Support snippet completions
new 7704fbac0b Fix textdocument/hover responses where markedstring is a
plist ()
new 88e9d97119 Don't error if server replies with empty hover message
new 2190da4620 Add go-langserver ()
new 667821d296 Improve snippet support
new 9fa0dd072a Consider :triggercharacters in company completion
new 78102bc38a Ignore extra keys in textdocument/publishdiagnostics ()
new 93ca152da7 Correctly delete text before expanding snippet
completions
new d01b5110dc Handle case when :textdocumentsync isn't a number
new 6499223125 When exiting emacs, don't ask the user to confirm
killing processes ()
new acda0eda5a Don't warn on implementation-specific notifications ()
new ef5e1235f6 Fix serious breakage introduced by
new 2d6b24bfa6 Prefer ccls over cquery for c/c++
new 5c9fb5c398 Don't send other notifications before initialized
new 4771f2f685 Don't block kill-buffer-hook if server somehow hangs
new 169360c257 Autoload eglot-ensure ()
new 72eae8b7de Correctly map documentsymbol's :kind to its name ()
new d294a3e010 Make eglot-ignored-server-capabilites more user-friendly
()
new aa8653cc3f Eglot-ignored-server-capabilites: prefer all choices
over "other"
new 3d9a6f1e79 Handle case when diagnostic :character is out of range
new 119cb95f85 Merge pull request from
mkcms/fix-diagnostics-wrong-type-argument
new 3a24bc0f4f Sort references and definitions by line number
new ebacb5f861 Improve signature help
new 563011ec64 Allow function contacts to be interactive
new 5423eed9e7 Add support for eclipse.jdt.ls server
new c726fc7a9c Override eglot-execute-command for eclipse.jdt.ls server
new f3c43b4cac Handle case when project was not found in eclipse.jdt.ls
contact
new eae904fc9c Fix misspelling of "outstanding" ()
new 1f865ee560 Accept deprecated field in symbolinformation
new d84d55e6e4 Require subr-x at compile time ()
new 5f250e875a Remove duplicates from imenu
new 3d91b57629 Don't ignore unknown symbolkinds in imenu
new 7f062198c8 Use the container name of a symbol in imenu
new 025c926301 Add support for code action literals
new 9e720cbea4 Simplify eglot-code-action. fix compilation warning
new ee58d92a7d Fix a bug when response to definitions request is a
single location
new 40e4c88dd3 Make imenu hierarchical
new 6ea0216c53 * eglot.el (eglot-client-capabilities): mention
supported symbolkinds.
new 753dddc631 Support ocaml-language-server out of the box ()
new ee243c0c80 Move constants to top instead of forward-declaring
new a0365b6f81 Fix a bug introduced by previous bugfix
new 9f44e74ca9 Add ability to move to lsp-precise columns
new 6393580d7e Complex completions work when chosen from *completions*
new 35e431c829 Tweak solution to with a hint from fangrui song
new 5c97238692 Add support for textedits in completion
new 8df3bdd653 Add ability to report lsp-compliant columns
new 46d2bef4b3 Format documentation of signature parameters
new 2cf7905887 Treat tab characters as 1 column wide in position
conversion functions
new 0097d8d832 Properly delete inserted text after completion
new a6536ec8b0 Add support for r's languageserver ()
new f62f37d1ed Fix potential security issue fontifying lsp doc
new fbb7d1e918 Correctly insert textedit-less snippets
new 95d48a3576 * eglot.el (eglot-completion-at-point): less chatter.
new 333009a5c5 * eglot.el (version): bump to 1.2
new d3fc3ce7e7 Control strictness towards incoming lsp messages
new 1e7f94d75a Codeaction command can be a command object ()
new 6ae6ce8b92 Revert "codeaction command can be a command object ()"
new 9e700ebc4c Use entire line as xref summary when available
new e63203a8a7 Improve performance of xref summary line collection
new 1f3499320c * eglot.el (eglot--current-column): new helper.
new ad2efe3074 Touch up last commit
new bec802d003 Simplify interface of eglot--dbind macro
new 0bce2e3b2b Introduce eglot--dcase
new c515075fcb Use eglot--dbind for destructuring
new 92ce9a30f1 Don't break in indirect buffers
new 949cf4e7a9 Support completioncontext to help servers like ccls
new 1db7873cc1 Use javascript-typescript-langserver for typescript-mode
()
new 4a9914c0e6 Properly clear old diagnostics when making new ones
new 3b9e5b1a84 Robustify previous fix against non-standard insertion
bindings
new b873654835 Handle codeaction/command polymorphism with eglot--dcase
new f2326f4e13 Fix bug introduced by previous fix
new 0918c9d1a5 Adjust previous fix
new 30ab4e3eed Use eglot--dbind and eglot--lambda throughout
new 60f45f0f30 Warn about suspicious interface usage at compile-time
new dfd413c22d Scratch/use elpa flymake ()
new 6d3310d83c Handle array params to server notification or requests
new 7e7a9483a6 Be lenient by default to unknown methods or notifications
new 89e8803f61 * eglot.el (version): bump to 1.3
new d443408156 Apply eglot--format-markup to signature documentation
new cdee0e4674 Adjust active param highlighting in first line of
signature (1/3)
new d050540fef Adjust active param highlighting in first line of
signature (2/3)
new f0a2747ab5 Adjust active param highlighting in first line of
signature (3/3)
new cdb3de6bc6 Rewrite eglot--sig-info a bit for readability
new 47f5fdcae6 Add edebug specs to destructuring macros
new 1d72360e03 Don't make bogus responses to
client/(un)registercapability
new 24a1a7ffee Be more careful when making xref summaries
new d9e4306e2d Take over flymake and eldoc completely while managing
buffers
new 00fb3a184a * eglot.el (package-requires): require jsonrpc 1.0.7.
new b699fc7a19 Remove workaround for company bug that has been fixed
new d255e51c78 Use gfm-view-mode
new f5e3279958 Fix previous commit where workaround had been removed
new 9ffa6a91cd Actually make completion sorting work
new 5df556bb94 Slightly simplify eglot-completion-at-point
new 0c432de4cf Remove a hard dependency on flymake-mode
new 355c9c4a65 Allow read-only modes for markup rendering
new f3914c266f Run connection hooks with proper dir-locals
new 36b2fa8e7f * eglot.el (eglot-workspace-configuration): safe when
listp.
new 6ee4328ca1 Appease checkdoc
new a47618f19f Handle (un)registercapability requests via generic
functions
new f399be6d12 Prevent eldoc flicker when moving around
new aedb0d33de Show large docs in help buffer instead of echo are by
default
new 84234b25ba Fix test failure introduced by previous commit
new 791a117c5f Rename new defcustoms with friendlier names
new 58d4aff894 Display truncated docstring if too large for echo area
new 9cedae50a2 Handle label offsets in parameterinformation
new 1da5b8e1a3 Add built-in support for dart's dart_language_server
new d0c8c6011e Fix bug introduced by commit fixing this issue
new 1eb7535511 Protect against null messages from eldoc
new 5292c4b6f0 Consider mode derivation when guessing servers
new 36f294c2d5 Don't teardown company if started via trigger chars
new 232289d25c Use a less buggy flymake
new e123f41b9b Don't sort xref's by default
new aed8e9732b * eglot.el (xref-backend-references): don't use
return-from.
new 80433528c2 Unbreak build
new 9383a2cd5c Fix local function call in directory watcher ()
new 68d95c8125 Only consider eglot's own diagnostics in
eglot-code-actions
new c90f33dc21 Fix case when eglot-put-doc-in-help-buffer is nil
new faa0500ff7 Work around a bug in emacs's change detection
new 08d5a9dfde Add built-in support for elixir's elixir-ls ()
new 8f80ae1455 Leniently handle invalid positions sent by some servers
new d79232df76 Simplify eldoc usage ()
new 6ed1f50cde Fix a typo
new 3a9221c7b8 Fix invalid guess for php language server ()
new f18137499d Expand directory watcher globs containing ** ()
new 4a1d60dd6d Require array package to use current-line ()
new e62b6395ee Change the default of eglot-move-to-column-function
new 645bcfc6e5 Treat null/nil server capabilities as false
new c537770301 Use gopls server as the default for go ()
new 2b3e8deb4f Merge pull request from jorams/nil-capabilities-as-false
new 051bc27a10 Also use signature label offsets for parameter info
new 14f69da417 On buffer kill, first send didclose then teardown local
structures
new ad1cc3b1c2 Optionally shutdown after killing last buffer of managed
project ()
new 471434e068 Don't send dummy json object in "initialized"
notification ()
new fe37d7e3ce Revert "treat null/nil server capabilities as false"
new 0e7e66fe27 Unbreak elm language server which does use
:triggercharacters
new 1c8d062c5f Much less noisy mode line
new 374ce4e29f Allow user to set idle time to wait before processing
changes
new 83ed46b6a3 Support goto-{declaration, implementation,
typedefinition}
new 9bb0331d04 Rework and correct major part of xref glue code
new c848af80d5 Misc improvements to the xref glue code
new 0aaaea5ae9 Unbreak xref-find-definitions
new c2e084bc23 Fix eglot-completion-at-point to work with bare
completion-at-point
new 471fff254f Add support for the ada language server
new 320356985a Fix bug in workspace/didchangewatchedfiles
new ca9649c6b3 Always filter completions client-side by prefix
new c85ee68e29 Play along with lsp's filtertext hacks
new 024bbfc616 Use of company-capf backend in eglot-managed buffers
new 1aa5d0b528 Unbreak eglot--setq-saving if symbol is unbound
new 5d1c5c64b1 Don't choke on single-location reply to td/definition
new 21c2bb18d8 Protect against zero-length completions
new 5690e3a659 Don't immediately request completions in
eglot-completion-at-point
new 1002d7aeaf Let user keep control of some variables during eglot
sessions
new 703a09113c * eglot.el (version): bump to 1.5
new f71716e914 (again): fix issue with replace-buffer-contents
new 0816da8e78 Unbreak m-x vc-revert, which reverts preserving modes
new 72b9ef9865 Fix race condition when company-completing quickly
new 3352f2b095 Force company to align completion annotations in eglot
sessions
new 66f5a1a8ee Unbreak imenu
new 615bd6ce37 Expand readme.md section on handling quirky servers
new 4f6e4dc7a1 Support workspace/configuration
new 7cda807726 Don't run mode hooks in eglot--format-markup
new c8ea2c269a Support markdown for textdocument/hover ()
new ee794a8d5e Use completionitem/resolve more abundantly
new 27e0aa7333 Merge -onoff proxy code into minor mode function
new 08532c1b92 Simplify "maybe"-activation, dump "server" arg
new 19653f1e89 Only set eglot--cached-current-server by (more
aggressive) caching
new 8b4e81cdcf Don't choke on workspace/configuration with no scopeuri
new a6799b92ce Provide stable eglot-current-server helper
new c4f5e40ddb Protect against empty-string inserttext in completions
new fbcb55168f Set nobreak-char-display to nil in *eglot-help*
new b5f02979b6 Support serverinfo of lsp 3.15.0
new 1f784797d8 Let other imenu functions work if lsp server's doesn't
new 9101970ccf Ensure process starts in project's root
new 751abfe9b4 * eglot.el (eglot-completion-at-point): remove spurious
unrelated change.
new 46aa1aafd1 Waste less space in completion annotations
new 0453a21866 Fail when eglot-find-* finds no references
new 111973220f Locally tweak imenu-create-index-function
new 8f4b1d97dc Resolve compilation warnings
new 86da1f615c Unbreak window/showmessagerequest
new 084970d188 Allow non-standard keys in
textdocument/publishdiagnostics.
new 5c23517899 Add metals as the language server for scala
new 76a658aba1 Add built-in support for tex and friends
new be17d1824f New eglot-confirm-server-initiated-edits defcustom
new 1668a22f02 Add elm-language-server as the language server for elm
new d8a8bf448a * eglot.el (eglot-eldoc-function): fix outdated
docstring.
new 234bbd1032 Use completing-read in eglot-code-actions
new edbc24d9cd Avoid double shutdowns and simplify shutdown logic
new 03ac6a10ac Send exit as a notification
new 2d1a7b21d1 Merge pull request from
joaotavora/scratch/fix-277-exit-notification
new f9b59cf71f Abide by lsp when reporting and moving to columns
new 6e0ad2ac68 Document the changes in column calculation
new 4ff8f1ed8f Revert the last change about column calculation
new edf382a982 Support bug-reference-prog-mode
new 70e6157b56 Call shutdown/exit methods with params:{}, not null
new f6a72c5541 Introduce and use eglot--{}, the empty json object
new fbc2935366 Add public hook eglot-managed-mode-hook
new e81e6a24ad Make a public reader for project-nickname
new 595ca62d1c Ignore empty hover info
new 6b59dcf652 Send shutdown and exit messages without arguments
new c93c90842a Fix eglot-move-to-lsp-abiding-column ()
new f901fa91bc Abide by lsp when reporting and moving to columns
new 1c2dc32a6e * eglot.el (version): bump to 1.6
new 6bfa6e2532 Simplify a bit of code
new 2a0e0433cd Update dependencies and copyright years
new da888370b4 Use text-mode for plaintext markup
new 81385edb71 Don't reupdate help buffer if already rendered
new 23878a9404 * eglot.el (eglot-put-doc-in-help-buffer): tiny
docstring fix.
new 4d3cf33306 Create match xrefs when possible
new 047f99896c Tests: print contents of *eglot ...* buffers in batch
mode.
new 60914d2ca4 Hide eldoc-message on empty hover info
new bbf8a0d0f6 Also check types when destructuring lsp objects
new ed162088f3 Support hierarchical documentsymbol in eglot-imenu
new 3773b2638f Tweak docstring of eglot-server-programs
new e91a400076 Unbreak eglot--guess-contact for host-and-port case
new d285e0060a Kind of honour eldoc-echo-area-use-multiline-p
new a88cc9210b Always string-trim markup
new 5d00eac564 Declare markdown support iff gfm-view-mode installed
new c8efef647e Fontify markdown source code blocks by default
new 1914356c60 Tweak handling of eldoc-echo-area-use-multiline-p
new a2af2e1268 Remap display-local-help (c-h .) to eglot-help-at-point
new 3cef1072ad Survive hover responses with empty markdown strings
new 1091226b3a Simplify bug-reporting instructions
new 8cf6f4f292 Remove trailing whitespaces
new 11c9115749 Fix "free variable" warning
new f97e9aa75c Don't call flymake report function if flymake is disabled
new cc8bbf69ff Prompt for executable if supplied name does not exist
new c57ee29fb4 Require xref, project and eldoc from gnu elpa
new a5a1559e7a Correctly place diagnostics in narrowed buffers
new 6cc6392546 Add support for erlang_ls
new b2dd04ddbe Fix type error in eglot--xref-make-match
new 43f9294773 Rework computation of string given to eldoc (again)
new a4c7fdfd2d Also consider label of a completionitem for snippets
new e14934fef2 Replace uses of project-roots with project-root
new 5e0cd484ec Use filter-buffer-substring to get buffer text
new a56c77183a Simplify eglot-code-actions
new 29dbbcc185 Fix small problems around eglot's help buffer
new 8afdc3d2d1 Delegate "hover" and "signature" doc synchronization
efforts to eldoc
new 1d4caae44f * eglot.el (package-requires): require flymake 1.0.9 and
eldoc 1.2.0
new 814da26d35 Fix sorting of completion items
new 34ecaa4b16 Reload eldoc if needed on emacs < 28
new ad70179598 Use a hash-table for storing resolved completions
new 836127f394 Ensure completion terminates in correct buffer
new 9511280768 Add built-int support for godot engine
new 07c8219fa2 Correct paren mismatch blunder introduced by earlier
commit
new c37c30f134 Provide suitable default to m-x eglot-rename
new 9ca5b69dc6 Unbreak haskell's hie-wrapper built-in incantation
new 7d506b0cd5 Don't send json null (elisp nil) down the wire
new e4f4762e7a Handle lsp 3.15's ispreferred code action property
new 5646b874b2 Don't force eglot-strict-mode completely in eglot--dcase
new e609841f6f Don't let m-x fill-paragraph break didchange
new 73b1707c41 Robustify previous fix of onchange breakage
new d8b863651e Use haskell-language-server in eglot-server-programs
new d18f546844 Cosmetic whitespace fix (indentation, long lines,
tabs->spaces)
new ad47072c32 Allow eglot to stay out of xref configuration
new 2a88cffd69 Bump eglot version to 1.7
new e36fe59851 Use flex completion if available by default
new 7443bcf612 Don't block in eglot-imenu if performing non-essential
task
new 40453c991e Flex completion style is not available on emacs < 27
new 30139cc1f4 C-u m-x eglot discards class guessed by
eglot--guess-contact
new 9622f03b5c Unbreak interactivee eglot--connect for complex contact
specs
new 2abd7be6b3 Define a face for symbol highlight
new 26b10c6daf Use `path-separator', not ":", in eclipse/jdt custom
code
new 6d731fab9c Run exit-function only for finished completion
new 581dfb79bf Fix eglot-completion-at-point for multiple matches
new 8b4896f6d2 Add rnix-lsp server for nix-mode, community suggestion
new ae361b0a49 Add fortls for fotran (f90-mode)
new 49327fb04c Offer shortcut commands to commonly invoked code actions
new 470447e22a * eglot.el (eglot): tweak docstring grammar.
new 93eb72de22 #fix 608: fix bug in eglot-code-actions
new c266aa6b36 Flush pending changes to server before code actions
request
new 89fccba008 Fully handle lsp glob syntax
new bdf57d5d4e Support activeparameter property for signatureinformation
new c758ba1a4c Explicitly require seq.el
new 60724b8c52 Also override global flymake-diagnostic-functions
new 5e3fa130ba Prefer typescript-language-server for js&ts
new d64ea753f9 Remove duplicate entry for "registration" lsp type
new 176a6df74e Support phps-mode
new aa4e58409c Speed up glob matching 2x
new c453d8df36 Make eglot-ignored-server-capabilites defcustom a set
new 14d901c588 Tweak glob-parsing grammar
new e6fac38078 Simplify dir-watching strategy of w/didchangewatchedfiles
new 514f80333b Silence messages while formatting markup
new 93cbf54609 Handle null reply for textdocument/definition
new b3f31e0b65 Handle empty actions array in window/showmessagerequest
new 7c66a3e789 Fixup last commit to fix
new 5a4ca5fdf3 Urify better
new fa3ab318fa Protect against empty uris on windows
new a6229c50e8 Correctly protect against zero-length completion items
new 2076d34565 Add tramp support
new ff91ba70cd Convert colon to hex in uri
new 8c0b2ca7cf Remove highlight overlays immediately when symbol edited
new 88b8b93643 Simplify eglot--apply-workspace-edit
new 21b8ebf585 Indicate support for activeparameter
new e43c1ee0d4 Autoload eglot-workspace-configuration's safe-l-v spec
new a3e6b3b86c Add new command eglot-shutdown-all
new 8a5f63d8bd Add support for zls, the zig language server
new 602004dbb5 Offer better control over "languageid" value sent to lsp
new dcbb5a8d0b Generalize eglot-flymake-backend
new 83b993258b Attempt to speed up initial directory/glob correspondence
new 355f1b5f49 Highlight relevant part of xref hits using xref-match
face
new 7ae862de9e Add :company-kind to eglot-completion-at-point
new 28159d31c0 Merge pull request from mohkale/company-kind
new 0d89dd73ff Add a passing test demonstrating clangd + tramp works
new 5b33fe06c5 Make eglot-current-server work in notification handlers
new f634580f1b Declare eglot--cached-server before use
new f3e2ca5bd5 Switch default langserver for ocaml to ocamllsp
new a1fb92543c Add a completion-category-defaults entry
new edf75e87ca Allow lsp languageid to be overridden via
eglot-server-programs
new ded0aa0bfc Fix emacs 28 warning by avoiding positional args in
define-minor-mode
new 68baa57143 Provide context for finer project-find-functions
new fe9d6daa57 Correct path/uri when using tramp from ms windows
new 7eddb6f950 Manage cross-referenced files outside project in same
server
new 210b52859e Allow staying out of flymake-mode, eldoc-mode
new 712cf71d9d Support multiple servers out-of-box for same mode
new 78e994d855 Again speed up directory watching
new 02dc703631 Hard code an exception to "node_modules" directores
new b1a379cd77 Use project-files to know which directory watchers to
skip
new 7d1375df48 Consider tramp in eglot-alternatives
new 42508de4f6 Don't call eglot--executable-find more than needed
new f07df485c6 Transpose order of "pylsp" and "pyls" alternatives
new 7eb81031cd Add support for locationlink
new ace1573dfe Let eglot-flymake-backend be in flymake-d-functions even
if eglot off
new 82c3a2eff7 Fall back to prompting user if eglot-alternatives fails
new 64ffc80e6f Fix typo in user-visible
eglot-ignored-server-capabilities
new 67fe1c1ad5 Respect completion-regexp-alist in eglot's completion
table
new d7057441b8 Fixup last commit
new c0b74d0b59 Fix workspace/configuration handling when given scopeuri
directory
new 19d8085b76 Fix issues; severity not set in
textdocument/publishdiagnostics
new 720eaece6e Merge pull request from stephe-ada-guru/master
new 907bfe2a93 Mark eglot-completion-at-point capf "non-exclusive"
new c12a611e44 Add missing entries from completionitemkind
new da42cc61ed ; prefer https to http addresses
new 99c8752741 Use `locate-user-emacs-file` instead of `concat`
new 95355b59df Add yaml-language-server for yaml-mode
new bb20f7160d Use fortls also for fortran-mode
new 3ae9d68cd1 ; fix typos
new b5080625d4 Add pyright language server support for python-mode
new 5c9e47b525 Add support for the mint language server
new 8c40237913 Add lua-lsp support for lua-mode
new dcfaac4181 Minor checkdoc fixes
new 454744917f Support language server for html, css, json and docker
new a0165b71e7 Add variable to withhold the init req process id
new bb69ce9927 Un-reverse references in xref buffer
new ea565bb47a Add cmake-language-server for cmake-mode
new 4963fc84fc Add vim-language-server for vimrc-mode
new f5aa0ff361 ; update copyright years
new 4f144c02e4 ; fix license statement
new 1cd087edf5 Add up-to-date server executables for html/css/json
new 66e8d301f7 Properly print error message of eglot-alternatives
new fde389214d Add tooltip describing pending requests
new 538bfe2172 Support autoimporttext from pyright language server
new 859f49ee26 Don't error out on unsupported diagnostic.codedescription
new 4ebe038fbb Bump eglot version to 1.8
new 5da8744509 Support racket-langserver
new da8bd6c2f3 * eglot.el: improve commentary section.
new c662ba94b2 Support optional diagnostic.tags
new 7a8f2ff29d Change from symbol-at-point to thing-at-point
new 43787e0512 ; * eglot.el (eglot-server-initialized-hook): fix
punctuation.
new b2276331eb Print server command to events buffer
new b1f1482055 * eglot.el (eglot--connect): display seconds on timeout.
new c297ab6b09 * eglot.el (eglot-strict-mode): very minor docfix.
new 521327dca4 Improve backwards-compatibility of eglot-mode-map
new 93f767b91f Remove unnecessary compatibility code
new eb3d53c38f ; * eglot.el: move obsolete definition to new section.
new 5a82632dba Obsolete eglot--plist-keys in favor of map-keys
new 93d451ebc7 * eglot.el (eglot--server-capable): don't use obsolete
name.
new 0e1173f2bf ; unbreak tests on emacs 26
new 173969f586 Change rust language server to rust-analyzer
new 1ca8dde52f ; fix thinko in last commit
new 057d28ec84 Add clojure-lsp support for clojure
new b92b12e921 Enable lsp project-wide diagnostics via flymake
new baa4902786 Don't use :exclusive no
new 1647ce6341 Add support for optional completionitem.tags
new 7ca3432172 * eglot.el (eglot-handle-notification): silence
byte-compiler.
new 8a7792a2bc Properly check the completionitem.deprecated property
new 5daa9bf806 Prevent empty diagnostic tags vector hiding main
fontification
new 0b761d8140 Have a couple of lsp faces inherit from basic "shadow"
new cb1c0d94a0 Don't strip invisible text when formatting hover string
new 7a26eb3ba6 Use new jdtls script for eclipse jdt
new e3580c682f Change capability 'documentchanges' to t
new 63ad9974ed Don't advertise didchangewatchedfiles on tramp
new f7d95a81db Defend against broken move-to-column in recent emacs
new 7d30e21498 Add simple support for workspacefolders
new c68c664639 Use bounds of thing at point when asking for code actions
new 888f6fd250 Add omnisharp support for c#
new b6da809fdd Map more emacs variables to lsp formattingoptions fields
new 368e6fefe9 Implement on-type-formatting support
new f4fe4e0bc5 Tweak on-type-formatting code
new 143cb4d909 Easier initializationoptions in eglot-server-programs
new 83522d8554 Protect against empty firsttriggercharacter strings
new 579fcb7644 Make eglot--plist-keys a simple (non-map.el) helper again
new f28ce566d0 Rework eglot's mode-line
new f31c3a5dfb Tweak eglot mode-line menus
new a68ef30aee Guess language-id if manually entering server program
new f0d71ecda2 Check textdocumentsync/willsave cap before sending it
new bd5c0c026c Update invocation for out-of-box dart ls support
new fceaf50d07 Solve flymake diagnostics synchronization problems
new a4fb7ebc3b Add out-of-box support for futhark lsp server
new 3e1e801dc5 Ensure non-null :settings param in
didchangeconfiguration notif
new 2d85b566db Add out-of-box support for purescript lsp server
new 0d01b31db3 Ensure exit-function of eglot-c-at-point runs on exact
match
new f78421a694 Consider diagnostic.code when generating flymake
diagnostics
new eb188f9182 Fix egregious thinko in eglot--uri-to-path
new 25be2d53ae Use format string instead of concat
new 721c10276e Don't ignore flymake-no-changes-timeout
new f63dc10280 Update docstring of eglot-events-buffer-size
new fec59aa77e Reduce memory footprint of eglot--{}
new 293b3a1ef1 Reduce eldoc noise from hover messages
new 6aaaf0f17f Apply any additionaltextedits unconditionally
new 966bd7921e Prevent desktop.el from saving/restoring
eglot--managed-mode
new 21bd450c37 Add support for jedi-language-server
new 4cb9ea1bc4 Make c-u m-. work half decently
new 8fab5d14cf Experiment with grouping in
xref-backend-identifier-completion-table
new 82656cfa70 Cosmetic decisions guaranteed to tick off someone
somewhere (tm)
new 8c5ac56547 Tweak some details, fix some bugs
new 3583f02db7 Guess the "lsp identifier at point"
new 309d508d20 Be more conservative with the lsp identifier guess
new 2ff4ef32ab Eglot-workspace-configuration can be a function
new f8b0494c5e Appease byte-compiler warnings about wrong use of quotes
new e0582c3c86 Reply more reasonably to server's workspace/applyedit
new b1f36da9d1 Fix embarrassing paren-matching blunder in eglot.el
new 1fa820dbfe Always default eglot-strict-mode to nil
new 3759eaeaa6 Merge commit 'e6d5dfe816' to fix fallout of force-push
in gnu elpa
new bd906a4c13 Add out-of-box support for perl lsp server
new d8c2b17204 Add marksman server for markdown
new bb0adeb6a9 Fix jdtls support
new 6ab434b9a3 Don't return poorly supported "special elements" in
eglot-imenu
new 188af4d422 Add support for jedi-language-server (again)
new 9996920838 Prefer documentchanges to changes in server-initiated
edits
new d49af3bc1b Add eglot-show-configuration to debug workspace
configurations
new 7606c1c7d9 Rework readme.md about workspace configuration again
new fd0a3e783d Adjust last commit about workspace configuration
new d354457418 Allow :initializationoptions in eglot-server-programs
new 2e7fed203d Don't exceed max-specdl-size in big go projects
new 692c19b29d Allow eglot-workspace-configuration to be a plist
new 6fe6a0653e Don't return hash tables from e-w-configuration-plist
new 71e556360b Don't use three-argument plist-get
new 03deda52fc Revert "fix jdtls support"
new c8af476fc0 ; Merge from https://github.com/joaotavora/eglot
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch scratch/eglot2emacs created (now c8af476fc0),
João Távora <=