On Thu, 17 Sep 2009 01:50:35 -0500 Ethan Anderson <etha...@gmail.com> wrote:
> Anyways, since the people who design computer keyboards seem > incapable of designing them for two thumbs, I'm glad to hear I'm not alone to watch the lenght of spacebar... Toshiba notebooks used to have some short ones. > The only alternative I can see is adding space key functionality to my > shiftbar, but this would require the following behavior: > > shiftbar press : some variable in the keyboard stack changed, no > signal sent shiftbar release: space key press+release signals sent, > variable cleared > > shiftbar press: same thing with the variable > other key (combo) press+release: shift press signal sent immediately, > then other signals sent as appropriate I have been maintaining (for many years) patches for X server (& kernel) + some config tools to have this functionality for all the keys I want. I have shift/hyper/alt/group-selectors .... on regular letter keys (that permits using many keysyms per key, in different XKB groups). At one point I also had GUI tools to study the timings of parallel key presses. You can read about my project here: http://www.ruska.it/michal/fork.html My last patches are working for me on X.Org X Server 1.5.2 (ubuntu 8.10) > This feature would save me like $500 and allow me to consider getting > How much would it cost to have this functionality implemented? I would be happy to spend time on cleaning this up, and have it included but doing it in free time, now that I have children is slow. In fact, I'm trying to grow my Git repo out of the patches, but the input code is changing all the time, and it's growing in complexity. Btw. MS Windows Device Driver Kit seems to have hooks to implement this feature as well. I can provide more up-to-date information on request. Michal Maruska PS: My configuration, done in a hi-level language, includes this code: ;; fork L and F to Hyper: (fork-keys-to fork (list "l" "f") '("ONE_LEVEL") '(("Hyper_L")) 128 '(((set-mod 1 128 128 0 0)))) ;; make all Alt/Meta keys be Escape, forking to Meta: (for-each-reverse (fork:physical-meta-keys fork) (lambda (meta-keycode) (fork-push-to fork meta-keycode '("ONE_LEVEL") '(("Escape")) 0 ()))) _______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg