mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-01-19 11:31:26 +01:00
Merge of users/10282 and workers/22237.
This commit is contained in:
parent
2c718e9f12
commit
69dbd4af07
1 changed files with 16 additions and 5 deletions
|
@ -19,7 +19,7 @@ _man() {
|
|||
fi
|
||||
|
||||
(( $#_manpath )) ||
|
||||
_manpath=( /usr/man(-/) /(opt|usr)/(dt|share|X11R6|local)/(cat|)man(-/) )
|
||||
_manpath=( /usr/man(-/) /(opt|usr)/(pkg|dt|share|X11R6|local)/(cat|)man(-/) )
|
||||
|
||||
# `sman' is the SGML manual directory for Solaris 7.
|
||||
# 1M is system administrator commands on SVR4
|
||||
|
@ -28,7 +28,7 @@ _man() {
|
|||
|
||||
local sect
|
||||
if [[ $OSTYPE = solaris* ]]; then
|
||||
sect=$words[$words[(i)-s]+1]
|
||||
sect=${${words[(R)-s*]#-s}:-$words[$words[(i)-s]+1]}
|
||||
elif [[ -n ${sect:=$words[$words[(i)-S]+1]} || -n ${sect:=$MANSECT} ]]; then
|
||||
if [[ $sect != ${sect::="${sect//:/|}"} ]]; then
|
||||
sect="($sect)"
|
||||
|
@ -44,7 +44,11 @@ _man() {
|
|||
dirs=( $^_manpath/(sman|man|cat)*/ )
|
||||
awk='{print $1}'
|
||||
fi
|
||||
if zstyle -t ":completion:${curcontext}:manuals" separate-sections; then
|
||||
if [[ $OSTYPE = solaris* && ( $words[CURRENT] = -s* || $words[CURRENT-1] == -s ) ]]; then
|
||||
[[ $words[CURRENT] = -s* ]] && compset -P '-s'
|
||||
sects=( ${(o)${dirs##*(man|cat)}%/} )
|
||||
_wanted sections expl 'section' compadd -a sects
|
||||
elif zstyle -t ":completion:${curcontext}:manuals" separate-sections; then
|
||||
typeset -U sects
|
||||
local ret=1
|
||||
|
||||
|
@ -69,7 +73,7 @@ _man() {
|
|||
}
|
||||
|
||||
_man_pages() {
|
||||
local matcher pages dummy
|
||||
local matcher pages dummy sopt
|
||||
|
||||
zparseopts -E M+:=matcher
|
||||
|
||||
|
@ -90,7 +94,14 @@ _man_pages() {
|
|||
# beginning with .<->: that handles problem cases like files called
|
||||
# `POSIX.1.5'.
|
||||
|
||||
compadd "$@" - ${pages%.(?|<->*(|.gz|.bz2|.Z))}
|
||||
[[ $OSTYPE = solaris* ]] && sopt='-s '
|
||||
if ((CURRENT > 2)) ||
|
||||
! zstyle -t ":completion:${curcontext}:manuals.$sect" insert-sections
|
||||
then
|
||||
compadd "$@" - ${pages%.(?|<->*(|.gz|.bz2|.Z))}
|
||||
else
|
||||
compadd "$@" -P "$sopt$sect " - ${pages%.(?|<->*(|.gz|.bz2|.Z))}
|
||||
fi
|
||||
}
|
||||
|
||||
_man "$@"
|
||||
|
|
Loading…
Reference in a new issue