Skip to content

Repository files navigation

cover

Windmill

Windmill is a keymap for 40% keyboards.

このキー配列は、40%キーボード向けに作成したものです。

  • 風車状のカーソル配置
  • かな入力対応 (ほぼJISかな配列)
  • SandS (Space and Shift)

詳しくは、以下をどうぞ。

対応キーボード

メーカー キーボード キーマップ
Boardsource Technik technik
YMD YMD40 ymd40
Chosfox X Masro Geonix48 minipeg48
Chosfox X Masro Geonix Rev.2.5 geonix41

📦ファームウェアのバイナリはリリースページからダウンロードできます。

キー配列

英字入力時

  • ESC(✕)とEnter(○)が対称配置
  • BSが最左列
  • Fn, Sym, Shiftは、ホールド時に有効

main

かな入力時

  • 英語配列では修飾キーが並ぶ最下段も含めて、フルに4段を使う
  • 「ほ」「へ」「む」「ー」のみシフト側へ
  • 「こ」「み」同時押しでスペースキー
  • GUI, Alt, Fn, Sym, Shiftは、ホールド時に有効

kana

記号とファンクションキー

英字入力、かな入力ともに、最下段中央付近のキーをホールドすると、記号(Sym)またはファンクションキー(Fn)の入力になります。配置については英字配列の図で、各キーの添え字を参照。

かな/英数切り替えは、Ctrlキーのタップで行います。タップするたびに、かなと英数が入れ替わります。IMEへ送るキーはOSごとに異なり、対象OSの切り替えで選びます。

かな入力中に Ctrl, GUI, Alt をホールドしている間は、一時的に英字配列になります。Ctrl+C や GUI+V といったショートカットが、かなに切り替えなくてもそのまま打てます。

L5 L4 L3 L2 L1 L0 R0 R1 R2
ホールド Ctrl GUI Alt Fn Sym Shift Shift Sym Fn
タップ (英数) かなへ GUI Alt \ Space Space /
タップ (かな) 英数へ つ さ そ ひ こ み も ね

キーボードはIMEの状態を読み取れないため、切り替えを自分で数えて追いかけています。電源を入れた直後は英数から始まります。マウスなどでIME側だけを切り替えると、かな/英数の配列とIMEがずれます。Windows ではかな/英数を直接指定して送るので、もう一度 Ctrl をタップすれば揃います。Android では日本語IMEと英語IMEそのものを切り替えます (日本語IMEの英数モードは、入力欄を移るたびにかなへ戻ってしまうため)。

ずれてしまったときは、Fn+Ctrl でキーボード側はそのままに、IME側だけを切り替えられます。Windows では今の配列に合わせたかな/英数を送り直すので、ずれていなければ何も起きません。Android は切り替えのキーしか送れないため、揃っているときに押すと逆にずれます (もう一度押せば戻ります)。

Fn+Tab は Caps Lock です。押すたびにオンとオフが入れ替わります。Android などで意図せず Caps Lock がかかってしまったときは、これで外せます。

設定レイヤー

左右の Fn を両方ホールドしている間は、キーボードの設定用のレイヤーになります。配置は全機種で共通です (キー名は英字配列でのもの)。

キー 独自キーコード 設定
Fn+Fn+A MY_WIN 対象OSを Windows に
Fn+Fn+S MY_ANDR 対象OSを Android に
Fn+Fn+Enter QK_BOOT ファームウェアを書き込めるモードへ
Fn+Fn+Esc / Q / W / E / R MD_USB / MD_BLE1 / MD_BLE2 / MD_BLE3 / MD_24G 接続先を USB / Bluetooth 1〜3 / 2.4G に (Geonix Rev2.5 のみ)

片方の Fn を離すと、残したほうでファンクションキーの入力へ戻ります。

追加機能

LED (Technik, YMD40, Geonix Rev2.5 のみ)

選択されたレイヤーが分かりやすいように、文字種別にライティングされます。

なお、デフォルトの状態はLEDが明るいので、暗い部屋で使う場合に光量を落として使えるダークモードを用意しました。使い方は、次の通り。

  • Fn + Enter を押す

ダークモードを解除するには、もう一度上記のキーを押します。

対象OSの切り替え

各OSのIMEの差異を吸収するため、モードを切り替えることができます。キーは設定レイヤーにあります。

独自キーコード キー 対象OS 配列の認識 IME かな/英数切り替えで送るキー
MY_WIN Fn+Fn+A Windows 11 English (US) Microsof IME かな / 英数 を交互に (KC_LNG1 / KC_LNG2)
MY_ANDR Fn+Fn+S Android English (US) Gboard Ctrl+Space (日本語⇔英語のIMEを切り替え)

対象OSが Android のときは、GUI と Alt の扱いも変わります。

  • GUI と Alt の同時押しは、後から押したほうを送りません。Android はこの組み合わせを Caps Lock の切り替えとして扱うため、かな入力で「つ」「さ」を続けて打つだけで Caps Lock がかかってしまいます
  • GUI+. は Alt+. として送ります。Windows の Win+. と同じ操作にするためです

v3での変更点

前バージョンから4年ほど経つ中で、かなりQMKだけでできることが増えて来ました。Androidが「かな入力」にデフォルトで対応したりと、OS側の動きも大きいです。なので、今回はQMKをv0.33.11にした上で、なるべく独自実装を避けてVIALなどでも調整可能な範囲に収めることを主眼に置きました。CHANGES.mdにClaudeが詳しく書いているのでそちらをどうぞ。

  • 変更: かな切り替えをCtrlキーのダブルタップに
  • 廃止: ローマ字エミュレーション
  • 廃止: NumPad

内部実装はかなり変わって簡素になっていますが、使い勝手はそれほど変わらないのではないかと思います。

ライセンス

Copyright (c) 2021-2026 Tsutomu Kawamura

このリポジトリのソースコードは GPL-2.0-or-later (GNU General Public License version 2, または任意のそれ以降のバージョン) で配布しています。全文は LICENSE を参照してください。

ビルドしたファームウェアは QMK Firmware (GPL-2.0-or-later) を含みます。また、各キーボードの定義ファイル (keyboard.json など) は以下をもとにしています。

  • technik: QMKの boardsource/technik_o
  • ymd40: QMKの ymdk/ymd40/v2 (LEDの数を実機に合わせて変更)
  • minipeg48: sporewoh minipeg48 (本家QMKには未収録)
  • geonix41: ベンダー (RDMCTMZT) 配布のソースをもとに移植 (本家QMKには未収録)

geonix41 だけは無線・電源・LED制御にベンダー提供のクローズドソースなライブラリ (librdrcommon.a) を使っており、これはこのリポジトリには含まれていません。 ビルド時に scripts/geonix41/fetch-vendor-blob.py がベンダー配布物から取得します。 詳しくは firmware/geonix41/readme.md を参照してください。

About

A keymap for 40% ortholinear keyboards.

Topics

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages