Guides

Tamil Keyboard on Linux: IBus and Fcitx 5 Setup

தமிழ் தட்டச்சு

Choose your Tamil method, install its input engine, and add it to your desktop’s input sources.

Updated By TypeTamilOnline EditorialHow we check guides

Short answer

On Ubuntu with GNOME, install ibus-m17n, sign out and back in, then add a Tamil source in Settings > Keyboard > Input Sources. GNOME switches with Super + Space. Fcitx 5 users need the fcitx5-m17n engine instead.

Choose a Layout and an Input Framework

Linux setup depends on your desktop and distribution. GNOME’s input-source picker handles keyboard layouts and installed IBus engines. KDE and other desktops can use Fcitx 5. The m17n database supplies Tamil methods to both IBus and Fcitx 5 through their respective m17n engines.

Start with Tamil99 if you learned that layout, InScript if you know its fixed keys, or phonetic or ITRANS if you want English-letter input. These last two use different rules; neither should be treated as a universal Tanglish dictionary.

m17n MethodChoose It For
ta-tamil99Tamil99 key positions.
ta-inscriptThe InScript layout.
ta-phoneticPhonetic English-key input.
ta-itransITRANS transliteration conventions.

The current m17n package also includes ta-inscript2, ta-lk-renganathan, ta-remington, ta-typewriter and ta-vutam. Availability and displayed names depend on the installed database version. A plain Tamil hardware layout in the picker is separate from an m17n input method.

Set up IBus on Ubuntu With GNOME

  1. Install the m17n engine from your distribution’s repository. On Ubuntu, the package is ibus-m17n:
    sudo apt install ibus-m17n
    Review the package-manager prompt before proceeding.
  2. Sign out and sign in again so the desktop can discover the installed input methods.
  3. Open Activities, search for Keyboard, and open Settings > Keyboard.
    GNOME Keyboard settings with Add Input Source outlined in green under the source list
    1. Add a source under Keyboard settings. Illustration of the GNOME screen
  4. Under Input Sources, select + Add Input Source…, select or search for Tamil, select your chosen method, then press Add. The picker may label an m17n method with its short name and “m17n”.
    GNOME input source picker showing example installed m17n methods with tamil99 selected
    2. Select an installed Tamil input method and choose Add. Illustration of the GNOME screen
  5. Select the source in the top-bar input menu. Test it in a text editor before starting your document.
    GNOME top bar input indicator and open menu with the Tamil tamil99 m17n source highlighted
    3. Choose Tamil in the top-bar input menu. Illustration of the GNOME screen

Switch Sources in GNOME

Use Super + Space for the next source and Shift + Super + Space for the previous one. Super is usually the Windows-logo key. Change these under Keyboard Shortcuts > View and Customize Shortcuts > Typing. The top-bar input menu also lets you choose a source directly.

GNOME text-editor-style document with the Unicode Tamil word தோட்டம் and a caret outlined
4. Check a short Tamil word before writing your document. Illustration of the GNOME screen

Fedora and Other Distributions

Use your distribution’s package manager to install the IBus m17n engine and m17n database. Package names and desktop defaults can differ, so the Ubuntu apt command is not a Fedora command. On a GNOME desktop, follow the same input-source picker steps once the engine is installed.

Use Fcitx 5 Instead of IBus

  1. Install Fcitx 5, its configuration tool and the fcitx5-m17n engine using your distribution’s packages.
  2. Follow Fcitx’s distribution-specific setup instructions linked below. On Debian and Ubuntu, its documentation describes selecting fcitx5 through im-config. Sign out and back in after changing the framework.
  3. Open the Fcitx 5 configuration tool and add your Tamil m17n method. Include an English keyboard in the group so you can switch back.
  4. Review the configured trigger and input-method switching keys in Fcitx rather than assuming GNOME’s shortcuts control it.

Use one active input framework for the session. Do not launch a second framework as a quick fix for a missing method. Fcitx’s Wayland and environment setup varies by desktop; follow its official instructions for your session.

Fix Missing Tamil Methods

Only a Plain Tamil Keyboard Appears

Check that the m17n engine package is installed, then sign out and back in. If GNOME hides a rare variant, its documentation gives this setting to expose all sources:

gsettings set org.gnome.desktop.input-sources show-all-sources true

Reopen the picker afterward. This reveals available sources; it does not install missing engines.

The Keys Do Not Match Your Chart

Check the method name. ta-inscript and ta-tamil99 use different positions. Open the source’s options and choose View Keyboard Layout for layouts that offer it. Practise with our Tamil99 and InScript tools, leaving the system source on English for online practice.

Phonetic Spelling Gives an Unexpected Result

Check whether you selected phonetic or ITRANS, then use that method’s help rather than guessing its spellings. If you need a browser-based English-letter alternative, use our online Tamil typing tool. Copy a short test into your destination app before writing more.

Questions People Ask

Which Linux Tamil keyboard is easiest?

Choose a layout you already know. Tamil99 and InScript use fixed key positions; phonetic and ITRANS follow separate English-letter conventions. Start with one method and test its rules in a short phrase. Use the input-source preview where available, then compare it with the matching chart before building speed.

Why is ta-phonetic missing in Ubuntu?

The m17n engine may not be installed or discovered by the current session. Install ibus-m17n, sign out and back in, and reopen the input-source picker. Check that your desktop actually uses IBus before installing its engine. For a Fcitx session, follow the Fcitx setup instead of assuming an IBus package will configure it.

Is IBus the same as m17n?

No. IBus is an input framework. Its m17n engine uses input-method definitions from the m17n database. Think of the framework as the connection to your applications and the method as the typing rules. Check both when a Tamil method is absent from the picker, rather than downloading an unrelated font.

Can I use Fcitx 5 for Tamil?

Yes. The fcitx5-m17n engine provides access to m17n methods. Follow the official setup instructions for your desktop. Confirm the input framework selected by your session before installing integration packages. Tamil layout definitions come from m17n; choose the method matching your practice chart and test it in the destination application.

Can I type Tamil without installing Linux packages?

Yes. Our online Tamil typing, Tamil99 and InScript tools run in the browser. Keep the system layout on English while using them. Copy the finished text into the destination application when you are done. This works within the browser editor and does not add a desktop input source for all your other programs.

How can I preview a Tamil layout before using it in GNOME?

In Settings, find the Input Sources list, open the menu beside the source, and choose View Keyboard Layout. Compare it with the method you intended to add. A Tamil language label alone is not enough to distinguish layouts. If the required m17n method is absent, follow the package setup steps on this page before choosing a substitute.

Why does GNOME switch back to English in another window?

Check whether input sources are configured separately for each window. GNOME lets you use the same source in all windows or retain different sources per window. Choose the behaviour you prefer in the input-source settings, then test two application windows. This is a desktop setting, so changing a Tamil font or reinstalling the m17n database is not the first step.

Which m17n method names should I look for when adding Tamil?

Look for the method that matches your intended layout, such as ta-tamil99, ta-inscript, ta-phonetic or ta-itrans. These are separate definitions, not interchangeable names. The desktop may present friendlier labels. Check a short key sequence after selecting one, and use the package file list in Sources to confirm which definitions your distribution actually includes.

Does installing ibus-m17n automatically configure Fcitx 5?

No. IBus and Fcitx 5 are separate frameworks, and their m17n integration packages are different. Follow the Fcitx documentation linked in Sources if that is the framework your desktop uses. Install its m17n engine and configure the session as instructed there. Avoid adding several frameworks at random when troubleshooting; first identify which one is responsible for input in your current desktop session.

Why does the online Tamil keyboard behave differently from Linux ta-phonetic?

They use different input engines, so their English-letter conventions need not match. Keep the Linux source on English when using our browser editor, and let the page handle transliteration. Select your Linux Tamil method when typing directly in another application. If you want fixed positions instead of spelling conventions, practise one layout such as Tamil99 or InScript and select its matching system method.

Sources

Every step on this page was checked against these official pages on . Menu names can change with software updates. If yours look different, tell us.

  1. GNOME Help: Alternative Keyboard Layouts help.gnome.org
  2. Ubuntu: IBus m17n Package packages.ubuntu.com
  3. Arch Linux: Full m17n Tamil Input Method File List archlinux.org
  4. Fcitx: Set Up Fcitx 5 fcitx-im.org
  5. Fcitx: Input Method Engines fcitx-im.org