From 75c52548f6425ba802bcbdb80f9f9e69ea5cda84 Mon Sep 17 00:00:00 2001 From: andela-abankole Date: Fri, 3 Jul 2015 11:32:06 +0100 Subject: [PATCH 1/2] Added Chi zsh theme --- themes/chi.zsh-theme | 56 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 themes/chi.zsh-theme diff --git a/themes/chi.zsh-theme b/themes/chi.zsh-theme new file mode 100644 index 000000000..8e1951262 --- /dev/null +++ b/themes/chi.zsh-theme @@ -0,0 +1,56 @@ +# ----------------------------------------------------------------------------- +# FILE: chi.zsh-theme +# DESCRIPTION: oh-my-zsh theme file. +# AUTHOR: Akinjide Bankole +# TWITTER: (https://twitter.com/JideBhanks) +# GITHUB: (https://github.com/andela-abankole) +# VERSION: 0.1 +# SCREENSHOT: Available on Repo +# REPOSITORY: https://github.com/andela-abankole/chi +# ----------------------------------------------------------------------------- + +# ########## SYSTEM VARIABLE FOR HOME DIR ########### + +function get_pwd() { + echo "${PWD/#$HOME/~}" +} + +# ########## GIT STATUS AND BATTERY INFORMATION ########### + +function put_spacing() { + local git=$(git_prompt_info) + if [ ${#git} != 0 ]; then + ((git=${#git} - 10)) + else + git=0 + fi + + local termwidth + (( termwidth = ${COLUMNS} - 3 - ${#HOST} - ${#$(get_pwd)} - ${git} )) + + local spacing="" + for i in {1..$termwidth}; do + spacing="${spacing} " + done + echo $spacing +} + +# ########## GIT VARIABLES ########### + +function git_prompt_info() { + ref=$(git symbolic-ref HEAD 2> /dev/null) || return + echo "$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_PREFIX$(current_branch)$ZSH_THEME_GIT_PROMPT_SUFFIXS" +} + +# ########## PROMPT VARIABLE ########### + +PROMPT=' +%{$fg[green]%}$(get_pwd)%{$reset_color%} 🕕 %{$fg[green]%}%*%{$reset_color%}$(put_spacing)$(git_prompt_info) +> ' + +# ########## ZSH GIT THEME VARIABLES ########### + +ZSH_THEME_GIT_PROMPT_PREFIX="git:" +ZSH_THEME_GIT_PROMPT_SUFFIX="$reset_color" +ZSH_THEME_GIT_PROMPT_DIRTY="$fg[red]✹" +ZSH_THEME_GIT_PROMPT_CLEAN="$fg[white]" From a2e069c1a4ac81e32eefe1d9373606b54f2fc0e8 Mon Sep 17 00:00:00 2001 From: andela-abankole Date: Tue, 7 Jul 2015 07:13:09 +0100 Subject: [PATCH 2/2] update v2: a different icon displays if in a local git directory --- themes/chi.zsh-theme | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/themes/chi.zsh-theme b/themes/chi.zsh-theme index 8e1951262..7769d7d4d 100644 --- a/themes/chi.zsh-theme +++ b/themes/chi.zsh-theme @@ -42,15 +42,20 @@ function git_prompt_info() { echo "$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_PREFIX$(current_branch)$ZSH_THEME_GIT_PROMPT_SUFFIXS" } +function prompt_char { + git branch >/dev/null 2>/dev/null && echo '○' && return + echo '>' +} + # ########## PROMPT VARIABLE ########### PROMPT=' %{$fg[green]%}$(get_pwd)%{$reset_color%} 🕕 %{$fg[green]%}%*%{$reset_color%}$(put_spacing)$(git_prompt_info) -> ' +$(prompt_char) ' # ########## ZSH GIT THEME VARIABLES ########### ZSH_THEME_GIT_PROMPT_PREFIX="git:" ZSH_THEME_GIT_PROMPT_SUFFIX="$reset_color" ZSH_THEME_GIT_PROMPT_DIRTY="$fg[red]✹" -ZSH_THEME_GIT_PROMPT_CLEAN="$fg[white]" +ZSH_THEME_GIT_PROMPT_CLEAN="$fg[white]" \ No newline at end of file