summaryrefslogtreecommitdiff
path: root/completion/_flatpak
blob: e2995a2ca0584f14e2e9b952a29266b18c02d630 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#compdef flatpak

emulate -L zsh

local index
(( index = ${(c)#words[0,CURRENT]} + $#PREFIX + 1 ))


local resp=($(flatpak complete "$words" $index "$words[CURRENT]"))

_description options opt_expl option
_description arguments arg_expl argument

local match
for match in $resp; do
  case $match in
    __FLATPAK_FILE) _files;;
    __FLATPAK_BUNDLE_FILE) _path_files -g '*.flatpak';;
    __FLATPAK_BUNDLE_OR_REF_FILE) _path_files -g '*.flatpak(|ref)';;
    __FLATPAK_DIR) _path_files -/;;
    -*=) compadd $opt_expl[@] -S "" -- $match;;
    -*) compadd $opt_expl[@] -- $match;;
    *) compadd $arg_expl[@] $match;;
  esac
done

# vim: ft=zsh