タグ付けされた質問 「events」

4
Elispからの任意のキーイベントをシミュレートするにはどうすればよいですか?
elispから任意のキーイベントをシミュレートすることは可能ですか?特定のキーのバインドを見つけて、そのコマンドを対話的に呼び出す方法を知っていますが、そのキーイベントがコマンドにバインドされていない場合はどうなりますか? 1例、私はバインドしたい場合C-`と同じ動作をするESCキーすべてのコンテキストでは?

2
文字列をキープレスに変換する
elispの文字列が与えられた場合、その文字列を再作成するために必要なすべてのキープレスを受け取るemacsをシミュレートしたいと思います。したがって、文字列 "Hello"を指定すると、emacsはShift + H、e、l、l、oを押した場合とまったく同じように動作します。これは常にテキストをバッファに挿入することと同じではないことに注意してください-isearch-modeのようないくつかのモードは直接keypressイベントをリッスンします。 これが必要な理由は、すべての入力がキーボードからのものであると想定したり、バッファ/ウィンドウ/フレームの変更がキーボード入力イベントに関連付けられると想定したりする多くのモードや拡張機能があるためです。彼らがそのイベントに関連するデータを検査する時間。既存のコード本体とシームレスに連携するように取り組んでいる音声認識モードの場合、elispを直接呼び出してアクションを実行するだけでなく、キーを押してアクションを実行するようにelispに指示する必要があります。 unread-command-eventsを見つけましたが、文字列を必要なキーシーケンスに変換する既存のコードは知りません。そのようなものはすでに存在していますか?

2
「最初のキーを押しながらフック」のようなものを探しています
Emacsセッションを実行していて、たとえば20分間コンピューターから離れたとします。Emacsセッションに戻ったら、ある時点で、Emacsウィンドウにフォーカスがある間に何らかのキーを押します。これは、私がfirst-keypress-in-a-while 1と呼んでいる種類のイベントの例です。 このようなイベントが発生したときにEmacsが自動的にコードを実行する方法を探しています。IOW、私は何かのようなものを探していfirst-keypress-in-a-while-hookます。 Emacsの標準的なフックを調べても、すぐに良い候補を特定することはできませんが、この仕事を実行できる明白でないものがあるかもしれません。 あるいは、そのようなフックの機能をシミュレート/近似できる他の方法はありますか? 1もちろん、in-a-while最小時間間隔、たとえば15分に対応するユーザー設定可能なパラメーターを指します。私が興味を持っているイベントは、この間隔より長い非アクティブな期間の後の最初のキーを押すことです。「非アクティブ」とは、Emacsがユーザー操作を検出しない状態を意味します。つまり、キーを押したり、マウスをクリックしたりしないなどです。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.