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.
- Launch the Fcitx5 settings tool (
fcitx5-config-qt). - "Global Options" → change "Trigger Input Method."
Mozc Internal Key Bindings
For Mozc's conversion behavior, you can pick from MS-IME and ATOK styles.
- Fcitx5 settings → Input Method → Mozc → Configure.
- Key configuration: MS-IME / ATOK / Kotoeri.
Pick the one your hands are used to. If unsure, MS-IME.
Useful Key Operations (MS-IME Mode)
F6: convert to hiragana.F7: full-width katakana.F8: half-width katakana.F9: full-width alphanumeric.F10: half-width alphanumeric.Ctrl + Backspace: revert to before conversion.Shift + Space: cycle through conversion candidates in reverse.
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.
- Gear icon on the input bar → Dictionary Tool.
- Add to "User dictionary": reading, word, part of speech.
Examples of Words Worth Registering
- Proper nouns: company names, family members' names, place names, project names.
- Technical terms: commands and tool names that come up at work.
- Set phrases: "よろしくお願いいたします" → convert from
よ. - Email signatures, addresses, phone numbers.
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.
- Dictionary Tool → Tool → Import / Export from text file.
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.
- For: faster — candidates appear before you've finished thinking.
- Against: distracting; mistypes go up.
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.
- Dictionary Tool → Tool → Clear learning history.
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:
Filesystem:xdg-config/fcitx5:ro(orOther files: ~/.config/fcitx5:ro)Sockets:Wayland,Fallback to X11
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.
- GNOME: Settings → Accessibility → Keyboard → Repeat delay / speed.
- KDE: System Settings → Input Devices → Keyboard → Advanced.
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.
- Write a long passage colloquially, then have Claude rewrite it in formal or casual register.
- Have Claude translate context-aware between English and Japanese.
- Have Claude draft an email and edit it yourself.
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:
- Installed Fcitx5 + Mozc and set up the environment variables.
- Chose the toggle key and conversion style (MS-IME / ATOK).
- Started cultivating a user dictionary (exported as
my-mozc-dict.txt). - Learned how to tune predictive conversion and clear learning history.
- Checked app-specific behavior.
- Acquired the practice of using Claude as a Japanese drafting aid.
Where you are now:
- A Debian where Japanese input feels seamless.
- Your own user dictionary (backed up).
- Faster typing, physically, every day.
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.