standardize plugins, update metadata
authorErich Smith <heartquest@gmail.com>
Sat, 12 May 2012 03:27:03 +0000 (23:27 -0400)
committerErich Smith <heartquest@gmail.com>
Mon, 14 May 2012 02:13:54 +0000 (22:13 -0400)
add about-plugin metadata
chmod -x plugins
cleanup filenames to standardize on x.plugin.bash format
only plugin files intended to be executable from the command line should
contain a shebang line, and should be a+x.

27 files changed:
plugins/available/_xterm.plugin.bash [moved from plugins/available/_xterm.plugins.bash with 100% similarity]
plugins/available/base.plugin.bash [changed mode: 0755->0644]
plugins/available/battery.plugin.bash [changed mode: 0755->0644]
plugins/available/dirs.plugin.bash [moved from plugins/available/dirs.plugins.bash with 86% similarity, mode: 0644]
plugins/available/extract.plugin.bash
plugins/available/fasd.plugin.bash [moved from plugins/available/fasd.bash with 99% similarity]
plugins/available/git.plugin.bash [moved from plugins/available/git.plugins.bash with 84% similarity]
plugins/available/hg.plugin.bash [moved from plugins/available/hg.plugins.bash with 53% similarity]
plugins/available/javascript.plugin.bash [moved from plugins/available/javascript.plugins.bash with 68% similarity]
plugins/available/jekyll.plugin.bash [moved from plugins/available/jekyll.plugins.bash with 92% similarity]
plugins/available/latex.plugin.bash
plugins/available/nginx.plugin.bash [moved from plugins/available/nginx.plugins.bash with 82% similarity]
plugins/available/nvm.plugin.bash
plugins/available/osx.plugin.bash
plugins/available/python.plugin.bash
plugins/available/rbenv.plugin.bash
plugins/available/ruby.plugin.bash
plugins/available/rvm.plugin.bash
plugins/available/ssh.plugin.bash [new file with mode: 0644]
plugins/available/ssh.plugins.bash [deleted file]
plugins/available/subversion.plugin.bash
plugins/available/tmux.plugin.bash
plugins/available/tmuxinator.plugin.bash
plugins/available/vagrant.plugin.bash [moved from plugins/available/vagrant.plugins.bash with 94% similarity]
plugins/available/virtualenv.plugin.bash
plugins/available/z.plugin.bash [moved from plugins/available/z.bash with 96% similarity]
plugins/available/z_autoenv.plugin.bash [moved from plugins/available/z_autoenv.plugins.bash with 88% similarity]

old mode 100755 (executable)
new mode 100644 (file)
index 85f15ad..8c5f24f
@@ -1,7 +1,5 @@
-#!/usr/bin/env bash
-
 cite about-plugin
-about-plugin generic and miscellaneous tools
+about-plugin miscellaneous tools
 
 ips ()
 {
old mode 100755 (executable)
new mode 100644 (file)
index 4c0e380..1bfba2c
@@ -1,7 +1,5 @@
-#!/usr/bin/env bash
-
 cite about-plugin
-about-plugin query and display info about your battery charge level
+about-plugin display info about your battery charge level
 
 battery_percentage(){
   about 'displays battery charge as a percentage of full (100%)'
old mode 100755 (executable)
new mode 100644 (file)
similarity index 86%
rename from plugins/available/dirs.plugins.bash
rename to plugins/available/dirs.plugin.bash
index e03ccf5..d80b354
@@ -1,5 +1,3 @@
-#!/usr/bin/env bash
-
 # Directory stack navigation:
 #
 # Add to stack with: pu /path/to/directory
@@ -7,6 +5,9 @@
 # Show stack with: d
 # Jump to location by number.
 
+cite about-plugin
+about-plugin directory stack navigation
+
 # Show directory stack
 alias d="dirs -v -l"
 
@@ -31,6 +32,9 @@ alias pu="pushd"
 alias po="popd"
 
 function dirs-help() {
+  about directory navigation alias usage
+  group dirs
+
   echo "Directory Navigation Alias Usage"
   echo
   echo "Use the power of directory stacking to move"
@@ -64,10 +68,18 @@ fi
 alias L='cat ~/.dirs'
 
 G () {                         # goes to distination dir otherwise , stay in the dir
+    about goes to destination dir
+    param 1: directory
+    example '$ G ..'
+    group dirs
+
     cd ${1:-$(pwd)} ;
 }
 
 S () {                         # SAVE a BOOKMARK
+    about save a bookmark
+    group dirs
+
     sed "/$@/d" ~/.dirs > ~/.dirs1;
     \mv ~/.dirs1 ~/.dirs;
     echo "$@"=\"`pwd`\" >> ~/.dirs;
@@ -75,6 +87,9 @@ S () {                                # SAVE a BOOKMARK
 }
 
 R () {                         # remove a BOOKMARK
+    about remove a bookmark
+    group dirs
+
     sed "/$@/d" ~/.dirs > ~/.dirs1;
     \mv ~/.dirs1 ~/.dirs;
 }
index 1c3e9b1..fbd969c 100644 (file)
@@ -1,3 +1,5 @@
+cite about-plugin
+about-plugin one command to extract them all...
 extract () {
   if [ $# -ne 1 ]
   then
similarity index 99%
rename from plugins/available/fasd.bash
rename to plugins/available/fasd.plugin.bash
index 984f630..220460c 100755 (executable)
@@ -584,7 +584,8 @@ fasd [-A|-D] [paths ...]
 fasd --init env
 
 case $- in
-  *i*) alias fasd=$BASH_IT'/plugins/enabled/fasd.bash'
+  *i*) cite about-plugin
+       about-plugin navigate 'frecently' used files and directories
        eval "$(fasd --init auto)"
       ;;
   *) # assume being executed as an executable
similarity index 84%
rename from plugins/available/git.plugins.bash
rename to plugins/available/git.plugin.bash
index 41b031f..15876de 100644 (file)
@@ -1,26 +1,42 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin git helper functions
 
 function git_remote {
+  about 'adds remote $GIT_HOSTING:$1 to current repo'
+  group git
+
   echo "Running: git remote add origin ${GIT_HOSTING}:$1.git"
   git remote add origin $GIT_HOSTING:$1.git
 }
 
 function git_first_push {
+  about push into origin refs/heads/master
+  group git
+
   echo "Running: git push origin master:refs/heads/master"
   git push origin master:refs/heads/master
 }
 
 function git_remove_missing_files() {
+  about "git rm's missing files"
+  group git
+
   git ls-files -d -z | xargs -0 git update-index --remove
 }
 
 # Adds files to git's exclude file (same as .gitignore)
 function local-ignore() {
+  about adds file or path to git exclude file
+  param 1: file or path fragment to ignore
+  group git
   echo "$1" >> .git/info/exclude
 }
 
 # get a quick overview for your git repo
 function git_info() {
+    about overview for your git repo
+    group git
+
     if [ -n "$(git symbolic-ref HEAD 2> /dev/null)" ]; then
         # print informations
         echo "git repo overview"
@@ -29,7 +45,7 @@ function git_info() {
 
         # print all remotes and thier details
         for remote in $(git remote show); do
-            echo $remote:  
+            echo $remote:
             git remote show $remote
             echo
         done
@@ -43,10 +59,10 @@ function git_info() {
         fi
 
         # print at least 5 last log entries
-        echo 
+        echo
         echo "log:"
         git log -5 --oneline
-        echo 
+        echo
 
     else
         echo "you're currently not in a git repository"
@@ -55,6 +71,9 @@ function git_info() {
 }
 
 function git_stats {
+    about display stats per author
+    group git
+
 # awesome work from https://github.com/esc/git-stats
 # including some modifications
 
similarity index 53%
rename from plugins/available/hg.plugins.bash
rename to plugins/available/hg.plugin.bash
index 33c81d3..97182fb 100644 (file)
@@ -1,14 +1,25 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin hg helper functions
+
 hg_dirty() {
+    about displays dirty status of hg repository
+    group hg
+
     hg status --no-color 2> /dev/null \
     | awk '$1 == "?" { print "?" } $1 != "?" { print "!" }' \
     | sort | uniq | head -c1
 }
 
 hg_in_repo() {
+    about 'determine if pwd is an hg repo'
+    group hg
+
     [[ `hg branch 2> /dev/null` ]] && echo 'on '
 }
 
 hg_branch() {
+    about display current hg branch
+    group hg
+
     hg branch 2> /dev/null
 }
similarity index 68%
rename from plugins/available/javascript.plugins.bash
rename to plugins/available/javascript.plugin.bash
index 76a7e13..40ee20e 100644 (file)
@@ -1,16 +1,22 @@
-#!/usr/bin/env bash
-#
-# The install directory is hard-coded. TOOD: allow the directory to be specified on the command line.
-#
+# The install directory is hard-coded. TODO: allow the directory to be specified on the command line.
+
+cite about-plugin
+about-plugin download jquery files into current project
 
 [[ -z "$JQUERY_VERSION_NUMBER" ]] && JQUERY_VERSION_NUMBER="1.6.1"
 [[ -z "$JQUERY_UI_VERSION_NUMBER" ]] && JQUERY_UI_VERSION_NUMBER="1.8.13"
 
 function rails_jquery {
+  about 'download rails.js into public/javascripts'
+  group javascript
+
   curl -o public/javascripts/rails.js http://github.com/rails/jquery-ujs/raw/master/src/rails.js
 }
 
 function jquery_install {
+  about 'download jquery.js into public/javascripts'
+  group javascripts
+
   if [ -z "$1" ]
   then
       version=$JQUERY_VERSION_NUMBER
@@ -21,6 +27,9 @@ function jquery_install {
 }
 
 function jquery_ui_install {
+  about 'download jquery_us.js into public/javascripts'
+  group javascripts
+
   if [ -z "$1" ]
   then
       version=$JQUERY_UI_VERSION_NUMBER
similarity index 92%
rename from plugins/available/jekyll.plugins.bash
rename to plugins/available/jekyll.plugin.bash
index 74e3cb1..2edd79e 100644 (file)
@@ -1,6 +1,11 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin manage your jekyll site
 
 editpost() {
+  about edit a post
+  param 1: site directory
+  group jekyll
+
   unset SITE
   if [ -z "$1" ]
   then
@@ -35,11 +40,11 @@ editpost() {
     DATE=`echo $POST | grep -oE "[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}"`
     TITLE=`cat $POST | grep -oE "title: (.+)"`
     TITLE=`echo $TITLE | sed 's/title: //'`
-    echo "$COUNTER)    $DATE   $TITLE" >> "$TMPFILE"   
+    echo "$COUNTER)    $DATE   $TITLE" >> "$TMPFILE"
     POSTS[$COUNTER]=$POST
     COUNTER=`expr $COUNTER + 1`
   done
-  less $TMPFILE        
+  less $TMPFILE
   read -p "Number of post to edit: " POST_TO_EDIT
   if [ -z "$JEKYLL_EDITOR" ]
   then
@@ -50,6 +55,10 @@ editpost() {
 }
 
 newpost() {
+  about create a new post
+  param 1: site directory
+  group jekyll
+
   unset SITE
   if [ -z "$1" ]
   then
@@ -93,7 +102,7 @@ newpost() {
   then
     select OPTION in $OPTIONS
     do
-      if [[ $OPTION = "Text" ]] 
+      if [[ $OPTION = "Text" ]]
       then
         POST_TYPE="Text"
         break
@@ -257,6 +266,10 @@ newpost() {
 }
 
 function testsite() {
+  about launches local jekyll server
+  param 1: site directory
+  group jekyll
+
   unset SITE
   if [ -z "$1" ]
   then
@@ -285,6 +298,10 @@ function testsite() {
 }
 
 function buildsite() {
+  about builds site
+  param 1: site directory
+  group jekyll
+
   unset SITE
   if [ -z "$1" ]
   then
@@ -314,6 +331,10 @@ function buildsite() {
 }
 
 function deploysite() {
+  about 'rsyncs site to remote host'
+  param 1: site directory
+  group jekyll
+
   unset SITE
   if [ -z "$1" ]
   then
index c2ce9dd..ff9316a 100644 (file)
@@ -1,4 +1,5 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin use mactex
 
 # add mactex to the path if its present
 MACTEX_PATH=/usr/local/texlive/2009/bin/universal-darwin
similarity index 82%
rename from plugins/available/nginx.plugins.bash
rename to plugins/available/nginx.plugin.bash
index 6dd86dd..bdee127 100644 (file)
@@ -1,6 +1,10 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin manage your nginx service
 
 function nginx_reload() {
+  about reload your nginx config
+  group nginx
+
   FILE="${NGINX_PATH}/logs/nginx.pid"
   if [ -e $FILE ]; then
     echo "Reloading NGINX..."
@@ -13,6 +17,9 @@ function nginx_reload() {
 }
 
 function nginx_stop() {
+  about stop nginx
+  group nginx
+
   FILE="${NGINX_PATH}/logs/nginx.pid"
   if [ -e $FILE ]; then
     echo "Stopping NGINX..."
@@ -25,6 +32,9 @@ function nginx_stop() {
 }
 
 function nginx_start() {
+  about start nginx
+  group nginx
+
   FILE="${NGINX_PATH}/sbin/nginx"
   if [ -e $FILE ]; then
     echo "Starting NGINX..."
@@ -35,6 +45,9 @@ function nginx_start() {
 }
 
 function nginx_restart() {
+  about restart nginx
+  group nginx
+
   FILE="${NGINX_PATH}/logs/nginx.pid"
   if [ -e $FILE ]; then
     echo "Stopping NGINX..."
index 3f489dd..0e51e0a 100644 (file)
@@ -5,6 +5,9 @@
 # Implemented by Tim Caswell <tim@creationix.com>
 # with much bash help from Matthew Ranney
 
+cite about-plugin
+about-plugin 'node version manager, as a bash function'
+
 export NVM_DIR=$HOME/.nvm
 
 if [ ! -d "$NVM_DIR" ]; then
@@ -75,6 +78,10 @@ print_versions()
 
 nvm()
 {
+  about 'Node Version Manager'
+  param '1: command, see nvm help'
+  group nvm
+
   if [ $# -lt 1 ]; then
     nvm help
     return
index 7d3d077..ade109a 100644 (file)
@@ -1,6 +1,10 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'osx-specific functions'
 
 function tab() {
+  about 'opens a new terminal tab'
+  group osx
+
   osascript 2>/dev/null <<EOF
     tell application "System Events"
       tell process "Terminal" to keystroke "t" using command down
@@ -15,6 +19,10 @@ EOF
 # this one switches your os x dock between 2d and 3d
 # thanks to savier.zwetschge.org
 function dock-switch() {
+    about 'switch dock between 2d and 3d'
+    param '1: "2d" or "3d"'
+    example '$ dock-switch 2d'
+    group osx
 
     if [ $(uname) = "Darwin" ]; then
 
@@ -39,6 +47,10 @@ function dock-switch() {
 # Download a file and open it in Preview
 
 function prevcurl() {
+  about 'download a file and open it in Preview'
+  param '1: url'
+  group 'osx'
+
   if [ ! $(uname) = "Darwin" ]
   then
     echo "This function only works with Mac OS X"
index 6c87f8a..01d2e49 100644 (file)
@@ -1,4 +1,5 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin '"alias "http" to SimpleHTTPServer'
 
 if [ $(uname) = "Linux" ]
 then
index c45d714..70fe62c 100644 (file)
@@ -1,8 +1,10 @@
-#!/usr/bin/env bash
-
 # Load rbebv, if you are using it
+
+cite about-plugin
+about-plugin 'load rbenv, if you are using it'
+
 export PATH="$HOME/.rbenv/bin:$PATH"
 [[ `which rbenv` ]] && eval "$(rbenv init -)"
 
 # Load the auto-completion script if rbenv was loaded.
-[[ -e ~/.rbenv/completions/rbenv.bash ]] && source ~/.rbenv/completions/rbenv.bash
\ No newline at end of file
+[[ -e ~/.rbenv/completions/rbenv.bash ]] && source ~/.rbenv/completions/rbenv.bash
index 9ae61a4..11e632f 100644 (file)
@@ -1,4 +1,10 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'adds "remove_gem" function'
+
 function remove_gem {
+  about 'removes installed gem'
+  param '1: installed gem name'
+  group ruby
+
   gem list | grep $1 | awk '{ print $1; }' | xargs sudo gem uninstall
 }
index e0d18ba..6acad07 100644 (file)
@@ -1,6 +1,8 @@
-#!/usr/bin/env bash
-
 # Load RVM, if you are using it
+
+cite about-plugin
+about-plugin 'load rvm, if you are using it'
+
 [[ -s $HOME/.rvm/scripts/rvm ]] && source $HOME/.rvm/scripts/rvm
 
 # Check to make sure that RVM is actually loaded before adding
diff --git a/plugins/available/ssh.plugin.bash b/plugins/available/ssh.plugin.bash
new file mode 100644 (file)
index 0000000..4e17206
--- /dev/null
@@ -0,0 +1,19 @@
+cite about-plugin
+about-plugin 'ssh helper functions'
+
+function add_ssh() {
+  about 'add entry to ssh config'
+  param '1: host'
+  param '2: hostname'
+  param '3: user'
+  group 'ssh'
+
+  echo -en "\n\nHost $1\n  HostName $2\n  User $3\n  ServerAliveInterval 30\n  ServerAliveCountMax 120" >> ~/.ssh/config
+}
+
+function sshlist() {
+  about 'list hosts defined in ssh config'
+  group 'ssh'
+
+  awk '$1 ~ /Host$/ { print $2 }' ~/.ssh/config
+}
diff --git a/plugins/available/ssh.plugins.bash b/plugins/available/ssh.plugins.bash
deleted file mode 100644 (file)
index 39718fb..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-
-function add_ssh() {
-  echo -en "\n\nHost $1\n  HostName $2\n  User $3\n  ServerAliveInterval 30\n  ServerAliveCountMax 120" >> ~/.ssh/config
-}
-
-function sshlist() {
-  awk '$1 ~ /Host$/ { print $2 }' ~/.ssh/config
-}
index a7fe941..bdb3edf 100644 (file)
@@ -1,8 +1,21 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'svn helper functions'
+
 rm_svn(){
+  about 'remove ".svn" files from directory'
+  param '1: directory to search for files'
+  group 'svn'
+
+  if [ -z "$1" ]; then
+      reference rm_svn
+      return
+  fi
   find $1 -name .svn -print0 | xargs -0 rm -rf
 }
 
 svn_add(){
-       svn status | grep '^\?' | sed -e 's/? *//' | sed -e 's/ /\ /g' | xargs svn add
+    about 'add to svn repo'
+    group 'svn'
+
+    svn status | grep '^\?' | sed -e 's/? *//' | sed -e 's/ /\ /g' | xargs svn add
 }
index ff35336..f7ee337 100644 (file)
@@ -1,2 +1,6 @@
 # make sure that tmux is launched in 256 color mode
+
+cite about-plugin
+about-plugin 'make sure that tmux is launched in 256 color mode'
+
 alias tmux="TERM=xterm-256color tmux"
index cf5500d..a011435 100644 (file)
@@ -1,3 +1,4 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'sources tmuxinator script if available'
 
 [[ -s $HOME/.tmuxinator/scripts/tmuxinator ]] && . $HOME/.tmuxinator/scripts/tmuxinator
similarity index 94%
rename from plugins/available/vagrant.plugins.bash
rename to plugins/available/vagrant.plugin.bash
index 3131744..aa223e7 100644 (file)
@@ -1,4 +1,6 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'set up vagrant autocompletion'
+
 _vagrant()
 {
     cur="${COMP_WORDS[COMP_CWORD]}"
index ba27c76..b8c4609 100644 (file)
@@ -1,19 +1,30 @@
-#!/usr/bin/env bash
-
 # make sure virtualenvwrapper is enabled if available
+
+cite about-plugin
+about-plugin 'virtualenvwrapper helper functions'
+
 [[ `which virtualenvwrapper.sh` ]] && . virtualenvwrapper.sh
 
-# create a new virtualenv for this directory
+
 function mkvenv {
+  about 'create a new virtualenv for this directory'
+  group virtualenv
+
   cwd=`basename \`pwd\``
   mkvirtualenv --no-site-packages --distribute $cwd
 }
 
-# create a new virtualenv for the branch you're currently in
+
 function mkvbranch {
+  about 'create a new virtualenv for the current branch'
+  group virtualenv
+
   mkvirtualenv --no-site-packages --distribute "$(basename `pwd`)@$(git_prompt_info)"
 }
 
 function wovbranch {
+  about 'sets workon branch'
+  group virtualenv
+
   workon "$(basename `pwd`)@$(git_prompt_info)"
 }
similarity index 96%
rename from plugins/available/z.bash
rename to plugins/available/z.plugin.bash
index ef3e3d9..7ffe8fb 100644 (file)
@@ -1,7 +1,7 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'maintains a jump-list of the directories you actually use'
+about-plugin '                              z is DEPRECATED, use fasd instead'
 
-# maintains a jump-list of the directories you actually use
-#
 # INSTALL:
 #   * put something like this in your .bashrc:
 #     . /path/to/z.sh
similarity index 88%
rename from plugins/available/z_autoenv.plugins.bash
rename to plugins/available/z_autoenv.plugin.bash
index 04efa85..dd1aec1 100644 (file)
@@ -1,4 +1,6 @@
-#!/usr/bin/env bash
+cite about-plugin
+about-plugin 'source into environment when cding to directories'
+
 if [[ -n "${ZSH_VERSION}" ]]
 then __array_offset=0
 else __array_offset=1