[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Changes to markush's xkb section

I divided xkb settings to a separate section and added more info on multiple layouts. — Bojan Popovic 2012/11/03 17:23

Btw, I'm not sure if the info about ctr+alt+backspace fits in this article. I think that should go somewhere else. — Bojan Popovic 2012/11/03 17:27

Well, you're right, I've deleted that. — Markus Hutmacher 2012/11/04 09:16

Packages without UTF-8 support

I'm pleased to see this page emerge, as I have always had trouble with this aspect, being someone who tries to use Québec French settings as part of learning French. May I ask that a list of the more commonly known/used packages that aren't adapted to UTF be included? — Robert Adornato 2012/11/03 07:18

We mentioned something similar while discussing the article. It may come in the future. You're free to suggest and report if you find any further information. — Bojan Popovic 2012/11/03 17:18

Per User Configuration

I think there is a mistake but I'm not sure, regarading to the manpage for bash

 When  bash  is invoked as an interactive login shell, or as a non-
       interactive shell with the --login option, it first reads and exe‐
       cutes  commands  from  the file /etc/profile, if that file exists.
       After  reading  that   file,   it   looks   for   ~/.bash_profile,
       ~/.bash_login,  and  ~/.profile, in that order, and reads and exe‐
       cutes commands from the first one that  exists  and  is  readable.
       The  --noprofile  option  may be used when the shell is started to
       inhibit this behavior.

       When a login shell exits, bash reads and  executes  commands  from
       the file ~/.bash_logout, if it exists.

       When  an  interactive  shell that is not a login shell is started,
       bash reads and executes commands  from  ~/.bashrc,  if  that  file
       exists.   This  may  be inhibited by using the --norc option.  The
       --rcfile file option will force bash to read and execute  commands
       from file instead of ~/.bashrc.

I would think that .bashrc is not sourced when a user logs in on the console (runlevel 3). As I understand one has to put


into ~/.profile in the users homedirectory.


I veryfied this. Bash sources .profile in runlevel 3, I've changed the paragraph on this page. — Markus Hutmacher 2012/11/04 05:50

I was looking for more info on .xprofile, I found these links:

Well, /etc/xprofile doesn't seem to exist on my machine, but I don't have a DM installed. Do both .xprofile and /etc/xprofile get sourced? — Bojan Popovic 2012/11/07 09:55

Suggestion: splitting this Page

I've noticed that Bojan's screenshots are very helpful, I'm about to rewrite my text about “Thunderbird localization” and use screenshots as well. But my concern is that this page becomes too large. I would therefore suggest to section it into the following three parts:

  • The page until above “X11 Keyboard setup.
  • X11 keyboard setup including the settings for KDE and XFCE
  • Applications (like Thunderbird) if possible also as subpages for any application.

Is it possible to create subpages? I'd like to have subpages for KDE and XFCE and for any of the applications. This sectioning would also make it easier to translate parts of the article, because if one is forced to translate the whole page, this is becomes too much work.


Please continue with expanding this page. When everybody agrees that it is relatively complete, the admins will decide if it is needed to split it into several sub-pages.
One additional remark: The page will already be a lot smaller if those four consecutive warning boxes are written as normal (italic or bold) text. This kind of boxes should not be used as a replacement for statements that can be emphasized by bold or italic text…
Eric Hameleers 2012/11/04 02:57
I've changed the warning boxes to normal text. — Markus Hutmacher 2012/11/04 05:20
The screenshots are not mine. :) I took them from the wiki media repo (most likely they come from the install guide). I don't have the upload rights. — Bojan Popovic 2012/11/04 14:22
Bojan you can upload your own screenshots to :images:localization where I uploaded my screenshots for thunderbird — Markus Hutmacher 2012/11/04 15:07
Thanx for the tip. I will try it when the need arises. :) — Bojan Popovic 2012/11/07 09:47

Location of images

A word of caution: do not store images in the :wiki:user: namespace. That pollutes this namespace. Rather, add the images to :images:localization: .
Eric Hameleers 2012/11/04 04:29

Thanks for the hint, it's already changed. But is it possible (for me) to delete the images I've uploaded to :wiki:user:? — Markus Hutmacher 2012/11/04 05:17


I've changed the head of the page and called it overview. Maybe someone finds some better wording for this section. But I think we need an overview of the complete subject so that the readers don't loose the overview when reading anywhere in the middle of the page. — Markus Hutmacher 2012/11/04 09:11

Question referring to X11 keyboard-layout "per user" settings

I've searched in the internet but didn't find what I was looking for.
Simple question: is there a “Slackware Way” how to obtain “per user” settings for the keyboard-layout with X11?
I didn't even find such a configuration for any other Linux-distribution.
It's not that I wouldn't be able to achieve such settings, but is there a default way which can be included to this page? — Markus Hutmacher 2012/11/04 15:21

Possibly by putting setxbmap with the appropriate options in .profile or .xinitrc (but that .xinitrc change would be overwritten every time a user changes WM). — Bojan Popovic 2012/11/04 18:16
Thanks, I've found a promising link in the internet, I will expand the section about setxkbmap — Markus Hutmacher 2012/11/04 22:18
Ok, I won't touch that section then. But if you don't mind a pointer or two, I'll write them here. :) This worked perfectly for me:
setxkbmap -option 'grp:ctrl_shift_toggle' "rs(latin),us"

You can also add other xkb options, incuding ctrl+alt+backspace. Take a look at following links:
* http://blog.ssokolow.com/archives/2011/12/24/getting-your-way-with-setxkbmap/
* http://betabug.ch/blogs/ch-athens/1242
Bojan Popovic 2012/11/05 03:48

Bojan thanks for the links, the first one was what I found promising, I will also use the second one. — Markus Hutmacher 2012/11/05 08:55
Bojan, it'll not change if you edit /etc/X11/xinit/xinitrc.xxxx. The problem is that it's not “per user” any more. Alternatively, most DE/WM have startup files in a user's home directories. This, however, will make things unnecessarily complicated. — Marcin Herda 2012/11/05 03:13
Could you please clarify this part: “the problem is that it's not 'per user' anymore”? Xwmconfig used to copy appropriate /etc/X11/xinit/xinitrc.* script to ~/.xinitrc with every usage. Did that change in 14.0 (haven't checked) or you were refering to something else? Anyway, I was actually referring to ~/.xinitrc. I don't think that's good idea so I put the reason against in the brackets. It may be done that way but with caveats. — Bojan Popovic 2012/11/05 03:27
We must distinguish if we boot to runlevel 3 and startx (then you are right) or we boot to runlevel 4, then ~/.xinitrc isnt read but ~/.Xresources instead — Markus Hutmacher 2012/11/05 06:21
Xresources doesn't serve the same purpose. It's a resource file usually used only by Xaw and Motif applications. What you are looking for is something else. I don't use DM so I wouldn't know exactly without looking further into the documentation. Btw, a typical xinitrc also “uses” Xresources (updates a resource database). — Bojan Popovic 2012/11/05 20:19
What I meant by “not per user” is that if you specify a particular keyboard layout in /etc/X11/xinit/xinitrc.fluxbox (for example), EVERY user who sets their environment with xwmconfig (and chooses fluxbox) will have that particular layout. Obviously, they can easily override it, but that's not the point. — Marcin Herda 2012/11/05 09:03
That's clear from the beginning. There is a reason I didn't mention that option at all. I didn't consider it as an elegant solution. Beside your arguments, there would also be a need to update every xinitrc file in the directory. Of course that would need to be done for every new DE/WM installed. And why would you even do that if you can specify the same options in /etc/X11/xorg.conf.d/* file with much less hassle. — Bojan Popovic 2012/11/05 20:11

Switching between keyboard-layouts / how detailed should this page be?

Bojan, I think your section about layout-switching is very detailed. Wouldn't it be better to have a short explanation and an example (like you've already written) and then, instead of those many lines with examples, tell the people which manpage to read? I've already tried to shorten my text. What do you think? how detailed should this page be? I've already considered, to make my screenshots smaller. — Markus Hutmacher 2012/11/06 04:45

As I understood AlienBOB, we don't have to worry about the length of the article. It will be splitted if admins think it's getting too large or too unfocused. Anyway, information about layout switching is really important for those who have constant need for it, like people who have to switch between non-latin and latin script (Russian, Bulgarian, Serbian, Chinese, Hindi, Hebrew, Japanese, etc). So it's really important for this information to be readily available. — Bojan Popovic 2012/11/06 06:21
Anyway, someone should add information on the languages that need special input systems. There is some info in AlienBOB's presentation about Slackware's language support, but I don't have much experience with it. Nothing of that is needed for cyrillic script. — Bojan Popovic 2012/11/06 06:29
Well, this page is a more generic one anyway, as I understand a good portion of the languagespecific details goes into the translations (which can be made when this page is ready) — Markus Hutmacher 2012/11/06 09:00
You are wrong to suppose that anyone will use one keyboard layout. Problem is that all commands are in english. If you are writing in another script, you must switch to english to issue commands, and back to write text. That's not “per language detail”, because it doesn't really depend on language. You can easily switch between several different scripts with the same solution (or rather: a same configuration) - xkb family of grp options. The other solution (for a different group of languages), I remembered afterwards is scim. It is used for input of a large number of idiom based languages. So those are two solutions that are shared between two large groups of diverse languages. Not really per language.
It might be shortened, but with caution. You might omit usefull information to large groups of people and cause unnecesary repetition in local translations. this is internationalization article, so it should be really international to the level it doesn't go to language specific options. But you got to really understand what is per language and what is not to do that. :) — Bojan Popovic 2012/11/06 11:14
Well, thanks for the explanation of commands to be executed with english layout. I've (of course) never had such problems with my german layout because we have all characters of the normal ascii-table available anyway. But maybe you put this explanation into your text about layout-switching, it would make the importance of this paragraph more obvious to those readers who don't have this issue (most in western europe) — Markus Hutmacher 2012/11/06 14:37
Thanx for the idea. I'll write a short explanation. — Bojan Popovic 2012/11/07 09:31
Oh, I've already added an explanation, but you have more experience with this subject, maybe you can explain it better — Markus Hutmacher 2012/11/07 10:36

Dictionaries and Spellingcheckers

I've added a section about “Spellingcheckers and Dictionaries”, are there any additional suggestions for this subject? — Markus Hutmacher 2012/11/09 05:19

I think we're almost done here

I've added some explanations for the localization of various applications. Now the page seems to be complete. I'll run the whole page through a spellingchecker.

What about sectioning this page?

How should those people proceed who want to translate the page? as you know there's not all information on this page relevant for all languages.
Do we need some hints for the translators? — Markus Hutmacher 2012/11/10 05:20

Spellchecking done — Markus Hutmacher 2012/11/10 05:51
Sorry, I was out for the weekend. Didn't yet take a look at the recent changes. — Bojan Popovic 2012/11/10 23:12
And it turned out I was really tight with time this week. Sorry. If you think the article is done, let the admins know. Anyway, I'll try to catch some time tomorrow to browse through it and see if I think something should be added or maybe corrected. — Bojan Popovic 2012/11/17 06:30
Hi Bojan, It would be nice if you find the time and browse through the article. Afterwards I would say it is ready. We had already people at LQ who have been pointed to this article and who found it helpful. So it was worth the effort. — Markus Hutmacher 2012/11/17 06:43
I hope it was. :) I'm browsing it right now and will write a comment when I'm done. If I make any additions, please do comment on them. — Bojan Popovic 2012/11/18 22:31
Done. You can find my comments below. Btw, what do you mean with “sectioning”? — Bojan Popovic 2012/11/18 23:49
Well, with sectioning I meant to divide the page into parts, e.g. 1. Console 2. With X 3. Applications but this will be a decision of the site-admins. — Markus Hutmacher 2012/11/19 03:56
I'm ok with that. I was thinking to suggest separating application localization tips, anyways. But we'll have to wait for admins. — Bojan Popovic 2012/11/19 09:24
The page is not that long. I do not see a reason for splitting it up into sub-pages. The header sectioning should be enough to provide good navigation.
Eric Hameleers 2012/11/20 07:31
I was thinking on maybe adding some bits from Gentoo wiki on Unicode, specifically some tips on getting console apps to work. What would be the best way to do this? It shouldn't be too long and might fit into the page. — Bojan Popovic 2012/12/01 03:47
Perhaps just add it to the console chapter of the page ?
Eric Hameleers 2012/12/02 08:16
Thanx, I'll go with that. Haven't yet prepared the text. I will have it ready in the next few days.
Bojan Popovic 2012/12/03 16:36


The kernel-parameter “vt.default_utf8=1” is the default, so you can omit this line in lilo.conf when using UTF-8. Otherwise Slackware has “vt.default_utf8=0” as it's default! note the difference!

I don't quite get what you were trying to say here. Choosing UTF-8 during the installation or using liloconfig appends the line vt.default_utf8=1. So it should already be there. But if user chose not to enable UTF-8, he can append this to enable UTF-8 later (in that case it won't be added to lilo.conf). I'll try to clarify this. Please comment on changes. — Bojan Popovic 2012/11/18 22:59

It still sounds redundant to me. I wrote above:

If you choose the default option (“No”), you can set it up later by appending the option “vt.default_utf8” to your lilo.conf.

So it's already noted. Well, I won't touch anything here until you comment on that. — Bojan Popovic 2012/11/18 23:08

I meant that because the kernel uses UTF-8 as default, if you don't append vt.default_utf8 at all, you have UTF-8. But you're right, it becomes unclear, I will delete this line. — Markus Hutmacher 2012/11/19 04:07
I don't think that's the case with Slack. I think the default is vt.default_utf8=0. Anyway, I know the most of the other distros do have vt.defaults=1 as the default. — Bojan Popovic 2012/11/19 09:32
I've this information from kernel.org, they should know, but anyways it's not relevant here. — Markus Hutmacher 2012/11/19 09:57
I believe you. I did browse through docs before. I even looked in the kernel source. But there could also be a .config option to override that. There's no logic in liloconif adding vt.default_utf8=1 when a user enables utf-8, if there's no reason for it. Anyway you will find the similar advice on Dugan Chen's unicode article on his blog. So I would think this is somehow overriden. Or it's not enabled by default. — Bojan Popovic 2012/11/19 10:07

I believe there is a small mistake / typo in this section where “unicode-start” and “unicode-stop” is documented. My Slackware installation (14.1) has “unicode_start” (underscore rather than hyphen) and “unicode_stop” as the installed commands. They work great - just as documented here. — bogzab 2014/12/09 15:12


The disadvantage of the setxkbmap command is that it overwrites any previous keyboard-settings for userland-programs. Therefore it is necessary to execute the setxkbmap commands before any other settings for the keyboard-layout are made.

This is also not so clear. What setxkbmap does override is the settings in /usr/share/X11/xorg.conf.d/90-keyboard-layout.conf (btw, that file can also be named differently, but that's not important for the article).

You can put your keyboard settings into a little shellscript and call it e.g. my-keymap.sh.
setxkbmap de
setxkbmap -variant nodeadkeys

Be sure to make it executeable

chmod 755 my-keymap.sh

Why not put those settings in directly in .profile or .xprofile? Why a separate script?

You can of course put the setxkbmap settings directly into your .xinitrc or .xprofile respectively!

Maybe this should be suggested from the start? Sorry I don't see the logic for a separate script. ;)

Bojan Popovic 2012/11/18 23:32

you are right, I'll shorten this section. — Markus Hutmacher 2012/11/19 04:10
done — Markus Hutmacher 2012/11/19 04:28
Ok, now take one last look at the whole page. If you think it sounds ok, we can ask for comments on the mailing list. I would also ask for any contribution from anyone using Slackware in languages that require special input methods (we haven't covered those yet). On the other side, I think the European languages are covered pretty good. — Bojan Popovic 2012/11/19 09:26
Hi Bojan, I have already after my recent changes, written a mail to the site-admins and asked if they plan to divide the page (referring to Erics posting above). I think that languages with special input methods should be focused in the translation. I mean, when anyone translates this page to chinese or persion etc, then he should add what's necessary. And this page should be (as is yet) focus localization in a more generic manner. — Markus Hutmacher 2012/11/19 09:41
Great. Thank you. Considering alternative input methods, I guess the admins will have the last word on that. I'm ok with both options, but personally think a localization article should be international enough. That, of course doesn't mean including individual methods or tips, but rather the general input methods like SCIM. — Bojan Popovic 2012/11/19 10:14
Ah, I don't know SCIM ;) it should at least be mentioned with a link. — Markus Hutmacher 2012/11/19 10:41
Neither do I, but I'll try to test it and write something about it for sake of completeness. — Bojan Popovic 2012/12/01 03:46
 talk:slackware:localization ()