oh-my-fish/themes/edan/fish_prompt.fish
Amio f982470b1a Improve Edan theme design & function naming.
- Rename function "edan-remote" and "edan-local" to "edan-set-remote"
  and "edan-set-local".
- Exchange order of "user" & "host" ( xiloºXiloMac => XiloMacˇxilo )
- Change git dirty mark icon ( [edan-update] ★ => [edan-update]× )

Before:
![Screenshot of theme Edan](https://cloud.githubusercontent.com/assets/215282/5837282/b02c0e5c-a1b8-11e4-914f-f4f05e99880a.png)

After:
![Screenshot of theme Edan](https://cloud.githubusercontent.com/assets/215282/6199938/f67e6a54-b49a-11e4-800b-587a638cfb86.png)
2015-02-15 00:15:42 +08:00

71 lines
1.7 KiB
Fish
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# fish theme: edan
# Display the following bits on the left:
# * User & host (hidden by default, execute `edan-remote`to show, `edan-local` to hide)
# * Virtualenv name (if applicable, see https://github.com/adambrenecki/virtualfish)
# * Current directory name
# * Git branch and dirty state (if inside a git repo)
function _git_branch_name
echo (command git symbolic-ref HEAD ^/dev/null | sed -e 's|^refs/heads/||')
end
function _is_git_dirty
echo (command git status -s --ignore-submodules=dirty ^/dev/null)
end
function _user_host
if [ (id -u) = "0" ];
echo -n (set_color -o red)
else
echo -n (set_color -o blue)
end
echo -n (hostname|cut -d . -f 1)ˇ$USER (set color normal)
end
function fish_prompt
set fish_greeting
set -l cyan (set_color -o cyan)
set -l yellow (set_color -o yellow)
set -l red (set_color -o red)
set -l blue (set_color -o blue)
set -l green (set_color -o green)
set -l normal (set_color normal)
set -l cwd $cyan(basename (prompt_pwd))
# output the prompt, left to right
# Add a newline before prompts
echo -e ""
# Display [venvname] if in a virtualenv
if set -q VIRTUAL_ENV
echo -n -s (set_color -b cyan black) '[' (basename "$VIRTUAL_ENV") ']' $normal ' '
end
# Display [user & host] when on remote host
if [ "$EDAN_HOST_TYPE" = "remote" ]
_user_host; echo -n ': '
end
# Display the current directory name
echo -n -s $cwd $normal
# Show git branch and dirty state
if [ (_git_branch_name) ]
set -l git_branch '[' (_git_branch_name) ']'
if [ (_is_git_dirty) ]
set git_info $red $git_branch "×"
else
set git_info $green $git_branch
end
echo -n -s ' ' $git_info $normal
end
# Terminate with a nice prompt char
echo -n -s ' » ' $normal
end