aboutsummaryrefslogtreecommitdiff
path: root/mingling_cli/src
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-08-04 20:33:11 +0800
committer魏曹先生 <1992414357@qq.com>2026-08-04 20:33:11 +0800
commit8ee352832555c77a3c2a12673e303df4ac49c34f (patch)
tree6c6a7af168da0467949c8e001ca9a814b386c6c9 /mingling_cli/src
parentc308ee61c65df23b58cae12b2f2f99d754f3dbff (diff)
docs: add help text for CLI commands and descriptions
Add help text for global flags, commands, and subcommands in help.txt. Add metadata descriptions for linter and metadata commands.
Diffstat (limited to 'mingling_cli/src')
-rw-r--r--mingling_cli/src/linter.rs24
-rw-r--r--mingling_cli/src/linter/cmd_mlint.rs8
-rw-r--r--mingling_cli/src/metadata/cmd_metadata.rs10
3 files changed, 39 insertions, 3 deletions
diff --git a/mingling_cli/src/linter.rs b/mingling_cli/src/linter.rs
index 8be45c8..3182b4a 100644
--- a/mingling_cli/src/linter.rs
+++ b/mingling_cli/src/linter.rs
@@ -1,4 +1,7 @@
-use mingling::macros::{chain, dispatcher, entry};
+use mingling::{
+ macros::{chain, dispatcher, entry, metadata},
+ metadata::Description,
+};
use crate::{linter::cmd_mlint::EntryLint, metadata::setup::ResUsingJson};
@@ -43,3 +46,22 @@ pub fn handle_ra_lint_clippy(
use_json.using = true;
entry!("--message-format=json", "--with-checker=cargo,clippy")
}
+
+#[metadata(EntryLinterSupportRustAnalyzer)]
+pub fn desc_ra_lint() -> Description {
+ "Run `mling lint` and output the results".to_string().into()
+}
+
+#[metadata(EntryLinterSupportRustAnalyzerWithCheck)]
+pub fn desc_ra_lint_check() -> Description {
+ "Run `mling lint` and `cargo check`, and output the combined results"
+ .to_string()
+ .into()
+}
+
+#[metadata(EntryLinterSupportRustAnalyzerWithClippy)]
+pub fn desc_ra_lint_clippy() -> Description {
+ "Run `mling lint` and `cargo clippy`, and output the combined results"
+ .to_string()
+ .into()
+}
diff --git a/mingling_cli/src/linter/cmd_mlint.rs b/mingling_cli/src/linter/cmd_mlint.rs
index 1dfd02b..57a78ad 100644
--- a/mingling_cli/src/linter/cmd_mlint.rs
+++ b/mingling_cli/src/linter/cmd_mlint.rs
@@ -2,12 +2,18 @@ use crate::linter::mlint_report::{MlintReport, StateLintReports};
use cargo_metadata::Metadata;
use mingling::LazyRes;
use mingling::consts::REMAINS;
-use mingling::macros::{arg, chain, dispatcher, pack};
+use mingling::macros::{arg, chain, dispatcher, metadata, pack};
+use mingling::metadata::Description;
use mingling::picker::EntryPicker;
use tokio::task::JoinSet;
dispatcher!("lint", CMDLint => EntryLint);
+#[metadata(EntryLint)]
+pub fn desc_lint() -> Description {
+ "Mingling Linter".to_string().into()
+}
+
/// Main linting function that processes all packages in the metadata.
///
/// Iterates through all packages and their targets (e.g., binaries, libraries, tests),
diff --git a/mingling_cli/src/metadata/cmd_metadata.rs b/mingling_cli/src/metadata/cmd_metadata.rs
index 18241a2..3ee9f09 100644
--- a/mingling_cli/src/metadata/cmd_metadata.rs
+++ b/mingling_cli/src/metadata/cmd_metadata.rs
@@ -1,13 +1,21 @@
use cargo_metadata::Metadata;
use mingling::{
LazyRes,
- macros::{chain, dispatcher, pack},
+ macros::{chain, dispatcher, metadata, pack},
+ metadata::Description,
};
use crate::metadata::setup::ResMetadata;
dispatcher!("metadata");
+#[metadata(EntryMetadata)]
+pub fn desc_metadata() -> Description {
+ "Check your workspace metadata using 'cargo metadata'"
+ .to_string()
+ .into()
+}
+
pack!(ResultMetadata = ResMetadata);
#[chain]