I am using Mint 8 on a laptop with US keyboard
to make my life comfortable, I would like to switch off capslock, and
to add some special characters, as äöü ÄÖÜ and some other useful stuff ...
So search and find out: use xmodmap
But third level does not behave as specified...
after long search, find out:
if the original symbols file ( /usr/share/X11/xkb/symbols/us ) does not
make use of third/ fourth level, then xmodmap will also not use them correctly...
so I changed the original file /usr/share/X11/xkb/symbols/us
and used xmodmap to switch off capslock, and now I am happy
BUT: as I find out, many user have the same needs and the problem..
so does anybody know more about how to to this easy???
and perhaps more correct...
keyboard layout
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
keyboard layout
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 1 time in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
Re: keyboard layout
xkeycaps is a gui for this may not make it easier.
[Edit] your original post and add [SOLVED] once your question is resolved.
“The people are my God” stressing the factor determining man’s destiny lies within man not in anything outside man, and thereby defining man as the dominator and remoulder of the world.
“The people are my God” stressing the factor determining man’s destiny lies within man not in anything outside man, and thereby defining man as the dominator and remoulder of the world.
Re: keyboard layout
still not really solved, and still waiting on advice of a real expert!!
what I did in the meantime:
coming back to the clean way, let the original files untouched, in:
/usr/share/X11/xkb/symbols/
instead, use a /home/xx/.xmodmap file, where only the changes need to be declared.
remember, position <1> to <4> means:
<1> <key>
<2> <shift-key>
<3> <"Mode_switch"-key>
<4> <shift-"Mode_switch"-key>
as "Mode_switch" I define Alt_L and Alt_R, and I disable 66 = "caps lock"
now in xubuntu it works as expected, example:
keycode 26 = e E EuroSign cent ...
keycode 64 = Mode_switch Alt_L Meta_L Alt_L Meta_L Alt_L
keycode 66 = NoSymbol NoSymbol NoSymbol NoSymbol NoSymbol
keycode 108 = Mode_switch ISO_Level3_Shift ISO_Level3_Shift
But in Mint must be as below (x means don't care):
keycode 26 = x x e E x x EuroSign cent
keycode 64 = Mode_switch Mode_switch Mode_switch Mode_switch
keycode 66 = NoSymbol NoSymbol NoSymbol NoSymbol NoSymbol
keycode 108 = Mode_switch Mode_switch Mode_switch Mode_switch
So my big question: WHY ???
why there are the don't care position in Mint,
or how to do it so it works as specified???
what I did in the meantime:
coming back to the clean way, let the original files untouched, in:
/usr/share/X11/xkb/symbols/
instead, use a /home/xx/.xmodmap file, where only the changes need to be declared.
remember, position <1> to <4> means:
<1> <key>
<2> <shift-key>
<3> <"Mode_switch"-key>
<4> <shift-"Mode_switch"-key>
as "Mode_switch" I define Alt_L and Alt_R, and I disable 66 = "caps lock"
now in xubuntu it works as expected, example:
keycode 26 = e E EuroSign cent ...
keycode 64 = Mode_switch Alt_L Meta_L Alt_L Meta_L Alt_L
keycode 66 = NoSymbol NoSymbol NoSymbol NoSymbol NoSymbol
keycode 108 = Mode_switch ISO_Level3_Shift ISO_Level3_Shift
But in Mint must be as below (x means don't care):
keycode 26 = x x e E x x EuroSign cent
keycode 64 = Mode_switch Mode_switch Mode_switch Mode_switch
keycode 66 = NoSymbol NoSymbol NoSymbol NoSymbol NoSymbol
keycode 108 = Mode_switch Mode_switch Mode_switch Mode_switch
So my big question: WHY ???
why there are the don't care position in Mint,
or how to do it so it works as specified???
Re: keyboard layout
Good luck in finding a 'real' expert.
[Edit] your original post and add [SOLVED] once your question is resolved.
“The people are my God” stressing the factor determining man’s destiny lies within man not in anything outside man, and thereby defining man as the dominator and remoulder of the world.
“The people are my God” stressing the factor determining man’s destiny lies within man not in anything outside man, and thereby defining man as the dominator and remoulder of the world.
Re: keyboard layout
sorry remolder, but I did not make reference to your post!
I tried xkeycaps of coarse! The problem there is:
it offers a big choice of different keyboards, and
if you are not able to choose the right one as yours,
then any change will end up in a disaster...
Or I maybe, misunderstood something...
But as I am not able to fully understand xmodmap,
I was hoping to find someone (the real expert) which
can explain what I make wrong...
I tried xkeycaps of coarse! The problem there is:
it offers a big choice of different keyboards, and
if you are not able to choose the right one as yours,
then any change will end up in a disaster...
Or I maybe, misunderstood something...
But as I am not able to fully understand xmodmap,
I was hoping to find someone (the real expert) which
can explain what I make wrong...
Re: keyboard layout: now superfluous
after upgrade to Mint 9 this post become superfluous:
the xmodmap now behaves as specified!
Only difficult to understand: what happened before,
why this strange behavior???
the xmodmap now behaves as specified!
Only difficult to understand: what happened before,
why this strange behavior???
Re: keyboard layout
Finally I can find an easy and perfect solution for my needs:
I use a local keyboard with us and Thai layout.
The us layout is ok for me, but I like to have some
additional german characters like "äöü ÄÖÜ"
This can easy be implemented with xmodmap, but if
you switch to the second layout, you will observe
some strange results.
After plenty of googling, I found an IMHO easy and
perfect solution: create and use your custom keyboard!
1) /usr/share/X11/xkb/symbols/
choose your nearest preference, in my case "us"
and save it with a new name: "us-de"
2) delete anything, which you don't need, and change,
what ever you like. My file for "us-de":
-----------
default
xkb_symbols "basic" {
name[Group1]= "ASCII with german";
// Alphanumeric section
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at, twosuperior ] };
key <AE03> { [ 3, numbersign, threesuperior ] };
key <AE04> { [ 4, dollar, onequarter ] };
key <AE05> { [ 5, percent, onehalf ] };
key <AE06> { [ 6, asciicircum, threequarters ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk, oneeighth ] };
key <AE09> { [ 9, parenleft ] };
key <AE10> { [ 0, parenright, degree ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, EuroSign, cent ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N ] };
key <AB07> { [ m, M, mu ] };
key <AB08> { [ comma, less ] };
key <AB09> { [ period, greater ] };
key <AB10> { [ slash, question ] };
key <BKSL> { [ backslash, bar ] };
key <CAPS> { [ VoidSymbol ] };
// End alphanumeric section
include "level3(ralt_switch)"
};
-----------
3) /usr/share/X11/xkb/rules/evdev.xml
Modify "evdev.xml" so your custom keyboard will be recognised:
search for "</layoutList>" and
add the following just previous to "</layoutList>"
-----------
<layout>
<configItem>
<name>us-de</name> <!-- 1) -->
<shortDescription>US-DE</shortDescription> <!-- 2) -->
<description>ASCII with german</description> <!-- 3) -->
<languageList><iso639Id>eng</iso639Id></languageList> <!-- 4) -->
</configItem>
</layout>
-----------
<!-- 1) --> "us-de" is the filename of the new keyboard layout in X11/xkb/symbols
<!-- 2) --> "US-DE" this will appear eg. in the indicator applet
<!-- 3) --> "ASCII with german" must coincide with the text at the begin of your file:
name[Group1]= "ASCII with german";
This text will also appear as comment under "Layouts"
<!-- 4) --> if you choose "eng" your layout will be shown in
System->Preferences->Keyboard->tab Layouts->Add->By Language->English
under "Variants"
4) log out and log in again, and check
System->Preferences->Keyboard->tab Layouts->Add->By Language->English
if you can find your custom layout, happy! You are ready to go!
Select your first and second layou here. Add a keyboard switcher applet
here under "options" you can also disable the CapsLock key.
5) the default keyboard will annoy you and sometime reappear...
If you like to get rid of this, edit
/var/cache/gdm/$USER/dmrc
and place one of the existing layout as your new default:
[Desktop]
Language=en_US.utf8
Layout=us-de
then reboot..
I post this, as it is easy, but difficult to find out, and perhaps
to make somebody happy...
Feedback and hints to improve are welcome!
I use a local keyboard with us and Thai layout.
The us layout is ok for me, but I like to have some
additional german characters like "äöü ÄÖÜ"
This can easy be implemented with xmodmap, but if
you switch to the second layout, you will observe
some strange results.
After plenty of googling, I found an IMHO easy and
perfect solution: create and use your custom keyboard!
1) /usr/share/X11/xkb/symbols/
choose your nearest preference, in my case "us"
and save it with a new name: "us-de"
2) delete anything, which you don't need, and change,
what ever you like. My file for "us-de":
-----------
default
xkb_symbols "basic" {
name[Group1]= "ASCII with german";
// Alphanumeric section
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at, twosuperior ] };
key <AE03> { [ 3, numbersign, threesuperior ] };
key <AE04> { [ 4, dollar, onequarter ] };
key <AE05> { [ 5, percent, onehalf ] };
key <AE06> { [ 6, asciicircum, threequarters ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk, oneeighth ] };
key <AE09> { [ 9, parenleft ] };
key <AE10> { [ 0, parenright, degree ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, EuroSign, cent ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N ] };
key <AB07> { [ m, M, mu ] };
key <AB08> { [ comma, less ] };
key <AB09> { [ period, greater ] };
key <AB10> { [ slash, question ] };
key <BKSL> { [ backslash, bar ] };
key <CAPS> { [ VoidSymbol ] };
// End alphanumeric section
include "level3(ralt_switch)"
};
-----------
3) /usr/share/X11/xkb/rules/evdev.xml
Modify "evdev.xml" so your custom keyboard will be recognised:
search for "</layoutList>" and
add the following just previous to "</layoutList>"
-----------
<layout>
<configItem>
<name>us-de</name> <!-- 1) -->
<shortDescription>US-DE</shortDescription> <!-- 2) -->
<description>ASCII with german</description> <!-- 3) -->
<languageList><iso639Id>eng</iso639Id></languageList> <!-- 4) -->
</configItem>
</layout>
-----------
<!-- 1) --> "us-de" is the filename of the new keyboard layout in X11/xkb/symbols
<!-- 2) --> "US-DE" this will appear eg. in the indicator applet
<!-- 3) --> "ASCII with german" must coincide with the text at the begin of your file:
name[Group1]= "ASCII with german";
This text will also appear as comment under "Layouts"
<!-- 4) --> if you choose "eng" your layout will be shown in
System->Preferences->Keyboard->tab Layouts->Add->By Language->English
under "Variants"
4) log out and log in again, and check
System->Preferences->Keyboard->tab Layouts->Add->By Language->English
if you can find your custom layout, happy! You are ready to go!
Select your first and second layou here. Add a keyboard switcher applet
here under "options" you can also disable the CapsLock key.
5) the default keyboard will annoy you and sometime reappear...
If you like to get rid of this, edit
/var/cache/gdm/$USER/dmrc
and place one of the existing layout as your new default:
[Desktop]
Language=en_US.utf8
Layout=us-de
then reboot..
I post this, as it is easy, but difficult to find out, and perhaps
to make somebody happy...
Feedback and hints to improve are welcome!