diff --git a/crates/tinymist/src/init.rs b/crates/tinymist/src/init.rs index 4a5f59b9..4daafb44 100644 --- a/crates/tinymist/src/init.rs +++ b/crates/tinymist/src/init.rs @@ -147,25 +147,11 @@ impl Initializer for SuperInit { return (service, Err(err)); } - // Respond to the host (LSP client) - // Register these capabilities statically if the client does not support dynamic - // registration - let semantic_tokens_provider = match service.config.semantic_tokens { - SemanticTokensMode::Enable if !const_config.tokens_dynamic_registration => { - Some(SemanticTokensServerCapabilities::SemanticTokensOptions( - get_semantic_tokens_options(), - )) - } - _ => None, - }; - let document_formatting_provider = match service.config.formatter_mode { - FormatterMode::Typstyle | FormatterMode::Typstfmt - if !const_config.doc_fmt_dynamic_registration => - { - Some(OneOf::Left(true)) - } - _ => None, - }; + let semantic_tokens_provider = (!const_config.tokens_dynamic_registration).then(|| { + SemanticTokensServerCapabilities::SemanticTokensOptions(get_semantic_tokens_options()) + }); + let document_formatting_provider = + (!const_config.doc_fmt_dynamic_registration).then_some(OneOf::Left(true)); let file_operations = const_config.notify_will_rename_files.then(|| { WorkspaceFileOperationsServerCapabilities { diff --git a/tests/e2e/main.rs b/tests/e2e/main.rs index 3d2d98aa..01248b90 100644 --- a/tests/e2e/main.rs +++ b/tests/e2e/main.rs @@ -374,7 +374,7 @@ fn e2e() { }); let hash = replay_log(&tinymist_binary, &root.join("neovim")); - insta::assert_snapshot!(hash, @"siphash128_13:37db2c66ca1b5a0cdec20f531c15d5"); + insta::assert_snapshot!(hash, @"siphash128_13:fbb7e6bec2bd8b4d14f29b9d36066d20"); } {