📖 How-To Guides

How to Type Emojis on Linux: IBus, GNOME, KDE, and More

Typing Emojis on Linux: Overview

Linux gives you several ways to insert emojis, depending on your desktop environment and input method. Unlike Windows or macOS, there is no single universal shortcut — but once you configure your preferred method, emojiEmoji
Từ tiếng Nhật (絵文字) có nghĩa là 'ký tự hình ảnh' — các ký hiệu đồ họa nhỏ dùng trong giao tiếp kỹ thuật số để diễn đạt ý tưởng, cảm xúc và sự vật.
input is fast and reliable. This guide covers GNOME, KDE, IBus, and terminal-based approaches.

Method 1: GNOME's Built-In Emoji Picker

If you run GNOME (the default desktop on Ubuntu, Fedora, Debian GNOME edition, and many others), you have a native emoji picker built in since GNOME 3.32.

Opening the GNOME Emoji Picker

Press this keyboard shortcut in any text field:

Ctrl + Shift + E

A small search box appears in the input area. Type an emoji name or keyword — for example, type fire and press Enter to insert 🔥. The picker is lightweight and works in GTK applications like GNOME Text Editor, Gedit, and the Files app.

The GNOME Characters App

GNOME also ships a full emoji browser called GNOME Characters. Install it if it isn't already present:

sudo apt install gnome-characters        # Debian/Ubuntu
sudo dnf install gnome-characters        # Fedora

Open it from your app launcher, search or browse by category, click an emoji, then click Copy to put it on your clipboard. Switch to your app and paste with Ctrl + V.

Method 2: IBus Emoji Picker

IBus (Intelligent Input Bus) is the most widely used input method framework on Linux and includes an emoji picker that works across almost all applications.

Installing IBus

sudo apt install ibus ibus-gtk ibus-gtk3    # Debian/Ubuntu
sudo dnf install ibus                        # Fedora

After installation, start IBus:

ibus-setup

Add IBus to your session startup (GNOME: add it to GNOME Settings → Startup Applications, or set GTK_IM_MODULE=ibus in your environment).

Using the IBus Emoji Picker

Once IBus is running, use this shortcut in any text field:

Ctrl + Shift + E

A search-driven emoji picker appears. Type a keyword, use arrow keys to select an emoji, and press Enter to insert it. IBus renders the emoji as a literal UnicodeUnicode
Tiêu chuẩn mã hóa ký tự phổ quát gán một số duy nhất cho mỗi ký tự trong tất cả hệ thống chữ viết và bộ ký hiệu, bao gồm cả emoji.
character in the focused application.

Configuring the IBus Shortcut

If the default shortcut conflicts with another application, open ibus-setup, go to Emoji tab, and reassign the trigger key to something like Super + . (Windows key + period).

Method 3: KDE Plasma Emoji Picker

KDE Plasma 5.21 and later includes a built-in emoji picker panel widget.

Enabling the Emoji Picker on KDE

  1. Right-click on your taskbar and choose Add Widgets
  2. Search for Emoji Selector
  3. Drag it to your panel or desktop

Alternatively, open KRunner (press Alt + F2 or Alt + Space) and type emoji to launch the picker.

KCharSelect

KDE also ships KCharSelect, a full Unicode character browser:

sudo apt install kcharselect    # Debian/Ubuntu
sudo dnf install kcharselect    # Fedora

Launch it from your app menu, search for emojis by name or Unicode code point, select an emoji, and click Copy to Clipboard.

Method 4: Unicode Hex Input (Universal Method)

Every Linux desktop supports direct Unicode input — no additional software required. This works in GTK and Qt applications.

In GTK Apps (GNOME, Xfce, MATE)

  1. Place your cursor where you want the emoji
  2. Hold Ctrl + Shift, then press U
  3. Release all keys
  4. Type the Unicode code point (without the U+ prefix) — for example, 1F525 for 🔥
  5. Press Enter or Space

The emoji appears immediately. This works in Firefox, LibreOffice, Gedit, and most GTK applications.

Example Code Points

Emoji Code Point Hex Input
😀 U+1F600 1F600
🔥 U+1F525 1F525
❤️ U+2764 2764
👍 U+1F44D 1F44D
🎉 U+1F389 1F389
U+2705 2705

Method 5: Terminal Emoji Input

Printing Emojis in Bash

In any modern terminal with a Unicode-capable font, you can print emoji characters directly:

# Print a single emoji
echo "🔥"

# Using Unicode escape
echo -e "\U0001F525"

# In a variable
EMOJI=🎉
echo "Build complete $EMOJI"

Setting Up Your Terminal for Emoji

If emojis display as boxes or question marks in your terminal, the issue is almost always font-related. Install a font with full emoji support:

sudo apt install fonts-noto-color-emoji    # Debian/Ubuntu
sudo dnf install google-noto-emoji-fonts   # Fedora

After installing, restart your terminal. For best results in the terminal, configure your terminal emulator to use Noto Color EmojiColor Emoji
Emoji đầy màu sắc được hiển thị bằng hình ảnh bitmap hoặc đồ họa vector màu, trái ngược với cách hiển thị đơn sắc kiểu văn bản.
or TwemojiTwemoji
Bộ emoji mã nguồn mở ban đầu được Twitter tạo ra, cung cấp các tài nguyên emoji SVG và PNG có thể dùng trong bất kỳ dự án nào.
as a fallback font.

Setting the Locale

Ensure your locale is set to UTF-8UTF-8
Kiểu mã hóa Unicode có chiều rộng thay đổi, dùng từ 1 đến 4 byte cho mỗi ký tự, thống trị trên web (98%+ website sử dụng).
, which is required for proper emoji rendering:

echo $LANG    # Should output something like en_US.UTF-8

If not, configure your locale:

sudo locale-gen en_US.UTF-8
sudo update-locale LANG=en_US.UTF-8

Method 6: Third-Party Emoji Pickers

Several standalone emoji picker apps work across all Linux desktop environments:

emoji-picker-electron

A lightweight cross-platform emoji picker:

# Install via snap
snap install emoji-picker-electron

Bind it to a keyboard shortcut in your desktop's keyboard settings for instant access.

Rofi Emoji Plugin

If you use Rofi (a popular application launcher), the rofimoji plugin adds emoji search to Rofi's interface:

pip install rofimoji

Then trigger it with:

rofimoji

Bind this command to a global shortcut like Super + . in your desktop settings.

Quick Reference: Linux Emoji Methods

Method Desktop Shortcut / Command
GNOME built-in GNOME Ctrl + Shift + E in text field
GNOME Characters app GNOME App launcher → Characters
IBus emoji picker All (with IBus) Ctrl + Shift + E
KDE Emoji Selector KDE Panel widget or KRunner
GTK Unicode input GTK apps Ctrl + Shift + U → hex code
Terminal echo Terminal echo "🔥" or echo -e "\U1F525"
rofimoji All rofimoji (bindable)

Troubleshooting

Emojis appear as boxes: Install fonts-noto-color-emoji and restart your session.

Ctrl + Shift + E doesn't work: The shortcut is application-dependent in GNOME. Try it in Gedit or GNOME Text Editor first to confirm it works, then check if your target app overrides the shortcut.

IBus not starting automatically: Add export GTK_IM_MODULE=ibus and export QT_IM_MODULE=ibus to your ~/.profile or ~/.bash_profile.

Explore More on EmojiFYI

Công cụ liên quan

⌨️ Bàn phím Emoji Bàn phím Emoji
Duyệt và sao chép bất kỳ emoji nào trong số 3.953 emoji được sắp xếp theo danh mục. Hoạt động trên mọi trình duyệt, không cần cài đặt.
🔍 Trình phân tích chuỗi Trình phân tích chuỗi
Giải mã chuỗi ZWJ, modifier tông màu da, chuỗi phím và cặp cờ thành các thành phần riêng lẻ.

Thuật ngữ

Color Emoji Color Emoji
Emoji đầy màu sắc được hiển thị bằng hình ảnh bitmap hoặc đồ họa vector màu, trái ngược với cách hiển thị đơn sắc kiểu văn bản.
Điểm mã Điểm mã
Giá trị số duy nhất được gán cho mỗi ký tự trong tiêu chuẩn Unicode, được viết theo định dạng U+XXXX (ví dụ: U+1F600 cho 😀).
Emoji Emoji
Từ tiếng Nhật (絵文字) có nghĩa là 'ký tự hình ảnh' — các ký hiệu đồ họa nhỏ dùng trong giao tiếp kỹ thuật số để diễn đạt ý tưởng, …
Twemoji Twemoji
Bộ emoji mã nguồn mở ban đầu được Twitter tạo ra, cung cấp các tài nguyên emoji SVG và PNG có thể dùng trong bất kỳ dự án nào.
Unicode Unicode
Tiêu chuẩn mã hóa ký tự phổ quát gán một số duy nhất cho mỗi ký tự trong tất cả hệ thống chữ viết và bộ ký hiệu, bao gồm …
UTF-8 UTF-8
Kiểu mã hóa Unicode có chiều rộng thay đổi, dùng từ 1 đến 4 byte cho mỗi ký tự, thống trị trên web (98%+ website sử dụng).

Emoji liên quan

Bài viết liên quan