From 4f9c07dc05d25b8b4abf1d6e9886cebd9b5ed7bf Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 23 Jun 2008 13:34:52 +0000 Subject: 25236: zsh-mime-setup -l arguments --- ChangeLog | 5 +++++ Doc/Zsh/contrib.yo | 10 ++++++++-- Functions/MIME/zsh-mime-setup | 8 +++++++- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0c20d1859..a75d568f3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-06-23 Peter Stephenson + + * 25236: Doc/Zsh/contrib.yo, Functions/MIME/zsh-mime-setup: + zsh-mime-setup -l can take suffix arguments. + 2008-06-21 Peter Stephenson * 25231: Completion/Unix/Type/_path_files: fix approximation diff --git a/Doc/Zsh/contrib.yo b/Doc/Zsh/contrib.yo index 042a5bd9c..645894692 100644 --- a/Doc/Zsh/contrib.yo +++ b/Doc/Zsh/contrib.yo @@ -1504,7 +1504,7 @@ command to an appropriate viewer. startitem() findex(zsh-mime-setup) findex(zsh-mime-handler) -xitem(tt(zsh-mime-setup [-flv])) +xitem(tt(zsh-mime-setup) [ tt(-fv) ] [ tt(-l) [ var(suffix ...) ] ]) item(tt(zsh-mime-handler))( These two functions use the files tt(~/.mime.types) and tt(/etc/mime.types), which associate types and extensions, as well as tt(~/.mailcap) and @@ -1525,8 +1525,14 @@ Repeated calls to tt(zsh-mime-setup) do not override the existing mapping between suffixes and executable files unless the option tt(-f) is given. Note, however, that this does not override existing suffix aliases assigned to handlers other than tt(zsh-mime-handler). + Calling tt(zsh-mime-setup) with the option tt(-l) lists the existing -mappings without altering them. Calling tt(zsh-mime-setup) with the option +mappings without altering them. Suffixes to list (which may contain +pattern characters that should be quoted from immediate interpretation +on the command line) may be given as additional arguments, otherwise +all suffixes are listed. + +Calling tt(zsh-mime-setup) with the option tt(-v) causes verbose output to be shown during the setup operation. The system respects the tt(mailcap) flags tt(needsterminal) and diff --git a/Functions/MIME/zsh-mime-setup b/Functions/MIME/zsh-mime-setup index 9a3e69610..0e3a29e56 100644 --- a/Functions/MIME/zsh-mime-setup +++ b/Functions/MIME/zsh-mime-setup @@ -37,7 +37,13 @@ if [[ -n $o_list ]]; then # so we don't need to search styles for suffixes that aren't # handled. Yet. local list_word - for suffix in ${(ko)zsh_mime_handlers}; do + local -a handlers + if (( $# )); then + handlers=(${(k)zsh_mime_handlers[(I)${(j.|.)*}]}) + else + handlers=(${(k)zsh_mime_handlers}) + fi + for suffix in ${(o)handlers}; do zstyle -s ":mime:.$suffix:" handler list_word || list_word=${zsh_mime_handlers[$suffix]} print ${(r.10.)suffix}$list_word -- cgit 1.4.1