元記事のアーカイブのアーカイブ。なにか問題があれば教えて下さい。以下、アーカイブ。
何となく忘れてしまうのでメモ。

Info の 22.8 Searching the Active Keymaps, 22.9 Controlling the Active Keymaps などから。
「belong」は誰がその変数を管理するかとか、変数の所属先という感じ。
基本
全バッファ共通は global-map 、メジャーモードは local-map を設定する。
マイナーモードはまとめて minor-mode-map-alist に入っていて、マイナーモードの変数が on か off で有効無効が決まる。
このリストの順番も重要。
テキストには文字単位で keymap と言う属性をつけて、キーバインドを設定できる。
あと、これらのどれにもヒットしなければ、 local-function-key-map でキーの変換が行われる。
例えば、環境によって C-i (タブ文字) と <tab> は区別されているが、実質は同じと見なした方が便利なのでここで変換される。
優先順位は見たまま。 text-property 'keymap > minor-mode-map-alist > local-map > global-map > local-function-key-map
override
この優先順位を少し覆すことが出来るしくみが overriding 関係。
CSS の important! のような感じ。
まず、メジャーモードよりマイナーモードの方が優先されてしまうので、これを覆す仕組みが minor-mode-overriding-map-alist 。
ただ、覆そうとしているマイナーモードの名前を知らないといけない。
次に、文字単位の keymap をメジャーモードやマイナーモードから覆す仕組みが overriding-local-map 。
最後に、端末入力の最上位で入力を乗っ取る仕組みが overriding-terminal-local-map 。
これは影響範囲がその端末だけ。
emulation-mode-map-alists は他のメジャーモードやマイナーモードが別のモードのキーマップを乗っ取ったり、 remap で挙動を変えたりする場合に使うもの。
検索してもあまり情報がない (cua, viper とかぐらい)。