aboutsummaryrefslogtreecommitdiff
path: root/mingling_cli/src
diff options
context:
space:
mode:
Diffstat (limited to 'mingling_cli/src')
-rw-r--r--mingling_cli/src/linter.rs23
-rw-r--r--mingling_cli/src/main.rs19
-rw-r--r--mingling_cli/src/metadata.rs3
3 files changed, 19 insertions, 26 deletions
diff --git a/mingling_cli/src/linter.rs b/mingling_cli/src/linter.rs
index 859ffc5..8be45c8 100644
--- a/mingling_cli/src/linter.rs
+++ b/mingling_cli/src/linter.rs
@@ -1,30 +1,11 @@
-use mingling::{
- Program,
- macros::{chain, dispatcher, entry, program_setup},
-};
+use mingling::macros::{chain, dispatcher, entry};
-use crate::{
- linter::cmd_mlint::{CMDLint, EntryLint},
- metadata::setup::ResUsingJson,
-};
+use crate::{linter::cmd_mlint::EntryLint, metadata::setup::ResUsingJson};
pub mod cmd_mlint;
pub mod mlint_attr;
pub mod mlint_report;
-#[program_setup]
-pub fn mingling_linter_setup(program: &mut Program<crate::ThisProgram>) {
- program.with_setup(MinglingLinterCommandSetup);
-}
-
-#[program_setup]
-pub fn mingling_linter_command_setup(program: &mut Program<crate::ThisProgram>) {
- program.with_dispatcher(CMDLint);
- program.with_dispatcher(CMDLinterSupportRustAnalyzer);
- program.with_dispatcher(CMDLinterSupportRustAnalyzerWithClippy);
- program.with_dispatcher(CMDLinterSupportRustAnalyzerWithCheck);
-}
-
// Aliases
dispatcher!("ra-lint-clippy",
diff --git a/mingling_cli/src/main.rs b/mingling_cli/src/main.rs
index c822a12..149093c 100644
--- a/mingling_cli/src/main.rs
+++ b/mingling_cli/src/main.rs
@@ -1,6 +1,8 @@
-use crate::{linter::MinglingLinterSetup, metadata::MinglingMetadataSetup};
+use crate::metadata::MinglingMetadataSetup;
use mingling::{
- macros::gen_program,
+ ShellContext, Suggest,
+ consts::HELP_FLAG,
+ macros::{completion, gen_program, help, suggest},
setup::{ExitCodeSetup, picker::HelpFlagSetup},
};
@@ -20,10 +22,21 @@ async fn main() {
program.with_setup(ExitCodeSetup::default());
program.with_setup(MinglingMetadataSetup);
- program.with_setup(MinglingLinterSetup);
// Exec
program.exec_and_exit().await;
}
+#[help]
+pub fn help_global(_: EntryFallback) -> String {
+ include_str!("../help/help.txt").to_string()
+}
+
+#[completion(EntryFallback)]
+pub fn complete_global(_ctx: &ShellContext) -> Suggest {
+ suggest! {
+ HELP_FLAG: "Show help messages"
+ }
+}
+
gen_program!();
diff --git a/mingling_cli/src/metadata.rs b/mingling_cli/src/metadata.rs
index 2e7aeef..f11ae36 100644
--- a/mingling_cli/src/metadata.rs
+++ b/mingling_cli/src/metadata.rs
@@ -4,7 +4,7 @@ use mingling::{
macros::{buffer, group, program_setup, r_println, renderer, renderify},
};
-use crate::metadata::{cmd_metadata::CMDMetadata, setup::CargoMetadataSetup};
+use crate::metadata::setup::CargoMetadataSetup;
pub mod cmd_metadata;
pub mod setup;
@@ -12,7 +12,6 @@ pub mod setup;
#[program_setup]
pub fn mingling_metadata_setup(program: &mut Program<crate::ThisProgram>) {
program.with_setup(CargoMetadataSetup);
- program.with_dispatcher(CMDMetadata);
}
group!(Metadata);