Next: Waiting, Previous: Reading Input, Up: Command Loop [Contents][Index]
特定のスペシャルイベント(special
event)は、読み取られると即座に非常に低レベルで処理されます。read-event関数はそれらのイベントを自身で処理して、それらを決してリターンしません。かわりに、スペシャルイベント以外の最初のイベントを待ち、それをリターンします。
スペシャルイベントはエコーされず、決してキーシーケンスにグループ化されず、last-command-eventや(this-command-keys)の値として出現することもありません。スペシャルイベントは数引数を破棄し、unread-command-eventsによる読み戻しができず、キーボードマクロ内に出現することもないでしょうし、キーボードマクロ定義中にキーボードマクロに記録されることもありません。
しかし、スペシャルイベントは読み取られた直後にlast-input-event内に出現するので、これがイベント定義にたいして実際のイベントを探す方法になります。
イベント型iconify-frame、make-frame-visible、delete-frame、drag-n-drop、language-change、およびsigusr1ようなユーザーシグナルは通常この方法により処理されます。何がスペシャルイベントで、スペシャルイベントをどのように処理するかを定義するキーマップは、変数special-event-map(Active Keymapsを参照)の中にあります。