2022年6月19日

Keychron K8 Pro 導入記(3)QMK/VIAに挑戦

K8 Proは、Kシリーズで最初のQMK/VIA対応型。

Keychron K2 は、「TouchID」が無かろうと「地球儀キー」が無かろうと、それは大した問題ではない。ただ、前述のとおり、「 ENTER」が右端でないというレイアウトは肌に合わず、Keychron K8 Proの80%レイアウトに惹かれたのです。

注文時には本機が「QMK/VIA対応」というのは、それほど重要視しておらず、正直「あったほうがいいんだろうね」というレベルでした。
しかし、 商品が到着後に、いろいろと調べてみると、QMK/VIAとは、それまで一部のエンジニアや自作キーボードマニアぐらいしか出来なかった、キーボードのキーマップを自由にに変更できるのファームウェアということが、分かってきました。

しかし、デザイナーを始め、一般人にキーボードのマップを変更しようなんて考える人は、まずいないでしょう。JIS配列にしろ、ANSI配列にしろ、そのまんまのキーマップで使うのが当たり前で、僕もキーマップを変更してやろうなどと考えたこともありませんでした。

US配列のコロン・セミコロン問題を解決できんじゃん?

US配列のキーボードを、30年ぶりに使うようになって、実はひとつだけ気になってたことがあったのです。それはいわゆる「コロン・セミコロン問題」。
日常的に英文を扱うインテリジェンスな人はともかく、ローマ字入力で日本語を入力する人は、コロン(:)は使うことはあっても、セミコロン(;)ってなかなか使う機会がないのではないでしょうか?

US配列ではコロンとセミコロンは同じキー
だいぶ汚れているけど、Mac日本語キーボードのコロンとセミコロン

日本語JISキーボードだと、コロンとセミコロンは隣り合わせの別々のキーに割り当てられていますので、意識することもなかったのですが、USキーボードでは、コロン(:)とセミコロン(;)は、同じキーに割り当てられており、そのままタイプすると「セミコロン(;)」が入力されます。

まー、シフトを押し下げながら、タイプすれば「コロン(:)」が入力されるのですが、JISキーボードからの癖で、これが結構間違えてる(笑)

しかも、姿形がにているので、老眼だと見落としがちで、そのまんま入稿された日には目も当てられません。

せっかくなので、VIAを使ってコロンを直接入力できるようにしてみた。

先ほどからKeychron K8 Proは「QMK/VIA」に対応といってますが、「QMK (Quantum Mechanical Keyboard) 」とはキーボードの配列やキーマップを設定するためのオープンソース「ファームウェア」の事を指し、「VIA」はJSONで書かれた「QMKファームウェア」を視覚的に分かりやすい形で、簡単に変更するためのツールと思って差し支えないかと思います。

K8 Proのような、QMK/VIAをサポートしたキーボードのキーマップの変更をするには、まずKeychronのホームページからVIAと各キーボードのJSONキーマップファイルをダウンロードし、VIAをMacにインストールする必要があります。

> Mac用のVIAとKeychron K8 Proのデフォルトキーマップファイルのダウンロード
起動時のCONFIGUREタブ
DESIGNタブ

VIAのインストールをして起動すると、初期設定読み込み画面が表示されますが、この段階ではキーマップファイルが指定されていない為にいつまでも読み込み中のままになります。
上の「DESIGN」タブから、ダウンロードした「Keychron K8 Pro用のキーマップファイル(JSON)」をドラッグアンドドロップするかLoadからインポートしてください。
上の「CONFIGURE」タブに戻ると、K8のデフォルトキーマップが表示されます。

基本的なキーマップの変更は、見たまんま簡単で、キーマップの変更したいキーを選択してから、下のメニューから新しく登録するシンボルを選ぶだけです。

コロン・セミコロンのようにシフトキー使用時の文字の入替えはできないみたい。

さっそく、コロン(:)とセミコロン(;)を入れ替えようと思いましたが、どうもVIAで変更できるのは、単純なキーマップの変更だけで、「シフトキー入力時のシンボルの入替え」のようなキーバインドを含む挙動は設定できないようです。MacではKarabiner-Elementsというツールを使えば、シフトキー押し下げ時の「コロン・セミコロン」の入替えは出来るのですが、VIA単体ではそこまでのことはできないようです。

コロンは、独立した単独のキーとして登録した。

試行錯誤の揚げ句、僕がたどり着いた方法は、「コロン・セミコロン」キーを「コロン」単体キーとして割り当てるというものです。

左下のメニューの「SPECIAL」を選択すると、キーシンボルのリストが変更されます。ここにはANSI規格のスペシャルキーが表示されています。コロン(:)を含む「?」とか「&」などシフト押し下げ時のキーシンボルがありますので、コロンを選択して単独のキーとして割り当てました。

これで、「:/;」キーを押すと「コロン(:)」が入力されるようになりましたが、「セミコロン(;)も頻度は少ないとはいえ、全く使わないことはありません。このまま放置するわけにもいかないので、僕はファンクションキーを使ったキーレイヤーを利用することにしました。

セミコロンはFnキーと併用で入力だ。

Keychron K8 Proでは、0〜3の4つのキーレイヤーが設けられており、その内の0と1のレイヤーが Mac用としてマッピングされています。
0は通常のキーマップで、1は「ファンクションキー(Fn)」を押した際のキーマップです。デフォルトではFnキー割り当ては、F1〜F12の他、キーボードのライトをコントロールする各種キーがいくつか配置されていますが、他のキーは、設定がないので、そのままデフォルトのキーが入力されるようになっています。

Fnキーを押した際のキーマップレイヤー。キイロのキーに「:/;」を割り当てた

そこで、Fnキーを押した際のコロン・セミコロンにBASICの「(:)/(;)」を割り当てることにしました。これで、Fnキーを使えばセミコロンも入力できるようになったわけです。

Keychron K8 Pro導入記(その4)へ続く
次回は「QMK/VIAでマクロキーを割り当てる話」です。


Keychron K8 Pro導入記(その3)

2022-06-19 | Posted in BLOGNo Comments » 

関連記事