diff --git a/helix-term/src/health.rs b/helix-term/src/health.rs index dff903192..44ae2a2f7 100644 --- a/helix-term/src/health.rs +++ b/helix-term/src/health.rs @@ -145,7 +145,7 @@ pub fn languages_all() -> std::io::Result<()> { } }; - let mut headings = vec!["Language", "LSP", "DAP"]; + let mut headings = vec!["Language", "LSP", "DAP", "Formatter"]; for feat in TsFeature::all() { headings.push(feat.short_title()) @@ -203,6 +203,12 @@ pub fn languages_all() -> std::io::Result<()> { let dap = lang.debugger.as_ref().map(|dap| dap.command.as_str()); check_binary(dap); + let formatter = lang + .formatter + .as_ref() + .map(|formatter| formatter.command.as_str()); + check_binary(formatter); + for ts_feat in TsFeature::all() { match load_runtime_file(&lang.language_id, ts_feat.runtime_filename()).is_ok() { true => column("✓", Color::Green), @@ -285,6 +291,13 @@ pub fn language(lang_str: String) -> std::io::Result<()> { lang.debugger.as_ref().map(|dap| dap.command.to_string()), )?; + probe_protocol( + "formatter", + lang.formatter + .as_ref() + .map(|formatter| formatter.command.to_string()), + )?; + for ts_feat in TsFeature::all() { probe_treesitter_feature(&lang_str, *ts_feat)? }