@@ -156,11 +156,7 @@ function textDocument_formatting_request(params::DocumentFormattingParams, serve
156156 config = get_juliaformatter_config (doc, server)
157157
158158 newcontent = try
159- if config === nothing
160- JuliaFormatter. format_text (get_text (doc); default_juliaformatter_config (params)... )
161- else
162- JuliaFormatter. format_text (get_text (doc); JuliaFormatter. kwargs (config)... )
163- end
159+ format_text (get_text (doc), params, config)
164160 catch err
165161 return JSONRPC. JSONRPCError (
166162 - 32000 ,
@@ -175,6 +171,17 @@ function textDocument_formatting_request(params::DocumentFormattingParams, serve
175171 return lsedits
176172end
177173
174+ function format_text (text:: AbstractString , params, config)
175+ if config === nothing
176+ return JuliaFormatter. format_text (text; default_juliaformatter_config (params)... )
177+ else
178+ # Some valid options in config file are not valid for format_text
179+ VALID_OPTIONS = fieldnames (JuliaFormatter. Options)
180+ config = filter (p -> in (first (p), VALID_OPTIONS), JuliaFormatter. kwargs (config))
181+ return JuliaFormatter. format_text (text; config... )
182+ end
183+ end
184+
178185function textDocument_range_formatting_request (params:: DocumentRangeFormattingParams , server:: LanguageServerInstance , conn)
179186 doc = getdocument (server, URI2 (params. textDocument. uri))
180187 cst = getcst (doc)
@@ -220,11 +227,7 @@ function textDocument_range_formatting_request(params::DocumentRangeFormattingPa
220227 config = get_juliaformatter_config (doc, server)
221228
222229 newcontent = try
223- if config === nothing
224- JuliaFormatter. format_text (text; default_juliaformatter_config (params)... )
225- else
226- JuliaFormatter. format_text (text; JuliaFormatter. kwargs (config)... )
227- end
230+ format_text (text, params, config)
228231 catch err
229232 return JSONRPC. JSONRPCError (
230233 - 33000 ,
0 commit comments