Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Oh My Zsh
Commits
be3f9690
Commit
be3f9690
authored
Jun 29, 2018
by
Marc Cornellà
Browse files
Merge branch 'origin/refactor-rand-quote-plugin'
parents
547a6ce2
76bfa7dd
Changes
2
Hide whitespace changes
Inline
Side-by-side
plugins/rand-quote/README.md
0 → 100644
View file @
be3f9690
# rand-quote plugin
Displays a random quote taken from
[
quotationspage.com
](
http://www.quotationspage.com/random.php
)
Created by
[
Eduardo San Martin Morote, aka Posva
](
https://posva.github.io
)
## Usage
Add the plugin to the plugins array in your zshrc file and restart zsh:
```
zsh
plugins
=(
... rand-quote
)
```
Then, run
`quote`
to get a new random quote.
plugins/rand-quote/rand-quote.plugin.zsh
View file @
be3f9690
# Get a random quote fron the site http://www.quotationspage.com/random.php3
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.php3"
| 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”"
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment