Skip to content
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
Cannot retrieve contributors at this time

Yoncé (for Bash-it)

Yoncé is a customizable bash prompt theme.

Yoncé starts small, and allows you to customize it to suit your needs. It can be as simple or complex as you like.

Yoncé Bash Theme

The font in the screenshot is a Nerd Font patched version of Dank Mono. 40£.

Currently it shows:

  • Clever hostname, username, and directory displaying
  • Indicator if the last command exits with non-zero code
  • Indicator for cached sudo credential
  • Indicator for ssh login
  • Current Git branch and rich repo status:
    • dirty branch
    • clean branch
    • untracked changes
    • uncommitted changes in the index
    • unstaged changes
    • ahead of remote branch
    • behind of remote branch
    • stashed changes
  • Current Node.js version, through nvm
  • Current Python version
  • Current battery level and status
    • charging
    • discharging
    • using AC power
  • Time stamps 24hr in format
  • Yoncé lyric


  • bash-it (v5.2 or recent) must be installed.
  • Any Nerd Font must be installed and used in your terminal. Demo uses a patched Dank Mono.



Prompt Segments

Four environment variables can be defined to rearrange the segments order. The default values are:


___YONCE_TOP_LEFT:-"user host dir scm"

___YONCE_TOP_RIGHT:-"exitcode node python todo clock battery"



Various prompt segments can be shown/hidden or modified according to your choice. There are two ways for doing that:

  1. On-the-fly using yonce command
  2. Theme Environment Variables

On-the-fly using yonce command

This theme provides a command for showing/hiding prompt segments. Tab-completion for this command is enabled by default. Configuration specified by this command will only be applied to current and subsequent child shells.

For showing/hiding parts of the prompt

yonce show <segment> and yonce hide <segment>

...and for renaming shell tabs

yonce name <name>

... and for playing songs by Yoncé!

yonce play <song>

Adding songs

To add a new song, you'll need to first find a YouTube video for it. Then, create a new variable and set it to the YouTube URL:


Next, add that variable to the list of available songs. The default list:

__YONCE_SONGS="yonce formation seven11 apeshit crazy countdown sorry"

yonce play list will display all available songs.

yonce help me will display a helpful prompt for all available commands.

Theme Environment Variables

This is used for permanent settings that apply to all terminal sessions. You have to define the value of specific theme variables in your .bash_profile (or equivalent) file.

The name of the variables are listed below along with their default values.

Yoncé lyric

Display motivational lyric by Yoncé:


User Information

Indicator for cached sudo credential (see sudo manpage for more information):



Software configuration management (Git) information:


Exit Code

Exit code of the last command:


Node Environment

Node environment version information:


Python Environment

Python environment version information:


Todo.txt status


brew install todo-txt




Format of the clock (see date manpage for more information):


Battery Charge

Battery charge percentage:


bash-it enable plugin battery


ASCII artwork is disabled by default, but you can enable it by changing the following variables:

YONCE_ART_ENABLED=0, change to 1 to enable

Artwork available for display can be previewed below:


    _                                      *
   (_|   |                    /          * | *
     |   |  __   _  _    __   _    * * * \|O|/ * * *
     |   | /  \_/ |/ |  /    |/     \o\o\o|O|o/o/o/
      \_/|/\__/   |  |_/\___/|__/   (<><><>O<><><>)
        /|                           '==========='


   (_|   |                    /
     |   |  __   _  _    __   _
     |   | /  \_/ |/ |  /    |/
      \_/|/\__/   |  |_/\___/|__/


            * | *
      * * * \|O|/ * * *


           * * * *
      * * * \|O|/ * * *


 _          _   _
| |        | | | |      |
| |     _  | | | |  __  |
|/ \   |/  |/  |/  /  \_|
|   |_/|__/|__/|__/\__/ o

Thanks to

This theme is inspired by and based on Brainy.


Developer / Author: Mina Markham