@node Keyboard Events
@subsection Keyboard Events
+@cindex keyboard events
There are two kinds of input you can get from the keyboard: ordinary
keys, and function keys. Ordinary keys correspond to characters; the
@node Reading Input
@section Reading Input
+@cindex read input
+@cindex keyboard input
The editor command loop reads key sequences using the function
@code{read-key-sequence}, which uses @code{read-event}. These and other
@node Image Cache
@subsection Image Cache
+@cindex image cache
Emacs stores images in an image cache when it displays them, so it can
display them again more efficiently. It removes an image from the cache
@node Frame Parameters
@section Frame Parameters
+@cindex frame parameters
A frame has many parameters that control its appearance and behavior.
Just what parameters a frame has depends on what display mechanism it
@node Reading File Names
@subsection Reading File Names
+@cindex read file names
+@cindex prompt for file name
Here is another high-level completion function, designed for reading a
file name. It provides special features including automatic insertion
@node Splitting Characters
@section Splitting Characters
+@cindex split character
The functions in this section convert between characters and the byte
values used to represent them. For most purposes, there is no need to
@end example
@end defun
+@cindex generate characters in charsets
@defun make-char charset &optional code1 code2
This function returns the character in character set @var{charset} whose
position codes are @var{code1} and @var{code2}. This is roughly the
@node Recording Input
@subsection Recording Input
+@cindex recording input
@defun recent-keys
This function returns a vector containing the last 300 input events from
@node Decoding Output
@subsection Decoding Process Output
+@cindex decode process output
When Emacs writes process output directly into a multibyte buffer,
it decodes the output according to the process output coding system.
@node Accepting Output
@subsection Accepting Output from Processes
+@cindex accept input from processes
Output from asynchronous subprocesses normally arrives only while
Emacs is waiting for some sort of external event, such as elapsed time
@node Network Servers
@section Network Servers
+@cindex network servers
You create a server by calling @code{make-network-process} with
@code{:server t}. The server will listen for connection requests from
@noindent
@xref{Positions}, for more details on buffer positions.
+@cindex cursor
As far as the user is concerned, point is where the cursor is, and
when the user switches to another buffer, the cursor jumps to the
position of point in that buffer.