Parent directory

prompt_info_functions.zsh

1478 bytes
 1# *_prompt_info functions for usage in your prompt
 2#
 3# Plugin creators, please add your *_prompt_info function to the list
 4# of dummy implementations to help theme creators not receiving errors
 5# without the need of implementing conditional clauses.
 6#
 7# See also lib/bzr.zsh, lib/git.zsh and lib/nvm.zsh for
 8# git_prompt_info, bzr_prompt_info and nvm_prompt_info
 9
10# Dummy implementations that return false to prevent command_not_found
11# errors with themes, that implement these functions
12# Real implementations will be used when the respective plugins are loaded
13function chruby_prompt_info \
14  rbenv_prompt_info \
15  hg_prompt_info \
16  pyenv_prompt_info \
17  svn_prompt_info \
18  vi_mode_prompt_info \
19  virtualenv_prompt_info \
20  jenv_prompt_info \
21  azure_prompt_info \
22  tf_prompt_info \
23  conda_prompt_info \
24{
25  return 1
26}
27
28# oh-my-zsh supports an rvm prompt by default
29# get the name of the rvm ruby version
30function rvm_prompt_info() {
31  [ -f $HOME/.rvm/bin/rvm-prompt ] || return 1
32  local rvm_prompt
33  rvm_prompt=$($HOME/.rvm/bin/rvm-prompt ${=ZSH_THEME_RVM_PROMPT_OPTIONS} 2>/dev/null)
34  [[ -z "${rvm_prompt}" ]] && return 1
35  echo "${ZSH_THEME_RUBY_PROMPT_PREFIX}${rvm_prompt:gs/%/%%}${ZSH_THEME_RUBY_PROMPT_SUFFIX}"
36}
37
38ZSH_THEME_RVM_PROMPT_OPTIONS="i v g"
39
40
41# use this to enable users to see their ruby version, no matter which
42# version management system they use
43function ruby_prompt_info() {
44  echo "$(rvm_prompt_info || rbenv_prompt_info || chruby_prompt_info)"
45}