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