mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-12 21:39:48 +01:00
Merge branch 'master' of https://github.com/robbyrussell/oh-my-zsh
This commit is contained in:
commit
a116b6f75a
6 changed files with 155 additions and 7 deletions
|
@ -34,9 +34,31 @@ zstyle ':completion:*:*:*:*:processes' command "ps -u `whoami` -o pid,user,comm
|
||||||
zstyle ':completion:*:cd:*' tag-order local-directories directory-stack path-directories
|
zstyle ':completion:*:cd:*' tag-order local-directories directory-stack path-directories
|
||||||
cdpath=(.)
|
cdpath=(.)
|
||||||
|
|
||||||
|
# use /etc/hosts and known_hosts for hostname completion
|
||||||
|
[ -r ~/.ssh/known_hosts ] && _ssh_hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) || _ssh_hosts=()
|
||||||
|
[ -r /etc/hosts ] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(</etc/hosts)"}%%\#*}##[:blank:]#[^[:blank:]]#}}} || _etc_hosts=()
|
||||||
|
hosts=(
|
||||||
|
"$_ssh_hosts[@]"
|
||||||
|
"$_etc_hosts[@]"
|
||||||
|
`hostname`
|
||||||
|
localhost
|
||||||
|
)
|
||||||
|
zstyle ':completion:*:hosts' hosts $hosts
|
||||||
|
|
||||||
|
# Use caching so that commands like apt and dpkg complete are useable
|
||||||
|
zstyle ':completion::complete:*' use-cache 1
|
||||||
|
zstyle ':completion::complete:*' cache-path ~/.oh-my-zsh/cache/
|
||||||
|
|
||||||
|
# Don't complete uninteresting users
|
||||||
|
zstyle ':completion:*:*:*:users' ignored-patterns \
|
||||||
|
adm amanda apache avahi beaglidx bin cacti canna clamav daemon \
|
||||||
|
dbus distcache dovecot fax ftp games gdm gkrellmd gopher \
|
||||||
|
hacluster haldaemon halt hsqldb ident junkbust ldap lp mail \
|
||||||
|
mailman mailnull mldonkey mysql nagios \
|
||||||
|
named netdump news nfsnobody nobody nscd ntp nut nx openvpn \
|
||||||
|
operator pcap postfix postgres privoxy pulse pvm quagga radvd \
|
||||||
|
rpc rpcuser rpm shutdown squid sshd sync uucp vcsa xfs
|
||||||
|
|
||||||
|
# ... unless we really want to.
|
||||||
|
zstyle '*' single-ignored show
|
||||||
|
|
||||||
# Load known hosts file for auto-completion with ssh and scp commands
|
|
||||||
if [ -f ~/.ssh/known_hosts ]; then
|
|
||||||
zstyle ':completion:*' hosts $( sed 's/[, ].*$//' $HOME/.ssh/known_hosts )
|
|
||||||
zstyle ':completion:*:*:(ssh|scp):*:*' hosts `sed 's/^\([^ ,]*\).*$/\1/' ~/.ssh/known_hosts`
|
|
||||||
fi
|
|
||||||
|
|
5
plugins/command-not-found/command-not-found.plugin.zsh
Normal file
5
plugins/command-not-found/command-not-found.plugin.zsh
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# Uses the command-not-found package zsh support
|
||||||
|
# as seen in http://www.porcheron.info/command-not-found-for-zsh/
|
||||||
|
# this is installed in Ubuntu
|
||||||
|
|
||||||
|
source /etc/zsh_command_not_found
|
|
@ -4,7 +4,7 @@
|
||||||
# Example usage: http://screencast.com/t/ZDgwNDUwNT
|
# Example usage: http://screencast.com/t/ZDgwNDUwNT
|
||||||
open_lighthouse_ticket () {
|
open_lighthouse_ticket () {
|
||||||
if [ ! -f .lighthouse-url ]; then
|
if [ ! -f .lighthouse-url ]; then
|
||||||
echo "There is no .lighthouse file in the current directory..."
|
echo "There is no .lighthouse-url file in the current directory..."
|
||||||
return 0;
|
return 0;
|
||||||
else
|
else
|
||||||
lighthouse_url=$(cat .lighthouse-url);
|
lighthouse_url=$(cat .lighthouse-url);
|
||||||
|
@ -13,4 +13,4 @@ open_lighthouse_ticket () {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
alias lho='open_lighthouse_ticket'
|
alias lho='open_lighthouse_ticket'
|
||||||
|
|
104
plugins/vagrant/_vagrant
Normal file
104
plugins/vagrant/_vagrant
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
#compdef vagrant
|
||||||
|
#autoload
|
||||||
|
|
||||||
|
# vagrant zsh completion
|
||||||
|
|
||||||
|
local -a _1st_arguments
|
||||||
|
_1st_arguments=(
|
||||||
|
'box:Box commands'
|
||||||
|
'destroy:Destroys the vagrant environment'
|
||||||
|
'halt:Halts the currently running vagrant environment'
|
||||||
|
'help:[TASK] Describe available tasks or one specific task'
|
||||||
|
'init:[box_name] [box_url] Initializes current folder for Vagrant usage'
|
||||||
|
'package:Packages a vagrant environment for distribution'
|
||||||
|
'provision:Run the provisioner'
|
||||||
|
'reload:Reload the vagrant environment'
|
||||||
|
'resume:Resumes a suspend vagrant environment'
|
||||||
|
'ssh:SSH into the currently running environment'
|
||||||
|
'ssh_config:outputs .ssh/config valid syntax for connecting to this environment via ssh.'
|
||||||
|
'status:Shows the status of the current Vagrant environment.'
|
||||||
|
'suspend:Suspends the currently running vagrant environment'
|
||||||
|
'up:Creates the vagrant environment'
|
||||||
|
'version:Prints the Vagrant version information'
|
||||||
|
)
|
||||||
|
|
||||||
|
local -a _box_arguments
|
||||||
|
_box_arguments=(
|
||||||
|
'add:NAME URI Add a box to the system'
|
||||||
|
'help:COMMAND Describe subcommands or one specific subcommand'
|
||||||
|
'list:Lists all installed boxes'
|
||||||
|
'remove:NAME Remove a box from the system'
|
||||||
|
'repackage:NAME Repackage an installed box into a `.box` file.'
|
||||||
|
)
|
||||||
|
|
||||||
|
__task_list ()
|
||||||
|
{
|
||||||
|
local expl
|
||||||
|
declare -a tasks
|
||||||
|
|
||||||
|
tasks=(box destroy halt init package provision reload resume ssh ssh_config status suspend up version)
|
||||||
|
|
||||||
|
_wanted tasks expl 'help' compadd $tasks
|
||||||
|
}
|
||||||
|
|
||||||
|
__box_list ()
|
||||||
|
{
|
||||||
|
_wanted application expl 'command' compadd $(command ls -1 $HOME/.vagrant/boxes 2>/dev/null| sed -e 's/ /\\ /g')
|
||||||
|
}
|
||||||
|
|
||||||
|
__vagrant-box ()
|
||||||
|
{
|
||||||
|
local curcontext="$curcontext" state line
|
||||||
|
typeset -A opt_args
|
||||||
|
|
||||||
|
_arguments -C \
|
||||||
|
':command:->command' \
|
||||||
|
'*::options:->options'
|
||||||
|
|
||||||
|
case $state in
|
||||||
|
(command)
|
||||||
|
_describe -t commands "gem subcommand" _box_arguments
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
|
||||||
|
(options)
|
||||||
|
case $line[1] in
|
||||||
|
(repackage|remove)
|
||||||
|
_arguments ':feature:__box_list'
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
local expl
|
||||||
|
local -a boxes installed_boxes
|
||||||
|
|
||||||
|
local curcontext="$curcontext" state line
|
||||||
|
typeset -A opt_args
|
||||||
|
|
||||||
|
_arguments -C \
|
||||||
|
':command:->command' \
|
||||||
|
'*::options:->options'
|
||||||
|
|
||||||
|
case $state in
|
||||||
|
(command)
|
||||||
|
_describe -t commands "gem subcommand" _1st_arguments
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
|
||||||
|
(options)
|
||||||
|
case $line[1] in
|
||||||
|
(help)
|
||||||
|
_arguments ':feature:__task_list'
|
||||||
|
;;
|
||||||
|
|
||||||
|
(box)
|
||||||
|
__vagrant-box
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
esac
|
3
plugins/vagrant/vagrant.plugin.zsh
Normal file
3
plugins/vagrant/vagrant.plugin.zsh
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
fpath=($ZSH/plugins/vagrant $fpath)
|
||||||
|
autoload -U compinit
|
||||||
|
compinit -i
|
14
themes/bira.zsh-theme
Normal file
14
themes/bira.zsh-theme
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
# ZSH Theme - Preview: http://gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png
|
||||||
|
local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
|
||||||
|
|
||||||
|
local user_host='%{$terminfo[bold]$fg[green]%}%n@%m%{$reset_color%}'
|
||||||
|
local current_dir='%{$terminfo[bold]$fg[blue]%} %~%{$reset_color%}'
|
||||||
|
local rvm_ruby='%{$fg[red]%}‹$(~/.rvm/bin/rvm-prompt i v g)›%{$reset_color%}'
|
||||||
|
local git_branch='$(git_prompt_info)%{$reset_color%}'
|
||||||
|
|
||||||
|
PROMPT="╭─${user_host} ${current_dir} ${rvm_ruby} ${git_branch}
|
||||||
|
╰─%B$%b "
|
||||||
|
RPS1="${return_code}"
|
||||||
|
|
||||||
|
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹"
|
||||||
|
ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}"
|
Loading…
Reference in a new issue