Skip to content

About

Lightweight native Windows EN/RU/JP layout & Japanese IME switcher. Features low-level WinAPI hook, instant Hiragana/Katakana toggle, cursor indicator, and tray icon.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

KanaKeySwitch

A small portable Windows utility for quickly switching between English, Russian, and Japanese input modes.

  • No installer required.
  • No administrator privileges required.
  • No NuGet packages or external libraries.
  • No network access.
  • Uses the Windows low-level keyboard hook (WH_KEYBOARD_LL) and Microsoft Japanese IME commands.

Requirements

  • Windows 10 or Windows 11
  • Microsoft Japanese IME
  • English, Russian, and Japanese keyboard layouts installed in Windows
  • .NET Framework available in Windows for building from source

Build

  1. Extract or clone the project to a permanent folder, for example:

    C:\Tools\KanaKeySwitch\

  2. Double-click build.cmd.

  3. Windows PowerShell builds KanaKeySwitch.exe.

  4. The EXE starts automatically after a successful build.

build.cmd uses the Windows PowerShell/.NET Framework tools already included with Windows.

Controls

English / Russian

Left Alt + Shift

  • EN ↔ RU
  • You can hold one key and repeatedly press the other.

Japanese

The following keys are used as KanaKeySwitch smart keys:

  • Right Alt
  • 変換
  • 無変換
  • カタカナ / ひらがな / ローマ字
  • ImeOn / ImeOff, when the keyboard reports those virtual keys

Behavior:

  • EN/RU → Japanese + Hiragana
  • Japanese/Hiragana → Katakana
  • Japanese/Katakana → Hiragana

These smart keys are intercepted by KanaKeySwitch while the program is running, so their original Windows/keyboard function is not passed through.

CapsLock

KanaKeySwitch does not intercept CapsLock. If CapsLock already switches Hiragana/Katakana in your Japanese IME configuration, KanaKeySwitch updates its indicator and tray icon after the key is released.

Indicator

  • ENG — blue
  • RUS — red
  • あ — purple
  • カ — orange

The indicator follows the mouse cursor and disappears after about 650 ms.

Tray menu

The tray icon shows the current language. For Japanese, it also shows the last detected Hiragana/Katakana mode.

The menu includes:

  • show/hide the cursor indicator;
  • enable/disable the dynamic tray icon;
  • enable/disable Windows autostart;
  • refresh the keyboard layout list;
  • show the last detected JIS key;
  • exit KanaKeySwitch.

Autostart

Autostart is disabled by default.

When enabled from the tray menu, KanaKeySwitch creates a user-level value named KanaKeySwitch under:

HKCU\Software\Microsoft\Windows\CurrentVersion\Run

No administrator privileges are required.

Uninstall / reset

KanaKeySwitch is portable and does not use a traditional installer.

Run uninstall.cmd to:

  1. stop KanaKeySwitch.exe if it is running;
  2. remove the Windows autostart value;
  3. remove KanaKeySwitch settings from HKCU\Software\KanaKeySwitch;
  4. delete KanaKeySwitch.exe from the project folder.

The uninstall script does not delete the source code, README, build scripts, or the project folder. After uninstalling, delete the remaining folder manually if you no longer need it.

Technical notes

KanaKeySwitch:

  • uses the native Windows low-level keyboard hook (WH_KEYBOARD_LL);
  • identifies Japanese keys by Windows Virtual-Key and scan code;
  • switches keyboard layouts with WM_INPUTLANGCHANGEREQUEST;
  • uses Microsoft Japanese IME VK_IME_ON commands:
    • VK_IME_ON → Hiragana
    • Shift + VK_IME_ON → full-width Katakana

License

MIT License. See LICENSE.


日本語

KanaKeySwitch は、英語・ロシア語・日本語の入力モードを素早く切り替えるための小さなポータブル Windows ユーティリティです。

  • インストーラー不要
  • 管理者権限不要
  • NuGet パッケージや外部ライブラリ不要
  • ネットワーク通信なし
  • Windows の低レベルキーボードフック (WH_KEYBOARD_LL) と Microsoft Japanese IME コマンドを使用

動作環境

  • Windows 10 / Windows 11
  • Microsoft Japanese IME
  • Windows に English / Russian / Japanese のキーボードレイアウトがインストールされていること
  • ソースからビルドする場合は Windows の .NET Framework

ビルド方法

  1. プロジェクトを恒久的なフォルダに解凍、または clone します。例:

    C:\Tools\KanaKeySwitch\

  2. build.cmd をダブルクリックします。

  3. Windows PowerShell が KanaKeySwitch.exe をビルドします。

  4. ビルド成功後、EXE が自動的に起動します。

操作方法

英語 / ロシア語

Left Alt + Shift

  • EN ↔ RU
  • 一方のキーを押したまま、もう一方を繰り返し押すこともできます。

日本語

以下のキーは KanaKeySwitch のスマートキーとして使用されます:

  • Right Alt
  • 変換
  • 無変換
  • カタカナ / ひらがな / ローマ字
  • キーボードが該当する Virtual-Key を出力する場合は ImeOn / ImeOff

動作:

  • EN/RU → 日本語 + ひらがな
  • 日本語/ひらがな → カタカナ
  • 日本語/カタカナ → ひらがな

KanaKeySwitch の実行中、これらのスマートキーはプログラムによってインターセプトされるため、本来の Windows/キーボード機能は実行されません。

CapsLock

KanaKeySwitch は CapsLock をインターセプトしません。現在の Japanese IME 設定で CapsLock がひらがな/カタカナを切り替える場合、キーを離した後にインジケーターとトレイアイコンを更新します。

インジケーター

  • ENG — 青
  • RUS — 赤
  • あ — 紫
  • カ — オレンジ

インジケーターはマウスカーソルを追従し、約 650 ms 後に消えます。

トレイメニュー

トレイアイコンには現在の言語が表示されます。日本語の場合は最後に検出されたひらがな/カタカナの状態も表示されます。

メニュー:

  • カーソルインジケーターの表示/非表示;
  • 言語に応じたトレイアイコンの有効/無効;
  • Windows 自動起動の有効/無効;
  • キーボードレイアウト一覧の更新;
  • 最後に検出した JIS キーの表示;
  • KanaKeySwitch の終了。

自動起動

自動起動はデフォルトで無効です。

トレイメニューから有効にすると、次の場所にユーザーレベルの KanaKeySwitch 値を作成します:

HKCU\Software\Microsoft\Windows\CurrentVersion\Run

管理者権限は不要です。

アンインストール / 設定の削除

KanaKeySwitch はポータブルアプリであり、通常のインストーラーは使用しません。

uninstall.cmd を実行すると:

  1. 実行中の KanaKeySwitch.exe を終了;
  2. Windows の自動起動設定を削除;
  3. HKCU\Software\KanaKeySwitch の設定を削除;
  4. プロジェクトフォルダ内の KanaKeySwitch.exe を削除します。

ソースコード、README、build スクリプト、プロジェクトフォルダ自体は削除しません。不要な場合は、アンインストール後に残ったフォルダを手動で削除してください。

ライセンス

MIT License。LICENSE を参照してください。


Русский

KanaKeySwitch — небольшая portable-утилита для Windows для быстрого переключения между английским, русским и японским вводом.

  • Установка не требуется.
  • Права администратора не требуются.
  • Нет NuGet-пакетов и внешних библиотек.
  • Нет сетевых подключений.
  • Используется Windows low-level keyboard hook (WH_KEYBOARD_LL) и команды Microsoft Japanese IME.

Требования

  • Windows 10 или Windows 11
  • Microsoft Japanese IME
  • Установленные в Windows раскладки English, Russian и Japanese
  • Для сборки из исходников — штатный .NET Framework Windows

Сборка

  1. Распакуйте или клонируйте проект в постоянную папку, например:

    C:\Tools\KanaKeySwitch\

  2. Запустите build.cmd.

  3. Windows PowerShell соберёт KanaKeySwitch.exe.

  4. После успешной сборки EXE автоматически запустится.

Управление

English / Russian

Left Alt + Shift

  • EN ↔ RU
  • Можно удерживать одну клавишу и повторно нажимать вторую.

Japanese

Следующие клавиши используются KanaKeySwitch как smart keys:

  • Right Alt
  • 変換
  • 無変換
  • カタカナ / ひらがな / ローマ字
  • ImeOn / ImeOff, если клавиатура отдаёт соответствующие Virtual-Key

Поведение:

  • EN/RU → Japanese + Hiragana
  • Japanese/Hiragana → Katakana
  • Japanese/Katakana → Hiragana

Пока KanaKeySwitch запущен, эти клавиши полностью перехватываются программой, поэтому их исходная функция Windows/клавиатуры не передаётся дальше.

CapsLock

KanaKeySwitch не перехватывает CapsLock. Если в вашей конфигурации Japanese IME CapsLock уже переключает Hiragana/Katakana, после отпускания клавиши программа обновит индикатор и tray icon.

Индикатор

  • ENG — синий
  • RUS — красный
  • あ — фиолетовый
  • カ — оранжевый

Индикатор следует за курсором мыши и исчезает примерно через 650 мс.

Tray menu

Tray icon показывает текущий язык. Для Japanese также отображается последний определённый режим Hiragana/Katakana.

В меню доступны:

  • включение/выключение индикатора у курсора;
  • включение/выключение динамической tray icon;
  • включение/выключение автозапуска Windows;
  • обновление списка раскладок;
  • просмотр последней определённой JIS-клавиши;
  • выход из KanaKeySwitch.

Автозапуск

Автозапуск выключен по умолчанию.

При включении через tray menu программа создаёт пользовательское значение KanaKeySwitch в:

HKCU\Software\Microsoft\Windows\CurrentVersion\Run

Права администратора не требуются.

Удаление / сброс настроек

KanaKeySwitch — portable-программа и не использует обычный установщик.

Запустите uninstall.cmd. Он:

  1. завершит KanaKeySwitch.exe, если программа запущена;
  2. удалит запись автозапуска Windows;
  3. удалит настройки из HKCU\Software\KanaKeySwitch;
  4. удалит KanaKeySwitch.exe из папки проекта.

Скрипт не удаляет исходный код, README, build-скрипты и саму папку проекта. После удаления программы оставшуюся папку можно удалить вручную.

Технические детали

KanaKeySwitch:

  • использует нативный Windows low-level keyboard hook (WH_KEYBOARD_LL);
  • определяет японские клавиши по Windows Virtual-Key и scan code;
  • переключает раскладки через WM_INPUTLANGCHANGEREQUEST;
  • использует команды Microsoft Japanese IME VK_IME_ON:
    • VK_IME_ON → Hiragana
    • Shift + VK_IME_ON → full-width Katakana.

Лицензия

MIT License. См. LICENSE.

About

Lightweight native Windows EN/RU/JP layout & Japanese IME switcher. Features low-level WinAPI hook, instant Hiragana/Katakana toggle, cursor indicator, and tray icon.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages