diff options
Diffstat (limited to 'elvi/wikiquote')
-rwxr-xr-x | elvi/wikiquote | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/elvi/wikiquote b/elvi/wikiquote new file mode 100755 index 0000000..6e91ffb --- /dev/null +++ b/elvi/wikiquote @@ -0,0 +1,48 @@ +#!/bin/sh + +# elvis: wikiquote -- Search literary/film quotations on wikiquote.org + +. surfraw || exit 1 + +default_lang="en" + +w3_config_hook() { + def SURFRAW_wikiquote_language "$SURFRAW_lang" +} + +w3_usage_hook() { + cat <<EOF +Usage: $w3_argv0 [options] [search words]... +Description: + Surfraw search quotations on wikiquote.org +Local options: + -language=ISOCODE | -l=ISOCODE Two letter language code (resembles ISO country codes) + Default: $default_lang + Environment: SURFRAW_wikiquote_language, SURFRAW_lang +EOF + w3_global_usage +} + +w3_parse_option_hook() { + opt="$1" + optarg="$2" + case "$opt" in + -l*=*) SURFRAW_wikiquote_language="$optarg" ;; + *) return 1 ;; + esac + return 0 +} + +w3_config +w3_parse_args "$@" + +[ -z "$SURFRAW_wikiquote_language" ] && \ + SURFRAW_wikiquote_language="$default_lang" + +url="https://${SURFRAW_wikiquote_language}.wikiquote.org" +if ! null "$w3_args"; then + url="$url/w/index.php" + url="$url?search=$( w3_url_of_arg $w3_args )" + url="$url&title=Special%3ASearch&fulltext=Search&ns0=1" +fi +w3_browse_url "$url" |