diff --git a/README.md b/README.md index 5c7f5b1..7f8131b 100644 --- a/README.md +++ b/README.md @@ -9,11 +9,11 @@ staged, changed, etc. (an original idea from this [blog post][]). -`gitstatus.sh` added by [AKS](http://github.com/aks). +`gitstatus.sh` and `git-prompt-help.sh` added by [AKS](http://github.com/aks). ## Examples -The prompt may look like the following: +The prompt may look like the following: ![Example prompt](gitprompt.png) @@ -49,9 +49,13 @@ The symbols are as follows: ## Install -- Clone this repository to your homedir - e.g. ``git clone https://github.com/magicmonty/bash-git-prompt.git .bash-git-prompt`` -- Source the file ``gitprompt.sh`` from your ``~/.bashrc`` config file: +1. Clone this repository to your home directory. + + git clone https://github.com/magicmonty/bash-git-prompt.git .bash-git-prompt + +2. Source the file `gitprompt.sh` from `~/.bashrc` + +3. `cd` to a git repository and test it! ```sh # some other config in .bashrc @@ -61,28 +65,40 @@ The symbols are as follows: # Set config variables first GIT_PROMPT_ONLY_IN_REPO=1 + # GIT_PROMPT_FETCH_REMOTE_STATUS=0 # uncomment to avoid fetching remote status + + # GIT_PROMPT_START=... # uncomment for custom prompt start sequence + # GIT_PROMPT_END=... # uncomment for custom prompt end sequence + # as last entry source the gitprompt script source ~/.bash-git-prompt/gitprompt.sh ``` - Go in a git repository and test it! -## Configuration +- You can define `GIT_PROMPT_START` and `GIT_PROMPT_END` to tweak your prompt. -- The default colors and some variables for tweaking the prompt are defined - within ``gitprompt.sh``, but may be overridden by copying ``git-prompt-colors.sh`` - to your home directory at ``~/.git-prompt-colors.sh``. This file may also be found in the same - directory as ``gitprompt.sh``, but without the leading ``.``. +- The default colors are defined within `prompt-colors.sh`, which is sourced by + `gitprompt.sh`. The colors used for various git status are defined in + `git-prompt-colors.sh`. Both of these files may be overridden by copying + them to $HOME with a `.` prefix. They can also be placed in `$HOME/lib` + without the leading `.`. The defaults are the original files in the + `~/.bash-git-prompt` directory. -- You can use ``GIT_PROMPT_START_USER``, ``GIT_PROMPT_START_ROOT``, ``GIT_PROMPT_END_USER`` and ``GIT_PROMPT_END_ROOT`` in your ``.git-prompt-colors.sh`` to tweak your prompt. You can also override the start and end of the prompt by setting ``GIT_PROMPT_START`` and ``GIT_PROMPT_END`` before you source the ``gitprompt.sh`` +- You can use `GIT_PROMPT_START_USER`, `GIT_PROMPT_START_ROOT`, + `GIT_PROMPT_END_USER` and `GIT_PROMPT_END_ROOT` in your + `.git-prompt-colors.sh` to tweak your prompt. You can also override the start + and end of the prompt by setting `GIT_PROMPT_START` and `GIT_PROMPT_END` + before you source the `gitprompt.sh`. - The current git repo information is obtained by the script `gitstatus.sh` or - `gitstatus.py`. Both scripts do the same thing, but the bash script is a - tad more quick, and is used by default. If you prefer the python script - (possibly because you have enhanced it), simply delete or change the name of - ``gitstatus.sh``. + `gitstatus.py`. Both scripts do the same thing, but the bash script is a tad + more quick, and is used by default. If you prefer the python script + (possibly because you have enhanced it), simply delete or change the name of + `gitstatus.sh`. + +- You can define `prompt_callback` function to tweak your prompt dynamically. -- You can define ``prompt_callback`` function to tweak your prompt dynamically. ```sh function prompt_callback { if [ `jobs | wc -l` -ne 0 ]; then @@ -91,19 +107,26 @@ function prompt_callback { } ``` -- If you want to show the git prompt only, if you are in a git repository you can set ``GIT_PROMPT_ONLY_IN_REPO=1`` before sourcing the gitprompt script +- If you want to show the git prompt only if you are in a git repository you + can set ``GIT_PROMPT_ONLY_IN_REPO=1`` before sourcing the gitprompt script -- You can show an additional indicator at the start of the prompt, which shows the result of the last executed command by setting ``GIT_PROMPT_SHOW_LAST_COMMAND_INDICATOR=1`` before sourcing the gitprompt script +- You can show an additional indicator at the start of the prompt, which shows + the result of the last executed command by setting + ``GIT_PROMPT_SHOW_LAST_COMMAND_INDICATOR=1`` before sourcing the gitprompt + script -- It is now possible to disable the fetching of the remote repository either globally by setting ``GIT_PROMPT_FETCH_REMOTE_STATUS=0`` in your .bashrc or - on a per repository basis by creating a file named ``.bash-git-rc`` with the content ``FETCH_REMOTE_STATUS=0`` in the root of your git repository. +- It is now possible to disable the fetching of the remote repository either + globally by setting ``GIT_PROMPT_FETCH_REMOTE_STATUS=0`` in your .bashrc or + on a per repository basis by creating a file named ``.bash-git-rc`` with the + content ``FETCH_REMOTE_STATUS=0`` in the root of your git repository. - You can get help on the git prompt with the function ``git_prompt_help``. - Examples are available with ``git_prompt_examples``. + Examples are available with ``git_prompt_examples``. **Enjoy!** ## Alternative RPM Install + This project ships an RPM spec to simplify installation on RHEL and clones. If you wish to install from RPM, you may first build the RPM from scratch by following this procedure: diff --git a/git-prompt-colors.sh b/git-prompt-colors.sh index 73e10a8..aa76a49 100644 --- a/git-prompt-colors.sh +++ b/git-prompt-colors.sh @@ -1,3 +1,17 @@ +# These are the color definitions used by gitprompt.sh + +declare -g GIT_PROMPT_PREFIX +declare -g GIT_PROMPT_SUFFIX +declare -g GIT_PROMPT_SEPARATOR +declare -g GIT_PROMPT_BRANCH +declare -g GIT_PROMPT_STAGED +declare -g GIT_PROMPT_CONFLICTS +declare -g GIT_PROMPT_CHANGED +declare -g GIT_PROMPT_REMOTE +declare -g GIT_PROMPT_UNTRACKED +declare -g GIT_PROMPT_STASHED +declare -g GIT_PROMPT_CLEAN + local Time12a="\$(date +%H:%M)" local PathShort="\w" @@ -8,12 +22,12 @@ GIT_PROMPT_SEPARATOR="|" # separates each item GIT_PROMPT_BRANCH="${Magenta}" # the git branch that is active in the current directory GIT_PROMPT_STAGED="${Red}●" # the number of staged files/directories -GIT_PROMPT_CONFLICTS="${Red}✖" # the number of files in conflict -GIT_PROMPT_CHANGED="${Blue}✚" # the number of changed files +GIT_PROMPT_CONFLICTS="${Red}✖ " # the number of files in conflict +GIT_PROMPT_CHANGED="${Blue}✚ " # the number of changed files GIT_PROMPT_REMOTE=" " # the remote branch name (if any) and the symbols for ahead and behind GIT_PROMPT_UNTRACKED="${Cyan}…" # the number of untracked files/dirs -GIT_PROMPT_STASHED="${BoldBlue}⚑" # the number of stashed files/dir +GIT_PROMPT_STASHED="${BoldBlue}⚑ " # the number of stashed files/dir GIT_PROMPT_CLEAN="${BoldGreen}✔" # a colored flag indicating a "clean" repo GIT_PROMPT_COMMAND_OK="${Green}✔ " # indicator if the last command returned with an exit code of 0 @@ -27,4 +41,4 @@ GIT_PROMPT_END_ROOT=" \n${White}${Time12a}${ResetColor} # " # Please do not add colors to these symbols GIT_PROMPT_SYMBOLS_AHEAD="↑·" # The symbol for "n versions ahead of origin" GIT_PROMPT_SYMBOLS_BEHIND="↓·" # The symbol for "n versions behind of origin" -GIT_PROMPT_SYMBOLS_PREHASH=":" # Written before hash of commit, if no name could be found \ No newline at end of file +GIT_PROMPT_SYMBOLS_PREHASH=":" # Written before hash of commit, if no name could be found diff --git a/git-prompt-help.sh b/git-prompt-help.sh old mode 100644 new mode 100755 index ca6c5de..791bc7f --- a/git-prompt-help.sh +++ b/git-prompt-help.sh @@ -3,6 +3,8 @@ # being displayed. git_prompt_help() { + source prompt-colors.sh + source git-prompt-colors.sh cat <|] @@ -18,12 +20,12 @@ remote branch. It can be empty, or one of: LOCALSTATUS is one of the following: - ${GIT_PROMPT_CLEAN}${ResetColor} - repository clean - ${GIT_PROMPT_STAGED}N${ResetColor} - N staged files - ${GIT_PROMPT_CONFLICTS}N${ResetColor} - N conflicted files - ${GIT_PROMPT_CHANGED}N${ResetColor} - N changed but *unstaged* files - ${GIT_PROMPT_UNTRACKED}N${ResetColor} - N untracked files - ${GIT_PROMPT_STASHED}N${ResetColor} - N stash entries + ${GIT_PROMPT_CLEAN}${ResetColor} - repository clean + ${GIT_PROMPT_STAGED} N${ResetColor} - N staged files + ${GIT_PROMPT_CONFLICTS} N${ResetColor} - N conflicted files + ${GIT_PROMPT_CHANGED} N${ResetColor} - N changed but *unstaged* files + ${GIT_PROMPT_UNTRACKED} N${ResetColor} - N untracked files + ${GIT_PROMPT_STASHED} N${ResetColor} - N stash entries See "git_prompt_examples" for examples. EOF diff --git a/gitprompt.sh b/gitprompt.sh index 262bec1..1dab935 100755 --- a/gitprompt.sh +++ b/gitprompt.sh @@ -22,115 +22,106 @@ function git_prompt_dir() fi } -function git_prompt_config() -{ - # Colors - ResetColor="\[\033[0m\]" # Text reset - - # Bold - local BoldGreen="\[\033[1;32m\]" # Green - local BoldBlue="\[\033[1;34m\]" # Blue - - # High Intensty - local IntenseBlack="\[\033[0;90m\]" # Grey +# gp_set_file_var ENVAR SOMEFILE +# +# Set ENVAR to the path to SOMEFILE, based on $HOME, $__GIT_PROMPT_DIR, and the +# directory of the current script. The SOMEFILE can be prefixed with '.', or +# not. +# +# Return 0 (success) if ENVAR not already defined, 1 (failure) otherwise. + +function gp_set_file_var() { + local envar="$1" + local file="$2" + if eval "test -z \"\$$envar\"" ; then + eval "$envar=" # set empty envar + gp_maybe_set_envar_to_path "$envar" "$HOME/.$file" "$HOME/$file" "$HOME/lib/$file" && return 0 + git_prompt_dir + gp_maybe_set_envar_to_path "$envar" "$__GIT_PROMPT_DIR/$file" "${0##*/}/$file" && return 0 + fi + return 1 +} - # Bold High Intensty - local Magenta="\[\033[1;95m\]" # Purple +# gp_maybe_set_envar_to_path ENVAR FILEPATH ... +# +# return 0 (true) if any FILEPATH is readable, set ENVAR to it +# return 1 (false) if not + +function gp_maybe_set_envar_to_path(){ + local envar="$1" + shift + local file + for file in "$@" ; do + if [[ -r "$file" ]]; then + eval "$envar=\"$file\"" + return 0 + fi + done + return 1 +} - # Regular Colors - local Yellow="\[\033[0;33m\]" - local White='\[\033[37m\]' - local Red="\[\033[0;31m\]" - local Blue="\[\033[0;34m\]" - local Cyan="\[\033[0;36m\]" - local Green="\[\033[0;32m\]" +function git_prompt_config() +{ #Checking if root to change output _isroot=false [[ $UID -eq 0 ]] && _isroot=true + # There are two files related to colors: + # + # prompt-colors.sh -- sets generic color names suitable for bash `PS1` prompt + # git-prompt-colors.sh -- sets the GIT_PROMPT color scheme, using names from prompt-colors.sh + + if gp_set_file_var __PROMPT_COLORS_SH prompt-colors.sh ; then + if [[ -n "${__PROMPT_COLORS_SH}" ]]; then + source "${__PROMPT_COLORS_SH}" # outsource the color defs + else + echo 1>&2 "Cannot find prompt-colors.sh!" + fi + fi + # source the user's ~/.git-prompt-colors.sh file, or the one that should be # sitting in the same directory as this script - if [[ -z "$__GIT_PROMPT_COLORS_FILE" ]]; then - local pfx file dir - for dir in "$HOME" "$__GIT_PROMPT_DIR" ; do - for pfx in '.' '' ; do - file="$dir/${pfx}git-prompt-colors.sh" - if [[ -f "$file" ]]; then - __GIT_PROMPT_COLORS_FILE="$file" - break 2 - fi - done - done + if gp_set_file_var __GIT_PROMPT_COLORS_FILE git-prompt-colors.sh ; then + + # if the envar is defined, source the file for custom colors + if [[ -n "${__GIT_PROMPT_COLORS_FILE}" ]]; then + source "${__GIT_PROMPT_COLORS_FILE}" + else + echo 1>&2 "Cannot find git-prompt-colors.sh!" + fi fi - # Various variables you might want for your PS1 prompt instead - local Time12a="\$(date +%H:%M)" - # local Time12a="(\$(date +%H:%M:%S))" - # local Time12a="(\@))" - local PathShort="\w" + # Do this only once to define PROMPT_START and PROMPT_END - # if the envar is defined, source the file for custom colors - if [[ -n "$__GIT_PROMPT_COLORS_FILE" && -f "$__GIT_PROMPT_COLORS_FILE" ]]; then - source "$__GIT_PROMPT_COLORS_FILE" - else - # Default values for the appearance of the prompt. Do not change these - # below. Instead, copy these to `~/.git-prompt-colors.sh` and change them - # there. - GIT_PROMPT_PREFIX="[" - GIT_PROMPT_SUFFIX="]" - GIT_PROMPT_SEPARATOR="|" - GIT_PROMPT_BRANCH="${Magenta}" - GIT_PROMPT_STAGED="${Red}●" - GIT_PROMPT_CONFLICTS="${Red}✖" - GIT_PROMPT_CHANGED="${Blue}✚" - GIT_PROMPT_REMOTE=" " - GIT_PROMPT_UNTRACKED="${Cyan}…" - GIT_PROMPT_STASHED="${BoldBlue}⚑" - GIT_PROMPT_CLEAN="${BoldGreen}✔" - GIT_PROMPT_COMMAND_OK="${Green}✔ " - GIT_PROMPT_COMMAND_FAIL="${Red}✘ " - - GIT_PROMPT_START_USER="${Yellow}${PathShort}${ResetColor}" - GIT_PROMPT_START_ROOT="${Yellow}${PathShort}${ResetColor}" - GIT_PROMPT_END_USER=" \n${White}${Time12a}${ResetColor} $ " - GIT_PROMPT_END_ROOT=" \n${White}${Time12a}${ResetColor} # " - - # Please do not add colors to these symbols - GIT_PROMPT_SYMBOLS_AHEAD="↑·" - GIT_PROMPT_SYMBOLS_BEHIND="↓·" - GIT_PROMPT_SYMBOLS_PREHASH=":" - fi + if [[ -z "$PROMPT_START" || -z "$PROMPT_END" ]]; then - if [ "x${GIT_PROMPT_SHOW_LAST_COMMAND_INDICATOR}" == "x1" ]; then - if [ $LAST_COMMAND_STATE = 0 ]; then - LAST_COMMAND_INDICATOR="${GIT_PROMPT_COMMAND_OK}"; - else - LAST_COMMAND_INDICATOR="${GIT_PROMPT_COMMAND_FAIL}"; - fi - fi + # Various variables you might want for your PS1 prompt instead + local Time12a="\$(date +%H:%M)" + # local Time12a="(\$(date +%H:%M:%S))" + # local Time12a="(\@))" + local PathShort="\w" - if [ "x${GIT_PROMPT_START}" == "x" ]; then - #First statment is for non root behavior second for root - if $_isroot; then - PROMPT_START="${GIT_PROMPT_START_ROOT}" + if [[ -z "${GIT_PROMPT_START}" ]] ; then + if $_isroot; then + PROMPT_START="$GIT_PROMPT_START_ROOT" + else + PROMPT_START="$GIT_PROMPT_START_USER" + fi else - PROMPT_START="${GIT_PROMPT_START_USER}" + PROMPT_START="${GIT_PROMPT_START}" fi - else - PROMPT_START="${GIT_PROMPT_START}" - fi - if [ "x${GIT_PROMPT_END}" == "x" ]; then - #First statment is for non root behavior second for root - if ! $_isroot; then - PROMPT_END="${GIT_PROMPT_END_USER}" + if [[ -z "${GIT_PROMPT_END}" ]] ; then + if $_isroot; then + PROMPT_END="$GIT_PROMPT_END_ROOT" + else + PROMPT_END="$GIT_PROMPT_END_USER" + fi else - PROMPT_END="${GIT_PROMPT_END_ROOT}" + PROMPT_END="${GIT_PROMPT_END}" fi - else - PROMPT_END="${GIT_PROMPT_END}" fi # set GIT_PROMPT_LEADING_SPACE to 0 if you want to have no leading space in front of the GIT prompt @@ -154,18 +145,11 @@ function git_prompt_config() # fetch remote revisions every other $GIT_PROMPT_FETCH_TIMEOUT (default 5) minutes GIT_PROMPT_FETCH_TIMEOUT=${1-5} - if [ "x$__GIT_STATUS_CMD" == "x" ] - then + if [[ -z "$__GIT_STATUS_CMD" ]] ; then # if GIT_STATUS_CMD not defined.. git_prompt_dir - local sfx file - # look first for a '.sh' version, then use the python version - for sfx in sh py ; do - file="${__GIT_PROMPT_DIR}/gitstatus.$sfx" - if [[ -x "$file" ]]; then - __GIT_STATUS_CMD="$file" - break - fi - done + if ! gp_maybe_set_envar_to_path __GIT_STATUS_CMD "$__GIT_PROMPT_DIR/gitstatus.sh" "$__GIT_PROMPT_DIR/gitstatus.py" ; then + echo 1>&2 "Cannot find gitstatus.sh or gitstatus.py!" + fi fi } @@ -217,17 +201,6 @@ function checkUpstream() { } function updatePrompt() { - local GIT_PROMPT_PREFIX - local GIT_PROMPT_SUFFIX - local GIT_PROMPT_SEPARATOR - local GIT_PROMPT_BRANCH - local GIT_PROMPT_STAGED - local GIT_PROMPT_CONFLICTS - local GIT_PROMPT_CHANGED - local GIT_PROMPT_REMOTE - local GIT_PROMPT_UNTRACKED - local GIT_PROMPT_STASHED - local GIT_PROMPT_CLEAN local LAST_COMMAND_INDICATOR local PROMPT_LEADING_SPACE local PROMPT_START @@ -257,37 +230,43 @@ function updatePrompt() { if [[ -n "${GitStatus}" ]]; then local STATUS="${PROMPT_LEADING_SPACE}${GIT_PROMPT_PREFIX}${GIT_PROMPT_BRANCH}${GIT_BRANCH}${ResetColor}" - if [[ -n "${GIT_REMOTE}" ]]; then - STATUS="${STATUS}${GIT_PROMPT_REMOTE}${GIT_REMOTE}${ResetColor}" - fi - - STATUS="${STATUS}${GIT_PROMPT_SEPARATOR}" - if [ "${GIT_STAGED}" -ne "0" ]; then - STATUS="${STATUS}${GIT_PROMPT_STAGED}${GIT_STAGED}${ResetColor}" - fi - - if [ "${GIT_CONFLICTS}" -ne "0" ]; then - STATUS="${STATUS}${GIT_PROMPT_CONFLICTS}${GIT_CONFLICTS}${ResetColor}" - fi - - if [ "${GIT_CHANGED}" -ne "0" ]; then - STATUS="${STATUS}${GIT_PROMPT_CHANGED}${GIT_CHANGED}${ResetColor}" - fi - - if [ "${GIT_UNTRACKED}" -ne "0" ]; then - STATUS="${STATUS}${GIT_PROMPT_UNTRACKED}${GIT_UNTRACKED}${ResetColor}" - fi - - if [ "${GIT_STASHED}" -ne "0" ]; then - STATUS="${STATUS}${GIT_PROMPT_STASHED}${GIT_STASHED}${ResetColor}" - fi - - if [ "${GIT_CLEAN}" -eq "1" ]; then - STATUS="${STATUS}${GIT_PROMPT_CLEAN}" - fi - - STATUS="${STATUS}${ResetColor}${GIT_PROMPT_SUFFIX}" + # __add_status KIND VALEXPR INSERT + # eg: __add_status 'STAGED' '-ne 0' + __chk_gitvar_status() { + local v + if [[ "x$2" == "x-n" ]] ; then + v="$2 \"\${GIT_$1}\"" + else + v="\${GIT_$1} $2" + fi + if eval "test $v" ; then + if [[ $# -lt 2 || "$3" != '-' ]]; then + __add_status "\${GIT_PROMPT_$1}\${GIT_$1}\${ResetColor}" + else + __add_status "\${GIT_PROMPT_$1}\${ResetColor}" + fi + fi + } + + __add_gitvar_status() { + __add_status "\${GIT_PROMPT_$1}\${GIT_$1}\${ResetColor}" + } + + # __add_status SOMETEXT + __add_status() { + eval "STATUS=\"${STATUS}$1\"" + } + + __chk_gitvar_status 'REMOTE' '-n' + __add_status "$GIT_PROMPT_SEPARATOR" + __chk_gitvar_status 'STAGED' '-ne 0' + __chk_gitvar_status 'CONFLICTS' '-ne 0' + __chk_gitvar_status 'CHANGED' '-ne 0' + __chk_gitvar_status 'UNTRACKED' '-ne 0' + __chk_gitvar_status 'STASHED' '-ne 0' + __chk_gitvar_status 'CLEAN' '-eq 1' - + __add_status "${ResetColor}$GIT_PROMPT_SUFFIX" PS1="${LAST_COMMAND_INDICATOR}${PROMPT_START}$($prompt_callback)${STATUS}${PROMPT_END}" if [[ -n "${VIRTUAL_ENV}" ]]; then diff --git a/newfile.txt b/newfile.txt new file mode 100644 index 0000000..e69de29 diff --git a/prompt-colors.sh b/prompt-colors.sh new file mode 100644 index 0000000..9249a7e --- /dev/null +++ b/prompt-colors.sh @@ -0,0 +1,82 @@ +# prompt-colors.sh +# +# source this file to get color definitions +# if $debug or $verbose is set, the definitions +# are also printed to STDERR. + +define_color_names() { + + ColorNames=( Black Red Green Yellow Blue Magneta Cyan White ) + FgColors=( 30 31 32 33 34 35 36 37 ) + BgColors=( 40 41 42 43 44 45 46 47 ) + + local AttrNorm=0 + local AttrBright=1 + local AttrDim=2 + local AttrUnder=4 + local AttrBlink=5 + local AttrRev=7 + local AttrHide=8 + + # define "BoldCOLOR", "BrightCOLOR", and "DimCOLOR" names + + # _map_colors ATTRNAME ATTRVALUE + # + # Defines three names for every color, attribute combintaion: + # {ATTRNAME}{COLORNAME} + # {ATTRNAME}{COLORNAME}Fg + # {ATTRNAME}{COLORNAME}Bg + # + # Example: BoldRed, BoldRedFg, BoldRedBg + + _map_colors() { + local x=0 + local attrname="$1" + local attrcode=$2 + while (( x < 8 )) ; do + local colorname=${ColorNames[x]} + local fgcolorcode=${FgColors[x]} + local bgcolorcode=${BgColors[x]} + longcolorname="${attrname}${colorname}" + _def_color $longcolorname $attrcode $fgcolorcode + _def_color ${longcolorname}Fg $attrcode $fgcolorcode + _def_color ${longcolorname}Bg $attrcode $bgcolorcode + (( x++ )) + done + } + + # _term_color [ N | N M ] + _term_color() { + local cv + if (( $# > 1 )); then + cv="${1};${2}" + else + cv="${1}" + fi + echo "\[\033[${cv}m\]" + } + + # def_color NAME ATTRCODE COLORCODE + _def_color() { + local def="$1=\"\`_term_color $2 $3\`\"" + if [[ -n "$debug$verbose" ]]; then + echo 1>&2 "+ $def" + fi + eval "$def" + } + + #ResetColor="`_term_color 0`" # Text reset + + _map_colors Bold $AttrBright + _map_colors Bright $AttrBright + _map_colors Dim $AttrDim + _map_colors '' $AttrNorm + + _def_color IntenseBlack 0 90 + _def_color ResetColor 0 0 + +} +define_color_names + +# end of prompt-colors.sh +# vim: set ai sw=2