diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/common/config.odin | 1 | ||||
| -rw-r--r-- | src/server/documents.odin | 2 | ||||
| -rw-r--r-- | src/server/requests.odin | 2 | ||||
| -rw-r--r-- | src/server/types.odin | 1 |
4 files changed, 5 insertions, 1 deletions
diff --git a/src/common/config.odin b/src/common/config.odin index 397545a..9c8e678 100644 --- a/src/common/config.odin +++ b/src/common/config.odin @@ -19,6 +19,7 @@ Config :: struct { enable_rename: bool, enable_std_references: bool, enable_import_fixer: bool, + disable_parser_errors: bool, thread_count: int, file_log: bool, odin_command: string, diff --git a/src/server/documents.odin b/src/server/documents.odin index 5adfdfb..7f99e52 100644 --- a/src/server/documents.odin +++ b/src/server/documents.odin @@ -331,7 +331,7 @@ document_refresh :: proc( return .ParseError } - if writer != nil && len(errors) > 0 { + if writer != nil && len(errors) > 0 && !config.disable_parser_errors { document.diagnosed_errors = true params := NotificationPublishDiagnosticsParams { diff --git a/src/server/requests.odin b/src/server/requests.odin index 586a2a1..96df6e3 100644 --- a/src/server/requests.odin +++ b/src/server/requests.odin @@ -429,6 +429,8 @@ request_initialize :: proc( if unmarshal(value, ols_config, context.temp_allocator) == nil { + config.disable_parser_errors = + ols_config.disable_parser_errors config.thread_count = ols_config.thread_pool_count config.enable_document_symbols = ols_config.enable_document_symbols.(bool) or_else true diff --git a/src/server/types.odin b/src/server/types.odin index 7e034bc..cbb168f 100644 --- a/src/server/types.odin +++ b/src/server/types.odin @@ -327,6 +327,7 @@ OlsConfig :: struct { enable_snippets: bool, enable_inlay_hints: bool, enable_references: bool, + disable_parser_errors: bool, verbose: bool, file_log: bool, odin_command: string, |