This commit is contained in:
parent
d83b3eda16
commit
2ab1b36efb
136
_osc
Normal file
136
_osc
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
#compdef osc
|
||||||
|
#
|
||||||
|
# Copyright (C) 2009 Holger Macht <holger@homac.de>
|
||||||
|
#
|
||||||
|
# This file is released under the GPLv2.
|
||||||
|
#
|
||||||
|
# Based on the the zsh guide from http://zsh.dotsrc.org/Guide/zshguide06.html
|
||||||
|
#
|
||||||
|
# Toggle verbose completions: zstyle ':completion:*:osc:*' verbose no
|
||||||
|
# zstyle ':completion:*:osc-subcommand:*' verbose no
|
||||||
|
#
|
||||||
|
# version 0.1
|
||||||
|
#
|
||||||
|
# Main dispatcher
|
||||||
|
|
||||||
|
_osc() {
|
||||||
|
if (( CURRENT > 2 )) && [[ ${words[2]} != "help" ]]; then
|
||||||
|
# Remember the subcommand name
|
||||||
|
local cmd=${words[2]}
|
||||||
|
# Set the context for the subcommand.
|
||||||
|
curcontext="${curcontext%:*:*}:osc-subcommand"
|
||||||
|
# Narrow the range of words we are looking at to exclude `osc'
|
||||||
|
(( CURRENT-- ))
|
||||||
|
shift words
|
||||||
|
# Run the completion for the subcommand
|
||||||
|
if [ "$cmd" = "submitreq" -o "$cmd" = "sr" ]; then
|
||||||
|
_osc_cmd_submitreq
|
||||||
|
elif [ "$cmd" = "getbinaries" ]; then
|
||||||
|
_osc_cmd_getbinaries
|
||||||
|
elif [ "$cmd" = "checkout" -o "$cmd" = "co" -o "$cmd" = "branch" ]; then
|
||||||
|
_osc_cmd_checkout
|
||||||
|
elif [ "$cmd" = "buildlog" -o "$cmd" = "buildinfo" ]; then
|
||||||
|
_osc_cmd_buildlog
|
||||||
|
else
|
||||||
|
_osc_cmd_do $cmd
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
local hline
|
||||||
|
local -a cmdlist
|
||||||
|
local tag=0
|
||||||
|
_call_program help-commands osc help | while read -A hline; do
|
||||||
|
# start parsing with "commands:"
|
||||||
|
[[ $hline[1] = "commands:" ]] && tag=1
|
||||||
|
# stop parsing at the line starting with "For"
|
||||||
|
[[ $hline[1] = "For" ]] && tag=0
|
||||||
|
[[ $tag = 0 ]] && continue
|
||||||
|
# all commands have to start with lower case letters
|
||||||
|
[[ $hline[1] =~ ^[A-Z] ]] && continue
|
||||||
|
(( ${#hline} < 2 )) && continue
|
||||||
|
|
||||||
|
# ${hline[1]%,} truncates the last ','
|
||||||
|
cmdlist=($cmdlist "${hline[1]%,}:${hline[2,-1]}")
|
||||||
|
done
|
||||||
|
_describe -t osc-commands 'osc command' cmdlist
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_osc_cmd_getbinaries() {
|
||||||
|
_arguments \
|
||||||
|
'1:PROJECT:(PROJECT)' \
|
||||||
|
'2:PACKAGE:(PACKAGE)' \
|
||||||
|
'3:REPOSITORY:( openSUSE_10.2 openSUSE_10.3 openSUSE_11.0 openSUSE_11.1 openSUSE_Factory SUSE_SLE-11_GA )' \
|
||||||
|
'4:ARCHITECTURE:(i586 x86_64)'
|
||||||
|
}
|
||||||
|
|
||||||
|
_osc_cmd_checkout() {
|
||||||
|
_arguments \
|
||||||
|
'1:PROJECT:( openSUSE:Factory openSUSE:11.1 openSUSE:11.0 openSUSE:10.3 )' \
|
||||||
|
'2:PACKAGE:(PACKAGE)'
|
||||||
|
}
|
||||||
|
|
||||||
|
_osc_cmd_buildlog() {
|
||||||
|
_arguments \
|
||||||
|
'1:REPOSITORY:( openSUSE_10.2 openSUSE_10.3 openSUSE_11.0 openSUSE_11.1 openSUSE_Factory SUSE_SLE-11_GA )' \
|
||||||
|
'2:ARCHITECTURE:(i586 x86_64)'
|
||||||
|
}
|
||||||
|
|
||||||
|
_osc_cmd_submitreq() {
|
||||||
|
local hline
|
||||||
|
local -a cmdlist
|
||||||
|
local tag=0
|
||||||
|
_call_program help-commands osc help $cmd | while read -A hline; do
|
||||||
|
# start parsing from "usage:"
|
||||||
|
[[ $hline[1] = "usage:" ]] && tag=1
|
||||||
|
[[ $tag = 0 ]] && continue
|
||||||
|
|
||||||
|
if [[ $hline[1] =~ ^osc ]]; then
|
||||||
|
shift hline; shift hline
|
||||||
|
elif ! [[ $hline[1] =~ ^- ]]; then
|
||||||
|
# Option has to start with a '-' or 'osc submitrequest'
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
(( ${#hline} < 2 )) && continue
|
||||||
|
|
||||||
|
cmdlist=($cmdlist "${hline[1]%,}:${hline[2,-1]}")
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
_describe -t osc-commands 'osc command' cmdlist
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
_osc_cmd_do() {
|
||||||
|
local hline
|
||||||
|
local -a cmdlist
|
||||||
|
local tag=0
|
||||||
|
|
||||||
|
# only start completion if theres some '-' on the line
|
||||||
|
if ! [ "$words[2]" = "-" ]; then
|
||||||
|
_complete
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
_call_program help-commands osc help $cmd | while read -A hline; do
|
||||||
|
# start parsing from "Options:"
|
||||||
|
[[ $hline[1] = "Options:" ]] && tag=1
|
||||||
|
[[ $tag = 0 ]] && continue
|
||||||
|
# Option has to start with a '-'
|
||||||
|
[[ $hline[1] =~ ^- ]] || continue
|
||||||
|
(( ${#hline} < 2 )) && continue
|
||||||
|
|
||||||
|
cmdlist=($cmdlist "${hline[1]%,}:${hline[2,-1]}")
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ -n "$cmdlist" ]; then
|
||||||
|
_describe -t osc-commands 'osc command' cmdlist
|
||||||
|
else
|
||||||
|
_complete
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Code to make sure _osc is run when we load it
|
||||||
|
_osc "$@"
|
||||||
|
|
||||||
|
|
73
_zypper
Normal file
73
_zypper
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
#compdef zypper
|
||||||
|
#
|
||||||
|
# Copyright (C) 2009 Holger Macht <holger@homac.de>
|
||||||
|
#
|
||||||
|
# This file is released under the GPLv2.
|
||||||
|
#
|
||||||
|
# Based on the the zsh guide from http://zsh.dotsrc.org/Guide/zshguide06.html
|
||||||
|
#
|
||||||
|
# Toggle verbose completions: zstyle ':completion:*:zypper:*' verbose no
|
||||||
|
# zstyle ':completion:*:zypper-subcommand:*' verbose no
|
||||||
|
#
|
||||||
|
# version 0.1
|
||||||
|
#
|
||||||
|
# Main dispatcher
|
||||||
|
|
||||||
|
_zypper() {
|
||||||
|
if (( CURRENT > 2 )) && [[ ${words[2]} != "help" ]]; then
|
||||||
|
# Remember the subcommand name
|
||||||
|
local cmd=${words[2]}
|
||||||
|
# Set the context for the subcommand.
|
||||||
|
curcontext="${curcontext%:*:*}:zypper-subcommand"
|
||||||
|
# Narrow the range of words we are looking at to exclude `zypper'
|
||||||
|
(( CURRENT-- ))
|
||||||
|
shift words
|
||||||
|
|
||||||
|
_zypper_cmd_do $cmd
|
||||||
|
else
|
||||||
|
local hline
|
||||||
|
local -a cmdlist
|
||||||
|
local tag=0
|
||||||
|
_call_program help-commands zypper help | while read -A hline; do
|
||||||
|
# start parsing with "Global Options:"
|
||||||
|
[[ $hline =~ "^Global Options:" ]] && tag=1
|
||||||
|
[[ $tag = 0 ]] && continue
|
||||||
|
[[ $hline[1] =~ ^\t\t\t\t ]] && continue
|
||||||
|
# all commands have to start with lower case letters
|
||||||
|
[[ $hline[1] =~ ^[A-Z] ]] && continue
|
||||||
|
(( ${#hline} < 2 )) && continue
|
||||||
|
|
||||||
|
# cut comma at end of command
|
||||||
|
hline[1]=`echo $hline[1] | sed -e 's/\(^.*\),/\1/'`
|
||||||
|
|
||||||
|
# ${hline[1]%,} truncates the last ','
|
||||||
|
cmdlist=($cmdlist "${hline[1]%,}:${hline[2,-1]}")
|
||||||
|
done
|
||||||
|
_describe -t zypper-commands 'zypper command' cmdlist
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_zypper_cmd_do() {
|
||||||
|
local hline
|
||||||
|
local -a cmdlist
|
||||||
|
local tag=0
|
||||||
|
_call_program help-commands zypper help $cmd | while read -A hline; do
|
||||||
|
# start parsing from "Options:"
|
||||||
|
[[ $hline =~ "^Command options:" ]] && tag=1
|
||||||
|
[[ $tag = 0 ]] && continue
|
||||||
|
# Option has to start with a '-'
|
||||||
|
[[ $hline[1] =~ ^- ]] || continue
|
||||||
|
(( ${#hline} < 2 )) && continue
|
||||||
|
|
||||||
|
cmdlist=($cmdlist "${hline[1]%,}:${hline[2,-1]}")
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ -n "$cmdlist" ]; then
|
||||||
|
_describe -t zypper-commands 'zypper command' cmdlist
|
||||||
|
else
|
||||||
|
_complete
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Code to make sure _zypper is run when we load it
|
||||||
|
_zypper "$@"
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 24 14:15:13 CEST 2009 - hmacht@suse.de
|
||||||
|
|
||||||
|
- add completion for osc (_osc)
|
||||||
|
- add completion for zypper (_zypper)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Oct 2 10:14:01 CEST 2008 - hvogel@suse.de
|
Thu Oct 2 10:14:01 CEST 2008 - hvogel@suse.de
|
||||||
|
|
||||||
|
23
zsh.spec
23
zsh.spec
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package zsh (Version 4.3.6)
|
# spec file for package zsh (Version 4.3.6)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -20,8 +20,8 @@
|
|||||||
|
|
||||||
Name: zsh
|
Name: zsh
|
||||||
Version: 4.3.6
|
Version: 4.3.6
|
||||||
Release: 66
|
Release: 68
|
||||||
License: Other uncritical OpenSource License
|
License: BSD 3-Clause
|
||||||
Group: System/Shells
|
Group: System/Shells
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
BuildRequires: ncurses-devel
|
BuildRequires: ncurses-devel
|
||||||
@ -37,6 +37,8 @@ Source4: _SuSEconfig
|
|||||||
Source5: _hwinfo
|
Source5: _hwinfo
|
||||||
Source6: _make
|
Source6: _make
|
||||||
Source7: zprofile
|
Source7: zprofile
|
||||||
|
Source8: _osc
|
||||||
|
Source9: _zypper
|
||||||
# unused atm. we build the docs with yodl on our own.
|
# unused atm. we build the docs with yodl on our own.
|
||||||
Source20: %{name}-%{version}-doc.tar.bz2
|
Source20: %{name}-%{version}-doc.tar.bz2
|
||||||
Patch0: %{name}-4.3.4.diff
|
Patch0: %{name}-4.3.4.diff
|
||||||
@ -124,7 +126,7 @@ groff Doc/intro.ms > intro.txt
|
|||||||
# install SUSE configuration
|
# install SUSE configuration
|
||||||
%{__install} -m 0755 -Dd %{buildroot}/{etc,bin}
|
%{__install} -m 0755 -Dd %{buildroot}/{etc,bin}
|
||||||
%{__install} -m 0644 %{S:1} %{S:2} %{S:7} %{buildroot}/etc
|
%{__install} -m 0644 %{S:1} %{S:2} %{S:7} %{buildroot}/etc
|
||||||
%{__install} -m 0644 %{S:3} %{S:4} %{S:5} %{S:6} %{buildroot}%{_datadir}/%{name}/%version/functions
|
%{__install} -m 0644 %{S:3} %{S:4} %{S:5} %{S:6} %{S:8} %{S:9} %{buildroot}%{_datadir}/%{name}/%version/functions
|
||||||
# install help files
|
# install help files
|
||||||
%{__install} -m 0755 -Dd %{buildroot}%{_datadir}/%{name}/help
|
%{__install} -m 0755 -Dd %{buildroot}%{_datadir}/%{name}/help
|
||||||
%{__install} -m 0644 Help/* %{buildroot}%{_datadir}/%{name}/help/
|
%{__install} -m 0644 Help/* %{buildroot}%{_datadir}/%{name}/help/
|
||||||
@ -155,6 +157,9 @@ groff Doc/intro.ms > intro.txt
|
|||||||
%{_mandir}/man1/zsh*.1.gz
|
%{_mandir}/man1/zsh*.1.gz
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Apr 24 2009 hmacht@suse.de
|
||||||
|
- add completion for osc (_osc)
|
||||||
|
- add completion for zypper (_zypper)
|
||||||
* Thu Oct 02 2008 hvogel@suse.de
|
* Thu Oct 02 2008 hvogel@suse.de
|
||||||
- globally disabling the test was the plan, not only on some archs
|
- globally disabling the test was the plan, not only on some archs
|
||||||
* Thu Sep 18 2008 hvogel@suse.de
|
* Thu Sep 18 2008 hvogel@suse.de
|
||||||
@ -270,7 +275,7 @@ groff Doc/intro.ms > intro.txt
|
|||||||
* Thu Oct 16 2003 mmj@suse.de
|
* Thu Oct 16 2003 mmj@suse.de
|
||||||
- Don't build as root
|
- Don't build as root
|
||||||
- Cleanup specfile
|
- Cleanup specfile
|
||||||
* Wed Oct 15 2003 jh@suse.de
|
* Tue Oct 14 2003 jh@suse.de
|
||||||
- Fix profiling lockup. (we can not profile dl_closed modules yet)
|
- Fix profiling lockup. (we can not profile dl_closed modules yet)
|
||||||
* Thu Jun 19 2003 mmj@suse.de
|
* Thu Jun 19 2003 mmj@suse.de
|
||||||
- Update to 4.1.1
|
- Update to 4.1.1
|
||||||
@ -295,7 +300,7 @@ groff Doc/intro.ms > intro.txt
|
|||||||
- Use proper libdir
|
- Use proper libdir
|
||||||
* Thu Aug 15 2002 poeml@suse.de
|
* Thu Aug 15 2002 poeml@suse.de
|
||||||
- update completion for _yast{,2} and add one for _hwinfo
|
- update completion for _yast{,2} and add one for _hwinfo
|
||||||
* Thu Aug 15 2002 mmj@suse.de
|
* Wed Aug 14 2002 mmj@suse.de
|
||||||
- Update to 4.0.6 which was released this fast b/c a termcap /
|
- Update to 4.0.6 which was released this fast b/c a termcap /
|
||||||
terminfo fix was forgotten together with a fix for _mount.
|
terminfo fix was forgotten together with a fix for _mount.
|
||||||
* Mon Aug 12 2002 mmj@suse.de
|
* Mon Aug 12 2002 mmj@suse.de
|
||||||
@ -327,7 +332,7 @@ groff Doc/intro.ms > intro.txt
|
|||||||
- Fixed build prob on beta-i386 and beta-ia64
|
- Fixed build prob on beta-i386 and beta-ia64
|
||||||
* Tue May 08 2001 mfabian@suse.de
|
* Tue May 08 2001 mfabian@suse.de
|
||||||
- bzip2 sources
|
- bzip2 sources
|
||||||
* Mon Apr 16 2001 schwab@suse.de
|
* Sun Apr 15 2001 schwab@suse.de
|
||||||
- Fix missing declarations.
|
- Fix missing declarations.
|
||||||
* Fri Apr 13 2001 mmj@suse.de
|
* Fri Apr 13 2001 mmj@suse.de
|
||||||
- Updated to 4.0.1-pre-3
|
- Updated to 4.0.1-pre-3
|
||||||
@ -357,9 +362,9 @@ groff Doc/intro.ms > intro.txt
|
|||||||
- removed symlink /etc/zshrc -> profile (aaa_base contains a real zshrc now)
|
- removed symlink /etc/zshrc -> profile (aaa_base contains a real zshrc now)
|
||||||
* Fri Oct 10 1997 florian@suse.de
|
* Fri Oct 10 1997 florian@suse.de
|
||||||
- update to version 3.0.5
|
- update to version 3.0.5
|
||||||
* Tue Jun 24 1997 florian@suse.de
|
* Mon Jun 23 1997 florian@suse.de
|
||||||
- update to version 3.0.4
|
- update to version 3.0.4
|
||||||
* Thu Jan 23 1997 florian@suse.de
|
* Wed Jan 22 1997 florian@suse.de
|
||||||
- update to version 3.0.2
|
- update to version 3.0.2
|
||||||
* Thu Jan 02 1997 florian@suse.de
|
* Thu Jan 02 1997 florian@suse.de
|
||||||
- update to version 3.0.1
|
- update to version 3.0.1
|
||||||
|
Loading…
Reference in New Issue
Block a user