Red Hat Bugzilla – Bug 864785
/etc/X11/xorg.conf.d/01-anaconda-keyboard.conf causes X to default Alt+Shift to ISO_Next_Group
Last modified: 2013-02-21 04:30:08 EST
Description of problem:
Anaconda installs /etc/X11/xorg.conf.d/01-anaconda-keyboard.conf
which causes X to default Alt+Shift to ISO_Next_Group.
This is rather annoying for users for emacs and xmonad, etc
that use Alt+Shift as a modifier.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. net install F18 Beta TC3 with Basic X Windows install
2. start X session (not gnome or other desktop environment)
3. run xev in terminal, and press Alt+Shift
3. xev output shows Alt+Shift gives ISO_Next_Level.
3. Alt+Shift to give separate Alt_L and Shift_L modifiers as normal.
Anaconda should not need ISO_Next_Level unless it is configuring more than
one xkb layout.
Option "XkbOptions" "grp:alt_shift_toggle"
works around the problem.
This has been happening since F18 Alpha btw.
Perhaps we should only write that out if more than one keyboard has been configured during installation.
(In reply to comment #3)
> Perhaps we should only write that out if more than one keyboard has been
> configured during installation.
This is probably the best solution for now. The "Options" button on the Keyboard spoke is supposed to open a dialog for choosing layout switching combination, but this is yet to be implemented.
Jens, are you okay with the proposed solution for now?
(In reply to comment #4)
> (In reply to comment #3)
> > Perhaps we should only write that out if more than one keyboard has been
> > configured during installation.
> This is probably the best solution for now. The "Options" button on the
> Keyboard spoke is supposed to open a dialog for choosing layout switching
> combination, but this is yet to be implemented.
Patches with the implementation posted to anaconda-patches list.
This bug looks to have been fixed for many anaconda builds now but missed being closed. If you find you are still experiencing it with Fedora 18 Beta (RC1) or later, please re-open the bug.
(note the 'options' button mentioned in comment #4 has now been implemented, so if installing multiple keyboards, you can change the layout switching key combination during install, though I don't know if it's been tested that the chosen setting is correctly transferred to the installed system.)
This bug is still present in release version.
Installed from the DVD, and I've got an 00-anaconda.keyboard.conf that contains
#This file was generated by the Anaconda installer
Option "XkbLayout" "se"
Option "XkbOptions" "grp:alt_shift_toggle"
if you picked anything but English (U.S.) for language, did *not* check the box at the bottom of that screen (something about 'set keyboard layout to default for my language'), and made no changes to the Keyboard spoke, that is actually what I'd expect. If you pick a non-English language and don't check the checkbox, the default keyboard configuration is to set up U.S. English as the default keyboard and what anaconda guesses is your 'native' keyboard layout as a secondary keyboard; two keyboards, hence the alt-shift toggle is included.
It does seem a bit odd that we go with alt-shift as the default toggle in newUI, though, as in oldUI the default toggle was left-shift+right-shift. I'm not sure this change was intentional, and I rather suspect the old default was intentionally picked *not* to conflict with common combinations used in text editors etc. So maybe we ought to go back to shift+shift as the default.
This is how I went through the install (well, relevant parts):
Selected English (UK) as my install language, went into keyboard settings and added Swedish, then proceeded to remove both English UK & English USA variants, so that Swedish was my only available layout.
I would have assumed that this would stop adding any kind of modifiers like this, as I only have one keyboard layout selected anyhow.
I did not look for any of those options that you mention, however, as I did not think they would be relevant.
I have just been googling for why KDE refused to accept alt+shift in shortcuts, and it took some time before I ended up here and could solve it, it wasn't exactly clear where the issue was to me.
For me this wouldn't have happened though if anaconda checked that there was only 1 layout selected, and thus never enabled the toggle, cause there's nothing to switch to then anyhow, right?
However, I think that left shift+right shift sounds like a much better combination for this.
I think at the point you added a second layout it may have automatically set the toggle. I'll experiment with your reported reproduction path and see if I can trigger it.
Okay, sounds good.
But anyhow, if you succeed or not - left-shift+right-shift is probably the better toggle out of the two.
(By the way, reading my previous message it sounds a bit harsh, this was not intended).
Anaconda is supposed to set the toggle only when non-English language is selected and the 'set keyboard layout to default for my language' is not checked so that two layouts are configured by default. In all other cases toggle is not expected to be set automatically. If it is, then it is a bug.
If you think we should use a different key combination for toggle, please open a new bug with that suggestion so that the discussion can take place there.