• You are not logged in.

DreymaR's Big Bag of Keyboard Tricks (Linux/XKB files included)!

  • Started by DreymaR
  • 259 Replies:
  • Reputation: 12
  • Registered: 01-Apr-2018
  • Posts: 115

I wouldn't overcomplicate it if you can avoid that. You can always do some Hebrew letter substitutions in DreymaR's layout if you find that you need those characters more often than the ones that he set up. That way you would only have to deal with two, the custom layout, and QWERTY for others. Though you could simplify that even further and just let those plebeians suffer for their insistence on using such a lousy old layout. Then you only need one. :P

And where are my manners? I owe you a שלום. :)

Offline
  • 0
  • Reputation: 0
  • Registered: 18-May-2018
  • Posts: 5

Thanks azuvix - I just finished setting up a xubuntu 18.04 virtual machine to play with layouts, and also to experiment with storing my config files (dotfiles as they usually referred to as they begin with .something) in github for easy sync across machines and OS installs.

Offline
  • 0
  • Reputation: 20
  • Registered: 08-Oct-2017
  • Posts: 223
IvanS said:

Thanks azuvix - I just finished setting up a xubuntu 18.04 virtual machine to play with layouts, and also to experiment with storing my config files (dotfiles as they usually referred to as they begin with .something) in github for easy sync across machines and OS installs.

I prefer dots myself ;)

Offline
  • 0
  • Reputation: 87
  • From: Oslo, Norway
  • Registered: 13-Dec-2006
  • Posts: 4,472

Having multiple layouts with the Big Bag active is no problem. The only hurdle is if you're using keyboard models for ergo mods, then you'll have to make sure you switch those as well. But it's easily scriptable. Also, some functionality is buggy for the non-first layouts; this is an inherent XKB weakness. Not sure exactly what it entails.

I believe I have given examples of having multiple layouts active?

The Hebrew Colemak[eD] layout is still Work In Progress. We had some good collaboration on it but then my collaborator fell silent. I'd like to get it finished!

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 18-May-2018
  • Posts: 5

I almost never need to type hebrew, so that's a non issue for me (but I still want to be able to go back to "stock" when other family members want to use the laptop).
But if you need to do some testing - I'll be glad to help.

Now I have an interesting problem which couldn't resolve for several hours trying:
Lenovo Ideapad 510, I've installed the Big Bag successfully, but whenever I activate it with setxkbmap - I get 3 keys which fail to type uppercase ('Q','T/G', and '{'), this is both on qwerty and colemak layout.
When I launch and press those with Shift depressed, instead of normal key event I get something like this:

>xev -event keyboard
KeymapNotify event, serial 40, synthetic NO, window 0x0,
keys:  0   0   0   0   0   10   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 

This happens on every run of setxkbmap, with any combination of options. And stays that way until I log-out and login.
OS is Linux Mint 18 x64 with XFCE DE.

Offline
  • 0
  • Reputation: 87
  • From: Oslo, Norway
  • Registered: 13-Dec-2006
  • Posts: 4,472

That's really really strange. I have no explanation for it. And those keys seem quite unrelated.

Could there be some sort of hotkey settings that interfere? But then why would they interfere only when setxkbmap has been run? Oddness.

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Oct-2018
  • Posts: 2

Hello everyone,

First of all, I would like to thank DreymaR for his amazing contributions!
I have been using the colemak_ed version on Windows for a while now, the Extend layer is amazing.

I wanted to use it on Linux as well, with the following command:

setxkbmap -model pc105awide-sl -layout us -variant cmk_ed_us -option lv5:lalt_switch,misc:extend

But unfortunately, the Alt key doesn't work as a modifier for Extend. I have tried with CapsLock or RAlt as modifier, it works well. With Alt, it still operates as a classic Alt key (i.e. opening menus). Does anyone know what could be the issue?

Offline
  • 0
  • Reputation: 87
  • From: Oslo, Norway
  • Registered: 13-Dec-2006
  • Posts: 4,472
lv5:lsgt_switch_lock            =       +level5(lsgt_switch_lock)
lv5:ralt_switch_lock            =       +level5(ralt_switch_lock)
lv5:lwin_switch_lock            =       +level5(lwin_switch_lock)
lv5:rwin_switch_lock            =       +level5(rwin_switch_lock)
lv5:caps_switch_lock            =       +level5(caps_switch_lock)
lv5:lctl_switch_lock = +level5(lctl_switch_lock)

These are the switch rules defined in xkb/rules/evdev and that's what you have to choose between by way of lv5 switches from the GUI menu I think. In xkb/symbols/level5 you see some more that could be included in the options component. But as you can see, there's no rule for LAlt. So you can't get that without making one. And that's a bit technical.

You could, however, do a low-down dirty hack by piggybacking on an existing switch! Find the code in xkb/symbols/level5 that goes:

// The CapsLock key (while pressed) chooses the fifth shift level.
partial modifier_keys
xkb_symbols "caps_switch" {
  key <CAPS> {
    type[Group1]="ONE_LEVEL",
    symbols[Group1] = [ ISO_Level5_Shift ]
  };
  include "level5(modifier_mapping)"
};

Then change <CAPS> to <LALT> and it might just work... I hope. You'd choose "lv5:caps_switch" but it'd actually affect the LAlt key. I hope. ^_^

[edit: Hack confirmed! Well, that's nice! ^_^]

Last edited by DreymaR (18-Oct-2018 08:32:10)

*** Learn Colemak in 2–5 steps with Tarmak! ***
*** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

Offline
  • 0
  • Reputation: 0
  • Registered: 17-Oct-2018
  • Posts: 2

Thank you so much! It works like a charm!

Offline
  • 0
  • Reputation: 48
  • From: UK
  • Registered: 14-Apr-2014
  • Posts: 638

I also use LAlt as my Extend modifier, it works very well!

My solution was slightly different: I wanted to also map the Left Alt function to the "left windows" key. To do this I simply changed scan code definitions of <LALT>, <LWIN> and <CAPS> in `keycodes/evdev`. Achieves pretty much the same result, but lets you move arbitrary modifier keys to where you want them.

Last edited by stevep99 (19-Oct-2018 16:33:36)

Using Colemak Mod-DH with some additional ergonomic keyboard mods.

Online
  • 0