Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master'
Browse files Browse the repository at this point in the history
* upstream/master: (54 commits)
  Revert "Add Composer's local binaries to PATH"
  Revert "Add a CONTRIBUTING file to instruct people on issues and pull requests"
  add wp-cli plugin readme
  add git difftool alias (gdt)
  Use the library function for ruby prompt
  Improve support for Vagrant VM definitions
  Add README.md for adb-autocompletion plugin.
  Link to swag in installer... shameless profiting
  Adding link to the store for swag in upgrade process
  Adding README.md and renaming plugin
  Adding README.md
  Adding README.md
  Add Composer's local binaries to PATH
  Amended to source the original aws_zsh_completer.sh rather than the mangled version installed into $(brew-prefix)/bin if using homebrew installed awscli on OSX.
  tmuxinator completion update: Current completion plugin isn't up to date and ohmyzsh#2075 PR, which is also the completion plugin on the official tmuxinator repository, doesn't work. Thus this should do the trick for the moment. Also suppressed an error when no completion is available
  Fix pass zsh completion and autoloading
  Update pass completion to upstream
  Added a link to the file's license and added the commiter as plugin maintaner.
  Categories of issues in oh-my-zsh (work-in-progress)
  Add CONTRIBUTING.md file general structure
  ...
  • Loading branch information
rsrchboy committed Sep 1, 2014
2 parents 42eea63 + da94f45 commit bc2590d
Show file tree
Hide file tree
Showing 41 changed files with 731 additions and 192 deletions.
84 changes: 42 additions & 42 deletions README.textile
@@ -1,111 +1,111 @@
!https://s3.amazonaws.com/ohmyzsh/oh-my-zsh-logo.png!

oh-my-zsh is an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes, and few things that make you shout...
@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…

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.
If not already, install zsh using the command line first.
@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.

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

You can install this via the command line with either @curl@ or @wget@.
You can install this via the command-line with either @curl@ or @wget@.

h4. via @curl@
h4. via @curl@:

@curl -L http://install.ohmyz.sh | sh@

h4. via @wget@
h4. via @wget@:

@wget --no-check-certificate http://install.ohmyz.sh -O - | sh@

h4. Optional: change the install directory
h4. *Optionally*, change the install directory:

The default location is @~/.oh-my-zsh@ (hidden in your home directory).

You can change the install directory with the ZSH environment variable, either
by running @export ZSH=/your/path@ before installing, or setting it before the
end of the install pipeline like this:
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:

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


h3. The manual way

1. Clone the repository
1. Clone the repository:

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

2. *OPTIONAL* Backup your existing @~/.zshrc@ file
2. *Optionally*, backup your existing @~/.zshrc@ file:

@cp ~/.zshrc ~/.zshrc.orig@
@cp ~/.zshrc ~/.zshrc.orig@

3. Create a new zsh config by copying the zsh template we've provided.
3. Create a new "Zsh":http://www.zsh.org/ config file by copying the "Zsh":http://www.zsh.org/ template we've provided:

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

4. Set zsh as your default shell:
4. Set "Zsh":http://www.zsh.org/ as your default shell:

@chsh -s /bin/zsh@
@chsh -s /bin/zsh@

5. Start / restart zsh (open a new terminal is easy enough...)
5. Start or restart "Zsh":http://www.zsh.org/ by opening a new command-line window.

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_.
You _might_ need to modify your @PATH@ in @~/.zshrc@ if you're not able to find some commands after switching to @oh-my-zsh@.

If you installed manually or changed the install location, check ZSH in @~/.zshrc@
If you installed manually or changed the install location, check the @ZSH@ environment variable in @~/.zshrc@.

h2. Usage

* 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 possible)
* 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)
** 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...
* 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 moretake a look at the @lib/@ directory to see what @oh-my-zsh@ has to offer…

h2. Useful

the "refcard":http://www.bash2zsh.com/zsh_refcard/refcard.pdf is pretty tasty for tips.
The "refcard":http://www.bash2zsh.com/zsh_refcard/refcard.pdf is pretty useful 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 well together you can put them as a @*.plugin.zsh@ file in the @custom/plugins/@ directory and then enable this plugin.
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/@.
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/@.

h3. Updates

By default you will be prompted to check for updates. If you would like oh-my-zsh to automatically update itself without prompting you, set the following in your @~/.zshrc@
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@:

@DISABLE_UPDATE_PROMPT=true@

To disable updates entirely, put this in your @~/.zshrc@
To disable upgrades entirely, set the following in your @~/.zshrc@:

@DISABLE_AUTO_UPDATE=true@

To upgrade directly from the command line, just run @upgrade_oh_my_zsh@
To upgrade directly from the command-line, just run @upgrade_oh_my_zsh@.

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

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!
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!

h3. (Don't) Send us your theme! (for now)
h3. (Don't) send us your theme (for now)!

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

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

h2. Contributors

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

Thank you so much!
4 changes: 4 additions & 0 deletions cache/.easter-egg
@@ -0,0 +1,4 @@
This file is only here so that Git will keep a cache directory as .gitignore is ignoring all the files within it.

Feel free to add love notes for people here.

1 change: 0 additions & 1 deletion lib/aliases.zsh
Expand Up @@ -30,7 +30,6 @@ alias lsa='ls -lah'
alias l='ls -lah'
alias ll='ls -lh'
alias la='ls -lAh'
alias sl=ls # often screw this up

alias afind='ack-grep -il'

4 changes: 2 additions & 2 deletions lib/functions.zsh
Expand Up @@ -3,11 +3,11 @@ function zsh_stats() {
}

function uninstall_oh_my_zsh() {
/usr/bin/env ZSH=$ZSH /bin/sh $ZSH/tools/uninstall.sh
env ZSH=$ZSH /bin/sh $ZSH/tools/uninstall.sh
}

function upgrade_oh_my_zsh() {
/usr/bin/env ZSH=$ZSH /bin/sh $ZSH/tools/upgrade.sh
env ZSH=$ZSH /bin/sh $ZSH/tools/upgrade.sh
}

function take() {
Expand Down
5 changes: 2 additions & 3 deletions lib/termsupport.zsh
Expand Up @@ -34,6 +34,5 @@ function omz_termsupport_preexec {
title '$CMD' '%100>...>$LINE%<<'
}

autoload -U add-zsh-hook
add-zsh-hook precmd omz_termsupport_precmd
add-zsh-hook preexec omz_termsupport_preexec
precmd_functions+=(omz_termsupport_precmd)
preexec_functions+=(omz_termsupport_preexec)
2 changes: 1 addition & 1 deletion oh-my-zsh.sh
@@ -1,6 +1,6 @@
# Check for updates on initial load...
if [ "$DISABLE_AUTO_UPDATE" != "true" ]; then
/usr/bin/env ZSH=$ZSH DISABLE_UPDATE_PROMPT=$DISABLE_UPDATE_PROMPT zsh -f $ZSH/tools/check_for_upgrade.sh
env ZSH=$ZSH DISABLE_UPDATE_PROMPT=$DISABLE_UPDATE_PROMPT zsh -f $ZSH/tools/check_for_upgrade.sh
fi

# Initializes Oh My Zsh
Expand Down
8 changes: 8 additions & 0 deletions plugins/adb/README.md
@@ -0,0 +1,8 @@
# adb autocomplete plugin

* Adds autocomplete options for all adb commands.


## Requirements

In order to make this work, you will need to have the Android adb tools set up in your path.
39 changes: 39 additions & 0 deletions plugins/adb/_adb
@@ -0,0 +1,39 @@
#compdef adb
#autoload

# in order to make this work, you will need to have the android adb tools

# adb zsh completion, based on homebrew completion

local -a _1st_arguments
_1st_arguments=(
'bugreport:return all information from the device that should be included in a bug report.'
'connect:connect to a device via TCP/IP Port 5555 is default.'
'devices:list all connected devices'
'disconnect:disconnect from a TCP/IP device. Port 5555 is default.'
'emu:run emulator console command'
'forward:forward socket connections'
'help:show the help message'
'install:push this package file to the device and install it'
'jdwp:list PIDs of processes hosting a JDWP transport'
'logcat:View device log'
'pull:copy file/dir from device'
'push:copy file/dir to device'
'shell:run remote shell interactively'
'sync:copy host->device only if changed (-l means list but dont copy)'
'uninstall:remove this app package from the device'
'version:show version num'
)

local expl
local -a pkgs installed_pkgs

_arguments \
'*:: :->subcmds' && return 0

if (( CURRENT == 1 )); then
_describe -t commands "adb subcommand" _1st_arguments
return
fi

_files
18 changes: 13 additions & 5 deletions plugins/archlinux/archlinux.plugin.zsh
Expand Up @@ -21,10 +21,14 @@ if [[ -x `which yaourt` ]]; then
alias yalst='yaourt -Qe' # List installed packages, even those installed from AUR (they're tagged as "local")
alias yaorph='yaourt -Qtd' # Remove orphans using yaourt
# Additional yaourt alias examples
if [[ -x `which abs` ]]; then
if [[ -x `which abs` && -x `which aur` ]]; then
alias yaupd='yaourt -Sy && sudo abs && sudo aur' # Update and refresh the local package, ABS and AUR databases against repositories
elif [[ -x `which abs` ]]; then
alias yaupd='yaourt -Sy && sudo abs' # Update and refresh the local package and ABS databases against repositories
elif [[ -x `which aur` ]]; then
alias yaupd='yaourt -Sy && sudo aur' # Update and refresh the local package and AUR databases against repositories
else
alias yaupd='yaourt -Sy' # Update and refresh the local package and ABS databases against repositories
alias yaupd='yaourt -Sy' # Update and refresh the local package database against repositories
fi
alias yainsd='yaourt -S --asdeps' # Install given package(s) as dependencies of another package
alias yamir='yaourt -Syy' # Force refresh of all package lists after updating /etc/pacman.d/mirrorlist
Expand All @@ -45,10 +49,14 @@ alias pacreps='pacman -Ss' # Search for package(s) in the repositori
alias pacloc='pacman -Qi' # Display information about a given package in the local database
alias paclocs='pacman -Qs' # Search for package(s) in the local database
# Additional pacman alias examples
if [[ -x `which abs` ]]; then
alias pacupd='sudo pacman -Sy && sudo abs' # Update and refresh the local package and ABS databases against repositories
if [[ -x `which abs` && -x `which aur` ]]; then
alias pacupd='sudo pacman -Sy && sudo abs && sudo aur' # Update and refresh the local package, ABS and AUR databases against repositories
elif [[ -x `which abs` ]]; then
alias pacupd='sudo pacman -Sy && sudo abs' # Update and refresh the local package and ABS databases against repositories
elif [[ -x `which aur` ]]; then
alias pacupd='sudo pacman -Sy && sudo aur' # Update and refresh the local package and AUR databases against repositories
else
alias pacupd='sudo pacman -Sy' # Update and refresh the local package and ABS databases against repositories
alias pacupd='sudo pacman -Sy' # Update and refresh the local package database against repositories
fi
alias pacinsd='sudo pacman -S --asdeps' # Install given package(s) as dependencies of another package
alias pacmir='sudo pacman -Syy' # Force refresh of all package lists after updating /etc/pacman.d/mirrorlist
Expand Down
15 changes: 14 additions & 1 deletion plugins/aws/aws.plugin.zsh
@@ -1,3 +1,11 @@
_homebrew-installed() {
type brew &> /dev/null
}

_awscli-homebrew-installed() {
brew --prefix awscli &> /dev/null
}

export AWS_HOME=~/.aws

function agp {
Expand All @@ -14,4 +22,9 @@ function aws_profiles {
}

compctl -K aws_profiles asp
source `which aws_zsh_completer.sh`

if _homebrew-installed && _awscli-homebrew-installed ; then
source $(brew --prefix)/opt/awscli/libexec/bin/aws_zsh_completer.sh
else
source `which aws_zsh_completer.sh`
fi
20 changes: 20 additions & 0 deletions plugins/bbedit/README.md
@@ -0,0 +1,20 @@
## bbedit

Plugin for BBEdit, an HTML and text editor for Mac OS X

### Requirements

* [BBEdit](http://www.barebones.com/products/bbedit/)
* [BBEdit Command-Line Tools](http://www.barebones.com/support/bbedit/cmd-line-tools.html)

### Usage

* If the `bb` command is called without an argument, launch BBEdit

* If `bb` is passed a directory, cd to it and open it in BBEdit

* If `bb` is passed a file, open it in BBEdit

* If `bbpb` create a new BBEdit document with the contents of the clipboard

* If `bbd` alias for BBEdit diff tool
21 changes: 21 additions & 0 deletions plugins/bbedit/bbedit.plugin.zsh
@@ -0,0 +1,21 @@
alias bbpb='pbpaste | bbedit --clean --view-top'

alias bbd=bbdiff

#
# If the bb command is called without an argument, launch BBEdit
# If bb is passed a directory, cd to it and open it in BBEdit
# If bb is passed a file, open it in BBEdit
#
function bb() {
if [[ -z "$1" ]]
then
bbedit --launch
else
bbedit "$1"
if [[ -d "$1" ]]
then
cd "$1"
fi
fi
}
1 change: 1 addition & 0 deletions plugins/brew/_brew
Expand Up @@ -50,6 +50,7 @@ _1st_arguments=(
'server:start a local web app that lets you browse formulae (requires Sinatra)'
'services:small wrapper around `launchctl` for supported formulae'
'tap:tap a new formula repository from GitHub, or list existing taps'
'uninstall:uninstall a formula'
'unlink:unlink a formula'
'unpin:unpin specified formulae'
'untap:remove a tapped repository'
Expand Down
4 changes: 2 additions & 2 deletions plugins/emoji-clock/emoji-clock.plugin.zsh
Expand Up @@ -8,8 +8,8 @@
# -----------------------------------------------------------------------------

function emoji-clock() {
hour=$(date '+%I')
minutes=$(date '+%M')
hour=$(date -v '+15M' '+%I')
minutes=$(date -v '+15M' '+%M')
case $hour in
01) clock="🕐"; [ $minutes -ge 30 ] && clock="🕜";;
02) clock="🕑"; [ $minutes -ge 30 ] && clock="🕝";;
Expand Down
2 changes: 2 additions & 0 deletions plugins/gem/_gem
Expand Up @@ -59,6 +59,8 @@ case "$words[1]" in
build)
_files -g "*.gemspec"
;;
install)
_files ;;
list)
if [[ "$state" == forms ]]; then
_gem_installed
Expand Down
2 changes: 1 addition & 1 deletion plugins/git-prompt/gitstatus.py
@@ -1,4 +1,4 @@
#!/usr/bin/env python2
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
from subprocess import Popen, PIPE
import re
Expand Down

0 comments on commit bc2590d

Please sign in to comment.