Full LSP client using ProcessNode for subprocess management.
Module Contents
Classes
LSPClient
|
Language Server Protocol client communicating via ProcessNode stdin/stdout. |
API
-
simvx.ide.lsp.client.log[source]
‘getLogger(…)’
-
class simvx.ide.lsp.client.LSPClient(state: simvx.ide.state.IDEState, command: str = 'pylsp', args: list[str] | None = None, env: dict[str, str] | None = None)[source]
Language Server Protocol client communicating via ProcessNode stdin/stdout.
Initialization
-
start()[source]
-
stop()[source]
-
poll()[source]
Must be called each frame to drive ProcessNode I/O.
-
notify_open(path: str, text: str, language_id: str = 'python')[source]
-
notify_close(path: str)[source]
-
notify_save(path: str, text: str | None = None)[source]
-
notify_change(path: str, text: str, version: int | None = None)[source]
-
request_completion(path: str, line: int, col: int)[source]
-
request_definition(path: str, line: int, col: int)[source]
-
request_hover(path: str, line: int, col: int)[source]
-
request_references(path: str, line: int, col: int)[source]
-
request_rename(path: str, line: int, col: int, new_name: str)[source]
-
request_formatting(path: str, tab_size: int = 4, insert_spaces: bool = True)[source]