summaryrefslogtreecommitdiff
path: root/plugins/rand-quote
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2018-06-29 18:16:10 +0200
committerGitHub <noreply@github.com>2018-06-29 18:16:10 +0200
commit76bfa7dd2a5422569c48ceb5429fb31adf1f23c2 (patch)
tree2812fb059627398c0cfab3dc80ac22b1d5a187ca /plugins/rand-quote
parent1e255a1a8d19f713482c7f2caa639733e8f86b39 (diff)
downloadzsh-76bfa7dd2a5422569c48ceb5429fb31adf1f23c2.tar.gz
zsh-76bfa7dd2a5422569c48ceb5429fb31adf1f23c2.tar.bz2
zsh-76bfa7dd2a5422569c48ceb5429fb31adf1f23c2.zip
rand-quote: refactor rand-quote function
- Make function variables local - Use prompt color sequences - Use guard clause to check for curl - Improved syntax
Diffstat (limited to 'plugins/rand-quote')
-rw-r--r--plugins/rand-quote/rand-quote.plugin.zsh36
1 files changed, 12 insertions, 24 deletions
diff --git a/plugins/rand-quote/rand-quote.plugin.zsh b/plugins/rand-quote/rand-quote.plugin.zsh
index a64e9b4ed..371b997d3 100644
--- a/plugins/rand-quote/rand-quote.plugin.zsh
+++ b/plugins/rand-quote/rand-quote.plugin.zsh
@@ -1,26 +1,14 @@
-# Get a random quote fron the site http://www.quotationspage.com/random.php
-# Created by Eduardo San Martin Morote aka Posva
-# http://posva.github.io
-# Sun Jun 09 10:59:36 CEST 2013
-# Don't remove this header, thank you
-# Usage: quote
-
-WHO_COLOR="\e[0;33m"
-TEXT_COLOR="\e[0;35m"
-COLON_COLOR="\e[0;35m"
-END_COLOR="\e[m"
-
-if [[ -x `which curl` ]]; then
- function quote()
- {
- Q=$(curl -s --connect-timeout 2 "http://www.quotationspage.com/random.php" | iconv -c -f ISO-8859-1 -t UTF-8 | grep -m 1 "dt ")
- TXT=$(echo "$Q" | sed -e 's/<\/dt>.*//g' -e 's/.*html//g' -e 's/^[^a-zA-Z]*//' -e 's/<\/a..*$//g')
- W=$(echo "$Q" | sed -e 's/.*\/quotes\///g' -e 's/<.*//g' -e 's/.*">//g')
- if [ "$W" -a "$TXT" ]; then
- echo "${WHO_COLOR}${W}${COLON_COLOR}: ${TEXT_COLOR}“${TXT}”${END_COLOR}"
- fi
- }
- #quote
-else
+if ! (( $+commands[curl] )); then
echo "rand-quote plugin needs curl to work" >&2
+ return
fi
+
+function quote {
+ emulate -L zsh
+ Q=$(curl -s --connect-timeout 2 "http://www.quotationspage.com/random.php" | iconv -c -f ISO-8859-1 -t UTF-8 | grep -m 1 "dt ")
+
+ TXT=$(echo "$Q" | sed -e 's/<\/dt>.*//g' -e 's/.*html//g' -e 's/^[^a-zA-Z]*//' -e 's/<\/a..*$//g')
+ WHO=$(echo "$Q" | sed -e 's/.*\/quotes\///g' -e 's/<.*//g' -e 's/.*">//g')
+
+ [[ -n "$WHO" && -n "$TXT" ]] && print -P "%F{3}${WHO}%f: “%F{5}${TXT}%f”"
+}