キー配列
キー配列（キーはいれつ、キーボード配列、鍵盤配列、キーボードレイアウト、）は、タイプライターやテレタイプ端末の鍵盤や、コンピュータのキーボードの文字の並びである。
鍵盤の『鍵』の字が常用漢字外だったためJIS用語集では「けん盤配列」（けんばんはいれつ）だが、当記事では通称の「キー配列」を使用する。
キー配列は、キーボード上にどういう位置関係でキーを設置するかという「物理配列」と、設定された物理配列に対してどの文字（機能キーなどを含む）をどのような順序で配列するかという「論理配列」とに大別される。
論理配列は、アルファベットやカナ共に様々なものが存在するが、英字ではQWERTY配列、ドイツ語圏・チェコ語圏ではQWERTZ配列、フランス語圏ではAZERTY (ASERTY) 配列、日本語の仮名入力ではJIS配列がデファクトスタンダードとなっている。同様に、中国語における漢字入力（繁体字における倉頡法の配列など）、朝鮮語におけるハングル入力（2ボル式の配列が標準的）の配列があり、いずれもQWERTY配列である。そのためQWERTY配列は「キー配列のデファクトスタンダード」と呼ばれることがある。
QWERTY配列がどのように成立したかについて、「初期の機械式タイプライターでは、あまり高速に打鍵しすぎると印字ハンマーが絡まってしまうために、よく連続打鍵される文字をあえて左右の離れた位置に配置した」という説がオーガスト・ドヴォラックやポール・アラン・デービッドなどによって流布されたが、異論もあり、定説はない。
物理配列では、主にコンピュータではApple IIなどの流れを汲むMacintoshや各社UNIX端末でのキー配列と、IBMがPC/AT後期にメインフレーム端末の操作性を持ち込んだ101キーボード系に大別される。
101キーボード系の主なものには以下がある。
上記にMicrosoft Windows用の3キーを追加したものは、それぞれ104キーボード、105キーボード、109キーボードとも呼ばれる。更に電源・音量などの3キーを追加したものは、それぞれ107キーボード、108キーボード、112キーボードとも呼ばれる。これらの101などの数字は本来はキートップの数であるが、実際は各メーカーにより数と配置は異なり、あくまでも基本的な配列に対する呼称である。このため、実際には104個や107個やそれ以上でも、現在でも「101キーボード」と呼ばれる場合は多い。
また、Windows用キーボードでSunやHPのUNIXのようなキー配列をエミュレートするためのWindows用ソフトウェアなどが知られている。
PC用とはIBM PC系の配列である。上述のように、USでは101/104英語キーボード、ヨーロッパでは102/105多国語 (Multi Language) キーボード、日本では106/109日本語キーボードが主流である。ただし実際のキー数やキートップ上の表記は、メーカーやモデルや言語によって、14インチ以下のノートPCは通常テンキーがない、電源・音量・アプリケーション起動関係のキーなど多少の相違がある。
オリジナルのIBM PCおよびPC/XTで採用された。後のATキーボードとの対比でXTキーボードとも呼ばれる。基本的な配列はIBM PC登場以前の各社配列と大差はないが、テンキーとカーソル移動キー等が兼用されており、NumLockキーで切り替えるのが大きな特徴である。IBM PC/ATで採用されたため、ATキーボードとも呼ばれる。83 (XT) キーボードとの外見上の差異は「メインキー部とテンキー部が分割された」「SysReqキーが増えた」の2点。接続端子の形状と電気的な仕様は83 (XT) キーボードと同一だが、スキャンコードが変更されているため、（スキャンコードを切り替え可能な一部の製品を除いて）83 (XT) キーボードとの互換性はない。「IBM 101拡張 (Enhanced) キーボード」。IBM PC/AT後期より採用され、同時にPC/XTにも発売された。横一文字のEnterキーが特徴。後にANSI X3.154-1988
（2002年1月15日のINCITS（International Committee for Information Technology Standards）発足後は ANSI INCITS 154-1988）として規格化され、以後のPC/AT互換機の主流となった。後述の104英語キーボード、102/105多国語キーボード、106/109日本語キーボードなどのベースでもある。アジア圏の古い製品を中心に、Backspaceキー、あるいは右Shiftキーのサイズを削ってキーを一つ増やし、代わりに「\」キー部分までEnterキーを拡張した101キーボードの変種が見られる。後述する韓国のKS規格・103キーボードはこの変種の派生型に当たる。当該変種の左右反転したL字型のEnterキーは俗に「Big-asian（あるいはBig-ass）Enter」と呼ばれる。
多国語用に、101キーボードをベースにして101キーボードにおける左Shiftと「Z」の間にキーを1つ追加したもの。Enterキーは180度回転させた逆L字型。ISO/IEC 9995で規格化されているが、細部は各言語用で異なる。イギリス、カナダ、フランス、イタリアなどで用いられる。ただしこれら地域でも101キーボードで済ましてしまうことも多い。KS X 5002（古い番号では KS C 5715）で規格化されている、韓国語用のキーボード。いわゆるBig-ass Enterキーを持つ101キーボードの亜種をベースに、スペースキーの左に「한자（ハンジャ：漢字）」キー、右に「한/영（ハン/ヨン：韓/英）」キーを追加したもの。KS X 5002は論理配列として2ボル式を想定しているが、3ボル式およびその変種を利用することもある。
ただし、漢字の使用機会が著しく減少していることもあり、韓国内でも101キーボードで済ませることが多い。
101キーボードをベースに、Windowsキー2個とメニューキーを追加したもの。
ブラジル規格協会 (ABNT) ・NBR 10346 variant 2（メインキー部）および10347（テンキー部）で規格化されている、ブラジルポルトガル語用キーボードの配列。102キーボードをベースに、“Ç”キーを追加、さらにテンキーの“＋”キーを上下に分割したことで2つキーが増えたもの。両シフトキー間に12個のキーが並び、テンキーにコンマとピリオドがあるのが特徴。
テンキー部は“＋”キーが上下に分割されて上が“＋”、下が“．”となり、“0”の右隣のキーは“．”ではなく“，”（NumLock解除時は他キーボード同様“Del”）となっている。
“／”キーがなく、両シフトキー間のキー数が11（フルキーボードの総キー数が103）となる、NBR 10346 variant 1という規格も存在する。この配列の場合、“／”はAltGr+Q、“？”はAltGr+Wで入力する。102キーボードをベースに、Windowsキー2個とメニューキーを追加したもの。
「日本語106キーボード」「OADG 106キーボード」などと呼ばれる。101キーボードをベースに、日本語入力（JIS配列）で必要な「変換」「無変換」「カタカナ/ひらがな」などのキー（言語入力キー）を追加したもの。Enterキーは逆L字型であり、正確には102キーボードがベースともいえる。1991年に日本IBMのPS/55シリーズ用に追加された5576-A01キーボードの配列が、OADGにも採用され、DOS/VおよびPC/AT互換機の普及とともに日本で事実上の標準となったもの。102キーボードと拡張された文字キーの数は同じだが、スキャンコードが違うためソフト的に配列を入れ替えても同じように入力することはできない。
具体的には、102キーボードの数字の1の左隣のキーはスキャンコードでは同じ位置にある「全角/半角」キーと同じである。従って文字キーの数が一つ減ることになるがこれをBackSpaceキーを分割してキーを追加することによって補っている。同様に、102キーボードで「Z」キーの左に追加されたキーが106キーボードでは無い代わりに、右端にキーが追加されているが、これらのスキャンコードは同一ではない。このように文字キーの位置が異なるためそのままでは106キーボードと同様の利用はできないのである。
106キーボードをベースに、Windowsキー2個とメニューキーを追加したもの。2019年現在はこれが主流。OADGで標準化されている。右Windowsキーを省略した108キーも存在する。
キヤノンのキヤノワードα370（1991年5月発売）で初めて採用された。日本語入力のできる速記用ワープロ、スピードワープロ用に開発されたキーボード。物理配置はいわゆる左右分離式で、基本は右手で母音、左手で子音を担当する。文字キー自体は10個しかないため、シフトキーで補うほか、複数キーの同時押しによって単語を纏めて入力する。とくにキーの組み合わせは莫大で、テキスト3冊分に及ぶという。
1991年10月16日に学校法人川口学園早稲田速記ワープロ事業部から「ステノワード」が発売される。システムの開発者は学校法人川口学園、早稲田速記ワープロ事業部門の柴田邦博。後述のステノタイプのようにニーモニック（同時押しするキーの組み合わせ）を割り当てることで、よく用いられる文句のパターンをコマンド入力したり、文章同士を組み合わせることで適切な文句を一括入力することも可能。地上デジタル放送と聴覚障害者向けのリアルタイムキャプションが始まると、その用途に活用されるようになった。主な用途がリアルタイムであるから、ニュースなど生放送において欠かせない。
アルファベットの配列は、タイプライターの伝統もあり、国・言語によってきわめて多種多様である。また、入力の効率化のため特に工夫されたものも存在する。ここでは主なもののみを示す。日本で簡単に手に入るキーボードでは、欧文記号類の配列は大きく分けて次の2種類に分類できる。アルファベット部分はどちらもQWERTY配列である。ロジカルペアリング () は、シフトキーによってASCIIコードの下位4ビットが変化しないという特徴があり、タイプライタペアリングを文字コード順に並べ直したような設計になっている。
なお、これは大きく分けた分類であり、実際にはそれぞれいくつかのバリエーションがある。
2019年現在では、タイプライターペアリングは英文用ということでカナが配列されておらず、ロジカルペアリングにはカナもJIS配列されていることが多い（JISキーボード）。しかし、1990年代の初めぐらいまでに発売されていたMacintoshは、記号類がタイプライターペアリングでカナがJIS配列という折衷型が標準だった。古いUNIXワークステーションも記号類はタイプライターペアリングのものが多い。いずれも2019年現在標準で売られているものは記号類もロジカルペアリングになっているが、当時からこれらの機種を使っていた人にはタイプライターペアリングのキーボードを好む人が多い。
なお、タイプライターペアリングのことを、ASCII配列と呼ぶことがある。これは、タイプライターペアリングを規定した最初の規格であるANSI X4.14-1971が、『American National Standard Alphanumeric Keyboard Arrangements Accommodating the Character Sets of ASCII and ASCSOCR』というタイトルだったからである。ただし、この規格を改訂したANSI X4.23-1982（のちにANSI X3.154-1988を経て、現ANSI INCITS 154-1988）のタイトルに「ASCII」は含まれていない。カナ系は、基本的に1打鍵で1つのカナを入力する方式。キーが足りない分はシフトで補う。漢字はカナ読みを入力してかな漢字変換を用いるのが一般的。日本工業規格が制定したJIS配列（JIS X 6002情報処理系けん盤配列）をベースにしたものがデファクトスタンダードになっている。
2打鍵系は、いくつかに分類可能である。
いずれの方式においても、常に二打鍵で入力することを保証しているわけではない。テンキーのキー配列は、電卓型と電話型に大別される。なお、電卓型のキー配列は、1913年にグスタフ・デイビッド・サンドストランドが発明した手動卓上計算機（アメリカ特許第1198487号）が起源であり、電話型のキー配列は、1960年にリチャード・デイニンジャーが発表した論文が基となっている。
電卓型では電卓で使用頻度の高い「0」や「1」を手前に配置したもので、これは国際標準化機構 (ISO) によって規格化された。これに対して、電話型は初期のパルス式の電話においてキーの数字に対応した個数のパルスが割り振られ、「0」には10が割り振られたために左上から順に1から数字が並べられ、これは国際電気通信連合 (ITU) によって規格化された。
元来、米国では電話番号がアルファベットの電話交換局名と数字で構成されていたため、電話機の各数字キーにアルファベットが割り当てられていたことに由来する。QとZは局名としては使われていなかったため実装方法が統一されず、他国の製品には米国のデファクトスタンダードと異なるキーにQとZが割り当てられていたものがあった。電話のキー配列はITUのおよびISO/IEC 9995-8:2009で標準化されている。
日本語の入力方法としては母音と子音の組合せを選んでカナを入力するのが一般的であるが、操作方法に以下の種類があり、そのキー配列は標準化されていない。キー配列には、著作権が認められないという議論がある。
loadkeys us
loadkeys jp106
など
JIS 配列のキーボードをUS配列として使うには
/etc/rc.conf に
keymap="us.iso"
を追記して再起動する。
さらに Ctrl と Caps を入れ替えるには
/usr/share/syscons/keymaps中の
029 を 058 に
058 を 029 に
書き替えて、
をrootで実行するか、もしくは再起動する。
/etc/rc.conf に
wscons=YES
を追加する。
/etc/wscons.conf に
encoding jp.swapctrlcaps
等を記述することによってJISキーボード配列でControlとCapsLockを入れ替えることができる。
setxkbmap jp
setxkbmap us dvorak
など。
以下のようにしてキー配列の追加・切り替えができる。
また、キー配列の切り替えは、言語バーから選択したり、Alt+Shiftを押すことによっても可能。
ただし、この場合は配列とともにIMEもセットで変わってしまう、例えば 101 配列上で MS-IME を使うということはできない。このような目的の場合はドライバを交換するしかない。
ここで適切なドライバを選ぶ。不適切なドライバを選ぶと操作できなくなる。またこのドライバはマウスのドライバも兼ねているので不適切なドライバを選ぶとマウスが使えなくなることもある。
フックをかけることで擬似的に切替えたり、切替えのできるドライバに交換することによって目的を達成しようとするものはいくつか存在する。
Mac OS 9までなら「キーボード配列」、macOSではKeyboardLayoutsやKEXTで行う。システム環境設定の言語環境ペインを選び、入力メニュータブの一覧のチェックを入れる (macOS)。言語環境ペインは入力メニューの一番下にある「“言語環境”を開く」からすぐにアクセスできる。配列は Tiger：同一覧にある「キーボードビューア」のチェックを入れる、Tiger以前：アプリケーションフォルダ以下、ユーティリティフォルダ内の「キーボード配列 (KeyCaps)」で確認できる。
また、上記の方法以外に、入力プログラムのローマ字ルールをカスタマイズすることでも疑似的に実現できる。