|
|
|
@ -1,68 +1,79 @@
|
|
|
|
|
A handful of functions, auto-complete helpers, and stuff that makes you shout...
|
|
|
|
|
# Oh My Zsh
|
|
|
|
|
|
|
|
|
|
> “OH MY ZSHELL!”
|
|
|
|
|
OMZ is a configuration framework for [Zsh](http://www.zsh.org) that enriches
|
|
|
|
|
the command line interface environment with sane defaults, aliases, functions,
|
|
|
|
|
auto completion, and prompt themes.
|
|
|
|
|
|
|
|
|
|
## Setup
|
|
|
|
|
## Installation
|
|
|
|
|
|
|
|
|
|
`oh-my-zsh` should work with any recent release of [Zsh](http://www.zsh.org), but the
|
|
|
|
|
minimum recommended version is 4.3.9.
|
|
|
|
|
Oh My Zsh will work with any recent release of Zsh, but the minimum recommended
|
|
|
|
|
version is 4.3.10.
|
|
|
|
|
|
|
|
|
|
1. Clone the repository.
|
|
|
|
|
1. Clone the repository:
|
|
|
|
|
|
|
|
|
|
`git clone git://github.com/sorin-ionescu/oh-my-zsh.git ~/.oh-my-zsh`
|
|
|
|
|
`git clone https://github.com/sorin-ionescu/oh-my-zsh.git ~/.oh-my-zsh`
|
|
|
|
|
|
|
|
|
|
2. Create a new Zsh configuration by copying the Zsh template provided.
|
|
|
|
|
2. Create a new Zsh configuration by copying the Zsh template provided:
|
|
|
|
|
|
|
|
|
|
**NOTE**: If you already have a `~/.zshrc` file, you should back it up with `cp
|
|
|
|
|
~/.zshrc{,.orig}` in case you want to go back to your original settings.
|
|
|
|
|
|
|
|
|
|
cp ~/.oh-my-zsh/templates/zshrc.template.zsh ~/.zshrc
|
|
|
|
|
`cp ~/.oh-my-zsh/templates/zshrc.zsh ~/.zshrc`
|
|
|
|
|
|
|
|
|
|
3. Set Zsh as your default shell:
|
|
|
|
|
|
|
|
|
|
`chsh -s /bin/zsh`
|
|
|
|
|
|
|
|
|
|
4. Start / restart Zsh by opening a new terminal window or tab.
|
|
|
|
|
4. Open a new Zsh terminal window or tab.
|
|
|
|
|
|
|
|
|
|
### Mac OS X
|
|
|
|
|
|
|
|
|
|
If you have administrator privileges, you must fix an Apple miss configuration
|
|
|
|
|
in Mac OS X 10.7 Lion by renaming `/etc/zshenv` to `/etc/zprofile`, or Zsh will
|
|
|
|
|
have the wrong `PATH` when executed non-interactively by scripts.
|
|
|
|
|
|
|
|
|
|
### Problems?
|
|
|
|
|
### Troubleshooting
|
|
|
|
|
|
|
|
|
|
If you are not able to find certain commands after switching to *Oh My Zsh*, you need
|
|
|
|
|
to modify `PATH` in `~/.zshrc`, or better yet, in `~/functions/02.environment.zsh`
|
|
|
|
|
(may be subject to merge conflicts).
|
|
|
|
|
If you are not able to find certain commands after switching to *Oh My Zsh*,
|
|
|
|
|
modify the `PATH` variable in `environment.zsh` then open a new Zsh terminal
|
|
|
|
|
window or tab.
|
|
|
|
|
|
|
|
|
|
## Usage
|
|
|
|
|
|
|
|
|
|
- Enable the plugins you want in `~/.zshrc`.
|
|
|
|
|
- Browse `plugins/` to see what is available.
|
|
|
|
|
- Populate the plugins array `plugins=(git osx ruby)`.
|
|
|
|
|
Oh My Zsh has many features disabled by default. Read the source code and
|
|
|
|
|
accompanying README files to learn of what is available.
|
|
|
|
|
|
|
|
|
|
- Change the prompt in `~/.zshrc`.
|
|
|
|
|
- For a list of themes, type `prompt -l`.
|
|
|
|
|
- To preview a theme, type `prompt -p name`.
|
|
|
|
|
### Plugins
|
|
|
|
|
|
|
|
|
|
## Useful
|
|
|
|
|
1. Browse `plugins/` to see what is available.
|
|
|
|
|
2. Load the plugins you need in `~/.zshrc` then open a new Zsh terminal window
|
|
|
|
|
or tab.
|
|
|
|
|
|
|
|
|
|
The [Zsh Reference Card](http://www.bash2zsh.com/zsh_refcard/refcard.pdf) is tasty.
|
|
|
|
|
### Themes
|
|
|
|
|
|
|
|
|
|
### Customization
|
|
|
|
|
1. For a list of themes, type `prompt -l`.
|
|
|
|
|
2. To preview a theme, type `prompt -p name`.
|
|
|
|
|
3. Load the theme you like in `~/.zshrc` then open a new Zsh terminal window or
|
|
|
|
|
tab.
|
|
|
|
|
![sorin theme](http://i.imgur.com/aipDQ.png "sorin theme")
|
|
|
|
|
|
|
|
|
|
If you have many related functions, you can organise them in a file in the
|
|
|
|
|
`functions/` directory.
|
|
|
|
|
### Customization
|
|
|
|
|
|
|
|
|
|
## Help out!
|
|
|
|
|
The project is managed via [Git](http://git-scm.com). It is highly recommend
|
|
|
|
|
that you commit your changes and push them to [GitHub](http://github.com) to
|
|
|
|
|
not lose them. If you do not know how to use Git, follow this
|
|
|
|
|
[tutorial](http://gitimmersion.com) and bookmark this
|
|
|
|
|
[reference](http://gitref.org).
|
|
|
|
|
|
|
|
|
|
I am not a Zsh expert and suspect that there are improvements to be made. If you have
|
|
|
|
|
ideas on how to make the configuration easier to maintain or improve the performance,
|
|
|
|
|
do not hesitate to fork and send pull requests!
|
|
|
|
|
## Resources
|
|
|
|
|
|
|
|
|
|
## Contributors
|
|
|
|
|
The [Zsh Reference Card](http://www.bash2zsh.com/zsh_refcard/refcard.pdf) is
|
|
|
|
|
indispensable.
|
|
|
|
|
|
|
|
|
|
This project would not exist without all of our awesome users and contributors.
|
|
|
|
|
## Contribute
|
|
|
|
|
|
|
|
|
|
- View the growing [list](https://github.com/robbyrussell/oh-my-zsh/contributors) of
|
|
|
|
|
contributors.
|
|
|
|
|
This project would not exist without all of its users and
|
|
|
|
|
[contributors](https://github.com/sorin-ionescu/oh-my-zsh/contributors).
|
|
|
|
|
|
|
|
|
|
Thank you so much!
|
|
|
|
|
If you have ideas on how to make the configuration easier to maintain or
|
|
|
|
|
improve its performance, do not hesitate to fork and send pull requests.
|
|
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
|
@ -70,20 +81,21 @@ Thank you so much!
|
|
|
|
|
|
|
|
|
|
Copyright (c) 2011 Robby Russell, Sorin Ionescu, and contributors.
|
|
|
|
|
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this
|
|
|
|
|
software and associated documentation files (the "Software"), to deal in the Software
|
|
|
|
|
without restriction, including without limitation the rights to use, copy, modify,
|
|
|
|
|
merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
|
|
|
|
|
permit persons to whom the Software is furnished to do so, subject to the following
|
|
|
|
|
conditions:
|
|
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in all copies
|
|
|
|
|
or substantial portions of the Software.
|
|
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
|
|
|
|
INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
|
|
|
|
|
A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
|
|
|
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
|
|
|
|
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
|
|
|
|
|
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
|
|
|
this software and associated documentation files (the "Software"), to deal in
|
|
|
|
|
the Software without restriction, including without limitation the rights to
|
|
|
|
|
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
|
|
|
|
of the Software, and to permit persons to whom the Software is furnished to do
|
|
|
|
|
so, subject to the following conditions:
|
|
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in all
|
|
|
|
|
copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
|
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
|
|
|
SOFTWARE.
|
|
|
|
|
|
|
|
|
|