Omahub
← All plugins
W

Better Emojis

by Wessel Boers

Category tabs, recents, skin tones and gender combining with preset sizing. Takes over Super+Ctrl+E.

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
e945ae8
Scanned
1 month ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

No obvious issues detected

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

None
AI risk level
None
Recommendation
install
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
e945ae8
Reviewed
1 month ago

This plugin is a benign emoji picker overlay. It reads and writes a settings file in the user's state directory, but does not perform any network requests or execute external commands at runtime. The code is straightforward and contains no suspicious patterns.

How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/Wessel-Boers/omarchy-better-emojis --enable
System #system

Better Emojis for Omarchy

A drop-in replacement for the built-in Omarchy emoji picker (Super + Ctrl + E) with category tabs, recents, skin tones, gender variants, and adjustable sizing. Designed to adhere to Omarchy conventions — fully keyboard-accessible, Nerd Fonts icons for categories, and instant open/close with no lag.

preview settings

Install

omarchy plugin add https://github.com/Wessel-Boers/omarchy-better-emojis.git --enable

That's it. The plugin registers itself as the implementation behind omarchy.emojis, so your existing Super + Ctrl + E binding opens it and the stock picker is disabled automatically. Removing the plugin restores the stock picker:

omarchy plugin remove wessel.better-emojis

Features

  • Category tabs — All, Recent, Smileys & Emotion, People & Body, Animals & Nature, Food & Drink, Activities, Travel & Places, Objects, Symbols, Flags. Searching always searches every category with multi-word AND matching.
  • Recents — the last inserted emojis are remembered and available from the Recent tab.
  • Skin tones — choose a default tone in Settings or show all five exact Unicode tone variants beside each base emoji. Cycle through with a hotkey. The grid never shows duplicate standalone tone variants.
  • Gender variants — man, woman, and variants are combined by default. Cycle through with a hotkey or enable all gender variants in Settings when you want them shown separately.
  • Settings page — the gear switches the overlay from the emoji grid to a dedicated Settings page. The emoji icon returns to the grid.
  • Preset sizing — emoji size (Normal / Large / Extra Large), window width (Normal / Wide / Extra Wide), and window height (Normal / Tall / Extra Tall). Grid columns distribute evenly across the complete overlay width at every size.
  • Keyboard navigation — Tab to different categories and access the settings menu with a hotkey. Settings itself uses group-level navigation: Tab and Shift+Tab move between groups, Up and Down move between groups, and Left and Right select options within the active group.
  • Copy mode — Ctrl + Enter copies instead of typing into the focused app.
  • Theme aware — uses Omarchy menu tokens, Button, Toggle, and PanelSeparator components. Toggle shapes follow system corner roundedness.
  • Nerd Font navigation icons — category tabs and view navigation use the same Nerd Font icon style as the Omarchy bar.
  • 1,914 emojis — generated from Unicode emoji-test.txt with CLDR names and keywords (Emoji 17-era data), ordered exactly like every other platform.

Keyboard shortcuts

Key Action
type Search all categories
Tab / Shift + Tab Next / previous category tab
Ctrl + 1 … Ctrl + 9 Jump to tab N
Ctrl + T Cycle skin tone
Ctrl + G Cycle displayed gender when genders are combined
Ctrl + S or Ctrl + , Open Settings / return to emojis
arrows / PgUp / PgDn Move the emoji cursor
Enter Insert selected emoji
Ctrl + Enter Copy selected emoji
Esc Clear search text in emoji view; dismiss the overlay from Settings

Navigate the Settings menu with Tabs or arrows to selected options with the keyboard.

Settings

Settings persist in ~/.local/state/omarchy/plugins/wessel.better-emojis/settings.json (deliberately outside the plugin folder so omarchy plugin update stays a clean fast-forward): emoji size, window width/height, chosen skin tone, recent emojis, skin-tone display, gender display mode and visibility. The picker remembers the last open category, including All and Recent.

Settings include:

  • Emoji size: Normal, Large, Extra Large
  • Window width: Normal, Wide, Extra Wide
  • Window height: Normal, Tall, Extra Tall
  • Default skin tone and the all-tones grid toggle
  • All-genders grid toggle, off by default so genders are combined
  • Show Recent tab and Clear recent emojis

How it works

The manifest carries "omarchy": { "clonedFrom": "omarchy.emojis" }. The shell routes every call made to the built-in omarchy.emojis id — including the Super + Ctrl + E binding — to the enabled plugin that claims it, and disables the stock picker while this one is enabled. It's the same mechanism omarchy plugin clone uses, shipped as a standalone plugin.

Development

Regenerate the emoji dataset (requires network):

python3 tools/generate_emoji_data.py

Validate the manifest the same way the shell does:

omarchy plugin validate .

For local testing, symlink or copy the repo into ~/.config/omarchy/plugins/wessel.better-emojis/, run omarchy plugin enable wessel.better-emojis, then hit Super + Ctrl + E. Edits under ~/.config/omarchy/plugins/ hot-reload.

License

MIT