@@ -34,5 +34,41 @@ impl zed::Extension for SCSSExtension {
3434 language_server_id => Err ( format ! ( "unknown language server: {language_server_id}" ) ) ,
3535 }
3636 }
37+
38+ fn language_server_initialization_options (
39+ & mut self ,
40+ language_server_id : & LanguageServerId ,
41+ worktree : & zed:: Worktree ,
42+ ) -> Result < Option < zed:: serde_json:: Value > > {
43+ match language_server_id. as_ref ( ) {
44+ SomeSass :: LANGUAGE_SERVER_ID => {
45+ let some_sass = self . some_sass . get_or_insert_with ( || SomeSass :: new ( ) ) ;
46+ some_sass. language_server_initialization_options ( language_server_id, worktree)
47+ }
48+ SCSSLsp :: LANGUAGE_SERVER_ID => {
49+ let scss_lsp = self . scss_lsp . get_or_insert_with ( || SCSSLsp :: new ( ) ) ;
50+ scss_lsp. language_server_initialization_options ( language_server_id, worktree)
51+ }
52+ _ => Ok ( None ) ,
53+ }
54+ }
55+
56+ fn language_server_workspace_configuration (
57+ & mut self ,
58+ language_server_id : & LanguageServerId ,
59+ worktree : & zed:: Worktree ,
60+ ) -> Result < Option < zed:: serde_json:: Value > > {
61+ match language_server_id. as_ref ( ) {
62+ SomeSass :: LANGUAGE_SERVER_ID => {
63+ let some_sass = self . some_sass . get_or_insert_with ( || SomeSass :: new ( ) ) ;
64+ some_sass. language_server_workspace_configuration ( language_server_id, worktree)
65+ }
66+ SCSSLsp :: LANGUAGE_SERVER_ID => {
67+ let scss_lsp = self . scss_lsp . get_or_insert_with ( || SCSSLsp :: new ( ) ) ;
68+ scss_lsp. language_server_workspace_configuration ( language_server_id, worktree)
69+ }
70+ _ => Ok ( None ) ,
71+ }
72+ }
3773}
3874zed:: register_extension!( SCSSExtension ) ;
0 commit comments