mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-19 21:44:11 +01:00
48 lines
2.6 KiB
Plaintext
48 lines
2.6 KiB
Plaintext
#compdef raggle
|
|
|
|
# Raggle v0.4.0
|
|
|
|
local curcontext="$curcontext" state line
|
|
typeset -A opt_args
|
|
|
|
_arguments -C -s \
|
|
'(-a --add)'{-a,--add}"[add a new feed (requires '--url')]" \
|
|
'(-A --ascii)'{-A,--ascii}'[use ASCII characters instead of ANSI for window borders]' \
|
|
'(-c --config)'{-c,--config}'[specify an alternate config file]:config file:_files -g "*.rb(-.)"' \
|
|
'--default-config[print out the default configuration of Raggle in a format suitable for your config.rb file]' \
|
|
'(-d --delete)'{-d,--delete}'[delete an existing feed]:feed ID:->feed' \
|
|
'--diag[run raggle in diagnostics/debug mode]' \
|
|
'(-e --edit)'{-e,--edit}'[edit an existing feed]:feed ID:->feed' \
|
|
'(--import-opml)--export-opml[export feeds to OPML]:OPML file:_files -g "*.opml(-.)"' \
|
|
'(-f --find)'{-f,--find}'[find feeds containing a string, via Syndic8]:search string:' \
|
|
"--force[force behavior Raggle won't normally allow]" \
|
|
'(-)'{-h,--help,--usage}'[display help information]' \
|
|
'(--export-opml)--import-opml[import feeds from an OPML file]:OPML file:_files -g "*.opml(-.)"' \
|
|
'(-i --invalidate)'{-i,--invalidate}'[invalidate a feed (force an update)]:feed ID:->feed' \
|
|
'(-l --list)'{-l,--list}"[list existing feeds (use '--verbose' to show URLs as well)]" \
|
|
"--lock-title[lock Title attribute of feed (for '--add' and '--edit')]" \
|
|
"--max[set the maximum number of items for a feed (for '--add' and '--edit')]" \
|
|
'(-p --priority)'{-p,--priority}"[feed sorting priority: 0 by default, higher values will sort feeds to the top (for '--add' and '--edit')]:sorting priority:" \
|
|
'--purge[purge deleted feeds from feed cache]' \
|
|
'(-r --refresh)'{-r,--refresh}"[refresh attribute of feed (for '--add' and '--edit')]:refresh time (minutes):" \
|
|
"--save-items[save old items of feed (for '--add' and '--edit')]" \
|
|
'--server[run Raggle in HTTP server mode]:port:_ports' \
|
|
'(--sort --sort-feeds)'{--sort,--sort-feeds}'[sort feeds by priority then title (case-insensitive)]' \
|
|
'(-t --title)'{-t,--title}"[title attribute of feed (for '--add' and '--edit')]:feed title:" \
|
|
"--unlock-title[unlock Title attribute of feed (for '--add' and '--edit')]" \
|
|
"--unsave-items[don't save old items of feed (for '--add' and '--edit')]" \
|
|
'(-u --url)'{-u,--url}"[URL attribute of feed (for '--add' and '--edit')]:URL:_urls" \
|
|
'--verbose[turn on verbose output]' \
|
|
'(-)'{-v,--version}'[display version information]' && return 0
|
|
|
|
if [[ "$state" = feed ]]; then
|
|
local feeds
|
|
feeds=(
|
|
${${(M)${${(f)"$(_call_program feeds $words[1] \
|
|
--list)"}/(#s)[[:blank:]]/}:#[0-9]##,*}/, /:}
|
|
)
|
|
_describe -t feeds "RSS feed" feeds && return 0
|
|
fi
|
|
|
|
return 1
|