From 97d8ee52fc45b974d3f0e7f593ae06fbe1c5450d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christina=20S=C3=B8rensen?= Date: Mon, 3 Jul 2023 11:34:22 +0200 Subject: [PATCH] feat(git): made SUCCESS/FAILURE emoji const MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This puts the emoji for success/failure of a git operation into the strings module of utils. This might be handy down the line for implementing the disable emotes flag. Signed-off-by: Christina Sørensen --- bin/install | 1 - doc/roadmap.org | 5 +++-- src/git.rs | 14 ++++++++------ src/test/test.yaml | 32 ++++++++++++++++---------------- src/utils/strings.rs | 6 ++++++ 5 files changed, 33 insertions(+), 25 deletions(-) diff --git a/bin/install b/bin/install index 6133cdf..c4cde3b 100755 --- a/bin/install +++ b/bin/install @@ -1,3 +1,2 @@ #!/usr/bin/env bash -cargo rustc --release -- -C target-cpu=native cargo install --path . diff --git a/doc/roadmap.org b/doc/roadmap.org index d44c934..44b6e98 100644 --- a/doc/roadmap.org +++ b/doc/roadmap.org @@ -7,6 +7,7 @@ - [ ] libgit2 (maybe) - [ ] Category Flags Finished - [ ] Implement Quiet flag +- [ ] Implement no-emoji flag * 0.1.0 [80%] [4/5] - [X] No functionality regressions - [X] commit works in quick, fast @@ -16,6 +17,6 @@ - [X] Subcommands - [X] Quiet flag (wont rn) - [X] Do something about coc flag -- [ ] UX - - [ ] Change failure emotes +- [-] UX + - [X] Change failure emotes - [ ] Flag for disabling emotes diff --git a/src/git.rs b/src/git.rs index 0ef26e7..e495b4e 100644 --- a/src/git.rs +++ b/src/git.rs @@ -25,6 +25,8 @@ use std::os::unix::fs::symlink; use std::path::Path; use std::{fs, process::Command}; +use crate::utils::strings::{FAILURE_EMOJI, SUCCESS_EMOJI}; + /// An enum containing flags that change behaviour of repos and categories #[derive(PartialOrd, Ord, PartialEq, Eq, Serialize, Deserialize, Debug)] pub enum RepoFlags { @@ -349,9 +351,9 @@ impl Config { for (_, repo) in category.repos.as_ref().expect("failed to get repos").iter() { let mut sp = Spinner::new(Spinners::Dots10, format!("{}: {}", repo.name, op)); if f(repo) { - sp.stop_and_persist("✔", format!("{}: {}", repo.name, op)); + sp.stop_and_persist(SUCCESS_EMOJI, format!("{}: {}", repo.name, op)); } else { - sp.stop_and_persist("❎", format!("{}: {}", repo.name, op)); + sp.stop_and_persist(FAILURE_EMOJI, format!("{}: {}", repo.name, op)); } } } @@ -405,9 +407,9 @@ impl Config { let op = instruction.operation; let mut sp = Spinner::new(Spinners::Dots10, format!("{}: {}", repo.name, op)); if f(repo) { - sp.stop_and_persist("✔", format!("{}: {}", repo.name, op)); + sp.stop_and_persist(SUCCESS_EMOJI, format!("{}: {}", repo.name, op)); } else { - sp.stop_and_persist("❎", format!("{}: {}", repo.name, op)); + sp.stop_and_persist(FAILURE_EMOJI, format!("{}: {}", repo.name, op)); break; } } @@ -451,9 +453,9 @@ impl Config { let op = instruction.operation; let mut sp = Spinner::new(Spinners::Dots10, format!("{}: {}", repo.name, op)); if f(repo) { - sp.stop_and_persist("✔", format!("{}: {}", repo.name, op)); + sp.stop_and_persist(SUCCESS_EMOJI, format!("{}: {}", repo.name, op)); } else { - sp.stop_and_persist("❎", format!("{}: {}", repo.name, op)); + sp.stop_and_persist(FAILURE_EMOJI, format!("{}: {}", repo.name, op)); } } } diff --git a/src/test/test.yaml b/src/test/test.yaml index aa2ec05..e433730 100644 --- a/src/test/test.yaml +++ b/src/test/test.yaml @@ -1,4 +1,20 @@ categories: + utils: + repos: + li: + name: li + path: /home/ces/org/src/git/ + url: git@github.com:cafkafk/li.git + flags: + - Clone + - Push + gg: + name: gg + path: /home/ces/.dots/ + url: git@github.com:cafkafk/gg.git + flags: + - Clone + - Push empty: {} stuff: flags: [] @@ -11,22 +27,6 @@ categories: name: gg path: /home/ces/.dots/ url: git@github.com:cafkafk/gg.git - utils: - repos: - gg: - name: gg - path: /home/ces/.dots/ - url: git@github.com:cafkafk/gg.git - flags: - - Clone - - Push - li: - name: li - path: /home/ces/org/src/git/ - url: git@github.com:cafkafk/li.git - flags: - - Clone - - Push config: flags: [] repos: diff --git a/src/utils/strings.rs b/src/utils/strings.rs index d0d831f..876b80d 100644 --- a/src/utils/strings.rs +++ b/src/utils/strings.rs @@ -59,3 +59,9 @@ pub const QUICK_COMMIT: &str = "git: quick commit"; /// Contains the message for fast commit subcommand pub const FAST_COMMIT: &str = "git: fast commit"; + +/// Success emoji +pub const SUCCESS_EMOJI: &str = "✔"; + +/// Failure emoji +pub const FAILURE_EMOJI: &str = "❌";