🙃 A delightful community-driven (with 2,200+ contributors) framework for managing your zsh configuration. Includes 300+ optional plugins (rails, git, macOS, hub, docker, homebrew, node, php, python, etc), 140+ themes to spice up your morning, and an auto-update tool so that makes it easy to keep up with the latest updates from the community.
Find a file
2011-04-04 13:56:00 +02:00
custom Moving some example files into custom/ 2009-09-23 08:02:58 -07:00
lib Command title behavior no longer depend on local zsh configuration 2011-04-04 13:56:00 +02:00
log Adding a file into log/ so that we have a log file to record history to 2009-08-31 11:17:05 -07:00
plugins Completions are git subdommand-aware now 2011-04-03 11:01:48 -07:00
templates Introduce DISABLE_AUTO_TITLE option 2011-03-23 21:20:08 -07:00
themes No space before prompt char at beginning of line 2011-03-15 00:43:37 +00:00
tools Fixed auto update. 2011-02-04 11:33:20 +11:00
.gitignore Made git ignore everything in custom, not only the .zsh files. 2011-01-10 17:01:11 +01:00
oh-my-zsh.sh Postponing sourcing of the theme until after local customizations 2011-01-08 23:34:47 -05:00
README.textile fixed wget command in readme 2011-03-24 09:47:48 +01:00

A handful of functions, auto-complete helpers, and stuff that makes you shout...

bq. "OH MY ZSHELL!"

h2. Setup

@oh-my-zsh@ should work with any recent release of "zsh":http://www.zsh.org/, the minimum recommended version is 4.3.9.

h3. The automatic installer... (do you trust me?)

@wget --no-check-certificate https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh@

h3. The manual way


1. Clone the repository

  @git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh@

2. Create a new zsh config by copying the zsh template we've provided.

  *NOTE*: If you already have a ~/.zshrc file, you should back it up. @cp ~/.zshrc ~/.zshrc.orig@ in case you want to go back to your original settings.

  @cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc@

3. Set zsh as your default shell:

  @chsh -s /bin/zsh@

4. Start / restart zsh (open a new terminal is easy enough...)

h3. Problems?

You _might_ need to modify your PATH in ~/.zshrc if you're not able to find some commands after switching to _Oh My Zsh_.

h2. Usage

* enable the plugins you want in your @~/.zshrc@ (take a look at @plugins/@ to see what's possible)
** example: @plugins=(git osx ruby)@
* Theme support: Change the @ZSH_THEME@ environment variable in @~/.zshrc@.
** Take a look at the "current themes":https://wiki.github.com/robbyrussell/oh-my-zsh/themes that come bundled with _Oh My Zsh_.
* much much more...  take a look at @lib/@ what _Oh My Zsh_ offers...

h2. Useful

the "refcard":http://www.bash2zsh.com/zsh_refcard/refcard.pdf is pretty tasty for tips.

h3. Customization

If you want to override any of the default behavior, just add a new file (ending in @.zsh@) into the @custom/@ directory.
If you have many functions which go good together you can put them as a *.plugin.zsh file in the @plugin/@ directory and then enable this plugin.

h3. Uninstalling

If you want to uninstall it, just run @uninstall_oh_my_zsh@ from the command line and it'll remove itself and revert you to bash (or your previous zsh config).

h2. Thanks

* Rick Olson (technoweenie) might remember some of the configuration, which I took from a pastie a few years ago.
* Marcel (noradio) provided Rick the original zsh configuration.
* Nicholas (ulysses) for the "rake autocompletion code":http://weblog.rubyonrails.org/2006/3/9/fast-rake-task-completion-for-zsh.

h2. Help out!

I'm far from being a zsh-expert and suspect there are many ways to improve. If you have ideas on how to make the configuration easier to maintain (and faster), don't hesitate to fork and send pull requests!

h3. Send us your theme!

I'm hoping to collect a bunch of themes for our command prompts. You can see existing ones in the @themes/@ directory.