Skip to content
Jarin Udom edited this page Mar 19, 2015 · 47 revisions

All the current themes can be found in the themes/ directory in the oh-my-zsh distribution. See list here.

In order to enable a theme, set ZSH_THEME to the name of the theme in your ~/.zshrc, before sourcing Oh My Zsh; for example: ZSH_THEME=robbyrussell
If you do not want any theme enabled, just set ZSH_THEME to blank: ZSH_THEME=""

Here is a collection of screenshots and descriptions of themes that have been contributed to Oh My Zsh. There are some missing from this page. If you want to add or edit descriptions, see the format description at the bottom of this page.

The Themes

robbyrussell

the (default) that Robby uses

robbyrussell


The rest of the themes, in alphabetical order:

af-magic

af-magic

afowler

afowler

agnoster

(more info)

agnoster

(Shown with Solarized Dark colorscheme and patched Menlo 14pt in iTerm 2)

Additional setup:

  • Install one of the patched fonts from Vim-Powerline or patch your own for the special characters.
  • Optionally set DEFAULT_USER in ~/.zshrc to your regular username to hide the “user@hostname” info when you’re logged in as yourself on your local machine.

alanpeabody

alanpeabody

amuse

amuse

To use: You might need to install one of the patched powerline fonts for it to look the same.

arrow

arrow

aussiegeek

aussiegeek

avit

avit

bira

bira

blinks

blinks

Additional setup: Set up Solarized.

bureau

bureau

To use: In the right prompt you see git status and (if you use nvm) the Node.js version. (I’m using the Solarized color scheme in this screenshot.)

candy

candy

clean

clean

cloud

cloud

crunch

crunch

cypher

cypher

dallas

dallas

darkblood

darkblood

daveverwer

daveverwer

dieter

dieter

Additional setup: Get this small fix if you don’t have it yet. (Fix was pulled into robbyrussell/oh-my-zsh on 2011-01-08.)

dogenpunk

dogenpunk

dpoggi

dpoggi

eastwood

eastwood

evan

a skinny, topless prompt

evan

fishy

The fish shell prompt with git support

fishy

flazz

Has git and vi-command mode support (when enabled) flazz

frisk

frisk

funky

it’s funky… funky

gallifrey

gallifrey

gallois

gallois

garyblessington

garyblessington

gentoo

gentoo

geoffgarside

geoffgarside

gianu

gianu

gnzh

gnzh

imajes

imajes

jnrowe

jnrowe

jreese

jreese

jtriley

jtriley

juanghurtado

juanghurtado

junkfood

(more info)

junkfood

kafeitu

kafeitu

kardan

kardan

kennethreitz

kennethreitz

kolo

kolo

kphoen

kphoen

lambda

lambda

linuxonly

linuxonly

(As the name states, this only works on linux.)

lukerandall

lukerandall

macovsky

macovsky

maran

maran

mh

mh

miloshadzic

miloshadzic

minimal

minimal

mortalscumbag

also tells you when logged in over ssh

mortalscumbag

mrtazz

mrtazz

muse

muse

nanotech

nanotech

nebirhos

nebirhos

nicoulaj

nicoulaj

norm

norm

philips

philips

pygmalion

pygmalion

(Shown with Solarized Dark colorscheme.)

risto

risto

rixius

rixius

rkj-repos

rkj-repos

rkj-repos-2

sammy

sammy

simple

simple

smt

smt

sorin

sorin

sporty_256

sporty_256

steeef

steeef

sunaku

exit status if nonzero, status & branch if git, pwd always sunaku

sunrise

Lightweight prompt with exit status and git status consistent mode line

sunrise

superjarin

git status, git branch, and ruby, all in a no muss, no fuss prompt! Works with RVM, chruby, and rbenv (just activate the corresponding plugin).

superjarin

suvash

username, host, directory, git branch and rvm gemset

suvash

terminalparty

There is a party every day.

terminalparty

theunraveler

Minimal, informative when it needs to be. theunraveler

tjkirch

Based on dst, plus a lightning bolt and return codes.

tjkirch

tonotdo

tonotdo

trapd00r

trapd00r

wedisagree

wedisagree

Instructions to further customize the theme are available as comments in the theme file.

wezm

wezm

wuffers

wuffers

xiong-chiamiov

xiong-chiamiov

xiong-chiamiov-plus

xiong-chiamiov-plus

ys

Clean, simple, compatible and meaningful. (more info)

ys

zhann

zhann

(Don’t) Send us your theme! (for now)

We have enough themes for the time being. Please fork the project and add on in there, you can let people know how to grab it from there.

Theme Description Format

The theme descriptions in this page should contain:

  • The name of the theme
  • A screenshot ** (Preferably in PNG format, and hosted on a GitHub issue)
  • Instructions for any configuration besides setting ZSH_THEME in ~/.zshrc ** For example, font installation, terminal color scheme configuration, or optional environment variables that affect the theme
  • Any dependencies outside Oh My Zsh

We use manually-constructed screenshots because some of the themes require additional terminal configuration to look their best, and so the code in example shell sessions can showcase the theme's features. There is also a separate collection of automatically-generated screenshots linked at the bottom of this page.

Uploading screenshots to GitHub

We host all the screenshot images on GitHub itself, to avoid external dependencies on other hosting services or URLs that might break. We use issue attachments which will get them in to githubusercontent.com. (It's also possible to store image files in a GitHub wiki itself, but this requires you to have Contributor permissions for the repo whose Wiki you're editing. The issue-attachment method can be done by anybody.)

To upload an image to GitHub, just drag and drop it into the text area on an issue you're editing. You can use issue #3619 for this to avoid spamming people with notifications about new issues. The uploaded image will turn in to a link in Markdown format. Edit that to use the special [![name](image-url)](image-url) syntax to make the image link to itself, so people can open the image in a new tab to view it full size. (Images inside a wiki page may be displayed scaled down.)

For example:

    [![wezm](https://cloud.githubusercontent.com/assets/1441704/6315419/915f6ca6-ba01-11e4-95b3-2c98114b5e5c.png)](https://cloud.githubusercontent.com/assets/1441704/6315419/915f6ca6-ba01-11e4-95b3-2c98114b5e5c.png)

If you have several uploaded screenshot links you need to convert to that self-linked syntax, you can use this sed command on the markdown file to programmatically convert them.

sed 's/^!\[[a-zA-Z0-9 -]*\](\([^)]*\)) *$/[&](\1)/'

Screenshots of Each Theme

Screenshots of each theme (as of 2013-04-10), in OS X Terminal.app using Consolas 13pt and Pro color scheme, inside a folder containing both a git and a mercurial repo. Each screenshot displays the output of the pwd command. It has shortcomings (plugins for some themes might be missing), but it offers a convenient and uniform overview of each theme. Plugins used were battery, rvm, hg prompt, among others.

Clone this wiki locally