simvx.ide.lsp_controller

LSP integration controller – server lifecycle, document sync, and response handling.

Module Contents

Classes

LSPController

Manages the LSP client lifecycle and document synchronisation.

Data

log

API

simvx.ide.lsp_controller.log[source]

‘getLogger(…)’

class simvx.ide.lsp_controller.LSPController(ide: simvx.ide.app.IDERoot)[source]

Manages the LSP client lifecycle and document synchronisation.

Also handles lint runner startup and format/lint-on-save hooks.

Initialization

property state
property config
start_lsp()[source]
start_lint_runner()[source]
on_lsp_ready()[source]

Called when LSP server completes initialization.

on_lsp_stopped()[source]

Called when LSP server shuts down.

lsp_notify_open(path: str)[source]

Notify LSP server when a file is opened.

lsp_notify_close(path: str)[source]

Notify LSP server when a file is closed.

lsp_notify_save(path: str)[source]

Notify LSP server when a file is saved.

lsp_request_completion(path: str, line: int, col: int)[source]

Request code completion from LSP server.

apply_rename_edits(file_edits: dict[str, list[tuple[int, int, int, int, str]]])[source]

Apply rename edits across files. Opens files not yet open.

apply_formatting_edits(path: str, edits: list[tuple[int, int, int, int, str]])[source]

Apply LSP formatting edits to the active editor.

on_references_received(locations: list)[source]

Show references in the search/output panel.

on_hover_received(text: str, line: int, col: int)[source]

Show LSP hover info as a tooltip on the active editor.

on_toggle_lsp()[source]

Enable/disable LSP.

on_restart_lsp()[source]

Stop and restart the LSP server.

on_format_requested(path: str)[source]
on_file_opened_lint(path: str)[source]
on_file_saved_signal(path: str)[source]
on_lint_file()[source]

Manually lint the current file.

on_toggle_linting()[source]

Enable/disable automatic linting.