MCPcopy Index your code
hub / github.com/FelipeFTN/Emoji-Copy

github.com/FelipeFTN/Emoji-Copy @v2.2.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.2.0 ↗ · + Follow
2,006 symbols 9,646 edges 9 files 3 documented · 0% updated 2mo agov34 · 2026-05-05★ 24626 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Emoji Copy 😎

**This GNOME shell extension provides a emoji search pop-up menu. 🚀

Want any emoji? It's right into your top bar!

** This repo is a Fork from emoji-selector-for-gnome and was created for keeping the extension alive. Please feel free to use and contribute to this project. 😃

Features 🚀

  • keyboard shortcut to open the extension's menu (Super+. by default)
  • dynamic search (press Enter to copy the first result to the clipboard)
  • lots of configurable things
  • skin tone & gender modifiers
  • middle-click to set to the clipboard without closing the menu (or Ctrl+Enter)
  • right-click to add the emoji at the end of the current clipboard content (or Shift+Enter)

Keyboard navigation is designed to work with Tab, not the arrows.

Installation 🍀

Recommended

The easiest way to install it is directly from Gnome Extensions: emoji-copy

Native packages

Work in progress...

We need to publish this project to most known package managers, like AUR, Fedora and so on.

Manual installation

Not recommended at all: installing the extension this way will prevent any further updates.

  1. Download and extract the ZIP, then open a terminal in the project's directory.
  2. Choose a way to install the extension:
    --> Make 🔥
    $ make install

    --> NPM 😇
    $ npm run deploy

    --> Shell scripts 🤨
    $ sh install.sh

    --> Hardcore 💀
    $ cp -a ./emoji-copy@felipeftn $HOME/.local/share/gnome-shell/extensions

You may need to restart the GNOME Shell environment (Alt+F2 -> restart -> Enter).

(X11 only, if you are in Wayland, sign out and sign in from the session manually).

Debug and Test 🏗

We have a lot of ways to debug and test our code. Currently, we already have a complete guide to debug and test our extension in a local environment described in debug.md file.

In a simpler way, you can debug the code in two ways:

    --> Make 🔥
    $ make debug

    --> Gnome Dbus Session 🚧
    $ make && dbus-run-session -- gnome-shell --nested --wayland

Memory performance 👾

Loading hundreds of small pictures and thousands of keywords into the memory is a lot. Despite a few attempts to optimize their loading, I'm not an expert at all concerning memory management, and the extension may be responsible for between 10MB and 60MB of memory usage, which is a lot. Don't blame the actual GS devs for it.

✨ Update:

Currently, we are loading emojis with SQLite. With a SQL query system, we were able to load just the necessary amount of emojis for each category. All the emojis are "pre-compiled" during the building process, and generates a emojis.db file at data directory (inside extension's directory).

We still can do a lot of improvements in the way we load and display these emojis. Maybe some skeletons and non-syncronous loading should be great to avoid slow loadings.

Fonts 🔠

It will be less ugly if you have the « Noto Emoji » font, the « Twitter Color Emoji » font, or the « JoyPixels Color » font installed on your system.

Contributors & translations 🫂

Various contributions to the code itself:

The extension is currently available in the following languages:

  • Castillan (thanks to mario-mra)
  • Simplified chinese (thanks to larryw3i)
  • Dutch (thanks to vistaus)
  • Esperanto (thanks to nicolasmaia)
  • German (thanks to jonnius)
  • Italian (thanks to amivaleo)
  • Polish (thanks to alex4401)
  • Brazilian portuguese (thanks to nicolasmaia, picsi & frnogueira)
  • Turkish (thanks to mimoguz)

If you need another language, please contribute! ♥

Core symbols most depended-on inside this repo

Shape

Function 1,927
Method 65
Class 14

Languages

TypeScript100%

Modules by API surface

emoji-copy@felipeftn/libs/sql/sql.js1,925 symbols
emoji-copy@felipeftn/extension.js17 symbols
emoji-copy@felipeftn/handlers/sql.js13 symbols
emoji-copy@felipeftn/emojiButton.js13 symbols
emoji-copy@felipeftn/emojiCategory.js12 symbols
emoji-copy@felipeftn/emojiSearchItem.js10 symbols
emoji-copy@felipeftn/emojiOptionsBar.js10 symbols
emoji-copy@felipeftn/prefs.js5 symbols
emoji-copy@felipeftn/handlers/files.js1 symbols

For agents

$ claude mcp add Emoji-Copy \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page