summaryrefslogtreecommitdiffstats
path: root/.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh
diff options
context:
space:
mode:
authorLibravatarLibravatar Biswakalyan Bhuyan <biswa@surgot.in> 2025-02-13 14:13:49 +0530
committerLibravatarLibravatar Biswakalyan Bhuyan <biswa@surgot.in> 2025-02-13 14:13:49 +0530
commit8a2e1006b3b272126332aa064f3ad95387129544 (patch)
tree944c80ac612a65980d94a54ba11b6c7102037ecf /.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh
parentdcbb16d8b08ff5956abef5e6478b59df2e93ad35 (diff)
downloaddotfiles-8a2e1006b3b272126332aa064f3ad95387129544.tar.gz
dotfiles-8a2e1006b3b272126332aa064f3ad95387129544.tar.bz2
dotfiles-8a2e1006b3b272126332aa064f3ad95387129544.zip
new dot filesHEADmaster
Diffstat (limited to '.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh')
-rw-r--r--.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh18
1 files changed, 18 insertions, 0 deletions
diff --git a/.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh b/.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh
new file mode 100644
index 0000000..e346d18
--- /dev/null
+++ b/.config/zsh/oh-my-zsh/plugins/hitokoto/hitokoto.plugin.zsh
@@ -0,0 +1,18 @@
+if ! (( $+commands[curl] )); then
+ echo "hitokoto plugin needs curl to work" >&2
+ return
+fi
+
+function hitokoto {
+ setopt localoptions nopromptsubst
+
+ # Get hitokoto data
+ local -a data
+ data=("${(ps:\n:)"$(command curl -s --connect-timeout 2 "https://v1.hitokoto.cn" | command jq -j '.hitokoto+"\n"+.from')"}")
+
+ # Exit if could not fetch hitokoto
+ [[ -n "$data" ]] || return 0
+
+ local quote="${data[1]}" author="${data[2]}"
+ print -P "%F{3}${author}%f: “%F{5}${quote}%f”"
+}