Browse Source

Clifford Wolf:


			
			
				rocklinux
			
			
		
Clifford Wolf 21 years ago
parent
commit
c2ae0eb088
3 changed files with 98 additions and 8 deletions
  1. +5
    -8
      package/mathieu/bashcompletion/bashcompletion.conf
  2. +43
    -0
      package/mathieu/bashcompletion/profile_d_bashcomp.sh
  3. +50
    -0
      package/mathieu/bashcompletion/usr_bin_bashcomp.sh

+ 5
- 8
package/mathieu/bashcompletion/bashcompletion.conf

@ -22,15 +22,12 @@
bc_main() {
cp bash_completion $root/etc/
ln -snf ../bash_completion $root/etc/profile.d/
mkdir -p $root/etc/bash_completion.d
(cd contrib
for i in *
do
pkginstalled $i && cp $i $root/etc/bash_completion.d/
done)
cp $confdir/profile_d_bashcomp.sh $root/etc/profile.d/bash_completion
cp $confdir/usr_bin_bashcomp.sh $root/usr/bin/bashcomp
chmod +x $root/usr/bin/bashcomp
mkdir -p $root/etc/bash_completion.d
cp contrib/* $root/etc/bash_completion.d/
cp $confdir/rock-tools $root/etc/bash_completion.d/
}

+ 43
- 0
package/mathieu/bashcompletion/profile_d_bashcomp.sh

@ -0,0 +1,43 @@
# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
#
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# Please add additional copyright information _after_ the line containing
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
#
# ROCK Linux: rock-src/package/mathieu/bashcompletion/profile_d_bashcomp.sh
# ROCK Linux is Copyright (C) 1998 - 2004 Clifford Wolf
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. A copy of the GNU General Public
# License can be found at Documentation/COPYING.
#
# Many people helped and are helping developing ROCK Linux. Please
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM
# file for details.
#
# --- ROCK-COPYRIGHT-NOTE-END ---
# off ..... just default tab completion
# intern .. smart tab completion with shell function (fast)
# extern .. smart tab completion with ext. progs (slow but cleaner)
#
completion_mode=off
if [ -n "$PS1" ]
then
case "$completion_mode" in
intern)
source /etc/bash_completion
;;
extern)
shopt -s extglob progcomp
eval "$( bashcomp )"
;;
esac
fi
unset completion_mode

+ 50
- 0
package/mathieu/bashcompletion/usr_bin_bashcomp.sh

@ -0,0 +1,50 @@
#!/bin/bash
#
# --- ROCK-COPYRIGHT-NOTE-BEGIN ---
#
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
# Please add additional copyright information _after_ the line containing
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text!
#
# ROCK Linux: rock-src/package/mathieu/bashcompletion/usr_bin_bashcomp.sh
# ROCK Linux is Copyright (C) 1998 - 2004 Clifford Wolf
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version. A copy of the GNU General Public
# License can be found at Documentation/COPYING.
#
# Many people helped and are helping developing ROCK Linux. Please
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM
# file for details.
#
# --- ROCK-COPYRIGHT-NOTE-END ---
if [ -z "$*" ]
then
. /etc/bash_completion
complete | sed "s, -F \([^ ]*\), -C '$0 \1',"
tmpfile=$( mktemp $HOME/.bashcomp.XXXXXXXXXX )
declare -f > $tmpfile
mv $tmpfile $HOME/.bashcomp.cache
else
# Have: COMP_LINE COMP_POINT
# Need: COMP_CWORD COMP_WORDS
COMP_WORDS=( $COMP_LINE )
remain=( ${COMP_LINE:COMP_POINT} )
COMP_CWORD=$(( ${#COMP_WORDS[@]} - ${#remain[@]} ))
ch="${COMP_LINE:COMP_POINT-1:1}"
[ -z "${ch//[ ]/}" ] || (( COMP_CWORD = COMP_CWORD - 1 ))
shopt -s extglob
. $HOME/.bashcomp.cache
"$@" # run the completion function
for x in "${COMPREPLY[@]}"; do echo "$x"; done
fi

Loading…
Cancel
Save