aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-08-26 10:18:49 -0400
committerBrad Lewis <22850972+BradLewis@users.noreply.github.com>2025-08-26 10:19:59 -0400
commit74ea70325e4daca321a0932828f236ea8c77f2ec (patch)
tree5254890d82c96acb369d17006467b38af8e16b04 /src
parentdcf0ee2a22e655fe918f58f13eefb6cf240baecc (diff)
Add option to disable document links
Diffstat (limited to 'src')
-rw-r--r--src/common/config.odin1
-rw-r--r--src/server/requests.odin10
-rw-r--r--src/server/types.odin1
3 files changed, 12 insertions, 0 deletions
diff --git a/src/common/config.odin b/src/common/config.odin
index e45e2b6..5b2923c 100644
--- a/src/common/config.odin
+++ b/src/common/config.odin
@@ -35,6 +35,7 @@ Config :: struct {
enable_checker_only_saved: bool,
enable_auto_import: bool,
enable_completion_matching: bool,
+ enable_document_links: bool,
disable_parser_errors: bool,
thread_count: int,
file_log: bool,
diff --git a/src/server/requests.odin b/src/server/requests.odin
index c564a31..4f090d8 100644
--- a/src/server/requests.odin
+++ b/src/server/requests.odin
@@ -367,6 +367,7 @@ read_ols_initialize_options :: proc(config: ^common.Config, ols_config: OlsConfi
config.enable_references = ols_config.enable_references.(bool) or_else config.enable_references
config.enable_completion_matching =
ols_config.enable_completion_matching.(bool) or_else config.enable_completion_matching
+ config.enable_document_links = ols_config.enable_document_links.(bool) or_else config.enable_document_links
config.verbose = ols_config.verbose.(bool) or_else config.verbose
config.file_log = ols_config.file_log.(bool) or_else config.file_log
@@ -615,6 +616,7 @@ request_initialize :: proc(
config.enable_snippets = false
config.enable_references = true
config.enable_completion_matching = true
+ config.enable_document_links = true
config.verbose = false
config.file_log = false
config.odin_command = ""
@@ -1335,6 +1337,14 @@ request_document_links :: proc(
config: ^common.Config,
writer: ^Writer,
) -> common.Error {
+ if !config.enable_document_links {
+ links: []DocumentLink
+ response := make_response_message(params = links, id = id)
+
+ send_response(response, writer)
+ return .None
+ }
+
params_object, ok := params.(json.Object)
if !ok {
diff --git a/src/server/types.odin b/src/server/types.odin
index 4795f11..e13ae31 100644
--- a/src/server/types.odin
+++ b/src/server/types.odin
@@ -413,6 +413,7 @@ OlsConfig :: struct {
enable_inlay_hints_params: Maybe(bool),
enable_inlay_hints_default_params: Maybe(bool),
enable_references: Maybe(bool),
+ enable_document_links: Maybe(bool),
enable_fake_methods: Maybe(bool),
enable_procedure_snippet: Maybe(bool),
enable_checker_only_saved: Maybe(bool),