diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/keyboard.c | 57 |
1 files changed, 55 insertions, 2 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index 8db3fba2dd2..726f8354156 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -4348,6 +4348,41 @@ static int lispy_accent_codes[] = | |||
| 4348 | #else | 4348 | #else |
| 4349 | 0, | 4349 | 0, |
| 4350 | #endif | 4350 | #endif |
| 4351 | #ifdef XK_dead_abovering | ||
| 4352 | XK_dead_abovering, | ||
| 4353 | #else | ||
| 4354 | 0, | ||
| 4355 | #endif | ||
| 4356 | #ifdef XK_dead_iota | ||
| 4357 | XK_dead_iota, | ||
| 4358 | #else | ||
| 4359 | 0, | ||
| 4360 | #endif | ||
| 4361 | #ifdef XK_dead_belowdot | ||
| 4362 | XK_dead_belowdot, | ||
| 4363 | #else | ||
| 4364 | 0, | ||
| 4365 | #endif | ||
| 4366 | #ifdef XK_dead_voiced_sound | ||
| 4367 | XK_dead_voiced_sound, | ||
| 4368 | #else | ||
| 4369 | 0, | ||
| 4370 | #endif | ||
| 4371 | #ifdef XK_dead_semivoiced_sound | ||
| 4372 | XK_dead_semivoiced_sound, | ||
| 4373 | #else | ||
| 4374 | 0, | ||
| 4375 | #endif | ||
| 4376 | #ifdef XK_dead_hook | ||
| 4377 | XK_dead_hook, | ||
| 4378 | #else | ||
| 4379 | 0, | ||
| 4380 | #endif | ||
| 4381 | #ifdef XK_dead_horn | ||
| 4382 | XK_dead_horn, | ||
| 4383 | #else | ||
| 4384 | 0, | ||
| 4385 | #endif | ||
| 4351 | }; | 4386 | }; |
| 4352 | 4387 | ||
| 4353 | /* This is a list of Lisp names for special "accent" characters. | 4388 | /* This is a list of Lisp names for special "accent" characters. |
| @@ -4368,6 +4403,13 @@ static char *lispy_accent_keys[] = | |||
| 4368 | "dead-caron", | 4403 | "dead-caron", |
| 4369 | "dead-doubleacute", | 4404 | "dead-doubleacute", |
| 4370 | "dead-abovedot", | 4405 | "dead-abovedot", |
| 4406 | "dead-abovering", | ||
| 4407 | "dead-iota", | ||
| 4408 | "dead-belowdot", | ||
| 4409 | "dead-voiced-sound", | ||
| 4410 | "dead-semivoiced-sound", | ||
| 4411 | "dead-hook", | ||
| 4412 | "dead-horn", | ||
| 4371 | }; | 4413 | }; |
| 4372 | 4414 | ||
| 4373 | #ifdef HAVE_NTGUI | 4415 | #ifdef HAVE_NTGUI |
| @@ -4534,6 +4576,10 @@ char *lispy_function_keys[] = | |||
| 4534 | 4576 | ||
| 4535 | #else /* not HAVE_NTGUI */ | 4577 | #else /* not HAVE_NTGUI */ |
| 4536 | 4578 | ||
| 4579 | /* This should be dealt with in XTread_socket now, and that doesn't | ||
| 4580 | depend on the client system having the Kana syms defined. See also | ||
| 4581 | the XK_kana_A case below. */ | ||
| 4582 | #if 0 | ||
| 4537 | #ifdef XK_kana_A | 4583 | #ifdef XK_kana_A |
| 4538 | static char *lispy_kana_keys[] = | 4584 | static char *lispy_kana_keys[] = |
| 4539 | { | 4585 | { |
| @@ -4568,6 +4614,7 @@ static char *lispy_kana_keys[] = | |||
| 4568 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 0x4f0 .. 0x4ff */ | 4614 | 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 0x4f0 .. 0x4ff */ |
| 4569 | }; | 4615 | }; |
| 4570 | #endif /* XK_kana_A */ | 4616 | #endif /* XK_kana_A */ |
| 4617 | #endif /* 0 */ | ||
| 4571 | 4618 | ||
| 4572 | #define FUNCTION_KEY_OFFSET 0xff00 | 4619 | #define FUNCTION_KEY_OFFSET 0xff00 |
| 4573 | 4620 | ||
| @@ -4822,6 +4869,7 @@ make_lispy_event (event) | |||
| 4822 | (sizeof (lispy_accent_keys) | 4869 | (sizeof (lispy_accent_keys) |
| 4823 | / sizeof (lispy_accent_keys[0]))); | 4870 | / sizeof (lispy_accent_keys[0]))); |
| 4824 | 4871 | ||
| 4872 | #if 0 | ||
| 4825 | #ifdef XK_kana_A | 4873 | #ifdef XK_kana_A |
| 4826 | if (event->code >= 0x400 && event->code < 0x500) | 4874 | if (event->code >= 0x400 && event->code < 0x500) |
| 4827 | return modify_event_symbol (event->code - 0x400, | 4875 | return modify_event_symbol (event->code - 0x400, |
| @@ -4831,6 +4879,7 @@ make_lispy_event (event) | |||
| 4831 | (sizeof (lispy_kana_keys) | 4879 | (sizeof (lispy_kana_keys) |
| 4832 | / sizeof (lispy_kana_keys[0]))); | 4880 | / sizeof (lispy_kana_keys[0]))); |
| 4833 | #endif /* XK_kana_A */ | 4881 | #endif /* XK_kana_A */ |
| 4882 | #endif /* 0 */ | ||
| 4834 | 4883 | ||
| 4835 | #ifdef ISO_FUNCTION_KEY_OFFSET | 4884 | #ifdef ISO_FUNCTION_KEY_OFFSET |
| 4836 | if (event->code < FUNCTION_KEY_OFFSET | 4885 | if (event->code < FUNCTION_KEY_OFFSET |
| @@ -5974,8 +6023,12 @@ modify_event_symbol (symbol_num, modifiers, symbol_kind, name_alist_or_stem, | |||
| 5974 | { | 6023 | { |
| 5975 | int len = SBYTES (name_alist_or_stem); | 6024 | int len = SBYTES (name_alist_or_stem); |
| 5976 | char *buf = (char *) alloca (len + 50); | 6025 | char *buf = (char *) alloca (len + 50); |
| 5977 | sprintf (buf, "%s-%d", SDATA (name_alist_or_stem), | 6026 | if (sizeof (int) == sizeof (EMACS_INT)) |
| 5978 | XINT (symbol_int) + 1); | 6027 | sprintf (buf, "%s-%d", SDATA (name_alist_or_stem), |
| 6028 | XINT (symbol_int) + 1); | ||
| 6029 | else if (sizeof (long) == sizeof (EMACS_INT)) | ||
| 6030 | sprintf (buf, "%s-%ld", SDATA (name_alist_or_stem), | ||
| 6031 | XINT (symbol_int) + 1); | ||
| 5979 | value = intern (buf); | 6032 | value = intern (buf); |
| 5980 | } | 6033 | } |
| 5981 | else if (name_table != 0 && name_table[symbol_num]) | 6034 | else if (name_table != 0 && name_table[symbol_num]) |