mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-12-27 15:30:15 +08:00
Add emotty plugin
which displays an emoji for the current $TTY.
This commit is contained in:
parent
9c08641d7c
commit
dce052dac0
43
plugins/emotty/emotty.plugin.zsh
Normal file
43
plugins/emotty/emotty.plugin.zsh
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# FILE: emotty.plugin.zsh
|
||||||
|
# DESCRIPTION: Return an emoji for the current $TTY number.
|
||||||
|
# AUTHOR: Alexis Hildebrandt (afh[at]surryhill.net)
|
||||||
|
# VERSION: 1.0.0
|
||||||
|
# DEPENDS: emoji plugin
|
||||||
|
#
|
||||||
|
# There are different sets of emoji characters available, to choose a different
|
||||||
|
# set export emotty_set to the name of the set you would like to use, e.g.:
|
||||||
|
# % export emotty_set=nature
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
typeset -gAH _emotty_sets
|
||||||
|
local _emotty_plugin_dir="${0:h}"
|
||||||
|
source "$_emotty_plugin_dir/emotty_stellar_set.zsh"
|
||||||
|
source "$_emotty_plugin_dir/emotty_floral_set.zsh"
|
||||||
|
source "$_emotty_plugin_dir/emotty_zodiac_set.zsh"
|
||||||
|
source "$_emotty_plugin_dir/emotty_nature_set.zsh"
|
||||||
|
source "$_emotty_plugin_dir/emotty_emoji_set.zsh"
|
||||||
|
source "$_emotty_plugin_dir/emotty_love_set.zsh"
|
||||||
|
unset _emotty_plugin_dir
|
||||||
|
|
||||||
|
emotty_default_set=emoji
|
||||||
|
|
||||||
|
function emotty() {
|
||||||
|
# Use emotty set defined by user, fallback to default
|
||||||
|
local emotty=${_emotty_sets[${emotty_set:-$emotty_default_set}]}
|
||||||
|
# Parse $TTY number, normalizing it to an emotty set index
|
||||||
|
(( tty = (${TTY##/dev/ttys} % ${#${=emotty}}) + 1 ))
|
||||||
|
local character_name=${${=emotty}[tty]}
|
||||||
|
echo "${emoji[${character_name}]}${emoji2[emoji_style]}"
|
||||||
|
}
|
||||||
|
|
||||||
|
function display_emotty() {
|
||||||
|
local name=$1
|
||||||
|
for i in ${=_emotty_sets[$name]}; do
|
||||||
|
printf "${emoji[$i]}${emoji2[emoji_style]} "
|
||||||
|
done
|
||||||
|
print
|
||||||
|
for i in ${=_emotty_sets[$name]}; do
|
||||||
|
print "${emoji[$i]}${emoji2[emoji_style]} = $i"
|
||||||
|
done
|
||||||
|
}
|
24
plugins/emotty/emotty_emoji_set.zsh
Normal file
24
plugins/emotty/emotty_emoji_set.zsh
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
|
||||||
|
_emotty_sets[emoji]="
|
||||||
|
crystal_ball
|
||||||
|
ghost
|
||||||
|
jack_o_lantern
|
||||||
|
see_no_evil_monkey
|
||||||
|
hear_no_evil_monkey
|
||||||
|
speak_no_evil_monkey
|
||||||
|
smiling_cat_face_with_open_mouth
|
||||||
|
extraterrestrial_alien
|
||||||
|
rocket
|
||||||
|
billiards
|
||||||
|
bomb
|
||||||
|
pill
|
||||||
|
japanese_symbol_for_beginner
|
||||||
|
direct_hit
|
||||||
|
cyclone
|
||||||
|
diamond_shape_with_a_dot_inside
|
||||||
|
sparkle
|
||||||
|
eight_spoked_asterisk
|
||||||
|
eight_pointed_black_star
|
||||||
|
"
|
18
plugins/emotty/emotty_floral_set.zsh
Normal file
18
plugins/emotty/emotty_floral_set.zsh
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
|
||||||
|
_emotty_sets[floral]="
|
||||||
|
hibiscus
|
||||||
|
cherry_blossom
|
||||||
|
blossom
|
||||||
|
sunflower
|
||||||
|
bouquet
|
||||||
|
tulip
|
||||||
|
rose
|
||||||
|
four_leaf_clover
|
||||||
|
seedling
|
||||||
|
herb
|
||||||
|
palm_tree
|
||||||
|
evergreen_tree
|
||||||
|
deciduous_tree
|
||||||
|
"
|
34
plugins/emotty/emotty_love_set.zsh
Normal file
34
plugins/emotty/emotty_love_set.zsh
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
|
||||||
|
# Note: The heavy_black_heart emoji requires $emoji2[emoji_style]
|
||||||
|
# to be rendered as the emoji red heart.
|
||||||
|
_emotty_sets[love]="
|
||||||
|
green_heart
|
||||||
|
blue_heart
|
||||||
|
purple_heart
|
||||||
|
yellow_heart
|
||||||
|
heavy_black_heart
|
||||||
|
broken_heart
|
||||||
|
heart_with_arrow
|
||||||
|
heart_with_ribbon
|
||||||
|
sparkling_heart
|
||||||
|
two_hearts
|
||||||
|
revolving_hearts
|
||||||
|
growing_heart
|
||||||
|
beating_heart
|
||||||
|
heart_decoration
|
||||||
|
couple_with_heart
|
||||||
|
kiss
|
||||||
|
man_and_woman_holding_hands
|
||||||
|
two_women_holding_hands
|
||||||
|
two_men_holding_hands
|
||||||
|
kiss_mark
|
||||||
|
smiling_face_with_heart_shaped_eyes
|
||||||
|
kissing_face
|
||||||
|
face_throwing_a_kiss
|
||||||
|
kissing_face_with_smiling_eyes
|
||||||
|
kissing_face_with_closed_eyes
|
||||||
|
smiling_cat_face_with_heart_shaped_eyes
|
||||||
|
kissing_cat_face_with_closed_eyes
|
||||||
|
"
|
58
plugins/emotty/emotty_nature_set.zsh
Normal file
58
plugins/emotty/emotty_nature_set.zsh
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
|
||||||
|
_emotty_sets[nature]="
|
||||||
|
mouse_face
|
||||||
|
hamster_face
|
||||||
|
rabbit_face
|
||||||
|
dog_face
|
||||||
|
cat_face
|
||||||
|
tiger_face
|
||||||
|
bear_face
|
||||||
|
monkey_face
|
||||||
|
koala
|
||||||
|
panda_face
|
||||||
|
chicken
|
||||||
|
baby_chick
|
||||||
|
bird
|
||||||
|
penguin
|
||||||
|
cow_face
|
||||||
|
pig_face
|
||||||
|
frog_face
|
||||||
|
boar
|
||||||
|
wolf_face
|
||||||
|
horse_face
|
||||||
|
snail
|
||||||
|
bug
|
||||||
|
ant
|
||||||
|
honeybee
|
||||||
|
lady_beetle
|
||||||
|
spouting_whale
|
||||||
|
dolphin
|
||||||
|
octopus
|
||||||
|
fish
|
||||||
|
tropical_fish
|
||||||
|
snake
|
||||||
|
turtle
|
||||||
|
lemon
|
||||||
|
tangerine
|
||||||
|
peach
|
||||||
|
mushroom
|
||||||
|
tomato
|
||||||
|
strawberry
|
||||||
|
red_apple
|
||||||
|
cherries
|
||||||
|
grapes
|
||||||
|
aubergine
|
||||||
|
watermelon
|
||||||
|
banana
|
||||||
|
pineapple
|
||||||
|
melon
|
||||||
|
pear
|
||||||
|
green_apple
|
||||||
|
ear_of_maize
|
||||||
|
sunflower
|
||||||
|
seedling
|
||||||
|
herb
|
||||||
|
four_leaf_clover
|
||||||
|
"
|
25
plugins/emotty/emotty_stellar_set.zsh
Normal file
25
plugins/emotty/emotty_stellar_set.zsh
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
|
||||||
|
# NOTE: The following emoji show as $'character' in the title
|
||||||
|
# white_medium_star
|
||||||
|
# sparkles
|
||||||
|
# dizzy_symbol
|
||||||
|
|
||||||
|
_emotty_sets[stellar]="
|
||||||
|
full_moon_symbol
|
||||||
|
waning_gibbous_moon_symbol
|
||||||
|
waning_crescent_moon_symbol
|
||||||
|
last_quarter_moon_symbol
|
||||||
|
new_moon_symbol
|
||||||
|
new_moon_with_face
|
||||||
|
waxing_crescent_moon_symbol
|
||||||
|
first_quarter_moon_symbol
|
||||||
|
waxing_gibbous_moon_symbol
|
||||||
|
full_moon_with_face
|
||||||
|
sun_with_face
|
||||||
|
glowing_star
|
||||||
|
crescent_moon
|
||||||
|
first_quarter_moon_with_face
|
||||||
|
last_quarter_moon_with_face
|
||||||
|
"
|
29
plugins/emotty/emotty_zodiac_set.zsh
Normal file
29
plugins/emotty/emotty_zodiac_set.zsh
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# vim:ft=zsh ts=2 sw=2 sts=2
|
||||||
|
|
||||||
|
_emotty_sets[zodiac]="
|
||||||
|
aries
|
||||||
|
taurus
|
||||||
|
gemini
|
||||||
|
cancer
|
||||||
|
leo
|
||||||
|
virgo
|
||||||
|
libra
|
||||||
|
scorpius
|
||||||
|
sagittarius
|
||||||
|
capricorn
|
||||||
|
aquarius
|
||||||
|
pisces
|
||||||
|
rat
|
||||||
|
ox
|
||||||
|
tiger
|
||||||
|
rabbit
|
||||||
|
dragon
|
||||||
|
snake
|
||||||
|
horse
|
||||||
|
goat
|
||||||
|
monkey
|
||||||
|
rooster
|
||||||
|
dog
|
||||||
|
pig
|
||||||
|
"
|
Loading…
Reference in New Issue
Block a user