1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-10-22 16:20:23 +02:00

21313: make code for extracting mutt aliases do a better job of finding rc files

This commit is contained in:
Oliver Kiddle 2005-06-08 12:07:48 +00:00
parent 57879ec429
commit f478a8b75e
2 changed files with 20 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2005-06-08 Oliver Kiddle <opk@zsh.org>
* 21313: Completion/Unix/Type/_email_addresses: make code for
extracting mutt aliases do a better job of finding rc files
2005-06-08 Doug Kearns <djkea2@gus.gscit.monash.edu.au>
* 21306: Completion/Zsh/Command/_disable: add -s option for removing

View file

@ -14,7 +14,16 @@
# plugins
(( $+functions[_email-mail] )) ||
_email-mail() {
reply=( ${${${(M)${(f)"$(<$files[$plugin])"}:#alias*}##alias[[:blank:]]##}/[[:blank:]]##/:} )
local rc rcfiles i
rcfiles=( $files[$plugin] )
for ((i=1;i<=$#rcfiles;i++)); do
rcfiles+=( ${~${(M)${(f)"$(<$rcfiles[i])"}:#source*}##source[[:blank:]]##}(N) )
done
reply=()
for rc in $rcfiles; do
reply+=( ${${${(M)${(f)"$(<$rc)"}:#alias*}##alias[[:blank:]]##}/[[:blank:]]##/:} )
done
return 300
}
(( $+functions[_email-mutt] )) || _email-mutt() { _email-mail }
@ -79,7 +88,7 @@ _email-local() {
_email_addresses() {
local -a plugins reply list args
local -A opts files
local plugin rcfile expl ret fret
local plugin rcfile muttrc expl ret fret
local __specialx='][()<>@,;:\\".'
local __spacex=" " # Space, tab
@ -119,7 +128,10 @@ _email_addresses() {
fi
# get list of all plugins except any with missing config files
files=( MH ${MH:-~/.mh_profile} mutt ~/.muttrc mush ~/.mushrc mail ${MAILRC:-~/.mailrc} pine ~/.addressbook )
if ! zstyle -s ":completion:${curcontext}:email-addresses" muttrc muttrc; then
[[ -e ~/mutt/muttrc ]] && muttrc="~/mutt/muttrc" || muttrc="~/.muttrc"
fi
files=( MH ${MH:-~/.mh_profile} mutt $muttrc mush ~/.mushrc mail ${MAILRC:-~/.mailrc} pine ~/.addressbook )
plugins=(
${${(k)functions[(I)_email-*]#*-}:#(${(kj.|.)~files})}
$files(Ne:'REPLY=( ${(k)files[(r)$REPLY]} ):')