diff --git a/plugins/README.md b/plugins/README.md index 360d91f..07aa7a8 100644 --- a/plugins/README.md +++ b/plugins/README.md @@ -16,7 +16,7 @@ Plugins extend the capabilities of `nnn`. They are _executable_ scripts (or bina | Plugin (a-z) | Description | Lang | Dependencies | | --- | --- | --- | --- | -| [autojump](autojump) | Navigate to dir/path | sh | autojump | +| [autojump](autojump) | Navigate to dir/path | sh | [jump](https://github.com/gsamokovarov/jump)/autojump | | [bookmarks](bookmarks) | Use named bookmarks managed with symlinks | sh | fzf | | [boom](boom) | Play random music from dir | sh | [moc](http://moc.daper.net/) | | [bulknew](bulknew) | Create multiple files/dirs at once | bash | sed, xargs, mktemp | diff --git a/plugins/autojump b/plugins/autojump index 54ff07b..3bfe228 100755 --- a/plugins/autojump +++ b/plugins/autojump @@ -1,20 +1,31 @@ #!/usr/bin/env sh -# Description: Navigate to directory using autojump +# Description: Navigate to directory using jump/autojump # -# Dependencies: autojump - https://github.com/wting/autojump +# Dependencies: jump - https://github.com/gsamokovarov/jump +# OR autojump - https://github.com/wting/autojump # -# Note: autojump STORES NAVIGATION PATTERNS +# Note: jump/autojump STORES NAVIGATION PATTERNS # # Shell: POSIX compliant -# Author: Marty Buchaus +# Authors: Marty Buchaus, Dave Snider -if which autojump >/dev/null 2>&1; then +if [ -z "$NNN_PIPE" ]; then + echo 'ERROR: NNN_PIPE is not set' | ${PAGER:-less} + exit 2 +fi + +if which jump >/dev/null 2>&1; then + printf "jump to: " + read -r dir + odir="$(jump cd "$dir")" + printf "%s" "0c$odir" > "$NNN_PIPE" +elif which autojump >/dev/null 2>&1; then printf "jump to: " read -r dir odir="$(autojump "$dir")" printf "%s" "0c$odir" > "$NNN_PIPE" else - printf "autojump missing" + printf "jump/autojump missing" read -r _ fi