TRONかな配列を薬指後置シフト化してみた
2021/01/26: 最新版を別記事として書きました。
名付けて「大トロ配列」。
要件
- μTRON キーボードと NISSE で使う。
- 親指シフトを行わない(キーボードの [Shift] キーをかな配列の構成要素として利用しない)。
- 文字単位ではなくモーラ単位で運指を考える。
- 通常の日本語文書に現れるほとんどのモーラを2打以内で、すべてのモーラを3打以内で入力する。「ぴゅ」「でぃ」などの低頻度拗音が4打にならないようにする。
- 手の小さいユーザーが撫で打ちするのに適した負荷分布とする。
- ですます体が多い利用実態を考慮する。特に「ま」「す」の頻度が一般的な書籍主体のコーパスよりも高いことに注意する。
設計方針
- 左右薬指後置シフト、清濁同置、同手シフトと逆手シフトの区別あり。
- 「ゃ」「ゅ」「ょ」「ぁ」「ぃ」「ぅ」「ぇ」「ぉ」を使わなくて済むように拗音を配置する。
- 高頻度拗音(キャ行、シャ行、ジャ行、チャ行)はシフト面に配置する。
- 低頻度拗音は行段的に配置する。二重シフト [S][S], [S][L], [L][L], [L][S] を互いに区別することで4つの母音と見なす。
- ホームポジション周辺に負荷を集中させ、周縁部の負荷を下げる。
- BCCWJ のうち「特定目的・Yahoo!知恵袋」コーパスを用いて評価する。
評価
国立国語研究所 現代日本語書き言葉均衡コーパスのうち「出版・書籍」「特定目的・Yahoo!知恵袋」の各上位1万語彙と、京都大学 黒橋・河原研究室のウェブコーパス(200万ページ)の上位10万語彙を用いて各キーの負荷を解析した。
分かっちゃいたけど薬指の負荷が高いな…。きっと調整が必要になるだろう。
※この文章は大トロ配列で書きました。
キー配列をコーパス別に評価する
日本語キー配列の各キー/段/指の負担割合を可視化するツールを作った。
性質の異なる複数のコーパスを任意に組み合わせた頻度表を用いて解析を行うことができる。
- https://mobitan.github.io/keyboard-layout-comparison/heatmap.html
頻度表データは国立国語研究所の現代日本語書き言葉均衡コーパス「中納言」版公開データの短単位語彙表 (Version 1.1) を加工したもの。ソースのコメントを外すと、「出版・書籍」「出版・雑誌」「出版・新聞」「図書館・書籍」「特定目的・白書」「特定目的・教科書」「特定目的・広報紙」「特定目的・ベストセラー」「特定目的・Yahoo!知恵袋」「特定目的・Yahoo!ブログ」「特定目的・国会会議録」のそれぞれ上位10000語を利用できる。
TRONかな配列を中指シフト化してみた
2021/01/26: 最新版を別記事として書きました。
名付けて「中トロ配列」。*1。
かな入力を導入しようと思って月配列 U9 版を5日間ほど試してみたけど、これが全く慣れる気がしない。「ん」「っ」「る」「た」など語末っぽい字が人差指にあり、キーボードの外側から内側へ流れていく手の動きが脳に馴染まないようだ。そういう観点であらためて配列をサーベイしてみると、TRON キーボードのかな配列は「ん」「っ」「た」「る」が小指か薬指にあり、キーボードの内側から外側へ向かう流れが馴染みやすそうな気がした。TRON 配列は親指シフトだが、私の親指は機能キーのワンショットモディファイヤで手一杯(指一杯)だ。そこで、月配列 U9 版の考え方を TRON 配列に適用し、中指と薬指で前置シフトする変形 TRON 配列を作ってみた。
設計方針
- 物理形状が左右対称なキーボードを前提とする(例: NISSE, μTRON)。「左手下段は打ちにくい」といった物理形状に起因する問題を論理配列の設計に持ち込まない。
- Google 日本語入力のローマ字カスタマイズで実装する。キーボード関係の常駐ソフトをこれ以上増やしたくない。
- シフト方式は月配列 U9 版の考え方を採用する。[D] か [K] を押すと★面に、[S] か [L] を押すと▲面に、[D][K] か [K][D] を押すと▼面にシフトする。左右のシフトキーは区別しない(同手シフトなし)。
- 読点は [S] と [K] の同時打ち、句点は [S] と [L] の同時打ちで入力する。[S][K] と [K][S]、 [S][L] と [L][S] をローマ字テーブルに定義しておき、どちらが先に入力されても同じ結果となるようにする。
- 文字の並べ方は TRON 配列の考え方を採用する。原則としてアンシフト面と★面は清音、▲面は同位置の清音に対応する濁音。加えて▼シフト面を設け、低頻度文字と、4ストローク以上となる一部拗音の救済用ショートカットを置く。
定量評価
月配列の導入を検討する
日本語入力方法として、10年前までは自作の行段系8母音ローマ字配列「やつがしら」を使っていたが、ここ10年は普通のローマ字入力を少しだけ拡張した配列(「ん」「っ」「ー」を専用キー1打で、拗音を2打で打てるように拡張したもの)に戻っていた。しかし、やはりローマ字では快適さに限界がある。ここらでローマ字入力に見切りをつけて、かな入力の導入を検討しよう。
既存手法の評価
月配列系は各作者が数値評価を行っているが、どれもサンプルが小さすぎてアテにならない。そこで、国立国語研究所の現代日本語書き言葉均衡コーパスを使って既存の配列を再評価した。ただし、当該コーパスの全データを入手するには利用契約が必要で面倒なので、ここではBCCWJ長単位語彙表 (Version 1.1) のうち度数22以上の約10万語彙をサンプルとして使った。原文ではなく単語ごとの頻度表なので、単語内の運指は考慮されるが、単語をまたぐ運指は考慮されない。
結果は次のとおり。表の一番右の列は指ごとの負担率を示す。
どの配列も作者のノウハウが注ぎ込まれているわけだが、やはり作者ごとに異なる設計思想が透けて見える。なかでも、濁音を清音と同じ位置に置くか別の位置に置くかが大きな分かれ道のようだ。
方針
評価結果を踏まえて自分がどこから始めるかを考えているが…うーむ。
まぁ、どうせ後から自己流カスタマイズに走るだろうし、とりあえずは初めてのかな入力ということで、覚えやすそうな清濁同位置の「月配列 U9」を採用してみようかな。
評価プログラム
後者のページには初期値としてBCCWJ短単位語彙表 (Version 1.1) のうち度数555以上の約1万語彙が入力されている。かな配列はHTML内にハードコーディングされている。
ReadyNAS 104 がファイル削除で固まる
100GBのファイルを削除しようとすると固まる。top を見ると btrfs-transacti が CPU を食っている。そのうちメモリを食い尽くしてスワップし、OOM Killerが働いて無関係なやつを殺しまくる。最終的に電源ボタンも反応しなくなり、電源ケーブルを抜くしかなくなる。
次の対策で直った。
- BTRFSのクオータを無効にする https://community.netgear.com/t5/Using-your-ReadyNAS/BTRFS-is-killing-my-NAS/td-p/1414978
- 不要なスナップショットを削除する
ユピテルのドラレコ
ユピテルのドラレコ DRY-WiFiV3c からGPSデータを取り出して Google Maps にマッピングするメモ。
- 付属のソフト PC Viewer DRY TypeH で MOV ファイルを読み込む。
- %USERPROFILE%\Documents\PCSW\NMEA\PCSW\NMEA\*.txt に NMEA ファイルが生成される。
- 轍 で NMEA ファイルをインポートし、KMZ ファイルをエクスポートする。
- KMZ ファイルを Google Maps にインポートする。
NMEA2KMZ で変換した KML や GPX は Google Maps に表示できなかった。理由不明。
Phase 25e
NISSE のファームウェア側でワンショットモディファイヤを処理するバージョン。
- 上がキーボード単体、下がのどかを通したあとの仮想キー。見てのとおり、のどかの仕事は非常に少ない。
- ファームウェア v0.22 で Fn+[ 6 ] = [F6] のようなマッピングをすると Fn+[F6] と見なされて NISSE のモード切り替えが行われてしまう。これを回避するため、Fn 面にファンクションキーを含む割り当てをしないようにした。
- ファームウェアでは Alt+Tab のエミュレーションができないので Alt+Esc とした。
- 記号キーの [-_] と [/?] を入れ替えた。
ダウンロード
- https://github.com/mobitan/new-keyboard/releases/tag/v0.22-mobitan25e
NISSE のファームウェアとのどかの設定ファイルのセット