blob: 8a0f58e47336437cc6cc433be0301d0aab2994eb (
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
case ${PV} in
99999999*)
LIVE=:
EGIT_REPO_URI="git://github.com/zsh-users/${PN}.git"
inherit git-r3
PROPERTIES="live"
KEYWORDS=""
SRC_URI="";;
*)
LIVE=false
#RESTRICT="mirror"
TARBALL_VERSION='0.12.0'
SRC_URI="https://github.com/zsh-users/${PN}/archive/${TARBALL_VERSION}.tar.gz -> ${PN}-${PV}.tar.gz"
KEYWORDS="~amd64 ~x86"
S="${WORKDIR}/${PN}-${TARBALL_VERSION}"
esac
DESCRIPTION="Additional completion definitions for Zsh"
HOMEPAGE="https://gentoo.org/zsh-users/zsh-completions/"
LICENSE="ZSH"
SLOT="0"
if ${LIVE}
then DEPEND=""
else DEPEND=""
fi
IUSE=""
declare -a FILES
FILES=()
declare -A USEFILE FILEINDEX
USEFILE=()
FILEINDEX=()
used_value() {
case ${!1} in
'#'*)
eval "${1}=\${${1}#?}"
${LIVE};;
'/'*)
eval "${1}=\${${1}#?}"
! ${LIVE};;
esac
}
calculate_data() {
local comp curr currfile used
for comp
do curr="${comp%% *}"
used_value curr || continue
case ${curr} in
'+'*)
curr="completion_${curr#?}"
IUSE="${IUSE}${IUSE:+ }+${curr}";;
*)
curr="completion_${curr}"
IUSE="${IUSE}${IUSE:+ }${curr}";;
esac
for currfile in ${comp#* }
do used_value currfile
used=${?}
USEFILE["${currfile}"]="${curr}"
[[ -z ${FILEINDEX["${currfile}"]} ]] || die "${currfile} listed twice"
[ ${used} -ne 0 ] && continue
FILEINDEX["${currfile}"]="${#FILES[@]}"
FILES+=("${currfile}")
done
done
}
calculate_data \
'+Android _adb _android _emulator' \
'+Google _google' \
'+Unix _cmake _dzen2 _logger _nl _ps _shutdown _watch _xinput' \
'+database _redis-cli _pgsql_utils' \
'+dev _artisan _choc _console _gradle _geany _phing _manage.py _mvn _pear _play _symfony _thor _vagrant _veewee' \
'+disk _sdd _smartmontools _srm' \
'+distribute _celery /_envoy _fab _glances _kitchen _knife _mina _mussh' \
'+filesystem _zfs' \
'+git _git-flow _git-pulls' \
'+hardware _optirun _perf _primus' \
'+haskell _cabal _ghc #_stack' \
'+managers #_ansible #_ansible-galaxy #_ansible-playbook _bower _brew #_cask _debuild _lein _pactree _pkcon _port _yaourt' \
'+multimedia _id3 _id3v2 _showoff' \
'+net _dget _dhcpcd _httpie _iw _mosh _rfkill _socat _ssh-copy-id _vpnc _vnstat' \
'+nfs _exportfs' \
'+perl _cpanm' \
'+python _bpython _pygmentize _setup.py' \
'+ruby _bundle _cap _ditz _gas _gem _gist _github _git-wtf _jekyll _lunchy _rails _rspec _rubocop _rvm' \
'+search _ack _ag _jq' \
'+session _atach _teamocil _tmuxinator _wemux' \
'+subtitles _language_codes _periscope _subliminal' \
'+virtualization _boot2docker #_docker-compose #_docker-machine _virtualbox _virsh' \
'+web _coffee _composer _docpad _drush _heroku #_hledger _jonas _jmeter _jmeter-plugins _lunar _middleman _node _nvm _ralio /_salt _sbt _scala _svm'
src_prepare() {
# Remove colliding completions
if ${LIVE}
then mv src/_docker . || eerror "mv failed"
else mv src/_docker src/_pip . || die
fi
eapply_user
}
src_install() {
insinto /usr/share/zsh/site-functions
local i j u
for i in src/*
do j=${i#src/}
u=${USEFILE["${j}"]}
if [ -z "${u}" ]
then elog "installing unknown completion ${i#*/}"
doins "${i}"
continue
fi
! use "${u}" || doins "${i}"
u=${FILEINDEX["${j}"]}
FILES[${u}]=
done
for i in ${FILES[*]}
do elog "listed file ${i} not found"
done
dodoc README.md zsh-completions-howto.org
}
pkg_postinst() {
elog
elog "If you happen to compile your functions, you may need to delete"
elog "~/.zcompdump{,.zwc} and recompile to make the new completions available"
elog "to your shell."
elog
}
|