diff options
| author | 2019-06-16 22:21:13 +0530 | |
|---|---|---|
| committer | 2019-06-17 07:04:42 +0530 | |
| commit | 794a0e27091b63f997fc829d0288cde5a4a2edbd (patch) | |
| tree | 384695218b8cf09700df81715627004124e0edf7 /misc/auto-completion/bash | |
| parent | aa56b99326a12f5bbab6d5a693755060e81e44a2 (diff) | |
| download | nnn-794a0e27091b63f997fc829d0288cde5a4a2edbd.tar.gz | |
Move scripts to misc
Diffstat (limited to 'misc/auto-completion/bash')
| -rw-r--r-- | misc/auto-completion/bash/nnn-completion.bash | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/misc/auto-completion/bash/nnn-completion.bash b/misc/auto-completion/bash/nnn-completion.bash new file mode 100644 index 0000000..4c81e77 --- /dev/null +++ b/misc/auto-completion/bash/nnn-completion.bash @@ -0,0 +1,44 @@ +# +# Rudimentary Bash completion definition for nnn. +# +# Author: +# Arun Prakash Jana <engineerarun@gmail.com> +# + +_nnn () { + COMPREPLY=() + local IFS=$' \n' + local cur=$2 prev=$3 + local -a opts opts_with_args + opts=( + -b + -d + -e + -h + -i + -l + -p + -s + -S + -v + -w + ) + opts_with_arg=( + -b + -p + ) + + # Do not complete non option names + [[ $cur == -* ]] || return 1 + + # Do not complete when the previous arg is an option expecting an argument + for opt in "${opts_with_arg[@]}"; do + [[ $opt == $prev ]] && return 1 + done + + # Complete option names + COMPREPLY=( $(compgen -W "${opts[*]}" -- "$cur") ) + return 0 +} + +complete -F _nnn nnn |