Remote support?
shanemcd opened this issue · comments
Hello. Is there a way to use this with LSP Mode's Remote capabilities?
You could try something like this
(lsp-register-client
(make-lsp-client
:new-connection
(lsp-tramp-connection
(lambda ()
(cons (executable-find "pyright-langserver" t)
lsp-pyright-langserver-command-args)))
:major-modes '(python-mode)
:server-id 'pyright-remote
:multi-root lsp-pyright-multi-root
:remote? t
:priority -1
:initialized-fn
(lambda (workspace)
(with-lsp-workspace workspace
;; we send empty settings initially, LSP server will ask for the
;; configuration of each workspace folder later separately
(lsp--set-configuration
(make-hash-table :test 'equal))))
:download-server-fn
(lambda (_client callback error-callback _update?)
(lsp-package-ensure 'pyright callback error-callback))
:notification-handlers
(lsp-ht ("pyright/beginProgress" 'lsp-pyright--begin-progress-callback)
("pyright/reportProgress" 'lsp-pyright--report-progress-callback)
("pyright/endProgress" 'lsp-pyright--end-progress-callback))))
@PythonNut It seems good. I can add it to lsp-pyright if there is no issue after more testings. Please keep testing.
I've tried this, and it looks like it almost works.
It prompts for a download of pyright-remote
on the remote server, but doesn't seem to download anything and enters a loop of prompting for download over and over.
If I remove the :download-server-fn
section, the prompt to download doesn't appear as would be expected, but the lsp-log buffer shows that the pyright server can't be found on the remote, even though I've installed it and it exists at /usr/bin/pyright-langserver
.
Has anything changed in the codebase since November that would affect this?
Also have the prompt for download of pyright-remote
problem.
Upon opening file I get:
Unable to locate install server supporting this file. The following servers could be installed automatically:
pyright-remote
I then get the error:
Forbidden reentrant of Tramp
Is there a fix for it? Is it possible to install pyright-remote on the server? Do I need to install pyright-remote locally?
Yep, I got it working without that and pyright downloaded manually on the server
I was having problems because pyright was erroring out on the server and I had to go to the tmp file stderr output to debug it. It took a little bit to figure out but that's what I was missing