Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master'
Browse files Browse the repository at this point in the history
* upstream/master:
  Fixing some issues where show repeated weird values, and fixed commands that need the container autocomplete without being running, like start, now it autocompletes showing all the containers so you can start without knowing the right name
  Add autocomplete for frontend-search
  fix stackoverflow url in search
  Add stackoverflow link
  • Loading branch information
lesterchan committed May 5, 2015
2 parents a499f28 + 1400346 commit 5b2891f
Show file tree
Hide file tree
Showing 4 changed files with 160 additions and 15 deletions.
21 changes: 16 additions & 5 deletions plugins/docker/_docker
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,16 @@
__docker_containers() {
declare -a cont_cmd
cont_cmd=($(docker ps | awk 'NR>1{print $NF":[CON("$1")"$2"("$3")]"}'))
_describe 'containers' cont_cmd
if [[ 'X$cont_cmd' != 'X' ]]
_describe 'containers' cont_cmd
}

# Output a selectable list of all containers, even not running
__docker_all_containers() {
declare -a cont_cmd
cont_cmd=($(docker ps -a | awk 'NR>1{print $NF":[CON("$1")"$2"("$3")]"}'))
if [[ 'X$cont_cmd' != 'X' ]]
_describe 'containers' cont_cmd
}

# output a selectable list of all docker images
Expand Down Expand Up @@ -57,7 +66,7 @@ __diff() {
__docker_containers
}

__events() {
__events() {
_arguments \
'--since=[Show previously created events and then stream.]'
}
Expand Down Expand Up @@ -98,10 +107,12 @@ __insert() {

__inspect() {
__docker_images
__docker_containers
__docker_all_containers
}

__kill() {
_arguments \
'(-s,--signal=)'{-s,--signal=}'[KILL Signal]'
__docker_containers
}

Expand Down Expand Up @@ -162,7 +173,7 @@ __rm() {
'(-f,--force=)'{-f,--force=}'[Force removal of running container]' \
'(-l,--link=)'{-l,--link=}'[Remove the specified link and not the underlying container]' \
'(-v,--volumes=)'{-v,--volumes=}'[Remove the volumes associated to the container]'
__docker_containers
__docker_all_containers
}

__rmi() {
Expand Down Expand Up @@ -216,7 +227,7 @@ __start() {
_arguments \
'(-a,--attach=)'{-a,--attach=}'[Attach container''s stdout/stderr and forward all signals to the process]' \
'(-i,--interactive=)'{-i,--interactive=}'[Attach container''s stdin]'
__docker_containers
__docker_all_containers
}

__stats() {
Expand Down
17 changes: 8 additions & 9 deletions plugins/frontend-search/README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,20 @@
## Rationale ##

The idea for this script is to help searches in important doc contents from frontend.
> Searches for your Frontend contents more easier

## Instalation ##

I will send a Pull Request with this plugin for .oh-my-zsh official repository. If accept them, it's only add in plugins list that exists in ```.zshrc``` file.

For now, you can clone this repository and add in ```custom/plugins``` folder

```bash
$ git clone git://github.com/willmendesneto/frontend-search.git ~/.oh-my-zsh/custom/plugins/frontend-search
```

After this, restart your terminal and frontend-search plugin is configurated in you CLI.
Open your `.zshrc` file and load `frontend-search` plugin

```bash
...
plugins=( <your-plugins-list>... frontend-search)
...
```


## Commands ##

All command searches are accept only in format
Expand Down Expand Up @@ -47,6 +42,7 @@ The search content are
* `angularjs <google.com/search?as_q=<search-term>&as_sitesearch=angularjs.org>`
* `reactjs <google.com/search?as_q=<search-term>&as_sitesearch=facebook.github.io/react>`
* `emberjs <emberjs.com>`
* `stackoverflow <stackoverflow.com>`


## Aliases ##
Expand All @@ -72,10 +68,13 @@ There are a few aliases presented as well:
* `angularjs` A shorthand for `frontend angularjs`
* `reactjs` A shorthand for `frontend reactjs`
* `emberjs` A shorthand for `frontend emberjs`
* `stackoverflow` A shorthand for `frontend stackoverflow`


## Author

**Wilson Mendes (willmendesneto)**
+ <https://plus.google.com/+WilsonMendes>
+ <https://twitter.com/willmendesneto>
+ <http://github.com/willmendesneto>

Expand Down
128 changes: 128 additions & 0 deletions plugins/frontend-search/_frontend-search.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
#compdef frontend

zstyle ':completion:*:descriptions' format '%B%d%b'
zstyle ':completion::complete:frontend:*:commands' group-name commands
zstyle ':completion::complete:frontend:*:frontend_points' group-name frontend_points
zstyle ':completion::complete:frontend::' list-grouped

zmodload zsh/mapfile

function _frontend() {
local CONFIG=$HOME/.frontend-search
local ret=1

local -a commands
local -a frontend_points

frontend_points=( "${(f)mapfile[$CONFIG]//$HOME/~}" )

commands=(
'jquery: Search in jQuery website'
'mdn: Search in MDN website'
'compass: Search in COMPASS website'
'html5please: Search in HTML5 Please website'
'caniuse: Search in Can I Use website'
'aurajs: Search in AuraJs website'
'dartlang: Search in Dart website'
'lodash: Search in Lo-Dash website'
'qunit: Search in Qunit website'
'fontello: Search in fontello website'
'bootsnipp: Search in bootsnipp website'
'cssflow: Search in cssflow website'
'codepen: Search in codepen website'
'unheap: Search in unheap website'
'bem: Search in BEM website'
'smacss: Search in SMACSS website'
'angularjs: Search in Angular website'
'reactjs: Search in React website'
'emberjs: Search in Ember website'
'stackoverflow: Search in StackOverflow website'
)

_arguments -C \
'1: :->first_arg' \
'2: :->second_arg' && ret=0

case $state in
first_arg)
_describe -t frontend_points "Warp points" frontend_points && ret=0
_describe -t commands "Commands" commands && ret=0
;;
second_arg)
case $words[2] in
jquery)
_describe -t points "Warp points" frontend_points && ret=0
;;
mdn)
_describe -t points "Warp points" frontend_points && ret=0
;;
compass)
_describe -t points "Warp points" frontend_points && ret=0
;;
html5please)
_describe -t points "Warp points" frontend_points && ret=0
;;
caniuse)
_describe -t points "Warp points" frontend_points && ret=0
;;
aurajs)
_describe -t points "Warp points" frontend_points && ret=0
;;
dartlang)
_describe -t points "Warp points" frontend_points && ret=0
;;
lodash)
_describe -t points "Warp points" frontend_points && ret=0
;;
qunit)
_describe -t points "Warp points" frontend_points && ret=0
;;
fontello)
_describe -t points "Warp points" frontend_points && ret=0
;;
bootsnipp)
_describe -t points "Warp points" frontend_points && ret=0
;;
cssflow)
_describe -t points "Warp points" frontend_points && ret=0
;;
codepen)
_describe -t points "Warp points" frontend_points && ret=0
;;
unheap)
_describe -t points "Warp points" frontend_points && ret=0
;;
bem)
_describe -t points "Warp points" frontend_points && ret=0
;;
smacss)
_describe -t points "Warp points" frontend_points && ret=0
;;
angularjs)
_describe -t points "Warp points" frontend_points && ret=0
;;
reactjs)
_describe -t points "Warp points" frontend_points && ret=0
;;
emberjs)
_describe -t points "Warp points" frontend_points && ret=0
;;
stackoverflow)
_describe -t points "Warp points" frontend_points && ret=0
;;
esac
;;
esac

return $ret
}

_frontend "$@"

# Local Variables:
# mode: Shell-Script
# sh-indentation: 2
# indent-tabs-mode: nil
# sh-basic-offset: 2
# End:
# vim: ft=zsh sw=2 ts=2 et
9 changes: 8 additions & 1 deletion plugins/frontend-search/frontend-search.plugin.zsh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ function frontend() {
fi

# check whether the search engine is supported
if [[ ! $1 =~ '(jquery|mdn|compass|html5please|caniuse|aurajs|dartlang|qunit|fontello|bootsnipp|cssflow|codepen|unheap|bem|smacss|angularjs|reactjs|emberjs)' ]];
if [[ ! $1 =~ '(jquery|mdn|compass|html5please|caniuse|aurajs|dartlang|qunit|fontello|bootsnipp|cssflow|codepen|unheap|bem|smacss|angularjs|reactjs|emberjs|stackoverflow)' ]];
then
echo "Search valid search content $1 not supported."
echo "Valid contents: (formats 'frontend <search-content>' or '<search-content>')"
Expand All @@ -40,6 +40,7 @@ function frontend() {
echo "* angularjs"
echo "* reactjs"
echo "* emberjs"
echo "* stackoverflow"
echo ""

return 1
Expand Down Expand Up @@ -103,6 +104,9 @@ function frontend() {
"emberjs")
url="${url}emberjs.com"
url="${url}/api/#stq=$2&stp=1" ;;
"stackoverflow")
url="${url}stackoverflow.com"
url="${url}/search?q=$2" ;;
*) echo "INVALID PARAM!"
return ;;
esac
Expand Down Expand Up @@ -149,3 +153,6 @@ alias smacss='frontend smacss'
alias angularjs='frontend angularjs'
alias reactjs='frontend reactjs'
alias emberjs='frontend emberjs'

# search websites
alias stackoverflow='frontend stackoverflow'

0 comments on commit 5b2891f

Please sign in to comment.