1- #### KALI-LIKE Theme for Oh-My-Zsh
1+ #### KALI-LIKE Theme for Oh-My-Zsh
22
33![ Preview] ( screenshots/kali-like-zsh.png )
44
55Kali-Like is a [ oh-my-zsh] ( https://ohmyz.sh/ ) theme that looks like Kali Linux default zsh theme.
66Kali-Like can be installed on any linux distribution and isn't Kali Linux dependent.
77
8- ## Installation
8+ ## Features
99
10- 1 . ` wget -O ~/.oh-my-zsh/themes/kali-like.zsh-theme https://raw.githubusercontent.com/clamy54/kali-like-zsh-theme/master/kali-like.zsh-theme `
11- 2 . ` vim ~/.zshrc `
12- 3 . Set ` ZSH_THEME="current_theme" ` to ` ZSH_THEME="kali-like" `
10+ - Two-line or one-line prompt (toggle with ` Ctrl+P ` )
11+ - VCS support (git, svn, hg, bzr) via ` vcs_info ` with staged/unstaged indicators
12+ - Async VCS info to avoid prompt lag in large repositories
13+ - SSH and tmux session indicators
14+ - Docker/container detection
15+ - Nix shell indicator
16+ - Kubernetes context display
17+ - Python virtual environment display (venv, virtualenv, conda)
18+ - Command execution duration (shown when exceeding a configurable threshold)
19+ - Return code indicator (red cross on failure)
20+ - Dark/light theme with auto-detection
21+ - Syntax highlighting with theme-aware colors
22+ - Auto-download of ` zsh-syntax-highlighting ` and ` zsh-autosuggestions ` plugins
23+ - Fully configurable colors (256-color palette)
24+
25+ ## Installation
26+
27+ 1 . ` wget -O ~/.oh-my-zsh/themes/kali-like.zsh-theme https://raw.githubusercontent.com/clamy54/kali-like-zsh-theme/master/kali-like.zsh-theme `
28+ 2 . ` vim ~/.zshrc `
29+ 3 . Set ` ZSH_THEME="current_theme" ` to ` ZSH_THEME="kali-like" `
1330
1431
1532## Options
@@ -34,25 +51,76 @@ If they are not found, they are downloaded automatically into `~/.zsh/`.
3451| ---| ---| ---|
3552| ` PROMPT_ALTERNATIVE ` | ` twoline ` | ` twoline ` or ` oneline ` . Toggle at runtime with ` Ctrl+P ` |
3653| ` NEWLINE_BEFORE_PROMPT ` | ` yes ` | Print a blank line before each prompt |
54+ | ` PROMPT_DASH_COUNT ` | ` 3 ` | Number of ` ─ ` characters after the initial ` ┌─ ` |
55+
56+ ### Theme mode
57+
58+ | Variable | Default | Description |
59+ | ---| ---| ---|
60+ | ` THEME_MODE ` | ` auto ` | ` auto ` (detect terminal background), ` dark ` , or ` light ` |
61+
62+ Auto-detection uses the ` $COLORFGBG ` environment variable (supported by most terminals). If detection fails, defaults to ` dark ` .
3763
3864### Colors
3965
4066Colors are specified as 256-color palette indices. Run ` spectrum_ls ` in your terminal to browse all available colors.
4167Color names (` white ` , ` cyan ` , ` yellow ` , etc.) are also accepted where noted.
4268
43- | Variable | Default | Description |
69+ The values below are the defaults for dark mode. Light mode automatically overrides them with darker variants for readability on light backgrounds.
70+
71+ | Variable | Default (dark) | Description |
4472| ---| ---| ---|
4573| ` FGPROMPT_USER ` | ` 027 ` | ` user@host ` color (normal user) |
4674| ` FGPROMPT_ROOT ` | ` 196 ` | ` root@host ` color |
4775| ` FRAMEPROMPT_USER ` | ` 073 ` | Frame characters color (` ┌ ` , ` └─ ` , brackets) for normal user |
4876| ` FRAMEPROMPT_ROOT ` | ` 027 ` | Frame characters color for root |
49- | ` GITPROMPT_COLOR ` | ` 067 ` | Git branch color |
77+ | ` VCSPROMPT_COLOR ` | ` 067 ` | VCS branch info color (git, svn, hg, bzr) |
5078| ` VENVPROMPT_COLOR ` | ` white ` | Virtual environment name color (color name or index) |
79+ | ` SSHPROMPT_COLOR ` | ` yellow ` | SSH indicator color |
80+ | ` TMUXPROMPT_COLOR ` | ` cyan ` | Tmux indicator color |
81+ | ` DOCKERPROMPT_COLOR ` | ` 033 ` | Docker/container indicator color |
82+ | ` NIXPROMPT_COLOR ` | ` 105 ` | Nix shell indicator color |
83+ | ` K8SPROMPT_COLOR ` | ` 069 ` | Kubernetes context indicator color |
84+ | ` CMDTIME_COLOR ` | ` 220 ` | Command duration color |
5185| ` PATHPROMPT_COLOR ` | ` terminal_default ` | Path color — use ` terminal_default ` for the terminal's default foreground color, or any color name/index |
5286
53- ## Font
87+ ### Command duration
88+
89+ | Variable | Default | Description |
90+ | ---| ---| ---|
91+ | ` SHOW_CMD_DURATION ` | ` yes ` | Show command execution time in RPROMPT |
92+ | ` CMDTIME_THRESHOLD ` | ` 3 ` | Minimum seconds before duration is displayed |
93+
94+ ### Async VCS
95+
96+ | Variable | Default | Description |
97+ | ---| ---| ---|
98+ | ` ASYNC_VCS_INFO ` | ` yes ` | Run VCS info asynchronously to avoid prompt lag |
99+
100+ ## Environment indicators
101+
102+ The prompt automatically detects and displays the following environments:
103+
104+ | Indicator | Detection method | Description |
105+ | ---| ---| ---|
106+ | ` SSH ` | ` $SSH_CONNECTION ` | Remote SSH session |
107+ | ` tmux ` | ` $TMUX ` | Inside a tmux session |
108+ | ` container ` | ` /.dockerenv ` , ` /run/.containerenv ` , ` $container ` | Docker or Podman container |
109+ | ` nix ` | ` $IN_NIX_SHELL ` , ` $NIX_STORE ` | Nix shell environment |
110+ | ` k8s context ` | ` kubectl config current-context ` | Active Kubernetes context (only if ` kubectl ` is installed) |
111+ | ` venv/conda ` | ` $VIRTUAL_ENV ` , ` $CONDA_DEFAULT_ENV ` | Python virtual environment |
112+
113+ ## VCS support
114+
115+ The theme uses zsh's built-in ` vcs_info ` framework, which supports:
116+ - ** Git** — branch, staged (` + ` ), unstaged (` ! ` ), and current action (rebase, merge, etc.)
117+ - ** SVN** — current revision
118+ - ** Mercurial (hg)** — branch
119+ - ** Bazaar (bzr)** — branch
120+
121+ ## Font
54122By default, Kali Linux uses FiraCode as default terminal font.
55123You can [ install] ( https://github.com/tonsky/FiraCode/wiki/Installing ) it on your distro for a better Kali Look'n'Feel ...
56124
57125## License
58- MIT [ Cyril Lamy] ( https://github.com/clamy54 )
126+ MIT [ Cyril Lamy] ( https://github.com/clamy54 )
0 commit comments