summaryrefslogtreecommitdiff
path: root/shell/completion.bash
diff options
context:
space:
mode:
Diffstat (limited to 'shell/completion.bash')
-rw-r--r--shell/completion.bash36
1 files changed, 18 insertions, 18 deletions
diff --git a/shell/completion.bash b/shell/completion.bash
index 05b4ef30..9005af70 100644
--- a/shell/completion.bash
+++ b/shell/completion.bash
@@ -75,11 +75,11 @@ _fzf_opts_completion() {
case "${prev}" in
--tiebreak)
- COMPREPLY=( $(compgen -W "length begin end index" -- ${cur}) )
+ COMPREPLY=( $(compgen -W "length begin end index" -- "$cur") )
return 0
;;
--color)
- COMPREPLY=( $(compgen -W "dark light 16 bw" -- ${cur}) )
+ COMPREPLY=( $(compgen -W "dark light 16 bw" -- "$cur") )
return 0
;;
--history)
@@ -88,8 +88,8 @@ _fzf_opts_completion() {
;;
esac
- if [[ ${cur} =~ ^-|\+ ]]; then
- COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
+ if [[ "$cur" =~ ^-|\+ ]]; then
+ COMPREPLY=( $(compgen -W "${opts}" -- "$cur") )
return 0
fi
@@ -108,32 +108,32 @@ _fzf_handle_dynamic_completion() {
elif [ -n "$_fzf_completion_loader" ]; then
_completion_loader "$@"
ret=$?
- eval $(complete | \grep "\-F.* $orig_cmd$" | _fzf_orig_completion_filter)
- source $BASH_SOURCE
+ eval "$(complete | \grep "\-F.* $orig_cmd$" | _fzf_orig_completion_filter)"
+ source "${BASH_SOURCE[0]}"
return $ret
fi
}
__fzf_generic_path_completion() {
local cur base dir leftover matches trigger cmd fzf
- [ ${FZF_TMUX:-1} -eq 1 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf"
- cmd=$(echo ${COMP_WORDS[0]} | sed 's/[^a-z0-9_=]/_/g')
+ [ "${FZF_TMUX:-1}" != 0 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf"
+ cmd=$(echo "${COMP_WORDS[0]}" | sed 's/[^a-z0-9_=]/_/g')
COMPREPLY=()
trigger=${FZF_COMPLETION_TRIGGER-'**'}
cur="${COMP_WORDS[COMP_CWORD]}"
- if [[ ${cur} == *"$trigger" ]]; then
+ if [[ "$cur" == *"$trigger" ]]; then
base=${cur:0:${#cur}-${#trigger}}
- eval base=$base
+ eval "base=$base"
dir="$base"
- while [ 1 ]; do
- if [ -z "$dir" -o -d "$dir" ]; then
+ while true; do
+ if [ -z "$dir" ] || [ -d "$dir" ]; then
leftover=${base/#"$dir"}
leftover=${leftover/#\/}
[ -z "$dir" ] && dir='.'
[ "$dir" != "/" ] && dir="${dir/%\//}"
tput sc
- matches=$(eval "$1 $(printf %q "$dir")" | $fzf $FZF_COMPLETION_OPTS $2 -q "$leftover" | while read item; do
+ matches=$(eval "$1 $(printf %q "$dir")" | $fzf $FZF_COMPLETION_OPTS $2 -q "$leftover" | while read -r item; do
printf "%q$3 " "$item"
done)
matches=${matches% }
@@ -159,13 +159,13 @@ __fzf_generic_path_completion() {
_fzf_complete() {
local cur selected trigger cmd fzf post
post="$(caller 0 | awk '{print $2}')_post"
- type -t $post > /dev/null 2>&1 || post=cat
- [ ${FZF_TMUX:-1} -eq 1 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf"
+ type -t "$post" > /dev/null 2>&1 || post=cat
+ [ "${FZF_TMUX:-1}" != 0 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf"
- cmd=$(echo ${COMP_WORDS[0]} | sed 's/[^a-z0-9_=]/_/g')
+ cmd=$(echo "${COMP_WORDS[0]}" | sed 's/[^a-z0-9_=]/_/g')
trigger=${FZF_COMPLETION_TRIGGER-'**'}
cur="${COMP_WORDS[COMP_CWORD]}"
- if [[ ${cur} == *"$trigger" ]]; then
+ if [[ "$cur" == *"$trigger" ]]; then
cur=${cur:0:${#cur}-${#trigger}}
tput sc
@@ -200,7 +200,7 @@ _fzf_complete_kill() {
[ -n "${COMP_WORDS[COMP_CWORD]}" ] && return 1
local selected fzf
- [ ${FZF_TMUX:-1} -eq 1 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf"
+ [ "${FZF_TMUX:-1}" != 0 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf"
tput sc
selected=$(ps -ef | sed 1d | $fzf -m $FZF_COMPLETION_OPTS | awk '{print $2}' | tr '\n' ' ')
tput rc