|
1 # Relational pipes |
|
2 # Copyright © 2019 František Kučera (Frantovo.cz, GlobalCode.info) |
|
3 # |
|
4 # This program is free software: you can redistribute it and/or modify |
|
5 # it under the terms of the GNU General Public License as published by |
|
6 # the Free Software Foundation, version 3 of the License. |
|
7 # |
|
8 # This program is distributed in the hope that it will be useful, |
|
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
11 # GNU General Public License for more details. |
|
12 # |
|
13 # You should have received a copy of the GNU General Public License |
|
14 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
15 |
|
16 _relpipe_tr_guile_completion() { |
|
17 local w0 w1 w2 |
|
18 |
|
19 COMPREPLY=() |
|
20 w0=${COMP_WORDS[COMP_CWORD]} |
|
21 w1=${COMP_WORDS[COMP_CWORD-1]} |
|
22 w2=${COMP_WORDS[COMP_CWORD-2]} |
|
23 |
|
24 DATA_TYPE=( |
|
25 "string" |
|
26 "integer" |
|
27 "boolean" |
|
28 ) |
|
29 |
|
30 if [[ "$w1" == "--relation" && "x$w0" == "x" ]]; then COMPREPLY=("'.*'") |
|
31 elif [[ "$w1" == "--before-records" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
32 elif [[ "$w1" == "--after-records" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
33 elif [[ "$w1" == "--output-attribute" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
34 elif [[ "$w2" == "--output-attribute" ]]; then COMPREPLY=($(compgen -W "${DATA_TYPE[*]}" -- "$w0")) |
|
35 elif [[ "$w1" == "--define" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
36 elif [[ "$w2" == "--define" ]]; then COMPREPLY=($(compgen -W "${DATA_TYPE[*]}" -- "$w0")) |
|
37 elif [[ "$w3" == "--define" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
38 elif [[ "$w1" == "--for-each" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
39 elif [[ "$w1" == "--where" && "x$w0" == "x" ]]; then COMPREPLY=("'(string= \$a \"\")'") |
|
40 elif [[ "$w1" == "--has-more-records" && "x$w0" == "x" ]]; then COMPREPLY=("''") |
|
41 else |
|
42 OPTIONS=( |
|
43 "--relation" |
|
44 "--output-attribute" |
|
45 "--input-attributes-append" |
|
46 "--input-attributes-prepend" |
|
47 "--debug-variable-mapping" |
|
48 "--before-records" |
|
49 "--after-records" |
|
50 "--for-each" |
|
51 "--where" |
|
52 "--drop" |
|
53 "--define" |
|
54 "--has-more-records" |
|
55 ) |
|
56 COMPREPLY=($(compgen -W "${OPTIONS[*]}" -- "$w0")) |
|
57 fi |
|
58 } |
|
59 |
|
60 complete -F _relpipe_tr_guile_completion relpipe-tr-guile |
|
61 complete -F _relpipe_tr_guile_completion relpipe-in-guile |