Sync from SUSE:SLFO:Main bash-completion revision 00fce5543cadfea11f2033dcdd94cf10
This commit is contained in:
commit
1254c5f7fd
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
77
FOO-dir-completion-boo905348.patch
Normal file
77
FOO-dir-completion-boo905348.patch
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
---
|
||||||
|
bash_completion | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
|
||||||
|
1 file changed, 46 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -566,6 +566,7 @@ _filedir()
|
||||||
|
local IFS=$'\n'
|
||||||
|
|
||||||
|
_tilde "${cur-}" || return
|
||||||
|
+ _dollar "$cur" || return
|
||||||
|
|
||||||
|
local -a toks
|
||||||
|
local reset arg=${1-}
|
||||||
|
@@ -1044,6 +1045,42 @@ _tilde()
|
||||||
|
return $result
|
||||||
|
}
|
||||||
|
|
||||||
|
+# Perform dollar ($) completion
|
||||||
|
+# @return True (0) if completion needs further processing,
|
||||||
|
+# False (> 0) if dollar is followed by a valid username, completions
|
||||||
|
+# are put in COMPREPLY and no further processing is necessary.
|
||||||
|
+_dollar()
|
||||||
|
+{
|
||||||
|
+ local s=""
|
||||||
|
+ local -i glob=0
|
||||||
|
+
|
||||||
|
+ shopt -q extglob && let glob++
|
||||||
|
+ ((glob == 0)) && shopt -s extglob
|
||||||
|
+
|
||||||
|
+ [[ "$COMP_LINE" == cd* ]] && s="/"
|
||||||
|
+
|
||||||
|
+ case "$1" in
|
||||||
|
+ \$\(*|\`*)
|
||||||
|
+ COMPREPLY=($(compgen -c -P '$(' -S ")$s" -- ${1#??})) ;;
|
||||||
|
+ \$\{*)
|
||||||
|
+ COMPREPLY=($(compgen -v -P '${' -S "}$s" -- ${1#??})) ;;
|
||||||
|
+ \$*)
|
||||||
|
+ COMPREPLY=($(compgen -v -P '$' ${s:+-S $s} -- ${1#?})) ;;
|
||||||
|
+ *)
|
||||||
|
+ ((glob == 0)) && shopt -u extglob
|
||||||
|
+ return 0
|
||||||
|
+ esac
|
||||||
|
+
|
||||||
|
+ if ((${#COMPREPLY[@]} > 0)) ; then
|
||||||
|
+ ((${#COMPREPLY[@]} == 1)) && eval COMPREPLY=\(${COMPREPLY[@]}\)
|
||||||
|
+ else
|
||||||
|
+ eval COMPREPLY=\(${1}\)
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ ((glob == 0)) && shopt -u extglob
|
||||||
|
+ return ${#COMPREPLY[@]}
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
# Expand variable starting with tilde (~)
|
||||||
|
# We want to expand ~foo/... to /home/foo/... to avoid problems when
|
||||||
|
# word-to-complete starting with a tilde is fed to commands and ending up
|
||||||
|
@@ -1810,7 +1847,16 @@ complete -F _known_hosts traceroute trac
|
||||||
|
_cd()
|
||||||
|
{
|
||||||
|
local cur prev words cword
|
||||||
|
- _init_completion || return
|
||||||
|
+ _init_completion || {
|
||||||
|
+ if [[ ${#COMPREPLY[@]} -eq 1 ]]; then
|
||||||
|
+ local i=${COMPREPLY[0]}
|
||||||
|
+ if [[ "$i" == "$cur" && $i != "*/" ]]; then
|
||||||
|
+ _dollar "$i" || return
|
||||||
|
+ COMPREPLY[0]="${i%%/}/"
|
||||||
|
+ fi
|
||||||
|
+ fi
|
||||||
|
+ return
|
||||||
|
+ }
|
||||||
|
|
||||||
|
local IFS=$'\n' i j k
|
||||||
|
|
92
LVM-completion-bsc946875.patch
Normal file
92
LVM-completion-bsc946875.patch
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
There are the following problems with lvm completions:
|
||||||
|
1)_lvm_physicalvolumes() only gets PVs that belong to a VG. In some
|
||||||
|
cases like pvremove we can use all PVs including those not included
|
||||||
|
in any VGs.
|
||||||
|
solution: Add _lvm_physicalvolumes_all to get all PVs and correct
|
||||||
|
all the commands.
|
||||||
|
|
||||||
|
2)pvcreate should be able to use all block devcices.
|
||||||
|
solution: Add _lvm_filedir() to use _filedir except set $cur to /dev
|
||||||
|
when $cur is empty.
|
||||||
|
|
||||||
|
3)when /etc/lvm/lvm.conf silent is 1 there is no output for vg/lv/pvscan,
|
||||||
|
bash-completion will not work.
|
||||||
|
solution: Check the value of silent option. If it is 1 then temporarily
|
||||||
|
set silent 0 and recover back to 1 after the command executed.
|
||||||
|
|
||||||
|
Signed-off-by: Liuhua Wang <lwang@suse.com>
|
||||||
|
Reviewed-by: Lidong Zhong <lzhong@suse.com>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/completions/lvm
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/completions/lvm
|
||||||
|
+++ bash-completion-2.11/completions/lvm
|
||||||
|
@@ -6,27 +6,41 @@ _lvm_filedir()
|
||||||
|
_filedir
|
||||||
|
}
|
||||||
|
|
||||||
|
+_lvm_verbose()
|
||||||
|
+{
|
||||||
|
+ local silent=$(sed -n -e "s|^[ \t]*silent[ \t]*=[ \t]*\([01]\)|\1|p" /etc/lvm/lvm.conf)
|
||||||
|
+ test ${silent:-0} -eq 1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
_lvm_volumegroups()
|
||||||
|
{
|
||||||
|
- COMPREPLY=($(compgen -W "$(vgscan 2>/dev/null |
|
||||||
|
+ local verbose
|
||||||
|
+ _lvm_verbose && verbose=-v
|
||||||
|
+ COMPREPLY=( $(compgen -W "$( vgscan $verbose 2>/dev/null | \
|
||||||
|
command sed -n -e 's|.*Found.*"\(.*\)".*$|\1|p')" -- "$cur"))
|
||||||
|
}
|
||||||
|
|
||||||
|
_lvm_physicalvolumes_all()
|
||||||
|
{
|
||||||
|
- COMPREPLY=($(compgen -W "$(pvscan 2>/dev/null |
|
||||||
|
+ local verbose
|
||||||
|
+ _lvm_verbose && verbose=-v
|
||||||
|
+ COMPREPLY=( $(compgen -W "$( pvscan $verbose 2>/dev/null | \
|
||||||
|
command sed -n -e 's|^.*PV \([^ ]*\) .*|\1|p')" -- "$cur"))
|
||||||
|
}
|
||||||
|
|
||||||
|
_lvm_physicalvolumes()
|
||||||
|
{
|
||||||
|
- COMPREPLY=($(compgen -W "$(pvscan 2>/dev/null |
|
||||||
|
+ local verbose
|
||||||
|
+ _lvm_verbose && verbose=-v
|
||||||
|
+ COMPREPLY=( $(compgen -W "$( pvscan $verbose 2>/dev/null | \
|
||||||
|
command sed -n -e 's|^.*PV \(.*\) VG.*$|\1|p')" -- "$cur"))
|
||||||
|
}
|
||||||
|
|
||||||
|
_lvm_logicalvolumes()
|
||||||
|
{
|
||||||
|
- COMPREPLY=($(compgen -W "$(lvscan 2>/dev/null |
|
||||||
|
+ local verbose
|
||||||
|
+ _lvm_verbose && verbose=-v
|
||||||
|
+ COMPREPLY=( $(compgen -W "$( lvscan $verbose 2>/dev/null | \
|
||||||
|
command sed -n -e "s|^.*'\(.*\)'.*$|\1|p")" -- "$cur"))
|
||||||
|
if [[ $cur == /dev/mapper/* ]]; then
|
||||||
|
_filedir
|
||||||
|
@@ -387,7 +401,7 @@ _vgreduce()
|
||||||
|
if ((args == 0)); then
|
||||||
|
_lvm_volumegroups
|
||||||
|
else
|
||||||
|
- _lvm_physicalvolumes
|
||||||
|
+ _lvm_physicalvolumes_all
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
} &&
|
||||||
|
@@ -701,7 +715,7 @@ _lvcreate()
|
||||||
|
if ((args == 0)); then
|
||||||
|
_lvm_volumegroups
|
||||||
|
else
|
||||||
|
- _lvm_physicalvolumes
|
||||||
|
+ _lvm_physicalvolumes_all
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
} &&
|
4
_multibuild
Normal file
4
_multibuild
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<multibuild>
|
||||||
|
<flavor>doc</flavor>
|
||||||
|
</multibuild>
|
||||||
|
|
43
backtick-completion-boo940835.patch
Normal file
43
backtick-completion-boo940835.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
bash_completion | 15 ++++++++++-----
|
||||||
|
1 file changed, 10 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -1052,16 +1052,21 @@ _tilde()
|
||||||
|
_dollar()
|
||||||
|
{
|
||||||
|
local s=""
|
||||||
|
- local -i glob=0
|
||||||
|
-
|
||||||
|
+ local -i glob=0 cmd=0
|
||||||
|
shopt -q extglob && let glob++
|
||||||
|
((glob == 0)) && shopt -s extglob
|
||||||
|
|
||||||
|
[[ "$COMP_LINE" == cd* ]] && s="/"
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
- \$\(*|\`*)
|
||||||
|
- COMPREPLY=($(compgen -c -P '$(' -S ")$s" -- ${1#??})) ;;
|
||||||
|
+ \$\(*)
|
||||||
|
+ COMPREPLY=($(compgen -c -P '$(' -S ")$s" -- ${1#??}))
|
||||||
|
+ let cmd++
|
||||||
|
+ ;;
|
||||||
|
+ \`*)
|
||||||
|
+ COMPREPLY=($(compgen -c -P '\`' -S "\`$s" -- ${1#?}))
|
||||||
|
+ let cmd++
|
||||||
|
+ ;;
|
||||||
|
\$\{*)
|
||||||
|
COMPREPLY=($(compgen -v -P '${' -S "}$s" -- ${1#??})) ;;
|
||||||
|
\$*)
|
||||||
|
@@ -1073,7 +1078,7 @@ _dollar()
|
||||||
|
|
||||||
|
if ((${#COMPREPLY[@]} > 0)) ; then
|
||||||
|
((${#COMPREPLY[@]} == 1)) && eval COMPREPLY=\(${COMPREPLY[@]}\)
|
||||||
|
- else
|
||||||
|
+ elif ((cmd == 0)); then
|
||||||
|
eval COMPREPLY=\(${1}\)
|
||||||
|
fi
|
||||||
|
|
45
backticks-bsc963140.patch
Normal file
45
backticks-bsc963140.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
---
|
||||||
|
bash-completion-2.7/bash_completion | 20 ++++++++++++++------
|
||||||
|
1 file changed, 14 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -1059,13 +1059,21 @@ _dollar()
|
||||||
|
[[ "$COMP_LINE" == cd* ]] && s="/"
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
+ \$\(*\))
|
||||||
|
+ ((glob == 0)) && shopt -u extglob
|
||||||
|
+ return 0
|
||||||
|
+ ;;
|
||||||
|
\$\(*)
|
||||||
|
- COMPREPLY=($(compgen -c -P '$(' -S ")$s" -- ${1#??}))
|
||||||
|
- let cmd++
|
||||||
|
+ COMPREPLY=($(compgen -c -P '$(' -S ")$s" -- ${1:2}))
|
||||||
|
+ ((${#COMPREPLY[@]} <= 0)) && let cmd++
|
||||||
|
+ ;;
|
||||||
|
+ \`*\`)
|
||||||
|
+ ((glob == 0)) && shopt -u extglob
|
||||||
|
+ return 0
|
||||||
|
;;
|
||||||
|
\`*)
|
||||||
|
- COMPREPLY=($(compgen -c -P '\`' -S "\`$s" -- ${1#?}))
|
||||||
|
- let cmd++
|
||||||
|
+ COMPREPLY=($(compgen -c -P '\`' -S "\`$s" -- ${1:1}))
|
||||||
|
+ ((${#COMPREPLY[@]} <= 0)) && let cmd++
|
||||||
|
;;
|
||||||
|
\$\{*)
|
||||||
|
COMPREPLY=($(compgen -v -P '${' -S "}$s" -- ${1#??})) ;;
|
||||||
|
@@ -1078,8 +1086,8 @@ _dollar()
|
||||||
|
|
||||||
|
if ((${#COMPREPLY[@]} > 0)) ; then
|
||||||
|
((${#COMPREPLY[@]} == 1)) && eval COMPREPLY=\(${COMPREPLY[@]}\)
|
||||||
|
- elif ((cmd == 0)); then
|
||||||
|
- eval COMPREPLY=\(${1}\)
|
||||||
|
+ elif ((cmd > 0)); then
|
||||||
|
+ compopt -o default -o bashdefault -o nospace
|
||||||
|
fi
|
||||||
|
|
||||||
|
((glob == 0)) && shopt -u extglob
|
BIN
bash-completion-2.11.tar.xz
(Stored with Git LFS)
Normal file
BIN
bash-completion-2.11.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
27
bash-completion-2.4.patch
Normal file
27
bash-completion-2.4.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
bash_completion | 11 ++++++-----
|
||||||
|
1 file changed, 6 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -2031,12 +2031,13 @@ _longopt()
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
# makeinfo and texi2dvi are defined elsewhere.
|
||||||
|
-complete -F _longopt a2ps awk base64 bash bc bison cat chroot colordiff cp \
|
||||||
|
- csplit cut date df diff dir du enscript env expand fmt fold gperf \
|
||||||
|
+complete -F _longopt -o filenames a2ps awk base64 bash bc bison cat chroot colordiff cp \
|
||||||
|
+ csplit cut date df diff dir du enscript expand fmt fold gperf \
|
||||||
|
grep grub head irb ld ldd less ln ls m4 md5sum mkdir mkfifo mknod \
|
||||||
|
- mv netstat nl nm objcopy objdump od paste pr ptx readelf rm rmdir \
|
||||||
|
- sed seq sha{,1,224,256,384,512}sum shar sort split strip sum tac tail tee \
|
||||||
|
- texindex touch tr uname unexpand uniq units vdir wc who
|
||||||
|
+ mv nl nm objcopy objdump od paste pr ptx readelf rm rmdir \
|
||||||
|
+ sed sha{,1,224,256,384,512}sum shar sort split strip sum tac tail tee \
|
||||||
|
+ texindex touch tr unexpand uniq vdir wc who
|
||||||
|
+complete -F _longopt -o default env netstat seq uname units
|
||||||
|
|
||||||
|
declare -Ag _xspecs
|
||||||
|
|
28
bash-completion-2.7-unRAR-remove.patch
Normal file
28
bash-completion-2.7-unRAR-remove.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
Due legal issue the unRAR part of 7z had been removed (boo#1077978, boo#1090515)
|
||||||
|
|
||||||
|
---
|
||||||
|
completions/7z | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/completions/7z
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/completions/7z
|
||||||
|
+++ bash-completion-2.11/completions/7z
|
||||||
|
@@ -76,7 +76,7 @@ _7z()
|
||||||
|
else
|
||||||
|
COMPREPLY=($(compgen -P${cur:0:2} -W '7z apm arj bzip2 cab
|
||||||
|
chm cpio cramfs deb dmg elf fat flv gzip hfs iso lzh lzma
|
||||||
|
- lzma86 macho mbr mslz mub nsis ntfs pe ppmd rar rpm
|
||||||
|
+ lzma86 macho mbr mslz mub nsis ntfs pe ppmd rpm
|
||||||
|
squashfs swf swfc tar udf vhd wim xar xz z zip' \
|
||||||
|
-- "${cur:2}"))
|
||||||
|
fi
|
||||||
|
@@ -110,7 +110,7 @@ _7z()
|
||||||
|
# (assumption: extensions are all lowercase)
|
||||||
|
[[ $mode == w ]] &&
|
||||||
|
_filedir '@(7z|bz2|swf|?(g)tar|?(t)[bglx]z|tb?(z)2|wim)' ||
|
||||||
|
- _filedir '@(7z|arj|bz2|cab|chm|cpio|deb|dmg|flv|gem|img|iso|lz[ah]|lzma?(86)|msi|pmd|[rx]ar|rpm|sw[fm]|?(g)tar|taz|?(t)[bglx]z|tb?(z)2|vhd|wim|Z)'
|
||||||
|
+ _filedir '@(7z|arj|bz2|cab|chm|cpio|deb|dmg|flv|gem|img|iso|lz[ah]|lzma?(86)|msi|pmd|xar|rpm|sw[fm]|?(g)tar|taz|?(t)[bglx]z|tb?(z)2|vhd|wim|Z)'
|
||||||
|
else
|
||||||
|
if [[ ${words[1]} == d ]]; then
|
||||||
|
local IFS=$'\n'
|
@ -0,0 +1,73 @@
|
|||||||
|
From 06f94a5c855fc38c0583a3b65c27c1c814a90bac Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michal Suchanek <msuchanek@suse.de>
|
||||||
|
Date: Mon, 30 Mar 2020 19:48:39 +0200
|
||||||
|
Subject: [PATCH] Revert "_filedir: avoid duplicate dirs internally, and a
|
||||||
|
compgen -d call for files"
|
||||||
|
|
||||||
|
This reverts commit da99bc55954e9f60b9c3a9e9071ff6301d7015cb.
|
||||||
|
|
||||||
|
References: https://github.com/scop/bash-completion/issues/378 boo#1167952
|
||||||
|
|
||||||
|
The solution without calling compgen -d proves unrealiable.
|
||||||
|
|
||||||
|
Until this is fixed revert to calling compgen -d for completions with
|
||||||
|
file pattern.
|
||||||
|
---
|
||||||
|
bash_completion | 25 ++++++++-----------------
|
||||||
|
1 file changed, 8 insertions(+), 17 deletions(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -571,34 +571,22 @@ _filedir()
|
||||||
|
local -a toks
|
||||||
|
local reset arg=${1-}
|
||||||
|
|
||||||
|
- if [[ $arg == -d ]]; then
|
||||||
|
- reset=$(shopt -po noglob)
|
||||||
|
- set -o noglob
|
||||||
|
- toks=($(compgen -d -- "${cur-}"))
|
||||||
|
- IFS=' '
|
||||||
|
- $reset
|
||||||
|
- IFS=$'\n'
|
||||||
|
- else
|
||||||
|
+ reset=$(shopt -po noglob); set -o noglob
|
||||||
|
+ toks=( $(compgen -d -- "$cur") )
|
||||||
|
+ IFS=' '; $reset; IFS=$'\n'
|
||||||
|
+
|
||||||
|
+ if [[ "$1" != -d ]]; then
|
||||||
|
local quoted
|
||||||
|
_quote_readline_by_ref "${cur-}" quoted
|
||||||
|
|
||||||
|
# Munge xspec to contain uppercase version too
|
||||||
|
# https://lists.gnu.org/archive/html/bug-bash/2010-09/msg00036.html
|
||||||
|
# news://news.gmane.io/4C940E1C.1010304@case.edu
|
||||||
|
- local xspec=${arg:+"!*.@($arg|${arg^^})"} plusdirs=()
|
||||||
|
-
|
||||||
|
- # Use plusdirs to get dir completions if we have a xspec; if we don't,
|
||||||
|
- # there's no need, dirs come along with other completions. Don't use
|
||||||
|
- # plusdirs quite yet if fallback is in use though, in order to not ruin
|
||||||
|
- # the fallback condition with the "plus" dirs.
|
||||||
|
- local opts=(-f -X "$xspec")
|
||||||
|
- [[ $xspec ]] && plusdirs=(-o plusdirs)
|
||||||
|
- [[ ${COMP_FILEDIR_FALLBACK-} || -z ${plusdirs-} ]] ||
|
||||||
|
- opts+=("${plusdirs[@]}")
|
||||||
|
|
||||||
|
+ local xspec=${1:+"!*.@($1|${1^^})"}
|
||||||
|
reset=$(shopt -po noglob)
|
||||||
|
set -o noglob
|
||||||
|
- toks+=($(compgen "${opts[@]}" -- $quoted))
|
||||||
|
+ toks+=( $(compgen -f -X "$xspec" -- $quoted) )
|
||||||
|
IFS=' '
|
||||||
|
$reset
|
||||||
|
IFS=$'\n'
|
||||||
|
@@ -607,7 +595,7 @@ _filedir()
|
||||||
|
[[ -n ${COMP_FILEDIR_FALLBACK-} && -n $arg && ${#toks[@]} -lt 1 ]] && {
|
||||||
|
reset=$(shopt -po noglob)
|
||||||
|
set -o noglob
|
||||||
|
- toks+=($(compgen -f ${plusdirs+"${plusdirs[@]}"} -- $quoted))
|
||||||
|
+ toks+=( $(compgen -f -- $quoted) )
|
||||||
|
IFS=' '
|
||||||
|
$reset
|
||||||
|
IFS=$'\n'
|
1
bash-completion-rpmlintrc
Normal file
1
bash-completion-rpmlintrc
Normal file
@ -0,0 +1 @@
|
|||||||
|
addFilter("bash-completion.noarch: E: devel-file-in-non-devel-package .* /usr/share/pkgconfig/bash-completion.pc")
|
1909
bash-completion.changes
Normal file
1909
bash-completion.changes
Normal file
File diff suppressed because it is too large
Load Diff
175
bash-completion.spec
Normal file
175
bash-completion.spec
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
#
|
||||||
|
# spec file for package bash
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
|
|
||||||
|
%if "%{flavor}" == "doc"
|
||||||
|
%define build_core 0
|
||||||
|
%define build_doc 1
|
||||||
|
%define nsuffix -doc
|
||||||
|
%else
|
||||||
|
%define build_core 1
|
||||||
|
%define build_doc 0
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%global _name bash-completion
|
||||||
|
Name: %{_name}%{?nsuffix}
|
||||||
|
Version: 2.11
|
||||||
|
Release: 0
|
||||||
|
%if %{build_core}
|
||||||
|
Summary: Programmable Completion for Bash
|
||||||
|
License: GPL-2.0-or-later
|
||||||
|
%else
|
||||||
|
Summary: The Documentation of Programmable Completion for Bash
|
||||||
|
License: GPL-2.0-or-later
|
||||||
|
Provides: bash-completion:%{_defaultdocdir}/%{_name}/AUTHORS
|
||||||
|
%endif
|
||||||
|
URL: https://github.com/scop/bash-completion/
|
||||||
|
Source0: https://github.com/scop/bash-completion/releases/download/%{version}/%{_name}-%{version}.tar.xz
|
||||||
|
Source1: bash-completion-rpmlintrc
|
||||||
|
# PATCH-FIX-UPSTREAM bnc#717151 -- Terminal tab autocompletion error
|
||||||
|
Patch0: %{_name}-2.4.patch
|
||||||
|
# PATCH-FIX-SUSE bnc#1012212 -- bash tab-autocompletion hangs on TAR-archiving with --create key
|
||||||
|
Patch1: tar-completion.patch
|
||||||
|
# PATCH-FIX-SUSE boo#905348 -- tab completion with shell variable changes command line with backslash
|
||||||
|
Patch3: FOO-dir-completion-boo905348.patch
|
||||||
|
# PATCH-FIX-SUSE
|
||||||
|
Patch4: qdbus-qt5.patch
|
||||||
|
# PATCH-FIX-SUSE boo#889319
|
||||||
|
Patch5: ls-completion-boo889319.patch
|
||||||
|
# PATCH-FIX-SUSE boo#940835
|
||||||
|
Patch6: backtick-completion-boo940835.patch
|
||||||
|
# PATCH-FIX-SUSE bsc#946875
|
||||||
|
Patch7: LVM-completion-bsc946875.patch
|
||||||
|
# PATCH-FIX-SUSE boo#940837, bsc#959299
|
||||||
|
Patch8: respect-variables-boo940837.patch
|
||||||
|
# PATCH-FIX-SUSE boo#958462
|
||||||
|
Patch9: rm-completion-smart-boo958462.patch
|
||||||
|
# PATCH-FIX-SUSE boo#963140
|
||||||
|
Patch10: backticks-bsc963140.patch
|
||||||
|
# PATCH-FIX-SUSE boo#1090515
|
||||||
|
Patch11: bash-completion-2.7-unRAR-remove.patch
|
||||||
|
# PATCH-FIX-SUSE boo#1167952
|
||||||
|
Patch12: bash-completion-fix-missing-directory-completion-with-filename-pattern.patch
|
||||||
|
# PATCH-FIX-SUSE boo#1190929
|
||||||
|
Patch13: boo1190929-9af4afd0.patch
|
||||||
|
# PATCH-FIX-SUSE boo#1199724
|
||||||
|
Patch14: bsc1199724-modules.patch
|
||||||
|
# PATCH-FIX-UPSTREAM bsc#1200791
|
||||||
|
Patch15: fix-curl-help-completion-bsc1200791.patch
|
||||||
|
BuildRequires: libtool
|
||||||
|
BuildRequires: pkgconfig
|
||||||
|
BuildArch: noarch
|
||||||
|
%if %{build_doc}
|
||||||
|
BuildRequires: asciidoc
|
||||||
|
BuildRequires: libxslt-tools
|
||||||
|
%endif
|
||||||
|
%if %{build_core}
|
||||||
|
Requires: bash >= 5.1.16
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
%if %{build_doc}
|
||||||
|
This package contains the package documentation file of the
|
||||||
|
package bash-completion.
|
||||||
|
%else
|
||||||
|
bash-completion is a collection of shell functions that take advantage
|
||||||
|
of the programmable completion feature of Bash 2.04 and later.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: The Configuration of Programmable Completion for Bash
|
||||||
|
Provides: bash-completion:%{_datadir}/pkgconfig/bash-completion.pc
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
This package contains the package configuration file of the
|
||||||
|
package bash-completion.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n %{_name}-%{version}
|
||||||
|
|
||||||
|
%build
|
||||||
|
autoreconf -fiv
|
||||||
|
%configure
|
||||||
|
%if %{build_core}
|
||||||
|
%make_build
|
||||||
|
%endif
|
||||||
|
%if %{build_doc}
|
||||||
|
pushd doc
|
||||||
|
mkdir html
|
||||||
|
a2x -D html -d book -f xhtml --asciidoc-opts="--unsafe" main.txt
|
||||||
|
popd
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%install
|
||||||
|
%if %{build_core}
|
||||||
|
%make_install
|
||||||
|
# shipping in latest systemd now
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/udevadm
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/nmcli
|
||||||
|
# shipping in latest util-linux now
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/cal
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/chsh
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/dmesg
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/eject
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/hexdump
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/hwclock
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/ionice
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/look
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/mount
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/newgrp
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/renice
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/rtcwake
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/su
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/umount
|
||||||
|
# shipping in devscripts now
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/bts
|
||||||
|
# Seems to be broken (boo#1161136)
|
||||||
|
rm -vf %{buildroot}%{_datadir}/bash-completion/completions/_adb
|
||||||
|
%endif
|
||||||
|
%if %{build_doc}
|
||||||
|
pushd doc
|
||||||
|
mkdir -p %{buildroot}%{_defaultdocdir}/%{_name}/html
|
||||||
|
install -m 0644 html/* %{buildroot}%{_defaultdocdir}/%{_name}/html/
|
||||||
|
popd
|
||||||
|
install -m 0644 AUTHORS %{buildroot}%{_defaultdocdir}/%{_name}/
|
||||||
|
install -m 0644 README.md %{buildroot}%{_defaultdocdir}/%{_name}/README
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files
|
||||||
|
%if "%{flavor}" == "doc"
|
||||||
|
%dir %{_defaultdocdir}/%{_name}
|
||||||
|
%{_defaultdocdir}/%{_name}/AUTHORS
|
||||||
|
%{_defaultdocdir}/%{_name}/README
|
||||||
|
%{_defaultdocdir}/%{_name}/html/
|
||||||
|
%else
|
||||||
|
%license COPYING
|
||||||
|
%{_datadir}/bash-completion
|
||||||
|
%config %{_sysconfdir}/profile.d/bash_completion.sh
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%dir %{_datadir}/cmake
|
||||||
|
%{_datadir}/cmake/bash-completion
|
||||||
|
%{_datadir}/pkgconfig/bash-completion.pc
|
||||||
|
# TRICK: bash-completion-devel does not require bash-completion.
|
||||||
|
# It would cause failure of directory ownership check.
|
||||||
|
# Own this directory to prevent it.
|
||||||
|
%dir %{_datadir}/bash-completion
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%changelog
|
89
boo1190929-9af4afd0.patch
Normal file
89
boo1190929-9af4afd0.patch
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
From 9af4afd01facc0dc3407c8b81375bedd4b2f5fa4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Michal Suchanek <msuchanek@suse.de>
|
||||||
|
Date: Thu, 30 Sep 2021 12:25:49 +0200
|
||||||
|
Subject: [PATCH] insmod, modinfo, modprobe: support zstd compressed modules
|
||||||
|
|
||||||
|
Signed-off-by: Michal Suchanek <msuchanek@suse.de>
|
||||||
|
---
|
||||||
|
completions/insmod | 2 +-
|
||||||
|
completions/modinfo | 2 +-
|
||||||
|
completions/modprobe | 2 +-
|
||||||
|
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
--- a/completions/insmod
|
||||||
|
+++ b/completions/insmod 2021-10-04 13:34:04.749347460 +0000
|
||||||
|
@@ -7,7 +7,7 @@ _insmod()
|
||||||
|
|
||||||
|
# do filename completion for first argument
|
||||||
|
if ((cword == 1)); then
|
||||||
|
- _filedir '@(?(k)o?(.[gx]z))'
|
||||||
|
+ _filedir '@(?(k)o?(.[gx]z|.zst))'
|
||||||
|
else # do module parameter completion
|
||||||
|
COMPREPLY=($(compgen -W "$(PATH="$PATH:/sbin" modinfo \
|
||||||
|
-p ${words[1]} 2>/dev/null | cut -d: -f1)" -- "$cur"))
|
||||||
|
--- a/completions/modinfo
|
||||||
|
+++ b/completions/modinfo 2021-10-04 13:34:04.749347460 +0000
|
||||||
|
@@ -37,7 +37,7 @@ _modinfo()
|
||||||
|
|
||||||
|
# do filename completion if we're giving a path to a module
|
||||||
|
if [[ $cur == @(*/|[.~])* ]]; then
|
||||||
|
- _filedir '@(?(k)o?(.[gx]z))'
|
||||||
|
+ _filedir '@(?(k)o?(.[gx]z|.zst))'
|
||||||
|
else
|
||||||
|
_modules $version
|
||||||
|
fi
|
||||||
|
--- a/completions/modprobe
|
||||||
|
+++ b/completions/modprobe 2021-10-04 13:34:04.749347460 +0000
|
||||||
|
@@ -80,7 +80,7 @@ _modprobe()
|
||||||
|
insert)
|
||||||
|
# do filename completion if we're giving a path to a module
|
||||||
|
if [[ $cur == @(*/|[.~])* ]]; then
|
||||||
|
- _filedir '@(?(k)o?(.[gx]z))'
|
||||||
|
+ _filedir '@(?(k)o?(.[gx]z|.zst))'
|
||||||
|
elif [[ -n $module ]]; then
|
||||||
|
# do module parameter completion
|
||||||
|
if [[ $cur == *=* ]]; then
|
||||||
|
================================================================================
|
||||||
|
From: Werner Fink <werenr@suse.de>
|
||||||
|
Date: Mon, 04 Oct 2021 15:38:08 +0200
|
||||||
|
Subject: Also support .bz2 compressed kernel modules
|
||||||
|
|
||||||
|
---
|
||||||
|
completions/insmod | 2 +-
|
||||||
|
completions/modinfo | 2 +-
|
||||||
|
completions/modprobe | 2 +-
|
||||||
|
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
--- a/completions/insmod
|
||||||
|
+++ b/completions/insmod 2021-10-04 13:35:49.279524797 +0000
|
||||||
|
@@ -7,7 +7,7 @@ _insmod()
|
||||||
|
|
||||||
|
# do filename completion for first argument
|
||||||
|
if ((cword == 1)); then
|
||||||
|
- _filedir '@(?(k)o?(.[gx]z|.zst))'
|
||||||
|
+ _filedir '@(?(k)o?(.[gx]z|.zst|.bz2))'
|
||||||
|
else # do module parameter completion
|
||||||
|
COMPREPLY=($(compgen -W "$(PATH="$PATH:/sbin" modinfo \
|
||||||
|
-p ${words[1]} 2>/dev/null | cut -d: -f1)" -- "$cur"))
|
||||||
|
--- a/completions/modinfo
|
||||||
|
+++ b/completions/modinfo 2021-10-04 13:35:59.863340257 +0000
|
||||||
|
@@ -37,7 +37,7 @@ _modinfo()
|
||||||
|
|
||||||
|
# do filename completion if we're giving a path to a module
|
||||||
|
if [[ $cur == @(*/|[.~])* ]]; then
|
||||||
|
- _filedir '@(?(k)o?(.[gx]z|.zst))'
|
||||||
|
+ _filedir '@(?(k)o?(.[gx]z|.zst|.bz2))'
|
||||||
|
else
|
||||||
|
_modules $version
|
||||||
|
fi
|
||||||
|
--- a/completions/modprobe
|
||||||
|
+++ b/completions/modprobe 2021-10-04 13:36:14.743080796 +0000
|
||||||
|
@@ -80,7 +80,7 @@ _modprobe()
|
||||||
|
insert)
|
||||||
|
# do filename completion if we're giving a path to a module
|
||||||
|
if [[ $cur == @(*/|[.~])* ]]; then
|
||||||
|
- _filedir '@(?(k)o?(.[gx]z|.zst))'
|
||||||
|
+ _filedir '@(?(k)o?(.[gx]z|.zst|.bz2))'
|
||||||
|
elif [[ -n $module ]]; then
|
||||||
|
# do module parameter completion
|
||||||
|
if [[ $cur == *=* ]]; then
|
15
bsc1199724-modules.patch
Normal file
15
bsc1199724-modules.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
bash_completion | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
--- a/bash_completion
|
||||||
|
+++ b/bash_completion 2022-05-23 10:50:43.197937832 +0000
|
||||||
|
@@ -1316,7 +1316,7 @@ _modules()
|
||||||
|
local modpath
|
||||||
|
modpath=/lib/modules/$1
|
||||||
|
COMPREPLY=($(compgen -W "$(command ls -RL $modpath 2>/dev/null |
|
||||||
|
- command sed -ne 's/^\(.*\)\.k\{0,1\}o\(\.[gx]z\)\{0,1\}$/\1/p')" -- "$cur"))
|
||||||
|
+ command sed -ne 's/^\(.*\)\.k\{0,1\}o\(\.[gx]z\|\.bz2\|\.zst\)\{0,1\}$/\1/p')" -- "$cur"))
|
||||||
|
}
|
||||||
|
|
||||||
|
# This function completes on installed modules
|
17
fix-curl-help-completion-bsc1200791.patch
Normal file
17
fix-curl-help-completion-bsc1200791.patch
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
completions/curl | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
--- a/completions/curl
|
||||||
|
+++ b/completions/curl
|
||||||
|
@@ -91,7 +91,9 @@ _curl()
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [[ $cur == -* ]]; then
|
||||||
|
- COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur"))
|
||||||
|
+ COMPREPLY=($(compgen -W '$(_parse_help "$1" "--help all")' -- "$cur"))
|
||||||
|
+ [[ $COMPREPLY ]] ||
|
||||||
|
+ COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur"))
|
||||||
|
fi
|
||||||
|
} &&
|
||||||
|
complete -F _curl curl
|
22
ls-completion-boo889319.patch
Normal file
22
ls-completion-boo889319.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
---
|
||||||
|
bash_completion | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -2079,11 +2079,12 @@ _longopt()
|
||||||
|
# makeinfo and texi2dvi are defined elsewhere.
|
||||||
|
complete -F _longopt -o filenames a2ps awk base64 bash bc bison cat chroot colordiff cp \
|
||||||
|
csplit cut date df diff dir du enscript expand fmt fold gperf \
|
||||||
|
- grep grub head irb ld ldd less ln ls m4 md5sum mkdir mkfifo mknod \
|
||||||
|
+ grep grub head irb ld ldd less ln m4 md5sum mkdir mkfifo mknod \
|
||||||
|
mv nl nm objcopy objdump od paste pr ptx readelf rm rmdir \
|
||||||
|
sed sha{,1,224,256,384,512}sum shar sort split strip sum tac tail tee \
|
||||||
|
texindex touch tr unexpand uniq vdir wc who
|
||||||
|
complete -F _longopt -o default env netstat seq uname units
|
||||||
|
+complete -F _longopt -o bashdefault -o default -o filenames -o nospace ls ll la l ls-l lf
|
||||||
|
|
||||||
|
declare -Ag _xspecs
|
||||||
|
|
38
qdbus-qt5.patch
Normal file
38
qdbus-qt5.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From: Fabian Vogt <fvogt@suse.de>
|
||||||
|
Subject: Add completion for qdbus-qt5
|
||||||
|
|
||||||
|
qdbus is the Qt 4 variant, also complete for the Qt 5 version.
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/completions/qdbus
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/completions/qdbus
|
||||||
|
+++ bash-completion-2.11/completions/qdbus
|
||||||
|
@@ -9,6 +9,6 @@ _qdbus()
|
||||||
|
COMPREPLY=($(compgen -W '$(command ${words[@]} 2>/dev/null | \
|
||||||
|
command sed "s/(.*)//")' -- "$cur"))
|
||||||
|
} &&
|
||||||
|
- complete -F _qdbus qdbus dcop
|
||||||
|
+ complete -F _qdbus qdbus qdbus-qt5 dcop
|
||||||
|
|
||||||
|
# ex: filetype=sh
|
||||||
|
Index: bash-completion-2.11/completions/Makefile.am
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/completions/Makefile.am
|
||||||
|
+++ bash-completion-2.11/completions/Makefile.am
|
||||||
|
@@ -680,6 +680,7 @@ CLEANFILES = \
|
||||||
|
pyvenv-3.6 \
|
||||||
|
pyvenv-3.7 \
|
||||||
|
pyvenv-3.8 \
|
||||||
|
+ qdbus-qt5 \
|
||||||
|
qemu-kvm \
|
||||||
|
qemu-system-i386 \
|
||||||
|
qemu-system-x86_64 \
|
||||||
|
@@ -894,7 +895,7 @@ symlinks: $(DATA)
|
||||||
|
$(ss) pyvenv \
|
||||||
|
pyvenv-3.4 pyvenv-3.5 pyvenv-3.6 pyvenv-3.7 pyvenv-3.8
|
||||||
|
$(ss) qdbus \
|
||||||
|
- dcop
|
||||||
|
+ dcop qdbus-qt5
|
||||||
|
$(ss) qemu \
|
||||||
|
qemu-kvm qemu-system-i386 qemu-system-x86_64
|
||||||
|
$(ss) quota \
|
36
respect-variables-boo940837.patch
Normal file
36
respect-variables-boo940837.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
Bug boo#940837
|
||||||
|
Bug bsc#959299
|
||||||
|
|
||||||
|
That is do not escape the dollar character of a variable to allow
|
||||||
|
commands like `ls' to go further in its completion chain.
|
||||||
|
|
||||||
|
---
|
||||||
|
bash_completion | 15 +++++++++++++--
|
||||||
|
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -2034,8 +2034,19 @@ _complete_as_root()
|
||||||
|
|
||||||
|
_longopt()
|
||||||
|
{
|
||||||
|
- local cur prev words cword split
|
||||||
|
- _init_completion -s || return
|
||||||
|
+ local cur=${COMP_WORDS[COMP_CWORD]}
|
||||||
|
+ local prev words cword split
|
||||||
|
+
|
||||||
|
+ if [[ "${cur:0:1}" == '$' ]] ; then
|
||||||
|
+ compopt -o dirnames +o filenames
|
||||||
|
+ else
|
||||||
|
+ compopt +o dirnames -o filenames
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ if ! _init_completion -s ; then
|
||||||
|
+ _dollar $cur
|
||||||
|
+ return
|
||||||
|
+ fi
|
||||||
|
|
||||||
|
case "${prev,,}" in
|
||||||
|
--help | --usage | --version)
|
28
rm-completion-smart-boo958462.patch
Normal file
28
rm-completion-smart-boo958462.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
Bug boo#958462
|
||||||
|
|
||||||
|
Allow the smart bash builtin completion if normal completion scripting
|
||||||
|
does not return anything.
|
||||||
|
|
||||||
|
---
|
||||||
|
bash_completion | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/bash_completion
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/bash_completion
|
||||||
|
+++ bash-completion-2.11/bash_completion
|
||||||
|
@@ -2096,11 +2096,13 @@ _longopt()
|
||||||
|
complete -F _longopt -o filenames a2ps awk base64 bash bc bison cat chroot colordiff cp \
|
||||||
|
csplit cut date df diff dir du enscript expand fmt fold gperf \
|
||||||
|
grep grub head irb ld ldd less ln m4 md5sum mkdir mkfifo mknod \
|
||||||
|
- mv nl nm objcopy objdump od paste pr ptx readelf rm rmdir \
|
||||||
|
+ mv nl nm objcopy objdump od paste pr ptx readelf \
|
||||||
|
sed sha{,1,224,256,384,512}sum shar sort split strip sum tac tail tee \
|
||||||
|
texindex touch tr unexpand uniq vdir wc who
|
||||||
|
complete -F _longopt -o default env netstat seq uname units
|
||||||
|
complete -F _longopt -o bashdefault -o default -o filenames -o nospace ls ll la l ls-l lf
|
||||||
|
+complete -F _longopt -o bashdefault -o default -o filenames -o nospace rm rmdir
|
||||||
|
+
|
||||||
|
|
||||||
|
declare -Ag _xspecs
|
||||||
|
|
19
tar-completion.patch
Normal file
19
tar-completion.patch
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
boo#1012212 -- bash tab-autocompletion hangs on TAR-archiving with --create key
|
||||||
|
|
||||||
|
---
|
||||||
|
completions/tar | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
Index: bash-completion-2.11/completions/tar
|
||||||
|
===================================================================
|
||||||
|
--- bash-completion-2.11.orig/completions/tar
|
||||||
|
+++ bash-completion-2.11/completions/tar
|
||||||
|
@@ -185,7 +185,7 @@ __tar_preparse_cmdline()
|
||||||
|
first_arg=1
|
||||||
|
for i in "$@"; do
|
||||||
|
case "$i" in
|
||||||
|
- --delete | --test-label)
|
||||||
|
+ --delete|--test-label|--catenate|--concatenate|--extract|--get|--update|--list|--append|--create)
|
||||||
|
tar_mode=${i:2:100}
|
||||||
|
tar_mode_arg=$i
|
||||||
|
break
|
Loading…
Reference in New Issue
Block a user