📖 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, emoji 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 Unicode 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 Emoji or TwemojiTwemoji
ชุดอิโมจิโอเพนซอร์สที่ Twitter สร้างขึ้นในตอนแรก ให้ไฟล์อิโมจิ SVG และ PNG ที่สามารถใช้ในโปรเจกต์ใดก็ได้
as a fallback font.

Setting the Locale

Ensure your locale is set to UTF-8UTF-8
การเข้ารหัส Unicode แบบความกว้างผันแปร ใช้ 1 ถึง 4 ไบต์ต่ออักขระ เป็นมาตรฐานหลักบนเว็บ (ใช้โดยเว็บไซต์กว่า 98%)
, 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

เครื่องมือที่เกี่ยวข้อง

⌨️ แป้นพิมพ์ Emoji แป้นพิมพ์ Emoji
เรียกดูและคัดลอก emoji จาก 3,953 ตัวที่จัดตามหมวดหมู่ ใช้งานได้ในทุกเบราว์เซอร์ ไม่ต้องติดตั้ง
🔍 ตัววิเคราะห์ลำดับ ตัววิเคราะห์ลำดับ
ถอดรหัสลำดับ ZWJ, ตัวปรับแต่งสีผิว, ลำดับ keycap และคู่ธงเป็นส่วนประกอบแต่ละชิ้น

คำในอภิธานศัพท์

Twemoji Twemoji
ชุดอิโมจิโอเพนซอร์สที่ Twitter สร้างขึ้นในตอนแรก ให้ไฟล์อิโมจิ SVG และ PNG ที่สามารถใช้ในโปรเจกต์ใดก็ได้
UTF-8 UTF-8
การเข้ารหัส Unicode แบบความกว้างผันแปร ใช้ 1 ถึง 4 ไบต์ต่ออักขระ เป็นมาตรฐานหลักบนเว็บ (ใช้โดยเว็บไซต์กว่า 98%)
โค้ดพอยท์ โค้ดพอยท์
ค่าตัวเลขเฉพาะที่กำหนดให้กับอักขระแต่ละตัวในมาตรฐาน Unicode เขียนในรูปแบบ U+XXXX (เช่น U+1F600 สำหรับ 😀)
ยูนิโค้ด ยูนิโค้ด
มาตรฐานการเข้ารหัสอักขระสากลที่กำหนดหมายเลขเฉพาะให้กับอักขระทุกตัวในทุกระบบการเขียนและชุดสัญลักษณ์ รวมถึงอิโมจิ
อิโมจิ อิโมจิ
คำภาษาญี่ปุ่น (絵文字) แปลว่า 'อักขระภาพ' — สัญลักษณ์กราฟิกขนาดเล็กที่ใช้ในการสื่อสารดิจิทัลเพื่อแสดงความคิด อารมณ์ และวัตถุ
อิโมจิสี อิโมจิสี
อิโมจิสีเต็มที่แสดงผลโดยใช้ภาพ bitmap หรือกราฟิกเวกเตอร์สี ต่างจากการแสดงผลแบบสีเดียวในสไตล์ข้อความ

Emoji ที่เกี่ยวข้อง

บทความที่เกี่ยวข้อง