X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; q=dns; s=default; b=Ou rv6e3UcTopSK0HsjuvkyrrHd6q8pwiUMqkiVxLCfLCUxdP3BodIfJxBju2ZPIrrq XwOa0HFbQO7fchjQlgNyF71O4sXMOyGBS94DUKFwT8hNvbw/Zz3eeEOx0DT0HfeE 2rinyoCMSecXJDCt2X+LQKuZpUcFqY+LdkZs1P+GQ= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; s=default; bh=feLYLzud vEJYai8fiVdM37b72Do=; b=l5uCIMABA6ua3rslzuqtIcm7v5KCo7V7CHEQyJdl H2UzZCmRIRaOU9wDjw8JRT7RAoPFkoUKtdpb8x0yGTJlMxSyq7B1zAJyBoGzfpyT MWMLNfwHloEO6rWBhJ7FM1/7boa+teYocFL3zfQicDuBvfC+WGHnsUbHfdajvT5S WP0= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Spam-SWARE-Status: No, score=-5.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE autolearn=ham version=3.3.1 MIME-Version: 1.0 X-Received: by 10.180.36.205 with SMTP id s13mr20996089wij.31.1366488884122; Sat, 20 Apr 2013 13:14:44 -0700 (PDT) In-Reply-To: <514B2CEF.3090100@cs.utoronto.ca> References: <514B2CEF DOT 3090100 AT cs DOT utoronto DOT ca> Date: Sat, 20 Apr 2013 21:14:44 +0100 Message-ID: Subject: Re: mintty and Control-` , Control-~ From: Andy Koppe To: cygwin AT cygwin DOT com Content-Type: text/plain; charset=UTF-8 On 21 March 2013 15:53, Ryan Johnson wrote: > On 21/03/2013 11:30 AM, Igor Bukanov wrote: >> >> It seems that mintty in Cygwin under Windows-7 does not pass C-` >> (Control-backtick, in US keyboard this is the key above the tab) nor >> C-~ (or Control-Shift-backtick) to terminal applications. Any reason >> for that? > > A quick test [3] in shortcut override mode [1] suggests that mintty never > receives that key combination in the first place. Nah, it does receive it alright. Well, for me anyay. Shortcut override mode only affects combinations that mintty normally uses for its own purposes, for example Shift+Insert for paste. > However, trying the same test in xterm, I get \000 and \036 for C-` and C-~, > respectively. Neither of those seems to be correct [2] (\000 is ^@ and \036 > is ^^) Indeed. Backtick and tilde don't directly correspond to control characters, so mintty doesn't send anything for them. What you can do is enable the so-called modifyOtherKeys mode (which comes from xterm), in which case mintty sends the keycodes specified on the following page for combinations that don't have a standard keycode: http://www.leonerd.org.uk/hacks/fixterms/ The following will enable modifyOtherKeys mode level 1: $ echo -ne '\e[>4;1m' There's also a level 2, in which those special keycodes are sent even for standard combinations such as Ctrl+letter. $ echo -ne '\e[>4;2m' > but it's still odd that xterm can receive key codes that mintty misses. I guess I decided not to support those keycodes for Ctrl+` and Ctrl+~ because they're not intuitive and they just send the same as Ctrl+@ and Ctrl+^ (and also Ctrl+Space and Ctrl+Enter) anyway. In order to make them useful without enabling modifyOtherKeys mode, how about if Ctrl combinations with backtick (ASCII 0x60), opening and closing brace (0x7B and 0x7D), pipe (0x7C), and tilde (0x7E) were mapped to C1 control characters (in the U+0080 to U+009E range). Incidentally, on US and UK keyboards (and others) that's what already happens for the braces and pipe symbol, because for example the pipe symbol is typed with Shift+\, and mintty maps Ctrl+Shift+\ to U+009C as explained at http://code.google.com/p/mintty/wiki/Keycodes#Ctrl. I hope I've suitably confused matters now. Andy -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple