1
0

Accepting request 396631 from shells

- Split off sub packages devel and doc to avoid dependency cycles

- Remove completions conflicting with util-linux (boo#977259#c3).

- Add patch sh-script-completion-boo977336.patch to make _filedir
  work with COMP_FILEDIR_FALLBACK even if local directries exists
  this is for bug boo##977336

- Add documentation for this packages below to get the reference
  of the e.g. the variable COMP_FILEDIR_FALLBACK (boo#977336)

OBS-URL: https://build.opensuse.org/request/show/396631
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/bash-completion?expand=0&rev=31
This commit is contained in:
Dominique Leuenberger 2016-05-24 07:34:20 +00:00 committed by Git OBS Bridge
commit d2dc45c393
3 changed files with 152 additions and 3 deletions

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Wed May 18 13:40:01 UTC 2016 - werner@suse.de
- Split off sub packages devel and doc to avoid dependency cycles
-------------------------------------------------------------------
Wed Apr 27 20:34:12 CEST 2016 - sbrabec@suse.com
- Remove completions conflicting with util-linux (boo#977259#c3).
-------------------------------------------------------------------
Wed Apr 27 12:42:50 UTC 2016 - werner@suse.de
- Add patch sh-script-completion-boo977336.patch to make _filedir
work with COMP_FILEDIR_FALLBACK even if local directries exists
this is for bug boo##977336
-------------------------------------------------------------------
Wed Apr 27 11:54:07 UTC 2016 - werner@suse.de
- Add documentation for this packages below to get the reference
of the e.g. the variable COMP_FILEDIR_FALLBACK (boo#977336)
-------------------------------------------------------------------
Wed Jan 27 15:42:34 UTC 2016 - werner@suse.de

View File

@ -47,6 +47,10 @@ Patch8: respect-variables-boo940837.patch
Patch9: rm-completion-smart-boo958462.patch
# PATCH-FIX-SUSE boo#963140
Patch10: backticks-bsc963140.patch
# PATCH-FIX-SUSE boo#977336
Patch11: sh-script-completion-boo977336.patch
BuildRequires: asciidoc
BuildRequires: libxslt-tools
BuildRequires: pkg-config
Requires: bash
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@ -56,6 +60,24 @@ BuildArch: noarch
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
Group: Development/Libraries/C and C++
Provides: bash-completion:%{_datadir}/pkgconfig/bash-completion.pc
%description devel
This package contains the package configuration file of the
package bash-completion.
%package doc
Summary: The Documentation of Programmable Completion for Bash
Group: Development/Libraries/C and C++
Provides: bash-completion:%{_defaultdocdir}/%{name}/AUTHORS
%description doc
This package contains the package documentation file of the
package bash-completion.
%prep
%setup -q
%patch0 -b .p0
@ -69,23 +91,61 @@ of the programmable completion feature of Bash 2.04 and later.
%patch8 -b .p8
%patch9 -b .p9
%patch10 -b .p10 -p1
%patch11 -b .p11 -p0
%build
%configure
make %{?_smp_mflags}
pushd doc
mkdir html
a2x -D html -d book -f xhtml --asciidoc-opts="--unsafe" main.txt
popd
%install
%make_install
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 %{buildroot}%{_defaultdocdir}/%{name}/
# shipping in latest systemd now
rm -f %{buildroot}%{_datadir}/bash-completion/completions/udevadm
rm -f %{buildroot}%{_datadir}/bash-completion/completions/nmcli
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
%files
%defattr(-,root,root)
%doc AUTHORS COPYING README
%doc COPYING
%exclude %{_defaultdocdir}/%{name}/AUTHORS
%exclude %{_defaultdocdir}/%{name}/README
%exclude %{_defaultdocdir}/%{name}/html/
%{_datadir}/bash-completion
%config %{_sysconfdir}/profile.d/bash_completion.sh
%files devel
%defattr(-,root,root)
%{_datadir}/pkgconfig/bash-completion.pc
%files doc
%defattr(-,root,root)
%{_defaultdocdir}/%{name}/AUTHORS
%{_defaultdocdir}/%{name}/README
%{_defaultdocdir}/%{name}/html/
%changelog

View File

@ -0,0 +1,66 @@
This allows to use COMP_FILEDIR_FALLBACK=yes even if
local sub directories exists (boo#977336)
---
bash_completion | 35 ++++++++++++++++++-----------------
1 file changed, 18 insertions(+), 17 deletions(-)
--- bash_completion
+++ bash_completion 2016-04-27 12:00:15.278198877 +0000
@@ -558,38 +558,39 @@ _quote_readline_by_ref()
#
_filedir()
{
- local IFS=$'\n' xspec
+ local IFS=$'\n'
_tilde "$cur" || return 0
_dollar "$cur" || return 0
local -a toks
- local quoted x tmp
-
- _quote_readline_by_ref "$cur" quoted
- x=$( compgen -d -- "$cur" ) &&
- while read -r tmp; do
- toks+=( "$tmp" )
- done <<< "$x"
+ local x tmp
if [[ "$1" != -d ]]; then
+ local quoted
+ _quote_readline_by_ref "$cur" quoted
+
# Munge xspec to contain uppercase version too
# http://thread.gmane.org/gmane.comp.shells.bash.bugs/15294/focus=15306
- xspec=${1:+"!*.@($1|${1^^})"}
+ local xspec=${1:+"!*.@($1|${1^^})"}
x=$( compgen -f -X "$xspec" -- $quoted ) &&
while read -r tmp; do
toks+=( "$tmp" )
done <<< "$x"
- fi
- # If the filter failed to produce anything, try without it if configured to
- [[ -n ${COMP_FILEDIR_FALLBACK:-} && \
- -n "$1" && "$1" != -d && ${#toks[@]} -lt 1 ]] && \
- x=$( compgen -f -- $quoted ) &&
- while read -r tmp; do
- toks+=( "$tmp" )
- done <<< "$x"
+ # If the filter failed to produce anything, try without it if configured to
+ [[ -n ${COMP_FILEDIR_FALLBACK:-} && \
+ -n "$1" && "$1" != -d && ${#toks[@]} -lt 1 ]] && \
+ x=$( compgen -f -- $quoted ) &&
+ while read -r tmp; do
+ toks+=( "$tmp" )
+ done <<< "$x"
+ fi
+ x=$( compgen -d -- "$cur" ) &&
+ while read -r tmp; do
+ toks+=( "$tmp" )
+ done <<< "$x"
if [[ ${#toks[@]} -ne 0 ]]; then
# 2>/dev/null for direct invocation, e.g. in the _filedir unit test