aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/emoji-menu.sh
blob: f7834025f4afb360a475fa0cc34f392cb3c13f11 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/sh -eu
# From: https://git.sr.ht/~emersion/dotfiles/tree/6575f89856d012c2c31e9e7d2c807f350c7503d4/item/bin/emoji-menu

default_cache_home=~/.cache
cache_home="${XDG_CACHE_HOME:-$default_cache_home}"
mkdir -p "$cache_home"
data_file="$cache_home/emoji-menu.json"

if ! [ -f "$data_file" ]; then
	curl -o "$data_file" -L "https://github.com/github/gemoji/raw/master/db/emoji.json"
fi

filter='.[] | (.emoji + " " + .description + " (" + (.aliases | join(", ")) + ")")'
sel="$(jq -r "$filter" <"$data_file" | rofi -i -dmenu -mesg "Emoji Menu" | cut -d ' ' -f 1 | tr -d '\n')"
if [ -n "$sel" ]; then
	printf "$sel" | xclip -selection clipboard
fi