Skip to content
Carlo Sala edited this page Dec 22, 2024 · 91 revisions

This wiki is automatically published from ohmyzsh/wiki. To edit this page, go to ohmyzsh/wiki, make your changes and submit a Pull Request.

This section uses new, uniform screenshots. To see the previous section, go to Themes (legacy).

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.

Note

You will many times see screenshots for a zsh theme, and try it out, and find that it doesn't look the same for you.

This is because many themes require installing a Powerline Font or a Nerd Font in order to render properly. Without them, these themes will render weird prompt symbols. Check out the FAQ for more information.

Also, beware that themes only control what your prompt looks like. This is, the text you see before or after your cursor, where you'll type your commands. Themes don't control things such as the colors of your terminal window (known as color scheme) or the font of your terminal. These are settings that you can change in your terminal emulator. For more information, see what is a zsh theme.

Themes

robbyrussell

The default that Robby Russell uses.

robbyrussell


The rest of the themes, in alphabetical order:

A

af-magic

af-magic

afowler

afowler

agnoster

agnoster

Official repository

Additional setup:

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

alanpeabody

alanpeabody

amuse

amuse

(You might need to install one of the patched powerline fonts for it to look the same)

apple

apple

arrow

arrow

aussiegeek

aussiegeek

avit

avit

awesomepanda

awesomepanda

B

bira

bira

blinks

blinks

bureau

bureau

To use: In the right prompt you see git status and (if you use nvm) the Node.js version.

C

candy

candy

clean

clean

cloud

cloud

crcandy

crcandy

crunch

crunch

cypher

cypher

D

dallas

dallas

darkblood

darkblood

daveverwer

daveverwer

dieter

dieter

dogenpunk

dogenpunk

dpoggi

dpoggi

dst

dst

dstufft

dstufft

duellj

duellj

E

eastwood

eastwood

edvardm

edvardm

emotty

emotty

essembeh

essembeh

evan

evan

F

fino-time

fino-time

fino

fino

fishy

fishy

The fish shell prompt with git support

flazz

flazz

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

fletcherm

fletcherm

fox

fox

frisk

frisk

frontcube

frontcube

funky

funky

It’s funky…

fwalch

fwalch

G

gallifrey

gallifrey

gallois

gallois

garyblessington

garyblessington

gentoo

gentoo

geoffgarside

geoffgarside

gianu

gianu

gnzh

gnzh

gozilla

gozilla

H

half-life

half-life

humza

humza

I

imajes

imajes

intheloop

intheloop

itchy

itchy

J

jaischeema

jaischeema

jbergantine

jbergantine

jispwoso

jispwoso

jnrowe

jnrowe

jonathan

jonathan

josh

josh

jreese

jreese

jtriley

jtriley

juanghurtado

juanghurtado

junkfood

junkfood

Totally ripped off Dallas theme

More Info

K

kafeitu

kafeitu

kardan

kardan

kennethreitz

kennethreitz

kolo

kolo

kphoen

kphoen

L

lambda

lambda

linuxonly

linuxonly

(As the name states, this only works on Linux)

lukerandall

lukerandall

M

macovsky

macovsky

maran

maran

mgutz

mgutz

mh

mh

michelebologna

michelebologna

mikeh

mikeh

miloshadzic

miloshadzic

minimal

minimal

mortalscumbag

mortalscumbag

Also tells you when logged in over ssh

mrtazz

mrtazz

murilasso

murilasso

muse

muse

N

nanotech

nanotech

nebirhos

nebirhos

nicoulaj

nicoulaj

norm

norm

O

obraun

obraun

P

peepcode

peepcode

philips

philips

pmcgee

pmcgee

pygmalion

pygmalion

R

re5et

re5et

refined

refined

rgm

rgm

risto

risto

rixius

rixius

rkj-repos

rkj

S

sammy

sammy

simonoff

simonoff

simple

simple

skaro

skaro

smt

smt

Soliah

Soliah

sonicradish

sonicradish

sorin

sorin

sporty_256

sporty_256

steeef

steeef

strug

strug

sunaku

sunaku

Exit status if nonzero, status & branch if git, pwd always.

sunrise

sunrise

Lightweight prompt with exit status and git status consistent mode line.

superjarin

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).

suvash

suvash

Username, host, directory, git branch and rvm gemset

T

takashiyoshida

takashiyoshida

terminalparty

terminalparty

There is a party every day.

theunraveler

theunraveler

Minimal, informative when it needs to be.

tjkirch

tjkirch

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

tonotdo

tonotdo

trapd00r

trapd00r

W

wedisagree

wedisagree

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

wezm

wezm

wezm+

wezm+

wuffers

wuffers

X

xiong-chiamiov

xiong-chiamiov-plus

xiong-chiamiov-plus

xiong-chiamiov

Y

ys

ys

Clean, simple, compatible and meaningful.Tested on Linux, Unix and Windows under ANSI colors. It is recommended to use with a dark background.

More info

Z

zhann

zhann


More themes

You can find more themes here.

(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.

Or put into a Gist and add it to the External Themes list.

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.Please, compress images before. 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 an image 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

Version 2019-08

The current set of theme screenshots was generated automatically by @Kovah's Oh My Zsh-screenshot-generation tool, using on macOS Mojave (10.14.5) with the macOS Terminal app. The used theme is Basic with the default settings and colors. The font was switched to Fira Code at 13 pt to enable some special characters in certain themes. All terminal windows have a size of 100x31.

Clone this wiki locally