Page MenuHomePhabricator

setxkbmap and xmodmap has no effect
Closed, InvalidPublic

Description

I'm trying to run setxkbmap & xmodmap to set some keyboard settings, but it looks like has no effect, not even unloading the language emodule, interaction, and "input control settings"

these tools talk directly to the xserver. they don't deal with e. e may modify the x kbdmap itself at times like at startup based on the kbd map/layout config and on specific keybinings configured to switch kbdmap.

e has no modmap functionality itself at all. all it will do is run xmodmap ~/.Xmodmap when xkb settings update. if you have settings then this will of course conflict. there is a checkbox to turn e's keyboard layout settings right at the top of the dialog.

if you want to bypass this and run these tools by hand - i assume you checked that top item.

Ah, finally after to follow your details I was able to set my own keyboard configuration, by just enabling that checkbox it worked...

By other side I see an issue with that:

I had the "keyboard" module disabled, so the keyboard emodule is meant to manage keyboard configurations... ok, but then, this should happen only when the emodule is loaded (I had it unloaded in fact, making me unable to use my own keboard settings), in other words: E should not try to manage the keyboard itself if the emodule is not loaded, or more exactly, to do the same functionality as this checkbox you mentioned IF the emodule is not loaded

That could improve the user experience and overall compatibility of E with any keyboard setting when the user doesn't wants to let it the module to handle the keyboard configurations

Ah, finally after to follow your details I was able to set my own keyboard configuration, by just enabling that checkbox it worked...

Well I assumed you had... otherwise E will set things up when it starts or restarts and thus you just end up with fighting of ":who configured things last wins". same would apply to xset dpms/screensaver stuff and xrandr stuff too.

my advice is to not fight with e and let it manage it. that's how it's designed and intended and tested. if you want to go on your own - you are on your own. :)

I had the "keyboard" module disabled, so the keyboard emodule is meant to manage keyboard configurations...

It provides a gui to configure things as well as the gadget in the shelf. if you disable it you lose access to those. the config remains and core support is still there. Because we're a wayland compositor too this will remain core config and has to be used because... e must know your kbd layout as it has to map input events from a device to keys, so it's going to stay. a vast amount of e has features and config where the settings GUI is a module. like 95% of e is like that. You did choose to go on your own and go on a path where you probably shouldn't. it's not the path for 99.9% of users so my take - not important to worry about. :)

raster closed this task as Invalid.Oct 15 2019, 12:33 AM