mirror of
https://github.com/dcarrillo/prezto.git
synced 2024-12-22 18:38:00 +00:00
1ff9421f7b
Zsh and Prezto files don't always reside in `~/`. Instead, they have a more spec compliant location (`${ZDOTDIR:-$HOME}/`). Make them unambiguous in the documentation. Likewise, for `$GNUPGHOME`. Further, add instruction for optionally setting up Prezto in `$XDG_CONFIG_HOME`. While at this, also add clarification on relative ordering of some of the modules, apply more formatting tweaks and doc improvements.
126 lines
3.2 KiB
Bash
126 lines
3.2 KiB
Bash
#
|
|
# A minimal two-color theme.
|
|
#
|
|
# Authors:
|
|
# Kevin Laude <nerfyoda@gmail.com>
|
|
#
|
|
# Features:
|
|
# - One line, left aligned.
|
|
# - The prompt is prefixed by a character sequence of your choice.
|
|
# - Only displays the current directory instead of the full path.
|
|
# - Displays the current branch when in a git project (this requires loading
|
|
# the git module before prompt in ${ZDOTDIR:-$HOME}/.zpreztorc).
|
|
# - Displays a character at the end of the prompt when in a git project with
|
|
# "dirty" files.
|
|
#
|
|
# Usage:
|
|
# This prompt's prefix symbol and colors are customizable:
|
|
# prompt cloud [<symbol>] [<color1>] [<color2>]
|
|
#
|
|
# In ${ZDOTDIR:-$HOME}/.zpreztorc:
|
|
# zstyle ':prezto:module:prompt' theme 'cloud' \
|
|
# ['<symbol>'] \
|
|
# ['<color1>'] \
|
|
# ['<color2>']
|
|
#
|
|
# If these options are not provided, the symbol defaults to "☁" with colors
|
|
# cyan and green.
|
|
#
|
|
# Screenshots:
|
|
# http://i.imgur.com/mJCZ8rE.png
|
|
#
|
|
# Note:
|
|
# This is a port of the oh-my-zsh cloud theme, originally written by Phillip
|
|
# Ridlen <p@rdln.net> and Mark Drago <markdrago@gmail.com>
|
|
#
|
|
|
|
# Load dependencies.
|
|
pmodload 'helper'
|
|
|
|
function prompt_cloud_precmd {
|
|
setopt LOCAL_OPTIONS
|
|
unsetopt XTRACE KSH_ARRAYS
|
|
|
|
# Get Git repository information.
|
|
if (( $+functions[git-info] )); then
|
|
git-info
|
|
fi
|
|
}
|
|
|
|
function prompt_cloud_help {
|
|
cat <<EOT
|
|
This prompt's prefix symbol and colors are customizable:
|
|
|
|
prompt cloud [<symbol>] [<color1>] [<color2>]
|
|
|
|
In ${ZDOTDIR:-$HOME}/.zpreztorc:
|
|
zstyle ':prezto:module:prompt' theme 'cloud' ['<symbol>'] ['<color1>'] ['<color2>']
|
|
|
|
If these options are not provided, the symbol defaults to ☁ with colors cyan
|
|
and green.
|
|
EOT
|
|
}
|
|
|
|
function prompt_cloud_preview {
|
|
if (( $# > 0 )); then
|
|
prompt_preview_theme 'cloud' "$@"
|
|
else
|
|
prompt_preview_theme 'cloud'
|
|
print
|
|
prompt_preview_theme 'cloud' "✯"
|
|
print
|
|
prompt_preview_theme 'cloud' ">" "yellow" "red"
|
|
fi
|
|
}
|
|
|
|
function prompt_cloud_setup {
|
|
setopt LOCAL_OPTIONS
|
|
unsetopt XTRACE KSH_ARRAYS
|
|
prompt_opts=(cr percent sp subst)
|
|
|
|
# Set the theme prefix to a cloud or to the user's given characters.
|
|
if [[ -n "$1" ]]; then
|
|
prefix="$1"
|
|
else
|
|
prefix='☁'
|
|
fi
|
|
|
|
# Assign colors.
|
|
if [[ -n "$2" ]]; then
|
|
primary_color="$2"
|
|
else
|
|
primary_color='cyan'
|
|
fi
|
|
|
|
if [[ -n "$3" ]]; then
|
|
secondary_color="$3"
|
|
else
|
|
secondary_color='green'
|
|
fi
|
|
|
|
# Load required functions.
|
|
autoload -Uz add-zsh-hook
|
|
|
|
# Add hook for calling git-info before each command.
|
|
add-zsh-hook precmd prompt_cloud_precmd
|
|
|
|
# Tell prezto we can manage this prompt
|
|
zstyle ':prezto:module:prompt' managed 'yes'
|
|
|
|
# Set git-info parameters.
|
|
zstyle ':prezto:module:git:info' verbose 'yes'
|
|
zstyle ':prezto:module:git:info:dirty' format "%%B%F{$secondary_color}]%f%%b %F{yellow}⚡%f"
|
|
zstyle ':prezto:module:git:info:clean' format "%B%F{$secondary_color}]%f%b"
|
|
zstyle ':prezto:module:git:info:branch' format "%%B%F{$secondary_color}[%f%%b%%B%F{$primary_color}%b%f%%b"
|
|
zstyle ':prezto:module:git:info:keys' format \
|
|
'prompt' '%b%C%D' \
|
|
'rprompt' ''
|
|
|
|
# Define prompts.
|
|
PROMPT='%B%F{$primary_color}${prefix}%f%b %B%F{$secondary_color}%c%f%b ${git_info:+${(e)git_info[prompt]}} '
|
|
RPROMPT=''
|
|
}
|
|
|
|
prompt_cloud_setup "$@"
|
|
# vim: ft=zsh
|