]> git.r.bdr.sh - rbdr/blog/commitdiff
Add help
authorRuben Beltran del Rio <redacted>
Fri, 23 Feb 2024 21:03:40 +0000 (21:03 +0000)
committerRuben Beltran del Rio <redacted>
Fri, 23 Feb 2024 21:03:40 +0000 (21:03 +0000)
src/command/add.rs
src/command/generate.rs
src/command/help.rs
src/command/publish.rs
src/command/publish_archive.rs
src/command/sync_down.rs
src/command/sync_up.rs

index 36f25a0716265acc8fa4aff55c99f55bc1a1e712..4c809177756e6578360e2a90a60084643c769dbf 100644 (file)
@@ -27,6 +27,6 @@ impl super::Command for Add {
     }
 
     fn help(&self) -> &'static str {
-        "<path_to_post>\t\tCreates new blog post"
+        "<path_to_post>\t\t\tCreates new blog post"
     }
 }
index 943f2be75b90e6ea141e735b1cc3e126729f0436..59babd553080ea66e9eae2dc662364f30456d401 100644 (file)
@@ -27,6 +27,6 @@ impl super::Command for Generate {
     }
 
     fn help(&self) -> &'static str {
-        "\t\t\tGenerates the blog assets"
+        "\t\t\t\tGenerates the blog assets"
     }
 }
index 9b98393d0c49872d8831b7578bad8dfa6e530fad..628fd5aa81a25a5371de0cfc74ab81e22f6f2c3e 100644 (file)
@@ -1,4 +1,6 @@
+use std::env::args;
 use std::io::Result;
+use super::available_commands;
 
 pub struct Help;
 
@@ -13,8 +15,16 @@ impl super::Command for Help {
         vec![]
     }
 
-    fn execute(&self, input: Option<&String>) -> Result<()> {
-        println!("Help: {:?}!", input);
+    fn execute(&self, _: Option<&String>) -> Result<()> {
+        let arguments: Vec<String> = args().collect();
+        let app_name = arguments.get(0).map_or("blog", |s| s.as_str());
+        let commands = available_commands();
+        println!("Usage:");
+        println!("");
+        for command in commands {
+            print!("{} {} ", app_name, command.command());
+            println!("{}", command.help());
+        }
         return Ok(())
     }
 
index d8ca9498bc8fc4c883a6392c9cc832fc1ee9afa0..d6116a4d63ba1868b2cab3e8829b54e741686953 100644 (file)
@@ -27,6 +27,6 @@ impl super::Command for Publish {
     }
 
     fn help(&self) -> &'static str {
-        "<destination>\tPublishes the blog to a remote host."
+        "<destination>\t\tPublishes the blog to a remote host"
     }
 }
index 4275c3887dc077308aafe9c6cbdfb171e57d3bea..6b98b1a4a867645c21650735a2136e0955b0dcbc 100644 (file)
@@ -27,6 +27,6 @@ impl super::Command for PublishArchive {
     }
 
     fn help(&self) -> &'static str {
-        "<destination>\tPublishes the archive to a remote host."
+        "<destination>\tPublishes the archive to a remote host"
     }
 }
index a0c713be1d3541be18dacdfd3b5e9e7220e80f55..c00b01a90aecdfa6822e21a063789aba81120511 100644 (file)
@@ -27,7 +27,7 @@ impl super::Command for SyncDown {
     }
 
     fn help(&self) -> &'static str {
-        "\t\t\tPulls from the git remote if configured"
+        "\t\t\t\tPulls from the git remote if configured"
     }
 }
 
index cf49518e0fea2825fa1e09a4c6db0a7b5510492e..d35ce7ffd2d41a20c4ae339f6635843f8c4bf53b 100644 (file)
@@ -27,6 +27,6 @@ impl super::Command for SyncUp {
     }
 
     fn help(&self) -> &'static str {
-        "\t\t\t\tPushes to the git remote if configured."
+        "\t\t\t\tPushes to the git remote if configured"
     }
 }