日本語も、コードも。入力の流れを止めない。
打ちながら変換。必要なときだけ、日本語へ。 Windows 11 向けの、ローカルで動く日本語 IME。
ライブ変換が、入力中の読みをかな漢字交じりの文章へ変えていきます。 変換結果が合っていれば、そのまま続きを。候補を選び直したいときだけ、Space を使います。
日本語を打つ ──→ 入力中に変換 ──→ Enter で確定
│
候補を変えたいときは Space
長文入力では、先頭の文節を順次自動確定します。最後に残った入力は Enter で確定。 ライブ変換をオフにして、Space で変換する使い方もできます。
コードやコマンドの合間に、日本語のコメントをひと言。 一時かな入力なら、半角英数モードで F8 を押して日本語を入力し、確定すると自動で半角英数へ戻ります。
半角英数 ── F8 ──→ 日本語を入力 ── Enter で確定 ──→ 半角英数
戻す操作は不要
日本語を続けて書くときは、通常の日本語モードも使えます。 一時かな入力は、いつもの入力方法を置き換えるのではなく、選べるもう一つの使い方です。
対応環境:Windows 11 x64。基本のかな漢字変換に、ニューラル変換用の GPU やモデルは不要です。
- 最新リリースの Assets から、
nospacekey-setup-で始まる .exe をダウンロードします。 - インストーラを実行します。IME の登録には管理者権限が必要です。
- Win + Space で nospacekey を選びます。
Important
ファイル名に -devsigned を含む版は、開発用証明書で署名されています。Windows SmartScreen の警告が表示される場合があります。
配布元がこのリポジトリの Releases であることを確認し、実行するか判断してください。ダウンロードしたファイルは、リリース添付の SHA256SUMS.txt と照合できます。
まずは日本語を入力し、ライブ変換を試してみてください。ライブ変換は既定でオンです。
英数を中心に使う場合は、言語バーの「設定」から 一般 → 新しいアプリの入力モード → 半角英数で始める をオンにします。新しいアプリを開き、F8 で一時かな入力を試せます。
「半角英数で始める」は既定ではオフです。日本語中心の使い方なら、変更する必要はありません。
アンインストールするには
Windows の「設定 → アプリ」から nospacekey をアンインストールしてください。使用中のアプリに IME が読み込まれている場合は、Windows の再起動が必要になることがあります。
以下は既定のキー設定です。
| やりたいこと | 操作 |
|---|---|
| 日本語・半角英数を切り替える | 入力していないときに 半角/全角、または Alt + ; |
| 半角英数から、一時的に日本語を入力する | 入力開始前に F8。確定すると半角英数へ戻ります |
| 入力を確定する | Enter |
| 手動で変換・候補を選び直す | Space で文節を変換。もう一度押すと候補一覧を表示 |
| 変換する文節を移動する | 変換中に ← / → |
| 文節の区切りを変える | 変換中に Shift + ← / →。変更した区間は Space で再変換 |
| 打ち間違いの修復候補を出す | 読みの入力中に Tab |
F8 の役割は入力状態で変わります。上の一時かな入力は未確定文字列がないときの操作で、変換中の F8 は半角カナへの表記変換です。機能キーの割り当ては、設定の「キー設定」から変更できます。
もっと便利に使う:再変換・英字・記号・辞書・外観
| 機能 | できること |
|---|---|
| モードレス再変換 | 半角英数で打ったローマ字を選択し、変換 または Alt + / で後から日本語化 |
| 英字の入力 | 日本語入力中に Shift + 英字で、英語入力モードへ。既定では確定まで英字入力が続きます |
| 記号の幅 | ; や : などの記号は既定で半角。全角にする記号も個別に選択できます。数字・句読点の幅は別設定です |
| 読みモニタ | ライブ変換中も、打っている読みを小窓で確認できます |
| 学習・ユーザー辞書 | 変換履歴の学習や単語登録に対応。学習の無効化・履歴の消去もできます |
| 外観 | ライト/ダーク、フォント、配色などを調整できます |
Zenzai は、文脈を考慮して候補を選ぶニューラル変換です。対応する Vulkan GPU・ドライバ・実行環境とモデルがそろった場合に利用できます。
| 変換方式 | 必要なもの |
|---|---|
| 通常のかな漢字変換 | 本体のインストールのみ。追加モデルは不要 |
| Zenzai ニューラル変換 | Vulkan 対応 GPU・ドライバ・実行環境と GGUF モデル |
Zenzai を利用できない環境では、通常のかな漢字変換で動作します。
インストーラの「Zenzai(ニューラル変換)を使用する」は既定で選択されています。不要なら解除してください。モデルは、インストール後に設定画面から取得することもできます。
インライン予測を試す(アルファ版・既定オフ)
明示的に確定した文章の続きを、薄い文字で提案する機能です。→ または End で受け入れ、Esc で閉じます。
専用モデルの取得と Vulkan 対応 GPU が必要です。推論はローカルの GPU で行い、GPU を利用できない場合は予測を無効にして通常変換を続けます。設定画面から有効にできます。
アルファ版のため、動作や仕様は今後変更される可能性があります。
変換・学習・予測はローカルで処理し、入力内容を外部 API へ送りません。テレメトリやクラッシュレポートの自動送信もありません。
モデルの取得や更新確認では通信が発生します。自動アップデート確認は既定でオフで、有効にしても更新を自動でダウンロード・インストールすることはありません。
パスワード/PIN 入力欄を検出した場合は、変換・学習・予測を行いません。詳しくはプライバシー方針をご覧ください。
master・main・beta への push、Pull Request、Actions の「Run workflow」では、版宣言の整合性、採番・予約の単体テスト、設定UIの静的チェックと単体テストを実行します。
配布用の Windows build and verification は、ソースの製品版と厳密に一致する軽量タグ v<version> の新規pushでだけ実行します。対応する版は安定版 1.7.0 またはベータ版 1.7.0-beta.9 の形式です。注釈付きタグ、タグの更新・削除・force push、PRや手動workflow実行では製品ビルドを行いません。
タグだけでは再実行の重複を防げないため、操作者がcreate-onlyの予約receiptを作り、ソースcommit・リポジトリID・run ID・attemptを固定します。予約を検証できた1回だけ、CI接尾辞のない製品版でビルド・署名します。操作順序と失敗時の扱いは採番と配布物の同一性を参照してください。Actionsの権限は contents: read で、Releaseの公開や添付はユーザーが手動で行います。
実行結果の Artifacts → nospacekey-windows-x64-<run ID>-<試行番号> に、開発用証明書で署名したインストーラ、SHA256SUMS.txt、BUILD-INFO.json が入ります。保存期間は30日で、SmartScreenの警告が出る場合があります。
CIは設定UI・Rust・Swift・実エンジンとのIPCを検証します。続いて別のクリーンなWindows VMに同じ署名済みインストーラを入れ、配布ファイルのハッシュ、IME登録、キー操作・変換シナリオ、使用アプリを閉じた後のアンインストールを確認します。結果は verify-install ジョブと windows-verification-report-<run ID>-<試行番号> に残ります。検証成功後だけ nospacekey-release-ready-<run ID>-<試行番号> に同じexeと手動公開用bundleを用意します。検証のみの再実行では元のartifact ID・元のattempt・同じ署名済みファイルを再使用します。製品ビルドの再実行は既存予約により拒否します。
物理GPUでの推論、JISキーボードの実打鍵、Wordでの操作、旧版からの更新はこのCIの対象外です。GPUがない環境でもVulkan対応バイナリをビルドし、通常のかな漢字変換を検証します。
ビルドに必要なスクリプト・llama.cppパッチ・共有テストデータはこのリポジトリに含まれ、非公開リポジトリや開発者PCへのアクセスは不要です。
不具合や機能の提案は Issues へ。Windows のバージョン、nospacekey のバージョン、入力先アプリ、再現手順があると調査の助けになります。入力例に個人情報や機密情報を含めないでください。
現在、Pull Request は受け付けていません。脆弱性の報告方法は SECURITY.md をご覧ください。
内部構成
Windows の入力処理を担う TSF 層を Rust、変換エンジンホストを Swift で実装しています。両者は別プロセスで動作し、名前付きパイプの JSON IPC で通信します。
入力先アプリ
│
└─ TSF / TIP(Rust)
│ 名前付きパイプ / JSON
└─ 変換エンジンホスト(Swift)
└─ かな漢字変換 / Zenzai
設定アプリ:Tauri
インストーラ:Inno Setup
| ディレクトリ | 役割 |
|---|---|
crates/tip |
TSF テキスト入力プロセッサ |
crates/ipc |
IPC メッセージとパイプ通信 |
crates/settings |
設定の型・保存 |
crates/config |
設定 GUI |
crates/testbench |
ヘッドレス受入シナリオ |
engine-host |
変換エンジンホスト |
installer |
インストーラ |
nospacekey は MIT License で公開しています。次のプロジェクトの成果を利用しています。
- AzooKeyKanaKanjiConverter — かな漢字変換エンジン(MIT)
- zenz-v3.1-small — Zenzai ニューラル変換モデル(CC-BY-SA-4.0)
- llama.cpp — ローカル推論(MIT)
第三者コンポーネントのライセンス・帰属は THIRD-PARTY-NOTICES.md にまとめています。
本プロジェクトは azooKey プロジェクトとは独立した非公式プロジェクトです。お問い合わせは、上流ではなく当リポジトリの Issues へお願いします。
機能要望・不具合報告を通じて、ご協力いただいた方々:
waichi 🤔 |
免責事項
nospacekey は MIT License に基づき「現状有姿(AS IS)」で提供される無償の ソフトウェアであり、明示・黙示を問わずいかなる保証も行いません。IME はシステム全体の 文字入力に関与するという性質上、不具合により入力不能・入力内容の欠落・アプリケーションの 異常終了などが発生する可能性があります。本ソフトウェアの使用または使用不能から生じる いかなる損害(データの損失、業務の中断、逸失利益などを含みますが、これらに限りません) についても、作者およびコントリビューターは一切の責任を負いません。 利用はご自身の判断と責任でお願いします。重要な作業の前にはデータの保存・バックアップを 推奨します。