diff --git a/crates/rust-analyzer/src/handlers.rs b/crates/rust-analyzer/src/handlers.rs index 53d29ddfc62..e8f9f21794e 100644 --- a/crates/rust-analyzer/src/handlers.rs +++ b/crates/rust-analyzer/src/handlers.rs @@ -928,7 +928,10 @@ pub(crate) fn handle_formatting( if !output.status.success() { match output.status.code() { - Some(1) if !captured_stderr.contains("not installed") => { + Some(1) + if !captured_stderr.contains("not installed") + && !captured_stderr.contains("not available") => + { // While `rustfmt` doesn't have a specific exit code for parse errors this is the // likely cause exiting with 1. Most Language Servers swallow parse errors on // formatting because otherwise an error is surfaced to the user on top of the