unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Does a diagram of the key input subsystem exist?
@ 2021-08-31 20:54 Perry E. Metzger
  2021-09-01  2:30 ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Perry E. Metzger @ 2021-08-31 20:54 UTC (permalink / raw)
  To: emacs-devel

So in an attempt to debug the input method I've been trying to write, 
I've been trying to understand how typed keys make it from the user up 
to the point where processing stops, and failing very miserably. The 
elisp manual has a maze of hints, but they're not nearly as informative 
as I would have hoped.

Is there anything like a document or diagram that lists the steps, 
translation tables, maps, etc. that every keystroke goes through in its 
journey? My guess is no, but I thought I would ask.


Perry





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Does a diagram of the key input subsystem exist?
  2021-08-31 20:54 Does a diagram of the key input subsystem exist? Perry E. Metzger
@ 2021-09-01  2:30 ` Eli Zaretskii
  2021-09-01 12:44   ` Perry E. Metzger
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2021-09-01  2:30 UTC (permalink / raw)
  To: Perry E. Metzger; +Cc: emacs-devel

> Date: Tue, 31 Aug 2021 16:54:43 -0400
> From: "Perry E. Metzger" <perry@piermont.com>
> 
> So in an attempt to debug the input method I've been trying to write, 
> I've been trying to understand how typed keys make it from the user up 
> to the point where processing stops, and failing very miserably. The 
> elisp manual has a maze of hints, but they're not nearly as informative 
> as I would have hoped.
> 
> Is there anything like a document or diagram that lists the steps, 
> translation tables, maps, etc. that every keystroke goes through in its 
> journey? My guess is no, but I thought I would ask.

You mean, the description of what the read_char does?



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Does a diagram of the key input subsystem exist?
  2021-09-01  2:30 ` Eli Zaretskii
@ 2021-09-01 12:44   ` Perry E. Metzger
  2021-09-01 13:35     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Perry E. Metzger @ 2021-09-01 12:44 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

On 8/31/21 22:30, Eli Zaretskii wrote:
>> Is there anything like a document or diagram that lists the steps,
>> translation tables, maps, etc. that every keystroke goes through in its
>> journey? My guess is no, but I thought I would ask.
> You mean, the description of what the read_char does?
>
read_char is only a portion of the overall processing path, but a 
description of read_char would definitely need to be part of such a thing.

Perry





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Does a diagram of the key input subsystem exist?
  2021-09-01 12:44   ` Perry E. Metzger
@ 2021-09-01 13:35     ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2021-09-01 13:35 UTC (permalink / raw)
  To: Perry E. Metzger; +Cc: emacs-devel

> Date: Wed, 1 Sep 2021 08:44:07 -0400
> Cc: emacs-devel@gnu.org
> From: "Perry E. Metzger" <perry@piermont.com>
> 
> On 8/31/21 22:30, Eli Zaretskii wrote:
> >> Is there anything like a document or diagram that lists the steps,
> >> translation tables, maps, etc. that every keystroke goes through in its
> >> journey? My guess is no, but I thought I would ask.
> > You mean, the description of what the read_char does?
> >
> read_char is only a portion of the overall processing path, but a 
> description of read_char would definitely need to be part of such a thing.

So what else, in addition to read_char, are you interested in?  maybe
if you'd ask more specific question, we could answer some of them.

To answer your question: the only documentation of this I know of is
in the Command Loop chapter of the ELisp manual.  Some more is in
large comments in keyboard.c.

I think we do understand the overall picture, and could describe it
(which it would perhaps then make sense to put the description into
the comments in keyboard.c), but only on a high enough level,
disregarding low-level details.  You'd need to read the code to find
out the rest.



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-09-01 13:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-31 20:54 Does a diagram of the key input subsystem exist? Perry E. Metzger
2021-09-01  2:30 ` Eli Zaretskii
2021-09-01 12:44   ` Perry E. Metzger
2021-09-01 13:35     ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).