From af120ab348f2e1a5a39dec035ed9dcf84189a64e Mon Sep 17 00:00:00 2001 From: Biswakalyan Bhuyan Date: Mon, 3 Oct 2022 21:42:20 +0530 Subject: dotfiles --- zsh/oh-my-zsh/themes/3den.zsh-theme | 7 + zsh/oh-my-zsh/themes/Soliah.zsh-theme | 85 +++++++ zsh/oh-my-zsh/themes/adben.zsh-theme | 118 ++++++++++ zsh/oh-my-zsh/themes/af-magic.zsh-theme | 46 ++++ zsh/oh-my-zsh/themes/afowler.zsh-theme | 10 + zsh/oh-my-zsh/themes/agnoster.zsh-theme | 258 +++++++++++++++++++++ zsh/oh-my-zsh/themes/alanpeabody.zsh-theme | 24 ++ zsh/oh-my-zsh/themes/amuse.zsh-theme | 18 ++ zsh/oh-my-zsh/themes/apple.zsh-theme | 24 ++ zsh/oh-my-zsh/themes/arrow.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/aussiegeek.zsh-theme | 8 + zsh/oh-my-zsh/themes/avit.zsh-theme | 85 +++++++ zsh/oh-my-zsh/themes/awesomepanda.zsh-theme | 16 ++ zsh/oh-my-zsh/themes/bira.zsh-theme | 32 +++ zsh/oh-my-zsh/themes/blinks.zsh-theme | 30 +++ zsh/oh-my-zsh/themes/bureau.zsh-theme | 126 ++++++++++ zsh/oh-my-zsh/themes/candy-kingdom.zsh-theme | 34 +++ zsh/oh-my-zsh/themes/candy.zsh-theme | 7 + zsh/oh-my-zsh/themes/clean.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/cloud.zsh-theme | 10 + zsh/oh-my-zsh/themes/crcandy.zsh-theme | 8 + zsh/oh-my-zsh/themes/crunch.zsh-theme | 39 ++++ zsh/oh-my-zsh/themes/cypher.zsh-theme | 4 + zsh/oh-my-zsh/themes/dallas.zsh-theme | 27 +++ zsh/oh-my-zsh/themes/darkblood.zsh-theme | 9 + zsh/oh-my-zsh/themes/daveverwer.zsh-theme | 7 + zsh/oh-my-zsh/themes/dieter.zsh-theme | 56 +++++ zsh/oh-my-zsh/themes/dogenpunk.zsh-theme | 77 ++++++ zsh/oh-my-zsh/themes/dpoggi.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/dst.zsh-theme | 16 ++ zsh/oh-my-zsh/themes/dstufft.zsh-theme | 19 ++ zsh/oh-my-zsh/themes/duellj.zsh-theme | 7 + zsh/oh-my-zsh/themes/eastwood.zsh-theme | 23 ++ zsh/oh-my-zsh/themes/edvardm.zsh-theme | 6 + zsh/oh-my-zsh/themes/emotty.zsh-theme | 113 +++++++++ zsh/oh-my-zsh/themes/essembeh.zsh-theme | 50 ++++ zsh/oh-my-zsh/themes/evan.zsh-theme | 2 + zsh/oh-my-zsh/themes/fino-time.zsh-theme | 37 +++ zsh/oh-my-zsh/themes/fino.zsh-theme | 47 ++++ zsh/oh-my-zsh/themes/fishy.zsh-theme | 35 +++ zsh/oh-my-zsh/themes/flazz.zsh-theme | 19 ++ zsh/oh-my-zsh/themes/fletcherm.zsh-theme | 12 + zsh/oh-my-zsh/themes/fox.zsh-theme | 9 + zsh/oh-my-zsh/themes/frisk.zsh-theme | 12 + zsh/oh-my-zsh/themes/frontcube.zsh-theme | 13 ++ zsh/oh-my-zsh/themes/funky.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/fwalch.zsh-theme | 6 + zsh/oh-my-zsh/themes/gallifrey.zsh-theme | 11 + zsh/oh-my-zsh/themes/gallois.zsh-theme | 24 ++ zsh/oh-my-zsh/themes/garyblessington.zsh-theme | 6 + zsh/oh-my-zsh/themes/gentoo.zsh-theme | 30 +++ zsh/oh-my-zsh/themes/geoffgarside.zsh-theme | 5 + zsh/oh-my-zsh/themes/gianu.zsh-theme | 6 + zsh/oh-my-zsh/themes/gnzh.zsh-theme | 43 ++++ zsh/oh-my-zsh/themes/gozilla.zsh-theme | 15 ++ zsh/oh-my-zsh/themes/half-life.zsh-theme | 93 ++++++++ zsh/oh-my-zsh/themes/humza.zsh-theme | 26 +++ zsh/oh-my-zsh/themes/imajes.zsh-theme | 5 + zsh/oh-my-zsh/themes/intheloop.zsh-theme | 23 ++ zsh/oh-my-zsh/themes/itchy.zsh-theme | 18 ++ zsh/oh-my-zsh/themes/jaischeema.zsh-theme | 12 + zsh/oh-my-zsh/themes/jbergantine.zsh-theme | 6 + zsh/oh-my-zsh/themes/jispwoso.zsh-theme | 10 + zsh/oh-my-zsh/themes/jnrowe.zsh-theme | 37 +++ zsh/oh-my-zsh/themes/jonathan.zsh-theme | 124 ++++++++++ zsh/oh-my-zsh/themes/josh.zsh-theme | 43 ++++ zsh/oh-my-zsh/themes/jreese.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/jtriley.zsh-theme | 2 + zsh/oh-my-zsh/themes/juanghurtado.zsh-theme | 41 ++++ zsh/oh-my-zsh/themes/junkfood.zsh-theme | 30 +++ zsh/oh-my-zsh/themes/kafeitu.zsh-theme | 6 + zsh/oh-my-zsh/themes/kardan.zsh-theme | 12 + zsh/oh-my-zsh/themes/kennethreitz.zsh-theme | 15 ++ zsh/oh-my-zsh/themes/kiwi.zsh-theme | 10 + zsh/oh-my-zsh/themes/kolo.zsh-theme | 24 ++ zsh/oh-my-zsh/themes/kphoen.zsh-theme | 43 ++++ zsh/oh-my-zsh/themes/lambda.zsh-theme | 4 + zsh/oh-my-zsh/themes/linuxonly.zsh-theme | 58 +++++ zsh/oh-my-zsh/themes/lukerandall.zsh-theme | 24 ++ zsh/oh-my-zsh/themes/macovsky-ruby.zsh-theme | 1 + zsh/oh-my-zsh/themes/macovsky.zsh-theme | 12 + zsh/oh-my-zsh/themes/maran.zsh-theme | 6 + zsh/oh-my-zsh/themes/mgutz.zsh-theme | 6 + zsh/oh-my-zsh/themes/mh.zsh-theme | 24 ++ zsh/oh-my-zsh/themes/michelebologna.zsh-theme | 79 +++++++ zsh/oh-my-zsh/themes/mikeh.zsh-theme | 21 ++ zsh/oh-my-zsh/themes/miloshadzic.zsh-theme | 8 + zsh/oh-my-zsh/themes/minimal.zsh-theme | 26 +++ zsh/oh-my-zsh/themes/mira.zsh-theme | 23 ++ zsh/oh-my-zsh/themes/mlh.zsh-theme | 97 ++++++++ zsh/oh-my-zsh/themes/mortalscumbag.zsh-theme | 65 ++++++ zsh/oh-my-zsh/themes/mrtazz.zsh-theme | 7 + zsh/oh-my-zsh/themes/murilasso.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/muse.zsh-theme | 16 ++ zsh/oh-my-zsh/themes/nanotech.zsh-theme | 7 + zsh/oh-my-zsh/themes/nebirhos.zsh-theme | 21 ++ zsh/oh-my-zsh/themes/nicoulaj.zsh-theme | 43 ++++ zsh/oh-my-zsh/themes/norm.zsh-theme | 7 + zsh/oh-my-zsh/themes/obraun.zsh-theme | 10 + zsh/oh-my-zsh/themes/peepcode.zsh-theme | 47 ++++ zsh/oh-my-zsh/themes/philips.zsh-theme | 14 ++ zsh/oh-my-zsh/themes/pmcgee.zsh-theme | 16 ++ .../themes/pygmalion-virtualenv.zsh-theme | 54 +++++ zsh/oh-my-zsh/themes/pygmalion.zsh-theme | 32 +++ zsh/oh-my-zsh/themes/random.zsh-theme | 47 ++++ zsh/oh-my-zsh/themes/re5et.zsh-theme | 15 ++ zsh/oh-my-zsh/themes/refined.zsh-theme | 108 +++++++++ zsh/oh-my-zsh/themes/rgm.zsh-theme | 8 + zsh/oh-my-zsh/themes/risto.zsh-theme | 6 + zsh/oh-my-zsh/themes/rixius.zsh-theme | 21 ++ zsh/oh-my-zsh/themes/rkj-repos.zsh-theme | 35 +++ zsh/oh-my-zsh/themes/rkj.zsh-theme | 9 + zsh/oh-my-zsh/themes/robbyrussell.zsh-theme | 7 + zsh/oh-my-zsh/themes/sammy.zsh-theme | 6 + zsh/oh-my-zsh/themes/simonoff.zsh-theme | 99 ++++++++ zsh/oh-my-zsh/themes/simple.zsh-theme | 6 + zsh/oh-my-zsh/themes/skaro.zsh-theme | 7 + zsh/oh-my-zsh/themes/smt.zsh-theme | 83 +++++++ zsh/oh-my-zsh/themes/sonicradish.zsh-theme | 37 +++ zsh/oh-my-zsh/themes/sorin.zsh-theme | 42 ++++ zsh/oh-my-zsh/themes/sporty_256.zsh-theme | 13 ++ zsh/oh-my-zsh/themes/steeef.zsh-theme | 103 ++++++++ zsh/oh-my-zsh/themes/strug.zsh-theme | 25 ++ zsh/oh-my-zsh/themes/sunaku.zsh-theme | 25 ++ zsh/oh-my-zsh/themes/sunrise.zsh-theme | 93 ++++++++ zsh/oh-my-zsh/themes/superjarin.zsh-theme | 18 ++ zsh/oh-my-zsh/themes/suvash.zsh-theme | 21 ++ zsh/oh-my-zsh/themes/takashiyoshida.zsh-theme | 27 +++ zsh/oh-my-zsh/themes/terminalparty.zsh-theme | 8 + zsh/oh-my-zsh/themes/theunraveler.zsh-theme | 16 ++ zsh/oh-my-zsh/themes/tjkirch.zsh-theme | 15 ++ zsh/oh-my-zsh/themes/tjkirch_mod.zsh-theme | 13 ++ zsh/oh-my-zsh/themes/tonotdo.zsh-theme | 12 + zsh/oh-my-zsh/themes/trapd00r.zsh-theme | 132 +++++++++++ zsh/oh-my-zsh/themes/wedisagree.zsh-theme | 109 +++++++++ zsh/oh-my-zsh/themes/wezm+.zsh-theme | 7 + zsh/oh-my-zsh/themes/wezm.zsh-theme | 7 + zsh/oh-my-zsh/themes/wuffers.zsh-theme | 5 + zsh/oh-my-zsh/themes/xiong-chiamiov-plus.zsh-theme | 6 + zsh/oh-my-zsh/themes/xiong-chiamiov.zsh-theme | 6 + zsh/oh-my-zsh/themes/ys.zsh-theme | 80 +++++++ zsh/oh-my-zsh/themes/zhann.zsh-theme | 25 ++ 142 files changed, 4425 insertions(+) create mode 100644 zsh/oh-my-zsh/themes/3den.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/Soliah.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/adben.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/af-magic.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/afowler.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/agnoster.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/alanpeabody.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/amuse.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/apple.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/arrow.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/aussiegeek.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/avit.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/awesomepanda.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/bira.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/blinks.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/bureau.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/candy-kingdom.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/candy.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/clean.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/cloud.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/crcandy.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/crunch.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/cypher.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/dallas.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/darkblood.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/daveverwer.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/dieter.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/dogenpunk.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/dpoggi.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/dst.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/dstufft.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/duellj.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/eastwood.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/edvardm.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/emotty.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/essembeh.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/evan.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/fino-time.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/fino.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/fishy.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/flazz.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/fletcherm.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/fox.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/frisk.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/frontcube.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/funky.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/fwalch.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/gallifrey.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/gallois.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/garyblessington.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/gentoo.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/geoffgarside.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/gianu.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/gnzh.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/gozilla.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/half-life.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/humza.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/imajes.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/intheloop.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/itchy.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jaischeema.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jbergantine.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jispwoso.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jnrowe.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jonathan.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/josh.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jreese.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/jtriley.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/juanghurtado.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/junkfood.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/kafeitu.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/kardan.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/kennethreitz.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/kiwi.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/kolo.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/kphoen.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/lambda.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/linuxonly.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/lukerandall.zsh-theme create mode 120000 zsh/oh-my-zsh/themes/macovsky-ruby.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/macovsky.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/maran.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mgutz.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mh.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/michelebologna.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mikeh.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/miloshadzic.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/minimal.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mira.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mlh.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mortalscumbag.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/mrtazz.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/murilasso.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/muse.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/nanotech.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/nebirhos.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/nicoulaj.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/norm.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/obraun.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/peepcode.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/philips.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/pmcgee.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/pygmalion-virtualenv.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/pygmalion.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/random.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/re5et.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/refined.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/rgm.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/risto.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/rixius.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/rkj-repos.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/rkj.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/robbyrussell.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/sammy.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/simonoff.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/simple.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/skaro.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/smt.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/sonicradish.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/sorin.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/sporty_256.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/steeef.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/strug.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/sunaku.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/sunrise.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/superjarin.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/suvash.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/takashiyoshida.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/terminalparty.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/theunraveler.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/tjkirch.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/tjkirch_mod.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/tonotdo.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/trapd00r.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/wedisagree.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/wezm+.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/wezm.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/wuffers.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/xiong-chiamiov-plus.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/xiong-chiamiov.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/ys.zsh-theme create mode 100644 zsh/oh-my-zsh/themes/zhann.zsh-theme (limited to 'zsh/oh-my-zsh/themes') diff --git a/zsh/oh-my-zsh/themes/3den.zsh-theme b/zsh/oh-my-zsh/themes/3den.zsh-theme new file mode 100644 index 0000000..ae3a886 --- /dev/null +++ b/zsh/oh-my-zsh/themes/3den.zsh-theme @@ -0,0 +1,7 @@ +PROMPT=$'%{$fg[white]%}$(ruby_prompt_info) %{$fg_bold[cyan]%}%~%{$reset_color%}$(git_prompt_info) %{$fg[cyan]%}%D{[%I:%M:%S]}\ +%{$fg_bold[green]%}%n$%{$reset_color%} ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[white]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="*" +ZSH_THEME_GIT_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/Soliah.zsh-theme b/zsh/oh-my-zsh/themes/Soliah.zsh-theme new file mode 100644 index 0000000..c3dd6af --- /dev/null +++ b/zsh/oh-my-zsh/themes/Soliah.zsh-theme @@ -0,0 +1,85 @@ +PROMPT='%{$fg[blue]%}%n%{$reset_color%} on %{$fg[red]%}%M%{$reset_color%} in %{$fg[blue]%}%~%b%{$reset_color%}$(git_time_since_commit)$(check_git_prompt_info) +$ ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[white]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%})" + +# Text to display if the branch is dirty +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$reset_color%}" + +# Text to display if the branch is clean +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# Colors vary depending on time lapsed. +ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" +ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM="%{$fg[yellow]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG="%{$fg[red]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[cyan]%}" + + +# Git sometimes goes into a detached head state. git_prompt_info doesn't +# return anything in this case. So wrap it in another function and check +# for an empty string. +function check_git_prompt_info() { + if git rev-parse --git-dir > /dev/null 2>&1; then + if [[ -z $(git_prompt_info) ]]; then + echo "%{$fg[magenta]%}detached-head%{$reset_color%})" + else + echo "$(git_prompt_info)" + fi + fi +} + +# Determine if we are using a gemset. +function rvm_gemset() { + if hash rvm 2>/dev/null; then + GEMSET=`rvm gemset list | grep '=>' | cut -b4-` + if [[ -n $GEMSET ]]; then + echo "%{$fg[yellow]%}$GEMSET%{$reset_color%}|" + fi + fi +} + +# Determine the time since last commit. If branch is clean, +# use a neutral color, otherwise colors will vary according to time. +function git_time_since_commit() { + if git rev-parse --git-dir > /dev/null 2>&1; then + # Only proceed if there is actually a commit. + if last_commit=`git -c log.showSignature=false log --pretty=format:'%at' -1 2> /dev/null`; then + now=`date +%s` + seconds_since_last_commit=$((now-last_commit)) + + # Totals + MINUTES=$((seconds_since_last_commit / 60)) + HOURS=$((seconds_since_last_commit/3600)) + + # Sub-hours and sub-minutes + DAYS=$((seconds_since_last_commit / 86400)) + SUB_HOURS=$((HOURS % 24)) + SUB_MINUTES=$((MINUTES % 60)) + + if [[ -n $(git status -s 2> /dev/null) ]]; then + if [ "$MINUTES" -gt 30 ]; then + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG" + elif [ "$MINUTES" -gt 10 ]; then + COLOR="$ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM" + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT" + fi + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + fi + + if [ "$HOURS" -gt 24 ]; then + echo "($(rvm_gemset)$COLOR${DAYS}d${SUB_HOURS}h${SUB_MINUTES}m%{$reset_color%}|" + elif [ "$MINUTES" -gt 60 ]; then + echo "($(rvm_gemset)$COLOR${HOURS}h${SUB_MINUTES}m%{$reset_color%}|" + else + echo "($(rvm_gemset)$COLOR${MINUTES}m%{$reset_color%}|" + fi + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + echo "($(rvm_gemset)$COLOR~|" + fi + fi +} diff --git a/zsh/oh-my-zsh/themes/adben.zsh-theme b/zsh/oh-my-zsh/themes/adben.zsh-theme new file mode 100644 index 0000000..c2fdbed --- /dev/null +++ b/zsh/oh-my-zsh/themes/adben.zsh-theme @@ -0,0 +1,118 @@ +#!/usr/bin/env zsh +# # +# # #README +# # +# # This theme provides two customizable header functionalities: +# # a) displaying a pseudo-random message from a database of quotations +# # (https://en.wikipedia.org/wiki/Fortune_%28Unix%29) +# # b) displaying randomly command line tips from The command line fu +# # (https://www.commandlinefu.com) community: in order to make use of this functionality +# # you will need Internet connection. +# # This theme provides as well information for the current user's context, like; +# # branch and status for the current version control system (git and svn currently +# # supported) and time, presented to the user in a non invasive volatile way. +# # +# # #REQUIREMENTS +# # This theme requires wget:: +# # -Homebrew-osx- brew install wget +# # -Debian/Ubuntu- apt-get install wget +# # and fortune :: +# # -Homebrew-osx- brew install fortune +# # -Debian/Ubuntu- apt-get install fortune +# # +# # optionally: +# # -Oh-myzsh vcs plug-ins git and svn. +# # -Solarized theme (https://github.com/altercation/solarized/) +# # -OS X: iTerm 2 (https://iterm2.com/) +# # -font Source code pro (https://github.com/adobe/source-code-pro) +# # +# # This theme's look and feel is based on the Aaron Toponce's zsh theme, more info: +# # https://pthree.org/2008/11/23/727/ +# # enjoy! + +########## COLOR ########### +for COLOR in CYAN WHITE YELLOW MAGENTA BLACK BLUE RED DEFAULT GREEN GREY; do + typeset -g PR_$COLOR="%b%{$fg[${(L)COLOR}]%}" + typeset -g PR_BRIGHT_$COLOR="%B%{$fg[${(L)COLOR}]%}" +done +PR_RESET="%{$reset_color%}" + +RED_START="${PR_GREY}<${PR_RED}<${PR_BRIGHT_RED}<${PR_RESET} " +RED_END="${PR_BRIGHT_RED}>${PR_RED}>${PR_GREY}>${PR_RESET} " +GREEN_START="${PR_GREY}>${PR_GREEN}>${PR_BRIGHT_GREEN}>${PR_RESET}" +GREEN_END="${PR_BRIGHT_GREEN}>${PR_GREEN}>${PR_GREY}>${PR_RESET} " + +########## VCS ########### +VCS_DIRTY_COLOR="${PR_YELLOW}" +VCS_CLEAN_COLOR="${PR_GREEN}" +VCS_SUFFIX_COLOR="${PR_RED}› ${PR_RESET}" + +########## SVN ########### +ZSH_THEME_SVN_PROMPT_PREFIX="${PR_RED}‹svn:" +ZSH_THEME_SVN_PROMPT_SUFFIX="${VCS_SUFFIX_COLOR}" +ZSH_THEME_SVN_PROMPT_DIRTY="${VCS_DIRTY_COLOR} ✘" +ZSH_THEME_SVN_PROMPT_CLEAN="${VCS_CLEAN_COLOR} ✔" + +########## GIT ########### +ZSH_THEME_GIT_PROMPT_PREFIX="${PR_RED}‹git:" +ZSH_THEME_GIT_PROMPT_SUFFIX="${VCS_SUFFIX_COLOR}" +ZSH_THEME_GIT_PROMPT_DIRTY="${VCS_DIRTY_COLOR} ✘" +ZSH_THEME_GIT_PROMPT_CLEAN="${VCS_CLEAN_COLOR} ✔" +ZSH_THEME_GIT_PROMPT_ADDED="${PR_YELLOW} ✚" +ZSH_THEME_GIT_PROMPT_MODIFIED="${PR_YELLOW} ✹" +ZSH_THEME_GIT_PROMPT_DELETED="${PR_YELLOW} ✖" +ZSH_THEME_GIT_PROMPT_RENAMED="${PR_YELLOW} ➜" +ZSH_THEME_GIT_PROMPT_UNMERGED="${PR_YELLOW} ═" +ZSH_THEME_GIT_PROMPT_UNTRACKED="${PR_YELLOW} ✭" + +# Get a fortune quote +ps1_fortune() { + if (( ${+commands[fortune]} )); then + fortune + fi +} + +# Obtain a command tip +ps1_command_tip() { + { + if (( ${+commands[wget]} )); then + command wget -qO- https://www.commandlinefu.com/commands/random/plaintext + elif (( ${+commands[curl]} )); then + command curl -fsL https://www.commandlinefu.com/commands/random/plaintext + fi + } | sed '1d;/^$/d' +} + +# Show prompt header (fortune / command tip) +prompt_header() { + local header=$( + case "${ENABLE_COMMAND_TIP:-}" in + true) ps1_command_tip ;; + *) ps1_fortune ;; + esac + ) + + # Make sure to quote % so that they're not expanded by the prompt + echo -n "${header:gs/%/%%}" +} + +# Context: user@directory or just directory +prompt_context() { + if [[ "$USERNAME" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then + echo -n "${PR_RESET}${PR_RED}%n@%m" + fi +} + +########## SETUP ########### + +# Required for the prompt +setopt prompt_subst + +# Prompt: header, context (user@host), directory +PROMPT="${RED_START}${PR_YELLOW}\$(prompt_header)${PR_RESET} +${RED_START}\$(prompt_context)${PR_BRIGHT_YELLOW}%~${PR_RESET} +${GREEN_START} " +# Right prompt: vcs status + time +RPROMPT="\$(git_prompt_info)\$(svn_prompt_info)${PR_YELLOW}%D{%R.%S %a %b %d %Y} ${GREEN_END}" +# Matching continuation prompt +PROMPT2="${GREEN_START} %_ ${GREEN_START} " diff --git a/zsh/oh-my-zsh/themes/af-magic.zsh-theme b/zsh/oh-my-zsh/themes/af-magic.zsh-theme new file mode 100644 index 0000000..2ef9b02 --- /dev/null +++ b/zsh/oh-my-zsh/themes/af-magic.zsh-theme @@ -0,0 +1,46 @@ +# af-magic.zsh-theme +# +# Author: Andy Fleming +# URL: http://andyfleming.com/ + +# dashed separator size +function afmagic_dashes { + # check either virtualenv or condaenv variables + local python_env="${VIRTUAL_ENV:-$CONDA_DEFAULT_ENV}" + + # if there is a python virtual environment and it is displayed in + # the prompt, account for it when returning the number of dashes + if [[ -n "$python_env" && "$PS1" = \(* ]]; then + echo $(( COLUMNS - ${#python_env} - 3 )) + else + echo $COLUMNS + fi +} + +# primary prompt: dashed separator, directory and vcs info +PS1="${FG[237]}\${(l.\$(afmagic_dashes)..-.)}%{$reset_color%} +${FG[032]}%~\$(git_prompt_info)\$(hg_prompt_info) ${FG[105]}%(!.#.»)%{$reset_color%} " +PS2="%{$fg[red]%}\ %{$reset_color%}" + +# right prompt: return code, virtualenv and context (user@host) +RPS1="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" +if (( $+functions[virtualenv_prompt_info] )); then + RPS1+='$(virtualenv_prompt_info)' +fi +RPS1+=" ${FG[237]}%n@%m%{$reset_color%}" + +# git settings +ZSH_THEME_GIT_PROMPT_PREFIX=" ${FG[075]}(${FG[078]}" +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="${FG[214]}*%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="${FG[075]})%{$reset_color%}" + +# hg settings +ZSH_THEME_HG_PROMPT_PREFIX=" ${FG[075]}(${FG[078]}" +ZSH_THEME_HG_PROMPT_CLEAN="" +ZSH_THEME_HG_PROMPT_DIRTY="${FG[214]}*%{$reset_color%}" +ZSH_THEME_HG_PROMPT_SUFFIX="${FG[075]})%{$reset_color%}" + +# virtualenv settings +ZSH_THEME_VIRTUALENV_PREFIX=" ${FG[075]}[" +ZSH_THEME_VIRTUALENV_SUFFIX="]%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/afowler.zsh-theme b/zsh/oh-my-zsh/themes/afowler.zsh-theme new file mode 100644 index 0000000..f6d3ef8 --- /dev/null +++ b/zsh/oh-my-zsh/themes/afowler.zsh-theme @@ -0,0 +1,10 @@ +PROMPT='%m %B%F{blue}:: %b%F{green}%3~ $(hg_prompt_info)$(git_prompt_info)%B%(!.%F{red}.%F{blue})»%f%b ' +RPS1='%(?..%F{red}%? ↵%f)' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" + +ZSH_THEME_HG_PROMPT_PREFIX="%{$fg[magenta]%}hg:‹%{$fg[yellow]%}" +ZSH_THEME_HG_PROMPT_SUFFIX="%{$fg[magenta]%}› %{$reset_color%}" +ZSH_THEME_HG_PROMPT_DIRTY=" %{$fg[red]%}✗" +ZSH_THEME_HG_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/agnoster.zsh-theme b/zsh/oh-my-zsh/themes/agnoster.zsh-theme new file mode 100644 index 0000000..5f4efe8 --- /dev/null +++ b/zsh/oh-my-zsh/themes/agnoster.zsh-theme @@ -0,0 +1,258 @@ +# vim:ft=zsh ts=2 sw=2 sts=2 +# +# agnoster's Theme - https://gist.github.com/3712874 +# A Powerline-inspired theme for ZSH +# +# # README +# +# In order for this theme to render correctly, you will need a +# [Powerline-patched font](https://github.com/Lokaltog/powerline-fonts). +# Make sure you have a recent version: the code points that Powerline +# uses changed in 2012, and older versions will display incorrectly, +# in confusing ways. +# +# In addition, I recommend the +# [Solarized theme](https://github.com/altercation/solarized/) and, if you're +# using it on Mac OS X, [iTerm 2](https://iterm2.com/) over Terminal.app - +# it has significantly better color fidelity. +# +# If using with "light" variant of the Solarized color schema, set +# SOLARIZED_THEME variable to "light". If you don't specify, we'll assume +# you're using the "dark" variant. +# +# # Goals +# +# The aim of this theme is to only show you *relevant* information. Like most +# prompts, it will only show git information when in a git working directory. +# However, it goes a step further: everything from the current user and +# hostname to whether the last call exited with an error to whether background +# jobs are running in this shell will all be displayed automatically when +# appropriate. + +### Segment drawing +# A few utility functions to make it easy and re-usable to draw segmented prompts + +CURRENT_BG='NONE' + +case ${SOLARIZED_THEME:-dark} in + light) CURRENT_FG='white';; + *) CURRENT_FG='black';; +esac + +# Special Powerline characters + +() { + local LC_ALL="" LC_CTYPE="en_US.UTF-8" + # NOTE: This segment separator character is correct. In 2012, Powerline changed + # the code points they use for their special characters. This is the new code point. + # If this is not working for you, you probably have an old version of the + # Powerline-patched fonts installed. Download and install the new version. + # Do not submit PRs to change this unless you have reviewed the Powerline code point + # history and have new information. + # This is defined using a Unicode escape sequence so it is unambiguously readable, regardless of + # what font the user is viewing this source code in. Do not replace the + # escape sequence with a single literal character. + # Do not change this! Do not make it '\u2b80'; that is the old, wrong code point. + SEGMENT_SEPARATOR=$'\ue0b0' +} + +# Begin a segment +# Takes two arguments, background and foreground. Both can be omitted, +# rendering default background/foreground. +prompt_segment() { + local bg fg + [[ -n $1 ]] && bg="%K{$1}" || bg="%k" + [[ -n $2 ]] && fg="%F{$2}" || fg="%f" + if [[ $CURRENT_BG != 'NONE' && $1 != $CURRENT_BG ]]; then + echo -n " %{$bg%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR%{$fg%} " + else + echo -n "%{$bg%}%{$fg%} " + fi + CURRENT_BG=$1 + [[ -n $3 ]] && echo -n $3 +} + +# End the prompt, closing any open segments +prompt_end() { + if [[ -n $CURRENT_BG ]]; then + echo -n " %{%k%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR" + else + echo -n "%{%k%}" + fi + echo -n "%{%f%}" + CURRENT_BG='' +} + +### Prompt components +# Each component will draw itself, and hide itself if no information needs to be shown + +# Context: user@hostname (who am I and where am I) +prompt_context() { + if [[ "$USERNAME" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then + prompt_segment black default "%(!.%{%F{yellow}%}.)%n@%m" + fi +} + +# Git: branch/detached head, dirty status +prompt_git() { + (( $+commands[git] )) || return + if [[ "$(git config --get oh-my-zsh.hide-status 2>/dev/null)" = 1 ]]; then + return + fi + local PL_BRANCH_CHAR + () { + local LC_ALL="" LC_CTYPE="en_US.UTF-8" + PL_BRANCH_CHAR=$'\ue0a0' #  + } + local ref dirty mode repo_path + + if [[ "$(git rev-parse --is-inside-work-tree 2>/dev/null)" = "true" ]]; then + repo_path=$(git rev-parse --git-dir 2>/dev/null) + dirty=$(parse_git_dirty) + ref=$(git symbolic-ref HEAD 2> /dev/null) || ref="➦ $(git rev-parse --short HEAD 2> /dev/null)" + if [[ -n $dirty ]]; then + prompt_segment yellow black + else + prompt_segment green $CURRENT_FG + fi + + if [[ -e "${repo_path}/BISECT_LOG" ]]; then + mode=" " + elif [[ -e "${repo_path}/MERGE_HEAD" ]]; then + mode=" >M<" + elif [[ -e "${repo_path}/rebase" || -e "${repo_path}/rebase-apply" || -e "${repo_path}/rebase-merge" || -e "${repo_path}/../.dotest" ]]; then + mode=" >R>" + fi + + setopt promptsubst + autoload -Uz vcs_info + + zstyle ':vcs_info:*' enable git + zstyle ':vcs_info:*' get-revision true + zstyle ':vcs_info:*' check-for-changes true + zstyle ':vcs_info:*' stagedstr '✚' + zstyle ':vcs_info:*' unstagedstr '±' + zstyle ':vcs_info:*' formats ' %u%c' + zstyle ':vcs_info:*' actionformats ' %u%c' + vcs_info + echo -n "${${ref:gs/%/%%}/refs\/heads\//$PL_BRANCH_CHAR }${vcs_info_msg_0_%% }${mode}" + fi +} + +prompt_bzr() { + (( $+commands[bzr] )) || return + + # Test if bzr repository in directory hierarchy + local dir="$PWD" + while [[ ! -d "$dir/.bzr" ]]; do + [[ "$dir" = "/" ]] && return + dir="${dir:h}" + done + + local bzr_status status_mod status_all revision + if bzr_status=$(bzr status 2>&1); then + status_mod=$(echo -n "$bzr_status" | head -n1 | grep "modified" | wc -m) + status_all=$(echo -n "$bzr_status" | head -n1 | wc -m) + revision=${$(bzr log -r-1 --log-format line | cut -d: -f1):gs/%/%%} + if [[ $status_mod -gt 0 ]] ; then + prompt_segment yellow black "bzr@$revision ✚" + else + if [[ $status_all -gt 0 ]] ; then + prompt_segment yellow black "bzr@$revision" + else + prompt_segment green black "bzr@$revision" + fi + fi + fi +} + +prompt_hg() { + (( $+commands[hg] )) || return + local rev st branch + if $(hg id >/dev/null 2>&1); then + if $(hg prompt >/dev/null 2>&1); then + if [[ $(hg prompt "{status|unknown}") = "?" ]]; then + # if files are not added + prompt_segment red white + st='±' + elif [[ -n $(hg prompt "{status|modified}") ]]; then + # if any modification + prompt_segment yellow black + st='±' + else + # if working copy is clean + prompt_segment green $CURRENT_FG + fi + echo -n ${$(hg prompt "☿ {rev}@{branch}"):gs/%/%%} $st + else + st="" + rev=$(hg id -n 2>/dev/null | sed 's/[^-0-9]//g') + branch=$(hg id -b 2>/dev/null) + if `hg st | grep -q "^\?"`; then + prompt_segment red black + st='±' + elif `hg st | grep -q "^[MA]"`; then + prompt_segment yellow black + st='±' + else + prompt_segment green $CURRENT_FG + fi + echo -n "☿ ${rev:gs/%/%%}@${branch:gs/%/%%}" $st + fi + fi +} + +# Dir: current working directory +prompt_dir() { + prompt_segment blue $CURRENT_FG '%~' +} + +# Virtualenv: current working virtualenv +prompt_virtualenv() { + if [[ -n "$VIRTUAL_ENV" && -n "$VIRTUAL_ENV_DISABLE_PROMPT" ]]; then + prompt_segment blue black "(${VIRTUAL_ENV:t:gs/%/%%})" + fi +} + +# Status: +# - was there an error +# - am I root +# - are there background jobs? +prompt_status() { + local -a symbols + + [[ $RETVAL -ne 0 ]] && symbols+="%{%F{red}%}✘" + [[ $UID -eq 0 ]] && symbols+="%{%F{yellow}%}⚡" + [[ $(jobs -l | wc -l) -gt 0 ]] && symbols+="%{%F{cyan}%}⚙" + + [[ -n "$symbols" ]] && prompt_segment black default "$symbols" +} + +#AWS Profile: +# - display current AWS_PROFILE name +# - displays yellow on red if profile name contains 'production' or +# ends in '-prod' +# - displays black on green otherwise +prompt_aws() { + [[ -z "$AWS_PROFILE" || "$SHOW_AWS_PROMPT" = false ]] && return + case "$AWS_PROFILE" in + *-prod|*production*) prompt_segment red yellow "AWS: ${AWS_PROFILE:gs/%/%%}" ;; + *) prompt_segment green black "AWS: ${AWS_PROFILE:gs/%/%%}" ;; + esac +} + +## Main prompt +build_prompt() { + RETVAL=$? + prompt_status + prompt_virtualenv + prompt_aws + prompt_context + prompt_dir + prompt_git + prompt_bzr + prompt_hg + prompt_end +} + +PROMPT='%{%f%b%k%}$(build_prompt) ' diff --git a/zsh/oh-my-zsh/themes/alanpeabody.zsh-theme b/zsh/oh-my-zsh/themes/alanpeabody.zsh-theme new file mode 100644 index 0000000..1de90e5 --- /dev/null +++ b/zsh/oh-my-zsh/themes/alanpeabody.zsh-theme @@ -0,0 +1,24 @@ + +local user='%{$fg[magenta]%}%n@%{$fg[magenta]%}%m%{$reset_color%}' +local pwd='%{$fg[blue]%}%~%{$reset_color%}' +local return_code='%(?..%{$fg[red]%}%? ↵%{$reset_color%})' +local git_branch='$(git_prompt_status)%{$reset_color%}$(git_prompt_info)%{$reset_color%}' + +ZSH_THEME_RVM_PROMPT_OPTIONS="i v g" +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[green]%}‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="›%{$reset_color%}" + +PROMPT="${user} ${pwd}$ " +RPROMPT="${return_code} ${git_branch} \$(ruby_prompt_info)" diff --git a/zsh/oh-my-zsh/themes/amuse.zsh-theme b/zsh/oh-my-zsh/themes/amuse.zsh-theme new file mode 100644 index 0000000..3f7ec0b --- /dev/null +++ b/zsh/oh-my-zsh/themes/amuse.zsh-theme @@ -0,0 +1,18 @@ +# vim:ft=zsh ts=2 sw=2 sts=2 + +# Must use Powerline font, for \uE0A0 to render. +ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}\uE0A0 " +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}!" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg_bold[red]%}‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="›%{$reset_color%}" + +PROMPT=' +%{$fg_bold[green]%}%~%{$reset_color%}$(git_prompt_info) ⌚ %{$fg_bold[red]%}%*%{$reset_color%} +$ ' + +RPROMPT='$(ruby_prompt_info)' + diff --git a/zsh/oh-my-zsh/themes/apple.zsh-theme b/zsh/oh-my-zsh/themes/apple.zsh-theme new file mode 100644 index 0000000..0c18325 --- /dev/null +++ b/zsh/oh-my-zsh/themes/apple.zsh-theme @@ -0,0 +1,24 @@ +function toon { + echo -n "" +} + +autoload -Uz vcs_info +zstyle ':vcs_info:*' check-for-changes true +zstyle ':vcs_info:*' unstagedstr '%F{red}*' # display this when there are unstaged changes +zstyle ':vcs_info:*' stagedstr '%F{yellow}+' # display this when there are staged changes +zstyle ':vcs_info:*' actionformats '%F{5}[%F{2}%b%F{3}|%F{1}%a%c%u%F{5}]%f ' +zstyle ':vcs_info:*' formats '%F{5}[%F{2}%b%c%u%F{5}]%f ' +zstyle ':vcs_info:svn:*' branchformat '%b' +zstyle ':vcs_info:svn:*' actionformats '%F{5}[%F{2}%b%F{1}:%F{3}%i%F{3}|%F{1}%a%c%u%F{5}]%f ' +zstyle ':vcs_info:svn:*' formats '%F{5}[%F{2}%b%F{1}:%F{3}%i%c%u%F{5}]%f ' +zstyle ':vcs_info:*' enable git cvs svn + +theme_precmd () { + vcs_info +} + +setopt prompt_subst +PROMPT='%{$fg[magenta]%}$(toon)%{$reset_color%} %~/ %{$reset_color%}${vcs_info_msg_0_}%{$reset_color%}' + +autoload -U add-zsh-hook +add-zsh-hook precmd theme_precmd diff --git a/zsh/oh-my-zsh/themes/arrow.zsh-theme b/zsh/oh-my-zsh/themes/arrow.zsh-theme new file mode 100644 index 0000000..76c031f --- /dev/null +++ b/zsh/oh-my-zsh/themes/arrow.zsh-theme @@ -0,0 +1,14 @@ +if [ $UID -eq 0 ]; then NCOLOR="red"; else NCOLOR="yellow"; fi + +PROMPT='%{$fg[$NCOLOR]%}%c ➤ %{$reset_color%}' +RPROMPT='%{$fg[$NCOLOR]%} $(git_prompt_info)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="git:" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="*" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# See https://geoff.greer.fm/lscolors/ +export LSCOLORS="exfxcxdxbxbxbxbxbxbxbx" +export LS_COLORS="di=34;40:ln=35;40:so=32;40:pi=33;40:ex=31;40:bd=31;40:cd=31;40:su=31;40:sg=31;40:tw=31;40:ow=31;40:" + diff --git a/zsh/oh-my-zsh/themes/aussiegeek.zsh-theme b/zsh/oh-my-zsh/themes/aussiegeek.zsh-theme new file mode 100644 index 0000000..2ded5c1 --- /dev/null +++ b/zsh/oh-my-zsh/themes/aussiegeek.zsh-theme @@ -0,0 +1,8 @@ + +PROMPT='$fg_bold[blue][ $fg[red]%t $fg_bold[blue]] $fg_bold[blue] [ $fg[red]%n@%m:%~$(git_prompt_info)$fg[yellow]$(ruby_prompt_info)$fg_bold[blue] ]$reset_color + $ ' +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="$fg_bold[green](" +ZSH_THEME_GIT_PROMPT_SUFFIX=")" +ZSH_THEME_GIT_PROMPT_CLEAN="✔" +ZSH_THEME_GIT_PROMPT_DIRTY="✗" diff --git a/zsh/oh-my-zsh/themes/avit.zsh-theme b/zsh/oh-my-zsh/themes/avit.zsh-theme new file mode 100644 index 0000000..f90ba33 --- /dev/null +++ b/zsh/oh-my-zsh/themes/avit.zsh-theme @@ -0,0 +1,85 @@ +# AVIT ZSH Theme + +# settings +typeset +H _current_dir="%{$fg_bold[blue]%}%3~%{$reset_color%} " +typeset +H _return_status="%{$fg_bold[red]%}%(?..⍉)%{$reset_color%}" +typeset +H _hist_no="%{$fg[grey]%}%h%{$reset_color%}" + +PROMPT=' +$(_user_host)${_current_dir} $(git_prompt_info) $(ruby_prompt_info) +%{%(!.${fg[red]}.${fg[white]})%}▶%{$reset_color%} ' + +PROMPT2='%{%(!.${fg[red]}.${fg[white]})%}◀%{$reset_color%} ' + +RPROMPT='$(vi_mode_prompt_info)%{$(echotc UP 1)%}$(_git_time_since_commit) $(git_prompt_status) ${_return_status}%{$(echotc DO 1)%}' + +function _user_host() { + local me + if [[ -n $SSH_CONNECTION ]]; then + me="%n@%m" + elif [[ $LOGNAME != $USERNAME ]]; then + me="%n" + fi + if [[ -n $me ]]; then + echo "%{$fg[cyan]%}$me%{$reset_color%}:" + fi +} + +# Determine the time since last commit. If branch is clean, +# use a neutral color, otherwise colors will vary according to time. +function _git_time_since_commit() { + local last_commit now seconds_since_last_commit + local minutes hours days years commit_age + # Only proceed if there is actually a commit. + if last_commit=$(command git -c log.showSignature=false log --format='%at' -1 2>/dev/null); then + now=$(date +%s) + seconds_since_last_commit=$((now-last_commit)) + + # Totals + minutes=$((seconds_since_last_commit / 60)) + hours=$((minutes / 60)) + days=$((hours / 24)) + years=$((days / 365)) + + if [[ $years -gt 0 ]]; then + commit_age="${years}y$((days % 365 ))d" + elif [[ $days -gt 0 ]]; then + commit_age="${days}d$((hours % 24))h" + elif [[ $hours -gt 0 ]]; then + commit_age+="${hours}h$(( minutes % 60 ))m" + else + commit_age="${minutes}m" + fi + + echo "${ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL}${commit_age}%{$reset_color%}" + fi +} + +MODE_INDICATOR="%{$fg_bold[yellow]%}❮%{$reset_color%}%{$fg[yellow]%}❮❮%{$reset_color%}" + +# Git prompt settings +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}✔%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%}✚ " +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%}⚑ " +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%}✖ " +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%}▴ " +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[cyan]%}§ " +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[white]%}◒ " + +# Ruby prompt settings +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[grey]%}" +ZSH_THEME_RUBY_PROMPT_SUFFIX="%{$reset_color%}" + +# Colors vary depending on time lapsed. +ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" +ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM="%{$fg[yellow]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG="%{$fg[red]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[white]%}" + +# LS colors, made with https://geoff.greer.fm/lscolors/ +export LSCOLORS="exfxcxdxbxegedabagacad" +export LS_COLORS='di=34;40:ln=35;40:so=32;40:pi=33;40:ex=31;40:bd=34;46:cd=34;43:su=0;41:sg=0;46:tw=0;42:ow=0;43:' +export GREP_COLOR='1;33' diff --git a/zsh/oh-my-zsh/themes/awesomepanda.zsh-theme b/zsh/oh-my-zsh/themes/awesomepanda.zsh-theme new file mode 100644 index 0000000..85036e4 --- /dev/null +++ b/zsh/oh-my-zsh/themes/awesomepanda.zsh-theme @@ -0,0 +1,16 @@ +# the svn plugin has to be activated for this to work. +local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ %s)" +PROMPT='${ret_status}%{$fg_bold[green]%} %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%}$(svn_prompt_info)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%})%{$fg[yellow]%} ✗ %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%}) " + +ZSH_PROMPT_BASE_COLOR="%{$fg_bold[blue]%}" +ZSH_THEME_REPO_NAME_COLOR="%{$fg_bold[red]%}" + +ZSH_THEME_SVN_PROMPT_PREFIX="svn:(" +ZSH_THEME_SVN_PROMPT_SUFFIX=")" +ZSH_THEME_SVN_PROMPT_DIRTY="%{$fg[red]%} ✘ %{$reset_color%}" +ZSH_THEME_SVN_PROMPT_CLEAN=" " diff --git a/zsh/oh-my-zsh/themes/bira.zsh-theme b/zsh/oh-my-zsh/themes/bira.zsh-theme new file mode 100644 index 0000000..42a70a0 --- /dev/null +++ b/zsh/oh-my-zsh/themes/bira.zsh-theme @@ -0,0 +1,32 @@ +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" +local user_host="%B%(!.%{$fg[red]%}.%{$fg[green]%})%n@%m%{$reset_color%} " +local user_symbol='%(!.#.$)' +local current_dir="%B%{$fg[blue]%}%~ %{$reset_color%}" + +local vcs_branch='$(git_prompt_info)$(hg_prompt_info)' +local rvm_ruby='$(ruby_prompt_info)' +local venv_prompt='$(virtualenv_prompt_info)' + +ZSH_THEME_RVM_PROMPT_OPTIONS="i v g" + +PROMPT="╭─${user_host}${current_dir}${rvm_ruby}${vcs_branch}${venv_prompt} +╰─%B${user_symbol}%b " +RPROMPT="%B${return_code}%b" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}●%{$fg[yellow]%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[yellow]%}" + +ZSH_THEME_HG_PROMPT_PREFIX="$ZSH_THEME_GIT_PROMPT_PREFIX" +ZSH_THEME_HG_PROMPT_SUFFIX="$ZSH_THEME_GIT_PROMPT_SUFFIX" +ZSH_THEME_HG_PROMPT_DIRTY="$ZSH_THEME_GIT_PROMPT_DIRTY" +ZSH_THEME_HG_PROMPT_CLEAN="$ZSH_THEME_GIT_PROMPT_CLEAN" + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[red]%}‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="› %{$reset_color%}" + +ZSH_THEME_VIRTUAL_ENV_PROMPT_PREFIX="%{$fg[green]%}‹" +ZSH_THEME_VIRTUAL_ENV_PROMPT_SUFFIX="› %{$reset_color%}" +ZSH_THEME_VIRTUALENV_PREFIX="$ZSH_THEME_VIRTUAL_ENV_PROMPT_PREFIX" +ZSH_THEME_VIRTUALENV_SUFFIX="$ZSH_THEME_VIRTUAL_ENV_PROMPT_SUFFIX" diff --git a/zsh/oh-my-zsh/themes/blinks.zsh-theme b/zsh/oh-my-zsh/themes/blinks.zsh-theme new file mode 100644 index 0000000..ddb32f7 --- /dev/null +++ b/zsh/oh-my-zsh/themes/blinks.zsh-theme @@ -0,0 +1,30 @@ +# https://github.com/blinks zsh theme + +function _prompt_char() { + if $(git rev-parse --is-inside-work-tree >/dev/null 2>&1); then + echo "%{%F{blue}%}±%{%f%k%b%}" + else + echo ' ' + fi +} + +# This theme works with both the "dark" and "light" variants of the +# Solarized color schema. Set the SOLARIZED_THEME variable to one of +# these two values to choose. If you don't specify, we'll assume you're +# using the "dark" variant. + +case ${SOLARIZED_THEME:-dark} in + light) bkg=white;; + *) bkg=black;; +esac + +ZSH_THEME_GIT_PROMPT_PREFIX=" [%{%B%F{blue}%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{%f%k%b%K{${bkg}}%B%F{green}%}]" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{%F{red}%}*%{%f%k%b%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +PROMPT='%{%f%k%b%} +%{%K{${bkg}}%B%F{green}%}%n%{%B%F{blue}%}@%{%B%F{cyan}%}%m%{%B%F{green}%} %{%b%F{yellow}%K{${bkg}}%}%~%{%B%F{green}%}$(git_prompt_info)%E%{%f%k%b%} +%{%K{${bkg}}%}$(_prompt_char)%{%K{${bkg}}%} %#%{%f%k%b%} ' + +RPROMPT='!%{%B%F{cyan}%}%!%{%f%k%b%}' diff --git a/zsh/oh-my-zsh/themes/bureau.zsh-theme b/zsh/oh-my-zsh/themes/bureau.zsh-theme new file mode 100644 index 0000000..698aa2f --- /dev/null +++ b/zsh/oh-my-zsh/themes/bureau.zsh-theme @@ -0,0 +1,126 @@ +# oh-my-zsh Bureau Theme + +### NVM + +ZSH_THEME_NVM_PROMPT_PREFIX="%B⬡%b " +ZSH_THEME_NVM_PROMPT_SUFFIX="" + +### Git [±master ▾●] + +ZSH_THEME_GIT_PROMPT_PREFIX="[%{$fg_bold[green]%}±%{$reset_color%}%{$fg_bold[white]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}]" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[green]%}✓%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg[cyan]%}▴%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_BEHIND="%{$fg[magenta]%}▾%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_STAGED="%{$fg_bold[green]%}●%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNSTAGED="%{$fg_bold[yellow]%}●%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg_bold[red]%}●%{$reset_color%}" + +bureau_git_info () { + local ref + ref=$(command git symbolic-ref HEAD 2> /dev/null) || \ + ref=$(command git rev-parse --short HEAD 2> /dev/null) || return + echo "${ref#refs/heads/}" +} + +bureau_git_status() { + local result gitstatus + gitstatus="$(command git status --porcelain -b 2>/dev/null)" + + # check status of files + local gitfiles="$(tail -n +2 <<< "$gitstatus")" + if [[ -n "$gitfiles" ]]; then + if [[ "$gitfiles" =~ $'(^|\n)[AMRD]. ' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_STAGED" + fi + if [[ "$gitfiles" =~ $'(^|\n).[MTD] ' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_UNSTAGED" + fi + if [[ "$gitfiles" =~ $'(^|\n)\\?\\? ' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_UNTRACKED" + fi + if [[ "$gitfiles" =~ $'(^|\n)UU ' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_UNMERGED" + fi + else + result+="$ZSH_THEME_GIT_PROMPT_CLEAN" + fi + + # check status of local repository + local gitbranch="$(head -n 1 <<< "$gitstatus")" + if [[ "$gitbranch" =~ '^## .*ahead' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_AHEAD" + fi + if [[ "$gitbranch" =~ '^## .*behind' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_BEHIND" + fi + if [[ "$gitbranch" =~ '^## .*diverged' ]]; then + result+="$ZSH_THEME_GIT_PROMPT_DIVERGED" + fi + + # check if there are stashed changes + if command git rev-parse --verify refs/stash &> /dev/null; then + result+="$ZSH_THEME_GIT_PROMPT_STASHED" + fi + + echo $result +} + +bureau_git_prompt() { + # check git information + local gitinfo=$(bureau_git_info) + if [[ -z "$gitinfo" ]]; then + return + fi + + # quote % in git information + local output="${gitinfo:gs/%/%%}" + + # check git status + local gitstatus=$(bureau_git_status) + if [[ -n "$gitstatus" ]]; then + output+=" $gitstatus" + fi + + echo "${ZSH_THEME_GIT_PROMPT_PREFIX}${output}${ZSH_THEME_GIT_PROMPT_SUFFIX}" +} + + +_PATH="%{$fg_bold[white]%}%~%{$reset_color%}" + +if [[ $EUID -eq 0 ]]; then + _USERNAME="%{$fg_bold[red]%}%n" + _LIBERTY="%{$fg[red]%}#" +else + _USERNAME="%{$fg_bold[white]%}%n" + _LIBERTY="%{$fg[green]%}$" +fi +_USERNAME="$_USERNAME%{$reset_color%}@%m" +_LIBERTY="$_LIBERTY%{$reset_color%}" + + +get_space () { + local STR=$1$2 + local zero='%([BSUbfksu]|([FB]|){*})' + local LENGTH=${#${(S%%)STR//$~zero/}} + local SPACES=$(( COLUMNS - LENGTH - ${ZLE_RPROMPT_INDENT:-1} )) + + (( SPACES > 0 )) || return + printf ' %.0s' {1..$SPACES} +} + +_1LEFT="$_USERNAME $_PATH" +_1RIGHT="[%*]" + +bureau_precmd () { + _1SPACES=`get_space $_1LEFT $_1RIGHT` + print + print -rP "$_1LEFT$_1SPACES$_1RIGHT" +} + +setopt prompt_subst +PROMPT='> $_LIBERTY ' +RPROMPT='$(nvm_prompt_info) $(bureau_git_prompt)' + +autoload -U add-zsh-hook +add-zsh-hook precmd bureau_precmd diff --git a/zsh/oh-my-zsh/themes/candy-kingdom.zsh-theme b/zsh/oh-my-zsh/themes/candy-kingdom.zsh-theme new file mode 100644 index 0000000..31e63df --- /dev/null +++ b/zsh/oh-my-zsh/themes/candy-kingdom.zsh-theme @@ -0,0 +1,34 @@ +if ! hg prompt 2>/dev/null; then + function hg_prompt_info { } +else + function hg_prompt_info { + hg prompt --angle-brackets "\ +< on %{$fg[magenta]%}%{$reset_color%}>\ +< at %{$fg[yellow]%}%{$reset_color%}>\ +%{$fg[green]%}%{$reset_color%}< +patches: >" 2>/dev/null + } +fi + +function box_name { + local box="${SHORT_HOST:-$HOST}" + [[ -f ~/.box-name ]] && box="$(< ~/.box-name)" + echo "${box:gs/%/%%}" +} + +PROMPT=' +%{$fg[magenta]%}%n%{$reset_color%}@%{$fg[yellow]%}$(box_name)%{$reset_color%}:%{$fg_bold[green]%}%~%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) +%(?,,%{${fg_bold[white]}%}[%?]%{$reset_color%} )$ ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" (%{$fg[magenta]%}branch: " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[red]%}?" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[orange]%}!" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%})" + +RPROMPT='%{$fg[red]%}%(?..✘)%{$reset_color%}' + +# Add battery status if the battery plugin is enabled +if (( $+functions[battery_pct_prompt] )); then + RPROMPT+='$(battery_time_remaining) $(battery_pct_prompt)%{$reset_color%}' +fi diff --git a/zsh/oh-my-zsh/themes/candy.zsh-theme b/zsh/oh-my-zsh/themes/candy.zsh-theme new file mode 100644 index 0000000..40e6d41 --- /dev/null +++ b/zsh/oh-my-zsh/themes/candy.zsh-theme @@ -0,0 +1,7 @@ +PROMPT=$'%{$fg_bold[green]%}%n@%m %{$fg[blue]%}%D{[%X]} %{$reset_color%}%{$fg[white]%}[%~]%{$reset_color%} $(git_prompt_info)\ +%{$fg[blue]%}->%{$fg_bold[blue]%} %#%{$reset_color%} ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}*%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/clean.zsh-theme b/zsh/oh-my-zsh/themes/clean.zsh-theme new file mode 100644 index 0000000..5c96e47 --- /dev/null +++ b/zsh/oh-my-zsh/themes/clean.zsh-theme @@ -0,0 +1,14 @@ +if [ $UID -eq 0 ]; then NCOLOR="red"; else NCOLOR="white"; fi + +PROMPT='%{$fg[$NCOLOR]%}%B%n%b%{$reset_color%}:%{$fg[blue]%}%B%c/%b%{$reset_color%} $(git_prompt_info)%(!.#.$) ' +RPROMPT='[%*]' + +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[yellow]%}%B" +ZSH_THEME_GIT_PROMPT_SUFFIX="%b%{$fg_bold[blue]%})%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}✗" + +# LS colors, made with https://geoff.greer.fm/lscolors/ +export LSCOLORS="Gxfxcxdxbxegedabagacad" +export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:' diff --git a/zsh/oh-my-zsh/themes/cloud.zsh-theme b/zsh/oh-my-zsh/themes/cloud.zsh-theme new file mode 100644 index 0000000..e26f786 --- /dev/null +++ b/zsh/oh-my-zsh/themes/cloud.zsh-theme @@ -0,0 +1,10 @@ +if [[ -z $ZSH_THEME_CLOUD_PREFIX ]]; then + ZSH_THEME_CLOUD_PREFIX='☁' +fi + +PROMPT='%{$fg_bold[cyan]%}$ZSH_THEME_CLOUD_PREFIX %{$fg_bold[green]%} %{$fg[green]%}%c %{$fg_bold[cyan]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}[%{$fg[cyan]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}] %{$fg[yellow]%}⚡ %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}]" diff --git a/zsh/oh-my-zsh/themes/crcandy.zsh-theme b/zsh/oh-my-zsh/themes/crcandy.zsh-theme new file mode 100644 index 0000000..5b9cd42 --- /dev/null +++ b/zsh/oh-my-zsh/themes/crcandy.zsh-theme @@ -0,0 +1,8 @@ +PROMPT=$' +%{$fg_bold[green]%}%n@%m %{$fg[blue]%}%D{[%H:%M:%S]} %{$reset_color%}%{$fg[white]%}[%~]%{$reset_color%} $(git_prompt_info)\ +%{$fg[blue]%}->%{$fg_bold[blue]%} %#%{$reset_color%} ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}*%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/crunch.zsh-theme b/zsh/oh-my-zsh/themes/crunch.zsh-theme new file mode 100644 index 0000000..8278661 --- /dev/null +++ b/zsh/oh-my-zsh/themes/crunch.zsh-theme @@ -0,0 +1,39 @@ +# CRUNCH - created from Steve Eley's cat waxing. +# Initially hacked from the Dallas theme. Thanks, Dallas Reedy. +# +# This theme assumes you do most of your oh-my-zsh'ed "colorful" work at a single machine, +# and eschews the standard space-consuming user and hostname info. Instead, only the +# things that vary in my own workflow are shown: +# +# * The time (not the date) +# * The RVM version and gemset (omitting the 'ruby' name if it's MRI) +# * The current directory +# * The Git branch and its 'dirty' state +# +# Colors are at the top so you can mess with those separately if you like. +# For the most part I stuck with Dallas's. + +CRUNCH_BRACKET_COLOR="%{$fg[white]%}" +CRUNCH_TIME_COLOR="%{$fg[yellow]%}" +CRUNCH_RVM_COLOR="%{$fg[magenta]%}" +CRUNCH_DIR_COLOR="%{$fg[cyan]%}" +CRUNCH_GIT_BRANCH_COLOR="%{$fg[green]%}" +CRUNCH_GIT_CLEAN_COLOR="%{$fg[green]%}" +CRUNCH_GIT_DIRTY_COLOR="%{$fg[red]%}" + +# These Git variables are used by the oh-my-zsh git_prompt_info helper: +ZSH_THEME_GIT_PROMPT_PREFIX="$CRUNCH_BRACKET_COLOR:$CRUNCH_GIT_BRANCH_COLOR" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_CLEAN=" $CRUNCH_GIT_CLEAN_COLOR✓" +ZSH_THEME_GIT_PROMPT_DIRTY=" $CRUNCH_GIT_DIRTY_COLOR✗" + +# Our elements: +CRUNCH_TIME_="$CRUNCH_BRACKET_COLOR{$CRUNCH_TIME_COLOR%T$CRUNCH_BRACKET_COLOR}%{$reset_color%}" +ZSH_THEME_RUBY_PROMPT_PREFIX="$CRUNCH_BRACKET_COLOR"["$CRUNCH_RVM_COLOR" +ZSH_THEME_RUBY_PROMPT_SUFFIX="$CRUNCH_BRACKET_COLOR"]"%{$reset_color%}" +CRUNCH_RVM_='$(ruby_prompt_info)' +CRUNCH_DIR_="$CRUNCH_DIR_COLOR%~\$(git_prompt_info) " +CRUNCH_PROMPT="$CRUNCH_BRACKET_COLOR➭ " + +# Put it all together! +PROMPT="$CRUNCH_TIME_$CRUNCH_RVM_$CRUNCH_DIR_$CRUNCH_PROMPT%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/cypher.zsh-theme b/zsh/oh-my-zsh/themes/cypher.zsh-theme new file mode 100644 index 0000000..6e6b78e --- /dev/null +++ b/zsh/oh-my-zsh/themes/cypher.zsh-theme @@ -0,0 +1,4 @@ +# Based on evan's prompt +# Shows the exit status of the last command if non-zero +# Uses "#" instead of "»" when running with elevated privileges +PROMPT="%m %{${fg_bold[red]}%}:: %{${fg[green]}%}%3~%(0?. . %{${fg[red]}%}%? )%{${fg[blue]}%}»%{${reset_color}%} " diff --git a/zsh/oh-my-zsh/themes/dallas.zsh-theme b/zsh/oh-my-zsh/themes/dallas.zsh-theme new file mode 100644 index 0000000..4f8be20 --- /dev/null +++ b/zsh/oh-my-zsh/themes/dallas.zsh-theme @@ -0,0 +1,27 @@ +# Personalized! + +# Grab the current date (%D) and time (%T) wrapped in {}: {%D %T} +DALLAS_CURRENT_TIME_="%{$fg[white]%}{%{$fg[yellow]%}%D %T%{$fg[white]%}}%{$reset_color%}" +# Grab the current machine name: muscato +DALLAS_CURRENT_MACH_="%{$fg[green]%}%m%{$fg[white]%}:%{$reset_color%}" +# Grab the current filepath, use shortcuts: ~/Desktop +# Append the current git branch, if in a git repository: ~aw@master +DALLAS_CURRENT_LOCA_="%{$fg[cyan]%}%~\$(git_prompt_info)%{$reset_color%}\$(parse_git_dirty)" +# Grab the current username: dallas +DALLAS_CURRENT_USER_="%{$fg[red]%}%n%{$reset_color%}" +# Use a % for normal users and a # for privileged (root) users. +DALLAS_PROMPT_CHAR_="%{$fg[white]%}%(!.#.%%)%{$reset_color%}" +# For the git prompt, use a white @ and blue text for the branch name +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[white]%}@%{$fg[blue]%}" +# Close it all off by resetting the color and styles. +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +# Do nothing if the branch is clean (no changes). +ZSH_THEME_GIT_PROMPT_CLEAN="" +# Add 3 cyan ✗s if this branch is diiirrrty! Dirty branch! +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[cyan]%}✗✗✗" + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[white]%}[%{$fg[magenta]%}" +ZSH_THEME_RUBY_PROMPT_SUFFIX="%{$fg[white]%}]%{$reset_color%}" + +# Put it all together! +PROMPT="$DALLAS_CURRENT_TIME_\$(ruby_prompt_info)$DALLAS_CURRENT_MACH_$DALLAS_CURRENT_LOCA_ $DALLAS_CURRENT_USER_$DALLAS_PROMPT_CHAR_ " diff --git a/zsh/oh-my-zsh/themes/darkblood.zsh-theme b/zsh/oh-my-zsh/themes/darkblood.zsh-theme new file mode 100644 index 0000000..33508fb --- /dev/null +++ b/zsh/oh-my-zsh/themes/darkblood.zsh-theme @@ -0,0 +1,9 @@ +# meh. Dark Blood Rewind, a new beginning. + +PROMPT=$'%{$fg[red]%}┌[%{$fg_bold[white]%}%n%{$reset_color%}%{$fg[red]%}@%{$fg_bold[white]%}%m%{$reset_color%}%{$fg[red]%}] [%{$fg_bold[white]%}/dev/%y%{$reset_color%}%{$fg[red]%}] %{$(git_prompt_info)%}%(?,,%{$fg[red]%}[%{$fg_bold[white]%}%?%{$reset_color%}%{$fg[red]%}]) +%{$fg[red]%}└[%{$fg_bold[white]%}%~%{$reset_color%}%{$fg[red]%}]>%{$reset_color%} ' +PS2=$' %{$fg[red]%}|>%{$reset_color%} ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[red]%}[%{$fg_bold[white]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}%{$fg[red]%}] " +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}⚡%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/daveverwer.zsh-theme b/zsh/oh-my-zsh/themes/daveverwer.zsh-theme new file mode 100644 index 0000000..89aef92 --- /dev/null +++ b/zsh/oh-my-zsh/themes/daveverwer.zsh-theme @@ -0,0 +1,7 @@ +# Copied and modified from the oh-my-zsh theme from geoffgarside +# Red server name, green cwd, blue git status + +PROMPT='%{$fg[red]%}%m%{$reset_color%}:%{$fg[green]%}%c%{$reset_color%}$(git_prompt_info) %(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[blue]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/dieter.zsh-theme b/zsh/oh-my-zsh/themes/dieter.zsh-theme new file mode 100644 index 0000000..83f2dcc --- /dev/null +++ b/zsh/oh-my-zsh/themes/dieter.zsh-theme @@ -0,0 +1,56 @@ +# the idea of this theme is to contain a lot of info in a small string, by +# compressing some parts and colorcoding, which bring useful visual cues, +# while limiting the amount of colors and such to keep it easy on the eyes. +# When a command exited >0, the timestamp will be in red and the exit code +# will be on the right edge. +# The exit code visual cues will only display once. +# (i.e. they will be reset, even if you hit enter a few times on empty command prompts) + +typeset -g -A host_repr + +# translate hostnames into shortened, colorcoded strings +host_repr=('dieter-ws-a7n8x-arch' "%{$fg_bold[green]%}ws" 'dieter-p4sci-arch' "%{$fg_bold[blue]%}p4") + +# local time, color coded by last return code +time_enabled="%(?.%{$fg[green]%}.%{$fg[red]%})%*%{$reset_color%}" +time_disabled="%{$fg[green]%}%*%{$reset_color%}" +time=$time_enabled + +# user part, color coded by privileges +local user="%(!.%{$fg[blue]%}.%{$fg[blue]%})%n%{$reset_color%}" + +# Hostname part. compressed and colorcoded per host_repr array +# if not found, regular hostname in default color +local host="@${host_repr[$HOST]:-$HOST}%{$reset_color%}" + +# Compacted $PWD +local pwd="%{$fg[blue]%}%c%{$reset_color%}" + +PROMPT='${time} ${user}${host} ${pwd} $(git_prompt_info)' + +# i would prefer 1 icon that shows the "most drastic" deviation from HEAD, +# but lets see how this works out +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%} %{$fg[yellow]%}?%{$fg[green]%}%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}" + +# elaborate exitcode on the right when >0 +return_code_enabled="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" +return_code_disabled= +return_code=$return_code_enabled + +RPS1='${return_code}' + +function accept-line-or-clear-warning () { + if [[ -z $BUFFER ]]; then + time=$time_disabled + return_code=$return_code_disabled + else + time=$time_enabled + return_code=$return_code_enabled + fi + zle accept-line +} +zle -N accept-line-or-clear-warning +bindkey '^M' accept-line-or-clear-warning diff --git a/zsh/oh-my-zsh/themes/dogenpunk.zsh-theme b/zsh/oh-my-zsh/themes/dogenpunk.zsh-theme new file mode 100644 index 0000000..923ca74 --- /dev/null +++ b/zsh/oh-my-zsh/themes/dogenpunk.zsh-theme @@ -0,0 +1,77 @@ +# dogenpunk.zsh-theme + +MODE_INDICATOR="%{$fg_bold[red]%}❮%{$reset_color%}%{$fg[red]%}❮❮%{$reset_color%}" +local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}" + +PROMPT='%{$fg[blue]%}%m%{$reset_color%}%{$fg_bold[white]%} ॐ %{$reset_color%}%{$fg[cyan]%}%~:%{$reset_color%}$(git_time_since_commit)$(git_prompt_info) +%{$fg[red]%}%!%{$reset_color%} $(prompt_char) ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[green]%}git%{$reset_color%}@%{$bg[white]%}%{$fg[black]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%})" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}!%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +RPROMPT='${return_status}$(git_prompt_status)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" + +function prompt_char() { + git branch >/dev/null 2>/dev/null && echo "%{$fg[green]%}±%{$reset_color%}" && return + hg root >/dev/null 2>/dev/null && echo "%{$fg_bold[red]%}☿%{$reset_color%}" && return + echo "%{$fg[cyan]%}◯ %{$reset_color%}" +} + +# Colors vary depending on time lapsed. +ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" +ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM="%{$fg[yellow]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG="%{$fg[red]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[cyan]%}" + +# Determine the time since last commit. If branch is clean, +# use a neutral color, otherwise colors will vary according to time. +function git_time_since_commit() { + if git rev-parse --git-dir > /dev/null 2>&1; then + # Only proceed if there is actually a commit. + if last_commit=`git -c log.showSignature=false log --pretty=format:'%at' -1 2> /dev/null`; then + now=`date +%s` + seconds_since_last_commit=$((now-last_commit)) + + # Totals + MINUTES=$((seconds_since_last_commit / 60)) + HOURS=$((seconds_since_last_commit/3600)) + + # Sub-hours and sub-minutes + DAYS=$((seconds_since_last_commit / 86400)) + SUB_HOURS=$((HOURS % 24)) + SUB_MINUTES=$((MINUTES % 60)) + + if [[ -n $(git status -s 2> /dev/null) ]]; then + if [ "$MINUTES" -gt 30 ]; then + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG" + elif [ "$MINUTES" -gt 10 ]; then + COLOR="$ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM" + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT" + fi + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + fi + + if [ "$HOURS" -gt 24 ]; then + echo "($COLOR${DAYS}d${SUB_HOURS}h${SUB_MINUTES}m%{$reset_color%}|" + elif [ "$MINUTES" -gt 60 ]; then + echo "($COLOR${HOURS}h${SUB_MINUTES}m%{$reset_color%}|" + else + echo "($COLOR${MINUTES}m%{$reset_color%}|" + fi + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + echo "($COLOR~|" + fi + fi +} diff --git a/zsh/oh-my-zsh/themes/dpoggi.zsh-theme b/zsh/oh-my-zsh/themes/dpoggi.zsh-theme new file mode 100644 index 0000000..6469a20 --- /dev/null +++ b/zsh/oh-my-zsh/themes/dpoggi.zsh-theme @@ -0,0 +1,14 @@ +if [ $UID -eq 0 ]; then NCOLOR="red"; else NCOLOR="green"; fi +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='%{$fg[$NCOLOR]%}%n%{$reset_color%}@%{$fg[cyan]%}%m\ +%{$reset_color%}:%{$fg[magenta]%}%~\ +$(git_prompt_info) \ +%{$fg[red]%}%(!.#.»)%{$reset_color%} ' +PROMPT2='%{$fg[red]%}\ %{$reset_color%}' +RPS1='${return_code}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}○%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}⚡%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$fg[yellow]%})%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/dst.zsh-theme b/zsh/oh-my-zsh/themes/dst.zsh-theme new file mode 100644 index 0000000..6b2f876 --- /dev/null +++ b/zsh/oh-my-zsh/themes/dst.zsh-theme @@ -0,0 +1,16 @@ + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}!" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +function prompt_char { + if [ $UID -eq 0 ]; then echo "%{$fg[red]%}#%{$reset_color%}"; else echo $; fi +} + +PROMPT='%(?, ,%{$fg[red]%}FAIL%{$reset_color%} +) +%{$fg[magenta]%}%n%{$reset_color%}@%{$fg[yellow]%}%m%{$reset_color%}: %{$fg_bold[blue]%}%~%{$reset_color%}$(git_prompt_info) +$(prompt_char) ' + +RPROMPT='%{$fg[green]%}[%*]%{$reset_color%}' diff --git a/zsh/oh-my-zsh/themes/dstufft.zsh-theme b/zsh/oh-my-zsh/themes/dstufft.zsh-theme new file mode 100644 index 0000000..39ce698 --- /dev/null +++ b/zsh/oh-my-zsh/themes/dstufft.zsh-theme @@ -0,0 +1,19 @@ +function prompt_char { + git branch >/dev/null 2>/dev/null && echo '±' && return + hg root >/dev/null 2>/dev/null && echo 'Hg' && return + echo '○' +} + +function virtualenv_info { + [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' +} + +PROMPT=' +%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}%~%{$reset_color%}$(git_prompt_info) +$(virtualenv_info)$(prompt_char) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?" +ZSH_THEME_GIT_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/duellj.zsh-theme b/zsh/oh-my-zsh/themes/duellj.zsh-theme new file mode 100644 index 0000000..f70b39b --- /dev/null +++ b/zsh/oh-my-zsh/themes/duellj.zsh-theme @@ -0,0 +1,7 @@ +# user, host, full path, and time/date +# on two lines for easier vgrepping +# entry in a nice long thread on the Arch Linux forums: https://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 +PROMPT=$'%{\e[0;34m%}%B┌─[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;34m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]%b%{\e[0m%} - %b%{\e[0;34m%}%B[%b%{\e[1;37m%}%~%{\e[0;34m%}%B]%b%{\e[0m%} - %{\e[0;34m%}%B[%b%{\e[0;33m%}%!%{\e[0;34m%}%B]%b%{\e[0m%} +%{\e[0;34m%}%B└─%B[%{\e[1;35m%}$%{\e[0;34m%}%B]%{\e[0m%}%b ' +RPROMPT='[%*]' +PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' diff --git a/zsh/oh-my-zsh/themes/eastwood.zsh-theme b/zsh/oh-my-zsh/themes/eastwood.zsh-theme new file mode 100644 index 0000000..88134f8 --- /dev/null +++ b/zsh/oh-my-zsh/themes/eastwood.zsh-theme @@ -0,0 +1,23 @@ +# RVM settings +if [[ -s ~/.rvm/scripts/rvm ]] ; then + RPS1="%{$fg[yellow]%}rvm:%{$reset_color%}%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt)%{$reset_color%} $EPS1" +else + if which rbenv &> /dev/null; then + RPS1="%{$fg[yellow]%}rbenv:%{$reset_color%}%{$fg[red]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$reset_color%} $EPS1" + fi +fi + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# Customized git status, oh-my-zsh currently does not allow render dirty status before branch +git_custom_status() { + local cb=$(git_current_branch) + if [ -n "$cb" ]; then + echo "$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_PREFIX$(git_current_branch)$ZSH_THEME_GIT_PROMPT_SUFFIX" + fi +} + +PROMPT='$(git_custom_status)%{$fg[cyan]%}[%~% ]%{$reset_color%}%B$%b ' diff --git a/zsh/oh-my-zsh/themes/edvardm.zsh-theme b/zsh/oh-my-zsh/themes/edvardm.zsh-theme new file mode 100644 index 0000000..d41dd44 --- /dev/null +++ b/zsh/oh-my-zsh/themes/edvardm.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%} %{$fg_bold[white]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/emotty.zsh-theme b/zsh/oh-my-zsh/themes/emotty.zsh-theme new file mode 100644 index 0000000..ba08409 --- /dev/null +++ b/zsh/oh-my-zsh/themes/emotty.zsh-theme @@ -0,0 +1,113 @@ +#!/usr/bin/env zsh +# ------------------------------------------------------------------------------ +# FILE: emotty.zsh-theme +# DESCRIPTION: A varying emoji based theme +# AUTHOR: Alexis Hildebrandt (afh[at]surryhill.net) +# VERSION: 1.0.0 +# DEPENDS: emotty plugin +# RECOMMENDS: Hasklig font +# +# This theme shows a different emoji for each tty at the main prompt. +# +# There are pre-defined different emoji sets to choose from, e.g.: +# emoji, stellar, floral, zodiac, love (see emotty plugin). +# +# To choose a different emotty set than the default (emoji) +# % export emotty_set=nature +# +# For the superuser (root) this theme shows a designated indicator +# and switches the foreground color to red +# (see root_prompt variable, default: skull). +# But you are using sudo (8) instead of designated a root shell, right‽ +# +# When logged in via SSH the main prompt also shows the user- and hostname. +# +# The exit status of the last failed command is displayed in the window title +# along with an indicator (see warn_glyph variable, default: collision symbol). +# To clear it just run: $NULL, true or : +# +# The right prompt shows the current working directory (3 levels up) in cyan. +# +# When in a git repository the main prompt shows the current branch name +# with a branch indicator in yellow +# (see vcs_branch_glyph variable, default: Hasklig branch glyph). +# +# If there are modified files the prompt switches to red and shows an unstaged +# indicator (see vcs_unstaged_glyph variable, default: circled letter M). +# +# If there are staged files the prompt switches to green and shows an staged +# indicator (see vcs_staged_glyph variable, default: high voltage sign). +# +# In a git repository the right prompt shows the repository name in bold and +# prepends the current working directory subpath within the repository. +# +# When git currently performs an action such as merge or rebase, the action is +# displayed in red instead of the branch name and a special action indicator +# is shown (see vcs_action_glyph variable, default: chevron). +# ------------------------------------------------------------------------------ + +(( ${+functions[emotty]} )) || { + echo "error: the emotty theme requires the emotty plugin" >&2 + return 1 +} + +(( ${+emoji} )) || { + echo "error: the emotty theme requires the emoji plugin" >&2 + return 1 +} + +user_prompt="$(emotty)" +root_prompt="$emoji[skull]" +warn_prompt="$emoji[collision_symbol]" + +vcs_unstaged_glyph="%{$emoji[circled_latin_capital_letter_m]$emoji2[emoji_style] %2G%}" +vcs_staged_glyph="%{$emoji[high_voltage_sign]%2G%}" +vcs_branch_glyph=$'\Ue0a0' #  +vcs_action_glyph=$'\U276f' # ❯ + +red="$FG[001]" +yellow="$FG[003]" +green="$FG[002]" +cyan="$FG[014]" + +prompt_glyph="%{%(#.${root_prompt}.${user_prompt}) %2G%}" + +# Uncomment the next line if you also like to see the warn_prompt in the prompt on the right. +#last_command_failed="%(?.. %F{red}%1{${warn_prompt} %1G%}%?%f)" + + +setopt promptsubst + +# Workaround for zsh 5.2 release (kudos to @timothybasanov) +autoload +X VCS_INFO_nvcsformats +functions[VCS_INFO_nvcsformats]=${functions[VCS_INFO_nvcsformats]/local -a msgs/} + +autoload -U add-zsh-hook +autoload -Uz vcs_info + +zstyle ':vcs_info:*' enable git #hg svn cvs +zstyle ':vcs_info:*' get-revision false +zstyle ':vcs_info:*' check-for-changes true +zstyle ':vcs_info:git:*' unstagedstr "${red}${vcs_unstaged_glyph}" +zstyle ':vcs_info:*' stagedstr "${green}${vcs_staged_glyph}" + +# %(K|F){color} set (back|fore)ground color +# %(k|f) reset (back|fore)ground color +zstyle ':vcs_info:*' max-exports 3 +zstyle ':vcs_info:*' nvcsformats "${prompt_glyph}" '%3~' '' +zstyle ':vcs_info:*' formats "${yellow}%u%c%b${vcs_branch_glyph}%f" '%S|' "$FX[bold]%r$FX[no-bold]" +zstyle ':vcs_info:*' actionformats "${red}%K{white}%a${vcs_action_glyph}%k%f" '%S|' "$FX[bold]%r$FX[no-bold]" + +red_if_root="%(!.%F{red}.)" +sshuser_on_host="${SSH_TTY:+%(!.$red.$yellow)%n@%m$reset_color}" + +PROMPT='${sshuser_on_host}${vcs_info_msg_0_}${red_if_root} ' +RPROMPT='${cyan}${vcs_info_msg_1_##.|}${vcs_info_msg_2_}%f${last_command_failed}' + +emotty_title() { + title "${${?/[^0]*/$warn_prompt $?}/0/${prompt_glyph}}" +} +add-zsh-hook precmd emotty_title +add-zsh-hook precmd vcs_info + +# vim:ft=zsh ts=2 sw=2 sts=2 diff --git a/zsh/oh-my-zsh/themes/essembeh.zsh-theme b/zsh/oh-my-zsh/themes/essembeh.zsh-theme new file mode 100644 index 0000000..43d4093 --- /dev/null +++ b/zsh/oh-my-zsh/themes/essembeh.zsh-theme @@ -0,0 +1,50 @@ +# My custom theme: +# - single line +# - quite simple by default: user@host:$PWD +# - green for local shell as non root +# - red for ssh shell as non root +# - magenta for root sessions +# - prefix with remote address for ssh shells +# - prefix to detect docker containers or chroot +# - git plugin to display current branch and status + +# git plugin +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[cyan]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%%" +ZSH_THEME_GIT_PROMPT_ADDED="+" +ZSH_THEME_GIT_PROMPT_MODIFIED="*" +ZSH_THEME_GIT_PROMPT_RENAMED="~" +ZSH_THEME_GIT_PROMPT_DELETED="!" +ZSH_THEME_GIT_PROMPT_UNMERGED="?" + +function zsh_essembeh_gitstatus { + ref=$(git symbolic-ref HEAD 2> /dev/null) || return + GIT_STATUS=$(git_prompt_status) + if [[ -n $GIT_STATUS ]]; then + GIT_STATUS=" $GIT_STATUS" + fi + echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$GIT_STATUS$ZSH_THEME_GIT_PROMPT_SUFFIX" +} + +# by default, use green for user@host and no prefix +local ZSH_ESSEMBEH_COLOR="green" +local ZSH_ESSEMBEH_PREFIX="" +if [[ -n "$SSH_CONNECTION" ]]; then + # display the source address if connected via ssh + ZSH_ESSEMBEH_PREFIX="%{$fg[yellow]%}[$(echo $SSH_CONNECTION | awk '{print $1}')]%{$reset_color%} " + # use red color to highlight a remote connection + ZSH_ESSEMBEH_COLOR="red" +elif [[ -r /etc/debian_chroot ]]; then + # prefix prompt in case of chroot + ZSH_ESSEMBEH_PREFIX="%{$fg[yellow]%}[chroot:$(cat /etc/debian_chroot)]%{$reset_color%} " +elif [[ -r /.dockerenv ]]; then + # also prefix prompt inside a docker container + ZSH_ESSEMBEH_PREFIX="%{$fg[yellow]%}[docker]%{$reset_color%} " +fi +if [[ $UID = 0 ]]; then + # always use magenta for root sessions, even in ssh + ZSH_ESSEMBEH_COLOR="magenta" +fi +PROMPT='${ZSH_ESSEMBEH_PREFIX}%{$fg[$ZSH_ESSEMBEH_COLOR]%}%n@%M%{$reset_color%}:%{%B$fg[yellow]%}%~%{$reset_color%b%} $(zsh_essembeh_gitstatus)%(!.#.$) ' +RPROMPT="%(?..%{$fg[red]%}%?%{$reset_color%})" diff --git a/zsh/oh-my-zsh/themes/evan.zsh-theme b/zsh/oh-my-zsh/themes/evan.zsh-theme new file mode 100644 index 0000000..02ca22d --- /dev/null +++ b/zsh/oh-my-zsh/themes/evan.zsh-theme @@ -0,0 +1,2 @@ +# Evan's minimal prompt +PROMPT='%m :: %2~ %B»%b ' diff --git a/zsh/oh-my-zsh/themes/fino-time.zsh-theme b/zsh/oh-my-zsh/themes/fino-time.zsh-theme new file mode 100644 index 0000000..c7e2d96 --- /dev/null +++ b/zsh/oh-my-zsh/themes/fino-time.zsh-theme @@ -0,0 +1,37 @@ +# fino-time.zsh-theme + +# Use with a dark background and 256-color terminal! +# Meant for people with RVM and git. Tested only on OS X 10.7. + +# You can set your computer name in the ~/.box-name file if you want. + +# Borrowing shamelessly from these oh-my-zsh themes: +# bira +# robbyrussell +# +# Also borrowing from http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/ + +function virtualenv_info { + [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' +} + +function prompt_char { + git branch >/dev/null 2>/dev/null && echo '⠠⠵' && return + echo '○' +} + +function box_name { + local box="${SHORT_HOST:-$HOST}" + [[ -f ~/.box-name ]] && box="$(< ~/.box-name)" + echo "${box:gs/%/%%}" +} + +PROMPT="╭─%{$FG[040]%}%n%{$reset_color%} %{$FG[239]%}at%{$reset_color%} %{$FG[033]%}$(box_name)%{$reset_color%} %{$FG[239]%}in%{$reset_color%} %{$terminfo[bold]$FG[226]%}%~%{$reset_color%}\$(git_prompt_info)\$(ruby_prompt_info) %D - %* +╰─\$(virtualenv_info)\$(prompt_char) " + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$FG[239]%}on%{$reset_color%} %{$fg[255]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$FG[202]%}✘✘✘" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$FG[040]%}✔" +ZSH_THEME_RUBY_PROMPT_PREFIX=" %{$FG[239]%}using%{$FG[243]%} ‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="›%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/fino.zsh-theme b/zsh/oh-my-zsh/themes/fino.zsh-theme new file mode 100644 index 0000000..9365a3c --- /dev/null +++ b/zsh/oh-my-zsh/themes/fino.zsh-theme @@ -0,0 +1,47 @@ +# fino.zsh-theme + +# Use with a dark background and 256-color terminal! +# Meant for people with rbenv and git. Tested only on OS X 10.7. + +# You can set your computer name in the ~/.box-name file if you want. + +# Borrowing shamelessly from these oh-my-zsh themes: +# bira +# robbyrussell +# +# Also borrowing from http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/ + +function virtualenv_prompt_info { + [[ -n ${VIRTUAL_ENV} ]] || return + echo "${ZSH_THEME_VIRTUALENV_PREFIX:=[}${VIRTUAL_ENV:t}${ZSH_THEME_VIRTUALENV_SUFFIX:=]}" +} + +function prompt_char { + command git branch &>/dev/null && echo "±" || echo '○' +} + +function box_name { + local box="${SHORT_HOST:-$HOST}" + [[ -f ~/.box-name ]] && box="$(< ~/.box-name)" + echo "${box:gs/%/%%}" +} + +local ruby_env='$(ruby_prompt_info)' +local git_info='$(git_prompt_info)' +local virtualenv_info='$(virtualenv_prompt_info)' +local prompt_char='$(prompt_char)' + +PROMPT="╭─${FG[040]}%n ${FG[239]}at ${FG[033]}$(box_name) ${FG[239]}in %B${FG[226]}%~%b${git_info}${ruby_env}${virtualenv_info} +╰─${prompt_char}%{$reset_color%} " + +ZSH_THEME_GIT_PROMPT_PREFIX=" ${FG[239]}on%{$reset_color%} ${FG[255]}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="${FG[202]}✘✘✘" +ZSH_THEME_GIT_PROMPT_CLEAN="${FG[040]}✔" + +ZSH_THEME_RUBY_PROMPT_PREFIX=" ${FG[239]}using${FG[243]} ‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="›%{$reset_color%}" + +export VIRTUAL_ENV_DISABLE_PROMPT=1 +ZSH_THEME_VIRTUALENV_PREFIX=" ${FG[239]}using${FG[243]} «" +ZSH_THEME_VIRTUALENV_SUFFIX="»%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/fishy.zsh-theme b/zsh/oh-my-zsh/themes/fishy.zsh-theme new file mode 100644 index 0000000..2b8d559 --- /dev/null +++ b/zsh/oh-my-zsh/themes/fishy.zsh-theme @@ -0,0 +1,35 @@ +# ZSH Theme emulating the Fish shell's default prompt. + +_fishy_collapsed_wd() { + local i pwd + pwd=("${(s:/:)PWD/#$HOME/~}") + if (( $#pwd > 1 )); then + for i in {1..$(($#pwd-1))}; do + if [[ "$pwd[$i]" = .* ]]; then + pwd[$i]="${${pwd[$i]}[1,2]}" + else + pwd[$i]="${${pwd[$i]}[1]}" + fi + done + fi + echo "${(j:/:)pwd}" +} + +local user_color='green'; [ $UID -eq 0 ] && user_color='red' +PROMPT='%n@%m %{$fg[$user_color]%}$(_fishy_collapsed_wd)%{$reset_color%}%(!.#.>) ' +PROMPT2='%{$fg[red]%}\ %{$reset_color%}' + +local return_status="%{$fg_bold[red]%}%(?..%?)%{$reset_color%}" +RPROMPT="${RPROMPT}"'${return_status}$(git_prompt_info)$(git_prompt_status)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX=" " +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg_bold[green]%}+" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg_bold[blue]%}!" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg_bold[red]%}-" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg_bold[magenta]%}>" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg_bold[yellow]%}#" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg_bold[cyan]%}?" diff --git a/zsh/oh-my-zsh/themes/flazz.zsh-theme b/zsh/oh-my-zsh/themes/flazz.zsh-theme new file mode 100644 index 0000000..e21b52e --- /dev/null +++ b/zsh/oh-my-zsh/themes/flazz.zsh-theme @@ -0,0 +1,19 @@ +if [ "$USERNAME" = "root" ] +then CARETCOLOR="red" +else CARETCOLOR="blue" +fi + +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='%m%{${fg_bold[magenta]}%} :: %{$reset_color%}%{${fg[green]}%}%3~ $(git_prompt_info)%{${fg_bold[$CARETCOLOR]}%}%#%{${reset_color}%} ' + +RPS1='$(vi_mode_prompt_info) ${return_code}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[cyan]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" + +MODE_INDICATOR="%{$fg_bold[magenta]%}<%{$reset_color%}%{$fg[magenta]%}<<%{$reset_color%}" + +# TODO use 265 colors +#MODE_INDICATOR="$FX[bold]$FG[020]<$FX[no_bold]%{$fg[blue]%}<<%{$reset_color%}" +# TODO use two lines if git diff --git a/zsh/oh-my-zsh/themes/fletcherm.zsh-theme b/zsh/oh-my-zsh/themes/fletcherm.zsh-theme new file mode 100644 index 0000000..e961885 --- /dev/null +++ b/zsh/oh-my-zsh/themes/fletcherm.zsh-theme @@ -0,0 +1,12 @@ +# Copied from old version of tonotdo's theme. LSCOLORS modified. +PROMPT='%{$fg_no_bold[cyan]%}%n%{$fg_no_bold[magenta]%}•%{$fg_no_bold[green]%}%3~$(git_prompt_info)%{$reset_color%}» ' +RPROMPT='[%*]' + +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[blue]%})" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[yellow]%}⚡%{$fg_bold[blue]%})" + +export LSCOLORS="exfxcxdxbxegedabagacad" +export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:' diff --git a/zsh/oh-my-zsh/themes/fox.zsh-theme b/zsh/oh-my-zsh/themes/fox.zsh-theme new file mode 100644 index 0000000..3ecd4e2 --- /dev/null +++ b/zsh/oh-my-zsh/themes/fox.zsh-theme @@ -0,0 +1,9 @@ +# fox.zsh-theme + +PROMPT='%{$fg[cyan]%}┌[%{$fg_bold[white]%}%n%{$reset_color%}%{$fg[cyan]%}☮%{$fg_bold[white]%}%M%{$reset_color%}%{$fg[cyan]%}]%{$fg[white]%}-%{$fg[cyan]%}(%{$fg_bold[white]%}%~%{$reset_color%}%{$fg[cyan]%})$(git_prompt_info) +└> % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="-[%{$reset_color%}%{$fg[white]%}git://%{$fg_bold[white]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}%{$fg[cyan]%}]-" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}✔%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/frisk.zsh-theme b/zsh/oh-my-zsh/themes/frisk.zsh-theme new file mode 100644 index 0000000..f4f934d --- /dev/null +++ b/zsh/oh-my-zsh/themes/frisk.zsh-theme @@ -0,0 +1,12 @@ +PROMPT=$' +%{$fg[blue]%}%/%{$reset_color%} $(git_prompt_info)$(bzr_prompt_info)%{$fg[white]%}[%n@%m]%{$reset_color%} %{$fg[white]%}[%T]%{$reset_color%} +%{$fg_bold[black]%}>%{$reset_color%} ' + +PROMPT2="%{$fg_bold[black]%}%_> %{$reset_color%}" + +GIT_CB="git::" +ZSH_THEME_SCM_PROMPT_PREFIX="%{$fg[green]%}[" +ZSH_THEME_GIT_PROMPT_PREFIX=$ZSH_THEME_SCM_PROMPT_PREFIX$GIT_CB +ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}*%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/frontcube.zsh-theme b/zsh/oh-my-zsh/themes/frontcube.zsh-theme new file mode 100644 index 0000000..f9488d0 --- /dev/null +++ b/zsh/oh-my-zsh/themes/frontcube.zsh-theme @@ -0,0 +1,13 @@ + +PROMPT=' +%{$fg_bold[gray]%}%~%{$fg_bold[blue]%}%{$fg_bold[blue]%} % %{$reset_color%} +%{$fg[green]%}➞ %{$reset_color%' + +RPROMPT='$(git_prompt_info) $(ruby_prompt_info)' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}[git:" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}] %{$fg[red]%}✖ %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%}] %{$fg[green]%}✔%{$reset_color%}" +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[green]%}[" +ZSH_THEME_RUBY_PROMPT_SUFFIX="]%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/funky.zsh-theme b/zsh/oh-my-zsh/themes/funky.zsh-theme new file mode 100644 index 0000000..574538f --- /dev/null +++ b/zsh/oh-my-zsh/themes/funky.zsh-theme @@ -0,0 +1,14 @@ +# Taken from Tassilo's Blog +# https://tsdh.wordpress.com/2007/12/06/my-funky-zsh-prompt/ + +local blue_op="%{$fg[blue]%}[%{$reset_color%}" +local blue_cp="%{$fg[blue]%}]%{$reset_color%}" +local path_p="${blue_op}%~${blue_cp}" +local user_host="${blue_op}%n@%m${blue_cp}" +local ret_status="${blue_op}%?${blue_cp}" +local hist_no="${blue_op}%h${blue_cp}" +local smiley="%(?,%{$fg[green]%}:%)%{$reset_color%},%{$fg[red]%}:(%{$reset_color%})" +PROMPT="╭─${path_p}─${user_host}─${ret_status}─${hist_no} +╰─${blue_op}${smiley}${blue_cp} %# " +local cur_cmd="${blue_op}%_${blue_cp}" +PROMPT2="${cur_cmd}> " diff --git a/zsh/oh-my-zsh/themes/fwalch.zsh-theme b/zsh/oh-my-zsh/themes/fwalch.zsh-theme new file mode 100644 index 0000000..33f851c --- /dev/null +++ b/zsh/oh-my-zsh/themes/fwalch.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg_bold[green]%} %{$fg[cyan]%}%c%{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX=" (%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/gallifrey.zsh-theme b/zsh/oh-my-zsh/themes/gallifrey.zsh-theme new file mode 100644 index 0000000..47b057f --- /dev/null +++ b/zsh/oh-my-zsh/themes/gallifrey.zsh-theme @@ -0,0 +1,11 @@ +# ZSH Theme - Preview: https://github.com/ohmyzsh/ohmyzsh/wiki/Themes#gallifrey +return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" +host_color="%(!.%{$fg[red]%}.%{$fg[green]%})" + +PROMPT="${host_color}%m%{$reset_color%} %2~ \$(git_prompt_info)%{$reset_color%}%B»%b " +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" + +unset return_code host_color diff --git a/zsh/oh-my-zsh/themes/gallois.zsh-theme b/zsh/oh-my-zsh/themes/gallois.zsh-theme new file mode 100644 index 0000000..bb97bfb --- /dev/null +++ b/zsh/oh-my-zsh/themes/gallois.zsh-theme @@ -0,0 +1,24 @@ +# Depends on the git plugin for work_in_progress() +(( $+functions[work_in_progress] )) || work_in_progress() {} + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# Customized git status, oh-my-zsh currently does not allow render dirty status before branch +git_custom_status() { + local branch=$(git_current_branch) + [[ -n "$branch" ]] || return 0 + echo "$(parse_git_dirty)\ +%{${fg_bold[yellow]}%}$(work_in_progress)%{$reset_color%}\ +${ZSH_THEME_GIT_PROMPT_PREFIX}${branch}${ZSH_THEME_GIT_PROMPT_SUFFIX}" +} + +# RVM component of prompt +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[red]%}[" +ZSH_THEME_RUBY_PROMPT_SUFFIX="]%{$reset_color%}" + +# Combine it all into a final right-side prompt +RPS1="\$(git_custom_status)\$(ruby_prompt_info)${RPS1:+ $RPS1}" +PROMPT='%{$fg[cyan]%}[%~% ]%(?.%{$fg[green]%}.%{$fg[red]%})%B$%b ' diff --git a/zsh/oh-my-zsh/themes/garyblessington.zsh-theme b/zsh/oh-my-zsh/themes/garyblessington.zsh-theme new file mode 100644 index 0000000..b4f84a7 --- /dev/null +++ b/zsh/oh-my-zsh/themes/garyblessington.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg[cyan]%}%c%{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%}% %{$reset_color%}: ' + +ZSH_THEME_GIT_PROMPT_PREFIX="(%{$fg[blue]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[red]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/gentoo.zsh-theme b/zsh/oh-my-zsh/themes/gentoo.zsh-theme new file mode 100644 index 0000000..b1aef21 --- /dev/null +++ b/zsh/oh-my-zsh/themes/gentoo.zsh-theme @@ -0,0 +1,30 @@ +autoload -Uz colors && colors + +autoload -Uz vcs_info +zstyle ':vcs_info:*' check-for-changes true +zstyle ':vcs_info:*' unstagedstr '%F{red}*' # display this when there are unstaged changes +zstyle ':vcs_info:*' stagedstr '%F{yellow}+' # display this when there are staged changes +zstyle ':vcs_info:*' actionformats '%F{5}(%F{2}%b%F{3}|%F{1}%a%c%u%m%F{5})%f ' +zstyle ':vcs_info:*' formats '%F{5}(%F{2}%b%c%u%m%F{5})%f ' +zstyle ':vcs_info:svn:*' branchformat '%b' +zstyle ':vcs_info:svn:*' actionformats '%F{5}(%F{2}%b%F{1}:%{3}%i%F{3}|%F{1}%a%c%u%m%F{5})%f ' +zstyle ':vcs_info:svn:*' formats '%F{5}(%F{2}%b%F{1}:%F{3}%i%c%u%m%F{5})%f ' +zstyle ':vcs_info:*' enable git cvs svn +zstyle ':vcs_info:git*+set-message:*' hooks untracked-git + ++vi-untracked-git() { + if command git status --porcelain 2>/dev/null | command grep -q '??'; then + hook_com[misc]='%F{red}?' + else + hook_com[misc]='' + fi +} + +gentoo_precmd() { + vcs_info +} + +autoload -U add-zsh-hook +add-zsh-hook precmd gentoo_precmd + +PROMPT='%(!.%B%F{red}.%B%F{green}%n@)%m %F{blue}%(!.%1~.%~) ${vcs_info_msg_0_}%F{blue}%(!.#.$)%k%b%f ' diff --git a/zsh/oh-my-zsh/themes/geoffgarside.zsh-theme b/zsh/oh-my-zsh/themes/geoffgarside.zsh-theme new file mode 100644 index 0000000..675ec72 --- /dev/null +++ b/zsh/oh-my-zsh/themes/geoffgarside.zsh-theme @@ -0,0 +1,5 @@ +# PROMPT="[%*] %n:%c $(git_prompt_info)%(!.#.$) " +PROMPT='[%*] %{$fg[cyan]%}%n%{$reset_color%}:%{$fg[green]%}%c%{$reset_color%}$(git_prompt_info) %(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[yellow]%}git:(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/gianu.zsh-theme b/zsh/oh-my-zsh/themes/gianu.zsh-theme new file mode 100644 index 0000000..faa8021 --- /dev/null +++ b/zsh/oh-my-zsh/themes/gianu.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='[%{$fg_bold[white]%}%n%{$reset_color%}@%{$fg_bold[red]%}%m%{$reset_color%} %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)%{$reset_color%}]$ ' + +ZSH_THEME_GIT_PROMPT_PREFIX="(%{$fg_bold[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX=")" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%} %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/gnzh.zsh-theme b/zsh/oh-my-zsh/themes/gnzh.zsh-theme new file mode 100644 index 0000000..1e6c4e9 --- /dev/null +++ b/zsh/oh-my-zsh/themes/gnzh.zsh-theme @@ -0,0 +1,43 @@ +# Based on bira theme + +setopt prompt_subst + +() { + +local PR_USER PR_USER_OP PR_PROMPT PR_HOST + +# Check the UID +if [[ $UID -ne 0 ]]; then # normal user + PR_USER='%F{green}%n%f' + PR_USER_OP='%F{green}%#%f' + PR_PROMPT='%f➤ %f' +else # root + PR_USER='%F{red}%n%f' + PR_USER_OP='%F{red}%#%f' + PR_PROMPT='%F{red}➤ %f' +fi + +# Check if we are on SSH or not +if [[ -n "$SSH_CLIENT" || -n "$SSH2_CLIENT" ]]; then + PR_HOST='%F{red}%M%f' # SSH +else + PR_HOST='%F{green}%M%f' # no SSH +fi + + +local return_code="%(?..%F{red}%? ↵%f)" + +local user_host="${PR_USER}%F{cyan}@${PR_HOST}" +local current_dir="%B%F{blue}%~%f%b" +local git_branch='$(git_prompt_info)' + +PROMPT="╭─${user_host} ${current_dir} \$(ruby_prompt_info) ${git_branch} +╰─$PR_PROMPT " +RPROMPT="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%F{yellow}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %f" +ZSH_THEME_RUBY_PROMPT_PREFIX="%F{red}‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="›%f" + +} diff --git a/zsh/oh-my-zsh/themes/gozilla.zsh-theme b/zsh/oh-my-zsh/themes/gozilla.zsh-theme new file mode 100644 index 0000000..593b8ec --- /dev/null +++ b/zsh/oh-my-zsh/themes/gozilla.zsh-theme @@ -0,0 +1,15 @@ +PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%} %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +RPROMPT='$(git_prompt_status)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[cyan]%} ✈" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%} ✭" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✗" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%} ➦" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%} ✂" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[grey]%} ✱" diff --git a/zsh/oh-my-zsh/themes/half-life.zsh-theme b/zsh/oh-my-zsh/themes/half-life.zsh-theme new file mode 100644 index 0000000..c4d7851 --- /dev/null +++ b/zsh/oh-my-zsh/themes/half-life.zsh-theme @@ -0,0 +1,93 @@ +# prompt style and colors based on Steve Losh's Prose theme: +# https://github.com/sjl/oh-my-zsh/blob/master/themes/prose.zsh-theme +# +# vcs_info modifications from Bart Trojanowski's zsh prompt: +# http://www.jukie.net/bart/blog/pimping-out-zsh-prompt +# +# git untracked files modification from Brian Carper: +# https://briancarper.net/blog/570/git-info-in-your-zsh-prompt + +#use extended color palette if available +if [[ $TERM = (*256color|*rxvt*) ]]; then + turquoise="%{${(%):-"%F{81}"}%}" + orange="%{${(%):-"%F{166}"}%}" + purple="%{${(%):-"%F{135}"}%}" + hotpink="%{${(%):-"%F{161}"}%}" + limegreen="%{${(%):-"%F{118}"}%}" +else + turquoise="%{${(%):-"%F{cyan}"}%}" + orange="%{${(%):-"%F{yellow}"}%}" + purple="%{${(%):-"%F{magenta}"}%}" + hotpink="%{${(%):-"%F{red}"}%}" + limegreen="%{${(%):-"%F{green}"}%}" +fi + +autoload -Uz vcs_info +# enable VCS systems you use +zstyle ':vcs_info:*' enable git svn + +# check-for-changes can be really slow. +# you should disable it, if you work with large repositories +zstyle ':vcs_info:*:prompt:*' check-for-changes true + +# set formats +# %b - branchname +# %u - unstagedstr (see below) +# %c - stagedstr (see below) +# %a - action (e.g. rebase-i) +# %R - repository path +# %S - path in the repository +PR_RST="%{${reset_color}%}" +FMT_BRANCH=" on ${turquoise}%b%u%c${PR_RST}" +FMT_ACTION=" performing a ${limegreen}%a${PR_RST}" +FMT_UNSTAGED="${orange} ●" +FMT_STAGED="${limegreen} ●" + +zstyle ':vcs_info:*:prompt:*' unstagedstr "${FMT_UNSTAGED}" +zstyle ':vcs_info:*:prompt:*' stagedstr "${FMT_STAGED}" +zstyle ':vcs_info:*:prompt:*' actionformats "${FMT_BRANCH}${FMT_ACTION}" +zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}" +zstyle ':vcs_info:*:prompt:*' nvcsformats "" + + +function steeef_chpwd { + PR_GIT_UPDATE=1 +} + +function steeef_preexec { + case "$2" in + *git*|*svn*) PR_GIT_UPDATE=1 ;; + esac +} + +function steeef_precmd { + (( PR_GIT_UPDATE )) || return + + # check for untracked files or updated submodules, since vcs_info doesn't + if [[ -n "$(git ls-files --other --exclude-standard 2>/dev/null)" ]]; then + PR_GIT_UPDATE=1 + FMT_BRANCH="${PM_RST} on ${turquoise}%b%u%c${hotpink} ●${PR_RST}" + else + FMT_BRANCH="${PM_RST} on ${turquoise}%b%u%c${PR_RST}" + fi + zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}" + + vcs_info 'prompt' + PR_GIT_UPDATE= +} + +# vcs_info running hooks +PR_GIT_UPDATE=1 + +autoload -U add-zsh-hook +add-zsh-hook chpwd steeef_chpwd +add-zsh-hook precmd steeef_precmd +add-zsh-hook preexec steeef_preexec + +# ruby prompt settings +ZSH_THEME_RUBY_PROMPT_PREFIX="with%F{red} " +ZSH_THEME_RUBY_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_RVM_PROMPT_OPTIONS="v g" + +setopt prompt_subst +PROMPT="${purple}%n%{$reset_color%} in ${limegreen}%~%{$reset_color%}\$(ruby_prompt_info)\$vcs_info_msg_0_${orange} λ%{$reset_color%} " diff --git a/zsh/oh-my-zsh/themes/humza.zsh-theme b/zsh/oh-my-zsh/themes/humza.zsh-theme new file mode 100644 index 0000000..1078862 --- /dev/null +++ b/zsh/oh-my-zsh/themes/humza.zsh-theme @@ -0,0 +1,26 @@ +# ZSH THEME Preview: https://skitch.com/huyy/rk979/humza.zshtheme + +let TotalBytes=0 +for Bytes in $(ls -l | grep "^-" | awk '{ print $5 }') +do + let TotalBytes=$TotalBytes+$Bytes +done + # should it say b, kb, Mb, or Gb +if [ $TotalBytes -lt 1024 ]; then + TotalSize=$(echo -e "scale=3 \n$TotalBytes \nquit" | bc) + suffix="b" +elif [ $TotalBytes -lt 1048576 ]; then + TotalSize=$(echo -e "scale=3 \n$TotalBytes/1024 \nquit" | bc) + suffix="kb" +elif [ $TotalBytes -lt 1073741824 ]; then + TotalSize=$(echo -e "scale=3 \n$TotalBytes/1048576 \nquit" | bc) + suffix="Mb" +else + TotalSize=$(echo -e "scale=3 \n$TotalBytes/1073741824 \nquit" | bc) + suffix="Gb" +fi + +PROMPT='%{$reset_color%}%n %{$fg[green]%}{%{$reset_color%}%~%{$fg[green]%}}%{$reset_color%}$(git_prompt_info) greetings, earthling %{$fg[green]%}[%{$reset_color%}%{$TotalSize%}%{$suffix%}%{$fg[green]%}]%{$fg[red]%}$%{$reset_color%} ☞ ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[red]%}±(" +ZSH_THEME_GIT_PROMPT_SUFFIX=");%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/imajes.zsh-theme b/zsh/oh-my-zsh/themes/imajes.zsh-theme new file mode 100644 index 0000000..88c35b6 --- /dev/null +++ b/zsh/oh-my-zsh/themes/imajes.zsh-theme @@ -0,0 +1,5 @@ +# Found on the ZshWiki +# http://zshwiki.org/home/config/prompt +# + +PROMPT="%{$fg[red]%}%%%{$reset_color%} " \ No newline at end of file diff --git a/zsh/oh-my-zsh/themes/intheloop.zsh-theme b/zsh/oh-my-zsh/themes/intheloop.zsh-theme new file mode 100644 index 0000000..7a98db2 --- /dev/null +++ b/zsh/oh-my-zsh/themes/intheloop.zsh-theme @@ -0,0 +1,23 @@ +# A multiline prompt with username, hostname, full path, return status, git branch, git dirty status, git remote status + +local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}" + +local host_color="green" +if [ -n "$SSH_CLIENT" ]; then + local host_color="red" +fi + +PROMPT=' +%{$fg_bold[grey]%}[%{$reset_color%}%{$fg_bold[${host_color}]%}%n@%m%{$reset_color%}%{$fg_bold[grey]%}]%{$reset_color%} %{$fg_bold[blue]%}%10c%{$reset_color%} $(git_prompt_info) $(git_remote_status) +%{$fg_bold[cyan]%}❯%{$reset_color%} ' + + +RPROMPT='${return_status}%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[grey]%}(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[grey]%}) %{$fg[yellow]%}⚡%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[grey]%})" +ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE="%{$fg_bold[magenta]%}↓%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE="%{$fg_bold[magenta]%}↑%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIVERGED_REMOTE="%{$fg_bold[magenta]%}↕%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/itchy.zsh-theme b/zsh/oh-my-zsh/themes/itchy.zsh-theme new file mode 100644 index 0000000..41a42e8 --- /dev/null +++ b/zsh/oh-my-zsh/themes/itchy.zsh-theme @@ -0,0 +1,18 @@ +local smiley="%(?,%{$fg[green]%}☺%{$reset_color%},%{$fg[red]%}☹%{$reset_color%})" + +local user="%{$fg[cyan]%}%n%{$reset_color%}" +local host="%{$fg[cyan]%}@%m%{$reset_color%}" +local pwd="%{$fg[yellow]%}%~%{$reset_color%}" + +PROMPT='${user}${host} ${pwd} +${smiley} ' + +RPROMPT='$(ruby_prompt_info) %{$fg[white]%}$(git_prompt_info)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%} ✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%} ✔%{$reset_color%}" + +ZSH_THEME_RUBY_PROMPT_PREFIX="" +ZSH_THEME_RUBY_PROMPT_SUFFIX="" diff --git a/zsh/oh-my-zsh/themes/jaischeema.zsh-theme b/zsh/oh-my-zsh/themes/jaischeema.zsh-theme new file mode 100644 index 0000000..50d2bc4 --- /dev/null +++ b/zsh/oh-my-zsh/themes/jaischeema.zsh-theme @@ -0,0 +1,12 @@ +# jaischeema.zsh-theme + +PROMPT='%{$fg_bold[magenta]%}%m%{$reset_color%} at %{$fg_bold[green]%}%~%{$reset_color%} %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%}% %{$reset_color%}%{$fg[red]%}❯%{$reset_color%} ' +RPROMPT='$(ruby_prompt_info)' + +ZSH_THEME_GIT_PROMPT_PREFIX="±(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%}) " + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[red]%}" +ZSH_THEME_RUBY_PROMPT_SUFFIX="%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/jbergantine.zsh-theme b/zsh/oh-my-zsh/themes/jbergantine.zsh-theme new file mode 100644 index 0000000..8e9a8ee --- /dev/null +++ b/zsh/oh-my-zsh/themes/jbergantine.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%} %{$fg[cyan]%}%c %{$fg_bold[white]%}$(git_prompt_info)%{$fg_bold[white]%} % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[white]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[white]%})" diff --git a/zsh/oh-my-zsh/themes/jispwoso.zsh-theme b/zsh/oh-my-zsh/themes/jispwoso.zsh-theme new file mode 100644 index 0000000..7484305 --- /dev/null +++ b/zsh/oh-my-zsh/themes/jispwoso.zsh-theme @@ -0,0 +1,10 @@ +local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ %s)" +PROMPT=$'%{$fg[green]%}%n@%m: %{$reset_color%}%{$fg[blue]%}%/ %{$reset_color%}%{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%} +${ret_status} %{$reset_color%} ' + +PROMPT2="%{$fg_blod[black]%}%_> %{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/jnrowe.zsh-theme b/zsh/oh-my-zsh/themes/jnrowe.zsh-theme new file mode 100644 index 0000000..5a5ab34 --- /dev/null +++ b/zsh/oh-my-zsh/themes/jnrowe.zsh-theme @@ -0,0 +1,37 @@ +autoload -U add-zsh-hook +autoload -Uz vcs_info + +zstyle ':vcs_info:*' actionformats \ + '%F{5}(%f%s%F{5})%F{3}-%F{5}[%F{2}%b%F{3}|%F{1}%a%F{5}]%f ' +zstyle ':vcs_info:*' formats '%F{2}%s%F{7}:%F{2}(%F{1}%b%F{2})%f ' +zstyle ':vcs_info:*' enable git + +add-zsh-hook precmd prompt_vcs + +prompt_vcs () { + vcs_info + + if [ "${vcs_info_msg_0_}" = "" ]; then + dir_status="%F{2}→%f" + elif [[ $(git diff --cached --name-status 2>/dev/null ) != "" ]]; then + dir_status="%F{1}▶%f" + elif [[ $(git diff --name-status 2>/dev/null ) != "" ]]; then + dir_status="%F{3}▶%f" + else + dir_status="%F{2}▶%f" + fi +} + +function { + if [[ -n "$SSH_CLIENT" ]]; then + PROMPT_HOST=" ($HOST)" + else + PROMPT_HOST='' + fi +} + +local ret_status="%(?:%{$fg_bold[green]%}Ξ:%{$fg_bold[red]%}%S↑%s%?)" + +PROMPT='${ret_status}%{$fg[blue]%}${PROMPT_HOST}%{$fg_bold[green]%} %{$fg_bold[yellow]%}%2~ ${vcs_info_msg_0_}${dir_status}%{$reset_color%} ' + +# vim: set ft=zsh ts=4 sw=4 et: diff --git a/zsh/oh-my-zsh/themes/jonathan.zsh-theme b/zsh/oh-my-zsh/themes/jonathan.zsh-theme new file mode 100644 index 0000000..e8c4908 --- /dev/null +++ b/zsh/oh-my-zsh/themes/jonathan.zsh-theme @@ -0,0 +1,124 @@ +function theme_precmd { + local TERMWIDTH=$(( COLUMNS - ${ZLE_RPROMPT_INDENT:-1} )) + + PR_FILLBAR="" + PR_PWDLEN="" + + local promptsize=${#${(%):---(%n@%m:%l)---()--}} + local rubypromptsize=${#${(%)$(ruby_prompt_info)}} + local pwdsize=${#${(%):-%~}} + + # Truncate the path if it's too long. + if (( promptsize + rubypromptsize + pwdsize > TERMWIDTH )); then + (( PR_PWDLEN = TERMWIDTH - promptsize )) + elif [[ "${langinfo[CODESET]}" = UTF-8 ]]; then + PR_FILLBAR="\${(l:$(( TERMWIDTH - (promptsize + rubypromptsize + pwdsize) ))::${PR_HBAR}:)}" + else + PR_FILLBAR="${PR_SHIFT_IN}\${(l:$(( TERMWIDTH - (promptsize + rubypromptsize + pwdsize) ))::${altchar[q]:--}:)}${PR_SHIFT_OUT}" + fi +} + +function theme_preexec { + setopt local_options extended_glob + if [[ "$TERM" = "screen" ]]; then + local CMD=${1[(wr)^(*=*|sudo|-*)]} + echo -n "\ek$CMD\e\\" + fi +} + +autoload -U add-zsh-hook +add-zsh-hook precmd theme_precmd +add-zsh-hook preexec theme_preexec + + +# Set the prompt + +# Need this so the prompt will work. +setopt prompt_subst + +# See if we can use colors. +autoload zsh/terminfo +for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE GREY; do + typeset -g PR_$color="%{$terminfo[bold]$fg[${(L)color}]%}" + typeset -g PR_LIGHT_$color="%{$fg[${(L)color}]%}" +done +PR_NO_COLOUR="%{$terminfo[sgr0]%}" + +# Modify Git prompt +ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} %{%G✚%}" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} %{%G✹%}" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} %{%G✖%}" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} %{%G➜%}" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} %{%G═%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} %{%G✭%}" + +# Use extended characters to look nicer if supported. +if [[ "${langinfo[CODESET]}" = UTF-8 ]]; then + PR_SET_CHARSET="" + PR_HBAR="─" + PR_ULCORNER="┌" + PR_LLCORNER="└" + PR_LRCORNER="┘" + PR_URCORNER="┐" +else + typeset -g -A altchar + set -A altchar ${(s..)terminfo[acsc]} + # Some stuff to help us draw nice lines + PR_SET_CHARSET="%{$terminfo[enacs]%}" + PR_SHIFT_IN="%{$terminfo[smacs]%}" + PR_SHIFT_OUT="%{$terminfo[rmacs]%}" + PR_HBAR="${PR_SHIFT_IN}${altchar[q]:--}${PR_SHIFT_OUT}" + PR_ULCORNER="${PR_SHIFT_IN}${altchar[l]:--}${PR_SHIFT_OUT}" + PR_LLCORNER="${PR_SHIFT_IN}${altchar[m]:--}${PR_SHIFT_OUT}" + PR_LRCORNER="${PR_SHIFT_IN}${altchar[j]:--}${PR_SHIFT_OUT}" + PR_URCORNER="${PR_SHIFT_IN}${altchar[k]:--}${PR_SHIFT_OUT}" +fi + +# Decide if we need to set titlebar text. +case $TERM in + xterm*) + PR_TITLEBAR=$'%{\e]0;%(!.-=*[ROOT]*=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\a%}' + ;; + screen) + PR_TITLEBAR=$'%{\e_screen \005 (\005t) | %(!.-=[ROOT]=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\e\\%}' + ;; + *) + PR_TITLEBAR="" + ;; +esac + +# Decide whether to set a screen title +if [[ "$TERM" = "screen" ]]; then + PR_STITLE=$'%{\ekzsh\e\\%}' +else + PR_STITLE="" +fi + +# Finally, the prompt. +PROMPT='${PR_SET_CHARSET}${PR_STITLE}${(e)PR_TITLEBAR}\ +${PR_CYAN}${PR_ULCORNER}${PR_HBAR}${PR_GREY}(\ +${PR_GREEN}%${PR_PWDLEN}<...<%~%<<\ +${PR_GREY})$(ruby_prompt_info)${PR_CYAN}${PR_HBAR}${PR_HBAR}${(e)PR_FILLBAR}${PR_HBAR}${PR_GREY}(\ +${PR_CYAN}%(!.%SROOT%s.%n)${PR_GREY}@${PR_GREEN}%m:%l\ +${PR_GREY})${PR_CYAN}${PR_HBAR}${PR_URCORNER}\ + +${PR_CYAN}${PR_LLCORNER}${PR_BLUE}${PR_HBAR}(\ +${PR_YELLOW}%D{%H:%M:%S}\ +${PR_LIGHT_BLUE}%{$reset_color%}$(git_prompt_info)$(git_prompt_status)${PR_BLUE})${PR_CYAN}${PR_HBAR}\ +${PR_HBAR}\ +>${PR_NO_COLOUR} ' + +# display exitcode on the right when > 0 +return_code="%(?..%{$fg[red]%}%? ↵ %{$reset_color%})" +RPROMPT=' $return_code${PR_CYAN}${PR_HBAR}${PR_BLUE}${PR_HBAR}\ +(${PR_YELLOW}%D{%a,%b%d}${PR_BLUE})${PR_HBAR}${PR_CYAN}${PR_LRCORNER}${PR_NO_COLOUR}' + +PS2='${PR_CYAN}${PR_HBAR}\ +${PR_BLUE}${PR_HBAR}(\ +${PR_LIGHT_GREEN}%_${PR_BLUE})${PR_HBAR}\ +${PR_CYAN}${PR_HBAR}${PR_NO_COLOUR} ' diff --git a/zsh/oh-my-zsh/themes/josh.zsh-theme b/zsh/oh-my-zsh/themes/josh.zsh-theme new file mode 100644 index 0000000..ea051c5 --- /dev/null +++ b/zsh/oh-my-zsh/themes/josh.zsh-theme @@ -0,0 +1,43 @@ +grey='\e[0;90m' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$grey%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$grey%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$grey%})" + +function josh_prompt { + (( spare_width = ${COLUMNS} )) + prompt=" " + + branch=$(git_current_branch) + ruby_version=$(ruby_prompt_info) + path_size=${#PWD} + branch_size=${#branch} + ruby_size=${#ruby_version} + user_machine_size=${#${(%):-%n@%m-}} + + if [[ ${#branch} -eq 0 ]] + then (( ruby_size = ruby_size + 1 )) + else + (( branch_size = branch_size + 4 )) + if [[ -n $(git status -s 2> /dev/null) ]]; then + (( branch_size = branch_size + 2 )) + fi + fi + + (( spare_width = ${spare_width} - (${user_machine_size} + ${path_size} + ${branch_size} + ${ruby_size}) )) + + while [ ${#prompt} -lt $spare_width ]; do + prompt=" $prompt" + done + + prompt="%{%F{green}%}$PWD$prompt%{%F{red}%}$(ruby_prompt_info)%{$reset_color%} $(git_current_branch)" + + echo $prompt +} + +setopt prompt_subst + +PROMPT=' +%n@%m $(josh_prompt) +%(?,%{%F{green}%},%{%F{red}%})⚡%{$reset_color%} ' diff --git a/zsh/oh-my-zsh/themes/jreese.zsh-theme b/zsh/oh-my-zsh/themes/jreese.zsh-theme new file mode 100644 index 0000000..de42a10 --- /dev/null +++ b/zsh/oh-my-zsh/themes/jreese.zsh-theme @@ -0,0 +1,14 @@ +if [ $UID -eq 0 ]; then NCOLOR="red"; else NCOLOR="green"; fi +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='%{$fg[$NCOLOR]%}%n%{$fg[green]%}@%m%{$reset_color%} %~ \ +$(git_prompt_info)\ +%{$fg[red]%}%(!.#.»)%{$reset_color%} ' +PROMPT2='%{$fg[red]%}\ %{$reset_color%}' +RPS1='${return_code}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}±%{$fg[yellow]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="⚡" + diff --git a/zsh/oh-my-zsh/themes/jtriley.zsh-theme b/zsh/oh-my-zsh/themes/jtriley.zsh-theme new file mode 100644 index 0000000..0f5b16f --- /dev/null +++ b/zsh/oh-my-zsh/themes/jtriley.zsh-theme @@ -0,0 +1,2 @@ +PROMPT="%{$fg_bold[cyan]%}%T%{$fg_bold[green]%} %{$fg_bold[white]%}%n%{$fg[magenta]%}@%{$fg_bold[white]%}%m %{$fg_bold[green]%}%d +%{$fg_bold[yellow]%}%% %{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/juanghurtado.zsh-theme b/zsh/oh-my-zsh/themes/juanghurtado.zsh-theme new file mode 100644 index 0000000..dbdfde7 --- /dev/null +++ b/zsh/oh-my-zsh/themes/juanghurtado.zsh-theme @@ -0,0 +1,41 @@ +# Color shortcuts +RED=$fg[red] +YELLOW=$fg[yellow] +GREEN=$fg[green] +WHITE=$fg[white] +BLUE=$fg[blue] +RED_BOLD=$fg_bold[red] +YELLOW_BOLD=$fg_bold[yellow] +GREEN_BOLD=$fg_bold[green] +WHITE_BOLD=$fg_bold[white] +BLUE_BOLD=$fg_bold[blue] +RESET_COLOR=$reset_color + +# Format for git_prompt_info() +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX="" + +# Format for parse_git_dirty() +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$RED%}(*)" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# Format for git_prompt_status() +ZSH_THEME_GIT_PROMPT_UNMERGED=" %{$RED%}unmerged" +ZSH_THEME_GIT_PROMPT_DELETED=" %{$RED%}deleted" +ZSH_THEME_GIT_PROMPT_RENAMED=" %{$YELLOW%}renamed" +ZSH_THEME_GIT_PROMPT_MODIFIED=" %{$YELLOW%}modified" +ZSH_THEME_GIT_PROMPT_ADDED=" %{$GREEN%}added" +ZSH_THEME_GIT_PROMPT_UNTRACKED=" %{$WHITE%}untracked" + +# Format for git_prompt_ahead() +ZSH_THEME_GIT_PROMPT_AHEAD=" %{$RED%}(!)" + +# Format for git_prompt_long_sha() and git_prompt_short_sha() +ZSH_THEME_GIT_PROMPT_SHA_BEFORE=" %{$WHITE%}[%{$YELLOW%}" +ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$WHITE%}]" + +# Prompt format +PROMPT=' +%{$GREEN_BOLD%}%n@%m%{$WHITE%}:%{$YELLOW%}%~%u$(parse_git_dirty)$(git_prompt_ahead)%{$RESET_COLOR%} +%{$BLUE%}>%{$RESET_COLOR%} ' +RPROMPT='%{$GREEN_BOLD%}$(git_current_branch)$(git_prompt_short_sha)$(git_prompt_status)%{$RESET_COLOR%}' diff --git a/zsh/oh-my-zsh/themes/junkfood.zsh-theme b/zsh/oh-my-zsh/themes/junkfood.zsh-theme new file mode 100644 index 0000000..01fae4b --- /dev/null +++ b/zsh/oh-my-zsh/themes/junkfood.zsh-theme @@ -0,0 +1,30 @@ +# Totally ripped off Dallas theme + +# Grab the current date (%W) and time (%t): +JUNKFOOD_TIME_="%{$fg_bold[red]%}#%{$fg_bold[white]%}( %{$fg_bold[yellow]%}%W%{$reset_color%}@%{$fg_bold[white]%}%t )( %{$reset_color%}" + +# Grab the current machine name +JUNKFOOD_MACHINE_="%{$fg_bold[blue]%}%m%{$fg[white]%} ):%{$reset_color%}" + +# Grab the current username +JUNKFOOD_CURRENT_USER_="%{$fg_bold[green]%}%n%{$reset_color%}" + +# Grab the current filepath, use shortcuts: ~/Desktop +# Append the current git branch, if in a git repository: ~aw@master +JUNKFOOD_LOCA_="%{$fg[cyan]%}%~\$(git_prompt_info)%{$reset_color%}" + +# For the git prompt, use a white @ and blue text for the branch name +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[white]%}@%{$fg_bold[white]%}" + +# Close it all off by resetting the color and styles. +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" + +# Do nothing if the branch is clean (no changes). +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[green]%}✔" + +# Add 3 cyan ✗s if this branch is diiirrrty! Dirty branch! +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}✗✗✗" + +# Put it all together! +PROMPT="$JUNKFOOD_TIME_$JUNKFOOD_CURRENT_USER_@$JUNKFOOD_MACHINE_$JUNKFOOD_LOCA_ + " diff --git a/zsh/oh-my-zsh/themes/kafeitu.zsh-theme b/zsh/oh-my-zsh/themes/kafeitu.zsh-theme new file mode 100644 index 0000000..af96f5e --- /dev/null +++ b/zsh/oh-my-zsh/themes/kafeitu.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%n%{$fg[cyan]%}@%{$fg_bold[green]%}%m %{$fg_bold[green]%} %{$fg[cyan]%}%~ %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/kardan.zsh-theme b/zsh/oh-my-zsh/themes/kardan.zsh-theme new file mode 100644 index 0000000..9a3d591 --- /dev/null +++ b/zsh/oh-my-zsh/themes/kardan.zsh-theme @@ -0,0 +1,12 @@ +# Simple theme based on my old zsh settings. + +function get_host { + echo '@'$HOST +} + +PROMPT='> ' +RPROMPT='%~$(git_prompt_info)$(get_host)' + +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_PREFIX="(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")" \ No newline at end of file diff --git a/zsh/oh-my-zsh/themes/kennethreitz.zsh-theme b/zsh/oh-my-zsh/themes/kennethreitz.zsh-theme new file mode 100644 index 0000000..b255a8d --- /dev/null +++ b/zsh/oh-my-zsh/themes/kennethreitz.zsh-theme @@ -0,0 +1,15 @@ +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='$(virtualenv_prompt_info)%{%}%{$fg[green]%}%c \ +$(git_prompt_info)\ +\ +%{$fg[red]%}%(!.#.»)%{$reset_color%} ' +PROMPT2='%{$fg[red]%}\ %{$reset_color%}' +RPS1='%{$fg[blue]%}%~%{$reset_color%} ${return_code} ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$fg[yellow]%}" +ZSH_THEME_VIRTUAL_ENV_PROMPT_PREFIX="%{$reset_color%}%{%}%{$fg[blue]%}" +ZSH_THEME_VIRTUAL_ENV_PROMPT_SUFFIX="!%{$reset_color%} " \ No newline at end of file diff --git a/zsh/oh-my-zsh/themes/kiwi.zsh-theme b/zsh/oh-my-zsh/themes/kiwi.zsh-theme new file mode 100644 index 0000000..94f0ffc --- /dev/null +++ b/zsh/oh-my-zsh/themes/kiwi.zsh-theme @@ -0,0 +1,10 @@ +(( $+functions[battery_pct_prompt] )) || function battery_pct_prompt { } + +PROMPT='%{$fg_bold[green]%}┌[%{$fg_bold[cyan]%}kiwish-4.2%{$fg_bold[green]%}]-(%{$fg_bold[white]%}%2~%{$fg_bold[green]%})-$(git_prompt_info)$(svn_prompt_info)$(battery_pct_prompt) +└> % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="[%{$reset_color%}%{$fg[white]%}git:%{$fg_bold[white]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$fg_bold[green]%}]-" + +ZSH_THEME_SVN_PROMPT_PREFIX="[%{$reset_color%}%{$fg[white]%}svn:%{$fg_bold[white]%}/" +ZSH_THEME_SVN_PROMPT_SUFFIX="%{$fg_bold[green]%}]-" diff --git a/zsh/oh-my-zsh/themes/kolo.zsh-theme b/zsh/oh-my-zsh/themes/kolo.zsh-theme new file mode 100644 index 0000000..e07be75 --- /dev/null +++ b/zsh/oh-my-zsh/themes/kolo.zsh-theme @@ -0,0 +1,24 @@ +autoload -Uz vcs_info + +zstyle ':vcs_info:*' stagedstr '%F{green}●' +zstyle ':vcs_info:*' unstagedstr '%F{yellow}●' +zstyle ':vcs_info:*' check-for-changes true +zstyle ':vcs_info:svn:*' branchformat '%b' +zstyle ':vcs_info:svn:*' formats ' [%b%F{1}:%F{11}%i%c%u%B%F{green}]' +zstyle ':vcs_info:*' enable git svn + +theme_precmd () { + if [[ -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then + zstyle ':vcs_info:git:*' formats ' [%b%c%u%B%F{green}]' + else + zstyle ':vcs_info:git:*' formats ' [%b%c%u%B%F{red}●%F{green}]' + fi + + vcs_info +} + +setopt prompt_subst +PROMPT='%B%F{magenta}%c%B%F{green}${vcs_info_msg_0_}%B%F{magenta} %{$reset_color%}%% ' + +autoload -U add-zsh-hook +add-zsh-hook precmd theme_precmd diff --git a/zsh/oh-my-zsh/themes/kphoen.zsh-theme b/zsh/oh-my-zsh/themes/kphoen.zsh-theme new file mode 100644 index 0000000..8e8894a --- /dev/null +++ b/zsh/oh-my-zsh/themes/kphoen.zsh-theme @@ -0,0 +1,43 @@ +# kphoen.zsh-theme + +if [[ "$TERM" != "dumb" ]] && [[ "$DISABLE_LS_COLORS" != "true" ]]; then + PROMPT='[%{$fg[red]%}%n%{$reset_color%}@%{$fg[magenta]%}%m%{$reset_color%}:%{$fg[blue]%}%~%{$reset_color%}$(git_prompt_info)] +%# ' + + ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[green]%}" + ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" + ZSH_THEME_GIT_PROMPT_DIRTY="" + ZSH_THEME_GIT_PROMPT_CLEAN="" + + # display exitcode on the right when >0 + return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + + RPROMPT='${return_code}$(git_prompt_status)%{$reset_color%}' + + ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚" + ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹" + ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖" + ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜" + ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═" + ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" +else + PROMPT='[%n@%m:%~$(git_prompt_info)] +%# ' + + ZSH_THEME_GIT_PROMPT_PREFIX=" on" + ZSH_THEME_GIT_PROMPT_SUFFIX="" + ZSH_THEME_GIT_PROMPT_DIRTY="" + ZSH_THEME_GIT_PROMPT_CLEAN="" + + # display exitcode on the right when >0 + return_code="%(?..%? ↵)" + + RPROMPT='${return_code}$(git_prompt_status)' + + ZSH_THEME_GIT_PROMPT_ADDED=" ✚" + ZSH_THEME_GIT_PROMPT_MODIFIED=" ✹" + ZSH_THEME_GIT_PROMPT_DELETED=" ✖" + ZSH_THEME_GIT_PROMPT_RENAMED=" ➜" + ZSH_THEME_GIT_PROMPT_UNMERGED=" ═" + ZSH_THEME_GIT_PROMPT_UNTRACKED=" ✭" +fi diff --git a/zsh/oh-my-zsh/themes/lambda.zsh-theme b/zsh/oh-my-zsh/themes/lambda.zsh-theme new file mode 100644 index 0000000..6e67773 --- /dev/null +++ b/zsh/oh-my-zsh/themes/lambda.zsh-theme @@ -0,0 +1,4 @@ +PROMPT='λ %~/ $(git_prompt_info)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " diff --git a/zsh/oh-my-zsh/themes/linuxonly.zsh-theme b/zsh/oh-my-zsh/themes/linuxonly.zsh-theme new file mode 100644 index 0000000..98572b9 --- /dev/null +++ b/zsh/oh-my-zsh/themes/linuxonly.zsh-theme @@ -0,0 +1,58 @@ +autoload -U add-zsh-hook +autoload -Uz vcs_info + +local c0=$(printf "\033[0m") +local c1=$(printf "\033[38;5;215m") +local c2=$(printf "\033[38;5;209m") +local c3=$(printf "\033[38;5;203m") +local c4=$(printf "\033[33;4m") +local c5=$(printf "\033[38;5;137m") +local c6=$(printf "\033[38;5;240m") +local c7=$(printf "\033[38;5;149m") +local c8=$(printf "\033[38;5;126m") +local c9=$(printf "\033[38;5;162m") + +if [ "$TERM" = "linux" ]; then + c1=$(printf "\033[34;1m") + c2=$(printf "\033[35m") + c3=$(printf "\033[31m") + c4=$(printf "\033[31;1m") + c5=$(printf "\033[32m") + c6=$(printf "\033[32;1m") + c7=$(printf "\033[33m") + c8=$(printf "\033[33;1m") + c9=$(printf "\033[34m") +fi + +zstyle ':vcs_info:*' actionformats \ + '%{$c8%}(%f%s)%{$c7%}-%F{5}[%F{2}%b%F{3}|%F{1}%a%F{5}]%f ' +zstyle ':vcs_info:*' formats \ + "%{$c8%}%s%{$c7%}:%{$c7%}(%{$c9%}%b%{$c7%})%f " +zstyle ':vcs_info:*' enable git + +add-zsh-hook precmd prompt_jnrowe_precmd + +prompt_jnrowe_precmd () { + vcs_info + + if [ "${vcs_info_msg_0_}" = "" ]; then + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${dir_status} ${ret_status}%{$reset_color%} +> ' + elif [[ $(git diff --cached --name-status 2>/dev/null ) != "" ]]; then + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${vcs_info_msg_0_} +${dir_status} ${vcs_info_msg_0_}%{$reset_color%} +> ' + elif [[ $(git diff --name-status 2>/dev/null ) != "" ]]; then + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${vcs_info_msg_0_} +${dir_status}%{$reset_color%} +%{$c9%}·>%{$c0%} ' + else + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${vcs_info_msg_0_} +${dir_status} ${vcs_info_msg_0_}%{$reset_color%} +> ' + fi +} diff --git a/zsh/oh-my-zsh/themes/lukerandall.zsh-theme b/zsh/oh-my-zsh/themes/lukerandall.zsh-theme new file mode 100644 index 0000000..cdecd28 --- /dev/null +++ b/zsh/oh-my-zsh/themes/lukerandall.zsh-theme @@ -0,0 +1,24 @@ +# ZSH Theme - Preview: https://cl.ly/f701d00760f8059e06dc +# Thanks to gallifrey, upon whose theme this is based + +local return_code="%(?..%{$fg_bold[red]%}%? ↵%{$reset_color%})" + +function my_git_prompt_info() { + ref=$(git symbolic-ref HEAD 2> /dev/null) || return + GIT_STATUS=$(git_prompt_status) + [[ -n $GIT_STATUS ]] && GIT_STATUS=" $GIT_STATUS" + echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$GIT_STATUS$ZSH_THEME_GIT_PROMPT_SUFFIX" +} + +PROMPT='%{$fg_bold[green]%}%n@%m%{$reset_color%} %{$fg_bold[blue]%}%2~%{$reset_color%} $(my_git_prompt_info)%{$reset_color%}%B»%b ' +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%%" +ZSH_THEME_GIT_PROMPT_ADDED="+" +ZSH_THEME_GIT_PROMPT_MODIFIED="*" +ZSH_THEME_GIT_PROMPT_RENAMED="~" +ZSH_THEME_GIT_PROMPT_DELETED="!" +ZSH_THEME_GIT_PROMPT_UNMERGED="?" + diff --git a/zsh/oh-my-zsh/themes/macovsky-ruby.zsh-theme b/zsh/oh-my-zsh/themes/macovsky-ruby.zsh-theme new file mode 120000 index 0000000..d3ee200 --- /dev/null +++ b/zsh/oh-my-zsh/themes/macovsky-ruby.zsh-theme @@ -0,0 +1 @@ +macovsky.zsh-theme \ No newline at end of file diff --git a/zsh/oh-my-zsh/themes/macovsky.zsh-theme b/zsh/oh-my-zsh/themes/macovsky.zsh-theme new file mode 100644 index 0000000..f527e58 --- /dev/null +++ b/zsh/oh-my-zsh/themes/macovsky.zsh-theme @@ -0,0 +1,12 @@ +# ZSH Theme - Preview: https://i.gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='%{$fg[green]%}%~%{$reset_color%} $(ruby_prompt_info) $(git_prompt_info)%{$reset_color%}%B$%b ' +RPROMPT="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" + + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[red]%}‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="› %{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/maran.zsh-theme b/zsh/oh-my-zsh/themes/maran.zsh-theme new file mode 100644 index 0000000..fddb7bc --- /dev/null +++ b/zsh/oh-my-zsh/themes/maran.zsh-theme @@ -0,0 +1,6 @@ +# Theme with full path names and hostname +# Handy if you work on different servers all the time; +PROMPT='%{$fg[cyan]%}%n%{$reset_color%}@%{$fg[yellow]%}%M:%{$fg[green]%}%/%{$reset_color%}$(git_prompt_info) %(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[cyan]%}git:(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/mgutz.zsh-theme b/zsh/oh-my-zsh/themes/mgutz.zsh-theme new file mode 100644 index 0000000..dcf3270 --- /dev/null +++ b/zsh/oh-my-zsh/themes/mgutz.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg_bold[magenta]%}%1~$(git_prompt_info) %{$fg_bold[magenta]%}%# %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[yellow]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="*]" +ZSH_THEME_GIT_PROMPT_CLEAN="]" diff --git a/zsh/oh-my-zsh/themes/mh.zsh-theme b/zsh/oh-my-zsh/themes/mh.zsh-theme new file mode 100644 index 0000000..2b2cc9b --- /dev/null +++ b/zsh/oh-my-zsh/themes/mh.zsh-theme @@ -0,0 +1,24 @@ +# mh theme +# preview: https://cl.ly/1y2x0W0E3t2C0F29043z + +# features: +# path is autoshortened to ~30 characters +# displays git status (if applicable in current folder) +# turns username green if superuser, otherwise it is white + +# if superuser make the username green +if [ $UID -eq 0 ]; then NCOLOR="green"; else NCOLOR="white"; fi + +# prompt +PROMPT='[%{$fg[$NCOLOR]%}%B%n%b%{$reset_color%}:%{$fg[red]%}%30<...<%~%<<%{$reset_color%}]%(!.#.$) ' +RPROMPT='$(git_prompt_info)' + +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[gray]%}(%{$fg_no_bold[yellow]%}%B" +ZSH_THEME_GIT_PROMPT_SUFFIX="%b%{$fg_bold[gray]%})%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}✱" + +# LS colors, made with https://geoff.greer.fm/lscolors/ +export LSCOLORS="Gxfxcxdxbxegedabagacad" +export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:' diff --git a/zsh/oh-my-zsh/themes/michelebologna.zsh-theme b/zsh/oh-my-zsh/themes/michelebologna.zsh-theme new file mode 100644 index 0000000..bb86d68 --- /dev/null +++ b/zsh/oh-my-zsh/themes/michelebologna.zsh-theme @@ -0,0 +1,79 @@ +# Michele Bologna's theme +# https://www.michelebologna.net +# +# This a theme for oh-my-zsh. Features a colored prompt with: +# * username@host: [jobs] [git] workdir % +# * hostname color is based on hostname characters. When using as root, the +# prompt shows only the hostname in red color. +# * [jobs], if applicable, counts the number of suspended jobs tty +# * [git], if applicable, represents the status of your git repo (more on that +# later) +# * '%' prompt will be green if last command return value is 0, yellow otherwise. +# +# git prompt is inspired by official git contrib prompt: +# https://github.com/git/git/tree/master/contrib/completion/git-prompt.sh +# and it adds: +# * the current branch +# * '%' if there are untracked files +# * '$' if there are stashed changes +# * '*' if there are modified files +# * '+' if there are added files +# * '<' if local repo is behind remote repo +# * '>' if local repo is ahead remote repo +# * '=' if local repo is equal to remote repo (in sync) +# * '<>' if local repo is diverged + +local green="%{$fg_bold[green]%}" +local red="%{$fg_bold[red]%}" +local cyan="%{$fg_bold[cyan]%}" +local yellow="%{$fg_bold[yellow]%}" +local blue="%{$fg_bold[blue]%}" +local magenta="%{$fg_bold[magenta]%}" +local white="%{$fg_bold[white]%}" +local reset="%{$reset_color%}" + +local -a color_array +color_array=($green $red $cyan $yellow $blue $magenta $white) + +local username_color=$white +local hostname_color=$color_array[$[((#HOST))%7+1]] # choose hostname color based on first character +local current_dir_color=$blue + +local username="%n" +local hostname="%m" +local current_dir="%~" + +local username_output="%(!..${username_color}${username}${reset}@)" +local hostname_output="${hostname_color}${hostname}${reset}" +local current_dir_output="${current_dir_color}${current_dir}${reset}" +local jobs_bg="${red}fg: %j$reset" +local last_command_output="%(?.%(!.$red.$green).$yellow)" + +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_UNTRACKED="$blue%%" +ZSH_THEME_GIT_PROMPT_MODIFIED="$red*" +ZSH_THEME_GIT_PROMPT_ADDED="$green+" +ZSH_THEME_GIT_PROMPT_STASHED="$blue$" +ZSH_THEME_GIT_PROMPT_EQUAL_REMOTE="$green=" +ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE=">" +ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE="<" +ZSH_THEME_GIT_PROMPT_DIVERGED_REMOTE="$red<>" + +function michelebologna_git_prompt { + local out=$(git_prompt_info)$(git_prompt_status)$(git_remote_status) + [[ -n $out ]] || return + printf " %s(%s%s%s)%s" \ + "%{$fg_bold[white]%}" \ + "%{$fg_bold[green]%}" \ + "$out" \ + "%{$fg_bold[white]%}" \ + "%{$reset_color%}" +} + +PROMPT="$username_output$hostname_output:$current_dir_output%1(j. [$jobs_bg].)" +PROMPT+='$(michelebologna_git_prompt)' +PROMPT+=" $last_command_output%#$reset " +RPROMPT='' diff --git a/zsh/oh-my-zsh/themes/mikeh.zsh-theme b/zsh/oh-my-zsh/themes/mikeh.zsh-theme new file mode 100644 index 0000000..f231b91 --- /dev/null +++ b/zsh/oh-my-zsh/themes/mikeh.zsh-theme @@ -0,0 +1,21 @@ +setopt prompt_subst + +autoload -U add-zsh-hook +autoload -Uz vcs_info + +# check-for-changes can be really slow. +# you should disable it, if you work with large repositories +zstyle ':vcs_info:*:prompt:*' check-for-changes true + +add-zsh-hook precmd mikeh_precmd + +mikeh_precmd() { + vcs_info +} + +# user, host, full path, and time/date +# on two lines for easier vgrepping +# entry in a nice long thread on the Arch Linux forums: https://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 +PROMPT=$'%{\e[0;34m%}%B..[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;30m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]%b%{\e[0m%} - %b%{\e[0;34m%}%B[%b%{\e[1;37m%}%~%{\e[0;34m%}%B]%b%{\e[0m%} - %{\e[0;34m%}%B[%b%{\e[0;33m%}'%D{"%a %b %d, %I:%M"}%b$'%{\e[0;34m%}%B]%b%{\e[0m%} +%{\e[0;34m%}%B..%B[%{\e[1;35m%}$%{\e[0;34m%}%B] <($vcs_info_msg_0_)>%{\e[0m%}%b ' +PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' diff --git a/zsh/oh-my-zsh/themes/miloshadzic.zsh-theme b/zsh/oh-my-zsh/themes/miloshadzic.zsh-theme new file mode 100644 index 0000000..ad53944 --- /dev/null +++ b/zsh/oh-my-zsh/themes/miloshadzic.zsh-theme @@ -0,0 +1,8 @@ +# Yay! High voltage and arrows! + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}⚡%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +PROMPT='%{$fg[cyan]%}%1~%{$reset_color%}%{$fg[red]%}|%{$reset_color%}$(git_prompt_info)%{$fg[cyan]%}⇒%{$reset_color%} ' diff --git a/zsh/oh-my-zsh/themes/minimal.zsh-theme b/zsh/oh-my-zsh/themes/minimal.zsh-theme new file mode 100644 index 0000000..588ab69 --- /dev/null +++ b/zsh/oh-my-zsh/themes/minimal.zsh-theme @@ -0,0 +1,26 @@ +ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[white]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}●%{$fg[white]%}]%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="]%{$reset_color%} " + +ZSH_THEME_SVN_PROMPT_PREFIX="$ZSH_THEME_GIT_PROMPT_PREFIX" +ZSH_THEME_SVN_PROMPT_SUFFIX="$ZSH_THEME_GIT_PROMPT_SUFFIX" +ZSH_THEME_SVN_PROMPT_DIRTY="$ZSH_THEME_GIT_PROMPT_DIRTY" +ZSH_THEME_SVN_PROMPT_CLEAN="$ZSH_THEME_GIT_PROMPT_CLEAN" + +ZSH_THEME_HG_PROMPT_PREFIX="$ZSH_THEME_GIT_PROMPT_PREFIX" +ZSH_THEME_HG_PROMPT_SUFFIX="$ZSH_THEME_GIT_PROMPT_SUFFIX" +ZSH_THEME_HG_PROMPT_DIRTY="$ZSH_THEME_GIT_PROMPT_DIRTY" +ZSH_THEME_HG_PROMPT_CLEAN="$ZSH_THEME_GIT_PROMPT_CLEAN" + +vcs_status() { + if (( ${+functions[in_svn]} )) && in_svn; then + svn_prompt_info + elif (( ${+functions[in_hg]} )) && in_hg; then + hg_prompt_info + else + git_prompt_info + fi +} + +PROMPT='%2~ $(vcs_status)»%b ' diff --git a/zsh/oh-my-zsh/themes/mira.zsh-theme b/zsh/oh-my-zsh/themes/mira.zsh-theme new file mode 100644 index 0000000..a7c6035 --- /dev/null +++ b/zsh/oh-my-zsh/themes/mira.zsh-theme @@ -0,0 +1,23 @@ +# Based on bira zsh theme with nvm, rvm and jenv support +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +local user_host='%{$terminfo[bold]$fg[green]%}%n@%m%{$reset_color%}' +local current_dir='%{$terminfo[bold]$fg[blue]%} %~%{$reset_color%}' + +local nvm_node='%{$fg[green]%}‹node-$(nvm_prompt_info)›%{$reset_color%}' + +local jenv_java='%{$fg[blue]%}‹$(jenv_prompt_info)›%{$reset_color%}' + +local git_branch='$(git_prompt_info)' + +local rvm_ruby='$(ruby_prompt_info)' + +PROMPT="╭─${user_host} ${current_dir} ${nvm_node} ${rvm_ruby} ${jenv_java} ${git_branch} +╰─%B$%b " +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=") %{$reset_color%}" + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[red]%}‹" +ZSH_THEME_RUBY_PROMPT_SUFFIX="›%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/mlh.zsh-theme b/zsh/oh-my-zsh/themes/mlh.zsh-theme new file mode 100644 index 0000000..baff3fb --- /dev/null +++ b/zsh/oh-my-zsh/themes/mlh.zsh-theme @@ -0,0 +1,97 @@ +# The Official Theme of Major League Hacking + +## ## ## ## ## +### ### ## ## ## +#### #### ## ## ## +## ### ## ## ######### +## ## ## ## ## +## ## ## ## ## +## ## ######## ## ## + +# # # # # # # # # # # # # # # # # # +# # # Feel free to customize! # # # +# # # # # # # # # # # # # # # # # # + +# To customize symbols (e.g MLH_AT_SYMBOL), simply set them as environment variables +# for example in your ~/.zshrc file, like this: +# MLH_AT_SYMBOL=" at " +# +# Settings *must* be set before sourcing oh-my-zsh.sh the .zshrc file. +# +# To easily discover colors and their codes, type `spectrum_ls` in the terminal + +# right prompt default settings +if [ -z "$MLH_PRINT_EXIT_CODE" ]; then + MLH_PRINT_EXIT_CODE=true +fi + +if [ -z "$MLH_PRINT_TIME" ]; then + MLH_PRINT_TIME=false +fi + +# left prompt symbols default settings + +if [ -z "$MLH_AT_SYMBOL" ]; then + MLH_AT_SYMBOL="@" +fi + +if [ -z "$MLH_IN_SYMBOL" ]; then + MLH_IN_SYMBOL=" in " +fi + +if [ -z "$MLH_ON_SYMBOL" ]; then + MLH_ON_SYMBOL=" on " +fi + +if [ -z "$MLH_SHELL_SYMBOL" ]; then + MLH_SHELL_SYMBOL="$ " +fi + +# colors +USER_COLOR="%F{001}" +DEVICE_COLOR="%F{033}" +DIR_COLOR="%F{220}" +BRANCH_COLOR="%F{001}" +TIME_COLOR="%F{033}" + +username() { + echo "$USER_COLOR%n%f" +} + +# Prints device name +device() { + echo "$DEVICE_COLOR%m%f" +} + +# Prints the current directory +directory() { + echo "$DIR_COLOR%1~%f" +} + +# Prints current time +current_time() { + if [ "$MLH_PRINT_TIME" = true ]; then + echo " $TIME_COLOR%*%f" + fi +} + +# Prints exit code of the last executed command +exit_code() { + if [ "$MLH_PRINT_EXIT_CODE" = true ]; then + echo "%(?..%F{001}exit %?)%f" + fi +} + +prompt_end() { + printf "\n$MLH_SHELL_SYMBOL" +} + +# Set git_prompt_info text +ZSH_THEME_GIT_PROMPT_PREFIX="${MLH_ON_SYMBOL}${BRANCH_COLOR}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%f" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +# %B and %b make the text bold +PROMPT='%b$(username)$MLH_AT_SYMBOL$(device)$MLH_IN_SYMBOL$(directory)$(git_prompt_info)%b$(prompt_end)' +RPROMPT="$(exit_code)$(current_time)" diff --git a/zsh/oh-my-zsh/themes/mortalscumbag.zsh-theme b/zsh/oh-my-zsh/themes/mortalscumbag.zsh-theme new file mode 100644 index 0000000..d81a7ca --- /dev/null +++ b/zsh/oh-my-zsh/themes/mortalscumbag.zsh-theme @@ -0,0 +1,65 @@ +function my_git_prompt() { + tester=$(git rev-parse --git-dir 2> /dev/null) || return + + INDEX=$(git status --porcelain 2> /dev/null) + STATUS="" + + # is branch ahead? + if $(echo "$(git log origin/$(git_current_branch)..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_AHEAD" + fi + + # is branch behind? + if $(echo "$(git log HEAD..origin/$(git_current_branch) 2> /dev/null)" | grep '^commit' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_BEHIND" + fi + + # is anything staged? + if $(echo "$INDEX" | command grep -E -e '^(D[ M]|[MARC][ MD]) ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_STAGED" + fi + + # is anything unstaged? + if $(echo "$INDEX" | command grep -E -e '^[ MARC][MD] ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNSTAGED" + fi + + # is anything untracked? + if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNTRACKED" + fi + + # is anything unmerged? + if $(echo "$INDEX" | command grep -E -e '^(A[AU]|D[DU]|U[ADU]) ' &> /dev/null); then + STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNMERGED" + fi + + if [[ -n $STATUS ]]; then + STATUS=" $STATUS" + fi + + echo "$ZSH_THEME_GIT_PROMPT_PREFIX$(my_current_branch)$STATUS$ZSH_THEME_GIT_PROMPT_SUFFIX" +} + +function my_current_branch() { + echo $(git_current_branch || echo "(no branch)") +} + +function ssh_connection() { + if [[ -n $SSH_CONNECTION ]]; then + echo "%{$fg_bold[red]%}(ssh) " + fi +} + +local ret_status="%(?:%{$fg_bold[green]%}:%{$fg_bold[red]%})%?%{$reset_color%}" +PROMPT=$'\n$(ssh_connection)%{$fg_bold[green]%}%n@%m%{$reset_color%}$(my_git_prompt) : %~\n[${ret_status}] %# ' + +ZSH_THEME_PROMPT_RETURNCODE_PREFIX="%{$fg_bold[red]%}" +ZSH_THEME_GIT_PROMPT_PREFIX=" $fg[white]‹ %{$fg_bold[yellow]%}" +ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg_bold[magenta]%}↑" +ZSH_THEME_GIT_PROMPT_BEHIND="%{$fg_bold[green]%}↓" +ZSH_THEME_GIT_PROMPT_STAGED="%{$fg_bold[green]%}●" +ZSH_THEME_GIT_PROMPT_UNSTAGED="%{$fg_bold[red]%}●" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg_bold[white]%}●" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg_bold[red]%}✕" +ZSH_THEME_GIT_PROMPT_SUFFIX=" $fg_bold[white]›%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/mrtazz.zsh-theme b/zsh/oh-my-zsh/themes/mrtazz.zsh-theme new file mode 100644 index 0000000..214ba5a --- /dev/null +++ b/zsh/oh-my-zsh/themes/mrtazz.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='%{$fg_bold[red]%}%m%{$reset_color%}:%{$fg[cyan]%}%c%{$reset_color%}:%# ' +RPROMPT='%{$fg_bold[green]%}$(git_prompt_info)%{$reset_color%}% ' + +ZSH_THEME_GIT_PROMPT_PREFIX="<%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%} %{$fg[yellow]%}✗%{$fg[green]%}>%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}>" diff --git a/zsh/oh-my-zsh/themes/murilasso.zsh-theme b/zsh/oh-my-zsh/themes/murilasso.zsh-theme new file mode 100644 index 0000000..d46874c --- /dev/null +++ b/zsh/oh-my-zsh/themes/murilasso.zsh-theme @@ -0,0 +1,14 @@ +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" +local user_host='%{$terminfo[bold]$fg[green]%}%n@%m%{$reset_color%}' +local current_dir='%{$terminfo[bold]$fg[blue]%}%~%{$reset_color%}' +local rvm_ruby='%{$fg[red]%}$(ruby_prompt_info)%{$reset_color%}' +local git_branch='%{$fg[blue]%}$(git_prompt_info)%{$reset_color%}' + +PROMPT="${user_host}:${current_dir} ${rvm_ruby} +${git_branch} %B$%b " +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}✔%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/muse.zsh-theme b/zsh/oh-my-zsh/themes/muse.zsh-theme new file mode 100644 index 0000000..84bee52 --- /dev/null +++ b/zsh/oh-my-zsh/themes/muse.zsh-theme @@ -0,0 +1,16 @@ +PROMPT="${FG[117]}%~%{$reset_color%}\$(git_prompt_info)\$(virtualenv_prompt_info)${FG[133]}\$(git_prompt_status) ${FG[077]}ᐅ%{$reset_color%} " + +ZSH_THEME_GIT_PROMPT_PREFIX=" ${FG[012]}(" +ZSH_THEME_GIT_PROMPT_SUFFIX="${FG[012]})%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" ${FG[133]}✘" +ZSH_THEME_GIT_PROMPT_CLEAN=" ${FG[118]}✔" + +ZSH_THEME_GIT_PROMPT_ADDED="${FG[082]}✚%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_MODIFIED="${FG[166]}✹%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DELETED="${FG[160]}✖%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_RENAMED="${FG[220]}➜%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNMERGED="${FG[082]}═%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="${FG[190]}✭%{$reset_color%}" + +ZSH_THEME_VIRTUALENV_PREFIX=" [" +ZSH_THEME_VIRTUALENV_SUFFIX="]" diff --git a/zsh/oh-my-zsh/themes/nanotech.zsh-theme b/zsh/oh-my-zsh/themes/nanotech.zsh-theme new file mode 100644 index 0000000..5d33316 --- /dev/null +++ b/zsh/oh-my-zsh/themes/nanotech.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='%F{green}%2c%F{blue} [%f ' +RPROMPT='$(git_prompt_info) %F{blue}] %F{green}%D{%L:%M} %F{yellow}%D{%p}%f' + +ZSH_THEME_GIT_PROMPT_PREFIX="%F{yellow}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%f" +ZSH_THEME_GIT_PROMPT_DIRTY=" %F{red}*%f" +ZSH_THEME_GIT_PROMPT_CLEAN="" diff --git a/zsh/oh-my-zsh/themes/nebirhos.zsh-theme b/zsh/oh-my-zsh/themes/nebirhos.zsh-theme new file mode 100644 index 0000000..fc05e79 --- /dev/null +++ b/zsh/oh-my-zsh/themes/nebirhos.zsh-theme @@ -0,0 +1,21 @@ +# Based on robbyrussell's theme, with host and rvm indicators. Example: +# @host ➜ currentdir rvm:(rubyversion@gemset) git:(branchname) + +# Get the current ruby version in use with RVM: +if [ -e ~/.rvm/bin/rvm-prompt ]; then + RUBY_PROMPT_="%{$fg_bold[blue]%}rvm:(%{$fg[green]%}\$(~/.rvm/bin/rvm-prompt s i v g)%{$fg_bold[blue]%})%{$reset_color%} " +else + if which rbenv &> /dev/null; then + RUBY_PROMPT_="%{$fg_bold[blue]%}rbenv:(%{$fg[green]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$fg_bold[blue]%})%{$reset_color%} " + fi +fi + +# Get the host name (first 4 chars) +HOST_PROMPT_="%{$fg_bold[red]%}@%m ➜ %{$fg_bold[cyan]%}%c " +GIT_PROMPT="%{$fg_bold[blue]%}\$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}" +PROMPT="$HOST_PROMPT_$RUBY_PROMPT_$GIT_PROMPT" + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/nicoulaj.zsh-theme b/zsh/oh-my-zsh/themes/nicoulaj.zsh-theme new file mode 100644 index 0000000..685cd1a --- /dev/null +++ b/zsh/oh-my-zsh/themes/nicoulaj.zsh-theme @@ -0,0 +1,43 @@ +#!/usr/bin/env zsh +# ------------------------------------------------------------------------------ +# Prompt for the Zsh shell: +# * One line. +# * VCS info on the right prompt. +# * Only shows the path on the left prompt by default. +# * Crops the path to a defined length and only shows the path relative to +# the current VCS repository root. +# * Wears a different color whether the last command succeeded/failed. +# * Shows user@hostname if connected through SSH. +# * Shows if logged in as root or not. +# ------------------------------------------------------------------------------ + +# Customizable parameters. +PROMPT_PATH_MAX_LENGTH=30 +PROMPT_DEFAULT_END=❯ +PROMPT_ROOT_END=❯❯❯ +PROMPT_SUCCESS_COLOR=$FG[071] +PROMPT_FAILURE_COLOR=$FG[124] +PROMPT_VCS_INFO_COLOR=$FG[242] + +# Set required options. +setopt promptsubst + +# Load required modules. +autoload -U add-zsh-hook +autoload -Uz vcs_info + +# Add hook for calling vcs_info before each command. +add-zsh-hook precmd vcs_info + +# Set vcs_info parameters. +zstyle ':vcs_info:*' enable hg bzr git +zstyle ':vcs_info:*:*' check-for-changes true # Can be slow on big repos. +zstyle ':vcs_info:*:*' unstagedstr '!' +zstyle ':vcs_info:*:*' stagedstr '+' +zstyle ':vcs_info:*:*' actionformats "%S" "%r/%s/%b %u%c (%a)" +zstyle ':vcs_info:*:*' formats "%S" "%r/%s/%b %u%c" +zstyle ':vcs_info:*:*' nvcsformats "%~" "" + +# Define prompts. +PROMPT="%(0?.%{$PROMPT_SUCCESS_COLOR%}.%{$PROMPT_FAILURE_COLOR%})${SSH_TTY:+[%n@%m]}%{$FX[bold]%}%$PROMPT_PATH_MAX_LENGTH<..<"'${vcs_info_msg_0_%%.}'"%<<%(!.$PROMPT_ROOT_END.$PROMPT_DEFAULT_END)%{$FX[no-bold]%}%{$FX[reset]%} " +RPROMPT="%{$PROMPT_VCS_INFO_COLOR%}"'$vcs_info_msg_1_'"%{$FX[reset]%}" diff --git a/zsh/oh-my-zsh/themes/norm.zsh-theme b/zsh/oh-my-zsh/themes/norm.zsh-theme new file mode 100644 index 0000000..bd7ca56 --- /dev/null +++ b/zsh/oh-my-zsh/themes/norm.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='%{$fg[yellow]%}λ %m %{$fg[green]%}%c %{$fg[yellow]%}→ $(git_prompt_info)$(hg_prompt_info)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="λ %{$fg[blue]%}git %{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$fg[yellow]%} → %{$reset_color%}" +ZSH_THEME_HG_PROMPT_PREFIX="λ %{$fg[blue]%}hg %{$fg[red]%}" +ZSH_THEME_HG_PROMPT_SUFFIX="%{$fg[yellow]%} → %{$reset_color%}" + diff --git a/zsh/oh-my-zsh/themes/obraun.zsh-theme b/zsh/oh-my-zsh/themes/obraun.zsh-theme new file mode 100644 index 0000000..c64362b --- /dev/null +++ b/zsh/oh-my-zsh/themes/obraun.zsh-theme @@ -0,0 +1,10 @@ +if [ "$USERNAME" = "root" ]; then CARETCOLOR="red"; else CARETCOLOR="blue"; fi + +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='%{$fg[green]%}[%D{%H:%M:%S}]%{$reset_color%} %{$fg_no_bold[cyan]%}%n %{${fg_bold[blue]}%}::%{$reset_color%} %{$fg[yellow]%}%m%{$reset_color%} %{$fg_no_bold[magenta]%} ➜ %{$reset_color%} %{${fg[green]}%}%3~ $(git_prompt_info)%{${fg_bold[$CARETCOLOR]}%}»%{${reset_color}%} ' + +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[red]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/peepcode.zsh-theme b/zsh/oh-my-zsh/themes/peepcode.zsh-theme new file mode 100644 index 0000000..0445346 --- /dev/null +++ b/zsh/oh-my-zsh/themes/peepcode.zsh-theme @@ -0,0 +1,47 @@ +# +# Based on Geoffrey Grosenbach's peepcode zsh theme from +# https://github.com/topfunky/zsh-simple +# + +git_repo_path() { + command git rev-parse --git-dir 2>/dev/null +} + +git_commit_id() { + command git rev-parse --short HEAD 2>/dev/null +} + +git_mode() { + if [[ -e "$repo_path/BISECT_LOG" ]]; then + echo "+bisect" + elif [[ -e "$repo_path/MERGE_HEAD" ]]; then + echo "+merge" + elif [[ -e "$repo_path/rebase" || -e "$repo_path/rebase-apply" || -e "$repo_path/rebase-merge" || -e "$repo_path/../.dotest" ]]; then + echo "+rebase" + fi +} + +git_dirty() { + if [[ "$repo_path" != '.' && -n "$(command git ls-files -m)" ]]; then + echo " %{$fg_bold[grey]%}✗%{$reset_color%}" + fi +} + +git_prompt() { + local cb=$(git_current_branch) + if [[ -n "$cb" ]]; then + local repo_path=$(git_repo_path) + echo " %{$fg_bold[grey]%}$cb %{$fg[white]%}$(git_commit_id)%{$reset_color%}$(git_mode)$(git_dirty)" + fi +} + +local smiley='%(?.%F{green}☺%f.%F{red}☹%f)' + +PROMPT=' +${VIRTUAL_ENV:+"($VIRTUAL_ENV) "}%~ +${smiley} ' + +RPROMPT='%F{white} $(ruby_prompt_info)$(git_prompt)%{$reset_color%}' + +# Disable automatic virtualenv prompt change +export VIRTUAL_ENV_DISABLE_PROMPT=1 diff --git a/zsh/oh-my-zsh/themes/philips.zsh-theme b/zsh/oh-my-zsh/themes/philips.zsh-theme new file mode 100644 index 0000000..fec734b --- /dev/null +++ b/zsh/oh-my-zsh/themes/philips.zsh-theme @@ -0,0 +1,14 @@ +if [ $UID -eq 0 ]; then NCOLOR="red"; else NCOLOR="green"; fi + +PROMPT='%{$fg[$NCOLOR]%}%B%n%b%{$reset_color%}:%{$fg[blue]%}%B%c/%b%{$reset_color%} $(git_prompt_info)%(!.#.$) ' +RPROMPT='[%*]' + +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[red]%}%B" +ZSH_THEME_GIT_PROMPT_SUFFIX="%b%{$fg_bold[blue]%})%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="*" + +# LS colors, made with https://geoff.greer.fm/lscolors/ +export LSCOLORS="Gxfxcxdxbxegedabagacad" +export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:*.patch=00;34:*.o=00;32:*.so=01;35:*.ko=01;31:*.la=00;33' diff --git a/zsh/oh-my-zsh/themes/pmcgee.zsh-theme b/zsh/oh-my-zsh/themes/pmcgee.zsh-theme new file mode 100644 index 0000000..58a9b8b --- /dev/null +++ b/zsh/oh-my-zsh/themes/pmcgee.zsh-theme @@ -0,0 +1,16 @@ +if [ $UID -eq 0 ]; then NCOLOR="red"; else NCOLOR="green"; fi + +PROMPT=' +%{$fg[$NCOLOR]%}%B%n@%m%b%{$reset_color%} %{$fg[white]%}%B${PWD/#$HOME/~}%b%{$reset_color%} +$(git_prompt_info)%(!.#.$) ' +RPROMPT='[%*]' + +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_no_bold[yellow]%}%B" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}*" + +# LS colors, made with https://geoff.greer.fm/lscolors/ +export LSCOLORS="Gxfxcxdxbxegedabagacad" +export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:' diff --git a/zsh/oh-my-zsh/themes/pygmalion-virtualenv.zsh-theme b/zsh/oh-my-zsh/themes/pygmalion-virtualenv.zsh-theme new file mode 100644 index 0000000..c2ab7f4 --- /dev/null +++ b/zsh/oh-my-zsh/themes/pygmalion-virtualenv.zsh-theme @@ -0,0 +1,54 @@ +# Yay! High voltage and arrows! + + +function _virtualenv_prompt_info { + if [[ -n "$(whence virtualenv_prompt_info)" ]]; then + if [ -n "$(whence pyenv_prompt_info)" ]; then + if [ "$1" = "inline" ]; then + ZSH_THEME_VIRTUAL_ENV_PROMPT_PREFIX=%{$fg[blue]%}"::%{$fg[red]%}" + ZSH_THEME_VIRTUAL_ENV_PROMPT_SUFFIX="" + virtualenv_prompt_info + fi + [ "$(pyenv_prompt_info)" = "${PYENV_PROMPT_DEFAULT_VERSION}" ] && virtualenv_prompt_info + else + virtualenv_prompt_info + fi + fi +} + +prompt_setup_pygmalion(){ + setopt localoptions extendedglob + + ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}" + ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " + ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}⚡%{$reset_color%}" + ZSH_THEME_GIT_PROMPT_CLEAN="" + + base_prompt='$(_virtualenv_prompt_info)%{$fg[magenta]%}%n%{$reset_color%}%{$fg[cyan]%}@%{$reset_color%}%{$fg[yellow]%}%m%{$reset_color%}%{$fg[red]%}:%{$reset_color%}%{$fg[cyan]%}%0~%{$reset_color%}%{$fg[red]%}|%{$reset_color%}' + post_prompt='%{$fg[cyan]%}⇒%{$reset_color%} ' + + base_prompt_nocolor=${base_prompt//\%\{[^\}]##\}} + post_prompt_nocolor=${post_prompt//\%\{[^\}]##\}} + + autoload -U add-zsh-hook + add-zsh-hook precmd prompt_pygmalion_precmd +} + +prompt_pygmalion_precmd(){ + setopt localoptions nopromptsubst extendedglob + + local gitinfo=$(git_prompt_info) + local gitinfo_nocolor=${gitinfo//\%\{[^\}]##\}} + local exp_nocolor="$(print -P \"${base_prompt_nocolor}${gitinfo_nocolor}${post_prompt_nocolor}\")" + local prompt_length=${#exp_nocolor} + + # add new line on prompt longer than 40 characters + local nl="" + if [[ $prompt_length -gt 40 ]]; then + nl=$'\n%{\r%}' + fi + + PROMPT="${base_prompt}\$(git_prompt_info)${nl}${post_prompt}" +} + +prompt_setup_pygmalion diff --git a/zsh/oh-my-zsh/themes/pygmalion.zsh-theme b/zsh/oh-my-zsh/themes/pygmalion.zsh-theme new file mode 100644 index 0000000..be9ca38 --- /dev/null +++ b/zsh/oh-my-zsh/themes/pygmalion.zsh-theme @@ -0,0 +1,32 @@ +# Yay! High voltage and arrows! + +prompt_setup_pygmalion(){ + setopt localoptions extendedglob + + ZSH_THEME_GIT_PROMPT_PREFIX="%{$reset_color%}%{$fg[green]%}" + ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " + ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}⚡%{$reset_color%}" + ZSH_THEME_GIT_PROMPT_CLEAN="" + + base_prompt='%{$fg[magenta]%}%n%{$reset_color%}%{$fg[cyan]%}@%{$reset_color%}%{$fg[yellow]%}%m%{$reset_color%}%{$fg[red]%}:%{$reset_color%}%{$fg[cyan]%}%0~%{$reset_color%}%{$fg[red]%}|%{$reset_color%}' + post_prompt='%{$fg[cyan]%}⇒%{$reset_color%} ' + + base_prompt_nocolor=${base_prompt//\%\{[^\}]##\}} + post_prompt_nocolor=${post_prompt//\%\{[^\}]##\}} + + autoload -U add-zsh-hook + add-zsh-hook precmd prompt_pygmalion_precmd +} + +prompt_pygmalion_precmd(){ + setopt localoptions nopromptsubst extendedglob + + local gitinfo=$(git_prompt_info) + local gitinfo_nocolor=${gitinfo//\%\{[^\}]##\}} + local exp_nocolor="$(print -P \"${base_prompt_nocolor}${gitinfo_nocolor}${post_prompt_nocolor}\")" + local prompt_length=${#exp_nocolor} + + PROMPT="${base_prompt}\$(git_prompt_info)${post_prompt}" +} + +prompt_setup_pygmalion diff --git a/zsh/oh-my-zsh/themes/random.zsh-theme b/zsh/oh-my-zsh/themes/random.zsh-theme new file mode 100644 index 0000000..28af84e --- /dev/null +++ b/zsh/oh-my-zsh/themes/random.zsh-theme @@ -0,0 +1,47 @@ +# Deprecate ZSH_THEME_RANDOM_BLACKLIST +if [[ -n "$ZSH_THEME_RANDOM_BLACKLIST" ]]; then + echo '[oh-my-zsh] ZSH_THEME_RANDOM_BLACKLIST is deprecated. Use `ZSH_THEME_RANDOM_IGNORED` instead.' + ZSH_THEME_RANDOM_IGNORED=($ZSH_THEME_RANDOM_BLACKLIST) + unset ZSH_THEME_RANDOM_BLACKLIST +fi + +# Make themes a unique array +typeset -Ua themes + +if [[ "${(t)ZSH_THEME_RANDOM_CANDIDATES}" = array && ${#ZSH_THEME_RANDOM_CANDIDATES[@]} -gt 0 ]]; then + # Use ZSH_THEME_RANDOM_CANDIDATES if properly defined + themes=(${(@)ZSH_THEME_RANDOM_CANDIDATES:#random}) +else + # Look for themes in $ZSH_CUSTOM and $ZSH and add only the theme name + themes=( + "$ZSH_CUSTOM"/*.zsh-theme(N:t:r) + "$ZSH_CUSTOM"/themes/*.zsh-theme(N:t:r) + "$ZSH"/themes/*.zsh-theme(N:t:r) + ) + # Remove ignored themes from the list + for theme in random ${ZSH_THEME_RANDOM_IGNORED[@]}; do + themes=("${(@)themes:#$theme}") + done +fi + +# Choose a theme out of the pool of candidates +N=${#themes[@]} +(( N = (RANDOM%N) + 1 )) +RANDOM_THEME="${themes[$N]}" +unset N themes theme + +# Source theme +if [[ -f "$ZSH_CUSTOM/$RANDOM_THEME.zsh-theme" ]]; then + source "$ZSH_CUSTOM/$RANDOM_THEME.zsh-theme" +elif [[ -f "$ZSH_CUSTOM/themes/$RANDOM_THEME.zsh-theme" ]]; then + source "$ZSH_CUSTOM/themes/$RANDOM_THEME.zsh-theme" +elif [[ -f "$ZSH/themes/$RANDOM_THEME.zsh-theme" ]]; then + source "$ZSH/themes/$RANDOM_THEME.zsh-theme" +else + echo "[oh-my-zsh] Random theme '${RANDOM_THEME}' not found" + return 1 +fi + +if [[ "$ZSH_THEME_RANDOM_QUIET" != true ]]; then + echo "[oh-my-zsh] Random theme '${RANDOM_THEME}' loaded" +fi diff --git a/zsh/oh-my-zsh/themes/re5et.zsh-theme b/zsh/oh-my-zsh/themes/re5et.zsh-theme new file mode 100644 index 0000000..bdf342f --- /dev/null +++ b/zsh/oh-my-zsh/themes/re5et.zsh-theme @@ -0,0 +1,15 @@ +if [ "$USERNAME" = "root" ]; then CARETCOLOR="red"; else CARETCOLOR="magenta"; fi + +local return_code="%(?..%{$fg_bold[red]%}:( %?%{$reset_color%})" + +PROMPT=' +%{$fg_bold[cyan]%}%n%{$reset_color%}%{$fg[yellow]%}@%{$reset_color%}%{$fg_bold[blue]%}%m%{$reset_color%}:%{${fg_bold[green]}%}%~%{$reset_color%}$(git_prompt_info) +%{${fg[$CARETCOLOR]}%}%# %{${reset_color}%}' + +RPS1='${return_code} %D - %*' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[magenta]%}^%{$reset_color%}%{$fg_bold[yellow]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%} ±" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ?" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[red]%} ♥" diff --git a/zsh/oh-my-zsh/themes/refined.zsh-theme b/zsh/oh-my-zsh/themes/refined.zsh-theme new file mode 100644 index 0000000..5e2de7a --- /dev/null +++ b/zsh/oh-my-zsh/themes/refined.zsh-theme @@ -0,0 +1,108 @@ +#!/usr/bin/env zsh + +# ------------------------------------------------------------------------------ +# +# Pure - A minimal and beautiful theme for oh-my-zsh +# +# Based on the custom Zsh-prompt of the same name by Sindre Sorhus. A huge +# thanks goes out to him for designing the fantastic Pure prompt in the first +# place! I'd also like to thank Julien Nicoulaud for his "nicoulaj" theme from +# which I've borrowed both some ideas and some actual code. You can find out +# more about both of these fantastic two people here: +# +# Sindre Sorhus +# Github: https://github.com/sindresorhus +# Twitter: https://twitter.com/sindresorhus +# +# Julien Nicoulaud +# Github: https://github.com/nicoulaj +# Twitter: https://twitter.com/nicoulaj +# +# ------------------------------------------------------------------------------ + +# Set required options +# +setopt prompt_subst + +# Load required modules +# +autoload -Uz vcs_info + +# Set vcs_info parameters +# +zstyle ':vcs_info:*' enable hg bzr git +zstyle ':vcs_info:*:*' unstagedstr '!' +zstyle ':vcs_info:*:*' stagedstr '+' +zstyle ':vcs_info:*:*' formats "$FX[bold]%r$FX[no-bold]/%S" "%s:%b" "%%u%c" +zstyle ':vcs_info:*:*' actionformats "$FX[bold]%r$FX[no-bold]/%S" "%s:%b" "%u%c (%a)" +zstyle ':vcs_info:*:*' nvcsformats "%~" "" "" + +# Fastest possible way to check if repo is dirty +# +git_dirty() { + # Check if we're in a git repo + command git rev-parse --is-inside-work-tree &>/dev/null || return + # Check if it's dirty + command git diff --quiet --ignore-submodules HEAD &>/dev/null; [ $? -eq 1 ] && echo "*" +} + +# Display information about the current repository +# +repo_information() { + echo "%F{blue}${vcs_info_msg_0_%%/.} %F{8}$vcs_info_msg_1_`git_dirty` $vcs_info_msg_2_%f" +} + +# Displays the exec time of the last command if set threshold was exceeded +# +cmd_exec_time() { + local stop=`date +%s` + local start=${cmd_timestamp:-$stop} + let local elapsed=$stop-$start + [ $elapsed -gt 5 ] && echo ${elapsed}s +} + +# Get the initial timestamp for cmd_exec_time +# +preexec() { + cmd_timestamp=`date +%s` +} + +# Output additional information about paths, repos and exec time +# +precmd() { + setopt localoptions nopromptsubst + vcs_info # Get version control info before we start outputting stuff + print -P "\n$(repo_information) %F{yellow}$(cmd_exec_time)%f" + unset cmd_timestamp #Reset cmd exec time. +} + +# Define prompts +# +PROMPT="%(?.%F{magenta}.%F{red})❯%f " # Display a red prompt char on failure +RPROMPT="%F{8}${SSH_TTY:+%n@%m}%f" # Display username if connected via SSH + +# ------------------------------------------------------------------------------ +# +# List of vcs_info format strings: +# +# %b => current branch +# %a => current action (rebase/merge) +# %s => current version control system +# %r => name of the root directory of the repository +# %S => current path relative to the repository root directory +# %m => in case of Git, show information about stashes +# %u => show unstaged changes in the repository +# %c => show staged changes in the repository +# +# List of prompt format strings: +# +# prompt: +# %F => color dict +# %f => reset color +# %~ => current path +# %* => time +# %n => username +# %m => shortname host +# %(?..) => prompt conditional - %(condition.true.false) +# +# ------------------------------------------------------------------------------ diff --git a/zsh/oh-my-zsh/themes/rgm.zsh-theme b/zsh/oh-my-zsh/themes/rgm.zsh-theme new file mode 100644 index 0000000..9452a8b --- /dev/null +++ b/zsh/oh-my-zsh/themes/rgm.zsh-theme @@ -0,0 +1,8 @@ +PROMPT=' +%n@%m %{$fg[cyan]%}%~ +%? $(git_prompt_info)%{$fg_bold[blue]%}%% %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%}" diff --git a/zsh/oh-my-zsh/themes/risto.zsh-theme b/zsh/oh-my-zsh/themes/risto.zsh-theme new file mode 100644 index 0000000..cb773a6 --- /dev/null +++ b/zsh/oh-my-zsh/themes/risto.zsh-theme @@ -0,0 +1,6 @@ +# -*- sh -*- vim:set ft=sh ai et sw=4 sts=4: +# It might be bash like, but I can't have my co-workers knowing I use zsh +PROMPT='%{$fg[green]%}%n@%m:%{$fg_bold[blue]%}%2~ $(git_prompt_info)%{$reset_color%}%(!.#.$) ' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[red]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="›%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/rixius.zsh-theme b/zsh/oh-my-zsh/themes/rixius.zsh-theme new file mode 100644 index 0000000..b33f23e --- /dev/null +++ b/zsh/oh-my-zsh/themes/rixius.zsh-theme @@ -0,0 +1,21 @@ +# name in folder (github) +# ± if in github repo, or ≥ if otherwise Time in 24-hour format is on right. +function collapse_pwd { + echo $(pwd | sed -e "s,^$HOME,~,") +} +function prompt_char { + echo -n "%{$bg[white]%}%{$fg[red]%}" + git branch >/dev/null 2>/dev/null && echo "±%{$reset_color%}" && return + echo "≥%{$reset_color%}" +} +RIXIUS_PRE="%{$bg[white]%}%{$fg[red]%}" + +PROMPT=' +%{$RIXIUS_PRE%}%n%{$reset_color%} in %{$fg_bold[green]%}$(collapse_pwd)%{$reset_color%}$(git_prompt_info) +$(prompt_char) ' +RPROMPT='%{$RIXIUS_PRE%}%T%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$RIXIUS_PRE%}!%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$RIXIUS_PRE%}√%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/rkj-repos.zsh-theme b/zsh/oh-my-zsh/themes/rkj-repos.zsh-theme new file mode 100644 index 0000000..3cb4523 --- /dev/null +++ b/zsh/oh-my-zsh/themes/rkj-repos.zsh-theme @@ -0,0 +1,35 @@ +# user, host, full path, and time/date on two lines for easier vgrepping + +function hg_prompt_info { + if (( $+commands[hg] )) && grep -q "prompt" ~/.hgrc; then + hg prompt --angle-brackets "\ +%{$reset_color%}><:%{$fg[magenta]%}%{$reset_color%}>\ +%{$reset_color%}>\ +%{$fg[red]%}%{$reset_color%}< +patches: >" 2>/dev/null + fi +} + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[cyan]%}+" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%}✱" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%}✗" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%}➦" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%}✂" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[blue]%}✈" +ZSH_THEME_GIT_PROMPT_SHA_BEFORE=" %{$fg[blue]%}" +ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$reset_color%}" + +function mygit() { + if [[ "$(git config --get oh-my-zsh.hide-status)" != "1" ]]; then + ref=$(command git symbolic-ref HEAD 2> /dev/null) || \ + ref=$(command git rev-parse --short HEAD 2> /dev/null) || return + echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(git_prompt_short_sha)$(git_prompt_status)%{$fg_bold[blue]%}$ZSH_THEME_GIT_PROMPT_SUFFIX " + fi +} + +function retcode() {} + +# alternate prompt with git & hg +PROMPT=$'%{$fg_bold[blue]%}┌─[%{$fg_bold[green]%}%n%b%{$fg[black]%}@%{$fg[cyan]%}%m%{$fg_bold[blue]%}]%{$reset_color%} - %{$fg_bold[blue]%}[%{$fg_bold[default]%}%~%{$fg_bold[blue]%}]%{$reset_color%} - %{$fg_bold[blue]%}[%b%{$fg[yellow]%}'%D{"%Y-%m-%d %I:%M:%S"}%b$'%{$fg_bold[blue]%}] +%{$fg_bold[blue]%}└─[%{$fg_bold[magenta]%}%?$(retcode)%{$fg_bold[blue]%}] <$(mygit)$(hg_prompt_info)>%{$reset_color%} ' +PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' diff --git a/zsh/oh-my-zsh/themes/rkj.zsh-theme b/zsh/oh-my-zsh/themes/rkj.zsh-theme new file mode 100644 index 0000000..d7c9314 --- /dev/null +++ b/zsh/oh-my-zsh/themes/rkj.zsh-theme @@ -0,0 +1,9 @@ +# user, host, full path, and time/date +# on two lines for easier vgrepping +# entry in a nice long thread on the Arch Linux forums: https://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 + +function retcode() {} + +PROMPT=$'%{\e[0;34m%}%B┌─[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;30m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]%b%{\e[0m%} - %b%{\e[0;34m%}%B[%b%{\e[1;37m%}%~%{\e[0;34m%}%B]%b%{\e[0m%} - %{\e[0;34m%}%B[%b%{\e[0;33m%}'%D{"%Y-%m-%d %I:%M:%S"}%b$'%{\e[0;34m%}%B]%b%{\e[0m%} +%{\e[0;34m%}%B└─%B[%{\e[1;35m%}%?$(retcode)%{\e[0;34m%}%B]%{\e[0m%}%b ' + diff --git a/zsh/oh-my-zsh/themes/robbyrussell.zsh-theme b/zsh/oh-my-zsh/themes/robbyrussell.zsh-theme new file mode 100644 index 0000000..2fd5f2c --- /dev/null +++ b/zsh/oh-my-zsh/themes/robbyrussell.zsh-theme @@ -0,0 +1,7 @@ +PROMPT="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ )" +PROMPT+=' %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/sammy.zsh-theme b/zsh/oh-my-zsh/themes/sammy.zsh-theme new file mode 100644 index 0000000..52e6e4b --- /dev/null +++ b/zsh/oh-my-zsh/themes/sammy.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%{$fg[white]%}%c$(git_prompt_info)$ % %{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="(" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="*)" +ZSH_THEME_GIT_PROMPT_CLEAN=")" diff --git a/zsh/oh-my-zsh/themes/simonoff.zsh-theme b/zsh/oh-my-zsh/themes/simonoff.zsh-theme new file mode 100644 index 0000000..287781d --- /dev/null +++ b/zsh/oh-my-zsh/themes/simonoff.zsh-theme @@ -0,0 +1,99 @@ +function theme_precmd { + PR_FILLBAR="" + PR_PWDLEN="" + + local promptsize=${#${(%):--(%n@%M:)--(%l)-}} + local pwdsize=${#${(%):-%~}} + local gitbranchsize="${#${(%)$(git_prompt_info)}:-}" + local rvmpromptsize="${#${(%)$(ruby_prompt_info):-}}" + + # Truncate the path if it's too long. + if (( promptsize + pwdsize + rvmpromptsize + gitbranchsize > COLUMNS )); then + (( PR_PWDLEN = COLUMNS - promptsize )) + else + PR_FILLBAR="\${(l.$(( COLUMNS - (promptsize + pwdsize + rvmpromptsize + gitbranchsize) ))..${PR_SPACE}.)}" + fi +} + +function theme_preexec { + setopt local_options extended_glob + if [[ "$TERM" == "screen" ]]; then + local CMD=${1[(wr)^(*=*|sudo|-*)]} + echo -n "\ek$CMD\e\\" + fi + + if [[ "$TERM" == "xterm" ]]; then + print -Pn "\e]0;$1\a" + fi + + if [[ "$TERM" == "rxvt" ]]; then + print -Pn "\e]0;$1\a" + fi + +} + +autoload -U add-zsh-hook +add-zsh-hook precmd theme_precmd +add-zsh-hook preexec theme_preexec + + +# Set the prompt + +# Need this so the prompt will work. +setopt prompt_subst + +# See if we can use colors. +autoload zsh/terminfo +for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE GREY; do + typeset -g PR_$color="%{$terminfo[bold]$fg[${(L)color}]%}" + typeset -g PR_LIGHT_$color="%{$fg[${(L)color}]%}" +done +PR_NO_COLOUR="%{$terminfo[sgr0]%}" + +# Use extended characters to look nicer +PR_HBAR="-" +PR_ULCORNER="-" +PR_LLCORNER="-" +PR_LRCORNER="-" +PR_URCORNER="-" + +# Modify Git prompt +ZSH_THEME_GIT_PROMPT_PREFIX=" [" +ZSH_THEME_GIT_PROMPT_SUFFIX="]" + +# Modify RVM prompt +ZSH_THEME_RUBY_PROMPT_PREFIX=" [" +ZSH_THEME_RUBY_PROMPT_SUFFIX="]" + +# Decide if we need to set titlebar text. +case $TERM in + xterm*|*rxvt*) + PR_TITLEBAR=$'%{\e]0;%(!.-=*[ROOT]*=- | .)%n@%M:%~ $(git_prompt_info) $(ruby_prompt_info) | ${COLUMNS}x${LINES} | %y\a%}' + ;; + screen) + PR_TITLEBAR=$'%{\e_screen \005 (\005t) | %(!.-=[ROOT]=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\e\\%}' + ;; + *) + PR_TITLEBAR="" + ;; +esac + +# Decide whether to set a screen title +if [[ "$TERM" == "screen" ]]; then + PR_STITLE=$'%{\ekzsh\e\\%}' +else + PR_STITLE="" +fi + +# Finally, the prompt. +PROMPT='$PR_SET_CHARSET$PR_STITLE${(e)PR_TITLEBAR}\ +$PR_RED$PR_HBAR<\ +$PR_BLUE%(!.$PR_RED%SROOT%s.%n)$PR_GREEN@$PR_BLUE%M:$PR_GREEN%$PR_PWDLEN<...<%~$PR_CYAN$(git_prompt_info)$(ruby_prompt_info)\ +$PR_RED>$PR_HBAR${(e)PR_FILLBAR}\ +$PR_RED$PR_HBAR<\ +$PR_GREEN%l$PR_RED>$PR_HBAR\ + +$PR_RED$PR_HBAR<\ +%(?..$PR_LIGHT_RED%?$PR_BLUE:)\ +$PR_LIGHT_BLUE%(!.$PR_RED.$PR_WHITE)%#$PR_RED>$PR_HBAR\ +$PR_NO_COLOUR ' diff --git a/zsh/oh-my-zsh/themes/simple.zsh-theme b/zsh/oh-my-zsh/themes/simple.zsh-theme new file mode 100644 index 0000000..bcdecc1 --- /dev/null +++ b/zsh/oh-my-zsh/themes/simple.zsh-theme @@ -0,0 +1,6 @@ +PROMPT='%(!.%{$fg[red]%}.%{$fg[green]%})%~$(git_prompt_info)%{$reset_color%} ' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg_bold[blue]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$fg_bold[blue]%})" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}✗" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}✔" diff --git a/zsh/oh-my-zsh/themes/skaro.zsh-theme b/zsh/oh-my-zsh/themes/skaro.zsh-theme new file mode 100644 index 0000000..84b7b11 --- /dev/null +++ b/zsh/oh-my-zsh/themes/skaro.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='%{$fg_bold[green]%}%h %{$fg[cyan]%}%2~ %{$fg_bold[blue]%}$(git_prompt_info) %{$reset_color%}» ' + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" + diff --git a/zsh/oh-my-zsh/themes/smt.zsh-theme b/zsh/oh-my-zsh/themes/smt.zsh-theme new file mode 100644 index 0000000..52e6d9a --- /dev/null +++ b/zsh/oh-my-zsh/themes/smt.zsh-theme @@ -0,0 +1,83 @@ +# smt.zsh-theme, based on dogenpunk by Matthew Nelson. + +MODE_INDICATOR="%{$fg_bold[red]%}❮%{$reset_color%}%{$fg[red]%}❮❮%{$reset_color%}" +local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%} " + +ZSH_THEME_GIT_PROMPT_PREFIX="|" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}⚡%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg_bold[red]%}!%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[green]%}✓%{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" + +# Format for git_prompt_long_sha() and git_prompt_short_sha() +ZSH_THEME_GIT_PROMPT_SHA_BEFORE="➤ %{$fg_bold[yellow]%}" +ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$reset_color%}" + +function prompt_char() { + command git branch &>/dev/null && echo "%{$fg[green]%}±%{$reset_color%}" && return + command hg root &>/dev/null && echo "%{$fg_bold[red]%}☿%{$reset_color%}" && return + command darcs show repo &>/dev/null && echo "%{$fg_bold[green]%}❉%{$reset_color%}" && return + echo "%{$fg[cyan]%}◯%{$reset_color%}" +} + +# Colors vary depending on time lapsed. +ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" +ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM="%{$fg[yellow]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG="%{$fg[red]%}" +ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[cyan]%}" + +# Determine the time since last commit. If branch is clean, +# use a neutral color, otherwise colors will vary according to time. +function git_time_since_commit() { + local COLOR MINUTES HOURS DAYS SUB_HOURS SUB_MINUTES + local last_commit seconds_since_last_commit + + # Only proceed if there is actually a commit + if ! last_commit=$(command git -c log.showSignature=false log --pretty=format:'%at' -1 2>/dev/null); then + echo "[$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL~%{$reset_color%}]" + return + fi + + # Totals + seconds_since_last_commit=$(( EPOCHSECONDS - last_commit )) + MINUTES=$(( seconds_since_last_commit / 60 )) + HOURS=$(( MINUTES / 60 )) + + # Sub-hours and sub-minutes + DAYS=$(( HOURS / 24 )) + SUB_HOURS=$(( HOURS % 24 )) + SUB_MINUTES=$(( MINUTES % 60 )) + + if [[ -z "$(command git status -s 2>/dev/null)" ]]; then + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + else + if [[ "$MINUTES" -gt 30 ]]; then + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG" + elif [[ "$MINUTES" -gt 10 ]]; then + COLOR="$ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM" + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT" + fi + fi + + if [[ "$HOURS" -gt 24 ]]; then + echo "[${COLOR}${DAYS}d${SUB_HOURS}h${SUB_MINUTES}m%{$reset_color%}]" + elif [[ "$MINUTES" -gt 60 ]]; then + echo "[${COLOR}${HOURS}h${SUB_MINUTES}m%{$reset_color%}]" + else + echo "[${COLOR}${MINUTES}m%{$reset_color%}]" + fi +} + +PROMPT=' +%{$fg[blue]%}%m%{$reset_color%} 福 %{$fg[cyan]%}%~ %{$reset_color%}$(git_prompt_short_sha)$(git_prompt_info) +%{$fg[red]%}%!%{$reset_color%} $(prompt_char) : ' + +RPROMPT='${return_status}$(git_time_since_commit)$(git_prompt_status)%{$reset_color%}' diff --git a/zsh/oh-my-zsh/themes/sonicradish.zsh-theme b/zsh/oh-my-zsh/themes/sonicradish.zsh-theme new file mode 100644 index 0000000..5086118 --- /dev/null +++ b/zsh/oh-my-zsh/themes/sonicradish.zsh-theme @@ -0,0 +1,37 @@ +#!/usr/bin/env zsh +#local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +setopt promptsubst + +autoload -U add-zsh-hook +ROOT_ICON_COLOR=$FG[111] +MACHINE_NAME_COLOR=$FG[208] +PROMPT_SUCCESS_COLOR=$FG[103] +PROMPT_FAILURE_COLOR=$FG[124] +PROMPT_VCS_INFO_COLOR=$FG[242] +PROMPT_PROMPT=$FG[208] +GIT_DIRTY_COLOR=$FG[124] +GIT_CLEAN_COLOR=$FG[148] +GIT_PROMPT_INFO=$FG[148] + +# Hash +ROOT_ICON="# " +if [[ $EUID -ne 0 ]] ; then + ROOT_ICON="" +fi + +PROMPT='%{$ROOT_ICON_COLOR%}$ROOT_ICON%{$reset_color%}%{$MACHINE_NAME_COLOR%}%m➜ %{$reset_color%}%{$PROMPT_SUCCESS_COLOR%}%c%{$reset_color%} %{$GIT_PROMPT_INFO%}$(git_prompt_info)%{$GIT_DIRTY_COLOR%}$(git_prompt_status) %{$reset_color%}%{$PROMPT_PROMPT%}ᐅ %{$reset_color%} ' + +#RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX=": " +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$GIT_PROMPT_INFO%} :" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$GIT_DIRTY_COLOR%}✘" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$GIT_CLEAN_COLOR%}✔" + +ZSH_THEME_GIT_PROMPT_ADDED="%{$FG[103]%}✚%{$rset_color%}" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$FG[103]%}✹%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DELETED="%{$FG[103]%}✖%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$FG[103]%}➜%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$FG[103]%}═%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$FG[103]%}✭%{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/sorin.zsh-theme b/zsh/oh-my-zsh/themes/sorin.zsh-theme new file mode 100644 index 0000000..e478d26 --- /dev/null +++ b/zsh/oh-my-zsh/themes/sorin.zsh-theme @@ -0,0 +1,42 @@ +# sorin.zsh-theme +# screenshot: https://i.imgur.com/aipDQ.png + +if [[ "$TERM" != "dumb" ]] && [[ "$DISABLE_LS_COLORS" != "true" ]]; then + MODE_INDICATOR="%{$fg_bold[red]%}❮%{$reset_color%}%{$fg[red]%}❮❮%{$reset_color%}" + local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}" + + PROMPT='%{$fg[cyan]%}%c$(git_prompt_info) %(!.%{$fg_bold[red]%}#.%{$fg_bold[green]%}❯)%{$reset_color%} ' + + ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[blue]%}git%{$reset_color%}:%{$fg[red]%}" + ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" + ZSH_THEME_GIT_PROMPT_DIRTY="" + ZSH_THEME_GIT_PROMPT_CLEAN="" + + RPROMPT='${return_status}$(git_prompt_status)%{$reset_color%}' + + ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%} ✚" + ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[blue]%} ✹" + ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖" + ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜" + ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═" + ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" +else + MODE_INDICATOR="❮❮❮" + local return_status="%(?::⏎)" + + PROMPT='%c$(git_prompt_info) %(!.#.❯) ' + + ZSH_THEME_GIT_PROMPT_PREFIX=" git:" + ZSH_THEME_GIT_PROMPT_SUFFIX="" + ZSH_THEME_GIT_PROMPT_DIRTY="" + ZSH_THEME_GIT_PROMPT_CLEAN="" + + RPROMPT='${return_status}$(git_prompt_status)' + + ZSH_THEME_GIT_PROMPT_ADDED=" ✚" + ZSH_THEME_GIT_PROMPT_MODIFIED=" ✹" + ZSH_THEME_GIT_PROMPT_DELETED=" ✖" + ZSH_THEME_GIT_PROMPT_RENAMED=" ➜" + ZSH_THEME_GIT_PROMPT_UNMERGED=" ═" + ZSH_THEME_GIT_PROMPT_UNTRACKED=" ✭" +fi diff --git a/zsh/oh-my-zsh/themes/sporty_256.zsh-theme b/zsh/oh-my-zsh/themes/sporty_256.zsh-theme new file mode 100644 index 0000000..e008a86 --- /dev/null +++ b/zsh/oh-my-zsh/themes/sporty_256.zsh-theme @@ -0,0 +1,13 @@ +# zsh theme requires 256 color enabled terminal +# i.e TERM=xterm-256color +# Preview - https://www.flickr.com/photos/adelcampo/4556482563/sizes/o/ +# based on robbyrussell's shell but louder! + +PROMPT='%{$fg_bold[blue]%}$(git_prompt_info) %F{208}%c%f +%{$fg_bold[white]%}%# %{$reset_color%}' +RPROMPT='%B%F{208}%n%f%{$fg_bold[white]%}@%F{039}%m%f%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%F{154}±|%f%F{124}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}%B✘%b%F{154}|%f%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN=" %{$fg[green]%}✔%F{154}|" diff --git a/zsh/oh-my-zsh/themes/steeef.zsh-theme b/zsh/oh-my-zsh/themes/steeef.zsh-theme new file mode 100644 index 0000000..3532d3b --- /dev/null +++ b/zsh/oh-my-zsh/themes/steeef.zsh-theme @@ -0,0 +1,103 @@ +# prompt style and colors based on Steve Losh's Prose theme: +# https://github.com/sjl/oh-my-zsh/blob/master/themes/prose.zsh-theme +# +# vcs_info modifications from Bart Trojanowski's zsh prompt: +# http://www.jukie.net/bart/blog/pimping-out-zsh-prompt +# +# git untracked files modification from Brian Carper: +# https://briancarper.net/blog/570/git-info-in-your-zsh-prompt + +export VIRTUAL_ENV_DISABLE_PROMPT=1 + +function virtualenv_info { + [ $VIRTUAL_ENV ] && echo '('%F{blue}`basename $VIRTUAL_ENV`%f') ' +} +PR_GIT_UPDATE=1 + +setopt prompt_subst + +autoload -U add-zsh-hook +autoload -Uz vcs_info + +#use extended color palette if available +if [[ $terminfo[colors] -ge 256 ]]; then + turquoise="%F{81}" + orange="%F{166}" + purple="%F{135}" + hotpink="%F{161}" + limegreen="%F{118}" +else + turquoise="%F{cyan}" + orange="%F{yellow}" + purple="%F{magenta}" + hotpink="%F{red}" + limegreen="%F{green}" +fi + +# enable VCS systems you use +zstyle ':vcs_info:*' enable git svn + +# check-for-changes can be really slow. +# you should disable it, if you work with large repositories +zstyle ':vcs_info:*:prompt:*' check-for-changes true + +# set formats +# %b - branchname +# %u - unstagedstr (see below) +# %c - stagedstr (see below) +# %a - action (e.g. rebase-i) +# %R - repository path +# %S - path in the repository +PR_RST="%f" +FMT_BRANCH="(%{$turquoise%}%b%u%c${PR_RST})" +FMT_ACTION="(%{$limegreen%}%a${PR_RST})" +FMT_UNSTAGED="%{$orange%}●" +FMT_STAGED="%{$limegreen%}●" + +zstyle ':vcs_info:*:prompt:*' unstagedstr "${FMT_UNSTAGED}" +zstyle ':vcs_info:*:prompt:*' stagedstr "${FMT_STAGED}" +zstyle ':vcs_info:*:prompt:*' actionformats "${FMT_BRANCH}${FMT_ACTION}" +zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH}" +zstyle ':vcs_info:*:prompt:*' nvcsformats "" + + +function steeef_preexec { + case "$2" in + *git*) + PR_GIT_UPDATE=1 + ;; + *hub*) + PR_GIT_UPDATE=1 + ;; + *svn*) + PR_GIT_UPDATE=1 + ;; + esac +} +add-zsh-hook preexec steeef_preexec + +function steeef_chpwd { + PR_GIT_UPDATE=1 +} +add-zsh-hook chpwd steeef_chpwd + +function steeef_precmd { + if [[ -n "$PR_GIT_UPDATE" ]] ; then + # check for untracked files or updated submodules, since vcs_info doesn't + if git ls-files --other --exclude-standard 2> /dev/null | grep -q "."; then + PR_GIT_UPDATE=1 + FMT_BRANCH="(%{$turquoise%}%b%u%c%{$hotpink%}●${PR_RST})" + else + FMT_BRANCH="(%{$turquoise%}%b%u%c${PR_RST})" + fi + zstyle ':vcs_info:*:prompt:*' formats "${FMT_BRANCH} " + + vcs_info 'prompt' + PR_GIT_UPDATE= + fi +} +add-zsh-hook precmd steeef_precmd + +PROMPT=$' +%{$purple%}%n${PR_RST} at %{$orange%}%m${PR_RST} in %{$limegreen%}%~${PR_RST} $vcs_info_msg_0_$(virtualenv_info) +$ ' diff --git a/zsh/oh-my-zsh/themes/strug.zsh-theme b/zsh/oh-my-zsh/themes/strug.zsh-theme new file mode 100644 index 0000000..89b56b0 --- /dev/null +++ b/zsh/oh-my-zsh/themes/strug.zsh-theme @@ -0,0 +1,25 @@ +# terminal coloring +export CLICOLOR=1 +export LSCOLORS=dxFxCxDxBxegedabagacad + +local git_branch='$(git_prompt_info)%{$reset_color%}$(git_remote_status)' + +PROMPT="%{$fg[green]%}╭─%n@%m %{$reset_color%}%{$fg[yellow]%}in %~ %{$reset_color%}${git_branch} +%{$fg[green]%}╰\$ %{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[yellow]%}on " +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_DIRTY="%{$reset_color%}%{$fg[red]%} ✘ %{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%} ✔ %{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_REMOTE_STATUS_DETAILED=true +ZSH_THEME_GIT_PROMPT_REMOTE_STATUS_PREFIX="%{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_REMOTE_STATUS_SUFFIX="%{$fg[yellow]%})%{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE=" +" +ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE_COLOR=%{$fg[green]%} + +ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE=" -" +ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE_COLOR=%{$fg[red]%} + diff --git a/zsh/oh-my-zsh/themes/sunaku.zsh-theme b/zsh/oh-my-zsh/themes/sunaku.zsh-theme new file mode 100644 index 0000000..77f3acc --- /dev/null +++ b/zsh/oh-my-zsh/themes/sunaku.zsh-theme @@ -0,0 +1,25 @@ +# Git-centric variation of the "fishy" theme. + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[green]%}+" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[magenta]%}!" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%}-" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%}>" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[cyan]%}#" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[yellow]%}?" + +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX=" " +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +local user_color='green' +test $UID -eq 0 && user_color='red' + +PROMPT='%(?..%{$fg_bold[red]%}exit %? +%{$reset_color%})'\ +'%{$bold_color%}$(git_prompt_status)%{$reset_color%}'\ +'$(git_prompt_info)'\ +'%{$fg[$user_color]%}%~%{$reset_color%}'\ +'%(!.#.>) ' + +PROMPT2='%{$fg[red]%}\ %{$reset_color%}' diff --git a/zsh/oh-my-zsh/themes/sunrise.zsh-theme b/zsh/oh-my-zsh/themes/sunrise.zsh-theme new file mode 100644 index 0000000..11f6af1 --- /dev/null +++ b/zsh/oh-my-zsh/themes/sunrise.zsh-theme @@ -0,0 +1,93 @@ +# Sunrise theme for oh-my-zsh +# Intended to be used with Solarized: https://ethanschoonover.com/solarized + +# Color shortcuts +R=$fg_no_bold[red] +G=$fg_no_bold[green] +M=$fg_no_bold[magenta] +Y=$fg_no_bold[yellow] +B=$fg_no_bold[blue] +RESET=$reset_color + +if [ "$USERNAME" = "root" ]; then + PROMPTCOLOR="%{$R%}" PROMPTPREFIX="-!-"; +else + PROMPTCOLOR="" PROMPTPREFIX="---"; +fi + +local return_code="%(?..%{$R%}%? ↵%{$RESET%})" + +# Get the status of the working tree (copied and modified from git.zsh) +custom_git_prompt_status() { + INDEX=$(git status --porcelain 2> /dev/null) + STATUS="" + # Non-staged + if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS" + fi + if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS" + fi + if $(echo "$INDEX" | grep '^ D ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS" + fi + if $(echo "$INDEX" | grep '^.M ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" + elif $(echo "$INDEX" | grep '^AM ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" + elif $(echo "$INDEX" | grep '^ T ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" + fi + # Staged + if $(echo "$INDEX" | grep '^D ' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_STAGED_DELETED$STATUS" + fi + if $(echo "$INDEX" | grep '^R' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_STAGED_RENAMED$STATUS" + fi + if $(echo "$INDEX" | grep '^M' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_STAGED_MODIFIED$STATUS" + fi + if $(echo "$INDEX" | grep '^A' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_PROMPT_STAGED_ADDED$STATUS" + fi + + if $(echo -n "$STATUS" | grep '.*' &> /dev/null); then + STATUS="$ZSH_THEME_GIT_STATUS_PREFIX$STATUS" + fi + + echo $STATUS +} + +# get the name of the branch we are on (copied and modified from git.zsh) +function custom_git_prompt() { + ref=$(git symbolic-ref HEAD 2> /dev/null) || return + echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(parse_git_dirty)$(git_prompt_ahead)$(custom_git_prompt_status)$ZSH_THEME_GIT_PROMPT_SUFFIX" +} + +# %B sets bold text +PROMPT='%B$PROMPTPREFIX %2~ $(custom_git_prompt)%{$M%}%B»%b%{$RESET%} ' +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$Y%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$Y%}›%{$RESET%} " + +ZSH_THEME_GIT_PROMPT_DIRTY="%{$R%}*" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +ZSH_THEME_GIT_PROMPT_AHEAD="%{$B%}➔" + + +ZSH_THEME_GIT_STATUS_PREFIX=" " + +# Staged +ZSH_THEME_GIT_PROMPT_STAGED_ADDED="%{$G%}A" +ZSH_THEME_GIT_PROMPT_STAGED_MODIFIED="%{$G%}M" +ZSH_THEME_GIT_PROMPT_STAGED_RENAMED="%{$G%}R" +ZSH_THEME_GIT_PROMPT_STAGED_DELETED="%{$G%}D" + +# Not-staged +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$R%}?" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$R%}M" +ZSH_THEME_GIT_PROMPT_DELETED="%{$R%}D" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$R%}UU" diff --git a/zsh/oh-my-zsh/themes/superjarin.zsh-theme b/zsh/oh-my-zsh/themes/superjarin.zsh-theme new file mode 100644 index 0000000..86fa9c7 --- /dev/null +++ b/zsh/oh-my-zsh/themes/superjarin.zsh-theme @@ -0,0 +1,18 @@ +# Grab the current version of ruby in use: [ruby-1.8.7] +JARIN_CURRENT_RUBY_="%{$fg[white]%}[%{$fg[red]%}\$(ruby_prompt_info)%{$fg[white]%}]%{$reset_color%}" + +# Grab the current filepath, use shortcuts: ~/Desktop +# Append the current git branch, if in a git repository +JARIN_CURRENT_LOCA_="%{$fg_bold[cyan]%}%~\$(git_prompt_info)%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[white]%} <%{$fg[magenta]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$fg[white]%}" + +# Do nothing if the branch is clean (no changes). +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[white]%}>" + +# Add a yellow ✗ if the branch is dirty +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[white]%}> %{$fg[yellow]%}✗" + +# Put it all together! +PROMPT="$JARIN_CURRENT_RUBY_ $JARIN_CURRENT_LOCA_ " + diff --git a/zsh/oh-my-zsh/themes/suvash.zsh-theme b/zsh/oh-my-zsh/themes/suvash.zsh-theme new file mode 100644 index 0000000..850476c --- /dev/null +++ b/zsh/oh-my-zsh/themes/suvash.zsh-theme @@ -0,0 +1,21 @@ +function prompt_char { + git branch >/dev/null 2>/dev/null && echo '±' && return + hg root >/dev/null 2>/dev/null && echo 'Hg' && return + echo '○' +} + +function virtualenv_info { + [[ -n "$VIRTUAL_ENV" ]] && echo '('${VIRTUAL_ENV:t}') ' +} + +PROMPT='%F{magenta}%n%f at %F{yellow}%m%f in %B%F{green}%~%f%b$(git_prompt_info)$(ruby_prompt_info) +$(virtualenv_info) $(prompt_char) ' + +ZSH_THEME_GIT_PROMPT_PREFIX=' on %F{magenta}' +ZSH_THEME_GIT_PROMPT_SUFFIX='%f' +ZSH_THEME_GIT_PROMPT_DIRTY='%F{green}!' +ZSH_THEME_GIT_PROMPT_UNTRACKED='%F{green}?' +ZSH_THEME_GIT_PROMPT_CLEAN='' + +ZSH_THEME_RUBY_PROMPT_PREFIX=' using %F{red}' +ZSH_THEME_RUBY_PROMPT_SUFFIX='%f' diff --git a/zsh/oh-my-zsh/themes/takashiyoshida.zsh-theme b/zsh/oh-my-zsh/themes/takashiyoshida.zsh-theme new file mode 100644 index 0000000..419a8cf --- /dev/null +++ b/zsh/oh-my-zsh/themes/takashiyoshida.zsh-theme @@ -0,0 +1,27 @@ +# +# PROMPT +# +PROMPT_BRACKET_BEGIN='%{$fg_bold[white]%}[' +PROMPT_HOST='%{$fg_bold[cyan]%}%m' +PROMPT_SEPARATOR='%{$reset_color%}:' +PROMPT_DIR='%{$fg_bold[yellow]%}%c' +PROMPT_BRACKET_END='%{$fg_bold[white]%}]' + +PROMPT_USER='%{$fg_bold[white]%}%n' +PROMPT_SIGN='%{$reset_color%}%#' + +GIT_PROMPT_INFO='$(git_prompt_info)' + +# My current prompt looks like: +# [host:current_dir] (git_prompt_info) +# [username]% +PROMPT="${PROMPT_BRACKET_BEGIN}${PROMPT_HOST}${PROMPT_SEPARATOR}${PROMPT_DIR}${PROMPT_BRACKET_END}${GIT_PROMPT_INFO} +${PROMPT_BRACKET_BEGIN}${PROMPT_USER}${PROMPT_BRACKET_END}${PROMPT_SIGN} " + +# +# Git repository +# +ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" +ZSH_THEME_GIT_PROMPT_CLEAN='' diff --git a/zsh/oh-my-zsh/themes/terminalparty.zsh-theme b/zsh/oh-my-zsh/themes/terminalparty.zsh-theme new file mode 100644 index 0000000..cd7370b --- /dev/null +++ b/zsh/oh-my-zsh/themes/terminalparty.zsh-theme @@ -0,0 +1,8 @@ +PROMPT='%(?,%{$fg[green]%},%{$fg[red]%}) %% ' +# RPS1='%{$fg[blue]%}%~%{$reset_color%} ' +RPS1='%{$fg[white]%}%2~$(git_prompt_info) %{$fg_bold[blue]%}%m%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[yellow]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX=")%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%} ⚡%{$fg[yellow]%}" diff --git a/zsh/oh-my-zsh/themes/theunraveler.zsh-theme b/zsh/oh-my-zsh/themes/theunraveler.zsh-theme new file mode 100644 index 0000000..e4bfb79 --- /dev/null +++ b/zsh/oh-my-zsh/themes/theunraveler.zsh-theme @@ -0,0 +1,16 @@ +# Comment + +PROMPT='%{$fg[magenta]%}[%c] %{$reset_color%}' + +RPROMPT='%{$fg[magenta]%}$(git_prompt_info)%{$reset_color%} $(git_prompt_status)%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_DIRTY="" +ZSH_THEME_GIT_PROMPT_CLEAN="" +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[cyan]%} ✈" +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%} ✭" +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✗" +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%} ➦" +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%} ✂" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[grey]%} ✱" \ No newline at end of file diff --git a/zsh/oh-my-zsh/themes/tjkirch.zsh-theme b/zsh/oh-my-zsh/themes/tjkirch.zsh-theme new file mode 100644 index 0000000..c516098 --- /dev/null +++ b/zsh/oh-my-zsh/themes/tjkirch.zsh-theme @@ -0,0 +1,15 @@ +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}⚡" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +function prompt_char { + if [ $UID -eq 0 ]; then echo "%{$fg[red]%}#%{$reset_color%}"; else echo $; fi +} + +PROMPT='%(?, ,%{$fg[red]%}FAIL: $?%{$reset_color%} +) +%{$fg[magenta]%}%n%{$reset_color%}@%{$fg[yellow]%}%m%{$reset_color%}: %{$fg_bold[blue]%}%~%{$reset_color%}$(git_prompt_info) +$(prompt_char) ' + +RPROMPT='%{$fg[green]%}[%*]%{$reset_color%}' diff --git a/zsh/oh-my-zsh/themes/tjkirch_mod.zsh-theme b/zsh/oh-my-zsh/themes/tjkirch_mod.zsh-theme new file mode 100644 index 0000000..2dd060e --- /dev/null +++ b/zsh/oh-my-zsh/themes/tjkirch_mod.zsh-theme @@ -0,0 +1,13 @@ +ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[green]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY=" %{$fg[red]%}⚡" +ZSH_THEME_GIT_PROMPT_CLEAN="" + +function prompt_char { + if [ $UID -eq 0 ]; then echo "%{$fg[red]%}#%{$reset_color%}"; else echo $; fi +} + +PROMPT='%(?,,%{$fg[red]%}FAIL: $?%{$reset_color%} +)%{$fg[magenta]%}%n%{$reset_color%}@%{$fg[yellow]%}%m%{$reset_color%}: %{$fg_bold[blue]%}%~%{$reset_color%}$(git_prompt_info) $(prompt_char) ' + +RPROMPT='%{$fg[green]%}[%*]%{$reset_color%}' diff --git a/zsh/oh-my-zsh/themes/tonotdo.zsh-theme b/zsh/oh-my-zsh/themes/tonotdo.zsh-theme new file mode 100644 index 0000000..426e2bf --- /dev/null +++ b/zsh/oh-my-zsh/themes/tonotdo.zsh-theme @@ -0,0 +1,12 @@ +PROMPT='%{$fg_no_bold[cyan]%}%n%{$fg_no_bold[magenta]%}➜%{$fg_no_bold[green]%}%3~$(git_prompt_info)%{$reset_color%}» ' +RPROMPT='[%*]' + +# git theming +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[blue]%})" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[yellow]%}✗%{$fg_bold[blue]%})" + +# LS colors, made with https://geoff.greer.fm/lscolors/ +export LSCOLORS="Gxfxcxdxbxegedabagacad" +export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:' diff --git a/zsh/oh-my-zsh/themes/trapd00r.zsh-theme b/zsh/oh-my-zsh/themes/trapd00r.zsh-theme new file mode 100644 index 0000000..260c9e7 --- /dev/null +++ b/zsh/oh-my-zsh/themes/trapd00r.zsh-theme @@ -0,0 +1,132 @@ +# trapd00r.zsh-theme +# +# This theme needs a terminal supporting 256 colors as well as unicode. +# In order to avoid external dependencies, it also has a zsh version of +# the previously used perl script https://github.com/trapd00r/utils/blob/master/zsh_path, +# which splits up the current path and makes it fancy. +# +# By default it spans over two lines like so: +# +# scp1@shiva:pts/9-> /home » scp1 (0) +# > +# +# that's user@host:pts/-> splitted path (return status) +# +# If the current directory is a git repository, we span 3 lines; +# +# git❨ master ❩ DIRTY +# scp1@shiva:pts/4-> /home » scp1 » dev » utils (0) +# > + +autoload -U add-zsh-hook +autoload -Uz vcs_info + +local c0=$'\e[m' +local c1=$'\e[38;5;245m' +local c2=$'\e[38;5;250m' +local c3=$'\e[38;5;242m' +local c4=$'\e[38;5;197m' +local c5=$'\e[38;5;225m' +local c6=$'\e[38;5;240m' +local c7=$'\e[38;5;242m' +local c8=$'\e[38;5;244m' +local c9=$'\e[38;5;162m' +local c10=$'\e[1m' +local c11=$'\e[38;5;208m\e[1m' +local c12=$'\e[38;5;142m\e[1m' +local c13=$'\e[38;5;196m\e[1m' + + +zsh_path() { + setopt localoptions nopromptsubst + + local colors + colors=$(echoti colors) + + local -A yellow + yellow=( + 1 '%F{228}' 2 '%F{222}' 3 '%F{192}' 4 '%F{186}' + 5 '%F{227}' 6 '%F{221}' 7 '%F{191}' 8 '%F{185}' + 9 '%F{226}' 10 '%F{220}' 11 '%F{190}' 12 '%F{184}' + 13 '%F{214}' 14 '%F{178}' 15 '%F{208}' 16 '%F{172}' + 17 '%F{202}' 18 '%F{166}' + ) + + local dir i=1 + for dir (${(s:/:)PWD}); do + if [[ $i -eq 1 ]]; then + if [[ $colors -ge 256 ]]; then + print -Pn "%F{065}%B /%b" + else + print -Pn "\e[31;1m /" + fi + else + if [[ $colors -ge 256 ]]; then + print -Pn "${yellow[$i]:-%f} » " + else + print -Pn "%F{yellow} > " + fi + fi + + (( i++ )) + + if [[ $colors -ge 256 ]]; then + print -Pn "%F{065}$dir" + else + print -Pn "%F{blue}$dir" + fi + done + print -Pn "%f" +} + + +# We don't want to use the extended colorset in the TTY / VC. +if [ "$TERM" = linux ]; then + c1=$'\e[34;1m' + c2=$'\e[35m' + c3=$'\e[31m' + c4=$'\e[31;1m' + c5=$'\e[32m' + c6=$'\e[32;1m' + c7=$'\e[33m' + c8=$'\e[33;1m' + c9=$'\e[34m' + c11=$'\e[35;1m' + c12=$'\e[36m' + c13=$'\e[31;1m' +fi + +zstyle ':vcs_info:*' actionformats \ + '%{$c8%}(%f%s)%{$c7%}-%F{5}[%F{2}%b%F{3}|%F{1}%a%F{5}]%f ' + +zstyle ':vcs_info:*' formats \ + "%{$c8%}%s%%{$c7%}❨ %{$c9%}%{$c11%}%b%{$c7%} ❩%{$reset_color%}%f " + +zstyle ':vcs_info:*' enable git + +add-zsh-hook precmd prompt_jnrowe_precmd + +prompt_jnrowe_precmd () { + vcs_info + if [ "${vcs_info_msg_0_}" = "" ]; then + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$(zsh_path)%} %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${dir_status} ${ret_status}%{$reset_color%} +> ' + # modified, to be committed + elif [[ $(git diff --cached --name-status 2>/dev/null ) != "" ]]; then + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$(zsh_path)%} %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${vcs_info_msg_0_}%{$30%} %{$bg_bold[red]%}%{$fg_bold[cyan]%}C%{$fg_bold[black]%}OMMIT%{$reset_color%} +${dir_status}%{$reset_color%} +> ' + elif [[ $(git diff --name-status 2>/dev/null ) != "" ]]; then + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$(zsh_path)%} %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${vcs_info_msg_0_}%{$bg_bold[red]%}%{$fg_bold[blue]%}D%{$fg_bold[black]%}IRTY%{$reset_color%} +${dir_status}%{$reset_color%} +%{$c13%}>%{$c0%} ' + else + dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$(zsh_path)%} %{$c0%}(%{$c5%}%?%{$c0%})" + PROMPT='${vcs_info_msg_0_} +${dir_status}%{$reset_color%} +> ' + fi +} diff --git a/zsh/oh-my-zsh/themes/wedisagree.zsh-theme b/zsh/oh-my-zsh/themes/wedisagree.zsh-theme new file mode 100644 index 0000000..e9e9d6e --- /dev/null +++ b/zsh/oh-my-zsh/themes/wedisagree.zsh-theme @@ -0,0 +1,109 @@ +# On a mac with snow leopard, for nicer terminal colours: + +# - Install SIMBL: http://www.culater.net/software/SIMBL/SIMBL.php +# - Download'Terminal-Colours': http://bwaht.net/code/TerminalColours.bundle.zip +# - Place that bundle in ~/Library/Application\ Support/SIMBL/Plugins (create that folder if it doesn't exist) +# - Open Terminal preferences. Go to Settings -> Text -> More +# - Change default colours to your liking. +# +# Here are the colours from Textmate's Monokai theme: +# +# Black: 0, 0, 0 +# Red: 229, 34, 34 +# Green: 166, 227, 45 +# Yellow: 252, 149, 30 +# Blue: 196, 141, 255 +# Magenta: 250, 37, 115 +# Cyan: 103, 217, 240 +# White: 242, 242, 242 + +# Thanks to Steve Losh: http://stevelosh.com/blog/2009/03/candy-colored-terminal/ + +# The prompt + +PROMPT='%{$fg[magenta]%}[%c] %{$reset_color%}' + +# The right-hand prompt + +RPROMPT='${time} %{$fg[magenta]%}$(git_prompt_info)%{$reset_color%}$(git_prompt_status)%{$reset_color%}$(git_prompt_ahead)%{$reset_color%}' + +# Add this at the start of RPROMPT to include rvm info showing ruby-version@gemset-name +# $(ruby_prompt_info) + +# local time, color coded by last return code +time_enabled="%(?.%{$fg[green]%}.%{$fg[red]%})%*%{$reset_color%}" +time_disabled="%{$fg[green]%}%*%{$reset_color%}" +time=$time_enabled + +ZSH_THEME_GIT_PROMPT_PREFIX=" ☁ %{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%} ☂" # Ⓓ +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" # ⓣ +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%} ☀" # Ⓞ + +ZSH_THEME_GIT_PROMPT_ADDED="%{$fg[cyan]%} ✚" # ⓐ ⑃ +ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%} ⚡" # ⓜ ⑁ +ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✖" # ⓧ ⑂ +ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%} ➜" # ⓡ ⑄ +ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%} ♒" # ⓤ ⑊ +ZSH_THEME_GIT_PROMPT_AHEAD="%{$fg[blue]%} 𝝙" + +ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg[yellow]%}" +ZSH_THEME_RUBY_PROMPT_SUFFIX="%{$reset_color%}" + +# More symbols to choose from: +# ☀ ✹ ☄ ♆ ♀ ♁ ♐ ♇ ♈ ♉ ♚ ♛ ♜ ♝ ♞ ♟ ♠ ♣ ⚢ ⚲ ⚳ ⚴ ⚥ ⚤ ⚦ ⚒ ⚑ ⚐ ♺ ♻ ♼ ☰ ☱ ☲ ☳ ☴ ☵ ☶ ☷ +# ✡ ✔ ✖ ✚ ✱ ✤ ✦ ❤ ➜ ➟ ➼ ✂ ✎ ✐ ⨀ ⨁ ⨂ ⨍ ⨎ ⨏ ⨷ ⩚ ⩛ ⩡ ⩱ ⩲ ⩵ ⩶ ⨠ +# ⬅ ⬆ ⬇ ⬈ ⬉ ⬊ ⬋ ⬒ ⬓ ⬔ ⬕ ⬖ ⬗ ⬘ ⬙ ⬟ ⬤ 〒 ǀ ǁ ǂ ĭ Ť Ŧ + +# Determine if we are using a gemset. +function rvm_gemset() { + GEMSET=`rvm gemset list | grep '=>' | cut -b4-` + if [[ -n $GEMSET ]]; then + echo "%{$fg[yellow]%}$GEMSET%{$reset_color%}|" + fi +} + +# Determine the time since last commit. If branch is clean, +# use a neutral color, otherwise colors will vary according to time. +function git_time_since_commit() { + if git rev-parse --git-dir > /dev/null 2>&1; then + # Only proceed if there is actually a commit. + if last_commit=`git -c log.showSignature=false log --pretty=format:'%at' -1 2> /dev/null`; then + now=`date +%s` + seconds_since_last_commit=$((now-last_commit)) + + # Totals + MINUTES=$((seconds_since_last_commit / 60)) + HOURS=$((seconds_since_last_commit/3600)) + + # Sub-hours and sub-minutes + DAYS=$((seconds_since_last_commit / 86400)) + SUB_HOURS=$((HOURS % 24)) + SUB_MINUTES=$((MINUTES % 60)) + + if [[ -n $(git status -s 2> /dev/null) ]]; then + if [ "$MINUTES" -gt 30 ]; then + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG" + elif [ "$MINUTES" -gt 10 ]; then + COLOR="$ZSH_THEME_GIT_TIME_SHORT_COMMIT_MEDIUM" + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT" + fi + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + fi + + if [ "$HOURS" -gt 24 ]; then + echo "($(rvm_gemset)$COLOR${DAYS}d${SUB_HOURS}h${SUB_MINUTES}m%{$reset_color%}|" + elif [ "$MINUTES" -gt 60 ]; then + echo "($(rvm_gemset)$COLOR${HOURS}h${SUB_MINUTES}m%{$reset_color%}|" + else + echo "($(rvm_gemset)$COLOR${MINUTES}m%{$reset_color%}|" + fi + else + COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL" + echo "($(rvm_gemset)$COLOR~|" + fi + fi +} diff --git a/zsh/oh-my-zsh/themes/wezm+.zsh-theme b/zsh/oh-my-zsh/themes/wezm+.zsh-theme new file mode 100644 index 0000000..fee3eb0 --- /dev/null +++ b/zsh/oh-my-zsh/themes/wezm+.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='%{${fg_bold[yellow]}%}%n%{$reset_color%}%{${fg[yellow]}%}@%m%{$reset_color%} $(git_prompt_info)%(?,,%{${fg_bold[white]}%}[%?]%{$reset_color%} )%{$fg[yellow]%}%#%{$reset_color%} ' +RPROMPT='%{$fg[green]%}%~%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[blue]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%})%{$fg[red]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/wezm.zsh-theme b/zsh/oh-my-zsh/themes/wezm.zsh-theme new file mode 100644 index 0000000..1881343 --- /dev/null +++ b/zsh/oh-my-zsh/themes/wezm.zsh-theme @@ -0,0 +1,7 @@ +PROMPT='$(git_prompt_info)%(?,,%{${fg_bold[white]}%}[%?]%{$reset_color%} )%{$fg[yellow]%}%#%{$reset_color%} ' +RPROMPT='%{$fg[green]%}%~%{$reset_color%}' + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[blue]%}(" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%})%{$fg[red]%}⚡%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" diff --git a/zsh/oh-my-zsh/themes/wuffers.zsh-theme b/zsh/oh-my-zsh/themes/wuffers.zsh-theme new file mode 100644 index 0000000..4019d0a --- /dev/null +++ b/zsh/oh-my-zsh/themes/wuffers.zsh-theme @@ -0,0 +1,5 @@ +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}[" +ZSH_THEME_GIT_PROMPT_SUFFIX="]%{$reset_color%} " +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%} x%{$fg_bold[blue]%}" + +PROMPT='%{$(git_prompt_info)%}%{$fg_bold[green]%}{%{$(rvm current 2>/dev/null || rbenv version-name 2>/dev/null)%}}%{$reset_color%} %{$fg[cyan]%}%c%{$reset_color%} ' diff --git a/zsh/oh-my-zsh/themes/xiong-chiamiov-plus.zsh-theme b/zsh/oh-my-zsh/themes/xiong-chiamiov-plus.zsh-theme new file mode 100644 index 0000000..aa6ef74 --- /dev/null +++ b/zsh/oh-my-zsh/themes/xiong-chiamiov-plus.zsh-theme @@ -0,0 +1,6 @@ +# user, host, full path, and time/date +# on two lines for easier vgrepping +# entry in a nice long thread on the Arch Linux forums: https://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 +PROMPT=$'%{\e[0;34m%}%B┌─[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;30m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]%b%{\e[0m%} - %b%{\e[0;34m%}%B[%b%{\e[1;37m%}%~%{\e[0;34m%}%B]%b%{\e[0m%} - %{\e[0;34m%}%B[%b%{\e[0;33m%}'%D{"%a %b %d, %H:%M"}%b$'%{\e[0;34m%}%B]%b%{\e[0m%} +%{\e[0;34m%}%B└─%B[%{\e[1;35m%}$%{\e[0;34m%}%B] <$(git_prompt_info)>%{\e[0m%}%b ' +PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' diff --git a/zsh/oh-my-zsh/themes/xiong-chiamiov.zsh-theme b/zsh/oh-my-zsh/themes/xiong-chiamiov.zsh-theme new file mode 100644 index 0000000..b67d994 --- /dev/null +++ b/zsh/oh-my-zsh/themes/xiong-chiamiov.zsh-theme @@ -0,0 +1,6 @@ +# user, host, full path, and time/date +# on two lines for easier vgrepping +# entry in a nice long thread on the Arch Linux forums: https://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 +PROMPT=$'%{\e[0;34m%}%B┌─[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;30m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]%b%{\e[0m%} - %b%{\e[0;34m%}%B[%b%{\e[1;37m%}%~%{\e[0;34m%}%B]%b%{\e[0m%} - %{\e[0;34m%}%B[%b%{\e[0;33m%}'%D{"%a %b %d, %H:%M"}%b$'%{\e[0;34m%}%B]%b%{\e[0m%} +%{\e[0;34m%}%B└─%B[%{\e[1;35m%}$%{\e[0;34m%}%B]>%{\e[0m%}%b ' +PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' diff --git a/zsh/oh-my-zsh/themes/ys.zsh-theme b/zsh/oh-my-zsh/themes/ys.zsh-theme new file mode 100644 index 0000000..4c3c56f --- /dev/null +++ b/zsh/oh-my-zsh/themes/ys.zsh-theme @@ -0,0 +1,80 @@ +# Clean, simple, compatible and meaningful. +# Tested on Linux, Unix and Windows under ANSI colors. +# It is recommended to use with a dark background. +# Colors: black, red, green, yellow, *blue, magenta, cyan, and white. +# +# Mar 2013 Yad Smood + +# VCS +YS_VCS_PROMPT_PREFIX1=" %{$reset_color%}on%{$fg[blue]%} " +YS_VCS_PROMPT_PREFIX2=":%{$fg[cyan]%}" +YS_VCS_PROMPT_SUFFIX="%{$reset_color%}" +YS_VCS_PROMPT_DIRTY=" %{$fg[red]%}x" +YS_VCS_PROMPT_CLEAN=" %{$fg[green]%}o" + +# Git info +local git_info='$(git_prompt_info)' +ZSH_THEME_GIT_PROMPT_PREFIX="${YS_VCS_PROMPT_PREFIX1}git${YS_VCS_PROMPT_PREFIX2}" +ZSH_THEME_GIT_PROMPT_SUFFIX="$YS_VCS_PROMPT_SUFFIX" +ZSH_THEME_GIT_PROMPT_DIRTY="$YS_VCS_PROMPT_DIRTY" +ZSH_THEME_GIT_PROMPT_CLEAN="$YS_VCS_PROMPT_CLEAN" + +# SVN info +local svn_info='$(svn_prompt_info)' +ZSH_THEME_SVN_PROMPT_PREFIX="${YS_VCS_PROMPT_PREFIX1}svn${YS_VCS_PROMPT_PREFIX2}" +ZSH_THEME_SVN_PROMPT_SUFFIX="$YS_VCS_PROMPT_SUFFIX" +ZSH_THEME_SVN_PROMPT_DIRTY="$YS_VCS_PROMPT_DIRTY" +ZSH_THEME_SVN_PROMPT_CLEAN="$YS_VCS_PROMPT_CLEAN" + +# HG info +local hg_info='$(ys_hg_prompt_info)' +ys_hg_prompt_info() { + # make sure this is a hg dir + if [ -d '.hg' ]; then + echo -n "${YS_VCS_PROMPT_PREFIX1}hg${YS_VCS_PROMPT_PREFIX2}" + echo -n $(hg branch 2>/dev/null) + if [[ "$(hg config oh-my-zsh.hide-dirty 2>/dev/null)" != "1" ]]; then + if [ -n "$(hg status 2>/dev/null)" ]; then + echo -n "$YS_VCS_PROMPT_DIRTY" + else + echo -n "$YS_VCS_PROMPT_CLEAN" + fi + fi + echo -n "$YS_VCS_PROMPT_SUFFIX" + fi +} + +# Virtualenv +local venv_info='$(virtenv_prompt)' +YS_THEME_VIRTUALENV_PROMPT_PREFIX=" %{$fg[green]%}" +YS_THEME_VIRTUALENV_PROMPT_SUFFIX=" %{$reset_color%}%" +virtenv_prompt() { + [[ -n "${VIRTUAL_ENV:-}" ]] || return + echo "${YS_THEME_VIRTUALENV_PROMPT_PREFIX}${VIRTUAL_ENV:t}${YS_THEME_VIRTUALENV_PROMPT_SUFFIX}" +} + +local exit_code="%(?,,C:%{$fg[red]%}%?%{$reset_color%})" + +# Prompt format: +# +# PRIVILEGES USER @ MACHINE in DIRECTORY on git:BRANCH STATE [TIME] C:LAST_EXIT_CODE +# $ COMMAND +# +# For example: +# +# % ys @ ys-mbp in ~/.oh-my-zsh on git:master x [21:47:42] C:0 +# $ +PROMPT=" +%{$terminfo[bold]$fg[blue]%}#%{$reset_color%} \ +%(#,%{$bg[yellow]%}%{$fg[black]%}%n%{$reset_color%},%{$fg[cyan]%}%n) \ +%{$reset_color%}@ \ +%{$fg[green]%}%m \ +%{$reset_color%}in \ +%{$terminfo[bold]$fg[yellow]%}%~%{$reset_color%}\ +${hg_info}\ +${git_info}\ +${svn_info}\ +${venv_info}\ + \ +[%*] $exit_code +%{$terminfo[bold]$fg[red]%}$ %{$reset_color%}" diff --git a/zsh/oh-my-zsh/themes/zhann.zsh-theme b/zsh/oh-my-zsh/themes/zhann.zsh-theme new file mode 100644 index 0000000..a00650a --- /dev/null +++ b/zsh/oh-my-zsh/themes/zhann.zsh-theme @@ -0,0 +1,25 @@ +autoload -Uz vcs_info + +zstyle ':vcs_info:*' stagedstr '%F{green}●' +zstyle ':vcs_info:*' unstagedstr '%F{yellow}●' +zstyle ':vcs_info:*' check-for-changes true +zstyle ':vcs_info:svn:*' branchformat '%b' +zstyle ':vcs_info:svn:*' formats ' [%b%F{1}:%F{11}%i%c%u%B%F{green}]' +zstyle ':vcs_info:*' enable git svn + +theme_precmd () { + if [[ -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then + zstyle ':vcs_info:git:*' formats ' [%b%c%u%B%F{green}]' + else + zstyle ':vcs_info:git:*' formats ' [%b%c%u%B%F{red}●%F{green}]' + fi + + vcs_info +} + +setopt prompt_subst +PROMPT='%B%F{blue}%c%B%F{green}${vcs_info_msg_0_}%B%F{magenta} %{$reset_color%}% ' + +autoload -U add-zsh-hook +add-zsh-hook precmd theme_precmd + -- cgit v1.2.3-59-g8ed1b