Chapter 10 / Book
Chapter 10 № 10 · 2026

Chapter 10 — Setting Up Japanese Input

Polish Fcitx5 + Mozc into something you can use every day

Why Devote a Whole Chapter to Japanese Input

Browser, mail, documents, chat — in the end, all of it comes down to typing Japanese. The comfort of Japanese input is one of the biggest factors in whether you can keep using Debian.

Hands trained on Windows MS-IME or the macOS Kotoeri family feel real friction when conversion behavior is even slightly different. This chapter polishes Fcitx5 + Mozc until you can use it every day "without noticing it."

Section 1 — First, Check: It's Probably Already Installed

On Debian 13, picking Japanese as the language in the installer is enough to bring Fcitx5 + Mozc in automatically. In most cases, the moment you log into the desktop, the Hankaku/Zenkaku key already toggles Japanese input.

So start by checking.

# Is Fcitx5 installed?
dpkg -l | grep -E '^ii  (fcitx5|fcitx5-mozc)'

# Current input-method configuration
im-config -l

If both fcitx5 and fcitx5-mozc appear, and Japanese input works on the Hankaku/Zenkaku key, you can skip the rest of Section 1 and jump to Section 2 ("Basic Key Bindings"). The real body of this chapter is the polishing work that comes after.

If It Isn't There, or Isn't Activated

Only if you installed in an English-only environment, or if something is missing, run:

sudo apt install fcitx5 fcitx5-mozc fcitx5-config-qt fcitx5-configtool im-config

# Set fcitx5 as the input method
im-config -n fcitx5

# Log out and back in, or reboot

On GNOME, input methods are passed through differently between Wayland and X11. GNOME on Debian 13 defaults to Wayland. Fcitx5's Wayland support has progressed, but problems may remain in older apps.

Setting Environment Variables

Place the following in ~/.pam_environment or under ~/.config/environment.d/ (whether they're needed varies by DE and login manager).

GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus

The last line, GLFW_IM_MODULE=ibus, is a trap to know about. GLFW-based apps (some games and certain editors) recognize Fcitx5 even when this is set to ibus, so leaving it in covers more cases.

Ask Claude ①: Confirm Environment Variables

On my Debian 13 [DE name], I want to verify the Japanese-input environment variables. I'm pasting the output of:

$ env | grep -iE '(xim|im_module|modifiers)'
[output]

Please judge whether this configuration enables Japanese input across all of: browser, terminal, GTK apps, Qt apps, VSCode, and Electron apps. If anything is missing or unnecessary, give me the steps to fix it.

Section 2 — Basic Key Bindings

Choosing the Toggle Key

The default is Ctrl + Space to switch between Japanese and alphanumeric. If you use a Japanese keyboard, bind it to the Hankaku/Zenkaku key or the Katakana/Hiragana key so it matches the action your hands already know.

Mozc Internal Key Bindings

For Mozc's conversion behavior, you can pick from MS-IME and ATOK styles.

Pick the one your hands are used to. If unsure, MS-IME.

Useful Key Operations (MS-IME Mode)

Section 3 — Cultivating the User Dictionary

Register the vocabulary you use every day in the dictionary. Six months from now, the difference between doing this and not doing this is large.

How to Register

A word converted once in Mozc stays in internal history, but for frequent words, register them explicitly.

Examples of Words Worth Registering

Ask Claude ②: Candidate Words for Registration

I am [your industry / role]. Of the Japanese I type every day, please list 20 words in each of the following categories that, if registered in the dictionary, would speed me up: (1) Proper nouns and technical terms specific to my work. (2) Set phrases for email and chat. (3) Kanji you guess I find slow to enter (educated guess).

Add the "reading" and "part of speech" for each word.

Cherry-pick from what comes back and register it yourself.

Export and Import

The user dictionary can be exported as a text file. Carry it across to another PC or a reinstall.

This dictionary file is worth managing under Git as my-mozc-dict.txt. A dictionary you've grown over years is your asset.

Section 4 — Tune Conversion Behavior

Predictive Conversion On / Off

Predictive conversion (suggestions appearing as you type) divides people.

Fcitx5 settings → Mozc → Properties → Input assistance: turn predictive input on / off.

Half-Width vs. Full-Width Symbols

If you want to enter symbols like !, ?, ( in half-width form, Mozc supports fine-grained control like "Japanese punctuation, but half-width alphanumerics."

Reset Learning

Use it for a while and conversion learning can drift, putting weird candidates first.

Doing this once every six months brings things back into shape.

Section 5 — App-Specific Behavior

Browsers (Firefox / Chromium)

These work without much trouble. If candidates don't appear or you can't reconvert, restart the browser.

Zed

Rust + GPU rendered. IME integration usually just works without extra configuration. If inline preedit during composition doesn't appear, restart Zed once, or check the "Wayland: shared input state" option in fcitx5-configtool.

Neovim (in a terminal)

Goes through the terminal emulator's IME path. Convention: IME off while writing code, on while writing comments. Vim's built-in set keymap=japanese-kana exists but isn't recommended in this book.

PyCharm Community (JetBrains family)

JDK quirks can occasionally shift the candidate window position. Mostly fixed in current releases. If issues remain, follow the official JetBrains note about ensuring fcitx5-frontend-gtk3 is present, or set the JetBrains Runtime flags as documented.

Flatpak Apps in General

If a Flatpak app can't do Japanese input, the sandbox typically can't reach the IME. In Flatseal, allow:

Ask Claude ③: App-Specific Behavior Check

The apps I use Japanese input in are [list]. Does Fcitx5 + Mozc work properly in each? List the issues that have been reported in the past, with workarounds.

Section 6 — Key Repeat and Input Speed

The faster you type, the more key-repeat settings matter.

Shortening the delay and increasing the speed makes selection-extension and arrow-key navigation faster.

Section 7 — AI-Assisted Japanese Input

Claude isn't a replacement for Japanese input, but it is an aid.

If you drop the assumption that "I have to type every word myself," Japanese input takes a different place in your day. That said, always re-read important text yourself. Claude can miss honorifics or industry conventions in Japanese.

Ask Claude ④: How to Use Claude as a Japanese Drafting Aid

I am in [industry], and I write [emails / meeting minutes / reports] N each per day. Tell me five practices for letting Claude draft Japanese text: (1) The shape of the instruction (what / to whom / how polite). (2) How to teach Claude my own writing style. (3) Self-check points after the draft. (4) Kinds of writing I should not delegate to Claude. (5) The balance between efficiency and responsibility.

Summary

What you did in this chapter:

  1. Installed Fcitx5 + Mozc and set up the environment variables.
  2. Chose the toggle key and conversion style (MS-IME / ATOK).
  3. Started cultivating a user dictionary (exported as my-mozc-dict.txt).
  4. Learned how to tune predictive conversion and clear learning history.
  5. Checked app-specific behavior.
  6. Acquired the practice of using Claude as a Japanese drafting aid.

Where you are now:

In Chapter 11, "Choosing Applications," we work through, with Claude, what to replace each Windows app with on Debian. Browser, mail, office, image / video, communication tools, file sync, password management — sorted out one at a time.


The full series can be navigated from Learning Debian with Claude — All chapters. Comments and discussion go to the Facebook group: AISeed — Biodiversity, Food, AI and Life.