]>
Commit | Line | Data |
---|---|---|
8884f6d5 SK |
1 | _setterm_module() |
2 | { | |
253e5e71 | 3 | local bright cur prev OPTS |
8884f6d5 SK |
4 | COMPREPLY=() |
5 | cur="${COMP_WORDS[COMP_CWORD]}" | |
6 | prev="${COMP_WORDS[COMP_CWORD-1]}" | |
7 | case $prev in | |
fb27f91c | 8 | '--term') |
8884f6d5 SK |
9 | local TERM_LIST I |
10 | TERM_LIST='' | |
11 | for I in /usr/share/terminfo/?/*; do | |
12 | TERM_LIST+="${I##*/} " | |
13 | done | |
14 | COMPREPLY=( $(compgen -W "$TERM_LIST" -- $cur) ) | |
15 | return 0 | |
16 | ;; | |
253e5e71 SK |
17 | '--foreground'|'--background') |
18 | COMPREPLY=( $(compgen -W "black blue cyan default green magenta red white yellow" -- $cur) ) | |
19 | return 0 | |
20 | ;; | |
21 | '--ulcolor'|'--hbcolor'|'bright') | |
22 | if [ $prev != 'bright' ]; then | |
23 | bright='bright black grey' | |
24 | else | |
25 | bright='' | |
26 | fi | |
27 | COMPREPLY=( $(compgen -W "$bright blue cyan green magenta red white yellow" -- $cur) ) | |
8884f6d5 SK |
28 | return 0 |
29 | ;; | |
fb27f91c | 30 | '--cursor'|'--repeat'|'--appcursorkeys'|'--linewrap'|'--inversescreen'|'--bold'|'--half-bright'|'--blink'|'--reverse'|'--underline'|'--msg') |
8884f6d5 SK |
31 | COMPREPLY=( $(compgen -W "off on" -- $cur) ) |
32 | return 0 | |
33 | ;; | |
fb27f91c | 34 | '--clear') |
8884f6d5 SK |
35 | COMPREPLY=( $(compgen -W "all rest" -- $cur) ) |
36 | return 0 | |
37 | ;; | |
fb27f91c | 38 | '--tabs'|'--clrtabs') |
8884f6d5 SK |
39 | COMPREPLY=( $(compgen -W "tab1 tab2 tab3 tab160" -- $cur) ) |
40 | return 0 | |
41 | ;; | |
fb27f91c | 42 | '--regtabs') |
d6b975ef | 43 | COMPREPLY=( $(compgen -W "{1..160}" -- $cur) ) |
8884f6d5 SK |
44 | return 0 |
45 | ;; | |
fb27f91c | 46 | '--blank') |
d6b975ef | 47 | COMPREPLY=( $(compgen -W "{0..60} force poke" -- $cur) ) |
8884f6d5 SK |
48 | return 0 |
49 | ;; | |
fb27f91c | 50 | '--dump'|'--append') |
8884f6d5 | 51 | local NUM_CONS |
609d4853 | 52 | NUM_CONS=(/dev/vcsa?*) |
d6b975ef | 53 | COMPREPLY=( $(compgen -W "{1..${#NUM_CONS[*]}}" -- $cur) ) |
8884f6d5 SK |
54 | return 0 |
55 | ;; | |
fb27f91c | 56 | '--file') |
ce3e6b15 | 57 | local IFS=$'\n' |
8884f6d5 SK |
58 | compopt -o filenames |
59 | COMPREPLY=( $(compgen -f -- $cur) ) | |
60 | return 0 | |
61 | ;; | |
fb27f91c | 62 | '--msglevel') |
91746583 | 63 | COMPREPLY=( $(compgen -W "{0..8}" -- $cur) ) |
8884f6d5 SK |
64 | return 0 |
65 | ;; | |
fb27f91c | 66 | '--powersave') |
8884f6d5 SK |
67 | COMPREPLY=( $(compgen -W "on vsync hsync powerdown off" -- $cur) ) |
68 | return 0 | |
69 | ;; | |
fb27f91c | 70 | '--powerdown') |
d6b975ef | 71 | COMPREPLY=( $(compgen -W "{0..60}" -- $cur) ) |
8884f6d5 SK |
72 | return 0 |
73 | ;; | |
fb27f91c | 74 | '--blength') |
8884f6d5 SK |
75 | COMPREPLY=( $(compgen -W "0-2000" -- $cur) ) |
76 | return 0 | |
77 | ;; | |
fb27f91c | 78 | '--bfreq') |
8884f6d5 SK |
79 | COMPREPLY=( $(compgen -W "freqnumber" -- $cur) ) |
80 | return 0 | |
81 | ;; | |
fb27f91c | 82 | '--help'|'--version') |
d4f9b8d7 VS |
83 | return 0 |
84 | ;; | |
8884f6d5 | 85 | esac |
fb27f91c SK |
86 | OPTS=" --term |
87 | --reset | |
e4fc3d57 | 88 | --resize |
fb27f91c SK |
89 | --initialize |
90 | --cursor | |
91 | --repeat | |
92 | --appcursorkeys | |
93 | --linewrap | |
94 | --default | |
95 | --foreground | |
96 | --background | |
97 | --ulcolor | |
98 | --hbcolor | |
99 | --ulcolor | |
100 | --hbcolor | |
101 | --inversescreen | |
102 | --bold | |
103 | --half-bright | |
104 | --blink | |
105 | --reverse | |
106 | --underline | |
107 | --store | |
108 | --clear | |
109 | --tabs | |
110 | --clrtabs | |
111 | --regtabs | |
112 | --blank | |
113 | --dump | |
114 | --append | |
115 | --file | |
116 | --msg | |
117 | --msglevel | |
118 | --powersave | |
119 | --powerdown | |
120 | --blength | |
121 | --bfreq | |
122 | --version | |
123 | --help" | |
8884f6d5 SK |
124 | COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) |
125 | return 0 | |
126 | } | |
127 | complete -F _setterm_module setterm |