- Make function variables local - Use prompt color sequences - Use guard clause to check for curl - Improved syntaxmaster
parent
1e255a1a8d
commit
76bfa7dd2a
1 changed files with 12 additions and 24 deletions
@ -1,26 +1,14 @@ |
|||||||
# Get a random quote fron the site http://www.quotationspage.com/random.php |
if ! (( $+commands[curl] )); then |
||||||
# 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 |
|
||||||
echo "rand-quote plugin needs curl to work" >&2 |
echo "rand-quote plugin needs curl to work" >&2 |
||||||
|
return |
||||||
fi |
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”" |
||||||
|
} |
||||||
|
|||||||
Loading…
Reference in new issue