capslock doesn't write numbers on azerty keyboard

Asked by mobidyc on 2009-05-04


on azerty keyboard the numbers can be written by pressing the SHIFT key and the corresponding key numbers.
I want to do the same thing without pressing the SHIFT key but activate the capslock.

when I look in the keyboard layout I can see that when I activate the capslock :
 - the letters are in uppercase by writting the upper left symbol of the keyboard.
 - the numbers are not written because it is the upper right symbol of the keyboard which appears.

I can see this because of the picture of the keyboard in the keyboard layout but I've not this sort of keyboard and I've never saw this sort of keyboard.

the keyboard i'm using is a generic 105 keys (intl), lang french, layout other.

I tried :
- all of the options in layout keyboard
- all sort of french keyboard languages

please help.

Question information

English Edit question
Ubuntu Edit question
No assignee Edit question
Solved by:
Last query:
Last reply:
Arnaudus (a-lerouzic) said : #1


The behavior you are describing is perfectly normal. The AZERTY keyboard was really poorly designed, and there is no way to access the accentuated capital letters (such as É À etc) which are necessary to write in French. The tradition in Linux is to bypass this limitation by using SHIFT and CAPSLOCK in a slightly different way: SHIFT will access the upper left symbol (such as the digits), and CAPSLOCK provide the capital of the bottom left letter. Note that it is the same with commas, periods etc. For instance, if you type a comma with CAPSLOCK activated, you will get a comma and not a dot.

In short: this is not a bug, this is a feature. CAPSLOCK means "Type in capital letters", not "do as if SHIFT was pressed continuously".

mobidyc (mobidyc-gmail) said : #2


Thanks for your answer Arnaudus.
I understand better now.

How can I bypass this way ?

I mean, I don't need to write capital letters like É but I really need to write numbers.
I definitely don't want to learn a new way to write on a keyboard.

I can see in the capslock key behavior the option:
 - Capslock toggles Shift so all keys are affected.

this option is not useable because i can't select anything with the mouse if the capslock is activated.

another thing, even with the capslock activated, It should not write the top right sybol of a key as described in the help system:
Keyboard Indicator Manual -> >
 - For the character shown in the top right, press the key with Shift and the third level modifier.
 - By default, no key is assigned to act as a third-level modifier.

Please, help me to use my keyboard the same way I use It from years.

Arnaudus (a-lerouzic) said : #3

Before trying to play with complicated options, do you have a "Num Lock" key on your keyboard? If yes, it should do what you expect (lock the digits), while Caps Locks would lock the capital letters.

The "problem" is known (see for instance bug #292158). It seems that, according to the developers, it is not a bug: caps lock locks the capitals, num lock locks the numbers, and the option "caps lock does as if shift was pressed" does exactly what it is supposed to do.

It seems that the developers are quite reluctant to reproduce Windows bugs in Ubuntu, which I understand. Note that this problem is also AZERTY-specific, and most developers even don't understand that it is a problem. Personally, I agree that there should be an option to mimic Windows behavior, but as far as I know, such an option does not exist.

mobidyc (mobidyc-gmail) said : #4


I understand that developers are quite reluctant to reproduce Windows bugs but developers should not consider it like a bug but a feature.
developers should let us the choice, to use a feature used since dozens of years instead of theirs minds.
unfortunately I'm not a developer so I maybe have a bad mind.

another things, developers should not develop an incoherent feature :
did you ever seen an upper diacritical letter on a keyboard ?
I can see it on the management layout picture from a generic keyboard but I've never seen that on resellers.
So I will continue to consider it like a bug because developers have added extra keys to generics keyboard, which have not.

I will not fight against developers, they generally do better things i could imagine or create myself and I thank them for it.

do you have any documentation to create my own keyboard layout so i will set the numbers in both of right and left upper keys ?
It will solve my problem i think.

Arnaudus (a-lerouzic) said : #5

I kind of agree with you on several points, see my comment in bug #292158.

However, I disagree with you on the fact that the way Ubuntu handles the keyboard makes little sense to you. I think you have just been "intoxicated" by using Windows for years, so that a totally meaningless behavior does seem logical for you now. Most keyboards actually do have capital letters on them --I'm using a Swedish keyboard now, and I have distinct keys for Å, Ö and Ä for instance. You cannot type proper French without capital letters, and the design of the AZERTY keyboard is very poor anyway.

I don't know the answer to your last question (how to design your own keyboard layout), sorry.

mobidyc (mobidyc-gmail) said : #6

Thanks for your answer and your help Arnaudus.

I found the appropriate link to customize the layout:

I consider your answers as it solves my problem but I just want to clarify some things:

In France, there is no upper diacritic letters on keyboards.
My last keyboard have less of 2 months and I've searched a lot before finding this amazing keyboard (Aurora from Enermax), so I can affirm that.

I think i'm not "intoxicated" by Windows.
I'm using Linux at home since the end of the 90's, the only times I use Windows is at work because I've no choice.
I'm an Unix engineer and I manage thousands of servers (AIX/HP-UX/Solaris and Red-hat).

the question I've asked right here is not my problem, personally I always used the SHIFT key to write numbers so I'm not impacted by the question I've posted here.
But I really understand that this is a problem for my friend.

to solve the problem I will just add a REALLY_Generic_azerty layout without extra keys which not appears on keyboards.
I think developers should do the same thing.

thanks for everything Arnaudus, you really help me.

CapsLock only acts on keys of type *ALPHABETIC
Keys <AE01> to <AE10> belong to type FOUR_LEVEL as can be found from doing "xkbcomp -xkb :0 -"
By changing their type to FOUR_LEVEL_ALPHABETIC they will also be modified by CapsLock and your AZERTY keyboard will implement the MS Windows "feature".

in /usr/share/X11/xkb/symbols/be (or fr for French AZERTY) change definitions as below:

key <AE01> { type= "FOUR_LEVEL_ALPHABETIC", [ ampersand, 1, bar, exclamdown ] };

Do the same thing for keys up to <AE10> restart X and voila, your Windows users will feel
at home in this strange Linux environment ...

mobidyc (mobidyc-gmail) said : #8

You brilliant Yves.

I just dropped this story but you solve the problem.

Very big thanks.