/[gentoo-x86]/eclass/bash-completion.eclass
Gentoo

Contents of /eclass/bash-completion.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.16 - (hide annotations) (download)
Sun Jul 31 12:38:22 2005 UTC (9 years, 1 month ago) by ka0ttic
Branch: MAIN
Changes since 1.15: +9 -2 lines
Updated to depend on bash-completion-config -OR- eselect, preferring the
latter if available.  Unfortunately, keeping bash-completion-config around
is necessary since eselect currently lacks stable keywords.

1 ka0ttic 1.9 # Copyright 1999-2005 Gentoo Foundation
2 ka0ttic 1.1 # Distributed under the terms of the GNU General Public License v2
3 ka0ttic 1.16 # $Header: /var/cvsroot/gentoo-x86/eclass/bash-completion.eclass,v 1.15 2005/07/11 15:08:06 swegener Exp $
4 ka0ttic 1.1 #
5     # Simple eclass that provides an interface for installing
6     # contributed (ie not included in bash-completion proper)
7     # bash-completion scripts.
8     #
9     # Author: Aaron Walker <ka0ttic@gentoo.org>
10 swegener 1.15 #
11 ka0ttic 1.1 # Please assign any bug reports to shell-tools@gentoo.org.
12    
13 ka0ttic 1.5 EXPORT_FUNCTIONS pkg_postinst
14 ka0ttic 1.1
15 swegener 1.15 IUSE="bash-completion"
16 ka0ttic 1.3
17 ka0ttic 1.16 # bash-completion-config is deprecated in favor of eselect,
18     # however, eselect currently lacks stable keywords.
19     RDEPEND="bash-completion?
20     ( || (
21     app-admin/eselect
22     app-shells/bash-completion-config
23     )
24     )"
25 ka0ttic 1.1
26     # dobashcompletion <file> <new file>
27     # First arg, <file>, is required and is the location of the bash-completion
28 ka0ttic 1.9 # script to install. If the variable BASH_COMPLETION_NAME is set in the
29     # ebuild, dobashcompletion will install <file> as
30     # /usr/share/bash-completion/$BASH_COMPLETION_NAME. If it is not set,
31     # dobashcompletion will check if a second arg ($2) was passed, installing as
32     # the specified name. Failing both these checks, dobashcompletion will
33     # install the file as /usr/share/bash-completion/${PN}.
34 ka0ttic 1.1
35     dobashcompletion() {
36 ka0ttic 1.6 [[ -z "$1" ]] && die "usage: dobashcompletion <file> <new file>"
37 ka0ttic 1.7 [[ -z "${BASH_COMPLETION_NAME}" ]] && BASH_COMPLETION_NAME="${2:-${PN}}"
38    
39 ka0ttic 1.1 if useq bash-completion ; then
40     insinto /usr/share/bash-completion
41 ka0ttic 1.6 newins "$1" "${BASH_COMPLETION_NAME}" || die "Failed to install $1"
42 ka0ttic 1.1 fi
43     }
44 ka0ttic 1.5
45     bash-completion_pkg_postinst() {
46     if useq bash-completion ; then
47     echo
48     einfo "To enable command-line completion for ${PN}, run:"
49 ka0ttic 1.8 einfo
50 ka0ttic 1.12 if has_version app-admin/eselect ; then
51     einfo " eselect bashcomp enable ${BASH_COMPLETION_NAME:-${PN}}"
52 ka0ttic 1.11 else
53     einfo " bash-completion-config --install ${BASH_COMPLETION_NAME:-${PN}}"
54     einfo
55     einfo "to install locally, or"
56     einfo
57     einfo " bash-completion-config --global --install ${BASH_COMPLETION_NAME:-${PN}}"
58     einfo
59     einfo "to install system-wide."
60     einfo "Read bash-completion-config(1) for more information."
61     fi
62 ka0ttic 1.5 echo
63     fi
64     }

  ViewVC Help
Powered by ViewVC 1.1.20