X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Date: Sun, 13 Sep 2015 14:08:25 +0200 (CEST) From: Roland Lutz To: geda-user AT delorie DOT com Subject: Re: [geda-user] off-topic: key bindings In-Reply-To: Message-ID: References: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Sun, 13 Sep 2015, gedau AT igor2 DOT repo DOT hu wrote: > I figured the expectated key combinations of the modifier-based map never > start with an alnum character without a modifier. This makes the following > simple policy feasible: > > 1. if the first key is with a modifier, it is a single-stroke hotkey (e.g. > ctrl+z or ctrl+s) > > 2. if the first key is not alnum, it is a single-stroke hotkey (e.g. arrow > keys, escape, F1, enter, etc.) > > 3. if the first key is alnum without a modifier, it's the first character of > a multi-stroke command > > Rule 3 removes 36 keys from the single-stroke world but makes it possible to > use best of both worlds without collision. Why do you need this distinction at all? Just define both "ctrl+z" and "ctrl+x u" as hotkeys for undo. You could also let the user select between a set of keyboard schemes (multi-key/alnum, Windows-like, Emacs-like).