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

Diff of /eclass/bash-completion.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.1 Revision 1.1.1.1
1# Copyright 1999-2004 Gentoo Foundation 1# Copyright 1999-2005 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/bash-completion.eclass,v 1.1 2004/10/26 22:28:22 ka0ttic Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/bash-completion.eclass,v 1.1.1.1 2005/11/30 09:59:22 chriswhite Exp $
4# 4#
5# Simple eclass that provides an interface for installing 5# Simple eclass that provides an interface for installing
6# contributed (ie not included in bash-completion proper) 6# contributed (ie not included in bash-completion proper)
7# bash-completion scripts. 7# bash-completion scripts.
8# 8#
9# Author: Aaron Walker <ka0ttic@gentoo.org> 9# Author: Aaron Walker <ka0ttic@gentoo.org>
10# 10#
11# Please assign any bug reports to shell-tools@gentoo.org. 11# Please assign any bug reports to shell-tools@gentoo.org.
12 12
13ECLASS="bash-completion" 13EXPORT_FUNCTIONS pkg_postinst
14INHERITED="${INHERITED} ${ECLASS}"
15 14
16IUSE="${IUSE} bash-completion" 15IUSE="bash-completion"
17RDEPEND="bash-completion? ( app-shells/bash-completion )" 16
17# bash-completion-config is deprecated in favor of eselect,
18# however, eselect currently lacks stable keywords.
19RDEPEND="bash-completion?
20 ( || (
21 app-admin/eselect
22 app-shells/bash-completion-config
23 )
24 )"
18 25
19# dobashcompletion <file> <new file> 26# dobashcompletion <file> <new file>
20# First arg, <file>, is required and is the location of the bash-completion 27# First arg, <file>, is required and is the location of the bash-completion
21# script to install. Second arg, <new file>, is optional and specifies an 28# script to install. If the variable BASH_COMPLETION_NAME is set in the
22# alternate filename to install as. 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}.
23 34
24dobashcompletion() { 35dobashcompletion() {
25 [ -z "$1" ] && die "usage: dobashcompletion <file> <new file>" 36 [[ -z "$1" ]] && die "usage: dobashcompletion <file> <new file>"
37 [[ -z "${BASH_COMPLETION_NAME}" ]] && BASH_COMPLETION_NAME="${2:-${PN}}"
38
26 if useq bash-completion ; then 39 if useq bash-completion ; then
27 insinto /usr/share/bash-completion 40 insinto /usr/share/bash-completion
28 newins "$1" "${2:-${1##*/}}" 41 newins "$1" "${BASH_COMPLETION_NAME}" || die "Failed to install $1"
29 fi 42 fi
30} 43}
44
45bash-completion_pkg_postinst() {
46 if useq bash-completion ; then
47 echo
48 einfo "To enable command-line completion for ${PN}, run:"
49 einfo
50 if has_version app-admin/eselect ; then
51 einfo " eselect bashcomp enable ${BASH_COMPLETION_NAME:-${PN}}"
52 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 echo
63 fi
64}

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.1.1.1

  ViewVC Help
Powered by ViewVC 1.1.20