From 63a171d6b989f3a0b7250ff1621e6630a37345ea Mon Sep 17 00:00:00 2001 From: sommerfeld Date: Wed, 13 May 2026 13:43:30 +0100 Subject: feat(emoji): filter out skin-tone variants in bemoji picker Skin-tone modifiers (U+1F3FB..U+1F3FF) clutter search results with five near-duplicates per people-emoji. New ~/.config/sway/emoji-picker.sh wraps bemoji and pipes its emoji list through grep -vP before handing it to wofi. Quoting was getting hairy inline in sway's exec, so the wrapper script makes it readable. --- dot_config/sway/config | 2 +- dot_config/sway/executable_emoji-picker.sh | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 dot_config/sway/executable_emoji-picker.sh (limited to 'dot_config/sway') diff --git a/dot_config/sway/config b/dot_config/sway/config index 2c3d94d..3dba142 100644 --- a/dot_config/sway/config +++ b/dot_config/sway/config @@ -180,7 +180,7 @@ bindsym $mod+p exec ~/.config/waybar/clip-picker.sh pick bindsym $mod+Shift+p exec ~/.config/waybar/clip-picker.sh delete # Emoji picker (bemoji → wofi → wtype + clipboard) -bindsym $mod+period exec env BEMOJI_PICKER_CMD="wofi --dmenu --prompt Emoji --style $HOME/.config/wofi/style.css" bemoji -tc +bindsym $mod+period exec ~/.config/sway/emoji-picker.sh # Display mode switching bindsym --no-repeat XF86Display exec ~/.config/sway/display-toggle.sh diff --git a/dot_config/sway/executable_emoji-picker.sh b/dot_config/sway/executable_emoji-picker.sh new file mode 100644 index 0000000..e713d0d --- /dev/null +++ b/dot_config/sway/executable_emoji-picker.sh @@ -0,0 +1,11 @@ +#!/bin/sh +# Bemoji wrapper: drop skin-tone variants (U+1F3FB..U+1F3FF) so the +# picker isn't cluttered with five copies of every people-emoji. +# Bemoji pipes its emoji list to $BEMOJI_PICKER_CMD on stdin. +set -eu + +filter='LC_ALL=C.UTF-8 grep -vP "[\x{1F3FB}-\x{1F3FF}]"' +picker="wofi --dmenu --prompt Emoji --style $HOME/.config/wofi/style.css" + +export BEMOJI_PICKER_CMD="sh -c '$filter | $picker'" +exec bemoji -tc "$@" -- cgit v1.3.1