Bug 9752 - Can't type TILDE by pressing the button once...
Summary: Can't type TILDE by pressing the button once...
Status: RESOLVED FIXED
Alias: None
Product: xkeyboard-config
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Windows (All)
: medium normal
Assignee: xkb
QA Contact:
URL:
Whiteboard:
Keywords: NEEDINFO
Depends on:
Blocks:
 
Reported: 2007-01-24 00:56 UTC by Tim
Modified: 2016-09-14 00:47 UTC (History)
4 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Patch for symbols/de with new mode legacy and dead tilde (499 bytes, patch)
2012-12-10 20:29 UTC, Sven Müller
Details | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Tim 2007-01-24 00:56:34 UTC
Hi.

I have a problem with the tilde.
On the german keyboard layout you have to hold "Alt Gr" and then type the "+ * ~" key to create the tilde sign.
When I want do do this in a konsole that I opened with Xming, I have to type that  key two times before the tilde appears.

How can this be fixed?

Kind Regards
Tim
Comment 1 Sergey V. Udaltsov 2007-01-24 01:16:31 UTC
According to what I see, none of German variants have tilde in the first (or even second) shift level. But you could try nodeadkeys variant - so you'd have to press 2 keys instead of 3.
Comment 2 Tim 2007-01-24 01:46:59 UTC
(In reply to comment #1)
> According to what I see, none of German variants have tilde in the first (or
> even second) shift level. But you could try nodeadkeys variant - so you'd have
> to press 2 keys instead of 3.
> 


Thanks for your fast reply.

You can see the german layout on this picture: http://www.uni-regensburg.de/EDV/Misc/KeyBoards/keys11l.jpg

For tilde you usually have to press "Alt-Gr" and at the same time once the key where "+" "*" and "~" are located. But in the xming windows I have to press the key with the three symbols two times before it is displayed. When I open Xemacs I can't even type tilde at all.

What do you mean with "nodeadkeys variant"? What do I have to do? I'm pretty new to all that stuff...
Comment 3 Sergey V. Udaltsov 2007-01-24 02:24:32 UTC
> For tilde you usually have to press "Alt-Gr" and at the same time once the key
> where "+" "*" and "~" are located. But in the xming windows I have to press the
> key with the three symbols two times before it is displayed. When I open Xemacs
> I can't even type tilde at all.
Actually, there might be a problem with these particular applications (BTW Emacs is famous to be shitty in XKB department). What about other apps?

> What do you mean with "nodeadkeys variant"? What do I have to do? I'm pretty
> new to all that stuff...
In your XKB configuration, try using "de(nodeadkeys)" instead of "de".

Comment 4 klptzyxm 2008-11-08 07:56:25 UTC
While the "nodeadkeys" variant is often preferred by programmers, I think the default de-"basic" layout should conform to the German DIN 2137 standard for keyboards.
This states that only french accent keys (circumflex ^, acute ´, grave `) are dead keys, but not the tilde ~ key. This is also the correct behavior in Windows with the "German (Germany) - German" setting.
It is currently not possible to select such a variant in Linux as the "basic" variant has "dead_tilde" enabled and "deadgraveacute" is missing a "dead_circumflex".

See also <http://en.wikipedia.org/wiki/Keyboard_layout#Germany_and_Austria_.28but_not_Switzerland.29>
Comment 5 Sergey V. Udaltsov 2008-12-18 09:07:50 UTC
Personally I do not mind changing dead_tilde to tilde - but I am not German. I would like to hear some other opinions on that subject - preferably from other Germans. dead_tilde is used in many Compose sequences, so I do not want to frustrate people without serious reason.

What about dead_graveacute and dead_circumflex? I see them in German layout, keys AE12 and TLDE.
Comment 6 Sergey V. Udaltsov 2010-05-06 15:55:31 UTC
no updates
Comment 7 Rolf Leggewie 2011-11-06 07:06:30 UTC
My opinion as a German is that there should be a setting that conforms to the DIN norm.  Actually, that setting should be the default for de.

Reopening.
Comment 8 Sergey V. Udaltsov 2011-11-17 11:59:27 UTC
> My opinion as a German is that there should be a setting that conforms to the
> DIN norm.  Actually, that setting should be the default for de.
The default setting for any country should be whatever most of the people are using (usually it is some layout from MSWin). Is it absolutely same as DIN?

If national standard de-juro is different from the standard de-facto, I am willing to commit another variant. We have that scenario with the Ukraine.
Comment 9 klptzyxm 2011-12-04 12:12:55 UTC
For comparison, here's the default Windows keyboard layout for "German":
http://www.microsoft.com/resources/msdn/goglobal/keyboards/kbdgr.html

As defined in the German DIN standard, only the french accent keys (circumflex, acute, and grave) are dead keys (orange color), but not the tilde key (AltGr and +).
Comment 10 Sergey V. Udaltsov 2011-12-04 13:20:03 UTC
> As defined in the German DIN standard, only the french accent keys (circumflex,
> acute, and grave) are dead keys (orange color), but not the tilde key (AltGr
> and +).
In that case, the current default "de" layout is compatible with DIN. Would it be ok to close this bug report then?
Comment 11 klptzyxm 2011-12-04 14:27:51 UTC
Hi. I assume this is the most recent version of the "de" layout?
http://cgit.freedesktop.org/xkeyboard-config/tree/symbols/de

If de(basic) is the default variant, then it looks to me as if line 29
key <AD12>	{ [      plus,   asterisk,   dead_tilde,  dead_macron ]	};
would have to be changed (in accordance with line 63 of "nodeadkeys") to
key <AD12>	{ [      plus,   asterisk,   asciitilde,       macron ]	};
in order to have tilde not be a dead key?
Comment 12 Sergey V. Udaltsov 2011-12-04 14:29:11 UTC
Sorry, you are right. Anyone would have any objections?
Comment 13 Jon Turney 2012-07-23 12:55:25 UTC
(In reply to comment #12)
> Sorry, you are right. Anyone would have any objections?

I also have a german end-user requesting that tilde not be a dead key in the german keyboard layout, (see [1] and following, and excuse my xkeyboard-config ignorance), so changing the default so tilde is not a deadkey, or adding an option for that, seems like a good idea.

[1] http://cygwin.com/ml/cygwin-xfree/2011-08/msg00040.html
Comment 14 Sergey V. Udaltsov 2012-08-05 18:54:47 UTC
Ok, committed that fix. Please check
Comment 15 joehni 2012-11-24 00:06:50 UTC
Please reconsider this change! It is quite harmful to change the standard keyboard layout that exists with this behavior for years. After a silent update in my system from 2.6 to 2.7 I almost recognized immediately that I could no longer enter "ñ" and got strange results when typing the command:

ls ~ /tmp

Imagine this would have been "rm -rf"! Sorry, but this change is embarrassing and dangerous. If the other behavior is wanted, a new variant "DIN" could have been added, but now my only choice is a downgrade. Using 2.7 is not an option for me - at all!
Comment 16 Sven Müller 2012-11-25 20:21:14 UTC
(In reply to comment #13)
> (In reply to comment #12)
> > Sorry, you are right. Anyone would have any objections?
> 
> I also have a german end-user requesting that tilde not be a dead key in the
> german keyboard layout, (see [1] and following, and excuse my
> xkeyboard-config ignorance), so changing the default so tilde is not a
> deadkey, or adding an option for that, seems like a good idea.
> 
> [1] http://cygwin.com/ml/cygwin-xfree/2011-08/msg00040.html

I'm using a German keyboard layout too. But I need sometimes ~n. It seems quite dangerous AND stupid to change a behavior that is known and proven for many years. 


(In reply to comment #13)
> Ok, committed that fix. Please check
Sorry, but I don't think so. Please revert that 'fix'.
Comment 17 Jon Turney 2012-11-26 12:36:09 UTC
(In reply to comment #16) 
> I'm using a German keyboard layout too. But I need sometimes ~n.

I think you should be able to still type 'ñ' with compose key sequences such as 'Compose, n, ~'.
Comment 18 Sergey V. Udaltsov 2012-11-26 16:31:53 UTC
I would prefer to stick to Windows and DIN standard (especially if they are exactly same). Do I understand that right that in both Windows and DIN tilde is not dead character?
Comment 19 Sven Müller 2012-11-26 18:40:25 UTC
Hi there, 

In http://cygwin.com/ml/cygwin-xfree/2011-08/msg00040.html the objective was to adopt cygwin to windows. I love Cygwin and use it every day at work. But I don't think it's a good idea to turn the linux behavior into the windows one. I'm using Linux because it isn't behaving like Windows. I would prefer to have the ~ deadkey in Windows or Cygwin too.

But same as joehni I noticed some weeks ago, that ñ didn't work anymore. I thought by myself, it could be a bug. I'm using Gentoo and xorg-server-1.13 was still marked as unstable. A few months later this behavior became annoying. And therefore I was searching. I stumbled into a thread in a debian-forum how to use setxkbmap. Didn't work. After more searching I found this bug report. 

To make the story short: It's a breaking change. A lot of people were used to the old behavior. I guess, like me, many people think, the new behavior is a bug. And to create a special key sequence on all my computers to be able to write a ñ, is not really nice. 

Another argument:
For the people who don't want dead-keys exists xkbvariant nodeadkeys. In this layout you don't have to press to keys in sequence to get ~. A ç isn't used more often than a ñ. Now we have nodeadkeys twice and lost the default deadkeys. It's definitly no win-win situation. 

If you really need nodeadkeys and notildedeadkeys, then create this xkbvariant as a additional layout, but please, don't remove the old behavior.!
Comment 20 klptzyxm 2012-11-27 21:00:58 UTC
Hi,

(In reply to comment #18)
> I would prefer to stick to Windows and DIN standard (especially if they are
> exactly same). Do I understand that right that in both Windows and DIN tilde
> is not dead character?

the default German keyboard layout on Windows and the DIN norm definitely do not have 'tilde' as a dead key (I'm using this layout right now). Pressing the ~ key directly results in a ~ character. Only ´ ` ^ are dead keys.

The layouts 'nodeadkeys' and 'deadgraveacute' are not valid alternatives, as they do not show the desired behavior.

I personally am far more likely to use the 'tilde' key for specifying a directory on Linux than needing the ñ character. There are several words in the German dictionary requiring French accents, but I can't think of one requiring a Spanish accent right now.

Please at least include a new DIN variant if this behavior cannot be kept as standard.

Thank you for taking this issue serious, this has been affecting a lot of German users for quite some time.
Comment 21 Sven Müller 2012-11-28 22:33:57 UTC
Ok, I guess, with the arguments on both sides we won't get a result, which is suitable for everyone. 

One last thing: 
joehni wrote:

(In reply to comment #15)
> got strange results when typing the command:
> 
> ls ~ /tmp
> 
> Imagine this would have been "rm -rf"! Sorry, but this change is
> embarrassing and dangerous. If the other behaviour is wanted, a new variant
> "DIN" could have been added,

If you type ~ in the console outside of X, you'll notice, that this character is still handled as a deadkey. So at the moment we have a different behaviour between X and non-X. Joehni's argument with "rm ~ /tmp -rf" is real, if you switch from time to time to the console outside of X. Think about this. 

Of course I respect the argument with the DIN norm too. So my proposal:

Offer 3 variants:
* default: tilde as nodeadkey, accents and grave as deadkey (current default) according to DIN.
* nodeadkeys: current variant for people that don't want deadkeys
* tildedeadkeys: previous default behaviour for backwards compatibility. 

A very important thing would be to make that breaking change public. E.g. in Gentoo exits a news system on updates. If there's something like this, you'll get a message on a update. I guess in all the other distributions there exits something similar. This change drove me crazy for some weeks until I found the reason for this "bug".
Comment 22 Sergey V. Udaltsov 2012-12-02 00:08:18 UTC
I am ok with 3 variants. I would the old default not "tildedeadkeys" but "legacy". The patch is welcome!
Comment 23 Sven Müller 2012-12-10 20:29:13 UTC
Created attachment 71289 [details] [review]
Patch for symbols/de with new mode legacy and dead tilde

As proposed I made a patch to introduce the legacy mode, which provides the previous standard behaviour. 

The name "legacy" for the new mode is quite correct, but doesn't say exactly something about the behaviour. Maybe you should consider a more meaningful name. 

Please check, if the patch meets your requirements for code quality and if it works correctly. 

Furthermore it would be find, if you could inform the maintainers of the main distributions (Debian, Arch, Suse, Gentoo, ...) about the change of the default mode and the introduction of the legacy variant. It was quite difficult for me to find the reason for the different behaviour. 

Thanks so far.
Comment 24 Sergey V. Udaltsov 2012-12-11 23:56:09 UTC
Committed, with some minor changes.
Comment 25 careca 2013-11-14 10:39:59 UTC
Dear maintainers of xkeyboard-layout,

I come to this thread, as I see, a bit late, and I can notice, things has been running "out of rails".

As many other in this thread, I cannot be satisfied, with the way you have solved things.

The main reason for changing "GERMAN" layout behaviour regarding to "Tilde" has been the complaints of "low-level users" or "programmers", which use the "tilde or approximate sign" in a mathematical or Linux-OS means.

Other stream of users make use of the same "GERMAN" keyboard for typing literal texts in "European Latin languages", for accentuation of characers as "a", "o", "n" etc.

I still can't understand WHY DIN 2137-2 in its latest revision has changed its definition in a wrongly "M$ Windows" way...
This question I have just placed to the DIN 2137-2 responsible person, and I am awaiting his reply.

Now, what we "USERS" expect from YOU xkeyboard-maintainers is the RIGHT decision on the definition of layouts for the german keyboard.

My concerning here IS. What will happen with a layout named "GERMAN (LEGACY)"?
Will it exist forever with this WRONG/BAD/ANNOYING/MEANLESS naming?
Are you really aware of the problems which arose/arise with this change?
In my distribution, using Gnome this "LEGACY-Layout" was (under Gnome) left FORGOTTEN, and can only be found if the user searches for anything among many many entries.
Myself, I was helpless during long time searching for the solution to my "Tilde-problem"...

So, please. Get this subject back to discussion, and give us a reasonable solution, including DIN into the whole discussion.

Yours Faithfully,
careca
Comment 26 Sergey V. Udaltsov 2013-11-17 01:09:41 UTC
I do not see anything to discuss here. If both DIN and MSWin agree sone some default layout - we are using it here, as most familiar to users and matching the standard de-jure. For unhappy people there is "legacy" variant.

If DIN would go agains MSWin -that could be some tough choice. But luckly for us they are in sync.
Comment 27 Anton 2015-03-09 02:19:47 UTC
One thing you oversaw with this change was the macron, which is used for a number of languages and not affected by the DIN 2137 standard. It should have been left untouched for this change.

So instead of
key <AD12>	{ [      plus,   asterisk,   asciitilde,       macron ]	};
for the basic layout the line should be
key <AD12>	{ [      plus,   asterisk,   asciitilde,  dead_macron ]	};

Please fix that bit, it interfered with me entering proper romanization for Japanese.

I also agree that "dead tilde" would be a better descriptor for the alternate mode, as another situation where an accutomed behavior becomes a legacy one in the future.
Comment 28 Sergey V. Udaltsov 2015-04-04 23:25:35 UTC
(In reply to Anton from comment #27)
> One thing you oversaw with this change was the macron, which is used for a
> number of languages and not affected by the DIN 2137 standard. It should
> have been left untouched for this change.
> 
> So instead of
> key <AD12>	{ [      plus,   asterisk,   asciitilde,       macron ]	};
> for the basic layout the line should be
> key <AD12>	{ [      plus,   asterisk,   asciitilde,  dead_macron ]	};
> 
> Please fix that bit, it interfered with me entering proper romanization for
> Japanese.
> 
> I also agree that "dead tilde" would be a better descriptor for the
> alternate mode, as another situation where an accutomed behavior becomes a
> legacy one in the future.

Tim, Sven and others - could you please comment on that? Before reverting that line, I would like to hear other opinions.
Comment 29 Rainer Perske 2016-08-12 16:24:44 UTC
Unnecessarily changing a keyboard layout that millions of users were accustomed to for decades and without unanimous consensus was one of the worst ideas ever, especially if a character as dangerous as a tilde in Unix is involved.

Even if not public, there are many accidents where people typed "rm -rf ~ /..." in place of "rm -rf ~/..." after an update, causing damage that can be summed up to thousands if not millions of Euros / Dollars.

It would be ok to offer an additional DIN layout, but if you do, then do confirm to the DIN standard not only in the tilde key but in all AltGR keys: "https://de.wikipedia.org/wiki/T2%20(Tastaturbelegung)" The current basic layout is far away from that!

So please DO revert the "fix", regarding both tilde and macron, it is worth the new change even after this time. So many bug reports in all the bug tracking systems of all the Unix distributions are enough reason to do so. Search for "Tilde Deutsch (veraltet)" to see them.
Comment 30 Sergey V. Udaltsov 2016-08-12 21:09:43 UTC
Since I do not have personal opinion, I would like the people to reach consensus here. Alternatively, some of you could create some poll on some German Linux-related site - and see what German-speaking people see. I do not want to make any changes without having at least some degree of confidence. Otherwise it will go back and forth (and I cannot make informed decision since I am not using any German layout).
Comment 31 Rainer Perske 2016-08-13 00:22:14 UTC
I am German, and I am working with Linux as a professional starting with SuSE 4.4 in 1996. Until now the tilde key _always_ was a dead key. I can type blindly with 300 to 600 keystrokes per minute, of course only if the keyboard layout never changes. So this change is a disaster because I cannot type blindly anymore because there may be different keyboard mappings active on the hundreds of computers I administer even if they all have standard German keyboards. This considerably slows down work. Time is money!

As most people, I am not always hunting for the newest version. Stability is far more important. For me, the computer is a tool that has to work. I was hit by this bug just now when upgrading my workstation from Xubuntu 12.04 LTS to Xubuntu 16.04 LTS and it cost me a day of expensive working time, to find this "bugfix" being the ultimate reason for this unexpected change. No release note, no change notice, nothing has warned me regarding this fundamental change.

You will never reach a consensus here, for the same reason why there are multiple keyboard layouts in the world: Different people prefer different keyboard layouts.

A Unix newcomer can select the keyboard layout he likes. But newcomers should not force experienced professionals to adapt to new keyboard layouts without urgent need.

So you should stick with the traditional setting as default and offer alternative settings as what they are, i.e. as alternatives. And the three (!) DIN layouts are alternatives only. You are completely free to enhance the default layout by adding new mappings, but do not change existing mappings. A regular update must never unexpectedly change the keyboard layout, especially for often used keys!

There is a proverb: »Don't do to others what you don't want to be done to you«. I do not demand from you to get accustomed to a new keyboard layout, so you should not demand from millions of Germans to get accustomed to a new keyboard layout. But currently you are doing so.

So please do revert this catastrophic change. Thank you for your understanding.
Comment 32 Sergey V. Udaltsov 2016-08-13 00:56:32 UTC
Rainer, could you please answer some questions:
1. What to people coming from MSWin expect as default German layout - in general and in relation to tilde key, dear tilde or not?
2. Same as #1 but for MacOS
3. Same as #1 but regarding DIN standard.
If the answers to these 3 questions are exactly same (at least about the tilde key) - THAT is going to be the default tilde behaviour. If that behaviour does not match what Linux provided for decades - you can you/fix/improve the 'legacy' variant, it was created exactly for that purpose.
Comment 33 careca 2016-08-13 01:46:01 UTC
Once more I want to reinforce what I already commented before and what has just been said by Rainer.

No reason to change standard behaviour of German mapping.

Never the less, even if it should/had to be done, please at least name the new mapping NOT as "legacy" but as something more reasonable as "German dead-keys + tilde".

Legacy is SOMETHING mean less, and may fall in the trash as soon as, even you yourself, don't anymore remember what does it in fact means.
Comment 34 Rainer Perske 2016-08-13 14:10:19 UTC
> Rainer, could you please answer some questions:

of course

> 1. What to people coming from MSWin expect as default German layout - in general and in relation to tilde key, dear tilde or not?

A tilde is rarely used in German, not at all in punctuation, only when composing foreign letters or special mathematical formulas. And it is not used in any special meaning by the Windows operating system. So only very few Windows users ever use the tilde key. So most people coming from windows will expect nothing because they have never used the tilde before.

> 2. Same as #1 but for MacOS

German MacOS keyboard layout has no tilde at all, see "https://goingtolalaland.files.wordpress.com/2011/08/img_1122.jpg", you have to type Alt+n to get a tilde, see "http://www.tippscout.de/tilde-mac_tipp_5321.html", and the whole layout is clearly different from both windows and linux, e.g. it uses Alt+L in place of AltGr+Q for the @ sign as you can see on the image.

> 3. Same as #1 but regarding DIN standard.

I have never seen a keyboard implementing the DIN standard completely before. But even If I consider you could have be right taking away the dead tilde from Altgr++, then it would have been an absolute must to put it to AltGR+I as in the DIN standard to keep it available. But you didn't, you have removed the dead tilde completely (or hidden it at a place where nobody can find it).

> If the answers to these 3 questions are exactly same (at least about the tilde key) - THAT is going to be the default tilde behaviour.

You can see that they all differ completely. There is no common mapping across systems at all. So there was absolutely no need to change the well-established Linux mapping.

Please do revert that "bugfix", it has fixed no bug at all, it was no progress at all, and it has no advantage at all except for fewest newcomers from onle one of the other systems, but substantial disadvantage for millions of existing users. If the change would have made Linux conform to a common mapping across most systems, I would been able to agree to that change. But it didn't.

Even if my reasons do not convince you, the huge amount of bug reports with all the Unix distributions regarding this change should convince you that this change was really, really bad and that reverting is well justified even after this long time.

> If that behaviour does not match what Linux provided for decades - you can you/fix/improve the 'legacy' variant, it was created exactly for that purpose.

I know, and I have already reverted the "bugfix" on my systems. But you are generating unnecessary work for thousands of German system administrators. Not all of them have the time for it, so you are really splitting the German Linux world into two separating worlds regarding a very important key for the Linux command line.

Everybody is kindly invited to add a Windows mapping as an alternative, and a DIN mapping, the same way the Macintosh mapping has already been added. But do not touch the heavily needed keys of the default mapping!

And if you change the default for new users: An update must never change existing key mappings!

And even worse: The wording "legacy" and by far even more the German translation "veraltet" officially provided by your team, a word meaning not "legacy" but "outdated, obsolete" (see www.linguee.de), indicates the definite intention to remove that mapping later, so you are discouraging from selecting that mapping. See careca's comments.
Comment 35 Sergey V. Udaltsov 2016-09-13 23:41:47 UTC
I changed de(legacy) to de(deadtilde), with the new description too. Hope that is the reasonable solution. At least it looks like a mid-way solution.
Comment 36 Rainer Perske 2016-09-14 00:47:45 UTC
Regarding the name change from de(legacy) to de(deadtilde):

Bearing in mind that the disastrous change from deadtilde to asciitilde has been made more than four years ago and that most distributions have adopted this change already, the harm - there are two different default German keyboard mappings on Linux computers in the wild now - has already been done and I must reluctantly accept that the genie is out of the bottle and it cannot be pushed back inside again.

So changing the variant name from legacy to deadtilde is probably the only rectification causing no further harm. So: Thank you for this change. I hope the German translators this time do a better work. (If you send me the new description, I can provide a German translation.)

(And please please do never again change any keyboard layout in any language being in use for decades; esp. if keys so important for system administrators and programmers are involved!)


bug/show.html.tmpl processed on Mar 24, 2017 at 04:14:07.
(provided by the Example extension).