]> git.eshelyaron.com Git - emacs.git/log
emacs.git
6 years agoRework commands for connecting and reconnecting
João Távora [Wed, 2 May 2018 14:06:50 +0000 (15:06 +0100)]
Rework commands for connecting and reconnecting

* eglot.el (eglot--current-process-or-lose): Add doc.
(eglot--command): Remove.
(eglot--bootstrap-fn): New process-local variable.
(eglot--connect): Redesign.
(eglot-make-local-process): New function.
(eglot-reconnect): New interactive command.
(eglot-new-process): Redesign.
(eglot--process-sentinel): Add doc.
(eglot--protocol-initialize): Rework.
(eglot--mode-line-format): Use eglot-reconnect.

6 years agoLess obstrusive flymake stuff for now
João Távora [Wed, 2 May 2018 12:54:37 +0000 (13:54 +0100)]
Less obstrusive flymake stuff for now

* eglot.el (eglot--after-change, eglot-flymake-backend): Fix.

6 years agoEvents buffer uses eglot-mode, source buffers use eglot-editing-mode
João Távora [Wed, 2 May 2018 12:37:35 +0000 (13:37 +0100)]
Events buffer uses eglot-mode, source buffers use eglot-editing-mode

* eglot.el (eglot--special-buffer-process): New var.
(eglot--current-process): Consider eglot--special-buffer-process.
(eglot-events-buffer): Use eglot-mode
(eglot-editing-mode): New minor mode.
(eglot-mode): Turns on eglot-editing-mode maybe.

6 years agoChange status to error everytime an error is found
João Távora [Wed, 2 May 2018 12:33:02 +0000 (13:33 +0100)]
Change status to error everytime an error is found

* eglot.el (eglot--process-receive): Also set error status.
(eglot--request): Fix a compilation warning.

6 years agoCorrectly report what we currently are capable of
João Távora [Wed, 2 May 2018 12:32:13 +0000 (13:32 +0100)]
Correctly report what we currently are capable of

Which is almost nothing.

* eglot.el (eglot--protocol-initialize): Clean up.

6 years agoAdd eglot-clear-status interactive command
João Távora [Wed, 2 May 2018 12:31:26 +0000 (13:31 +0100)]
Add eglot-clear-status interactive command

* eglot.el (eglot-clear-status): New
(eglot-forget-pending-continuations): Fix bug.
(eglot--mode-line-format): Add link to eglot-clear-status.

6 years agoAuto update mode-line after setting some process properties
João Távora [Wed, 2 May 2018 12:28:18 +0000 (13:28 +0100)]
Auto update mode-line after setting some process properties

* eglot.el (eglot--define-process-var): Rework.
(eglot--short-name, eglot--spinner, eglot--status): Update mode-line
after setting it.

6 years agoStart experimenting with python
João Távora [Wed, 2 May 2018 11:05:47 +0000 (12:05 +0100)]
Start experimenting with python

* eglot.el (eglot-executables): Add pyls.

6 years agoDon't switch to possibly dead buffer in sentinel
João Távora [Wed, 2 May 2018 11:04:56 +0000 (12:04 +0100)]
Don't switch to possibly dead buffer in sentinel

* eglot.el (eglot--process-sentinel): Don't with-current-buffer.

6 years agoReport server status in the mode-line
João Távora [Tue, 1 May 2018 22:13:49 +0000 (23:13 +0100)]
Report server status in the mode-line

* eglot.el (eglot--status): New var.
(eglot--log-event): Try to be more useful for other stuff.
(eglot--protocol-initialize): Set status to nil on
successful connect.
(eglot--window/showMessage): Set status to error if needed.
(eglot--mode-line-format): Display status if serious.

6 years agoImplement spinners and rls's window/progress
João Távora [Tue, 1 May 2018 21:47:09 +0000 (22:47 +0100)]
Implement spinners and rls's window/progress

* eglot.el (eglot--window/progress): New.
(eglot--mode-line-format): Rework.
(eglot--snpinner): New var.
(compile): require it.

6 years agoFix parser to accept multiple messages in one chunk
João Távora [Tue, 1 May 2018 21:30:09 +0000 (22:30 +0100)]
Fix parser to accept multiple messages in one chunk

* eglot.el (eglot--process-filter): Redesign slightly.
(eglot--message-mark): Remove. don't need this.

6 years agoLay groundwork for uniform treatment of network connections
João Távora [Tue, 1 May 2018 09:46:06 +0000 (10:46 +0100)]
Lay groundwork for uniform treatment of network connections

* eglot.el (eglot--connect): New helper.
(eglot-new-process): Use it.
(pcase): Require it.

6 years agoDoc fixes
João Távora [Tue, 1 May 2018 09:18:31 +0000 (10:18 +0100)]
Doc fixes

* eglot.el (eglot-mode-map): Move up before minor mode.

6 years ago* eglot.el (eglot-mode-map): move up before minor mode.
João Távora [Tue, 1 May 2018 09:14:53 +0000 (10:14 +0100)]
* eglot.el (eglot-mode-map): move up before minor mode.

6 years agoStart working on this again
João Távora [Mon, 30 Apr 2018 17:54:54 +0000 (18:54 +0100)]
Start working on this again

* eglot.el (url-util): Require it.
(eglot--process-sentinel): pending continuations now are quads (added env).
(eglot--process-filter): Unwind message markers correctly if handling fails.
(eglot--obj): Simple macro.
(eglot--log-event): Add some info to logged event.
(eglot--environment-vars, eglot--environment): Helper vars.
(eglot--process-receive): Improve.
(eglot--process-send): Niver log.
(eglot--request): Use eglot--obj. Add environment.
(eglot--notify): New helper.
(eglot--protocol-initialize): RLS must like file://
(eglot--current-flymake-report-fn): New var.
(eglot--textDocument/publishDiagnostics): Use flymake from Emacs 26.
(eglot-mode): Proper minor mode.
(eglot--recent-changes, eglot--versioned-identifier): New stuff.
(eglot--current-buffer-versioned-identifier)
(eglot--current-buffer-VersionedTextDocumentIdentifier)
(eglot--current-buffer-TextDocumentItem, eglot--after-change)
(eglot--signalDidOpen, eglot--maybe-signal-didChange): New stuff.
(eglot-flymake-backend): More or less a flymake backend function.

6 years agoFix mode line
João Távora [Mon, 30 Apr 2018 12:39:16 +0000 (13:39 +0100)]
Fix mode line

* eglot.el (mode-line-misc-info): conditionalize to eglot-mode

6 years agoFix some byte-compilation warnings
João Távora [Mon, 30 Apr 2018 12:38:37 +0000 (13:38 +0100)]
Fix some byte-compilation warnings

7 years agoOverhaul async mechanism safety
João Távora [Wed, 16 Aug 2017 15:53:40 +0000 (16:53 +0100)]
Overhaul async mechanism safety

7 years agoSimplify `eglot--protocol-initialize`
João Távora [Wed, 16 Aug 2017 14:48:50 +0000 (15:48 +0100)]
Simplify `eglot--protocol-initialize`

* eglot.el (eglot--protocol-initialize): Simplify

7 years agoExperimental diagnostic overlays
João Távora [Wed, 16 Aug 2017 12:49:31 +0000 (13:49 +0100)]
Experimental diagnostic overlays

7 years agoMinor cleanup
João Távora [Wed, 16 Aug 2017 12:02:05 +0000 (13:02 +0100)]
Minor cleanup

7 years agoCancel timeouts when process dies unexpectedly
João Távora [Wed, 16 Aug 2017 11:58:20 +0000 (12:58 +0100)]
Cancel timeouts when process dies unexpectedly

7 years agoOrganize a bit
João Távora [Wed, 16 Aug 2017 11:50:53 +0000 (12:50 +0100)]
Organize a bit

7 years agoImprove `eglot--current-process'
João Távora [Wed, 16 Aug 2017 11:50:20 +0000 (12:50 +0100)]
Improve `eglot--current-process'

7 years agoHandle notifications
João Távora [Wed, 16 Aug 2017 11:49:24 +0000 (12:49 +0100)]
Handle notifications

7 years agoIntroduce and use `eglot--current-process-or-lose'
João Távora [Wed, 16 Aug 2017 11:13:52 +0000 (12:13 +0100)]
Introduce and use `eglot--current-process-or-lose'

7 years agoAdd a mode-line construct and some minor fanciness
João Távora [Wed, 16 Aug 2017 11:10:13 +0000 (12:10 +0100)]
Add a mode-line construct and some minor fanciness

7 years agoRename eglot--continuations eglot--pending-continuations
João Távora [Wed, 16 Aug 2017 10:36:44 +0000 (11:36 +0100)]
Rename eglot--continuations eglot--pending-continuations

7 years agoRemove a couple of comments
João Távora [Wed, 16 Aug 2017 08:24:46 +0000 (09:24 +0100)]
Remove a couple of comments

7 years agoInitial commit
João Távora [Wed, 16 Aug 2017 01:41:17 +0000 (02:41 +0100)]
Initial commit