From 23b9e0d1348e269fd7f955bf61ed431975ed1a9e Mon Sep 17 00:00:00 2001 From: Benjamin Althues Date: Fri, 26 Sep 2014 22:18:39 +0200 Subject: [PATCH 1/2] Small typofix --- README.org | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.org b/README.org index cfbf69e..470f1e0 100644 --- a/README.org +++ b/README.org @@ -3,7 +3,7 @@ #+HTML_HEAD: ~sti~ is a simplistic tool installer written in Bash. It offers simple -commands to help installing little tools your or otherss have written. +commands to help installing little tools you or others have written. This document will try to explain to you how to use it. Bug reports, feature requests, asking for help, and such things can be From 8d9428d2376e295e885096e93a2dc4429cd30d26 Mon Sep 17 00:00:00 2001 From: Benjamin Althues Date: Fri, 26 Sep 2014 22:20:09 +0200 Subject: [PATCH 2/2] Add autocompletion script for Zsh --- zsh/_sti | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 zsh/_sti diff --git a/zsh/_sti b/zsh/_sti new file mode 100644 index 0000000..637d987 --- /dev/null +++ b/zsh/_sti @@ -0,0 +1,56 @@ +#compdef sti +# sti --- Stupid Tool Installer +# Copyright (C) 2014 Tom Willemse + +# sti is free software: you can redistribute it and/or modify it under +# the terms of the GNU General Public License as published by the Free +# Software Foundation, either version 3 of the License, or (at your +# option) any later version. + +# sti is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public +# License for more details. + +# You should have received a copy of the GNU General Public License +# along with sti. If not, see . + +local expl +local -a sti_tools _sti_commands + +get_tools() { + if [[ "$state" == tools ]]; then + sti_tools=(${(f)"$(_call_program sti_tools \ + sti list | awk '{ print $1 }' 2>/dev/null)"}) + _wanted sti_tools expl 'enabled tools' compadd -a sti_tools + fi +} + +_sti_commands=( + 'help:show help message' + 'install:install a tool from a git repository' + 'list:list downloaded tools' + 'reinit:retry installing the executables of a tool' + 'remove:remove an installed tool' + 'update:update an installed tool' +) + +_arguments '*:: :->subcmds' && return 0 + +if (( CURRENT == 1 )); then + _describe -t commands "sti command" _sti_commands + return +fi + +case "$words[1]" in + h*) + _describe -t commands "sti subcommands" _sti_commands + return 0 ;; + i* | l* ) + _arguments && return 0 ;; + r* | u*) + _arguments '*:: :->tools' && return 0 + get_tools ;; +esac + +# vim: set ft=zsh et ts=2 sw=2 sts=2: