System-wide character-picker: emoji and unicode shell extensions for rofi
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Mathieu Laparie f9d58014e9 emoji.txt 12.0 update, readme wording improvement. 1 year ago emoji.txt 12.0 update, readme wording improvement. 1 year ago
config.example Fix error in config. 1 year ago
emojis.txt emoji.txt 12.0 update, readme wording improvement. 1 year ago
rofiemoji-rofiunicode1.png Initial commit. 1 year ago
rofiemoji-rofiunicode2.png Initial commit. 1 year ago emoji.txt 12.0 update, readme wording improvement. 1 year ago Fix path error in and 1 year ago
sidetab-adapta.rasi Initial commit. 1 year ago
unicode.txt Initial commit. 1 year ago


Inspired by fdw/rofimoji and forked from its script version nkoehring/rofiemoji, rofiemoji-rofiunicode is a character-picker that combines two scripts to search and copy emojis or unicode characters directly from davatorium/rofi.

It comes with an example configuration file and theme that should make it ready to use without user configuration. When using the recommended procedure, unicode and emoji lists show up as separate tabs when rofi is invoked:



The two underlying scripts, and, will try to download the lists of emoji and unicode characters if they are missing, but this should already been taken care of when cloning this repository as follows:

cd ~/.config # Using this path is important for next steps
git clone

The list of emojis is fetched from while the unicode list was created by /u/fe80c0ffee.


  • An emoji capable font, for example Noto Emoji or Noto Color Emoji.
  • xsel to copy the selection to the clipboard. You should find it in your package manager.
  • rofi from davatorium/rofi but probably available in your package manager as well.

Usage example

Add a custom keybinding using your window-manager settings for the following command:

rofi -show windowcd -theme-str '#window{width: 30%;}' # See the rofi documentation for details

Invoke rofi using your keybinding, navigate through tabs using Ctrl+Tab (default) and search emojis or unicode characters by keyword. Pressing Return will copy the highlighted character to the clipboard and close rofi.

For rofi to look like the above screenshots, use the supplied config file and sidetab-adapta.rasi theme (originally taken from the davatorium/rofi-themes collection). This can be done simply by running the following commands:

mv $HOME/.config/rofi/config $HOME/.config/rofi/config.back
cp $HOME/.config/rofiemoji-rofiunicode/config.example $HOME/.config/rofi/config
mkdir -p $HOME/.local/share/rofi/themes
cp $HOME/.config/rofiemoji-rofiunicode/sidetab-adapta.rasi $HOME/.local/share/rofi/themes/

It is assumed, however, that rofi/ and rofiemoji-rofiunicode/ directories are both located in ~/.config/.

The config file supplied here is customized to my own preferences and to the characteristics of my system. Make sure you reviewed the few uncommented lines to check whether my changes will work on your system. For instance, this config file makes rofi work with gnome-terminal, but default rofi values might work best with other terminals.


kabouik/rofimoji is an alternative based on the original fdw/rofimoji instead of the nkoehring/rofiemoji script version, but still with the addition of unicode characters from /u/fe80c0ffee. It allows multiple selection of emojis or unicode characters, as well as direct input without a clipboard step, but the customization possibilities are more limited and there is no visual unification with your main rofi instance.