From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: w32-pass-lwindow-to-system does not work as expected Date: Tue, 05 Jul 2005 23:34:03 +0200 Message-ID: References: <42CADC1A.4060106@student.lu.se> Reply-To: Eli Zaretskii NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1120598435 24731 80.91.229.2 (5 Jul 2005 21:20:35 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 5 Jul 2005 21:20:35 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 05 23:20:24 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1Dpupu-0004Fm-7h for ged-emacs-devel@m.gmane.org; Tue, 05 Jul 2005 23:20:10 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DpurB-0002D9-FW for ged-emacs-devel@m.gmane.org; Tue, 05 Jul 2005 17:21:29 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Dpumh-0007Lg-Qg for emacs-devel@gnu.org; Tue, 05 Jul 2005 17:16:52 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Dpumg-0007LD-M9 for emacs-devel@gnu.org; Tue, 05 Jul 2005 17:16:50 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Dpulg-0006YV-94 for emacs-devel@gnu.org; Tue, 05 Jul 2005 17:15:48 -0400 Original-Received: from [192.114.186.66] (helo=romy.inter.net.il) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DpuDP-0005AP-Ec for emacs-devel@gnu.org; Tue, 05 Jul 2005 16:40:23 -0400 Original-Received: from HOME-C4E4A596F7 (IGLD-84-228-245-33.inter.net.il [84.228.245.33]) by romy.inter.net.il (MOS 3.5.8-GR) with ESMTP id BTP03715 (AUTH halo1); Tue, 5 Jul 2005 23:34:03 +0300 (IDT) Original-To: Lennart Borgman In-reply-to: <42CADC1A.4060106@student.lu.se> (message from Lennart Borgman on Tue, 05 Jul 2005 21:14:34 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:40464 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:40464 > Date: Tue, 05 Jul 2005 21:14:34 +0200 > From: Lennart Borgman > > To overcome this a low level keyboard hook must be used. A good starting > point summary is found at > http://www.codeproject.com/win32/AntonioWinLock.asp. Look under subtitle > "Hooks". Watch out for the caveats of using low-level keyboard interfaces: what the hook gets is the scan code of the key and various bit masks for the modifier keys. That means that the application (us) will have to take care of the key translation machinery, such as mapping the same keys to different characters depending on the language, translation of AltGr + KEY combinations to produce special non-ASCII characters, etc. Eventually, it is quite possible that we will have to introduce translation code and tables into Emacs for each supported keyboard input language. See msdos.c for an example of where this could lead; that way lies madness. (The MSDOS port had no good alternative, since too many useful key combinations would be unavailable for Emacs if it were to use only the standard keyboard interface. But I wouldn't recommend going that way just to fix some obscure misfeature which most users won't even notice unless explicitly told about.)