さくら配列スペースシフト
2006/07/08_232521「これで最後かね?」
ですね。記号の入力についてです。
はじめに
CやPascal等のプログラムを作成する場合,とてもたくさん記号を使用します.『()』で引数を指定し,『,』で区切り,『+-/*=』で計算し,『;』で文を区切る……などなど・ しかし,英文ではアルファベット以外の記号は『.,;:'"』の様なものを除いて使用する機会はそれほど多くありません.そのため,記号はホームポジションから外れたキーを使って入力するようになっています.当然,入力しづらく,ミスタイプも多くなります.
プログラミングをするときは,アルファベットの入力も大事だけど記号の入力も大事……その考えからこの配列を作成しました.
配列
考え方
人間の指の数&キーボードの形状には制限がありますので,全てのケースで最適なキーボード配列を造ることはできません.そのため,この配列では下記のような考え方で設定しています.
- ASCIIで指定されている記号を入力すると仮定.ただし,『.,』の2文字は通常入力しやすい部分に配置されているので,これらを除いた30文字のを対象とする
- 記号の種類ごとにグループ化し,覚えやすくする
- 入力しやすい中3行10列を使用するが,通常のアルファベット入力と干渉しないようにする
配列
上記の考え方を満すため,『スペースシフト』を使用します.これは木村 清さんの『SandS』で紹介されている考えを利用したものです.
- スペースキーを押下した状態では,シフトキーを押下した状態と同様,別の文字が入力される
- スペースそのものの入力は,スペースキーを押下してそのまま押上することにより行なう
とすることにより,スペースキーにシフトキーの機能を持たせるものです.『Spaceシフト』では,この状態で記号を入力します.
つまり,スペースキーを押した状態では,下記の様に配列が変化します.
Spaceシフト -------------------------------------------------------------------- | | | | | | | | | | | | | | | | | |-------------------------------------------------------------------| | | % | @ | & | ¥ |"|"| | _ | ? | $ | ! | # | | | | |--------------------------------------------------------------- | | | - | + | * | / | = | | { | ( | ; | ) | } | | | | |-------------------------------------------------------------------| | | ~ | ` | ' | ” | ^ | | [ | < | : | > | ] | |Shift| |-------------------------------------------------------------------| | | | スペースシフト | | | --------------------------------------------------------------------
グループ分けの考え方は下記の通りです。
- 『~`'"^』のような上半分の文字は左手下段
- 計算で使用する記号は左手中段
- 文の区切りで使用する記号は右側下段と中段
- その他記号は上段に配置
- 『.,』は定義しない(QWERTY等の入力方法で入力)