diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/brew/_brew | 3 | ||||
-rw-r--r-- | plugins/bundler/bundler.plugin.zsh | 10 | ||||
-rw-r--r-- | plugins/jump/jump.plugin.zsh | 52 | ||||
-rw-r--r-- | plugins/tmux/tmux.plugin.zsh | 2 | ||||
-rw-r--r-- | plugins/web-search/web-search.plugin.zsh | 21 |
5 files changed, 81 insertions, 7 deletions
diff --git a/plugins/brew/_brew b/plugins/brew/_brew index e43ba2900..bf0a286c1 100644 --- a/plugins/brew/_brew +++ b/plugins/brew/_brew @@ -28,6 +28,7 @@ _1st_arguments=( 'missing:check all installed formuale for missing dependencies.' 'outdated:list formulas for which a newer version is available' 'prune:remove dead links' + 'reinstall:reinstall a formula' 'remove:remove a formula' 'search:search for a formula (/regex/ or string)' 'server:start a local web app that lets you browse formulae (requires Sinatra)' @@ -75,7 +76,7 @@ case "$words[1]" in 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 diff --git a/plugins/bundler/bundler.plugin.zsh b/plugins/bundler/bundler.plugin.zsh index c01241409..1e70db6af 100644 --- a/plugins/bundler/bundler.plugin.zsh +++ b/plugins/bundler/bundler.plugin.zsh @@ -1,10 +1,17 @@ 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) @@ -42,3 +49,4 @@ for cmd in $bundled_commands; do compdef _$cmd bundled_$cmd=$cmd fi done + diff --git a/plugins/jump/jump.plugin.zsh b/plugins/jump/jump.plugin.zsh new file mode 100644 index 000000000..a3c5cf8c3 --- /dev/null +++ b/plugins/jump/jump.plugin.zsh @@ -0,0 +1,52 @@ +# 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() { + reply=($(ls $MARKPATH/**/*(-) | grep : | sed -E 's/(.*)\/([_\da-zA-Z\-]*):$/\2/g')) +} +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 diff --git a/plugins/tmux/tmux.plugin.zsh b/plugins/tmux/tmux.plugin.zsh index 3ecc2ac69..96fab80a6 100644 --- a/plugins/tmux/tmux.plugin.zsh +++ b/plugins/tmux/tmux.plugin.zsh @@ -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" diff --git a/plugins/web-search/web-search.plugin.zsh b/plugins/web-search/web-search.plugin.zsh index 6b6de2b15..8eedb90ee 100644 --- a/plugins/web-search/web-search.plugin.zsh +++ b/plugins/web-search/web-search.plugin.zsh @@ -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 @@ -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 @@ -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 \!' |