LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 06-02-2010, 09:45 PM   #1
polarberg
LQ Newbie
 
Registered: Oct 2009
Posts: 4

Rep: Reputation: 0
Question Is there a *nix that will allow me to configure more than 4 keyboard layouts?


<rant>
I am now doing just about all my work in Weakdows due to this retarded issue. I'm flabbergasted that not only is a function so crucial so limited, but in addition nobody seems to give a rat's ass about it.

If you're not familiar with the issue, just go ahead and try configuring more than four keyboard layouts. If you can, tell me what distribution you're using and we'll be good, but I believe there's something that changed about the central X service which provides for layout changing which prevents it.

I'm a linguist and it's important for me to be able to type in English - on Dvorak and Qwerty - German, Turkish, Russian, Arabic, Japanese and whatever else I need to at any given time. I'm not the only person who does this, and a significant number of us like to be able to control our computers, which is why we use Linux. So it's clear to me that whoever made the decision to put this restriction on keyboard functionality just wasn't thinking at all.
</rant>

Does anyone know of a *nix that can handle configuring more than four keyboard layouts?

Is there even a hack that will allow me to get around this issue? I had thought about creating a script to swap the config file so I'd at least be able to access multiple configurations of 4 keyboards easily, but between not knowing where that config file is and being pretty bad at bash I never pursued it.

Thanks.
 
Old 06-02-2010, 09:57 PM   #2
Elv13
Member
 
Registered: Apr 2006
Location: Montreal,Quebec
Distribution: Gentoo
Posts: 825

Rep: Reputation: 129Reputation: 129
There is no such restriction, I use 5 layouts without any problem. The Gnome applet may limit you, but it is not a Linux limitation, nor *nix or X11. Just create a new menu with each item named with a layout and call the command "setxkbmap **" where ** is the name of the layout. "us", "dvorak", "ru" are some of the possible values. The list is located in /usr/share/X11/xkb/symbols/ .

For example:
Code:
setxkbmap ca
Will set the layout to french (canadian, so it is qwerty + french, much better than azerty).

I just switched 10 layouts (all those you specified, plus mine) and it worked, so there is no such limitation.
 
1 members found this post helpful.
Old 06-03-2010, 02:01 PM   #3
DavidMcCann
LQ Veteran
 
Registered: Jul 2006
Location: London
Distribution: CentOS, Xubuntu
Posts: 5,355

Rep: Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863
You can add keyboards manually in
~/.gconf/desktop/gnome/peripherals/keyboard/kbd/%gconf.xml
 
Old 06-03-2010, 04:56 PM   #4
jefro
Moderator
 
Registered: Mar 2008
Posts: 19,350

Rep: Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977Reputation: 2977
For some reason I think knoppix kde had any number in the control section so I'd assume any kde would too.
 
Old 06-08-2010, 07:19 PM   #5
polarberg
LQ Newbie
 
Registered: Oct 2009
Posts: 4

Original Poster
Rep: Reputation: 0
Grr...seriously? I've run into the same wall with two different configuration frontends and three different window managers, and I swear I read in multiple places that it wasn't an Ubuntu-specific thing. Anyway. Thanks for the suggestions, I'll try them out and come back if I have any trouble.

Last edited by polarberg; 06-08-2010 at 07:22 PM.
 
Old 12-18-2017, 12:19 PM   #6
sarojane
LQ Newbie
 
Registered: Dec 2017
Distribution: Xubuntu
Posts: 5

Rep: Reputation: Disabled
Hi,

I'm having the same problem as the OP, and tried using setxkmap upon seeing this post.

I ran "setxkmap us" to be safe. I'm glad I took that precaution, because while it did give me the US keyboard, it removed the menu that I had been using (set up by going to settings->keyboard->layout). If I had changed to Russian or Chinese, it wouldn't have been so easy to get back to English. I found that I was able to go back to settings->keyboard->layout and re-establish the menu, so there's at least a way out, but I feel like there should be a better option.

Does anyone know anything about this? Can I (for example) set up aliases using characters from languages like Russian or Chinese that would return my keyboard to English? Or other suggestions? I'm fairly new to Linux, but am enthusiastic about learning, so if your solution is a little hairy, I'm ok with that if you can point me in the direction of what to read to bridge the gap.

(I also wasn't sure what was involved in the part of Elv13's instructions saying "create a new menu..." - whether or not this is the same as what I did through settings. If anyone can fill me in on that, that would be great too. Not sure if this matters, but I'm running Xubuntu 16.04.)

Thank you!
 
Old 12-19-2017, 12:04 PM   #7
DavidMcCann
LQ Veteran
 
Registered: Jul 2006
Location: London
Distribution: CentOS, Xubuntu
Posts: 5,355

Rep: Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863
The options given in configuration tools are generally provided for the sort of things that most people want: they can't cope with every possibility. Any GUI will allow you to modify the configuration files directly. Thus in Xfce, look in
~/.config/xfce4/xfconf/xfce-perchannel-xml/
For Gnome or Mate, install and use the configuration editor (no direct access, because the files are compiled).
For KDE, try ~/.config
 
1 members found this post helpful.
Old 12-19-2017, 01:02 PM   #8
sarojane
LQ Newbie
 
Registered: Dec 2017
Distribution: Xubuntu
Posts: 5

Rep: Reputation: Disabled
Thank you David!

I see the keyboard-layout.xml file and what it looks like I need to edit. Haven't done it yet - I don't mess around with stuff like this too often so am proceeding *slowly*, but it's really exciting to see what's going on, and where some of this stuff is.

It brings me to another question, if you have the time/inclination to answer (and if not, that's totally ok of course). My understanding is that as far as my original question goes, (along with most of the other questions I have/ have had in this process in learning my way around Linux) that the information is available, out there somewhere, but I'm just not aware of where/how to look. Can you tell me how and where I might have looked this up, to find out that the directory exists and what it's for, if you hadn't come along?

( So for me, in Xfce, that was, as you said, ~/.config/xfce4/xfconf/xfce-perchannel-xml/ )

Thank you again, this really is great.
 
Old 12-19-2017, 02:43 PM   #9
sarojane
LQ Newbie
 
Registered: Dec 2017
Distribution: Xubuntu
Posts: 5

Rep: Reputation: Disabled
Update:

I was able to edit the keyboard-layout.xml file, adding entries to the XkbLayout string, and to cause more than four keyboards to appear on the menu that I get in the corner of my screen. That part is pretty exciting in and of itself, so thanks for that.

When I click on those choices in the menu, however, only the ones I had previously set up (through the settings->keyboards menu) actually give me the keyboard associated with them.

I thought that the issue might be that I added Chinese (cn), which needs an entirely different group of characters, so maybe there's something I still need to install. To test this, I tried adding Spanish (es) because the characters there are all available in my English international keyboard, so I figure they're already here.

And I found that indeed, only the keyboards I had previously set up (through settings) are *actually* available. When I click on the Spanish flag, it just defaults me back to the international English. (When I click on the Chinese option, it shows in the corner, but I'm still getting the English keyboard.)

After this I tried the command "setxkbmap es" with similar results as the first time (it temporarily blew away my menu entirely, until after a restart) and I still don't have the Spanish keyboard.

Any thoughts on what I might be missing at this point?
 
Old 12-20-2017, 12:44 PM   #10
DavidMcCann
LQ Veteran
 
Registered: Jul 2006
Location: London
Distribution: CentOS, Xubuntu
Posts: 5,355

Rep: Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863
Quote:
Originally Posted by sarojane View Post
I don't mess around with stuff like this too often so am proceeding *slowly*, but it's really exciting to see what's going on, and where some of this stuff is.
The secret is never to alter a configuration file without first making a backup!

Quote:
I'm just not aware of where/how to look. Can you tell me how and where I might have looked this up?
Asking questions is an art! Searching for very specific topics (xfce keyboard configuration) will usually fail, as it will come up with the "obvious" answer (use the keyboard configuration tool). As I said, when you have something very unusual to do, you generally end up going directly to the files, so a search like "xfce configuration files" may help. But my first port of call is usually
http://wiki.archlinux.org/
I can't imagine ever wanting to use Arch, but they do have the best documentation.

Quote:
When I click on those choices in the menu, however, only the ones I had previously set up (through the settings->keyboards menu) actually give me the keyboard associated with them. Any thoughts on what I might be missing at this point?
Oh dear! It may indeed be that only four drivers can be used. The only thing I can think of is to pass the buck. You could try raising the problem at the Xfce forum
http://forum.xfce.org/
 
1 members found this post helpful.
Old 12-20-2017, 12:52 PM   #11
_roman_
Member
 
Registered: Dec 2017
Location: _Austro_Bavaria_
Distribution: gentoo / linux mint
Posts: 433

Rep: Reputation: 29
I have only read the first post

I'm kinda certain with a few custom key bindings you should be able to get it done


BAsically you should be able to define a custom keybinding, e.g. i3wm:

Quote:
bindsym $mod+F1 exec "xrandr --output LVDS-0 --set Backlight 1"
Just replace the stuff after exec with something like :

Quote:
roman@ASUS-G75VW ~ $ head .i3/config
# i3 config file (v4)

# removed ...

exec setxkbmap de
--

The limits are in your desktop environment

Fastest approach would be some custom keybindings for your desktop environment

--

afaik there were in gnome2 days such language plugins for the panel too

--

off topic: i ended up with i3wm because I disliked the bloat and how those desktop environments limit the workflow. I switched several desktops environments and just over maybe 2 years I am using i3wm. Someone suggested it in forums.gentoo.org in the past.

the issue with the X-server and those desktop environments is the lack of sticking to the FHS (standard) and the lack to keep config files the same for different desktop environments. You never know in which order these are parsed. There is some sort of order which config file gets higher priority than others. And they are all put like salt over the hole plate.

I ended up with i3wm. Yes I have to set up the xscreensaver, all special keys and such. But I do know it is only ~/.i3/config now where to look to.
I used kde which comes with slackware iso, which i did a test install on last weeked. kde is a mess. same with that fvwm.... desktop.
I prefer doing things by hand. No automounters and such. I remember at least 10 places where a optical drive or an usb storage device could pop up in the system. and even with automounters you have sometimes the issue with wrong set user permissions. Totally unuseable.
I also use software which is smaller, with less code lines, or less dependencies as i set up my desktop myself now. Bare minimum. Any not used or wanted keybindings are just removed. So no weird random effect when you may trigger such effects. Like moving the mouse in the corner for example. Blinking head of a window, ...

Quote:
The secret is never to alter a configuration file without first making a backup!
The secret is to read examples. Examples show a lot, how to do it, how not to do it, other ways you never thought of.
The secret is to use the comment feature, which is most of the time #yourcomment for those bash based configs.
The secret is to do one thing after another. I spent an hour last time to fix my kernel. With slight changes and reboots to verify where the root cause was.

--

I'm not fond of those premade stuff. Not even the initramfs works which should work. You are doomed when you do not read the code, adapt it and put it to use. Hint: I run a self adapted gentoo initramfs because some features were broken in my point of view.

Last edited by _roman_; 12-20-2017 at 01:07 PM.
 
1 members found this post helpful.
Old 12-21-2017, 02:26 AM   #12
sarojane
LQ Newbie
 
Registered: Dec 2017
Distribution: Xubuntu
Posts: 5

Rep: Reputation: Disabled
@DavidMcCann - thanks again for your time on this. So you're able to make use of documentation for a distro other than the ones you're using? You just make adjustments for things you know to be different, like package managers, and have a sense of which things will be the same? (I think I need to start playing with more distributions to get a better sense of this. Maybe time to fire up VirtualBox.)

Which brings me to my next question. If it is the case that Xfce only allows for four drivers, do you think my chances would be better with a different DE or distro? Any suggestions? (If it's one that's out of my league at this point, I'd still like to hear about it - I'm hoping to work my way up eventually.)

Also, thanks for the suggestion about posting on the Xfce forum. It will take me a while to get my nerve up (you don't want to know how long it took me to write anything here:/) just how I'm wired, it seems.

Anyway, the last round of trying to make this stuff work led me to another question, if you're up for it. When I was looking at my keyboard-layout.xml file, what I was looking at made sense:

<property name="XkbLayout" type="string" value="us,us,ru,is"/>
<property name="XkbVariant" type="string" value=",intl,,"/>

but it made me realize that there's a whole lot more I'd like to know about how things work. Like, when it makes reference to XkbLayout and XkbVariant, and assigns these strings to them, the system has to know where to look to see what each of the listed layouts and variants are, and what to do with them, etc. So I'd like to learn about things like where it's going for that, and where it gets the information about where to go. (I could be phrasing that backwards. It may not be going anywhere - something may be coming here for the information. But in either case, same sort of question.)

I want to be super clear: I'm not looking for an answer to these questions from you. I'm looking for advice on what subjects I could read up on/study that would help me learn the kind of background I'd need to find my way around issues like this (and lots of similar ones as I keep looking at all the interesting-looking stuff we have access to with Linux). I'm assuming there's stuff out there that would fit the bill but that I wouldn't understand, but that maybe there's some prerequisite body of knowledge that I could start looking at with that goal in mind. I just don't know where to start.

I can't go back to school and do (for example) a degree in CS, but I have time and interest and (I hope) the ability to learn, so something like "well, this is what you need, but it'll probably take a few years to work through it" would not be a deterrent.

@Roman: I'm going to save your post and read it periodically. A lot of it is over my head at the moment, but oh man would I love to understand more about this stuff. I'm going to start googling the stuff I don't understand and keep reading until something starts to congeal... I know you were directing your comment to the OP, but thank you for adding your ideas here.
 
Old 12-21-2017, 07:45 AM   #13
_roman_
Member
 
Registered: Dec 2017
Location: _Austro_Bavaria_
Distribution: gentoo / linux mint
Posts: 433

Rep: Reputation: 29
You are welcome.

I hope you are aware of this.
Instead of a virtual box create a new user TEST.
That new user TEST has his own home folder with his own config files.
Login as user TEST and than you can play around. No harm to your existing user.

Usually you can install several different desktop environments next to each other. Than you can use a graphical login manager, e.g. lxdm, to choose which user to login and which desktop environment to use.

AFAIK desktop environments should be usually the same regardless of distro.


I did not bother with XFCE for about 3 years or so.

Usually these desctop environments and other GUI components put everything in your home folders

/home/roman => yes thats me

files starting with "." are hidden and are most put in /home/roman or subfolders, which can also start with a "."

/home/roman/.config <= lots there

--

E.g. fire up mc (midnight commander) to parse your home folder or use e.g. "Caja file manager for the MATE desktop" with enabled show hidden files feature
 
Old 12-21-2017, 12:32 PM   #14
DavidMcCann
LQ Veteran
 
Registered: Jul 2006
Location: London
Distribution: CentOS, Xubuntu
Posts: 5,355

Rep: Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863Reputation: 1863
Quote:
Originally Posted by sarojane View Post
So you're able to make use of documentation for a distro other than the ones you're using? You just make adjustments for things you know to be different, like package managers, and have a sense of which things will be the same? (I think I need to start playing with more distributions to get a better sense of this.
Exactly. The differences will generally be just those things like the installer, package manager, and any distro-provided tools. Personally, I think it easier to learn one thing at a time, but perhaps that's just me.

Quote:
If it is the case that Xfce only allows for four drivers, do you think my chances would be better with a different DE or distro?
The restriction also applies to Gnome 2, so it may be inherited by Mate and Gnome 3. I wonder if it's actually an Xorg restriction?

Quote:
When I was looking at my keyboard-layout.xml file, what I was looking at made sense:
<property name="XkbLayout" type="string" value="us,us,ru,is"/>
<property name="XkbVariant" type="string" value=",intl,,"/>
but it made me realize that there's a whole lot more I'd like to know about how things work. Like, when it makes reference to XkbLayout and XkbVariant, and assigns these strings to them, the system has to know where to look to see what each of the listed layouts and variants are, and what to do with them, etc.
To take this example, the entries in the second line tell you more about the first, so you can see that three drivers are the standard version, but the second "us" is the international variant. Why both us drivers? That's using up your allowance!

The command "setxkbmap -print" will also list these things. You can look at the source code for the drivers in /usr/share/X11/xkb/symbols/ and even modify it. So the Icelandic keyboard gives you dead_doubleacute (Hungarian!) from Shift—AltGr-æ, but that can always be made something more useful.

Then there are the compose sequences, which you can read about in Wikipedia. These too can be customised with entries in ~/.XCompose — I get þ with Comp+t+h, for example.
 
Old 12-21-2017, 02:33 PM   #15
sarojane
LQ Newbie
 
Registered: Dec 2017
Distribution: Xubuntu
Posts: 5

Rep: Reputation: Disabled
@DavidMcCann

Yes, as I said, what the keyboard-layout.xml file is doing is clear to me. So I understood from the beginning that the XkbLayout line was (for lack of a better phrase) being modified by the XkbVariant line. What I don't understand is what's telling the system (and where it's telling it) what it's supposed to do with these XkbLayout and XkbVariant things. We're just assigning them something here, and it's intuitively clear what those assignments are, and what "layout" and "variant" mean, so how those assignments are going to affect how our system works for us, but the system has no intuition, so somewhere these connections have to be being made.

And I can't emphasize this enough: I *really* don't want you to tell me the answer to this specific question. (I know it can be really tempting to ignore this request and try to answer about specifics anyway, but please, if you can possibly resist - it actually creates a potentially damaging situation for me because of some trauma issues.) I want to try to give myself a more general education on these *types* of things, and I want to know what sort of subject names to give my attention to, if those things even exist. Like, I'm imagining that if a book on the Linux kernel might have some of what I'm looking for, but I'm also imagining that I won't understand a good bit of what's in it. So my next thought is "If you picked someone up of the street, who had never studied CS or IT etc., and you wanted to prepare them to read such a book, what would you tell them to study first? (and the answer could be a sequence. possibly a long sequence.)" I'm guessing C would be in there (still trying to find a source I like for that), but also a lot of things that I'm not even aware of.

To answer your question:

I have us driver in twice because I want both variants of it. When I'm typing in Spanish, I want to get accents by typing a quote before a letter. When I'm trying to type in a piece of code, I want a quote to be a quote. (You can type a quote and a space to get a quote, which isn't too bad, but there were other issues like this that I kept tripping over.)

I can, at the moment, live with us, us international, and Russian. If I get back into my language kick, I'll want way more than four, so killing the english us won't get me there, and right now I'm focusing on trying to learn my way around Linux, so I'm not messing with so many languages and can spare the slot for the extra us. So that's why I have it set up the way I do. (Icelandic was just another test, after lots of failed attempts to get pinyin input Chinese to materialize. Fwiw, no Icelandic either. Lots to figure out here.)

@Roman: I was not aware of that. I didn't realize that these configurations are associated with a user, and I'm new enough to all this that the reinforcement of the idea that "things being put in your home folder" equates to that concept is very helpful. (It's always just been me, so I've never had reason to think about it much, until now.) Thanks again.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
available keyboard layouts sinister035 Linux - Newbie 4 07-02-2007 05:11 AM
Keyboard Layouts in IceWM the_new_z Linux - Software 3 04-08-2006 03:03 PM
Using multiple keyboard layouts winterhunter Linux - Newbie 1 10-20-2005 03:39 PM
keyboard layouts problem. fredgt Linux - Hardware 6 10-06-2004 12:09 PM
keyboard layouts misulo Fedora 0 08-17-2004 02:29 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 02:06 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration