mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-01-30 02:44:42 +01:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
6577efc9b4
24 changed files with 246 additions and 37 deletions
|
|
@ -6,7 +6,7 @@ alias bu="bundle update"
|
|||
|
||||
# The following is based on https://github.com/gma/bundler-exec
|
||||
|
||||
bundled_commands=(annotate cap capify cucumber foreman guard middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails puma)
|
||||
bundled_commands=(annotate cap capify cucumber foreman guard middleman nanoc rackup rainbows rake rspec ruby shotgun spec spork thin thor unicorn unicorn_rails puma zeus)
|
||||
|
||||
## Functions
|
||||
|
||||
|
|
@ -33,6 +33,7 @@ _run-with-bundler() {
|
|||
|
||||
## Main program
|
||||
for cmd in $bundled_commands; do
|
||||
eval "function unbundled_$cmd () { $cmd \$@ }"
|
||||
eval "function bundled_$cmd () { _run-with-bundler $cmd \$@}"
|
||||
alias $cmd=bundled_$cmd
|
||||
|
||||
|
|
|
|||
13
plugins/bwana/bwana.plugin.zsh
Normal file
13
plugins/bwana/bwana.plugin.zsh
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
#
|
||||
# Requires http://www.bruji.com/bwana/
|
||||
#
|
||||
if [[ -e /Applications/Bwana.app ]] ||
|
||||
( system_profiler -detailLevel mini SPApplicationsDataType | grep -q Bwana )
|
||||
then
|
||||
function man() {
|
||||
open "man:$1"
|
||||
}
|
||||
else
|
||||
echo "Bwana lets you read man files in Safari through a man: URI scheme"
|
||||
echo "To use it within Zsh, install it from http://www.bruji.com/bwana/"
|
||||
fi
|
||||
|
|
@ -1,2 +1,4 @@
|
|||
encode64(){ echo -n $1 | base64 }
|
||||
decode64(){ echo -n $1 | base64 -D }
|
||||
decode64(){ echo -n $1 | base64 -D }
|
||||
alias e64=encode64
|
||||
alias d64=decode64
|
||||
|
|
|
|||
|
|
@ -237,13 +237,13 @@ __git-flow-feature ()
|
|||
|
||||
(diff)
|
||||
_arguments \
|
||||
':branch:__git_branch_names'\
|
||||
':branch:__git_flow_feature_list'\
|
||||
;;
|
||||
|
||||
(rebase)
|
||||
_arguments \
|
||||
-i'[Do an interactive rebase]' \
|
||||
':branch:__git_branch_names'
|
||||
':branch:__git_flow_feature_list'
|
||||
;;
|
||||
|
||||
(checkout)
|
||||
|
|
@ -254,7 +254,7 @@ __git-flow-feature ()
|
|||
(pull)
|
||||
_arguments \
|
||||
':remote:__git_remotes'\
|
||||
':branch:__git_branch_names'
|
||||
':branch:__git_flow_feature_list'
|
||||
;;
|
||||
|
||||
*)
|
||||
|
|
@ -334,4 +334,4 @@ __git_command_successful () {
|
|||
return 0
|
||||
}
|
||||
|
||||
zstyle ':completion:*:*:git:*' user-commands flow:'description for foo'
|
||||
zstyle ':completion:*:*:git:*' user-commands flow:'description for foo'
|
||||
|
|
|
|||
18
plugins/git-remote-branch/git-remote-branch.plugin.zsh
Normal file
18
plugins/git-remote-branch/git-remote-branch.plugin.zsh
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
_git_remote_branch() {
|
||||
ref=$(git symbolic-ref HEAD 2> /dev/null)
|
||||
if [[ -n $ref ]]; then
|
||||
if (( CURRENT == 2 )); then
|
||||
# first arg: operation
|
||||
compadd create publish rename delete track
|
||||
elif (( CURRENT == 3 )); then
|
||||
# second arg: remote branch name
|
||||
compadd `git branch -r | grep -v HEAD | sed "s/.*\///" | sed "s/ //g"`
|
||||
elif (( CURRENT == 4 )); then
|
||||
# third arg: remote name
|
||||
compadd `git remote`
|
||||
fi
|
||||
else;
|
||||
_files
|
||||
fi
|
||||
}
|
||||
compdef _git_remote_branch grb
|
||||
|
|
@ -9,6 +9,7 @@ alias gup='git pull --rebase'
|
|||
compdef _git gup=git-fetch
|
||||
alias gp='git push'
|
||||
compdef _git gp=git-push
|
||||
alias gd='git diff'
|
||||
gdv() { git diff -w "$@" | view - }
|
||||
compdef _git gdv=git-diff
|
||||
alias gc='git commit -v'
|
||||
|
|
@ -18,19 +19,32 @@ compdef _git gca=git-commit
|
|||
alias gco='git checkout'
|
||||
compdef _git gco=git-checkout
|
||||
alias gcm='git checkout master'
|
||||
alias gr='git remote'
|
||||
compdef _git gr=git-remote
|
||||
alias grv='git remote -v'
|
||||
compdef _git grv=git-remote
|
||||
alias grmv='git remote rename'
|
||||
compdef _git grmv=git-remote
|
||||
alias grrm='git remote remove'
|
||||
compdef _git grrm=git-remote
|
||||
alias grset='git remote set-url'
|
||||
compdef _git grset=git-remote
|
||||
alias grup='git remote update'
|
||||
compdef _git grset=git-remote
|
||||
alias gb='git branch'
|
||||
compdef _git gb=git-branch
|
||||
alias gba='git branch -a'
|
||||
compdef _git gba=git-branch
|
||||
alias gcount='git shortlog -sn'
|
||||
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'
|
||||
compdef _git glg=git-log
|
||||
alias glgg='git log --graph --max-count=5'
|
||||
compdef _git glgg=git-log
|
||||
alias glgga='git log --graph --decorate --all'
|
||||
alias glgga='git log --graph --decorate --all'
|
||||
compdef _git glgga=git-log
|
||||
alias gss='git status -s'
|
||||
compdef _git gss=git-status
|
||||
|
|
@ -42,13 +56,12 @@ alias grh='git reset HEAD'
|
|||
alias grhh='git reset HEAD --hard'
|
||||
alias gwc='git whatchanged -p --abbrev-commit --pretty=medium'
|
||||
alias gf='git ls-files | grep'
|
||||
alias gpoat='git push origin --all && git push origin --tags'
|
||||
|
||||
# Will cd into the top of the current repository
|
||||
# or submodule.
|
||||
alias grt='cd $(git rev-parse --show-toplevel || echo ".")'
|
||||
|
||||
|
||||
|
||||
# Git and svn mix
|
||||
alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'
|
||||
compdef git-svn-dcommit-push=git
|
||||
|
|
|
|||
8
plugins/history/history.plugin.zsh
Normal file
8
plugins/history/history.plugin.zsh
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
alias h='history'
|
||||
|
||||
function hs
|
||||
{
|
||||
history | grep $*
|
||||
}
|
||||
|
||||
alias hsi='hs -i'
|
||||
|
|
@ -170,7 +170,11 @@ _chef_environments_remote() {
|
|||
|
||||
# The chef_x_local functions use the knife config to find the paths of relevant objects x to be uploaded to the server
|
||||
_chef_cookbooks_local() {
|
||||
(for i in $( grep cookbook_path $HOME/.chef/knife.rb | awk 'BEGIN {FS = "[" }; {print $2}' | sed 's/\,//g' | sed "s/'//g" | sed 's/\(.*\)]/\1/' ); do ls $i; done)
|
||||
local knife_rb="$HOME/.chef/knife.rb"
|
||||
if [ -f ./.chef/knife.rb ]; then
|
||||
knife_rb="./.chef/knife.rb"
|
||||
fi
|
||||
(for i in $( grep cookbook_path $knife_rb | awk 'BEGIN {FS = "[" }; {print $2}' | sed 's/\,//g' | sed "s/'//g" | sed 's/\(.*\)]/\1/' ); do ls $i; done)
|
||||
}
|
||||
|
||||
# This function extracts the available cookbook versions on the chef server
|
||||
|
|
|
|||
|
|
@ -5,15 +5,29 @@ function _lein_commands() {
|
|||
case $state in
|
||||
subcommand)
|
||||
subcommands=(
|
||||
"classpath:print the classpath of the current project"
|
||||
"clean:remove compiled files and dependencies from project"
|
||||
"compile:ahead-of-time compile the project"
|
||||
"deploy:build jar and deploy to remote repository"
|
||||
"deps:download and install all dependencies"
|
||||
"help:display a list of tasks or help for a given task"
|
||||
"install:install the project and its dependencies in your local repository"
|
||||
"int:enter an interactive task shell"
|
||||
"interactive:enter an interactive task shell"
|
||||
"jack-in:jack in to a clojure slime session from emacs."
|
||||
"jar:create a jar file containing the compiled .class files"
|
||||
"javac:compile java source files"
|
||||
"new:create a new project skeleton"
|
||||
"plugin:manage user-level plugins"
|
||||
"pom:write a pom.xml file to disk for maven interop"
|
||||
"repl:start a repl session either with the current project or standalone"
|
||||
"retest:run only the test namespaces which failed last time around"
|
||||
"run:run the project's -main function"
|
||||
"search:search remote maven repositories for matching jars"
|
||||
"swank:launch swank server for Emacs to connect"
|
||||
"test:run the project's tests"
|
||||
"test!:run a project's tests after cleaning and fetching dependencies"
|
||||
"trampoline:run a task without nesting the project's JVM inside Leiningen's."
|
||||
"uberjar:Create a jar including the contents of each of deps"
|
||||
"upgrade:upgrade leiningen to the latest stable release"
|
||||
"version:print leiningen's version"
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ alias wtf='dmesg'
|
|||
alias onoz='cat /var/log/errors.log'
|
||||
alias rtfm='man'
|
||||
|
||||
alias :3='echo'
|
||||
alias visible='echo'
|
||||
alias invisible='cat'
|
||||
alias moar='more'
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
# FILE: osx.plugin.zsh
|
||||
# DESCRIPTION: oh-my-zsh plugin file.
|
||||
# AUTHOR: Sorin Ionescu (sorin.ionescu@gmail.com)
|
||||
# VERSION: 1.0.1
|
||||
# VERSION: 1.1.0
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
|
||||
function tab() {
|
||||
local command="cd \\\"$PWD\\\""
|
||||
(( $# > 0 )) && command="${command}; $*"
|
||||
|
|
@ -35,7 +34,7 @@ EOF
|
|||
launch session "Default Session"
|
||||
set current_session to current session
|
||||
tell current_session
|
||||
write text "${command}"
|
||||
write text "${command}; clear;"
|
||||
end tell
|
||||
end tell
|
||||
end tell
|
||||
|
|
@ -43,6 +42,64 @@ EOF
|
|||
}
|
||||
}
|
||||
|
||||
function vsplit_tab() {
|
||||
local command="cd \\\"$PWD\\\""
|
||||
(( $# > 0 )) && command="${command}; $*"
|
||||
|
||||
the_app=$(
|
||||
osascript 2>/dev/null <<EOF
|
||||
tell application "System Events"
|
||||
name of first item of (every process whose frontmost is true)
|
||||
end tell
|
||||
EOF
|
||||
)
|
||||
|
||||
[[ "$the_app" == 'iTerm' ]] && {
|
||||
osascript 2>/dev/null <<EOF
|
||||
tell application "iTerm" to activate
|
||||
|
||||
tell application "System Events"
|
||||
tell process "iTerm"
|
||||
tell menu item "Split Vertically With Current Profile" of menu "Shell" of menu bar item "Shell" of menu bar 1
|
||||
click
|
||||
end tell
|
||||
end tell
|
||||
keystroke "${command}; clear;"
|
||||
keystroke return
|
||||
end tell
|
||||
EOF
|
||||
}
|
||||
}
|
||||
|
||||
function split_tab() {
|
||||
local command="cd \\\"$PWD\\\""
|
||||
(( $# > 0 )) && command="${command}; $*"
|
||||
|
||||
the_app=$(
|
||||
osascript 2>/dev/null <<EOF
|
||||
tell application "System Events"
|
||||
name of first item of (every process whose frontmost is true)
|
||||
end tell
|
||||
EOF
|
||||
)
|
||||
|
||||
[[ "$the_app" == 'iTerm' ]] && {
|
||||
osascript 2>/dev/null <<EOF
|
||||
tell application "iTerm" to activate
|
||||
|
||||
tell application "System Events"
|
||||
tell process "iTerm"
|
||||
tell menu item "Split Horizontally With Current Profile" of menu "Shell" of menu bar item "Shell" of menu bar 1
|
||||
click
|
||||
end tell
|
||||
end tell
|
||||
keystroke "${command}; clear;"
|
||||
keystroke return
|
||||
end tell
|
||||
EOF
|
||||
}
|
||||
}
|
||||
|
||||
function pfd() {
|
||||
osascript 2>/dev/null <<EOF
|
||||
tell application "Finder"
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ alias sr='ruby script/runner'
|
|||
alias ssp='ruby script/spec'
|
||||
alias rdbm='rake db:migrate'
|
||||
alias rdbtp='rake db:test:prepare'
|
||||
alias migrate='rake db:migrate && rake db:test:prepare'
|
||||
alias sc='ruby script/console'
|
||||
alias sd='ruby script/server --debugger'
|
||||
alias devlog='tail -f log/development.log'
|
||||
|
|
|
|||
|
|
@ -57,8 +57,6 @@ sprunge() {
|
|||
fi
|
||||
else
|
||||
echo Using input from a pipe or STDIN redirection... >&2
|
||||
while read -r line ; do
|
||||
echo $line
|
||||
done | curl -F 'sprunge=<-' http://sprunge.us
|
||||
curl -F 'sprunge=<-' http://sprunge.us
|
||||
fi
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,10 +5,11 @@ local _sublime_darwin_subl=/Applications/Sublime\ Text\ 2.app/Contents/SharedSup
|
|||
|
||||
if [[ $('uname') == 'Linux' ]]; then
|
||||
if [ -f '/usr/bin/sublime_text' ]; then
|
||||
alias st='/usr/bin/sublime_text&'
|
||||
st_run() { nohup /usr/bin/sublime_text $@ > /dev/null & }
|
||||
else
|
||||
alias st='/usr/bin/sublime-text&'
|
||||
st_run() { nohup /usr/bin/sublime-text $@ > /dev/null & }
|
||||
fi
|
||||
alias st=st_run
|
||||
elif [[ $('uname') == 'Darwin' ]]; then
|
||||
# Check if Sublime is installed in user's home application directory
|
||||
if [[ -a $HOME/${_sublime_darwin_subl} ]]; then
|
||||
|
|
|
|||
13
plugins/symfony/symfony.plugin.zsh
Normal file
13
plugins/symfony/symfony.plugin.zsh
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# symfony basic command completion
|
||||
|
||||
_symfony_get_command_list () {
|
||||
./symfony | sed "1,/Available tasks/d" | awk 'BEGIN { cat=null; } /^[A-Za-z]+$/ { cat = $1; } /^ :[a-z]+/ { print cat $1; }'
|
||||
}
|
||||
|
||||
_symfony () {
|
||||
if [ -f symfony ]; then
|
||||
compadd `_symfony_get_command_list`
|
||||
fi
|
||||
}
|
||||
|
||||
compdef _symfony symfony
|
||||
|
|
@ -1,8 +1,21 @@
|
|||
function zle-line-init zle-keymap-select {
|
||||
# Ensures that $terminfo values are valid and updates editor information when
|
||||
# the keymap changes.
|
||||
function zle-keymap-select zle-line-init zle-line-finish {
|
||||
# The terminal must be in application mode when ZLE is active for $terminfo
|
||||
# values to be valid.
|
||||
if (( ${+terminfo[smkx]} )); then
|
||||
printf '%s' ${terminfo[smkx]}
|
||||
fi
|
||||
if (( ${+terminfo[rmkx]} )); then
|
||||
printf '%s' ${terminfo[rmkx]}
|
||||
fi
|
||||
|
||||
zle reset-prompt
|
||||
zle -R
|
||||
}
|
||||
|
||||
zle -N zle-line-init
|
||||
zle -N zle-line-finish
|
||||
zle -N zle-keymap-select
|
||||
|
||||
bindkey -v
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
wrapsource=`which virtualenvwrapper.sh`
|
||||
wrapsource=`which virtualenvwrapper_lazy.sh`
|
||||
|
||||
if [[ -f "$wrapsource" ]]; then
|
||||
source $wrapsource
|
||||
|
|
@ -36,5 +36,5 @@ if [[ -f "$wrapsource" ]]; then
|
|||
}
|
||||
fi
|
||||
else
|
||||
print "zsh virtualenvwrapper plugin: Cannot find virtualenvwrapper.sh. Please install with \`pip install virtualenvwrapper\`."
|
||||
print "zsh virtualenvwrapper plugin: Cannot find virtualenvwrapper_lazy.sh. Please install with \`pip install virtualenvwrapper\`."
|
||||
fi
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue