repo_description: ☄🌌️  The minimal, blazing-fast, and infinitely customizable prompt for any shell!
repo_topics: bash fish fish-prompt fish-theme oh-my-zsh powershell rust shell-prompt starship zsh zsh-prompt zsh-theme
code: use serde::{Deserialize, Serialize};
  
  #[derive(Clone, Deserialize, Serialize)]
  #[cfg_attr(
      feature = "config-schema",
      derive(schemars::JsonSchema),
      schemars(deny_unknown_fields)
  )]
  #[serde(default)]
  pub struct GitCommitConfig<'a> {
      pub commit_hash_length: usize,
      pub format: &'a str,
      pub style: &'a str,
      pub only_detached: bool,
      pub disabled: bool,
      pub tag_symbol: &'a str,
      pub tag_disabled: bool,
      pub tag_max_candidates: usize,
  }
  
  impl Default for GitCommitConfig<'_> {
      fn default() -> Self {
          Self {
              // be consistent with git by default, which has DEFAULT_ABBREV set to 7
              commit_hash_length: 7,
              format: "[\\($hash$tag\\)]($style) ",
              style: "green bold",
              only_detached: true,
              disabled: false,
              tag_symbol: " 🏷  ",
              tag_disabled: true,
              tag_max_candidates: 0,
          }
      }
  }
  