Hygo AI custom shell.
| 1 | # HygoShell |
| 2 | |
| 3 | To use HygoShell, follow these steps: |
| 4 | |
| 5 | 1. Open your terminal. |
| 6 | 2. Run the following command to clone the HygoShell repository: |
| 7 | |
| 8 | ``` |
| 9 | git clone https://github.com/huncholane/hygoshell ~/.hygo |
| 10 | ``` |
| 11 | |
| 12 | 3. Add the following to your shell config, i.e. .bashrc or .zshrc |
| 13 | |
| 14 | ``` |
| 15 | source ~/.hygo/.bashrc |
| 16 | ``` |
| 17 | |
| 18 | ### ZSH Prompt Elements |
| 19 | |
| 20 | | Element | Description | |
| 21 | | ------------ | -------------------------------------------------------------- | |
| 22 | | `%n` | Username | |
| 23 | | `%m` | Hostname (up to first `.`) | |
| 24 | | `%M` | Full hostname | |
| 25 | | `%~` | Current working directory (relative to home) | |
| 26 | | `%d` | Current working directory (absolute path) | |
| 27 | | `%/` | Full path of the current working directory | |
| 28 | | `%c` | Trailing portion of the current working directory | |
| 29 | | `%#` | `#` if root; `%` otherwise | |
| 30 | | `%h` | Current history event number | |
| 31 | | `%j` | Number of jobs currently managed by the shell | |
| 32 | | `%T` | Current time in 24-hour format (HH:MM) | |
| 33 | | `%*` | Current time in 12-hour format (HH:MM AM/PM) | |
| 34 | | `%D{format}` | Date with custom format, e.g., `%D{%Y-%m-%d}` for `YYYY-MM-DD` | |
| 35 | |
| 36 | ### ZSH Color Codes |
| 37 | |
| 38 | | Code | Effect | |
| 39 | | ----------- | ----------------------- | |
| 40 | | `%F{color}` | Sets foreground color | |
| 41 | | `%K{color}` | Sets background color | |
| 42 | | `%f` | Resets foreground color | |
| 43 | | `%k` | Resets background color | |
| 44 | |
| 45 | #### Common Colors |
| 46 | |
| 47 | | Color | Code | |
| 48 | | ------- | --------- | |
| 49 | | Black | `black` | |
| 50 | | Red | `red` | |
| 51 | | Green | `green` | |
| 52 | | Yellow | `yellow` | |
| 53 | | Blue | `blue` | |
| 54 | | Magenta | `magenta` | |
| 55 | | Cyan | `cyan` | |
| 56 | | White | `white` | |
| 57 | | Default | `default` | |
| 58 | |
| 59 | #### Bright Colors |
| 60 | |
| 61 | | Color | Code | |
| 62 | | -------------- | --------------- | |
| 63 | | Bright Red | `brightred` | |
| 64 | | Bright Green | `brightgreen` | |
| 65 | | Bright Yellow | `brightyellow` | |
| 66 | | Bright Blue | `brightblue` | |
| 67 | | Bright Magenta | `brightmagenta` | |
| 68 | | Bright Cyan | `brightcyan` | |
| 69 | | Bright White | `brightwhite` | |
| 70 | |
| 71 | ### Curated ZSH Color Codes for a Wider Range |
| 72 | |
| 73 | | ZSH Code | RGB Value | Description | |
| 74 | | --------- | --------------- | ------------------ | |
| 75 | | `%F{187}` | `215, 215, 175` | Beige | |
| 76 | | `%F{21}` | `0, 0, 255` | Blue | |
| 77 | | `%F{27}` | `0, 95, 255` | Blue (Bright) | |
| 78 | | `%F{19}` | `0, 0, 175` | Blue (Deep) | |
| 79 | | `%F{51}` | `0, 255, 255` | Cyan (Very Bright) | |
| 80 | | `%F{30}` | `0, 135, 135` | Cyan (Medium) | |
| 81 | | `%F{154}` | `175, 215, 0` | Chartreuse | |
| 82 | | `%F{180}` | `215, 175, 215` | Lavender | |
| 83 | | `%F{131}` | `175, 95, 135` | Mauve | |
| 84 | | `%F{201}` | `255, 0, 255` | Magenta (Bright) | |
| 85 | | `%F{47}` | `0, 255, 95` | Mint (Neon) | |
| 86 | | `%F{214}` | `255, 175, 0` | Orange (Light) | |
| 87 | | `%F{202}` | `255, 95, 0` | Orange | |
| 88 | | `%F{166}` | `215, 135, 0` | Orange (Dark) | |
| 89 | | `%F{189}` | `215, 215, 255` | Off-White | |
| 90 | | `%F{93}` | `135, 95, 255` | Periwinkle | |
| 91 | | `%F{125}` | `135, 0, 95` | Plum (Dark) | |
| 92 | | `%F{129}` | `175, 95, 255` | Purple | |
| 93 | | `%F{164}` | `215, 0, 95` | Rose | |
| 94 | | `%F{203}` | `255, 85, 85` | Salmon | |
| 95 | | `%F{48}` | `0, 255, 135` | Seafoam (Bright) | |
| 96 | | `%F{39}` | `0, 175, 255` | Sky Blue (Bright) | |
| 97 | | `%F{132}` | `175, 0, 135` | Violet (Deep) | |
| 98 | | `%F{231}` | `255, 255, 255` | White | |
| 99 | | `%F{46}` | `0, 255, 0` | Green (Bright) | |
| 100 | | `%F{34}` | `0, 175, 0` | Green (Dark) | |
| 101 | | `%F{240}` | `95, 95, 95` | Gray (Dark) | |
| 102 | | `%F{245}` | `135, 135, 135` | Gray | |
| 103 | | `%F{250}` | `175, 175, 175` | Gray (Light) | |
| 104 | | `%F{102}` | `95, 135, 0` | Olive | |
| 105 | | `%F{52}` | `95, 0, 0` | Red (Dark) | |
| 106 | | `%F{88}` | `135, 0, 0` | Red (Deep) | |
| 107 | | `%F{196}` | `255, 0, 0` | Red (Bright) | |
| 108 | | `%F{220}` | `255, 215, 0` | Yellow-Orange | |
| 109 | | `%F{226}` | `255, 255, 0` | Yellow (Bright) | |
| 110 | | `%F{184}` | `215, 215, 0` | Yellow (Soft) | |
| 111 | | `%F{16}` | `0, 0, 0` | Black (Very Dark) | |
| 112 | |
| 113 | ### Example Prompts |
| 114 | |
| 115 | | Example | Code | |
| 116 | | -------------------------------- | -------------------------------------------------------------------------------------------------------------------- | |
| 117 | | Simple Colorful Prompt | `PROMPT="%F{cyan}%n@%m %F{yellow}%~ %F{green}%# %f"` | |
| 118 | | Detailed Prompt with Time & Jobs | `PROMPT="%F{blue}%T %F{magenta}%n@%m %F{yellow}%~ %F{red}jobs:%j %F{green}%# %f"` | |
| 119 | | Git Status Prompt | `autoload -Uz vcs_info; precmd() { vcs_info }; PROMPT="%F{blue}%n@%m %F{yellow}%~ %F{cyan}${vcs_info_msg_0_}%f %# "` | |
| 120 | | Date, Host, and Directory | `PROMPT="%F{magenta}%D{%Y-%m-%d} %F{cyan}%m %F{yellow}%~ %F{green}%# %f"` | |
| 121 | | Background Color Example | `PROMPT="%K{black}%F{green}%n@%m%k %F{yellow}%~ %F{blue}%# %f"` | |