はじめに
以前は、JIS配列とUS配列の違いをそれなりに気にしていました。
コードを書くなら、@、:、[]、{}、"、'、\\、| などの記号を頻繁に入力します。キーに印字されている記号と実際に入力される記号が違う状態では、毎日の開発はかなりやりづらいはずでした。
ところが最近、会社の貸与PCでJIS配列として設定されたWindowsに、US配列の外付けキーボードをつないだまま使っています。
印字と入力される記号は一致しません。それでも、思ったほど困っていません。
理由は、コードを自分で入力する時間が減り、日本語でAIに指示する時間が増えたからです。
この記事では、この変化によってJIS配列とUS配列を見る基準がどう変わったかを整理します。
記号の位置より、日本語で指示を書く時間が増えた
AIを使って開発していると、自分がキーボードから入力するものはコードそのものより、日本語による指示が中心になります。
例えば、次のような文章です。
このAPIのレスポンス型を変更してください。既存の呼び出し箇所への影響も確認してください。
0件の場合にnullを返しているが、UI側では空配列として扱いたい。BFF側で空配列へ変換し、既存テストも修正してください。
コードはAIが生成し、自分は差分を読み、必要に応じて追加の指示や小さな修正をします。
最近の入力を大雑把に分けると、次のようになります。
- 日本語で指示を書く
- 検索ワードを入力する
- Gitやターミナルのコマンドを少し入力する
- 必要なときだけコードを直接修正する
もちろん、コードを手で書く場面がなくなったわけではありません。ただ、以前のように何百行ものコードを連続して入力する時間は減りました。
その結果、記号の位置が自分の手に合っているかは、以前ほど大きな問題ではなくなりました。
JIS設定のWindowsにUS配列キーボードをつないでも使えている
現在使っている会社PCでは、キーボード配列の設定を自由に変更できません。一方、外付けキーボードはUS配列です。
メカニカルキーボードが好きで、特に中華系メーカーの製品を使うことがあります。US配列しか用意されていない製品も多く、英字配列のキーボードを使う機会が増えました。
そのため、今の環境は次の状態です。
- OS側の設定はJIS配列
- 物理キーボードはUS配列
当然、印字された記号をそのまま信じることはできません。それでも日本語やアルファベットを入力するだけなら、ほとんど問題ありません。
数年前なら、この状態で毎日プログラミングするのはかなり嫌だったと思います。記号を何度も打ち間違え、そのたびに配列設定を変えたくなったはずです。
今は、日本語で指示を書く作業が大部分を占めるので、「まあいいか」で使えています。これはUS配列が使いやすくなったというより、記号配置への依存が下がったという感覚です。
日本語と英数の切り替えは、むしろ重要になった
一方で、JIS配列の方が明確に便利だと感じる部分もあります。日本語入力と英数入力の切り替えです。
JIS配列のキーボードなら、無変換 と 変換 を使って英数入力と日本語入力を切り替えられます。左右の親指付近にキーがあるため、文章を書いている途中でも切り替えやすく、かなり気に入っています。
US配列のキーボードには、当然ながら 無変換 と 変換 キーがありません。JIS配列として設定された会社PCでUSキーボードを使うと、自分の場合は日本語配列でいう左上の 半角/全角 相当のキーを押して切り替えることになります。
これは少し面倒です。日本語の指示を書きながら、技術用語、ファイル名、コード片を挟むことが多いためです。
設定で補える場合と、補えない場合がある
個人PCであれば、US配列でも設定次第で入力切り替えを使いやすくできます。例えばAutoHotkeyのようなキーマップツールを使えば、Right Alt などの任意のキーにIMEオン・オフを割り当てられます。左の Alt を短く押したときだけIMEをオフにする、といった設定も可能です。
このように、自分で環境を管理できるなら、変換・無変換 キーがないことは必ずしも決定的な欠点ではありません。
一方、会社PCでは事情が変わります。入力を監視・フックする常駐ツールは、情報セキュリティや端末管理の方針によって導入を許可されないことがあります。AutoHotkey自体をキーロガーと呼ぶのは正確ではありませんが、キーロガーと同様に入力を扱えるツールとして、導入が制限される環境はあります。
会社PCで配列設定も変更できず、キーマップツールも入れられないなら、物理キーボードだけで完結する 変換・無変換 キーの価値は大きくなります。キーボードを選ぶときは、理想的なカスタマイズができるかだけでなく、実際に使う端末でどこまで設定できるかも確認した方がよいです。
つまり、今の感覚は次の対比になります。
記号配置の重要性は下がった。
その代わり、日本語入力を快適に切り替えられることの重要性は上がった。
AIコーディングによって、キーボード配列で気にするポイントまで変わってきました。
タイピング速度より、意図を言語化する力が効く
今でもタイピングが速いことは便利です。ただ、AIを使った開発では、コードを速く入力する能力より、やりたいことを正確に言語化する能力がボトルネックになる場面が増えました。
「この処理を修正して」とだけ書くよりも、どの入力で何が起きており、どこでどう扱いたいのかを説明した方が、AIの出力も確認すべき範囲も明確になります。
仕様や問題を文章で整理する作業が増えるほど、重要なのは記号を高速に入力することだけではありません。日本語を無理なく書けること、英数字を必要なタイミングで挟めること、長時間入力しても疲れにくいことが効いてきます。
JISかUSかは、使い方で決めればよい
エンジニアの間では、「US配列の方がプログラミングしやすい」「日本人ならJIS配列でよい」といった話があります。
コードを大量に手入力するなら、記号の位置は確かに重要です。そのため、AIを使うかどうかにかかわらず、記号入力の頻度が高い人は自分に合う配列を選んだ方がよいと思います。
ただ、AIがコードを生成する割合が増えるほど、配列を選ぶ基準は記号の位置だけでは足りなくなります。例えば、次のような観点です。
- 日本語入力を切り替えやすいか
- CtrlやEscを押しやすいか
- 打鍵感が自分に合うか
- 長時間文章を書いて疲れないか
自分の場合は、US配列キーボードをJIS配列設定のまま使えるくらいには、記号配置へのこだわりがなくなりました。その一方で、変換・無変換 による入力切り替えの便利さは、以前より強く感じています。
おわりに
AIコーディングで変わったのは、コードの書き方だけではありません。キーボードに求めるものも少し変わりました。
- コードの手入力が減り、記号配置の重要性は以前より下がった
- 日本語で仕様や問題を伝える時間が増えた
- そのため、日本語と英数を切り替えやすいことの価値は上がった
JIS配列とUS配列のどちらが優れているかは、以前よりも一律には決めにくくなったと感じます。自分がどれだけコードを手入力し、どれだけ文章でAIに指示するかで、快適な配列の条件も変わるのではないでしょうか。