Skip to content

Commit

Permalink
merge
Browse files Browse the repository at this point in the history
  • Loading branch information
tinogomes committed Oct 2, 2013
2 parents 6316409 + 61e3951 commit ede9aa3
Show file tree
Hide file tree
Showing 22 changed files with 227 additions and 37 deletions.
5 changes: 2 additions & 3 deletions .gitignore
@@ -1,9 +1,8 @@
locals.zsh
log/.zsh_history
projects.zsh
custom/*
!custom/example
!custom/example.zsh
custom/example
custom/example.zsh
*.swp
!custom/example.zshcache
cache/
2 changes: 2 additions & 0 deletions README.textile
@@ -1,3 +1,5 @@
!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...

bq. "OH MY ZSHELL!"
Expand Down
28 changes: 28 additions & 0 deletions custom/plugins/sfffe/sfffe.plugin.zsh
@@ -0,0 +1,28 @@
# ------------------------------------------------------------------------------
# FILE: sfffe.plugin.zsh
# DESCRIPTION: search file for FE
# AUTHOR: yleo77 (ylep77@gmail.com)
# VERSION: 0.1
# REQUIRE: ack
# ------------------------------------------------------------------------------

if [ ! -x $(which ack) ]; then
echo \'ack\' is not installed!
exit -1
fi

ajs() {
ack "$@" --type js
}

acss() {
ack "$@" --type css
}

fjs() {
find ./ -name "$@*" -type f | grep '\.js'
}

fcss() {
find ./ -name "$@*" -type f | grep '\.css'
}
14 changes: 12 additions & 2 deletions oh-my-zsh.sh
Expand Up @@ -38,10 +38,20 @@ for plugin ($plugins); do
fi
done

# Figure out the SHORT hostname
if [ -n "$commands[scutil]" ]; then
# OS X
SHORT_HOST=$(scutil --get ComputerName)
else
SHORT_HOST=${HOST/.*/}
fi

# Save the location of the current completion dump file.
ZSH_COMPDUMP="${ZDOTDIR:-${HOME}}/.zcompdump-${SHORT_HOST}-${ZSH_VERSION}"

# Load and run compinit
autoload -U compinit
compinit -i

compinit -i -d "${ZSH_COMPDUMP}"

# Load all of the plugins that were defined in ~/.zshrc
for plugin ($plugins); do
Expand Down
3 changes: 2 additions & 1 deletion plugins/brew/_brew
Expand Up @@ -31,6 +31,7 @@ _1st_arguments=(
'options:display install options specific to formula.'
'outdated:list formulas for which a newer version is available.'
'prune:remove dead links.'
'reinstall:reinstall a formula'
{remove,rm,uninstall}':remove a formula.'
'search:search for a formula (/regex/ or string).'
'server:start a local web app that lets you browse formulae (requires Sinatra).'
Expand Down Expand Up @@ -80,7 +81,7 @@ case "$words[1]" in
i|install|home|homepage|log|info|abv|uses|cat|deps|edit|options|versions)
_brew_all_formulae
_wanted formulae expl 'all formulae' compadd -a formulae ;;
remove|rm|uninstall|unlink|cleanup|link|ln)
reinstall|remove|rm|uninstall|unlink|cleanup|link|ln)
_brew_installed_formulae
_wanted installed_formulae expl 'installed formulae' compadd -a installed_formulae ;;
esac
12 changes: 10 additions & 2 deletions plugins/bundler/bundler.plugin.zsh
@@ -1,13 +1,20 @@
alias be="bundle exec"
alias bi="bundle install"
alias bl="bundle list"
alias bp="bundle package"
alias bo="bundle open"
alias bu="bundle update"

if [[ "$(uname)" == 'Darwin' ]]
then
local cores_num="$(sysctl hw.ncpu | awk '{print $2}')"
else
local cores_num="$(nproc)"
fi
eval "alias bi='bundle install --jobs=$cores_num'"

# The following is based on https://github.com/gma/bundler-exec

bundled_commands=(annotate berks cap capify cucumber foodcritic foreman guard jekyll kitchen knife middleman nanoc rackup rainbows rake rspec ruby shotgun spec spin spork strainer tailor thin thor unicorn unicorn_rails puma)
bundled_commands=(annotate berks cap capify cucumber foodcritic foreman guard jekyll kitchen knife middleman nanoc rackup rainbows rake rspec ruby shotgun spec spin spork strainer tailor taps thin thor unicorn unicorn_rails puma)

## Functions

Expand Down Expand Up @@ -42,3 +49,4 @@ for cmd in $bundled_commands; do
compdef _$cmd bundled_$cmd=$cmd
fi
done

6 changes: 6 additions & 0 deletions plugins/git-flow/git-flow.plugin.zsh
Expand Up @@ -20,6 +20,12 @@
# c. Or, use this file as a oh-my-zsh plugin.
#

#Alias
alias gf='git flow'
alias gcd='git checkout develop'
alias gch='git checkout hotfix'
alias gcr='git checkout release'

_git-flow ()
{
local curcontext="$curcontext" state line
Expand Down
25 changes: 22 additions & 3 deletions plugins/git/git.plugin.zsh
Expand Up @@ -5,6 +5,8 @@ alias gst='git status'
compdef _git gst=git-status
alias gd='git diff'
compdef _git gd=git-diff
alias gdc='git diff --cached'
compdef _git gdc=git-diff
alias gl='git pull'
compdef _git gl=git-pull
alias gup='git pull --rebase'
Expand Down Expand Up @@ -54,9 +56,9 @@ compdef gcount=git
alias gcl='git config --list'
alias gcp='git cherry-pick'
compdef _git gcp=git-cherry-pick
alias glg='git log --stat --max-count=5'
alias glg='git log --stat --max-count=10'
compdef _git glg=git-log
alias glgg='git log --graph --max-count=5'
alias glgg='git log --graph --max-count=10'
compdef _git glgg=git-log
alias glgga='git log --graph --decorate --all'
compdef _git glgga=git-log
Expand All @@ -72,7 +74,10 @@ alias grh='git reset HEAD'
alias grhh='git reset HEAD --hard'
alias gclean='git reset --hard && git clean -dfx'
alias gwc='git whatchanged -p --abbrev-commit --pretty=medium'
alias gf='git ls-files | grep'

#remove the gf alias
#alias gf='git ls-files | grep'

alias gpoat='git push origin --all && git push origin --tags'
alias gmt='git mergetool --no-prompt'
compdef _git gm=git-mergetool
Expand Down Expand Up @@ -134,3 +139,17 @@ alias gpush='git push'
compdef gpush=git
alias gpull='git pull'
compdef gpull=git

# Work In Progress (wip)
# These features allow to pause a branch development and switch to another one (wip)
# When you want to go back to work, just unwip it
#
# This function return a warning if the current branch is a wip
function work_in_progress() {
if $(git log -n 1 | grep -q -c wip); then
echo "WIP!!"
fi
}
# these alias commit and uncomit wip branches
alias gwip='git add -A; git ls-files --deleted -z | xargs -0 git rm; git commit -m "wip"'
alias gunwip='git log -n 1 | grep -q -c wip && git reset HEAD~1'
58 changes: 58 additions & 0 deletions plugins/jump/jump.plugin.zsh
@@ -0,0 +1,58 @@
# Easily jump around the file system by manually adding marks
# marks are stored as symbolic links in the directory $MARKPATH (default $HOME/.marks)
#
# jump FOO: jump to a mark named FOO
# mark FOO: create a mark named FOO
# unmark FOO: delete a mark
# marks: lists all marks
#
export MARKPATH=$HOME/.marks

jump() {
cd -P "$MARKPATH/$1" 2>/dev/null || echo "No such mark: $1"
}

mark() {
if (( $# == 0 )); then
MARK=$(basename "$(pwd)")
else
MARK="$1"
fi
if read -q \?"Mark $(pwd) as ${MARK}? (y/n) "; then
mkdir -p "$MARKPATH"; ln -s "$(pwd)" "$MARKPATH/$MARK"
fi
}

unmark() {
rm -i "$MARKPATH/$1"
}

autoload colors
marks() {
for link in $MARKPATH/*(@); do
local markname="$fg[cyan]${link:t}$reset_color"
local markpath="$fg[blue]$(readlink $link)$reset_color"
printf "%s\t" $markname
printf "-> %s \t\n" $markpath
done
}

_completemarks() {
if [[ $(ls "${MARKPATH}" | wc -l) -gt 1 ]]; then
reply=($(ls $MARKPATH/**/*(-) | grep : | sed -E 's/(.*)\/([_\da-zA-Z\-]*):$/\2/g'))
else
if readlink -e "${MARKPATH}"/* &>/dev/null; then
reply=($(ls "${MARKPATH}"))
fi
fi
}
compctl -K _completemarks jump
compctl -K _completemarks unmark

_mark_expansion() {
setopt extendedglob
autoload -U modify-current-argument
modify-current-argument '$(readlink "$MARKPATH/$ARG")'
}
zle -N _mark_expansion
bindkey "^g" _mark_expansion
2 changes: 2 additions & 0 deletions plugins/mosh/mosh.plugin.zsh
@@ -0,0 +1,2 @@
# Allow SSH tab completion for mosh hostnames
compdef mosh=ssh
10 changes: 9 additions & 1 deletion plugins/node/node.plugin.zsh
@@ -1,5 +1,13 @@
# Open the node api for your current version to the optional section.
# TODO: Make the section part easier to use.
function node-docs {
open "http://nodejs.org/docs/$(node --version)/api/all.html#all_$1"
# get the open command
local open_cmd
if [[ $(uname -s) == 'Darwin' ]]; then
open_cmd='open'
else
open_cmd='xdg-open'
fi

$open_cmd "http://nodejs.org/docs/$(node --version)/api/all.html#all_$1"
}
26 changes: 26 additions & 0 deletions plugins/nvm/_nvm
@@ -0,0 +1,26 @@
#compdef nvm
#autoload

[[ -s ~/.nvm/nvm.sh ]] || return 0

local -a _1st_arguments
_1st_arguments=(
'help:show help'
'install:download and install a version'
'uninstall:uninstall a version'
'use:modify PATH to use version'
'run:run version with given arguments'
'ls:list installed versions or versions matching a given description'
'ls-remote:list remote versions available for install'
'deactivate:undo effects of NVM on current shell'
'alias:show or set aliases'
'unalias:deletes an alias'
'copy-packages:install global NPM packages to current version'
)

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

if (( CURRENT == 1 )); then
_describe -t commands "nvm subcommand" _1st_arguments
return
fi
3 changes: 3 additions & 0 deletions plugins/nvm/nvm.plugin.zsh
@@ -0,0 +1,3 @@
# The addition 'nvm install' attempts in ~/.profile

[[ -s ~/.nvm/nvm.sh ]] && . ~/.nvm/nvm.sh
11 changes: 8 additions & 3 deletions plugins/pip/_pip
Expand Up @@ -6,8 +6,8 @@
_pip_all() {
# we cache the list of packages (originally from the macports plugin)
if (( ! $+piplist )); then
echo -n " (caching package index...)"
piplist=($(pip search * | cut -d ' ' -f 1 | tr '[A-Z]' '[a-z]'))
echo -n " (caching package index...)"
piplist=($(pip search * | cut -d ' ' -f 1 | tr '[A-Z]' '[a-z]'))
fi
}

Expand Down Expand Up @@ -62,8 +62,13 @@ case "$words[1]" in
'(--no-install)--no-install[only download packages]' \
'(--no-download)--no-download[only install downloaded packages]' \
'(--install-option)--install-option[extra arguments to be supplied to the setup.py]' \
'(--single-version-externally-managed)--single-version-externally-managed[do not download/install dependencies. requires --record or --root]'\
'(--root)--root[treat this path as a fake chroot, installing into it. implies --single-version-externally-managed]'\
'(--record)--record[file to record all installed files to.]'\
'(-r --requirement)'{-r,--requirement}'[requirements file]: :_files'\
'(-e --editable)'{-e,--editable}'[path of or url to source to link to instead of installing.]: :_files -/'\
'1: :->packages' && return 0

if [[ "$state" == packages ]]; then
_pip_all
_wanted piplist expl 'packages' compadd -a piplist
Expand Down
2 changes: 1 addition & 1 deletion plugins/rvm/rvm.plugin.zsh
Expand Up @@ -32,7 +32,7 @@ compdef _rb19 rb19

function rb20 {
if [ -z "$1" ]; then
rvm use "$ruby"
rvm use "$ruby20"
else
rvm use "$ruby20@$1"
fi
Expand Down
3 changes: 2 additions & 1 deletion plugins/sublime/sublime.plugin.zsh
Expand Up @@ -21,7 +21,8 @@ elif [[ $('uname') == 'Darwin' ]]; then

for _sublime_path in $_sublime_darwin_paths; do
if [[ -a $_sublime_path ]]; then
alias st="'$_sublime_path'"
alias subl="'$_sublime_path'"
alias st=subl
break
fi
done
Expand Down
2 changes: 1 addition & 1 deletion plugins/tmux/tmux.plugin.zsh
Expand Up @@ -38,7 +38,7 @@ if which tmux &> /dev/null
fi

# Set the correct local config file to use.
if [[ "$ZSH_TMUX_ITERM2" == "false" ]] && (( [[ -f $HOME/.tmux.conf ]] || -h $HOME/.tmux.conf ]] ))
if [[ "$ZSH_TMUX_ITERM2" == "false" ]] && [[ -f $HOME/.tmux.conf || -h $HOME/.tmux.conf ]]
then
#use this when they have a ~/.tmux.conf
export _ZSH_TMUX_FIXED_CONFIG="$zsh_tmux_plugin_path/tmux.extra.conf"
Expand Down
21 changes: 17 additions & 4 deletions plugins/web-search/web-search.plugin.zsh
Expand Up @@ -11,7 +11,7 @@ function web_search() {
fi

# check whether the search engine is supported
if [[ ! $1 =~ '(google|bing|yahoo)' ]];
if [[ ! $1 =~ '(google|bing|yahoo|duckduckgo)' ]];
then
echo "Search engine $1 not supported."
return 1
Expand All @@ -24,8 +24,12 @@ function web_search() {
$open_cmd "$url"
return
fi

url="${url}/search?q="
if [[ $1 == 'duckduckgo' ]]; then
#slightly different search syntax for DDG
url="${url}/?q="
else
url="${url}/search?q="
fi
shift # shift out $1

while [[ $# -gt 0 ]]; do
Expand All @@ -34,10 +38,19 @@ function web_search() {
done

url="${url%?}" # remove the last '+'

$open_cmd "$url"
}


alias bing='web_search bing'
alias google='web_search google'
alias yahoo='web_search yahoo'
alias ddg='web_search duckduckgo'
#add your own !bang searches here
alias wiki='web_search duckduckgo \!w'
alias news='web_search duckduckgo \!n'
alias youtube='web_search duckduckgo \!yt'
alias map='web_search duckduckgo \!m'
alias image='web_search duckduckgo \!i'
alias ducky='web_search duckduckgo \!'
2 changes: 1 addition & 1 deletion templates/zshrc.zsh-template
Expand Up @@ -14,7 +14,7 @@ ZSH_THEME="robbyrussell"
# Set to this to use case-sensitive completion
# CASE_SENSITIVE="true"

# Comment this out to disable bi-weekly auto-update checks
# Uncomment this to disable bi-weekly auto-update checks
# DISABLE_AUTO_UPDATE="true"

# Uncomment to change how often before auto-updates occur? (in days)
Expand Down

0 comments on commit ede9aa3

Please sign in to comment.