LinuxCommandLibrary

im-launch

Launch input method (IM) applications

SYNOPSIS

im-launch [OPTION]... [--] [COMMAND [ARGS...]]

PARAMETERS

--help
    Display help message and exit

--version
    Output version information and exit

COMMAND [ARGS]
    Application to launch with IM support; defaults to /bin/sh

DESCRIPTION

im-launch is a wrapper script from the ibus package that initializes the Intelligent Input Bus (IBus) input method framework before executing a command. It ensures applications, especially those using GTK+, Qt, or X11, can access input methods like keyboard layouts, IMEs for CJK languages, or emoji pickers.

When run, it checks if ibus-daemon is active via ibus-daemon --replace &. If not, it starts the daemon. It then exports key environment variables: GTK_IM_MODULE=ibus, QT_IM_MODULE=ibus, XMODIFIERS=@im=ibus, CLUTTER_IM_MODULE=ibus, and GLib:GIO_MODULE_DIR for broader compatibility.

If no command is specified, it execs /bin/sh. This makes it ideal for wrapping application launchers in desktop environments like GNOME, KDE, or XFCE to enable seamless input method switching. Without it, apps might ignore input methods or fail to detect the daemon.

Common use: Add to ~/.xinitrc or session scripts: exec im-launch your-desktop-session. Supports X11 primarily, with partial Wayland integration via ibus 1.5+.

CAVEATS

X11-focused; Wayland requires ibus-portal or DE-specific setup. Does not start daemon if already running to avoid multiples.

USAGE EXAMPLE

im-launch firefox launches Firefox with IBus IME enabled.
im-launch -- gnome-session starts GNOME with IM support.

ENVIRONMENT SETUP

Exports: GTK_IM_MODULE=ibus, QT_IM_MODULE=ibus, XMODIFIERS=@im=ibus.

HISTORY

Developed as part of IBus project (started 2008 by Peng Gao et al. for Linux input methods). Integrated into major distros ~2010; version 1.5 (2014) added Wayland support. Maintained by Red Hat, Ubuntu teams.

SEE ALSO

ibus-daemon(1), im-config(1), ibus-setup(1)

Copied to clipboard