Linux上で擬似的に日本語入力を補助する最小ツールです。
- アプリ側にはIMEを入れず、このツール側で日本語を入力します
Enterで確定した文字列をクリップボードへコピーします- 任意で、直前のX11ウィンドウへ
Ctrl+Vを自動送信できます - KDE Wayland では
ydotoolを使ってAlt+Tabの後にCtrl+Vを送る試験対応があります - 複数行入力、クイック入力、トレイ常駐、下書き復元、履歴、貼り付け診断に対応しています
- Linuxデスクトップ環境
fcitx5またはibusなど、日本語入力できるIMEがOS側で動作していることpixiがインストールされていること- 自動貼り付けは
xdotoolが使えるX11またはXWayland環境であること - KDE Wayland の自動貼り付けは
ydotoolとydotooldが使えること
Input JP は自動貼り付けをオンにした時、またはWayland貼り付け実行時に、ydotoold のソケットが無ければ自動起動を試みます。
pixi run start初回実行時に python と pyside6 がPixi環境へ入ります。
構文チェックだけ行う場合:
pixi run checkMozc/Fcitx が入っているのに特定アプリで日本語入力できない場合の診断:
pixi run ime-doctor
pixi run ime-advice -- code対象アプリを補正付きで起動する場合:
pixi run ime-launch --profile auto -- code
pixi run ime-launch --profile xwayland -- code
pixi run ime-steam入力先から呼び出して、Enterで貼り付けてトレイへ戻す場合:
pixi run quickマウスカーソル付近に表示する場合:
pixi run cursor
pixi run quick-cursor
pixi run game-inputアプリメニューへ登録する場合:
pixi run install-desktopKDEなどのグローバルショートカットには、次のようにmanifestを明示したコマンドを登録すると安定します。
pixi run --manifest-path /home/kw4/Work/Tools/input-jp/pixi.toml quick
pixi run --manifest-path /home/kw4/Work/Tools/input-jp/pixi.toml quick-cursorおすすめの割り当て:
Meta+J: 入力補助を呼ぶ意図が分かりやすく、アプリ側の通常ショートカットと衝突しにくいですMeta+Alt+J: 誤爆をさらに減らしたい場合の候補ですCtrl+Space、Alt+Space、Meta+VはIME、ランチャー、クリップボード系と被りやすいので避けるのがおすすめです
- 入力欄に日本語を入力します。改行は
Shift+Enterです Enterを押すと文字列を確定し、クリップボードへコピーします前のウィンドウへ自動貼り付けをオンにしていれば、X11では直前ウィンドウへCtrl+Vを送ります- KDE Wayland では
ydotoolでAlt+Tabを送り、その後Ctrl+Vを試みます 確定後クリアがオンなら、コピーまたは貼り付け成功後に入力欄を空にして次の入力へ戻ります- 自動貼り付けがオフの場合は対象アプリへ手動で貼り付けます
モード切り替え:
- 画面上部の
モードで通常入力とクイック入力を切り替えられます - トレイメニューから
通常入力で表示/クイック入力で表示を選べます - トレイメニューからカーソル付近に表示する項目も選べます
pixi run startは通常入力、pixi run cursorは通常入力をカーソル付近、pixi run quickはクイック入力、pixi run quick-cursorはクイック入力をカーソル付近に表示しますpixi run game-inputはquick-cursorと同じ動作で、Steam/Protonゲーム向けのショートカット名です
クイック入力:
- 入力したいテキストボックスにカーソルを置きます
- グローバルショートカットなどから
pixi run quickを呼び出します - Input JPで日本語を入力します
Enterで元の入力先へ貼り付けます- 貼り付け後、Input JP は終了せずタスクトレイへ隠れます
補足:
Ctrl+Enterで手動コピーできますEscで未確定の入力を取り消せます。クイック入力ではトレイへ隠れます前のウィンドウへ貼り付けボタンで、最後に追跡したウィンドウへ手動貼り付けできます貼付先固定、またはCtrl+Lで、現在追跡しているX11/XWaylandウィンドウを貼り付け先に固定できます- 画面下部に現在の貼り付け先ウィンドウを表示します
Enterでコピーをオフにすると、Ctrl+Enterかボタンでだけコピーします常に手前をオンにすると、他アプリの前に置きやすくなります確定後クリアをオフにすると、確定後も入力欄の内容を選択状態で残します貼付遅延で KDE Wayland のAlt+Tab後に待つ時間を調整できます履歴から選択で最近コピーした文字列を戻せます履歴管理で履歴を検索、削除、全削除、入力欄へ戻す操作ができます- 定型文はメイン画面には出さず、必要な場合だけ履歴管理内のタブから整理できます
診断でxdotool、ydotool、ydotoold、ソケット、貼り付け先を確認できます- 未確定の入力は下書きとして保存され、次回起動時に復元されます
- ウィンドウを閉じると、可能な環境では終了せずタスクトレイへ隠れます。終了はトレイメニューの
終了から行います IME互換診断またはpixi run ime-doctorで、Mozc/Fcitx、Wayland、Electron/Chromium向け補正候補を確認できますEnterでコピー、自動貼り付け、常に手前、確定後クリア、貼付遅延、履歴、定型文、ウィンドウ位置は次回起動へ引き継がれます- KDE Wayland の貼り付け先表示は厳密なウィンドウIDではなく、KDEの
Alt+Tabで戻る直前ウィンドウの想定です
Mozc が入っていても、アプリ側が Wayland の text-input、XIM、GTK/Qt IM module、Electron/Chromium の起動フラグに乗らない場合は日本語入力できません。Input JP はこのケースを、アプリ別の起動補正と貼り付けfallbackで扱います。
診断:
pixi run ime-doctorアプリ別の候補表示:
pixi run ime-advice -- <app>補正付き起動:
pixi run ime-launch --profile auto -- <app>
pixi run ime-launch --profile electron-wayland -- <electron-app>
pixi run ime-launch --profile chromium-wayland -- <chromium-app>
pixi run ime-launch --profile steam -- steam
pixi run ime-launch --profile xwayland -- <app>auto は既知の Electron/Chromium 系アプリには Wayland IME 用の起動フラグを足し、それ以外には Fcitx 向け環境変数を補います。Wayland ネイティブでだめなアプリは xwayland で XIM 経路へ逃がせる場合があります。Flatpak アプリはアプリIDごとの環境変数 override が必要になることがあります。
Steam は通常のGTK/Qtアプリとは違い、起動済みのSteamへコマンドを転送することがあります。補正を試す場合は Steam を完全終了してから次で起動してください。
pixi run ime-steamKDEなどのアプリメニューから補正付きSteamを起動したい場合:
pixi run install-steam-desktopこれで Steam (IME互換起動) という別ランチャーを ~/.local/share/applications/steam-input-jp.desktop に作成します。通常のSteamランチャーは上書きしません。
このprofileは GTK_IM_MODULE=xim と XMODIFIERS=@im=fcitx を使い、SteamをXIM/XWayland寄りで起動します。Steam内の一部CEF入力欄がそれでもIMEを受けない場合は、pixi run quick-cursor をfallbackとして使います。
Steam配下のゲームも含めて毎回個別起動するのが大変な場合は、2段階で広げます。
pixi run compat-on戻したい場合:
pixi run compat-off状態確認:
pixi run compat-statuscompat-on は ~/.config/environment.d/90-input-jp-ime.conf にKDE Wayland向けの最小限の基本環境変数を入れ、さらに ~/.local/share/applications/steam.desktop を作成して通常のSteamランチャー自体を steam profile 経由にします。既存のローカル steam.desktop がある場合は steam.desktop.input-jp.bak に一度だけバックアップします。Steamをこの経路で起動すると、Steamから起動されるネイティブゲームも基本的には同じIME環境を継承します。
KDE WaylandでWayland input method frontendが動いている場合、GTK_IM_MODULE と QT_IM_MODULE は全体設定しません。GTK/Qtの互換変数が必要なアプリには、ime-launch --profile fcitx-env、xwayland、steam などの個別profileで付けます。
compat-off はInput JPが生成したセッション環境ファイルを .disabled に退避し、Input JP管理のSteam上書きを削除またはバックアップから復元します。反映にはログアウト/ログインと対象アプリの再起動が必要です。
個別に切り替えたい場合:
pixi run install-session-env
pixi run disable-session-env
pixi run install-steam-override
pixi run disable-steam-overrideProton/Windowsゲームや独自入力欄はLinuxのIME経路を受けない場合があります。その場合は pixi run quick-cursor fallbackを使います。
それでも独自入力欄がIME経路を受けない場合は、pixi run quick-cursor をfallbackとして使います。
Master Duel のように変換ウィンドウは出るのに入力欄へ確定文字が入らない場合、Fcitx側は動いていますが、Wine/Proton内のゲーム入力欄へcommit文字列が渡っていません。この場合、Steamやセッション環境をさらに調整しても改善しないことがあります。
ゲーム内の入力欄にカーソルを置いた状態で、KDEなどのグローバルショートカットから次を呼び出してください。
pixi run --manifest-path /home/kw4/Work/Tools/input-jp/pixi.toml game-inputInput JP側で変換して Enter すると、クリップボード経由でゲームへ貼り付けを試みます。ゲーム側が Ctrl+V を受け付けない入力欄では、このfallbackも効かない場合があります。
- X11 と XWayland では、貼り付け先は
xdotoolが最後に検出した自分以外のアクティブウィンドウです pixi run quickは既にInput JPが常駐している場合、新しいプロセスを増やさず既存のInput JPへ表示要求を送ります- 貼り付け先固定はX11/XWaylandの追跡対象に対する固定です。KDE Wayland の
ydotool経路ではAlt+Tab先を使います - KDE Wayland の貼り付け先は厳密なウィンドウIDではなく、KDEの
Alt+Tabで復帰する直前ウィンドウです - KDE Wayland でXWayland対象を検出できた場合は、
xdotool経路を優先します - 対象アプリ側がUTF-8や日本語フォントに非対応だと、貼り付け後に文字化けや豆腐表示になることがあります
- KDE Wayland の
ydotool経路はベストエフォートです。KDEのAlt+Tab割り当てが既定に近いことを前提にしています