comparison man/xemacs/keystrokes.texi @ 3171:4cad7ff4a200

[xemacs-hg @ 2005-12-24 19:53:53 by aidan] Incremental changes to improve Russian C-x processing--support punctuation, XFree86 and Sun keyboards, document the facility.
author aidan
date Sat, 24 Dec 2005 19:54:01 +0000
parents abe6d1db359e
children 9db20cbbe4c7
comparison
equal deleted inserted replaced
3170:db0631f96757 3171:4cad7ff4a200
34 * String Key Sequences:: Available for upward compatibility. 34 * String Key Sequences:: Available for upward compatibility.
35 * Meta Key:: Using @key{ESC} to represent @key{Meta} 35 * Meta Key:: Using @key{ESC} to represent @key{Meta}
36 * Super and Hyper Keys:: Adding modifier keys on certain keyboards. 36 * Super and Hyper Keys:: Adding modifier keys on certain keyboards.
37 * Character Representation:: How characters appear in Emacs buffers. 37 * Character Representation:: How characters appear in Emacs buffers.
38 * Commands:: How commands are bound to key sequences. 38 * Commands:: How commands are bound to key sequences.
39 * Non-Latin keyboards:: Commands on keyboards where one can't type Latin.
39 @end menu 40 @end menu
40 41
41 @node Intro to Keystrokes, Representing Keystrokes, Keystrokes, Keystrokes 42 @node Intro to Keystrokes, Representing Keystrokes, Keystrokes, Keystrokes
42 @section Keystrokes as Building Blocks of Key Sequences 43 @section Keystrokes as Building Blocks of Key Sequences
43 @cindex character set 44 @cindex character set
454 character, is displayed as @samp{\243}. 455 character, is displayed as @samp{\243}.
455 456
456 The variable @code{ctl-arrow} may be used to alter this behavior. 457 The variable @code{ctl-arrow} may be used to alter this behavior.
457 @xref{Display Vars}. 458 @xref{Display Vars}.
458 459
459 @node Commands, , Character Representation, Keystrokes 460 @node Commands, Non-Latin keyboards, Character Representation, Keystrokes
460 @section Keys and Commands 461 @section Keys and Commands
461 462
462 @cindex binding 463 @cindex binding
463 @cindex customization 464 @cindex customization
464 @cindex keymap 465 @cindex keymap
512 and behaves differently depending on its setting. Until you are interested in 513 and behaves differently depending on its setting. Until you are interested in
513 customizing, you can ignore the information about variables. When you 514 customizing, you can ignore the information about variables. When you
514 are ready to be interested, read the basic information on variables, and 515 are ready to be interested, read the basic information on variables, and
515 then the information on individual variables will make sense. 516 then the information on individual variables will make sense.
516 @xref{Variables}. 517 @xref{Variables}.
518
519 @node Non-Latin keyboards, ,Commands, Keystrokes
520
521 @cindex russian
522 @cindex greek
523 @cindex ``russian c-x''
524 @cindex try-alternate-layouts-for-commands
525
526 If your computer has a keyboard designed for a language like Russian or
527 Greek, where you have to go to some trouble to type Roman-alphabet
528 characters, then typing @kbd{C-f} to call @code{forward-character} is
529 very inconvenient.
530
531 To address this, XEmacs allows you to pretend that your keyboard has a
532 US layout for such commands. That is, you can type @kbd{C-Cyrillic_che
533 C-Cyrillic_a} and XEmacs will work out that it should call the command
534 that @kbd{C-x C-f} is bound to@footnote{You can, of course, override
535 this with an explicit binding for @kbd{C-Cyrillic_che C-Cyrillic_a} to
536 something else.}. Function keys, like @key{F1},
537 @key{Shift} or @key{Control} are not handled by this, just alphanumeric
538 characters and punctuation.
539
540 The main user variable associated with this functionality is
541 @code{try-alternate-layouts-for-commands}. Setting this to @code{nil}
542 inhibits this translation, which would be appropriate if your keyboard
543 can handle the Roman alphabet but doesn't have the US layout, and you
544 want to avoid the possible confusion.
545
546 If @code{try-alternate-layouts-for-commands} is @code{t} but this
547 functionality doesn't work for you under X11, check the value of the
548 variable @code{x-us-keymap-description}. This is a hardware-specific
549 map from key codes to the US layout, and can be initialized from the
550 output of @code{xmodmap -pke}; see the documentation for that variable
551 and for @code{x-us-keymap-first-keycode}.
552