Summary: | Layout "fr" Variant "oss" not working as desired | ||
---|---|---|---|
Product: | xkeyboard-config | Reporter: | Ludovic Lebègue <ludovic> |
Component: | General | Assignee: | xkb |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | aurelien, gilles.dartiguelongue, jcristau, lists.ban, nicolas.mailhot, remi, samuel.thibault, swami |
Version: | unspecified | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
URL: | https://bugs.launchpad.net/xkeyboard-config/+bug/221112 | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
xorg.conf
Make Level 5 choosers more easily available |
Description
Ludovic Lebègue
2008-05-02 11:31:59 UTC
Created attachment 16310 [details]
xorg.conf
First of all, GNOME represents whatever is in base.xml. There is default French layout and several variants (including "oss" and "oss_latin9"). User choses whatever he wants. So I am not really sure what is the essence of your complain. From the user's point of view there was no choice made when installing Ubuntu 8.04 (just picked a French keyboard without knowing the underlying mechanism). In the end some functions are altered. According to what I understand (and I have no real knowledge of the process) 1- User install X => picks a keyboard 2- X is somehow configured with XkbdLayout and XkbdVariant in /etc/X11/xorg.conf 3- GNOME picks these value and reads the associated entries in /etc/X11/xkb/base.xml to use them as default. Step 1 and 2 above => This is the responsability of the linux distribution to configure xorg.conf. In Ubuntu it seems that debconf is the xorg.conf creation tool (according to the comment). Is this tool responsible to pick "oss" instead of "latin9" ? What do you think ? Another idea here : Perhaps is it simply the "oss" variant that is faulty and does not behave as expected ? (In that case it seems to trigger a "ctrl+space" when the user press "space") This is actually distro-specific, xkeyboard-config has nothing to do with it. FWIW fr(oss) produces space when space is pressed. Let's take the following assumptions : 1 - configure manually xorg.conf (no distro involved here) to put "fr" variant "oss" 2 - use GNOME who accurately detects "France Alternative" 3 - try to search something in Rhythmbox involving a "space" caracter. 4 - it fails as if "ctrl+space" was triggered instead of "space" I'm just trying to figure where the bug is... The point is as for now it actually seems to be in "oss" because of the manual configuration step. How can we make sure ? You can easily check. Try running xev utility and press space Just made a check with xev. Everything seems fine at xev level. From xev point of view pressing space returns char 20 => which indeed is a space. My latest idea about "oss" being the source of the problem is not the good one. Did you try the configuration to reproduce the bug ? That is : => xorg.conf such as the attachment I made => Set 'France Alternative' as default keyboard in GNOME. then launch rhythmbox and try to search with something including a space caracter. > Everything seems fine at xev level. It means XKB is not in charge. So, it is really not ours, as I expected. > launch rhythmbox and try to search with something including a space caracter. Tried. Works ok. But space is actually not entered into the search line - it triggers play/pause thing. Which I guess it the rhythmbox normal behaviour. Sorry to reopen again this one. The default behavior of Rhytmbox is not to start playing when space is entered. The real short cut for this is ctrl+space. This is the faulty behaviour started it all. As for now the workaround for this bug is to change xorg.conf parameters. Shouldn't that be a xorg problem ? Where is this analysis bad ? If you look in the URL I have included you may also see that the same problem occurs in Quod Libet and CodeBlocks. Meaning that it is not tightly linked to Rhytmbox. https://bugs.launchpad.net/xkeyboard-config/+bug/221112 I have no slightest idea. In all layouts I use (Russian, USA) space triggers play/pause in Rhythmbox. I suggest addressing further question to Rhythmbox developers. Both oss and latin9 define SPCE as space on first shift level. I suspect this is the issue with modifiers (Ctrl) handling in Rhythmbox (or GTK). But this is just my guess. For reference here is the bug to GNOME http://bugzilla.gnome.org/show_bug.cgi?id=531279 As seen on https://bugs.launchpad.net/xkeyboard-config/+bug/221112, a workaround is in "/etc/X11/xkb/symbols/fr" to replace this : include "nbsp(level4nl)" by this : include "nbsp(level4n)" Does that help ? It also seems to be related to https://bugs.freedesktop.org/show_bug.cgi?id=9529 > Does that help ?
Do you ask me? Since you're reporter - it's up to you to make sure it works for you;)
From the user point of view (this is mine) it helps indeed. Can this help to find a solution ? I mean a solution suitable to everybody ... not only me :) Actually this nbsp(level4nl) was offered by Nicolas. I think it would be good if you settle this issue (see bug #9529) I don't have any magic solution: 1. if some apps misbehave when ctrl+space is used by the xkb layout they should be fixed by their upstream. xkb layouts are a fact of life which means apps have to deal with them gracefully 2. plus with multimedia keyboards so common nowadays almost every home keyboard will have a dedicated start/pause key, so trying to grab ctrl+space is not necessary 3. in the meanwhile you're free to try the other nbsp options. I made this key configurable for a reason — none of the options work well in every case so users are free to chose their lesser evil. When the other default were set other people complained for other reasons Though the situation may get a bit better if someone took the time to figure why RControl and LControl are not defined by default in xkb. I used Control instead because I didn't want to risk side-effects by distinguishing between both control keys when the default layout didn't. If RControl and LControl were cleanly separated one of them would be left for apps to use with space. Also depending on where in gtk the bug occur changing level4nl to // level4nl provides narrow no-breaking space in addition to the normal one // without forcing the use of level5 for mostly four-level layouts // Used by fr(oss), be(oss)… partial xkb_symbols "level4nl" { key <SPCE> { type[Group1]="LOCAL_EIGHT_LEVEL", symbols[Group1]= [ space, space, NoSymbol, nobreakspace, NoSymbol, 0x100202F, NoSymbol, NoSymbol ] }; }; may limit the occurrence of such side-effects I've just tried this latest configuration. It doesn't change the behavior of the incriminated application but now no modifiers Space key alone in xev : KeyRelease event, serial 31, synthetic NO, window 0x2200001, root 0x13b, subw 0x0, time 550680493, (85,98), root:(1666,147), state 0x10, keycode 65 (keysym 0x20, space), same_screen YES, XLookupString gives 1 bytes: (20) " " XFilterEvent returns: False Left control + space : KeyPress event, serial 31, synthetic NO, window 0x2200001, root 0x13b, subw 0x0, time 550711435, (91,86), root:(1672,135), state 0x10, keycode 37 (keysym 0xffe3, Control_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 31, synthetic NO, window 0x2200001, root 0x13b, subw 0x0, time 550714067, (91,86), root:(1672,135), state 0x14, keycode 65 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False Right control + space : KeyPress event, serial 31, synthetic NO, window 0x2200001, root 0x13b, subw 0x0, time 550783309, (88,289), root:(1669,338), state 0x10, keycode 109 (keysym 0xffe4, Control_R), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 31, synthetic NO, window 0x2200001, root 0x13b, subw 0x0, time 550784541, (88,289), root:(1669,338), state 0x14, keycode 65 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False Then I'm afraid you'll have to convince application developpers some layouts actually use the spacebar to output spaces and they can't assume ctrl+space is available for them to use. I'll try to do that. As for now I close this bug. Thanks for your help. Sorry to reopen this one again, but no solution was found with upstream and some applications like rhythmbox and totem use Ctrl + space as accelerators which seems to be looked up by gtk_action_group_add_toggle_action. As Ctrl + space and space in this layout returns the same XLookupString (see above), we can't use space on those applications. This is particularly frustrating in the search field, for instance :) (you can have a look at https://bugs.edge.launchpad.net/ubuntu/+source/rhythmbox/+bug/221112?comments=all already referenced in the thread) I tried to read a whole bunch of documentation regarding what leads to the current chosen solution in oss (the "include level4nl") and talked to svu too. So, the fix was from https://bugs.freedesktop.org/show_bug.cgi?id=9529#c29. I still don't understand how the level5 applied to Right Ctrl and "clever" management of the modifier (LOCAL_EIGHT_LEVEL) impacts the left Ctrl key. Input there will be appreciated :) So, the "bug" is workarounded if I include level4n for to replace level4nl. The XLookupString is no more the same. Apparently, there will be no more level 5 modifier (which is right ctrl, right?). Is it really useful? If I include "level5(rctrl_switch)", we will be back in what the fix was intented: no more rctrl working in some apps like virtualbox (I hope I'm right there). So, here is the result of my research, do not hesitate to correct me if I'm wrong anywhere. What do you think about changing this (I can distro patch if needed) in Ubuntu switching include level4nl to include level4n and no more adding a 5th level? (not sure what use the 5th level). Unbreakable space is still reachable by Altgr + v. So, getting feedback on someone more technically involved would be great, thanks in advance! To sum up 1. French language uses three forms of spaces (normal space, no-break space, short no-break space), as defined in official typographic rules 2. The natural key people expect to output those spaces is the spacebar 3. They can not be put on the first levels because experience shows too many users do not depress shift before the spacebar and generate nobreakspaces accidentally if shift/caps is used as modifier 4. The iso-defined key to access other levels is ctrlgr (right ctrl, see canadian multinational keyboard) So there is *no* good alternative to use ctrlgr + spacebar to emit those symbols IIRC xkb has problems distinguishing right ctrl and left ctrl. So you can try to open a bug on this problem so left ctrl + space does not trigger the fifth level. But right-crtl+space won't be given to apps. If apps expect to grab it, apps are wrong. This bug has been bothering me again. Instead of include "nbsp(level4nl)" I used: include "nbsp(level4n)" include "level5(rctrl_switch)" With these parameters, Rhythmbox search is working correctly and we do have the thin nbsp on the sixth level (RCtrl+Shift+Space) as needed by Nicolas Mailhot. Is this okay for you? Lads, for me that makes no difference. Just please settle that between you Could you make a choice at last? This bug is very annoying, and since the solution is here, please decide fast about it. Thanks! ;-) I am ok with solution by zebob. Any objections? Nicolas? Ping! ;-) Sergey, can you commit any solution? Better get a fix than wait for ages to be sure it's the best choice. Ok, committed that one. Please check. The solution posted in comment #27 disables the standard behaviour of the Right-Ctrl key. It is annoying for most users! (I first thought that my keyboard was broken). See the bug 1013881 in Ubuntu https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/1013881 My opinion is that the right solution to solve the RhythmBox bug is to remove the line include "nbsp(level4nl)" not patching the keyboard with the ugly include "level5(rctrl_switch)" Maybe we can solve the nbsp handling as it is the problem. Which language has a successful keyboard that handles nbsp? (In reply to comment #33) > The solution posted in comment #27 disables the standard behaviour of the > Right-Ctrl key. It is annoying for most users! (I first thought that my > keyboard was broken). > > See the bug 1013881 in Ubuntu > https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/1013881 > > My opinion is that the right solution to solve the RhythmBox bug is to remove > the line > include "nbsp(level4nl)" > not patching the keyboard with the ugly > include "level5(rctrl_switch)" > > Maybe we can solve the nbsp handling as it is the problem. > > Which language has a successful keyboard that handles nbsp? right ctrl is the standard access key for level 5+6 (just like right alt is for levels 3-4 and yes you'll find keyboards where right alt is the same as left alt and not alt gr) See for example this: https://upload.wikimedia.org/wikipedia/commons/d/d0/KB_Canadian_Multilingual_Standard_comment-en.svg So you can not remove right ctrl use without lowering the layout level number, and if you do so people start emitting nbsp my mistake (that was the biggest source of complain for one of this layout ancestors) And what if instead of include "nbsp(level4nl)" we put non-breaking space to level 3. I find it more convenient ( include "nbsp(level4n)" include "level5(rctrl_switch)" And what if instead of level 4, we put non-breaking space to level 3. I find it is more convenient (and I think I am not alone). So, instead of: include "nbsp(level4nl)" we put non-breaking space to level 3: include "nbsp(level3n)" This gives us back the Right-Ctrl. It does not break RhythmBox behaviour any more. And people using non-breaking spaces will be happy. (In reply to comment #36) > And what if instead of level 4, we put non-breaking space to level 3. I find it > is more convenient (and I think I am not alone). > So, instead of: > include "nbsp(level4nl)" > we put non-breaking space to level 3: > include "nbsp(level3n)" > This gives us back the Right-Ctrl. It does not break RhythmBox behaviour any > more. And people using non-breaking spaces will be happy. That's basically what fr-latin9 (the ancestor of fr-oss) used to do and it was changed to the current setting because too many people complained it made it too easy to type nbsp by mistake (but now the nbsp behaviour is configurable so you should be able to override the default on your system if you wish) So, lads, with configurable nbsp - is there any solution that would make you all reasonably happy? (In reply to comment #39) > So, lads, with configurable nbsp - is there any solution that would make you > all reasonably happy? Is there a way to make the spacebar more neutral *except* for the combinations that trigger something else than space? The main complain seems to be that some apps want to grab space combinations (which is a really stupid idea IMHO) so can xkb work ass passthrough except for the specific combos used for nbspc? I am honestly not sure how to translate that requirement into XKB terms...
I agree - intercepting those combinations is really odd. So I always have possibility to close this as WONTFIX. But if we manage to invent something - that would be better..
> can xkb work ass passthrough
It took me a while to parse that typo - was meditating over it for a minute;)
This reminds me of bug #45008. Just here, LOCAL_EIGHT_LEVEL does not preserve Control. Adding preserve[Control]= Control into LOCAL_EIGHT_LEVEL might fix the issue, an as it is not used elsewhere, it actually might be acceptable [but it also means that LOCAL_EIGHT_LEVEL in really a waste, given that other types had to be removed because some programs had problems with too many types]. I do not have rythmbox, so I cannot test. > with too many types]. I do not have rythmbox, so I cannot test.
Can anybody with rhythmbox try that?
Hello, Until a solution is to be found, could 518c769d be reverted for now? Breaking the very standard behavior of right control in all applications (e.g. xterminals!!) is really not acceptable, compared to the few issues that the behavior has without it. Samuel (In reply to comment #44) > Hello, > > Until a solution is to be found, could 518c769d be reverted for now? > Breaking the very standard behavior of right control It does not break the very standard behavior of right control any more than altrgr breaks the very standard behavior of right alt It's exactly the same mechanism as endorsed in other official French layouts like the Canadian one (In reply to comment #45) > (In reply to comment #44) > > Until a solution is to be found, could 518c769d be reverted for now? > > Breaking the very standard behavior of right control > > It does not break the very standard behavior of right control any more than > altrgr breaks the very standard behavior of right alt For me it does. My keyboard has an "Alt Gr" label on the AltR key, so it indeed is expected to behave differently from Alt_L, but my ControlR key is labeled as "Ctrl", just like the ControlL key. And all other keyboards and OSes I ever used did handle ControlR the same as ControlL, as far as I was concerned as a user. Also, I find it more generically problematic to change the behavior of a common key on a widely used keymap. For example the change annoyed me for about a month before I took the time to debug this and edit my keymap -- and I can't imagine what a lambda user could do but learn to deal with it. Also, what is Level5 used for? IIUC, currently nothing but short-nbsp (or at least that I can find, which is practically the same from a user POV), turning Ctrl_R into a virtually useless key. So, what can we do? First, please note, for what is worth, that both Rhythmbox and Totem, which were cited as the applications having a problem with the previous state of things, are not affected anymore. Rhythmbox don't use Control+Space as a shortcut anymore, and Totem seem to react to any space keysym, no matter the modifiers. So, unless there actually are other applications using Control+Space and suffering of the issue (Code::Blocks?), the problem does not even exist anymore. Also, maybe I just don't know how one is supposed to process the events, but those bugs look like an application or toolkit issue to me, is it? Then, practical changes. Before the change, Space behaved like this: Shift* | Control* | Level3 || keysym | XLookupString ---------------------------||-------------------------- | | || 0x20 | 20 X | | || 0x20 | 20 | X | || 0x20 | 20 | | X || 0x20 | 20 X | X | || 0x100202f | e2 80 af X | | X || 0xa0 | c2 a0 | X | X || NoSymbol | X | X | X || NoSymbol | And now we have: Shift* | ControlL | Level3 | Level5 || keysym | XLookupString ------------------------------------||--------------------------------- | | | || 0x20 | 20 X | | | || 0x20 | 20 | X | | || 0x20 | 00 | | X | || 0x20 | 20 | | | X || 0x20 | 20 X | X | | || 0x20 | 00 X | | X | || 0xa0 | c2 a0 X | | | X || 0x100202f | e2 80 af | X | X | || 0x20 | 00 | X | | X || 0x20 | 00 | | X | X || NoSymbol | X | X | X | || 0xa0 | (empty) X | X | | X || | (no event on Xev???) X | | X | X || NoSymbol | X | X | X | X || | (no event on Xev???) So. IIUC, the problem is having naked Space emit the same XLookupString that Control+Space, right? The new behavior is emitting lookup string "00" with modifier Control, so I guess this is the fix. So, what about simply changing the original map to have a different lookup string on Control? Like this: Shift* | Control* | Level3 || keysym | XLookupString ---------------------------||-------------------------- | | || 0x20 | 20 X | | || 0x20 | 20 | X | || 0x20 | 00 | | X || 0x20 | 20 X | X | || 0x100202f | e2 80 af X | | X || 0xa0 | c2 a0 | X | X || NoSymbol | X | X | X || NoSymbol | Or, if we don't want to have anything useful using Control, what about moving 0x100202f to Level3? Like this: Shift* | Control* | Level3 || keysym | XLookupString ---------------------------||-------------------------- | | || 0x20 | 20 X | | || 0x20 | 20 | X | || 0x20 | 00 | | X || 0x100202f | e2 80 af X | X | || 0x20 | 00 X | | X || 0xa0 | c2 a0 | X | X || NoSymbol | X | X | X || NoSymbol | Alternatively, the mapping of ControlR to Level5 could be an option (or a slightly different variant, whatever's better). Anything that could prevent me from manually editing my map to have ControlR again would be totally great. For some reason, I found myself using the 'fr oss' layout in Gnome 3.10. And I must say that finding out that this layout was picked as the default left me speechless: two keys on my keyboard no longer behave according to what's *on* the actual key: - the right control key, which just says "Ctrl", just like its left counterpart, - and the keypad's del/dot key which has an actual dot on it, not a comma Both of those changes are incomprehensible. Whether *alternative* layouts exist to provide new mappings is of no issue to me. But a layout touted as the default layout should respect what's *engraved* on keyboards. FTR, the original 'fr' layout also has that keypad dot/comma issue but not the right control mapped to Level5, but at least there's an "kpdl:dot" option to fix the former. So I fumbled through Gnome's ever-changing control panel and managed to change back to it. (In reply to comment #46) > For me it does. My keyboard has an "Alt Gr" label on the AltR key, so it > indeed is expected to behave differently from Alt_L, but my ControlR key is > labeled as "Ctrl", just like the ControlL key. And all other keyboards and > OSes I ever used did handle ControlR the same as ControlL, as far as I was > concerned as a user. +1, all the French PC keyboards I have owned for the past 15 years have been like this. I can only add my voice to let it be known that having to fix my keyboard layout for correct operation was quite upsetting. Anyhow, thanks to all for looking into it. I spent a couple days extremely disappointed to have a broken right [CTRL] key on a french keyboard on recent Arch installs, thus being unable to use VirtualBox properly, and googling around (and let me tell you that my googling showed me a *lot* of french people are really upset with this as well) I finally found out that this breakage comes from this commit : http://cgit.freedesktop.org/xkeyboard-config/commit/symbols/fr?id=518c769df2e9ce70cb721769a08b81504f243b2a ( http://goo.gl/SWU8Is ) Let me tell you that this breakage of right [CTRL], assigning it to ANOTHER function than right [CTRL] is completely inappropriate and upsetting. I therefore hereby specifically request this absurd modification to be reverted. More arguments in favor of reverting to an normal behaviour of Ctrl-R: -- Most computers in most operating systems, languages (including French until recently), desktops... have two identical Ctrl keys. It is queer to have French keyboards doing otherwise since a few years. -- Like having two Shift keys, two Ctrl keys are better for easy fast typing. By the way, breaking the French keyboard breaks the Belgian keyboard too. Could someone create poll on some french(belgian) web site, linux-oriented. Which behavior would be preferable? (In reply to comment #50) > Could someone create poll on some french(belgian) web site, linux-oriented. > Which behavior would be preferable? Is this even necessary? I mean, the change wasn't made in the first place because an user wasn't happy with the state, but because some apps couldn't handle it. And nowadays, at least some of those apps (Rhythmbox, Totem, …) have been fixed or altered in a way they do not suffer from it anymore, actually mostly nullifying the original point. Also, what a poll would do? This looks like a pretty subtle problem to me, and an uneducated user couldn't really tell. As far as they are concerned, I would think they just want everything working. Even me, if you ask I would say (as in my previous reply) just fix the XLookupString while keeping the original mapping, since IIUC it would fix everybody's issue. But I have no real clue whether it's a pertinent answer or not. That was just an idea. As usual, when there are controversies... Trying to be democratic:) (In reply to comment #50) > Could someone create poll on some french(belgian) web site, linux-oriented. > Which behavior would be preferable? A poll would be pointless as its representativeness would be very hard to determine. Most users don't care "as long as it works" and may not even know there is a poll somewhere. The matter is : French keyboard have, and have always had since the PC keyboards exist (that makes 30 years), 2 similar [CTRL] keys that have the same printed label and are expected to exhibit the same behaviour. AND THEY ALWAYS HAVE BEEN SO IN ANY LINUX OR "other OS" keymaps, and especially default keymaps - if anybody wants to customize HER keyboard, then it's HER choice, but by no means a default. OTOH French keyboard have a left [Alt] key and a right [AltGr] keys having different labels and expected to have different roles. This is extremely clear. Both [CTRL] keys should act as [CTRL] keys. Left one, rigth one, period. Some softwares - such as Virtualbox - will want to use the left or right CTRL key for some specific role, and then it's printed in their documentation and the corresponding key is supposed to exist and be correctly mapped. It is nonsense to find oneself with a keymap in which some highly classical and standard key just doesn't happen to exist anymore just because of a once-upon-a-time existing issue (since solved) with a shortcut on a music player that nobody cares about !?!?!? You don't want to break a professional keyboard just because of arguable choices in a toy ! So, finally, is everybody happy with me removing that line: include "level5(rctrl_switch)" ? If no objections within next week - I will just drop it. I had yet another good reason to revert to a "normal right [CTRL] key" on a Fedora this morning: I was working in a terminal with several open terminal tabs. Switching between tabs is made using [Ctrl]-[PageUp] and [Ctrl]-[PageDown] - same goes with other Gnome tabbed apps, as well as Firefox and Chromium... If you have a working right [Ctrl] key, switching tabs is easy, you just need 2 fingers from your right hand. If you don't have a working right [Ctrl] key, you need both hands. Having the broken right [Ctrl] key was so annoying at work, that I had to fix it immediately. (In reply to comment #54) > So, finally, is everybody happy with me removing that line: > > include "level5(rctrl_switch)" No, just didn't see the point of restating what has already been written before A level 5 map needs a level 5 switch, iso defined right ctrl as default level 5 switch so there is no better option available, and users who do not care about the fifth level can choose another spacebar variant since they are configurable. Repeating : 1/ Standard French keyboard has NO [CtrlGr] key. It does have 2 normal [Ctrl] keys bearing the exact same label. The right [Ctrl] key actually is a right [Ctrl] key and no other modifier or whatever. 2/ There are quite a *lot* of common, daily used by professional IT staff, keyboard shortcuts or combinations such as [Ctrl]-[Arrows], [Ctrl]-[PageUp/Down], [Ctrl]-[Home], [Ctrl]-[End], plus all such combinations adding [Shift], then [Ctrl]-L, [Ctrl]-M... -> All these day-long used combinations can be conveniently played with 2 (or 3) fingers when the right [Ctrl] key actually is a right [Ctrl] key, and changing this key breaks them all, needing people to start using both hands for typing what they have typed with 2 fingers for 30 YEARS ! And mistype. And mistype. And mistype. 3/ The issue with Rythmbox looks solved for long, and who wants to break professional use of a keyboard for a solved bug in a music player ? 4/ Nobody (normal user) I talked to has ever heard about a "level 5" story, nor do people give a damn. 5/ Everybody wanting to type non-breakable space in word processors (LibreOffice...) do it with [Ctrl]-[Shift]-[Space] and don't need a specifically modified right Ctrl for that. 6/ Breaking right [Ctrl] breaks other apps that specifically request it NOT to be broke, such as [VirtualBox] - again professional stuff. Breaking the right [Ctrl] keys on the french keyboard is plain stupid, period. I never heard of or used the level5 either, but to solve the issue could we maybe put it in another layout? For example something like "oss-level5"? I personally have to patch the file on every package update and even if I'm used to that and have the patch ready now, it gets annoying. On my laptop the right Ctrl key is adjascent to the arrows and it's way more convenient to be able to move through words in a text using only the right hand. Even though I've been an IT professional for the past 3O years, I went to a large computer store in France over lunch time, to find out if such thing as a [CtrlGr] key could possibly exist on a french keyboard. Let me tell you : I couldn't find any. OTOH, I was surprised to notice that some tablets with removable keyboards, as well as some ultrabooks with space-saver keyboards, did not have a right [Ctrl] key at all ! All have a left [Ctrl], left [Alt] and right [AltGr]. The vast majority of times, they have a right [Ctrl] key which is similar to the left one. But sometimes there is no right [Ctrl] at all ! This single fact prohibits a standard keymap giving a different assignation to the right [Ctrl] key, because this key may well not even exist on a given keyboard ! Thus you cannot rely on it for any feature that could be positively necessary. That makes Yet Another Good Reason™ to keep the good 'ole behaviour of having 2 similarily mapped [Ctrl] keys. Gentlemen, I am really stuck at that point. I am refusing to make any changes before there is either some kind of agreement - or there are some minimally conclusive voting results. I do not take any sides (I cannot have any personal opinion, not using French). I am just freezing the situation. Sergey, you might want to check Ubuntu bug https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/1013881 , which is a "downstream reflection" of this one. There are some other "loud voices" there that you might consider as taking part to the "vote" that you want. I had in my office 2 peopl that complained about this, this month. Maybe you could count them as well ? BTW Sergey, I'm a bit surprised that you want a "vote" to fix something that people complain about, when you didn't need any vote to break it in the first place... Would you need a vote, I suggest that you put a survey system online by yourself on any web page that you'd like (so you know the vote is "impartial"), and we let people know about it... If you asks for a vote, it sounds logical that you organize it. I feel extremely uneasy because I am a user of free software and I am full of respect and gratitude for the people who make this possible, including of course Nicolas Mailhot. I am an amateur and I am conscious that I rely entirely on the work of devoted paid and unpaid professionals. But in this case, I must crudely say, because it was hinted that we should have a vote: the vote already happened, here in Bugzilla, and in Launchpad, and elsewhere in many forums. The result obviously is: Nicolas Mailhot against the rest of the world. I think the rest of the world constitutes a majority compared to Nicolas Mailhot alone. Therefore one should immediately revert to the last good version with two Control keys. (In reply to comment #60) > Gentlemen, I am really stuck at that point. Allow me to sum it up. - Nicolas is the sole advocate of having Control_R mapped to Level5. - The rest of us want to go back to having both left and right Control behaving the same way. I'm not quite sure how you want us to organize a vote or poll. French Linux users (just like non-French ones) use a variety of distributions (which, BTW, may not ship the changed version of xkeyboard-config), and may not even all use a French keyboard (I'd say roughly half of my Linux-using friends and coworkers are using US qwerty layouts or mac layouts). Since apparently no hardware maker is following ISO standards, may I suggest creating new layouts such as "oss-iso" with Nicolas' changes? As one of Gentoo's X11 maintainers, I am really tempted to just revert that change downstream. The few French users I have talked to were just as surprised as I was to lose their Control_R key for no apparent reason. I could organize a poll on my blog but being aggregated only on Planet Gentoo, I wouldn't give much credit to any numbers I could find. Great ! Now the FR right [Ctrl] is B.R.O.K.E.N on Ubuntu 14.04 as well. Given the number of french Ubuntu users (+ upcoming derivatives) I think you'll have your "vote" and "survey" very soon, just by taking a look at lauchpad bug entries and new comments on https://bugs.launchpad.net/bugs/1013881 - which are not reflected here - some of the latest ones being very hmmm... "vocal". > Since apparently no hardware maker is following ISO standards, may I suggest
> creating new layouts such as "oss-iso" with Nicolas' changes?
Nicolas, what do you think?
Regarding the voting, is there generic popular Linux-oriented site in France? Like slashdot.org or smth...
Okay, your "vote" is currently happening on https://bugs.launchpad.net/bugs/1013881 with 4 new entries today (from different people), 100% of them saying : « PLEASE GIVE US OUR RIGHT [CTRL] KEY BEHAVING AS A [CTRL] KEY BACK !!! » To summarize further, AFAIK, there is ONE person in the world happy that the french right [CTRL] has been broke, 100% of the other french keyboard users who want their [CTRL] key back,... ...and the rest of the world doesn't use a french keyboard and doesn't care. Nicolas, I understand the logic in your position about Level 5. But I see a number of unhappy people. Could we find some other level5 chooser? (In reply to comment #66) > Regarding the voting, is there generic popular Linux-oriented site in > France? Like slashdot.org or smth... There is a popular Linux-oriented site in France (linuxfr.org) and the final ajustments of this layout were done after discussion on this site. I realise there is a vocal minority that does not like some of those choices but 1. the other alternatives used in the ancestors of this layout generated a lot more hate mail 2. because I knew there was no choice everyone would like spacebar layout is modular (and I'm the person who modularized it as part of the creation of this layout). People can choose the previous behaviour if they want and a few other possibilities were added as part of the modularization 3. so far no one proposed any better option appart from removing symbols which are necessary to write proper French (arguably proper French is not the same as C code). It's a lot easier to clamor for removal of the bits you do not use than to try to design a general-purpose solution without cutting corners (In reply to comment #69) … > > Regarding the voting, is there generic popular Linux-oriented site in > > France? Like slashdot.org or smth... > > There is a popular Linux-oriented site in France (linuxfr.org) and the > final ajustments of this layout were done after discussion on this site. > > I realise there is a vocal minority that does not like some of those choices A site like linuxfr.org may well be a vocal minority in itself. Nothing proves that linuxfr.org is representative of ordinary users. And even on linuxfr.org I have seen posts saying "where is my CRTL-R gone?" or "my keyboard is broken since some new version of Ubuntu". In a way, suppressing one of the customary CTRL keys is intrinsically a minority point of view. [Furthermore, the French layout for the Belgian keyboard depends on the French layout for the French keyboard. I do not see why a discussion on linuxfr.org should decide that Belgians have no use of right CTRL.] > but > 1. the other alternatives used in the ancestors of this layout generated a > lot more hate mail I doubt having a right CTRL key ever generated hate mail. That hate mail was about other questions. > 2. because I knew there was no choice everyone would like spacebar layout is > modular (and I'm the person who modularized it as part of the creation of > this layout). People can choose the previous behaviour if they want and a > few other possibilities were added as part of the modularization We are not here discussing space bar, but right CTRL. Is right CTRL modular? Is there an option easily accessible to the ordinary user to restore right CTRL? > 3. so far no one proposed any better option appart from removing symbols > which are necessary to write proper French (arguably proper French is not > the same as C code). It's a lot easier to clamor for removal of the bits you > do not use than to try to design a general-purpose solution without cutting > corners The clamor is not against proper French of for removal of anything. Furthermore, how could an ordinary user "try to design a solution"? The user wants a common PC keyboard with CTRL keys, without having to write the code himself. The clamor is: do what you can to allow writing proper French —and thank you for your trying to do it— but leave the right CTRL. ------- If no agreement can be reached, would it be possible to have the old layout accessible, even under another name? I do not know how many variants are allowed, by design, or by freedesktop conventions. Of course a new variant would be useless if it didn’t appear in the choices offered to an ordinary user by the most popular GNU Linux distributions. (In reply to comment #69) > (In reply to comment #66) > > > Regarding the voting, is there generic popular Linux-oriented site in > > France? Like slashdot.org or smth... > > There is a popular Linux-oriented site in France (linuxfr.org) and the > final ajustments of this layout were done after discussion on this site. But this has the same pitfall as any volunteered survey, it isn't any kind of representative. I for example myself barely ever read a linuxfr article, and wouldn't participate or even see a survey there. That doesn't mean I'm not a French fr/oss user :) Also note that people suffering from the situations are a lot more likely to do something and speak their mind than people perfectly happy with the situation. So probably "discussing" a problem is likely to only include opinion from people not happy with the current state, and people closely involved. > I realise there is a vocal minority that does not like some of those choices > but Just to be fair, I see *no one* else here arguing towards keeping right Ctrl Level5 modifier -- but sure, as I state above, people happy with it won't see the discussion or care, so it may be biased. > 1. the other alternatives used in the ancestors of this layout generated a > lot more hate mail If it broke people's apps (or apps broke with it, I don't care who's fault it is), I surely can understand people being angry. But similarly, since the change from this report broke people's right Ctrl key, I can understand they get angry. > 2. because I knew there was no choice everyone would like spacebar layout is > modular (and I'm the person who modularized it as part of the creation of > this layout). People can choose the previous behaviour if they want and a > few other possibilities were added as part of the modularization And we thank you for your work. But I don't think it's realistic to think everyone can "choose the previous behavior" if it means editing the keymap. I already said it, but it took me quite some time to find what caused my right Ctrl key to no longer work and fix it, and I think it's fair to consider myself a quite advanced user. If really reverting the addition of Level5 is not an option (but see below), please add an alternative layout. > 3. so far no one proposed any better option appart from removing symbols > which are necessary to write proper French (arguably proper French is not > the same as C code). The change in this particular report did not add or remove any symbol, it only moved one to Level5 because some apps couldn't handle <Ctrl>Space with this layout. And as I said earlier, most of the incriminated apps (at least that I know of) don't even use <Ctrl>Space anymore, rendering the change moot for them. And even if we wanted to please those apps, we mayb be able to without adding a new modifier (Level5) and a key for it -- again, see (comment #46). Also note that event though I admittedly don't use short-nbsp (I'm afraid I don't know the rules where this one should be used in French typography), I'm an heavy user of nbsp everywhere French typography tells me to do it. So no, I don't want to remove anything, don't worry -- but I'd like my right Ctrl key back :) > It's a lot easier to clamor for removal of the bits you > do not use than to try to design a general-purpose solution without cutting > corners It sure is, but although my nearly non-existent knowledge of keymaps may make my message somewhat irrelevant (e.g. I don't know how to apply my ideas), I investigated possible solutions in comment #46 -- although no one followed up on those. (In reply to comment #70) > If no agreement can be reached, would it be possible to have the old layout > accessible, even under another name? The old layout was never removed and kept its historical name (fr latin9) (In reply to comment #72) > The old layout was never removed and kept its historical name (fr latin9) No, we are speaking here of fr/oss, but before it got right Ctrl as level5 modifier (what this bug end up changing). I bet everyone complaining here was very happy with fr/oss before this Level5 modifier -- at least I was, this map has so everything useful (and more) on handy locations :) (In reply to comment #71) > And even if we wanted to please those apps, we mayb be able to without > adding a new modifier (Level5) and a key for it -- again, see (comment #46). I'm pretty sure some of the other spacebar configurations available as xkb options do not require level5. They are not the default for fr(oss) because without level5 it is too easy to type a nbspc by mistake and random nbspc everywhere breaks lots of things (as reported by fr latin9 users). Nicolas, Where does the need to *have* a key for nbsp come from? Isn't a compose combo more appropriate and less error-prone? Cheers (In reply to comment #75) > Nicolas, > > Where does the need to *have* a key for nbsp come from? Because unlike in English most French punctuation symbols require a space (sometimes a short space) before. And if it's not a non-breakable space apps will perform line breaks at the wrong position and you'll end up with orphan sumbols at line starts Online http://fr.wikipedia.org/wiki/Espace_ins%C3%A9cable Actual authoritative reverence (highly recommended if you want to work on any system with French inputs or outputs) http://www.amazon.fr/Lexique-r%C3%A8gles-typographiques-lImprimerie-Nationale/dp/2743304820 Lack of non breakspace on French layouts on some OSes is such a basic problem OpenOffice/LibreOffice had to hardcode a nbspc combo but that does not help when writing in you MUA, your browser, your IM client, etc > Isn't a compose > combo more appropriate and less error-prone? Compose is not appropriate for basic symbols you need to write pretty much any correct sentence in the target language. And adding a specific input method for one symbol just because some people can't live with the modifier ISO chose for level 5 is disproportionnate. (In reply to comment #76) > Compose is not appropriate for basic symbols you need to write pretty much > any correct sentence in the target language. And adding a specific input > method for one symbol just because some people can't live with the modifier > ISO chose for level 5 is disproportionnate. Woow, calm down guys. What's disproportionate is the reaction here! *before* the change this report introduced, and which many of us are trying to get reverted, *both* nbsp and nbspc were easily available: nbsp AltGr+Shift+Space nbspc Ctrl+Shift+Space Reverting the change this report introduced would get this behavior. Please understand we just want to get nbspc moved back where it *was* (or for me, anywhere on a 1-4 level), not removed or anything. Also, realize that currently there is only *one* Level5-specific symbol, and that's nbspc, so we basically have a key only for that. I'm at a loss as to what to do to help find a solution for everyone. fr-oss is a great layout with many useful improvements over fr-latin9, but the missing ControlR is a deal breaker. I'm personally back to using the default "fr" layout and I'll advise users to do the same if they want their ControlR back. @Ubuntu users listening in through Launchpad: use whatever control panel you have to select a layout that doesn't have the words "Alternative" or "variante". Cheers Created attachment 98826 [details]
Make Level 5 choosers more easily available
The patch makes existing options for Level 5 choosers more easily available by adding them to the rules. This is useful in its own right, irrespective of this bug. In context of this ongoing discussion, it would allow to change back to the old default, and allow users who prefer the current behaviour to use the options lv5:rctrl_switch and nbsp:level4n to get their preferred behaviour.
About a "short nbsp" in french, let's make it perfectly clear that there must be about a hundred professionnal typographists in the whole country who care about it - most of them not using Linux BTW - and the rest of the ~40 million computer users here don't give a shit about a "short nbsp" and don't even know what it is, feel perfectly happy with the "correct french" they write without it, and many of them just would like their fscking right [Ctrl] key back. If a so thin minority of professional typographists that in no way represent the average french "Joe" user want this modifier, it's perfectly OK that they devise their own special layout for their on needs, but by no means impose it on the rest of us. BTW, about the punctuation signs that, in French, requires a nbsp before them, i.e. " ; : ! ? " (for perfect typographic correctness, while usually few people know about this and nobody really cares...) : Usual word processing programs, such as OpenOffice / LibreOffice, when configured to the french locale, add these typographically required nbsps automagically, so people actually do not have to type the nbsp, which makes the need for an easy entry of these still less of an issue. Should we follow the slope of stealing a useful right [Ctrl] key for this, then me might well in the future steal the left one for the dash " - ", as in french, we typographically use at least 3 different lenghts for dashes. As previously, word processing software usually transforms the "normal dash" into the "typographically correct dash"... Nope, all this mess of quite complex and unusual characters is the very reason for which meta and compose keys exist in the first place... Swâmi, We've all laid out these arguments many times over. Yes, this issue is frustrating (and I regret having vented some of my own frustration in my first comments) but let's keep it civil. There are proposed solutions. I, for one, think Andreas' proposal is the best way out of the current dead lock as it would allow each and everyone of us to configure the fr-oss layout the way we want it. It's now up to Sergey and Nicolas to decide how to move this forward. Cheers I too believe that Andreas' proposal is the right one. It permits people who really want the extra 5th level to be able to easily get it, while not breaking the 99% usual usage. Just for the record, I had not seen the linuxfr discussion. I guess mostly only people who would want the extra 5th level did realize that it would steal the right control key. If a discussion happened on "are people fine with making the right control key the 5th level modifier by *default*", the result would be quite different, I believe. At the risk of just making things worse ... My €0.02 is that we should stick with level 5 right Control as being optional. This is a marginal (in terms of percentage of userbase that will ever see/use it) layout that people have to go out of their way to use, but still taking away a modifier is a pretty big and surprising step. I've got sympathy with the non-breaking-space thing from a strict technical correctness point of view, however it just can't be essential for day-to-day usage if Windows requires you to enter it by the Unicode codepoint. If such a large percentage of the French-speaking world cope with it, then so can we. I think Andreas's proposal is the only sensible one. Some people won't be happy with it, but if this discussion (and that of Bépo) has shown us anything, it's that you really can't please anyone when dealing with alternate French keyboard layouts. FWIW after user complaints I've reverted this change in Debian's xkeyboard-config, to have right control behave normally again. ok, Daniel and Julien put last two nails into that coffin. I removed right control as level5 modifier in git. Thank you everybody. Really sorry there is no perfect solution here... the fix looks like it'll reintroduce some form of #9529? or was the use of level4n instead of level4nl intentional? |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.