diff --git a/_goto b/_goto index 5e80f63..c0390c7 100644 --- a/_goto +++ b/_goto @@ -1,7 +1,8 @@ +#!/usr/bin/zsh function _goto { - for label in $(_awk '{print $1}' `_gotofile`) + for label in $(_awk '{print $1;}' `_goto_file`) do - compadd "$@" $label + compadd "$@" "${label}" done }; diff --git a/goto.plugin.zsh b/goto.plugin.zsh index c7c9121..e031a01 100644 --- a/goto.plugin.zsh +++ b/goto.plugin.zsh @@ -7,21 +7,21 @@ function _awk { which gawk &>/dev/null && gawk $@ }; -function _gotofile { - echo "${GOTO_FILE:-${HOME/.labels.tsv}}" +function _goto_file { + echo "${GOTO_FILE:-${HOME}/.labels.tsv}" }; function _make_label { - printf '%s %s\n' "$1" $(echo "$2" | tr -d "$HOME/") >> `_gotofile` + printf '%s %s\n' "$1" $(echo "$2" | tr -d "$HOME/") >> `_goto_file` }; function label { - if [ "${#}" -eq 0 ]; then + if [[ "${#}" -eq 0 ]]; then echo "Usage: $ label [dir]" echo " creates a label which goto can cd to" - elif [ -d "${2}" ]; then + elif [[ -d "${2}" ]]; then _make_label "${1}" "${2}" - else + elsep _make_label "${1}" "${PWD}" fi }; @@ -31,14 +31,14 @@ function goto { echo "Usage: $ goto " echo " jumps to a record set by label" elif [[ "$1" == "ls" ]]; then - _awk "{ print \$1 }" `_gotofile` | column -t + _awk '{print $1;}' `_goto_file` | column -t else - dir=$(_awk "/^$1\s/ {print \$2;exit;}" `_gotofile` | head -n 1) + dir=$(_awk "/^$1\s/ {print \$2;exit;}" `_goto_file` | head -n 1) if [[ "${dir}" != "/*" ]]; then - dir="${HOME}/${dir}" + dir="${HOME}/${dir}" fi if [[ ! -e "${dir}" ]]; then - echo "Error: Label '$1' resolved to missing path '$dir'" + echo "Error: Label '$1' resolved to missing path '$dir'" else cd "${dir}" fi