From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Lennart Borgman (gmail)" Newsgroups: gmane.emacs.help Subject: Re: Behavior of M-x and A-x Date: Tue, 12 Aug 2008 14:13:11 +0200 Message-ID: <48A17E57.7090504@gmail.com> References: <9cb65794-fa18-4a0e-9a82-27e85923038a@v26g2000prm.googlegroups.com> <857a6a64-0971-495b-aad8-1c069405e13e@i20g2000prf.googlegroups.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1218543231 19949 80.91.229.12 (12 Aug 2008 12:13:51 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 12 Aug 2008 12:13:51 +0000 (UTC) Cc: help-gnu-emacs@gnu.org To: Xah Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Tue Aug 12 14:14:43 2008 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KSslv-00068X-30 for geh-help-gnu-emacs@m.gmane.org; Tue, 12 Aug 2008 14:14:43 +0200 Original-Received: from localhost ([127.0.0.1]:58517 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KSsky-0005nR-OM for geh-help-gnu-emacs@m.gmane.org; Tue, 12 Aug 2008 08:13:44 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KSskZ-0005jf-P4 for help-gnu-emacs@gnu.org; Tue, 12 Aug 2008 08:13:19 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KSskW-0005g2-Cb for help-gnu-emacs@gnu.org; Tue, 12 Aug 2008 08:13:18 -0400 Original-Received: from [199.232.76.173] (port=48262 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KSskW-0005fc-65 for help-gnu-emacs@gnu.org; Tue, 12 Aug 2008 08:13:16 -0400 Original-Received: from ch-smtp02.sth.basefarm.net ([80.76.149.213]:37887) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KSskW-0006IT-27 for help-gnu-emacs@gnu.org; Tue, 12 Aug 2008 08:13:16 -0400 Original-Received: from c83-254-151-176.bredband.comhem.se ([83.254.151.176]:62595 helo=[127.0.0.1]) by ch-smtp02.sth.basefarm.net with esmtp (Exim 4.68) (envelope-from ) id 1KSskT-0005DC-8x; Tue, 12 Aug 2008 14:13:14 +0200 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071031 Thunderbird/2.0.0.9 Mnenhy/0.7.5.666 In-Reply-To: <857a6a64-0971-495b-aad8-1c069405e13e@i20g2000prf.googlegroups.com> X-Antivirus: avast! (VPS 080811-0, 2008-08-11), Outbound message X-Antivirus-Status: Clean X-Originating-IP: 83.254.151.176 X-Scan-Result: No virus found in message 1KSskT-0005DC-8x. X-Scan-Signature: ch-smtp02.sth.basefarm.net 1KSskT-0005DC-8x 57946b283cc4cc7de953db72a6b6ccda X-detected-kernel: by monty-python.gnu.org: Linux 2.6? (barebone, rare!) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:56507 Archived-At: Xah wrote: > Xah wrote: >> ; setting the PC keyboard's various keys to Super or Hyper >> (setq w32-pass-lwindow-to-system nil >> w32-pass-rwindow-to-system nil >> w32-pass-apps-to-system nil >> w32-lwindow-modifier 'super ;; Left Windows key >> w32-rwindow-modifier 'super ;; Right Windows key >> w32-apps-modifier 'hyper) ;; Menu key > > Lennart Borgman wrote: > >> Please note that using lwindow/rwindow like this does not work for all >> key sequences unless you are using the patched Emacs+EmacsW32. > > What is the proper way to set it on Windows? The only thing that the patched version really offers in this regards is the possibility to actually avoid sending lwindow etc to the system: LRESULT CALLBACK LowLevelKeyboardProc(INT nCode, WPARAM wParam, LPARAM lParam) { ... case VK_LWIN: { bHandle = NILP(Vw32_pass_lwindow_to_system); break; } case VK_RWIN: { bHandle = NILP(Vw32_pass_rwindow_to_system); break; } case VK_CAPITAL: { bHandle = NILP(Vw32_enable_caps_lock); break; } case VK_NUMLOCK: { bHandle = NILP(Vw32_enable_num_lock); break; } case VK_MENU: case VK_LMENU: case VK_RMENU: { bHandle = NILP(Vw32_pass_alt_to_system); break; } if (bHandle) { // Just to be sure check we are in the right thread if (GetCurrentThreadId() == dwWindowsThreadId) { // Do we have keyboard focus? HWND hwnd = GetFocus(); if (0 != hwnd) { SendMessage (hwnd, msg, wParamMsg, lParamMsg); return TRUE; } } } } HHOOK hhook; return CallNextHookEx(hhook, nCode, wParam, lParam); } And then it also offers easy way to set things up up, see w32-meta.el that comes with the patched Emacs+EmacsW32.