Skip to content

Commit c65bb2e

Browse files
authored
Merge pull request #67 from DannyBen/fix/completion-wordbreaks
Allow using colon, semicolon and equal sign in completions
2 parents 5691a19 + 68fa3a7 commit c65bb2e

File tree

12 files changed

+58
-0
lines changed

12 files changed

+58
-0
lines changed

lib/completely/templates/template.erb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@
2727
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
2828
local compline="${compwords[*]}"
2929

30+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
31+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
32+
3033
% if ENV['COMPLETELY_DEBUG']
3134
if [[ -n "$COMPLETELY_DEBUG" ]]; then
3235
echo "compline: '$compline'" > 'completely-debug.txt'
@@ -43,6 +46,8 @@
4346

4447
% end
4548
esac
49+
50+
COMP_WORDBREAKS="$original_comp_wordbreaks"
4651
} &&
4752
complete -F <%= function_name %> <%= command %>
4853

spec/approvals/cli/generated-script

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ _mygit_completions() {
2727
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
2828
local compline="${compwords[*]}"
2929

30+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
31+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
32+
3033
case "$compline" in
3134
'status'*)
3235
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_mygit_completions_filter "--help --verbose --branch $(git branch 2> /dev/null)")" -- "$cur" )
@@ -45,6 +48,8 @@ _mygit_completions() {
4548
;;
4649

4750
esac
51+
52+
COMP_WORDBREAKS="$original_comp_wordbreaks"
4853
} &&
4954
complete -F _mygit_completions mygit
5055

spec/approvals/cli/generated-script-alt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ _mycomps() {
2727
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
2828
local compline="${compwords[*]}"
2929

30+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
31+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
32+
3033
case "$compline" in
3134
'status'*)
3235
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_mycomps_filter "--help --verbose --branch $(git branch 2> /dev/null)")" -- "$cur" )
@@ -45,6 +48,8 @@ _mycomps() {
4548
;;
4649

4750
esac
51+
52+
COMP_WORDBREAKS="$original_comp_wordbreaks"
4853
} &&
4954
complete -F _mycomps mygit
5055

spec/approvals/cli/generated-wrapped-script

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ give_comps() {
2828
echo $' local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")'
2929
echo $' local compline="${compwords[*]}"'
3030
echo $''
31+
echo $' local original_comp_wordbreaks="$COMP_WORDBREAKS"'
32+
echo $' COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"'
33+
echo $''
3134
echo $' case "$compline" in'
3235
echo $' \'status\'*)'
3336
echo $' while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_mygit_completions_filter "--help --verbose --branch $(git branch 2> /dev/null)")" -- "$cur" )'
@@ -46,6 +49,8 @@ give_comps() {
4649
echo $' ;;'
4750
echo $''
4851
echo $' esac'
52+
echo $''
53+
echo $' COMP_WORDBREAKS="$original_comp_wordbreaks"'
4954
echo $'} &&'
5055
echo $'complete -F _mygit_completions mygit'
5156
echo $''

spec/approvals/cli/test/completely-tester-1.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ _mygit_completions() {
3535
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
3636
local compline="${compwords[*]}"
3737

38+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
39+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
40+
3841
case "$compline" in
3942
'status'*)
4043
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_mygit_completions_filter "--help --verbose --branch $(git branch 2> /dev/null)")" -- "$cur" )
@@ -53,6 +56,8 @@ _mygit_completions() {
5356
;;
5457

5558
esac
59+
60+
COMP_WORDBREAKS="$original_comp_wordbreaks"
5661
} &&
5762
complete -F _mygit_completions mygit
5863

spec/approvals/cli/test/completely-tester-2.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ _mygit_completions() {
3535
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
3636
local compline="${compwords[*]}"
3737

38+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
39+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
40+
3841
case "$compline" in
3942
'status'*)
4043
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_mygit_completions_filter "--help --verbose --branch $(git branch 2> /dev/null)")" -- "$cur" )
@@ -53,6 +56,8 @@ _mygit_completions() {
5356
;;
5457

5558
esac
59+
60+
COMP_WORDBREAKS="$original_comp_wordbreaks"
5661
} &&
5762
complete -F _mygit_completions mygit
5863

spec/approvals/cli/test/completely-tester.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ _mygit_completions() {
3535
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
3636
local compline="${compwords[*]}"
3737

38+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
39+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
40+
3841
case "$compline" in
3942
'status'*)
4043
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_mygit_completions_filter "--help --verbose --branch $(git branch 2> /dev/null)")" -- "$cur" )
@@ -53,6 +56,8 @@ _mygit_completions() {
5356
;;
5457

5558
esac
59+
60+
COMP_WORDBREAKS="$original_comp_wordbreaks"
5661
} &&
5762
complete -F _mygit_completions mygit
5863

spec/approvals/completions/function

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ send_completions() {
2828
echo $' local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")'
2929
echo $' local compline="${compwords[*]}"'
3030
echo $''
31+
echo $' local original_comp_wordbreaks="$COMP_WORDBREAKS"'
32+
echo $' COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"'
33+
echo $''
3134
echo $' case "$compline" in'
3235
echo $' \'generate\'*)'
3336
echo $' while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A directory -W "$(_completely_completions_filter "--help --force")" -- "$cur" )'
@@ -42,6 +45,8 @@ send_completions() {
4245
echo $' ;;'
4346
echo $''
4447
echo $' esac'
48+
echo $''
49+
echo $' COMP_WORDBREAKS="$original_comp_wordbreaks"'
4550
echo $'} &&'
4651
echo $'complete -F _completely_completions completely'
4752
echo $''

spec/approvals/completions/script

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ _completely_completions() {
2727
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
2828
local compline="${compwords[*]}"
2929

30+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
31+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
32+
3033
case "$compline" in
3134
'generate'*)
3235
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A directory -W "$(_completely_completions_filter "--help --force")" -- "$cur" )
@@ -41,6 +44,8 @@ _completely_completions() {
4144
;;
4245

4346
esac
47+
48+
COMP_WORDBREAKS="$original_comp_wordbreaks"
4449
} &&
4550
complete -F _completely_completions completely
4651

spec/approvals/completions/script-only-spaces

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ _completely_completions() {
2727
local compwords=("${COMP_WORDS[@]:1:$COMP_CWORD-1}")
2828
local compline="${compwords[*]}"
2929

30+
local original_comp_wordbreaks="$COMP_WORDBREAKS"
31+
COMP_WORDBREAKS="${COMP_WORDBREAKS//[:=]/}"
32+
3033
case "$compline" in
3134
'generate'*)
3235
while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A directory -W "$(_completely_completions_filter "--help --force")" -- "$cur" )
@@ -37,6 +40,8 @@ _completely_completions() {
3740
;;
3841

3942
esac
43+
44+
COMP_WORDBREAKS="$original_comp_wordbreaks"
4045
} &&
4146
complete -F _completely_completions completely
4247

0 commit comments

Comments
 (0)