とりあえずWorkmanに感動している人です。

Workman Keyboard Layout

Workman Keyboard Layout : The Layout Designed with Hands in Mind
https://workmanlayout.org/

初めに

なんかTomisuke配列を知ってから、自分で配列を作ってみたいという欲求が高まってきた。
でも一人で作るのは大変なので、できればみんなで作りたい。
今日は、私と一緒に作ってくれる人を募集するために、私が今考えているレイアウトのコンセプトを説明する日です。

そもそも配列をいじるとは何なのか

皆さんが使っているキーボードの配列はQWERTYっていう配列だと思います。
世の中には、ほかにフランスでよく使われているAZERTYという配列などがあります。
つまりキーボードのアルファベットの並びを変えようというのが配列をいじるということです。

QWERTYじゃダメなの?

なぜQWERTYでダメなのか。それはQWERTYがオワコンレガシー配列だからです。
簡単に言うとQWERTYはもともと、タイプライターがジャムらないようにしたため。
かなり非効率な配列になっています。ちなみに1882年に生まれました。
そして1900年以降QWERTYを改善するために、DvorakやColemak、Workmanなどの配列が誕生しました。

既存の配列は何がダメなのか。

ColemakやWorkmanはとても素晴らしい配列です。しかしこれらは英語について最適化されています。日本語に最適化されたものに関しては、EucalynやTomisukeがありますが、これらについても、もう少し詰められそうと思いました。

Workmanの考え方の紹介

私が配列を考案しようと思ったきっかけがWorkmanの考え方です。
特に重要なのが、キーの場所ごとに押しやすさの難易度を数値化したというところです。この難易度の指標をもって、新しい配列を作っていきます。

具体的にどんな配列を作りたいのか

3つほど考えているものがあります。
①Workmanの考えを日本語に適応した配列
②各列ごとに入れ替える配列
③矢印を組み込んだ配列

①Workmanの考え方(評価方法)を日本語に適応したキーボード

めっちゃWorkmanの考え方に感動した。でも、Workmanは日本語を意識して作られたわけではない。だから日本語を意識して作った新しい配列を作りたい。

②各列ごとに入れ替える配列

Cherry Profileなどのスカルプチャードプロファイル向けの配列。
WorkmanやTomisukeがあまり受け入れられない理由がキーキャップの制限。
各列ごとに入れ替える配列は、キーキャップの問題を解消できる。

③矢印キーを組み込んだ配列。

HHKBや左右分割キーボードなどは矢印キーがついていないことが多い。通常のアルファベットと矢印キーを合わせてちょうど30キーになるため、3*10のスペースにぴったし収まる。
個人的に一番モチベーションが高い。


いくつかのコンセプト

  • Workmanの考え方(評価方法)を日本語に適応したキーボード①
    • Workman-JP
    • 派生でMinimakのような変更点が少ない配列?
      • いらなさそう
    • いちばんみんなのモチベーションが高そう
  • 横一列ずつ変更するやつ②
    • スカルプチャードキーキャップ信者向け
    • モチベーションほぼない。
    • 評価方法はWorkman-JPと同じ
  • 10*3の領域にアルファベット+矢印を組んだ配列③
    • アルファベット26文字+矢印4つでちょうど30個
    • 個人的にいちばんモチベーションが高い。
    • 評価方法はWorkman-JPと同じ
  • 片手用レイアウト
    • 評価方法どうするねん。

      • 同じ手の連続使用率100%。左右のバランス100:0
    • 片手と両手を簡単に切り替えられるようにしたい。

    • Keyballでよくねって言われそう。

      • Keyballでいい。
    • マウスの赤外センサーみたいなのがついた、動かす分割キーボードほしいなって思いました。

ということで、大事なのは評価方法かなと思います。

評価方法と評価のもととなる試験データ

→なんかAIにすごい似ているなと思いました。

検討しないといけないこと。

  • 評価方法

    • 基本はWorkmanの考え方をベースに作る。
  • マップ範囲・割り当てされる可能性のあるキー

    • 基本は3*10の領域
      • QWERTYUIOP
        ASDFGHJKL;
        ZXCVBNM,./
    • セミコロンなどの装飾キーを違うものに変更するのか。
    • ハイフンは日本語にいてそこそこ使うので変更したい。
      • キーボードとかね。
      • /より-のほうがよく使う
      • つまり数字列も含めることになりそう
        • とはいえ数字は横並び以外ありえなさそう
        • 考えなくてよさそう
    • プログラマーはコロン、セミコロンをめっちゃ使う気がする。
      • 他にも人によって使いまくるキーが多様
    • Workman-Pにあった「数字列をデフォルトで記号を出すようにする」っていうやつめっちゃいいと思った。(配列関係ないw)
    • ZXCVを固定するかどうか。
      • 割と固定してほしい。
      • TomisukeのZが逆側に来ているのがかなりきつかった。
      • WorkmanのZXMCVは間違えそう。
  • 試験データ(文字)

    • 日本語ローマ字だけなのか、英語も含めるのか、プログラマ向けの記号なども含めるのか。
    • こいつを分析することで、配列を考える資料になる。
    • 頻度など。
    • 青空文庫は古すぎるので、星空文庫あたりから拝借。
  • 配列の名前

    • Workman-JP

    • Samurai

  • キーロガーのデータを読み込んで、自動的にパーソナライズすることができるのか?

  • 最終的にはWorkman-JPでCherry Profileのキーキャップを作りたい。

評価方法のメモ

  • ロウスタッガードは無視したい。 →無視
    • だってタイプライターがジャムらないようにするためのものなんだから、現代には不要でしょ。打ちにくく、疲労の要因になる。
    • カラムスタッガードかオルソリニアだけ考慮すればいい。
    • Workmanで述べられている、キーの難易度に関しては、カラムスタッガードもオルソリニアも同じ難易度になると思う(仮定・一応議論する?)
      • UI・ヒューマンインタフェース的な話になってくる
    • ゆうてそこまでロウスタッガードとカラムスタッガードで難易度が大幅に変わるかというと、そうでもないと思うので無視していいのでは?
  • どのパラメーターを使うのかと、各パラメータの重み。
    • 同じ指の連続使用回数 率
      • 効率が落ちることは明確。移動距離が増える要因にもなり、疲労感にもつながる
        • 疲労感については難易度で定義されている?
      • Workmanの記事には、スピードにしか影響しないからそこまで重要視しなくてよいみたいなことが書いてある
    • 同じ手の連続使用回数 率
      • Workmanの解説にはあまり意味がないと書かれている
    • 左右のバランス
      • Workmanは左右が均等になるように作られている
      • でも、4:6とか大幅に偏ることがない限り、そこまで意識しなくてもいいのかもしれない。
    • 移動距離 →無視
      • 疲労感につながる?
      • スピードにも関わってくるっぽい
    • 累積難易度
      • Workmanのやつ

      • これあれば移動距離の指標いらなくない???

プロジェクトタスク・論点 整理

  • 評価方法

    • 評価用ソフトウェア作成
  • テストデータ編

    • テストデータ収集

この文書では、ユーザーがWorkmanキーボードレイアウトに感銘を受け、自身で新しいキーボード配列を設計したいと考えていることを表明しています。

初めに、ユーザーは新しいキーボード配列の設計を始める動機を説明し、自分一人で作るのではなく、他の人たちと一緒に作りたいと述べています。また、新しいレイアウトのコンセプトを説明し、参加者を募集しています。

配列をいじるという概念について説明し、QWERTY配列の問題点を示しています。QWERTYが非効率な配列であると主張し、その改善のためにDvorak、Colemak、Workmanなどの配列が誕生したことを指摘しています。

既存の配列についても問題点を挙げ、特にColemakやWorkmanが英語に最適化されている一方で、日本語に最適化された配列(EucalynやTomisukeなど)についてはまだ改善の余地があると指摘しています。

次に、Workmanの考え方を説明し、その考え方をベースに新しい配列を作りたいと述べています。さらに、具体的にどのような配列を作りたいのかを説明し、Workmanの考え方を日本語に適応した配列、各列ごとに入れ替える配列、矢印キーを含んだ配列の3つの案を提案しています。

その後、評価方法や試験データの重要性について言及し、配列の設計において評価方法が重要であると述べています。また、配列設計の過程で考慮すべき点についても詳しく説明しています。

最後に、評価方法についてのメモを述べ、ロウスタッガード(行間隔)を無視すること、同じ指の連続使用回数や左右のバランスなどのパラメーターを評価に取り入れることなどを提案しています。さらに、プロジェクトタスクと論点を整理し、評価方法の開発とテストデータの収集について述べています。