-/* MS-DOS specific C utilities. -*- coding: raw-text -*-
+/* MS-DOS specific C utilities. -*- coding: cp850 -*-
Copyright (C) 1993-1997, 1999-2013 Free Software Foundation, Inc.
/* Contributed by Morten Welinder */
/* New display, keyboard, and mouse control by Kim F. Storm */
+/* Note: This file MUST use a unibyte encoding, to both display the
+ keys on the non-US keyboard layout as their respective labels, and
+ provide the correct byte values for the keyboard input to inject
+ into Emacs. See 'struct dos_keyboard_map' below. As long as there
+ are only European keyboard layouts here, we are OK with DOS
+ codepage 850 encoding. */
+
/* Note: some of the stuff here was taken from end of sysdep.c in demacs. */
#include <config.h>
static struct dos_keyboard_map us_keyboard = {
/* 0 1 2 3 4 5 */
-/* 01234567890123456789012345678901234567890 12345678901234 */
- "`1234567890-= qwertyuiop[] asdfghjkl;'\\ zxcvbnm,./ ",
+/* 01234567890123456789012345678901234567890 123 45678901234 */
+ "`1234567890-= qwertyuiop[] asdfghjkl;'\\ \\zxcvbnm,./ ",
/* 0123456789012345678901234567890123456789 012345678901234 */
- "~!@#$%^&*()_+ QWERTYUIOP{} ASDFGHJKL:\"| ZXCVBNM<>? ",
+ "~!@#$%^&*()_+ QWERTYUIOP{} ASDFGHJKL:\"| |ZXCVBNM<>? ",
0, /* no Alt-Gr key */
0 /* no translate table */
};
static struct dos_keyboard_map fr_keyboard = {
/* 0 1 2 3 4 5 */
/* 012 3456789012345678901234567890123456789012345678901234 */
- "ý&\82\",(-\8a_\80\85)= azertyuiop^$ qsdfghjklm\97* wxcvbnm;:! ",
+ "ý&\82\"'(-\8a_\80\85)= azertyuiop^$ qsdfghjklm\97* <wxcvbn,;:! ",
/* 0123456789012345678901234567890123456789012345678901234 */
- " 1234567890ø+ AZERTYUIOPù\9c QSDFGHJKLM%æ WXCVBN?./õ ",
+ " 1234567890ø+ AZERTYUIOPù\9c QSDFGHJKLM%æ >WXCVBN?./õ ",
/* 01234567 89012345678901234567890123456789012345678901234 */
" ~#{[|`\\^@]} Ï ",
0 /* no translate table */
static struct dos_keyboard_map it_keyboard = {
/* 0 1 2 3 4 5 */
/* 0 123456789012345678901234567890123456789012345678901234 */
- "\\1234567890'\8d< qwertyuiop\8a+> asdfghjkl\95\85\97 zxcvbnm,.- ",
+ "\\1234567890'\8d< qwertyuiop\8a+> asdfghjkl\95\85\97 <zxcvbnm,.- ",
/* 01 23456789012345678901234567890123456789012345678901234 */
- "|!\"\9c$%&/()=?^> QWERTYUIOP\82* ASDFGHJKL\87øõ ZXCVBNM;:_ ",
+ "|!\"\9c$%&/()=?^> QWERTYUIOP\82* ASDFGHJKL\87øõ >ZXCVBNM;:_ ",
/* 0123456789012345678901234567890123456789012345678901234 */
" {}~` [] @# ",
it_kbd_translate_table
static struct dos_keyboard_map dk_keyboard = {
/* 0 1 2 3 4 5 */
/* 0123456789012345678901234567890123456789012345678901234 */
- "«1234567890+| qwertyuiop\86~ asdfghjkl\91\9b' zxcvbnm,.- ",
+ "«1234567890+| qwertyuiop\86~ asdfghjkl\91\9b' <zxcvbnm,.- ",
/* 01 23456789012345678901234567890123456789012345678901234 */
- "õ!\"#$%&/()=?` QWERTYUIOP\8f^ ASDFGHJKL\92\9d* ZXCVBNM;:_ ",
+ "õ!\"#$%&/()=?` QWERTYUIOP\8f^ ASDFGHJKL\92\9d* >ZXCVBNM;:_ ",
/* 0123456789012345678901234567890123456789012345678901234 */
" @\9c$ {[]} | ",
0 /* no translate table */
erasing it works correctly... */
if (! NILP (saved_echo_area_message))
message_with_string ("%s", saved_echo_area_message, 0);
- message (0);
+ message1 (0);
while (statecount--)
xfree (state[statecount].screen_behind);
- IT_display_cursor (1); /* turn cursor back on */
+ IT_display_cursor (1); /* Turn cursor back on. */
/* Clean up any mouse events that are waiting inside Emacs event queue.
These events are likely to be generated before the menu was even
displayed, probably because the user pressed and released the button