diff options
author | Andrew Janke <andrew@apjanke.net> | 2015-09-28 08:52:03 -0400 |
---|---|---|
committer | Andrew Janke <andrew@apjanke.net> | 2015-09-28 08:52:03 -0400 |
commit | e4fdb083655fc582ebcecb07cd1bd1130077f0e4 (patch) | |
tree | fee07d9adfee79d1c88206ead154a23520ac51cb /plugins/emotty/emotty.plugin.zsh | |
parent | 5c8b0cc0c1782b34790548498018fb9e0300992b (diff) | |
parent | b05ef1034fffd7b0c29f1558a8a357ccce7ae74b (diff) | |
download | zsh-e4fdb083655fc582ebcecb07cd1bd1130077f0e4.tar.gz zsh-e4fdb083655fc582ebcecb07cd1bd1130077f0e4.tar.bz2 zsh-e4fdb083655fc582ebcecb07cd1bd1130077f0e4.zip |
Merge branch 'master' into copyfile-portability
Diffstat (limited to 'plugins/emotty/emotty.plugin.zsh')
-rw-r--r-- | plugins/emotty/emotty.plugin.zsh | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/plugins/emotty/emotty.plugin.zsh b/plugins/emotty/emotty.plugin.zsh new file mode 100644 index 000000000..b32dd1a4c --- /dev/null +++ b/plugins/emotty/emotty.plugin.zsh @@ -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 +} |