Jorgeさんを煽りまくっていたら、「おまえも論理配列をいじれ」と煽り返されたので、キー入力関連をいろいろいじっています。
論理配列にはかぎりません。必要なのは結果であって手段ではない。結果で凌駕すれば煽りは煽りで返せますしね。
煽られてから48時間くらい経った現時点(4/1の00:30過ぎくらい)で、もうなにをやってどうだったのかの詳細な記憶がうしなわれつつあるので、ここに形式知化することをこころみておきます。
- # / キーを a にする〚経過観察〛
- # 右サムクラスタに ! および ? を追加〚いまいち〛
- # 二鍵同時で '?' 〚ボツ〛
- # Shift+/ で '?' になるように〚良好〛
- # ナカグロを H の左隣あたりに配置〚要改善〛
- # B キーをホールドしたときに Ctrl になるように〚良好〛
- # 上下アローキーの位置を変更〚まあまあ〛
- # 「」マクロ〚要観察〛
- # |《》マクロ〚要観察〛
- # <><>→《》〚要観察〛
- # 。。。マクロ〚一部良好〛
- # ――〚きわめて良好〛
- # 三鍵同時で拗音〚非実用的〛
- # 「の」単打〚良好~経過観察〛
# / キーを a にする〚経過観察〛
最初に、 / キー(ふつう右下にあるやつ・ピリオドと右Shiftのあいだ)の単打で、「 a 」を入力できるようにしました。
基本的にはふつうに A キー(左端にあるやつね)で a を入力できればよい、というのが前提のもと、ヴァリアントとして右側でも a を入力できたら何らかが捗るかと思ったので。(ごく単純に考えて、左端と右端が同時に自由を失うような状況はそうそうないはずなので、左がなんらかの理由で不自由なときのオプションとしての右 a の可能性)
これ自体は「まだ恩恵を実感できるほどではないが、依然として可能性を感じる」というくらい。このまま経過観察。
しかしはなはだしい副作用があったので、それをどうにかする必要がありました。以下。
# 右サムクラスタに ! および ? を追加〚いまいち〛
わたしの場合、「 ? 」はかなり高い頻度で入力する必要のある字です。(いわゆるプログラミングというやつでは、 ? がかなり多用されます。しかも、カンマ( , )なんかよりも軽い結合度で使われます。なんらかの字句 → ? → つづく字句、と入力する仮定で、思考の中断は一切あってはならない、といえるくらい。ああ、もちろん日常会話でも使いますね)
前述のとおり / キーを a にすると……、 Shift+/ が ? じゃなくて A になるんですよ。(当たり前ですね)
代わりの ? をどこかに置かなければならなかった。ということで、右サムクラスタに ? を置きました。キーが空いていたので(こういうときにとりあえずはめ込める箇所の余裕があるというのはまあまあ大事だと思っています。キーはたくさんあるほうがよろしい)。
ついでに隣に ! を置きました。ロールプレイングゲーム上での会話だと、 ! もまあ多用しますし、 ? と組み合わせて使うことも多い。(「マジで!?」的な)
結果としてはよろしくなかったっすね。
サムクラスタで空いているキーなんてのは、そりゃ押しやすくないから空いているんですよ。そんなところでは ? の需要に応えられない。
一応そのままにしてありますが、残す積極的理由があるわけではないので、他のキーを置く理由が生じたら置換されるでしょう。
# 二鍵同時で '?' 〚ボツ〛
代替案として、 / + 別のもう1キーの二鍵同時で ? を入力できるようにしてみました。
これはあっさりとボツでしたね。(さっきも書いたように、)ことプログラミングという行為において、 ? は軽々と入力できないといけないんですよ。二鍵同時は動作として高コストすぎる。ズレて同時判定にならなかったときなんかは最悪 of 最悪です。それならサムクラスタを押しにいくほうがマシ(サムクラスタに配置した ? は単打なので、押しづらいとしてもミスることは、まあ、ない)。
# Shift+/ で '?' になるように〚良好〛
落ち着ついて考えましょう。
いままでは、 Shift+/ で ? を入力していたのだから、それと同じことができればいいわけですよ。
ということで、 / が a になるのはそのままに、 Shift+/ だけ ? になるようにしました。
これはかなりうまくいっていると思います。
AutoHotkey経由で実現しているのでなんか重たい手触りではありますが、 ? のあとには一瞬の小さな間があるものなので(コーディング的には、一般に、スペースをひとつ挟みます)、許容範囲のような気がしています。
# ナカグロを H の左隣あたりに配置〚要改善〛
/ を a にしてしまったことで生じた、もうひとつの問題があります。それは、そのままだとナカグロの入力ができないということです。
これは、自然言語の入力において、はなはだしい問題です。日本語において、ナカグロは、読点よりも区切りの強さが低いんですよね。「アメリカ、イギリス、フランス」と「アメリカ・イギリス・フランス」なら、後者のほうが国名間の区切りが弱いんですよ。つまり後者のほうがより流れるように入力することが期待される。よってナカグロは(ことによると読点と同等かそれ以上に)押しやすくなければならない。
とりあえずは H の左あたりに事実上空いていたキーがあったのでそこに押し込みましたが、これはまったくろくでもないという感想です。もっと押しやすい場所に移動させなければならない。
# B キーをホールドしたときに Ctrl になるように〚良好〛
今までは、 Ctrl は、 Z キーのホールドおよび / キーのホールドでした。
これはほぼほぼ不自由のない配置だと思っています。Ctrlキーを文字領域内に引っ張ってきた、というかたちですね。(Ctrlという多用する修飾キーが、外側に追いやられているのはなんとも非合理的でしょう)
しかし、これにはひとつだけ大きな問題がありました。
「左側だけで Ctrl+Z (一般的なアンドゥのショートカット)ができない」んですよ。
……というと絶望的に聞こえるかもしれませんが、案外そうでもないです。アンドゥを叩くときなんていうのはけっこうな蓋然性で一旦フローが中断されるものなので、右Ctrl( / キーのこと)+Z でもさほど実害はありませんでした(あとそもそもミスらなきゃいいんですよ・暴論)――キーボード内においては。
右側でマウスを使いながら、という条件がつくと、さすがに困るものがあります。
それを改めました。これからは B+Z でアンドゥができます。
これはよろしい感触。継続されそうです。
# 上下アローキーの位置を変更〚まあまあ〛
上下アローキーの位置を変えました。
サムクラスタの押しやすいところに Arrow Down 、L のふたつ右に Arrow Up です。
最初は上下逆に割り当てたんですが、なんか直感に反する感じがして誤操作が多かったので、上記のかたちに入れ替えました。それでも上下を取り違える問題は起きているんですが……習熟で解決するか構造上の改善を図るかは、ちょっと微妙なところです。
もともとは , キーの下に Up 、 . キーの下に Down があって、まあべつに押せなくはないんですが、使用頻度を考えるともうすこし押しやすくてもいいかと思った、というのが変更の理由です。
# 「」マクロ〚要観察〛
J+K 同時打鍵で、[「」を入力して確定してひとつもどる]マクロが起動するように。
主にロールプレイングゲームのセッション用です。
(当該環境においては、まず[セリフを入力する]という意識のもと「」を入力し、それから具体的なセリフを考えながら入力していく――という流れが多発するので、「」だけをコンパクトに入力できるとよさそうなわけです)
まだ設定してからまだセッションしていないので、このあと要観察。
いや、現状すでにちょっと誤発動しがちな疑いがある。一方をホーム段じゃないキーにしたほうがいいかも。( J と K はホーム位置なので、ショートカットなり何なりで使用する頻度が一般的にいって高い)
# |《》マクロ〚要観察〛
J+K+L 同時打鍵で、[|《》を入力して確定してひとつもどる]という挙動が発動するように。
カクヨム(のそれに倣ってさまざまな環境で採用されている)ルビ記法ですね。
ルビの使える環境においてはかなり多用するので用意してみた。
# <><>→《》〚要観察〛
Shift を押しながら ,+. 同時打鍵で<>が入力されるように。(ふつうに入力するなら , → . の順番になるところを、同時でいいようにしたということ)
+
<><>を《》に変換できるように。(ふつうは<<>>を変換して《》にする)
《》はけっこう多用する(一部のロールプレイングゲームにおいてはものすごい頻度で使用されるほか、前述のルビ記法や、ある種のライトノベル的文体においては特定用語をくくるのにもちいられる)にもかかわらず、<<>>を変換するというのはダルいと思ったので(同指二連の二連続なんですよね)。
同指二連×二連続よりは二鍵同時×二連のほうがマシそうな気がしたので、この実装です。
そんなに悪くない気がしつつも、まだあまり使う機会が発生していないので要観察。
# 。。。マクロ〚一部良好〛
.+/ キー同時押しで「。。。」が入力されるように。( / は前述のとおり a になっていますが、これはコードじゃなくてキー基準で発動するので、 / キーを押すということ)
三点リーダーの補助用。
あと「。。。」から「……」(三点リーダー二倍)に変換できるようにもした。
同時による入力補助よりはこっちのほうがよく効いている。
# ――〚きわめて良好〛
「ーー」から「――」(倍角ダーシ)になるように。
これは配列とかキーとか関係ない純然たる辞書登録です。
とくに副作用もなく使いやすく効果が大きい。たいへん良好です。
# 三鍵同時で拗音〚非実用的〛
一部かな配列における「個別の音のキーの同時押しで拗音」という考え方を表面的にパクってみたやつ。
たとえば s+h+a の同時押しで「しゃ」になる、という挙動。 shark.
これはまったく非実用的でした。
かな入力なら拗音は“一音”ととらえるのが自然(なので同時打鍵一回で出せるのは合理的)なんですが……、ローマ字入力だとそうではない。「しゃ」を構成する要素として s, h, a があるのはまったく自然であり、かつ、順序にも意味があることなんですよね、ローマ字入力の世界においては。音韻や音素の観点から、「しゃ」を表現するには s → h → a と打つべきなんですよ。
なのでまったく話にならなかった。三鍵同時の運動的強度も、ローマ字入力の流れのなかではきわめて不自然です(ローマ字入力は原則的に単打)。ロールオーバー気味に順次叩いたほうが速いまであるし……。
# 「の」単打〚良好~経過観察〛
「の」を単打で入力できるようにしました。 Shift+N です。
日本語には、けっこうな頻度で使用し、しかしQWERTローマ字ではかなり入力しづらい、接続助詞が、ひとつだけあるんですよ。
そう、「ものの」(逆接の接続助詞)ですね。
MONONO は、すべて同手で、下段と上段にわかれ、一方が薬指列で、1キーごとに遠く離れたキーに飛ぶという性質をもつ字句です(QWERTローマ字入力においては)。左右一体型のキーボードなら局所最適化によって“同手”の部分を打開できなくもないんですが、分割型だとそうもいかない。
これを解決するために、 Shift+N で「の」を単打できるようにしました。
「の」は「ものの」にかぎらず、それ単体で多用する格助詞でもあります。
あと、ロールプレイングゲームの場においては、終助詞としての「の」も、キャラクターによっては、まあまあな頻度で使います。
それを単打できるようになったのは、けっこうな効果がある気がしています。
Shift の必要があることから、 n と o を順次打鍵するほうがマシなケースというのはまあありえて、前後の流れによってどっちで入力するほうが円滑なのかは、これからチューニングしていく必要がありそうですが。