README.textile 4.61 KB
Newer Older
Robby Russell's avatar
Robby Russell committed
1
2
!https://s3.amazonaws.com/ohmyzsh/oh-my-zsh-logo.png!

Adam Poskitt's avatar
Adam Poskitt committed
3
4
5
@oh-my-zsh@ is an open source, community-driven framework for managing your "Zsh":http://www.zsh.org/ configuration.

It comes bundled with a ton of helpful functions, helpers, plugins, themes, and a few things that make you shout…
6

Robby Russell's avatar
Robby Russell committed
7
8
bq. "OH MY ZSHELL!"

9
10
h2. Setup

Adam Poskitt's avatar
Adam Poskitt committed
11
12
13
@oh-my-zsh@ should work with any recent release of "Zsh":http://www.zsh.org/. The minimum recommended version is *4.3.9*.

If not already installed, you can install "Zsh":http://www.zsh.org/ using the command-line.
James Rowe's avatar
James Rowe committed
14

Adam Poskitt's avatar
Adam Poskitt committed
15
h3. The automatic installer… do you trust me?
16

Adam Poskitt's avatar
Adam Poskitt committed
17
You can install this via the command-line with either @curl@ or @wget@.
18

Adam Poskitt's avatar
Adam Poskitt committed
19
h4. via @curl@:
20

21
@curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh@
22

Adam Poskitt's avatar
Adam Poskitt committed
23
h4. via @wget@:
24

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

Adam Poskitt's avatar
Adam Poskitt committed
27
h4. *Optionally*, change the install directory:
28

Tony's avatar
Tony committed
29
The default location is @~/.oh-my-zsh@ (hidden in your home directory).
30

Adam Poskitt's avatar
Adam Poskitt committed
31
You can change the install directory with the @ZSH@ environment variable, either by running @export ZSH=/your/path@ before installing, or by setting it before the end of the install pipeline like this:
32
33

@curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | ZSH=~/.dotfiles/zsh sh@
34

35
36
h3. The manual way

Adam Poskitt's avatar
Adam Poskitt committed
37
1. Clone the repository:
Robby Russell's avatar
Robby Russell committed
38

Adam Poskitt's avatar
Adam Poskitt committed
39
@git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh@
Robby Russell's avatar
Robby Russell committed
40

Adam Poskitt's avatar
Adam Poskitt committed
41
2. *Optionally*, backup your existing @~/.zshrc@ file:
42

Adam Poskitt's avatar
Adam Poskitt committed
43
@cp ~/.zshrc ~/.zshrc.orig@
44

Adam Poskitt's avatar
Adam Poskitt committed
45
3. Create a new "Zsh":http://www.zsh.org/ config file by copying the "Zsh":http://www.zsh.org/ template we've provided:
Robby Russell's avatar
Robby Russell committed
46

Adam Poskitt's avatar
Adam Poskitt committed
47
@cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc@
48

Adam Poskitt's avatar
Adam Poskitt committed
49
4. Set "Zsh":http://www.zsh.org/ as your default shell:
50

Adam Poskitt's avatar
Adam Poskitt committed
51
@chsh -s /bin/zsh@
52

Adam Poskitt's avatar
Adam Poskitt committed
53
5. Start or restart "Zsh":http://www.zsh.org/ by opening a new command-line window.
Robby Russell's avatar
Robby Russell committed
54

Robby Russell's avatar
Robby Russell committed
55
56
h3. Problems?

Adam Poskitt's avatar
Adam Poskitt committed
57
You _might_ need to modify your @PATH@ in @~/.zshrc@ if you're not able to find some commands after switching to @oh-my-zsh@.
Robby Russell's avatar
Robby Russell committed
58

Adam Poskitt's avatar
Adam Poskitt committed
59
If you installed manually or changed the install location, check the @ZSH@ environment variable in @~/.zshrc@.
60

61
62
h2. Usage

Adam Poskitt's avatar
Adam Poskitt committed
63
* enable the plugins you want in your @~/.zshrc@ (take a look at the @plugins/@ directory and the "wiki":https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins to see what's available)
toabi's avatar
toabi committed
64
** example: @plugins=(git osx ruby)@
Adam Poskitt's avatar
Adam Poskitt committed
65
66
67
* theme support: change the @ZSH_THEME@ environment variable in @~/.zshrc@
** take a look at the @themes/@ directory and the "wiki":https://wiki.github.com/robbyrussell/oh-my-zsh/themes to see what comes bundled with @oh-my-zsh@
* & much, much more… take a look at the @lib/@ directory to see what @oh-my-zsh@ has to offer…
Robby Russell's avatar
Robby Russell committed
68

James Cox's avatar
James Cox committed
69
h2. Useful
James Cox's avatar
James Cox committed
70

Adam Poskitt's avatar
Adam Poskitt committed
71
The "refcard":http://www.bash2zsh.com/zsh_refcard/refcard.pdf is pretty useful for tips.
James Cox's avatar
James Cox committed
72

73
74
h3. Customization

Adam Poskitt's avatar
Adam Poskitt committed
75
76
77
78
79
If you want to override any of the default behaviors, just add a new file (ending in @.zsh@) in the @custom/@ directory.

If you have many functions that go well together, you can put them as a @*.plugin.zsh@ file in the @custom/plugins/@ directory and then enable this plugin (see '"Usage":https://github.com/robbyrussell/oh-my-zsh#usage' above).

If you would like to override the functionality of a plugin distributed with @oh-my-zsh@, create a plugin of the same name in the @custom/plugins/@ directory and it will be loaded instead of the one in @plugins/@.
80

81
h3. Updates
Justin Mazzi's avatar
Justin Mazzi committed
82

Adam Poskitt's avatar
Adam Poskitt committed
83
By default you will be prompted to check for upgrades. If you would like @oh-my-zsh@ to automatically upgrade itself without prompting you, set the following in your @~/.zshrc@:
84
85
86

@DISABLE_UPDATE_PROMPT=true@

Adam Poskitt's avatar
Adam Poskitt committed
87
To disable upgrades entirely, set the following in your @~/.zshrc@:
88
89

@DISABLE_AUTO_UPDATE=true@
90

Adam Poskitt's avatar
Adam Poskitt committed
91
To upgrade directly from the command-line, just run @upgrade_oh_my_zsh@.
Matthew Robben's avatar
Matthew Robben committed
92

Robby Russell's avatar
Robby Russell committed
93
94
h3. Uninstalling

Adam Poskitt's avatar
Adam Poskitt committed
95
If you want to uninstall @oh-my-zsh@, just run @uninstall_oh_my_zsh@ from the command-line and it'll remove itself and revert you to @bash@ (or your previous "Zsh":http://www.zsh.org/ configuration).
Robby Russell's avatar
Robby Russell committed
96

Robby Russell's avatar
Robby Russell committed
97
h2. Help out!
98

Adam Poskitt's avatar
Adam Poskitt committed
99
I'm far from being a "Zsh":http://www.zsh.org/ 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!
Robby Russell's avatar
Robby Russell committed
100

Adam Poskitt's avatar
Adam Poskitt committed
101
h3. (Don't) send us your theme (for now)!
102

Adam Poskitt's avatar
Adam Poskitt committed
103
-I'm hoping to collect a bunch of themes – you can see existing ones in the @themes/@ directory.-
104

Adam Poskitt's avatar
Adam Poskitt committed
105
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.
106
107
108

h2. Contributors

Adam Poskitt's avatar
Adam Poskitt committed
109
This project wouldn't exist without all of our awesome users and contributors: "view our growing list of contributors":https://github.com/robbyrussell/oh-my-zsh/contributors
110

111
Thank you so much!