主にコンピュータ・ゲームについて、いろいろと考えている人間です。どうぞ、よろしくおねがいします。

hiyokoya6というidで活動をしていたりすることが多いですが、はてなのidは、hiyokoya6ではなく、メインはhiyokoyaでずっとやっておりますのでhiyokoya6を参照されていらっしゃった方は下記のURLをご参照ください。こちらは間違われやすいので、サブアカウントとして取得しました。

※あと、ゲームに関係のない記事をこちらのブログに集積しています。

サイト:http://www.critiqueofgames.net
はてなメインアカウントhttp://hiyokoya.hatenadiary.jp/
twitterアカウント:http://twitter.com/hiyokoya6
Facebookhttps://www.facebook.com/akito.inoue
何者か:仕事リストを自己紹介がわりに

CURRICULUM VITAE/履歴書・業績書 - Google スプレッドシート

仕事でやっている or お手伝いしているサイト
http://bylines.news.yahoo.co.jp/inoueakito/

http://www.rcgs.jp/

http://www.vcasi.org

飛鳥配列改良を考える

飛鳥配列について現在問題として感じていることを並べる。

 

同手シフト下段問題

  • 問題:同手シフトの下段がつらい:特に「ね」「せ」「ぴ」、「を」「つ」「も」は指が明らかに引きつっている。
  • 解決策1 中指で異手シフト化:同手シフトそのものをなくす。ただ、飛鳥の同手シフト配置は考えられた末のものなので、なるべく同手シフトを尊重
  • 解決策2:ね AS, せSD, ぴDF   を JK, つ KL, も L+  に再設定。

右小指問題

  • 問題:飛鳥のポリシーが右手偏重なのは知っているが、それにしても「ほ」「げ」「ろ」のために要求される動きが特に大きい。「ぽ」「へ」「ぞ」の位置も指全体を動かす必要があり、正直、やや負担に感じる。
  • 解決策:きつくない同手シフトでどこかに移す。

親指シフト配置でいいのか問題

  • 一般的なASDFJKL;のホームポジションは肩こりも激しいし、B(N)下割れキーボードにやはり縛られる。orz系のほうがいいと思うし、できれば、1つ右にズラすのではなく2つずらしたい。
  • 解決策1:「さ」「ぼ」「?」の位置もどこかに移して、全体に右に2つずらす。
  • 解決策2:ポジション大幅に変えて、ほぼ新配列にする。
  • 解決策3:キーボードをもう1つ買う。あるいは、左右分離キーボードを使う(学習コスト的にはいちばん合理的)

拗音拡張がない

  • 問題:拗音拡張がない。
  • 解決策:拗音拡張については、実施しているが、コーパスに基づいていないので、コーパスのに基づいた実装をしてよい。「しょ」「じょ」などが優先になるはず。
  • あまのあすかほどの数の拗音拡張はせずとも優先度の高い拗音拡張だけで完全に規則的になる範囲以上の拗音拡張はおこなわなくはもよいとする。(あくまで同時押しの範囲)

二重母音拡張

  • iu,ei,ouなどの拡張がない
  • 解決策:つくる?

Yキー問題

  • 「ゔ」「ぢ」がまともに打てない。というか、うたせる気がない。
  • 解決策:どこかに移す。優先度は高くない。

Bキー問題

  • 「ぶ」はまだいいのだが、「ぉ」などは、同手シフトでキツい位置。
  • 解決策:どこかに移す

 

 

 

文字の出現頻度表

自分用のリンク集的なもの

アルファベット出現頻度
かな出現頻度 1-gram
かな出現頻度 2-gram(2連接)
かな出現頻度 3-gram(3連接)以上
形態素解析・単語の頻度

『現代日本語書き言葉均衡コーパス』語彙表 現代日本語書き言葉均衡コーパス(BCCWJ)

キー負担の可視化

1gram

2gram

QWERTYの世界をどうやってマシにするか

基本的な方向性をつらつらと考える。

 

ポリシー:上位互換

  • 通常のQWERTY使用から何かを足すだけにして、組み替えたり、覚えるまでもともと使えていたものが使えなくなる機能実装はしない
  • 一見して意味がわかりにくい実装は、行わない。意味がわかりやすい実装を優先する。(AZIKは、すごいとは思うが正直ちょっとわかりにくい。)
  • すべての問題を解決しようとしなくてよい。重要な問題をわかりやすく解決すればよい。

 

改善したい問題

  • KI,DE、MU、NU、HU、ZAなどのホームポジションからの上下移動を強制されるもの。 [ 案 ]  JとFを上下の代理母音として用いるというのはどうだろうか。つまり、KF=「KI」、MF=「MU」、NF=「NU」、HF=「HU」、DJ=「DE」、ZJ=「ZA」として割り振る。ちょっとわかりにくいだろうか?
  • YUなど横移動を強制されるもの。
  • BEなど離れすぎていて変則的に両手使用を要求されるもの
  • SE、指がやや重なる
  • KU 指がややつらい

 

ストロークが多いもの:

  • 拗音:三打音 DvorakJなら可能なので、DvorakJで実装すべきか。

 

撥音など:

  • 「ん」:N以外のどこかなら割り振ってもいいのだが…
  • 「っ」:同上。

 

機能キー実装:

  • 機能キー拡張の方向は、順当にわかりやすい気はする。(参考:https://www.furomuda.com/entry/20070212/1171244226
  • センターシフトか、中指シフトあたりならで標準キーボードでも問題ないが、センターシフトは、わかりにくいような気はする。

 

参考

QWERTYから最小キー移行で子音、母音を同時打鍵左右分離を考える

QWERTYで子音と母音の同時打鍵をするにしても、キーの配置がやはり悪い。特にKU、KI、KO、DE、MUホームポジションから1ストロークで打つのは無理だろう。というわけで、子音、母音の同時打鍵が可能な状態にもってくるにはどうすればよいのかを考えてみたい。

キー移行案

f:id:hiyokoya:20190618100116p:plain

あらためてQWERTYをみると、子音は左に多く集まっており、母音は右に多く集まっている。

 
いろいろ考えても考えなくても、母音はAとEを右手のホームポジションに移動。子音はKNMを移動させてやるのが良さそうだ。Y、Hもできれば移動させてやりたいが、これは次点の目標だろう。子音のPも右にあるが使用頻度を考えると、優先順位は低い。

つまり移動を考慮すべき最小キーは、下記AENMKの5つ。あるいは、AEHNMKになる。

f:id:hiyokoya:20190618102443p:plain

 

 

そこで、問題はどこをどう移すかになる。

 

文字頻度表によれば、よく使う日本語の音は

母音:A>I>O>U>>>E

子音:T>K>S>N>R>YHM>W>D>G>Z>B>>>P>>>>F>>V

の順らしい。

 

それを踏まえて考える。

 

移動しよう!

Aの移動

Aの移動先は、ホームポジションでできれば小指以外がいいだろう。

「J」「L」場所はいいが交換の必要が薄い。

「K」ベスト?

という感じか。

順当に指の負担を考えると、Kだろうか?Kもなるべくいい位置においてやりたいので、

ということで、AとKの交換

f:id:hiyokoya:20190618103005p:plain

 

Eの移動

次に優先度が高いのはE。残るは3キー。

f:id:hiyokoya:20190618103558p:plain

これもできれば、ホームポジションに置きたいが余計な交換は最小限に抑えたい。

そう考えると「NM」のどちらかに運ぶことになるが、運指上マシなのは「M」の位置だろう。「N」の位置はちょっときつい。

ただ、「E」は左手の中指で打てるかなりいい位置にあるので、使用頻度の高い「N」音をもってこれるなら、それがよい。

ということで、次のように移動。

f:id:hiyokoya:20190618104401p:plain

 

じゃあ、のこった「M」はどうするのか。ということになる。

f:id:hiyokoya:20190618104759p:plain


どうしよう。

まあ、左側にある音でなくてもこまらない移動先候補はQかCだろう。使用頻度の低いFがかなりいい位置にあるのでそこを落とすという手もかんがえられなくはないが、使用する確率の少しでもあるものはあまり落としたくないが、Fの位置は位置があまりにも良すぎる。

f:id:hiyokoya:20190618105748p:plain

うーん。

さようなら!F!

ということでF落ち。

 

f:id:hiyokoya:20190618110038p:plain

 

ということで、暫定こうなった。

f:id:hiyokoya:20190618110246p:plain

うーん。

ここで、もいっかい文字頻度表みようか。

母音:A>I>O>U>>>E

子音:T>K>S>N>R>Y>H>M>W>D>G>Z>B>>>P>>>>F>>V

子音は、KNMの順番で重要と考えると位置入れ替えたほうがいいね。

つまり下記のようにぐるっと反時計回りに一つづつズラして…

 

f:id:hiyokoya:20190618110640p:plain

こうなる。

とういうことで決定

これがなんとかワークしそうな最小移行案?

6キー移行案:左手の移動少し大きめだが慣れれば…

f:id:hiyokoya:20190618110806p:plain

これでもなんとか使えるけど、Y(やゆよ)H(はひふへほ)を打つときは、ちょっと左手を大きめに動かす必要があるけれども。

10キー移行案:はっきり左右分離

最小移行案にもう後少し手を加えていいのなら、YHの位置もちょっとなんとかしてあげたい。というかしたほうがいい。

移動させるなら、まあQCの位置だろうというかそれ以外ない。

f:id:hiyokoya:20190618112330p:plain

こうなる

f:id:hiyokoya:20190618112703p:plain

 

移動させた5文字の序列はKNYHMなので、やっぱりMの位置が良すぎるので適宜移動。

 

f:id:hiyokoya:20190618113144p:plain

ここまでやったら、かなり左右分離はできるが、習得コスト的には10/27だから、こんだけ変えるなら素直にけいならべとかSKY系の配列まなんだほうがいいのではという感じはする。

 

4キー移行案:手をかなり動かすのに慣れれば

また、かなり左手を動かすことにはなるがYHNの位置をそのままで運用していいのなら、次のAEKMの4キーの入れ替えのみを行うのがほんとに最小だろう。まあ、この状態でも素のQWERTYよりは、かなりマシにはなる。

 

f:id:hiyokoya:20190618115324p:plain



2キー移行案

QWERTYの配置から一つだけ一番クリティカルだと思う交換をせよといわれたら、AとKの位置交換が筆頭だろうか

f:id:hiyokoya:20190618115818p:plain

 

別解:母音の小指寄せ

ちなみに別方向の解決として、母音を小指にもってくるという解もありそうではある。ただ、小指負担がふえるので、これは解としては厳しめかなと思う。

f:id:hiyokoya:20190618120831p:plain



別解:2打鍵キーの1打鍵化対応

微妙な音をトレーニングするという方法もありそう。っていうか一番効果的な気はする。

ぱっと見でつらい感じがするのは、DE、KI、MU、NU、KU、KO、SE、TE、GE、BEあたりだろうか。

ここらへんのどうしても2打鍵になってしまいやすいキーについては、ホームポジションでうちやすいように、拡張キー対応にしてしまうのもいいのかもしれない。

学習コストはかかってもスイッチングコストはかけないということを考えるとそれが現実的かもしれない。

 

(方法1)限定拡張キー10個の実装

DE、MU、NU、KI、KU、KO、SE、TE、GE、BE用に限定拡張10キーを設定し覚えてもらう。

まあ、十分に現実的だろう。

 

(方法2)ホームポジションに母音

「ASDFG」→「AIUEO」

「JKL;:」→「AIUEO」

もしくは、Eの活躍が少し少ないことを考えると、Eを小指にして

「ASDFG」→「AIUOE」

「JKL;:」→「AIUOE」

というのもありだろうか。

ただ、やまぶきRで普通に実装してしまうと、KSの同時押しをした場合にKI(き)なのか、SI(し)なのかわからなくなってしまって、「きし」あるいは「しき」とうたれてしまうことになる。

DvorakJでの実装ということになるだろうが、子音に少し遅れて母音を押すという仕様にならざるをえなさそう。それはストローク数削減を考えるとナンナンダ感もいささかあるが、指の負担ということを考えれば十分ありな実装かもしれない。というか、誰かすでにやっていそうな気はするが。

 

 

DvorakJ少し使ってみた

まだ、細かい設定を把握していないだけなのかもしれないが、飛鳥配列の場合少しうちにくいというのが感想。 右シフトとしてスペースキーを押したときに、変換がかかってしまうことが多く感じた。 連続シフト対応だと、やまぶきRのほうが打ちやすく感じる。 もしかしたら、同時判定の時間などを設定できるようならそこの調整もできそう。

やまぶきRだとSTENO WORD的な挙動の設計ができないので、 一度DVORAK Jでやってみたい。

学習コストゼロでの入力高速化:QWERTY 子音+母音 同時押し設定ファイル(やまぶきR/Win10)

QWERTY入力では、普通「た」と打つためには「T」を押してから「A」を打つという二打建が必要ですが「T」「A」の同時押し入力で「た」と打てたらQWERTYでもちょっとぐらいは早くなります。 例えば、「たろう」と入力する場合、

  • 通常の入力:1打目「T」2打目「A」3打目「R」4打目「O」5打目「U」
  • 実現したい入力:1打目「TA」2打目「RO」3打目「U」

簡単なものなので、このぐらいすでに誰かが作っているかなとは思いましたが、探しても見つからなかったので試しにそういう同時押しの設定用ファイルをつくりました。

やまぶきRの設定がわかる方は、やまぶきR用設定用ファイルをダウンロードして、あとは適当にお願いします。

インストール手順

普通の方は手順は下記の通りにどうぞ。

  1. VectorからやまぶきRをインストールして下さい。

  2. やまぶきR用設定用ファイルをダウンロードし、「C:\Prog\YamabukiR\layout」のフォルダに入れてください。

  3. インストールしたら右下のやまぶきRの常駐アイコンを右クリックして設定を開いてください

  4. 配列の設定を「SPEED_QWERTY.yab」にします。

  5. 「文字キー同時打鍵シフト」の時間を40に調整してください。(お好みで調整して下さい。)

ご参考:学習コストを払ってもよい方

上記の設定をインストールした場合、QWERTY入力ができている方には特に学習コストはありませんが、母音と子音を同時押ししようとしても、そもそもQWERTYでは押しにくい配置になっています。別の配列の学習コストを多少払ってもよい いう方には…

  • 「っ」や「ん」の音などQWERTYベースでのローマ字入力の省略可に本気で取組んでいるものとしては、AZIKというものがあります。

  • QWERTYよりも効率的な日本語入力用のローマ字に興味を持たれた方は、SKY、けいならべ、カタナ式などのすぐれた入力方式があります。

  • 入力高速化のために習得コストを払ってもいいという方は下記のフローチャートをご覧ください。筆者はここ2ヶ月ぐらいは、飛鳥配列で入力しています。

hiyokoya6.hateblo.jp