diff --git a/src/zathura_language_server/finders.py b/src/zathura_language_server/finders.py index 5b4a639..c033f6c 100644 --- a/src/zathura_language_server/finders.py +++ b/src/zathura_language_server/finders.py @@ -2,37 +2,13 @@ =========== """ -import os from dataclasses import dataclass from lsprotocol.types import DiagnosticSeverity from tree_sitter_lsp.finders import ErrorFinder, QueryFinder, SchemaFinder -from tree_sitter_zathurarc import language from .schema import ZathurarcTrie -from .utils import get_schema - - -@dataclass(init=False) -class ErrorZathurarcFinder(ErrorFinder): - r"""Error zathurarc finder.""" - - def __init__( - self, - message: str = "{{uni.get_text()}}: error", - severity: DiagnosticSeverity = DiagnosticSeverity.Error, - ) -> None: - r"""Init. - - :param filetype: - :type filetype: str - :param message: - :type message: str - :param severity: - :type severity: DiagnosticSeverity - :rtype: None - """ - super().__init__(language, message, severity) +from .utils import get_query, get_schema @dataclass(init=False) @@ -51,18 +27,7 @@ def __init__( :param severity: :type severity: DiagnosticSeverity """ - with open( - os.path.join( - os.path.join( - os.path.join(os.path.dirname(__file__), "assets"), - "queries", - ), - "import.scm", - ) - ) as f: - text = f.read() - query = language.query(text) - super().__init__(query, message, severity) + super().__init__(get_query("import"), message, severity) @dataclass(init=False) @@ -74,11 +39,10 @@ def __init__(self) -> None: :rtype: None """ - self.validator = self.schema2validator(get_schema()) - self.cls = ZathurarcTrie + super().__init__(get_schema(), ZathurarcTrie) DIAGNOSTICS_FINDER_CLASSES = [ - ErrorZathurarcFinder, + ErrorFinder, ZathurarcFinder, ]