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 7fab5527b8 Readme clarification. 1 year ago Readme clarification. 1 year ago
config.example Fix error in config. 1 year ago
emojis.txt automatically download emoji list 3 years ago
rofiemoji-rofiunicode1.png Initial commit. 1 year ago
rofiemoji-rofiunicode2.png Initial commit. 1 year ago Fix path error in and 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 its script version nkoehring/rofiemoji, rofiemoji-rofiunicode is a fork of the latter that combines two scripts to search and copy emojis or unicode characters directly from davatorium/rofi. Unicode characters and emojis show up as separate tabs when rofi is invoked:


rofiemoji-rofiunicode2 and will try to download the lists of emoji and unicode characters when used the first time, unless the full repository has already been cloned using:

cd ~/.config
git clone

The list of unicode characters was originally 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.


An alternative based on the original rofimoji by fdw instead of the nkoehring/rofiemoji script version, but still with the addition of unicode characters from /u/fe80c0ffee, is Kabouik/rofimoji. 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.