Linux kent 2 verschillende manieren om je toetsenbord in te stellen. Op de
console kan je loadkeys
gebruiken en onder XFree86 gebruik je
xmodmap
.
Om de 'keytable' voor een Belgisch toetsenbord te gebruiken, doe je best
loadkeys be2-latin1of
loadkeys be-latin1Het verschil is dat be2-latin1 funktionaliteit toevoegt om twosuperior en threesuperior (keycode 41) en grave (keycode 43).
Normaal wordt loadkeys
gestart tijdens het booten vanuit scripts
(ergens in /etc/rc.d Verschillende distributies doen het op een
afwijkende manier. Maar de meeste distributies laten je die scripts wijzigen
dmv. een simpel programma (zoals kbdconfig
bij RedHat of
yast
bij SuSE).
Je toetsenbord instellen voor XFree86 wordt gedaan door
Xconfigurator
(of een gelijkaardig programma). Die maakt oa. een
konfiguratie-file aan voor XFree86 XF86Config dat normaal in
/etc of /etc/X11 staat.
Het volgende zou in je XF86Config moeten staan in het
Keyboard Section
.
Section "Keyboard" Protocol "Standard" XkbRules "xfree86" XkbModel "pc101" XkbLayout "be" EndSection
Als je een 'microsoft' toetsenbord hebt, dan kan je die 3 extra toetsen
gebruiken door "pc101"
te veranderen in "pc104"
. (ik
gebruik die extra toetsen als meta-toetsen voor mijn windowmanager zodat
sneltoetsen van programma's niet in conflict zijn met die die ik in mijn
windowmanager konfigureer).
Om de AltGr-toets te doen werken onder XFree86 kan je gewoon het volgende toevoegen:
RightAlt ModeShift
Om sommige toetsen-combinaties te doen werken onder X11, kan je het volgende veranderen in /usr/X11R6/lib/X11/xkb/symbols/be:
key <AD11> { [ dead_circumflex, diaeresis ], [ bracketleft ] }; key <AC11> { [ ugrave, percent ], [ quoteright ] }; key <BKSL> { [ mu, sterling ], [ quoteleft ] }; key <AB10> { [ equal, plus ], [ asciitilde ] };door
key <AD11> { [ dead_circumflex, dead_diaeresis ], [ bracketleft ] }; key <AC11> { [ ugrave, percent ], [ dead_acute ] }; key <BKSL> { [ mu, sterling ], [ dead_grave ] }; key <AB10> { [ equal, plus ], [ dead_tilde ] };
Sommige mensen gebruiken liever een 'compose'-toets om speciale karakters te typen, zoals:
<compose>'e => é <compose>/o => ø <compose>c, => ç <compose>co => © <compose>ss => ßOplossing:
xmodmap -e "keycode xx = Multi_key"of
xmodmap -e "keysym yy = Multi_key"waarbij 'xx' de keycode en 'yy' de keysym van de toets die je wil instellen als 'compose'-toets. (gebruik
xev
om dit uit te vinden)
Alternatief steek je
keycode xx = Multi_keyin je /.xmodmaprc, zodat dit automagisch gebeurt.
Sommige applikaties moeten '8-bit clean' gecompileerd worden om de Europese 'charactersets' te ondersteunen. Anderen moet het verteld worden bij het starten.
Je kan het ISO-8859-1 font door het volgende te typen in console:
setfont lat1u-16.psf mapscrn trivial echo -ne '\033(K'
Om ë, è, é of ç in console te gebruiken, voeg je best deze regels toe aan /.inputrc:
set meta-flag on set convert-meta off set output-meta on
(dit zou voor iedere gebruiker moeten gebeuren, als je dit als standaard wil kan je dit toevoegen aan /etc/skel/.inputrc en het voor iedere bestaande user aanpassen of je kan het plaatsen in /etc/inputrc en de volgende regel toevoegen aan /etc/bashrc,
export INPUTRC=/etc/inputrc)
Note: dit is enkel nuttig voor programma's die gebruik maken van 'readline' (zoals bash). Zet ook de volgende environment variabelen:
LC_CTYPE=iso-8859-1 SYSFONT=lat1u-16.psf SYSTERM=linux
Vermits Europa perse zijn eigen symbool wilde hebben, de Euro, is er een
nieuwe standaard. En die heet ISO-8859-15 (aka Latin-9 of Latin-0). Om deze
te gebruiken heb je zowel een nieuwe 'font' als een nieuwe 'keymap' nodig.
Dit zit tegenwoordig wel in iedere Linux distributie, als je een oudere
versie hebt dan ben je wellicht gesteld met een nieuwer
console-tools
package.
De veranderingen in de keymap-file bestaan uit de volgende lijnen:
keycode 18 = +e +E currency keycode 46 = +c +C cent
En de volgende environment-variabele moet gezet worden:
SYSFONT=lat0-16.psfzodat het juiste font gebruikt wordt.
Aangezien België gelegen is binnen de Central European Time zone (aka MET) dat (in de winter) hetzelfde is als de Greenwhich Mean Time plus 1 (GMT+1), kan je simpelweg een symbolische link leggen van /usr/lib/zoneinfo/localtime/MET naar /etc/localtime door:
ln -sf /usr/lib/zoneinfo/MET /etc/localtimeof
ln -sf /usr/lib/zoneinfo/Europe/Brussels /etc/localtimeDit zorgt automatisch voor 'Daylight Savings', dus zomertijd. Dus GMT+2 in de zomer.
Note: verschillende distributies kunnen de files op verschillende plaatsen hebben staan, zoneinfo kan ook in /usr/share enzo...
Note: in RedHat gebruik je best timeconfig
, in SuSE
yast
Om de CMOS klok te wijzigen en te synchroniseren met de systeem-tijd, doe het volgende:
hwclock --set --date="Feb 25 03:38" clock -u -s
Als je CMS klok draait op de lokale tijd (wat we afraden, maar waartoe je verplicht bent als je andere besturingssystemen draait), dan kan je het volgende doen:
hwclock --set --date="Feb 25 04:38" clock -s[Merk het uur verschil op ! ;p]
België zit met een taalprobleem, en dus heeft dit onderdeel, 3 onderdeeltjes ;) In se komt het op hetzelfde neer. Niet veel programma's ondersteunen al Locale, als je meer wil weten over Locale of hoe je je programma's kan schrijven zodat ze Locale ondersteunen, kijk op: [put the damn url here ;p]
Let wel op dat Locale het moeilijker maakt om problemen op te lossen aangezien minder mensen je dan nog kunnen helpen !! Als het in technisch Engels is zullen veel mensen je probleem begrijpen, maar als het in het Nederlands bv is wordt het al een stuk moeilijker. (Als je al weet dat er nu al mensen zijn die het moeilijk hebben met beide ;))
Om ondersteuning te hebben voor Nederlandstalige Locale in België op je systeem, moet je enkel de volgende environment variabelen instellen:
LANG=nl LANGUAGE=nl_BEProbeer
nl_BE.ISO_8859-1
als nl_BE
niet werkt.
Om ondersteuning te hebben voor Franstalige Locale in België op je systeem, moet je enkel de volgende environment variabelen instellen:
LANG=fr LANGUAGE=fr_BEProbeer
fr_BE.ISO_8859-1
als fr_BE
niet werkt.
Om ondersteuning te hebben voor Duitstalige Locale in België op je systeem, moet je enkel de volgende environment variabelen instellen:
LANG=de LANGUAGE=de_BEProbeer
de_BE.ISO_8859-1
als de_BE
niet werkt.
Om ondersteuning te hebben voor de Waalse locale support haal je best de files af op volgende adres: http://www.linuxi18n.org/locales/walon/. Om het te gebruiken zet je dan het volgende:
LANG=wa LANGUAGE=wa_BE:fr_BEGebruik
wa_BE.ISO_8859-1
als wa_BE
niet werkt.
Deze opties voegen ondersteuning toe voor het Belgische karakterset en codepages. Als je deze wil hebben, compileer dan een kernel met volgende opties aan. Ze zijn enkel nodig voor sommige bestandssystemen (FAT-gebaseerd, ISO9660, ...).
< > Codepage 850 (Europe) < > NLS ISO 8859-1 (Latin 1; Western European Languages) < > NLS ISO 8859-15 (Latin 9; Western European Languages with Euro)Te vinden in
Filesystems
> Native Language Support
Als je een modulaire kernel hebt, zoals die meegeleverd met je distributie (=je hebt geen eigen kernel gemaakt), dan kan je het volgende typen:
insmod nls_cp850 insmod nls_iso8859_1 insmod nls_iso8859_15