aboutsummaryrefslogtreecommitdiff
path: root/src/server/requests.odin
diff options
context:
space:
mode:
authorDaniel Gavin <danielgavin5@hotmail.com>2021-11-28 16:43:50 +0100
committerDaniel Gavin <danielgavin5@hotmail.com>2021-11-28 16:43:50 +0100
commitbc55f5beea4ddd64ce4a2996d64095e145f26cfc (patch)
tree0bb22b38e5587d9d1dd1c2a2990f0e7f084ac456 /src/server/requests.odin
parent5d03398e911c56134b8798a31fc87b85fe28675b (diff)
Add formatter to ols
Diffstat (limited to 'src/server/requests.odin')
-rw-r--r--src/server/requests.odin15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/server/requests.odin b/src/server/requests.odin
index 1d48887..f78053e 100644
--- a/src/server/requests.odin
+++ b/src/server/requests.odin
@@ -399,17 +399,24 @@ request_initialize :: proc (task: ^common.Task) {
if value, err := json.parse(data = data, allocator = context.temp_allocator, parse_integers = true); err == .None {
- ols_config: OlsConfig;
+ ols_config := OlsConfig {
+ formatter = {
+ characters = 90,
+ tabs = true,
+ },
+ }
if unmarshal(value, ols_config, context.temp_allocator) == .None {
config.thread_count = ols_config.thread_pool_count;
config.enable_document_symbols = ols_config.enable_document_symbols;
config.enable_hover = ols_config.enable_hover;
- config.enable_format = ols_config.enable_format;
+ config.enable_format = true // ols_config.enable_format;
config.enable_semantic_tokens = ols_config.enable_semantic_tokens;
config.enable_procedure_context = ols_config.enable_procedure_context;
config.verbose = ols_config.verbose;
+ config.file_log = ols_config.file_log;
+ config.formatter = ols_config.formatter;
for p in ols_config.collections {
@@ -723,7 +730,7 @@ request_format_document :: proc (task: ^common.Task) {
}
edit: []TextEdit;
- edit, ok = get_complete_format(document);
+ edit, ok = get_complete_format(document, config);
if !ok {
handle_error(.InternalError, id, writer);
@@ -913,6 +920,8 @@ notification_did_save :: proc (task: ^common.Task) {
if ret := index.collect_symbols(&index.indexer.dynamic_index.collection, file, uri.uri); ret != .None {
log.errorf("failed to collect symbols on save %v", ret);
}
+
+ check(uri, writer);
}
request_semantic_token_full :: proc (task: ^common.Task) {