Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/himdek/acenoster-zsh-theme

A multipurpose ZSH Theme with very detailed git and mercurial prompt.
https://github.com/himdek/acenoster-zsh-theme

cli cli-app oh-my-zsh oh-my-zsh-plugin oh-my-zsh-theme ohmyzsh productivity shell shell-extension shell-prompt theme themes zsh zsh-configuration zsh-custom zsh-plugin zsh-plugins zsh-prompt zsh-theme zshrc

Last synced: 3 months ago
JSON representation

A multipurpose ZSH Theme with very detailed git and mercurial prompt.

Awesome Lists containing this project

README

        


acenoster.zsh-theme


A multipurpose ZSH theme








GitHub issues
GitHub pull requests

GitHub license

GitHub forks
GitHub stars


## Prerequisites:

* An Unix like Operating system like Linux, MacOS, BSD, Android (Termux) etc or WSL (Windows Subsystem for Linux), cygwin or msys if you want to use in Windows.
* zsh should be installed. See [how to install zsh in various platforms](https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH#how-to-install-zsh-on-many-platforms).
* oh-my-zsh should be installed. See [how to install oh-my-zsh](https://ohmyz.sh/#install).
* You will need to install any one [Nerd font](https://www.nerdfonts.com) and use it in your terminal for this theme to render the icons correctly.
* Download any of the fonts you like from [here](https://www.nerdfonts.com/font-downloads).
* Extract the downloaded `.zip` file and copy its contents into a folder in either `\usr\share\fonts` or `~\.local\share\fonts`.

### How to install and use:

* Make sure you are using zsh and execute any one of the following commands given below to install the acenoster theme.

* using git
```
git clone https://github.com/HimDek/Acenoster-ZSH-Theme.git $ZSH/custom/themes/acenoster
```
* using wget
```
wget https://raw.githubusercontent.com/HimDek/Acenoster-ZSH-Theme/master/acenoster.zsh-theme -O $ZSH/custom/themes/acenoster/acenoster.zsh-theme
```

* Enable acenoster theme by editing the `~/.zshrc` file. In that file, change the line containing `ZSH_THEME="SomeName"` to `ZSH_THEME="acenoster/acenoster"`.


## What does it show?

The following tables show which information are shown in the prompt in sequential order.

* \* denotes visible only when applicable.
* \*\* indicates disabled by default.
* The corresponding oh-my-zsh plugin needs to be enabled in order for its info to be shown.
* To disable an info, either disable its corresponding oh-my-zsh plugin, set its corresponding toggle variable to `0` or unset its corresponding format specifier variable. See [how to enable or disable oh-my-zsh plugins](https://github.com/ohmyzsh/ohmyzsh/wiki/Plugins).
* The default values of toggle and format specifier variables with additional information are given [further down](#info-toggles-set-to-0-for-off-1-for-on).

### Left pre prompt:



Info
oh-my-zsh plugin
Toggle variable
Format specifier variable


Username

ZSH_THEME_ACENOSTER_ALWAYS_SHOW_USER
ZSH_THEME_ACENOSTER_USER_PROMPT_FORMAT


Hostname

ZSH_THEME_ACENOSTER_ALWAYS_SHOW_HOST
ZSH_THEME_ACENOSTER_HOST_PROMPT_FORMAT


*AWS profile name
aws




Current working directory


ZSH_THEME_ACENOSTER_DIR_PROMPT_FORMAT


*git branch, tracking and local status
git-prompt




** *Mercurial branch, tracking and local status

ZSH_THEME_ACENOSTER_SHOW_HG_PROMPT



*Virtual environment name
virtualenv


### Right pre prompt:


Info
oh-my-zsh plugin
Toggle variable
Format specifier variable


*Battery percentage and status

ZSH_THEME_ACENOSTER_SHOW_BATTERY



*Last command execution time

ZSH_THEME_ACENOSTER_SHOW_TIMER



Emoji clock
emoji-clock




Digital clock


ZSH_THEME_ACENOSTER_CLOCK_PROMPT_TIME_FORMAT


Calendar


ZSH_THEME_ACENOSTER_CALENDAR_PROMPT_DATE_FORMAT

### Left Prompt:


Info
oh-my-zsh plugin
Toggle variable


*Number of background processes

ZSH_THEME_ACENOSTER_SHOW_BACK_JOBS


*Last command return value

ZSH_THEME_ACENOSTER_SHOW_LAST_RETURN


*Vi normal mode indicator
vi-mode
ZSH_THEME_ACENOSTER_SHOW_VI_MODE


## Environment variables:

Below are the default values of environment variables used by this prompt. To customize any of them, unset or set a new value in the `~/.zshrc` file.

### Info Toggles: Set to `0` for off, `1` for on.

```
ZSH_THEME_ACENOSTER_ALWAYS_SHOW_USER=1
ZSH_THEME_ACENOSTER_ALWAYS_SHOW_HOST=1
ZSH_THEME_ACENOSTER_SHOW_HG_PROMPT=0
ZSH_THEME_ACENOSTER_SHOW_BATTERY=1
ZSH_THEME_ACENOSTER_SHOW_TIMER=1
ZSH_THEME_ACENOSTER_SHOW_BACK_JOBS=1
ZSH_THEME_ACENOSTER_SHOW_LAST_RETURN=1
ZSH_THEME_ACENOSTER_SHOW_VI_MODE=1
```

* See [this](#what-does-it-show) to know which is what.
* Turning off `ZSH_THEME_ACENOSTER_ALWAYS_SHOW_USER` which is on by default will hide the user name unless it is root or in an SSH shell.
* Turning off `ZSH_THEME_ACENOSTER_ALWAYS_SHOW_HOST` which is on by default will hide the host name unless it is in an SSH shell.
* Turning on `ZSH_THEME_ACENOSTER_SHOW_HG_PROMPT` which is off by default will enable the [mercurial](https://www.mercurial-scm.org/) info of the prompt. Mercurial is a SCM (Source Control Management) tool just like git. Although not as popular as git, it is still used in many projects.
* `ZSH_THEME_ACENOSTER_SHOW_BATTERY` which is on by default is the toggle for the battery capacity icon and percentage in the prompt.
* `ZSH_THEME_ACENOSTER_SHOW_TIMER` which is on by default is the toggle for the timer that shows the time taken by the previous command run in the terminal.
* `ZSH_THEME_ACENOSTER_SHOW_VI_MODE` which is on by default is the toggle for the Vi normal mode inicator
* `ZSH_THEME_ACENOSTER_SHOW_BACK_JOBS` which is on by default is the toggle for the indicator that shows if any background process is running in the current terminal.
* `ZSH_THEME_ACENOSTER_SHOW_LAST_RETURN` which is on by default is the toggle for the indicator that shows if the last command exited with a non zero return value.

### Info Format specifiers:

```
ZSH_THEME_ACENOSTER_USER_PROMPT_FORMAT="%n"
ZSH_THEME_ACENOSTER_HOST_PROMPT_FORMAT="%m"
ZSH_THEME_ACENOSTER_DIR_PROMPT_FORMAT="%~"
ZSH_THEME_ACENOSTER_CLOCK_PROMPT_TIME_FORMAT="%I:%M %P"
ZSH_THEME_ACENOSTER_CALENDAR_PROMPT_DATE_FORMAT="%a %b %d"
```

* See [this](#what-does-it-show) to know which is what.
* If you don't want to see any of these info in the prompt, then unset the corresponding variable by inserting a line with the command `unset variableName` into the `~/.zshrc` file.

### Settings: Set to `0` to disable, `1` to enable.

```
ZSH_THEME_ACENOSTER_FLUENT_FLOW=1
ZSH_THEME_ACENOSTER_LESS_ICONS=0
ZSH_THEME_ACENOSTER_COMPACT=0
```

* Enabling `ZSH_THEME_ACENOSTER_FLUENT_FLOW` which is enabled by default shows the connecting words like `at`, `in`, `took`, `on` etc in a dull color between different parts of the prompt to make them seem connected and unified while not being too intrusive.
* Enabling `ZSH_THEME_ACENOSTER_LESS_ICONS`, which is disabled by default will show only those icons in the prompt that indicate a status.
* Enabling `ZSH_THEME_ACENOSTER_COMPACT` which is disabled by default will remove the empty line before every prompt.

### Battery levels:

```
ZSH_THEME_ACENOSTER_BATTERY_HIGH=80
ZSH_THEME_ACENOSTER_BATTERY_LOW=40
ZSH_THEME_ACENOSTER_BATTERY_CRIT=20
```

### Colors:

```
COLOR_AWS="%{$FG[130]%}" # Used by the AWS icon and profile name text.
COLOR_GIT="%{$FG[203]%}" # Used by the git icon and branch name text.
COLOR_HG="%{$FG[244]%}" # Used by the mercurial icon and branch name text.
COLOR_BATTERY_FULL="%{$FG[040]%}" # Used by the battery full icon and "100%" text.
COLOR_BATTERY_NORMAL="%{$fg[cyan]%}"
COLOR_DULL="%{$fg[black]%}"
COLOR_RED="%{$fg[red]%}"
COLOR_GREEN="%{$fg[green]%}"
COLOR_BLUE="%{$fg[blue]%}"
COLOR_YELLOW="%{$fg[yellow]%}"
COLOR_RESET="%{$reset_color%}"
```
* `COLOR_BATTERY_NORMAL` is the color used by the battery icon and percentage text when it is between the values of `ZSH_THEME_ACENOSTER_BATTERY_HIGH` and `ZSH_THEME_ACENOSTER_BATTERY_LOW` as set in [Battery levels](#battery-levels) section.
* `COLOR_DULL` is the color used by the connecting words like `at`, `in`, `took`, `on` etc shown between different parts of the prompt when `ZSH_THEME_ACENOSTER_FLUENT_FLOW` is enabled as described [here](#settings-set-to-0-to-disable-1-to-enable).
* Other colors are used by several parts of the prompt to indicate different states in general.


Gallery


Full_Default_Prompt



▲ Default prompt showing all possible information


Full_Default_Prompt



▲ Same as above but with ZSH_THEME_ACENOSTER_LESS_ICONS turned on: