Advertisement
Darksider3

Untitled

May 22nd, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.66 KB | None | 0 0
  1. function parse_git_branch() {
  2. BRANCH=`git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'`
  3. if [ ! "${BRANCH}" == "" ]
  4. then
  5. STAT=`parse_git_dirty`
  6. echo "[${BRANCH}${STAT}]"
  7. else
  8. echo ""
  9. fi
  10. }
  11.  
  12. # get current status of git repo
  13. function parse_git_dirty {
  14. status=`git status 2>&1 | tee`
  15. dirty=`echo -n "${status}" 2> /dev/null | grep "modified:" &> /dev/null; echo "$?"`
  16. untracked=`echo -n "${status}" 2> /dev/null | grep "Untracked files" &> /dev/null; echo "$?"`
  17. ahead=`echo -n "${status}" 2> /dev/null | grep "Your branch is ahead of" &> /dev/null; echo "$?"`
  18. newfile=`echo -n "${status}" 2> /dev/null | grep "new file:" &> /dev/null; echo "$?"`
  19. renamed=`echo -n "${status}" 2> /dev/null | grep "renamed:" &> /dev/null; echo "$?"`
  20. deleted=`echo -n "${status}" 2> /dev/null | grep "deleted:" &> /dev/null; echo "$?"`
  21. bits=''
  22. if [ "${renamed}" == "0" ]; then
  23. bits=">${bits}"
  24. fi
  25. if [ "${ahead}" == "0" ]; then
  26. bits="*${bits}"
  27. fi
  28. if [ "${newfile}" == "0" ]; then
  29. bits="+${bits}"
  30. fi
  31. if [ "${untracked}" == "0" ]; then
  32. bits="?${bits}"
  33. fi
  34. if [ "${deleted}" == "0" ]; then
  35. bits="x${bits}"
  36. fi
  37. if [ "${dirty}" == "0" ]; then
  38. bits="!${bits}"
  39. fi
  40. if [ ! "${bits}" == "" ]; then
  41. echo " ${bits}"
  42. else
  43. echo ""
  44. fi
  45. }
  46.  
  47. function nonzero_return() {
  48. if [ $? -eq 0 ]
  49. then
  50. printf "\xE2\x9C\x94"
  51. else
  52. printf "\xE2\x9D\x8C" $?
  53. fi
  54. }
  55.  
  56. export PS1="\d \A\[\e[35m\]\[\e[m\]\[\033[38;5;8m\] | \[\e[m\]\[\e[31m\]\u\[\e[m\]@\[\e[32m\]\h\[\e[m\] \[\e[34m\][\[\e[m\]\[\033[38;5;8m\]\`nonzero_return\`\[\e[34m\]]\[\e[m\] \w \[\033[38;5;22m\]\`parse_git_branch\`\[\e[37m\]:\[\e[m\]\n ↪ "
  57. export PS1="\033[G$PS1"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement