feat(lsp, ui, core): refactor LSP initialization, improve config handling, and clean up TreeSitter
* LSP Client & Manager
Refactored initialization flow to use internal state instead of passing params
Added workspace_path and init_opts to LSPClient
Simplified send_initialize_message() (no external args)
Updated manager/client APIs to require explicit workspace_path and typed init_opts
Improved client lifecycle handling and UI button toggling
* LSP Manager UI
Added {user.home} substitution support in configs
Use live editor buffer for JSON config parsing instead of static template
Minor cleanup and formatting improvements
* Core Widgets
Prevent external modification checks for buffer-only files in SourceFile
Minor formatting cleanup in SourceView
* Plugins / Manifest
Expanded manifest schema: added description and copyright, reordered fields
* Cleanup
Removed TreeSitter compile script and TODO entry
General code formatting and small consistency fixes
chore: remove unused TreeSitter tooling and related TODO entry
This commit is contained in:
@@ -155,9 +155,10 @@ class SourceFile(GtkSource.File):
|
||||
self.buffer.unblock_modified_changed_signal()
|
||||
|
||||
def is_externally_modified(self) -> bool:
|
||||
stat = os.stat(self.fpath)
|
||||
current = (stat.st_mtime_ns, stat.st_size)
|
||||
if self.fname == "buffer": return
|
||||
|
||||
stat = os.stat(self.fpath)
|
||||
current = (stat.st_mtime_ns, stat.st_size)
|
||||
is_modified = \
|
||||
hasattr(self, "last_state") and not current == self.last_state
|
||||
|
||||
|
||||
@@ -19,10 +19,10 @@ class SourceView(GtkSource.View, SourceViewDnDMixin):
|
||||
def __init__(self, state: SourceViewStates = SourceViewStates.INSERT):
|
||||
super(SourceView, self).__init__()
|
||||
|
||||
self.state = state
|
||||
self.state = state
|
||||
|
||||
self.sibling_right = None
|
||||
self.sibling_left = None
|
||||
self.sibling_right = None
|
||||
self.sibling_left = None
|
||||
|
||||
self._setup_styles()
|
||||
self._setup_signals()
|
||||
|
||||
@@ -13,9 +13,11 @@ from .requests import Requests
|
||||
class Manifest:
|
||||
name: str = ""
|
||||
author: str = ""
|
||||
credit: str = ""
|
||||
description: str = ""
|
||||
version: str = "0.0.1"
|
||||
support: str = "support@mail.com"
|
||||
credit: str = ""
|
||||
copyright: str = "GPLv2"
|
||||
pre_launch: bool = False
|
||||
autoload: bool = True
|
||||
requests: Requests = field(default_factory = lambda: Requests())
|
||||
|
||||
Reference in New Issue
Block a user