Gentoo Logo

Disclaimer : Dit document is niet juist en is niet meer onderhouden.


UTF-8 Gebruiken met Gentoo Linux

Inhoud:

1.  Karakter Encodering

Wat is een Karakter Encodering?

Computers verstaan text op zichzelf niet. Ieder karakter is heeft ook een eigen nummer-combinatie. Origineel was elke set van nummers, gebruikt om het alfabet en karakters te vertegenwoordigen. Dit is beter gekent als het code-systeem, coderen of karakter set. Deze was gelimiteerd in grootte door limitaties in computer hardware.

De historiek van Karakter Encodering

De meest gekende (of toch de meest wereldwijd ge-accepteerde) karakter is ASCII (amerikaanse standaard codering voor informatie uitwisseling). Het is wereldwijd gehouden voor het meest succesvol software standaard ooit. Moderne ASCII was gestandaardiseerd in 1986 (ANSI X3.4, RFC 20, ISO/IEC 646:1991, ECMA-6) door de amerikaanse nationale standaarden instituut.

ASCII is strict gezien een seven-bit. Dit betekend dat het bit patronenen gebruikt met zeven tekens, die voorzien een spreiding van 0 tot 127 in decimalen. Deze bevatten 32 niet-zichtbare controle karakters, meestal tussen 0 en 31, met ten slotte het controle karakter, DEL of delete op 127. Karkaters 32 tot 126 zijn zichtbare karakters: een spatie, leestekens, latijnse letters en nummers.

De acht bit in ASCII was origineel gebruikt als een foute bit voor fouten te controleren. Als dit ongewenst is, wordt het gelaten als 0. Dit betekend at, met ASCII, elk karakter is vertegenwoordigd door een enkele byte.

Hoewel ASCII genoeg was voor communicatie in het moderne Engels, in andere europese talen die karakters met accenten bevatten, waren dingen niet zo makkelijk om zeggen. Het ISO 8859 standaard werd ontwikkeld om hun noden tegemoet te komen. Ze waren omgekeerd compatibel met ASCII, maar in de plaats van het achtste bit blanco te laten, gebruikten ze het om 127 karakters extra te coderen. ISO 8859's limitaties kwamen vlug aan het licht, er zijn heden trouwens 15 varianten van het ISO 8859 standaard (8859-1 tot 8859-15). Buiten het ASCII-compatiebele byte spreiding van deze karakter groepjes, is er vaak een conflict tussen de letters vertegendwoordigd door elke byte. Om de interopabiliteit tussen de encodering meer gecompliceerd te maken, wordt windows-1252 gebrukt in sommige versies van Microsoft Windows in plaats van westerse europese talen. Dit is een supergroep van ISO 8859-1, hoewel het verschillendis in verschillende opzichten. Deze groepen bevatten wel allemaal ASCII compabiliteit.

De nodige ontwikkeling van compleet andere single-byte encoderingen voor niet-latijnse alfabets, zoals EUC (Uitgebreide Unix Codering (Extended Unix Coding)) die gebruikt wordt voor Japanse en Koreaanse (en ook in mindere mate chinese) codering, creeerde meer verwarring terwijl andere besturings-systemen nog altijd andere karakter-groepen gebruikt voor de zelfde taal, bijvoorbeeld, Shift-JIS en ISO-2022-JP. Gebruikers wensten dat cyrillic glyphs moest kiezen tussen KOI8-R voor russisch en bulgaars of KOI8-U voor Oekraïens, maar ook alle andere cyrillische coderingen zoals het onsuccesvolle ISO 8859-5 alsook het algemene Window-1251 setje. Al deze karakter sets braken meeste compabiliteit met ASCII (hoewel KOI8 encoderingen cyrillische karakters in latijnse orde plaatst, dus in het geval dat de achtste bit is ontdaan, de text is nog steeds ontleedbaar op een ASCII terminal door omgekeerde transcriptie.)

Dit leide tot verwarring en ook tot totale onmogelijkheid voor het voeren van meertalige communicatie, vooral bij verschillende alfabetten Ga verder met Unicode.

Wat is Unicode?

Unicode gooit de traditionele enkele-byte limitaties van karakter sets weg. Het gebruikt 17 "planes" van 65,536 code punten om maximum 1,114,112 karakters te beschrijven. Zoals het eerste "plane" aka. "Basic MUltilingual Plane" or BMP, bevat bijna alles wat je ooit zult gebruiken, velen hebben de verkeerde veronderstelling gemaakt; namelijk dat Unicode een 16-bit karakter set is.

Unicode is in vele manieren in kaart gebracht, maar de twee meest gekende zijn UTF (Unicode Translation Format) en UCS (Universal Character Set). Het nummer na UTF wijst op het aantal bits in één eenheid, terwijl het aantal na UCS op het aantal bytes wijst. Utf-8 is het meest wijdverspreide middel voor de uitwisseling van Unicode tekst geworden door zijn schone aard met slechts acht bits, en dit is ook het onderwerp van dit document.

UTF-8

UTF-8 is een variabele-lengte karakter encodering, die in dit geval betekent dat het 1 tot 4 bytes per symbool gebruikt. Zodus, het eerste UTF-8 byte is gebruikt voor het encoderen van ASCII, zodanig dat het karakter volle omgekeerde compabiliteit met ASCII heeft. UTF-8 betekent dat ASCII en latijnse karakters onveranderbaar zijn met een kleine verhoging in de groote van de data, omdat the eerste bit gebruikt is voor gebruikers van oosterse alphabets zoals Japans. Die hebben een hogere byte spreiding toegewezen gekregen, waarmee ze trouwens niet blij zijn aangezien dit resulteerd in een 50% trager werkende data.

Wat kan UTF-8 voor jou doen ?

UTF-8 laat je toe te werken in meertalige omgeving die werkt op standaarden en internationaal is geaccepteerd, met in vergelijking een lage data traagheid. UTF-8 is de geprefereerde weg om niet-ASCII karakters te verzenden over het internet, via Email, IRC of bijna in elk medium. Afgezien daarvan, vinden veel mensen UTF-8 toch in online communicatie verkeerd. Het is altijd best om u ervan bewust te maken welk gedrag UTF-8 heeft in een specifiek kanaal, mailing list of Usenet groep vooraleer niet-ASCII UTF-8 te gebruiken.

2.  Instellen van UTF-8 met Gentoo Linux

Vinden of creëren UTF-8 Localisaties

Nu dat je de principes van Unicode verstaat, ben je klaar om te starten met UTF-8 te gebruiken op je systeem.

De vereiste voor UTF-8 is een versie van glibc geinstalleerd te hebben die nationale talen ondersteund. De naar voor geschoven mening om dit te doen is het

/etc/locale.gen bestand aan te passen. Het is voorbij de vooruitzichten van dit document om het gebruik van dit bestand uit te leggen. Het is goed uitgelegt in de Gentoo Localisatie Gids .

Vervolgens moeten we beslissen of een UTF-8 localisatie al besschikbaar is voor onze taal, or als we onze eigen moeten creeeren.

Codevoorbeeld 2.1: (Controleren ofer al een bestaande UTF-8 localisatie is

(Vervang "nl_BE" met je gewenste localisatie instelling)
# locale -a | grep 'nl_BE'
nl_BE
nl_BE.UTF-8

Van de teruggave van de command line, moeten we een resultataat mt een navoegsel die lijkt op .UTF-8 nemen. Als er geen is, moeten we een UTF-8 compatibele localisatie creeeren.

Nota: Voer alleen de onderstaande code listing uit als je geen UTF-8 localisatie beschikbaar hebt voor je taal.

Codevoorbeeld 2.2: Creeeren van een UTF-8 localisatie

(Vervang "nl_BE" met je eigen gewenste localisatie instelling)
# localedef -i nl_BE -f UTF-8 nl_BE.UTF-8

Een andere manier om een UTF-8 localisatie toe te voegen aan /etc/locale.gen bestand en genereren van de nodige localisaties is met het locale-gen commando.

Codevoorbeeld 2.3: Lijn in /etc/locale.gen

nl_BE.UTF-8 UTF-8

Instellen van een localisatie

Er is een omgeving variabele die je moet instellen om onze nieuwe UTF-8 localisaties te kunnen gebruiken: LC_ALL (Deze variabelen schakelen het LANG instelling ook uit). Hoewel er veel manier zijn om dit in te stellen; vinden vele gebruikers het makkelijk het in te stellen in hun ~/.profile (als je /bin/sh gebruikt), ~/.bash_profile of ~/.bashrc (als je /bin/bash gebruikt).

Anderen vinden het dan weer makkelijkst ene localisatie in te stellen voor heel het systeem. De schrijver van deze gids raadt dit ten sterkste aan bij het gebruik van /etc/init.d/xdm. Dit init script start de display manager en je bureaublad vooraleer enige van de voorafgaande bestanden zijn uitgevoert, en dus voor enige variabelen in de omgeving.

De localisatie globaal instellen in het systeem zou moeten ingesteld worden in het volgende bestand: /etc/env.d/02locale. Het bestand zou moeten als volgt eruit zien:

Codevoorbeeld 2.4: Demonstratie /etc/env.d/02locale

(Zoals altijd, pas "nl_BE.UTF-8" naar jou localisatie)
LC_ALL="nl_BE.UTF-8"

Nota: je kunt ook LC_ALL vervangen met LANG. Deze variabele stelt je localisatie voor alle categorieën in, waaronder numerieke- en munt-waarden. Op enkele systemen kan het wat problemen veroorzaken. Hoewel, de meeste gebruikers de mogelijkheid zouden hebben om LC_ALL te gebruiken. Voor meer informatie over de beïnvloede categorieën door het gebruik van LC_ALL, gelieve verder te lezen op de GNU localisatie pagina.

Vervolgens moet het systeem worden upgedate met de verandering.

Codevoorbeeld 2.5: Updaten van de omgeving

# env-update
>>> Regenerating /etc/ld.so.cache...
 * Caching service dependencies ...
# source /etc/profile

start nu locale zonder argumenten om te zien of je variabelen correct zijn ingesteld:

Codevoorbeeld 2.6: Checking if our new locale is in the environment

# locale
LANG=
LC_CTYPE="nl_BE.UTF-8"
LC_NUMERIC="nl_BE.UTF-8"
LC_TIME="nl_BE.UTF-8"
LC_COLLATE="nl_BE.UTF-8"
LC_MONETARY="nl_BE.UTF-8"
LC_MESSAGES="nl_BE.UTF-8"
LC_PAPER="nl_BE.UTF-8"
LC_NAME="nl_BE.UTF-8"
LC_ADDRESS="nl_BE.UTF-8"
LC_TELEPHONE="nl_BE.UTF-8"
LC_MEASUREMENT="nl_BE.UTF-8"
LC_IDENTIFICATION="nl_BE.UTF-8"
LC_ALL=nl_BE.UTF-8

Dit is alles. Je gebruikt nu UTF-8 localisatie, en de volgende stap is het instellen van aplicaties die je van dag tot dag gebruikt.

3.  Applicatie Ondersteuning

Als Unicode voor het eerst werd gestart in de software wereld, multibyte karakter sets waren niet geschikt genoeg voor talen als C, in welk vele van de dag-tot-dag programma's zijn geschreven. Zelfs vandaag, zijn sommige programma's niet geschikt om UTF-8 te gebruiken. Gelukkig zijn velen dat wel!

Bestandsnamen, NTFS en FAT

Er zijn meerdere NLS opties in het Linux kernel configuratie menu, maar het is belangrijk om niet verward te raken! In de meeste gevallen, is het enige dat je moet doen UTF-8 NLS ondersteuning in je kernel bouwenn, en het veranderen van standaard NLS ondersteuning te veranderen naar UTF-8.

Codevoorbeeld 3.1: Kernel configuratie stappen voor UTF-8 NLS

File Systems -->
  Native Language Support -->
    (utf8) Default NLS Option
    <*> NLS UTF8
    (Also <*> other character sets that are in use in
    your FAT filesystems or Joilet CD-ROMs.)

Als je van plan bent om NTFS partities te gebruiken, zou het handig kunnen zijn om een nls= optie mee te geven met je mount startregel. Als je van plan bent FAT partities the mounten, zou het handig kunnen zijn om een codepage= optie met je mount-regel mee te geven. Optioneel kun je ook een standaard codepage voor FAT in je kernel configuratie instellen. Merk op dat de codepage optie met mount de kernel instellingen zullen te niet doen.

Codevoorbeeld 3.2: FAT instellingen in de kernel configuratie

File Systems -->
  DOS/FAT/NT Filesystems  -->
    (437) Default codepage for fat

Instellingen zoals Default iocharset for fat bij UTF-8 vermijdt je best, aangezeien deze niet aangeraden zijn. Ter vervanging kun je wel de optie utf8=true gebruiken als je jou FAT partitie mount. Voor meer informatie, zie ook man mount en de kernel documentie in /usr/src/linux/Documentation/filesystems/vfat.txt.

Voor het veranderen van encoderingen van bestandsnamen kan app-text/convmv gebruikt worden.

Codevoorbeeld 3.3: Voorbeeld van het gebruik van convmv

# emerge --ask app-text/convmv
(Commando formaat)
# convmv -f <huidige-encodering> -t utf-8 <bestandsnaam>
(Vervang iso-8859-1 met de karakterset die je converteerd
# convmv -f iso-8859-1 -t utf-8 bestandsnaam

Voor het veranderen van de inhoud van bestanden, gebruik het iconv hulpmiddel gebundeld met glibc:

Codevoorbeeld 3.4: Voorbeeld van het gebruik van iconv

(Vervang iso-8859-1 met de karakterset die je converteerd)
(Controleer of de teruggave gezond is)
# iconv -f iso-8859-1 -t utf-8 bestandsnaam
(Om een bestand te converteren, moet je een ander bestand
aanmaken)
# iconv -f iso-8859-1 -t utf-8 bestandsnaam > nieuw-bestand

app-text/recode kan ook voor dit gebruikt worden.

Het Systeem Console

Belangrijk: Je hebt >=sys-apps/baselayout-1.11.9 voor Unicode op de console.

om UTF-8 voor de console in te schakelen, moet je /etc/rc.conf aanpassen en UNICODE="yes" instellen. Je moet ook de commentaar lezen in dat bestand -- Het is belangrijk dat je een font hebt dat een goede spreiding van karakters heeft als je van plan bent unicode te gebruiken.

De KEYMAP variabele, ingesteld in /etc/conf.d/keymaps, zou Unicode moeten bevatten.

Codevoorbeeld 3.5: Voorbeeld /etc/conf.d/keymaps snippet

(Verander "be-latin1" naar je lokale layout)
KEYMAP="be-latin1"

Ncurses en Slang

Nota: Negeer enige vermelding van Slang in deze sectie als je het niet hebt geinstalleerd of niet gebruikt.

Het is wijs om unicode toe te voegen aan je globale USE flags in /etc/make.conf, en daarna sys-libs/ncurses opnieuw te installeren en sys-libs/slang indien aangewezen. Portage zal automatisch dit updaten als je je systeem update:

Codevoorbeeld 3.6: Updaten van je systeem

# emerge --update --deep --newuse world

We moeten ook een aantal pakketten opnieuw compileren die gelinkt worden naar deze, nu de USE veranderingen zijn toegepast. De tool die we daarvoor gebruiken We also need to rebuild packages that link to these, now the USE changes have (revdep-rebuild) is deel van het gentoolkit pakket.

Codevoorbeeld 3.7: Opnieuw compileren van programma's die ncursus of slang gebruiken.

# revdep-rebuild --soname libncurses.so.5
# revdep-rebuild --soname libslang.so.1

KDE, GNOME en Xfce

Alle grote desktop omgevingen hebben volledige Unicode ondersteuning, en zal geen extra opstelling nodig hebben dan al aangegeven was in deze gids. Dit is omdat de onderliggende grafische toolkits (Qt of GTK+2) UTF-8 bewust zijn. All of the major desktop environments have full Unicode support, and will require no further setup than what has already been covered in this guide. This is because the underlying graphical toolkits (Qt or GTK+2) are UTF-8 aware. Later zullen alle aplicaties die boven op die hulpmiddellen runnen utf-8 bewust zijn zonder enige instelling.

De uitzondering op deze regel komt op Xlib en GTK+1. GTK+1 heeft een iso-10646-1 FontSpec nodig in ~/.gtkrc, bijvoorbeeld -misc-fixed-*-*-*-*-*-*-*-*-*-*-iso10646-1. Ook zullen aplicaties die Xlib of Xaw gebruiken een gelijkaardige FontSpec nodig hebben, anders zullen die niet werken.

Nota: Als je een andere versie van het gnome1 control center gebruikt, gebruik dit in de plaats. Kies enige iso10646-1 font vanaf daar.

Codevoorbeeld 3.8: Voorbeeld van ~/.gtkrc (for GTK+1) die een Unicode compatibele lettertype gebruiken.

style "user-font"
{
    fontset="-misc-fixed-*-*-*-*-*-*-*-*-*-*-iso10646-1"
}
widget_class "*" style "user-font"

Als een applicatie een betere ondersteuning heeft voor Qt en GTK+2 GUI, zal de GTK+2 GUI meestal een beter resultaat geven met Unicode.

X11 en Fonts

Belangrijk: x11-base/xorg-x11 heeft meer en betere ondersteuning voor Unicode dan XFree86 en is streng aangeraden.

TrueType lettertypes hebben ondersteuning voor Unicode, en zijn de meeste fonts die bij Xorg zitten hebben geweldige karakter ondersteuning, hoewel, zijn duidelijk niet alle enkele glyph voor dat lettertype gecreëerd. Om lettertypes te compileren (waaronder de Bitstream Vera set) met ondersteuning voor Oost-Aziatische letters binnen X, controleer of je de cjk USE flag hebt ingesteld. Vele andere aplicaties gebruiken deze flag, dus kan het handig zijn deze toe te voegen aan je USE flag.

Ook, kunnen veel pakketten in de portage Unicode detecteren.

Codevoorbeeld 3.9: Optioneell: Installeer enkele Unicode-bewuste lettertypes

# emerge terminus-font intlfonts freefonts cronyx-fonts corefonts

Window Managers en Terminal Emulators

Window managers die niet zijn gecompileerd op GTK of Qt hebben meestal een goede Unicode ondersteuning omdat ze vaak de Xft bibliotheek gebruiken om te werken met lettertypes. Als je window manager geen Xft gebruikt voor zijn fonts, kan je nog altijd de FontSpec die vermeld stat in de vorige sectie gebruiken als Unicode lettertype.

Terminal emulators die Xft gebruiken en Unicode ondersteunen zijn moeilijker om te vinden Buiten Konsole en gnome-terminal, zijn de beste opties in de portage x11-terms/rxvt-unicode, xfce-extra/terminal, gnustep-apps/terminal, x11-terms/mlterm, of plain x11-terms/xterm als die gecompileerd is met de unicode USE flag en aangehaald als uxterm. app-misc/screen ondersteund ook UTF-8, als die aangehaald is als screen -U of als het volgende in ~/.screenrc zich bevindt:

Codevoorbeeld 3.10: ~/.screenrc voor UTF-8

defutf8 on

Vim, Emacs, Xemacs en Nano

Vim voorziet volledige UTF-8 ondersteuning, en heeft ook ingebouwde detectering voor UTF-8 bestanden. Voor meer informatie over Vim, gebruik :help mbyte.txt.

Emacs 22.x en hoger heeft ook volledige UTF-8 ondersteuning. Xemacs 22.x ondersteund nog geen gecombineerde karakters.

Lagere versies van Emacs en/of Xemacs kunnen het mogelijk achten om app-emacs/mule-ucs en of app-xemacs/mule-ucs geïnstaleerd te hebben en de volgende code in je ~/.emacs om ondersteuning voor CJK talen in UTF-8 te hebben.

Codevoorbeeld 3.11: Emacs CJK UTF-8 ondersteuning

(require 'un-define)
(require 'jisx0213)
(set-language-environment "Japanese")
(set-default-coding-systems 'utf-8)
(set-terminal-coding-system 'utf-8)

Nano bied volledige UTF-8 ondersteuning sinds versie 1.3.6.

Shells

bash bied nu volledige Unicode ondersteuning door de GNU readline bibliotheek, Z shell gebruikers zijn in een ietwat slechtere positie -- geen van de shell's hebben Unicode ondersteuning, hoewel er een gezamenlijke inspanning is om multibyte karakters sets ondersteuning toe te voegen op het moment.

De C shell, tcsh en ksh voorzien geen UTF-8 ondersteuning.

Irssi

Irssi heeft complete UTF-8 ondersteuning, toch moet de gebruiker een optie instellen.

Codevoorbeeld 3.12: Inschakelen van UTF-8 in Irssi

/set term_charset UTF-8

Voor kanalen waar niet-ASCII karakters vaak uitgewisselt worden in niet-UTF-8 karaktersets, bied het /recode commando hulp waar nodig. Dit commando kan namelijk karakters converteren. Type /help recode voor meer informatie.

Mutt

De Mutt mail agent heeft een heel goede Unicode ondersteuning. Het gebruikt UTF-8 met Mutt, Je hoeft niets aan te passen in je configuratie bestanden. Mutt zal werken in een unicode omgeving zonder aanpassing als alle configuratie bestanden (waaronder handtekeningen) UTF-8 zijn gecodeerd.

Nota: Je kunt nog steeds '?' in je mail lezen met Mutt. Dit is het resultaat van slecht-ingestelde clienten van je gesprekspartner, die namelijk een slechte mail-client gebruikt die geen karakterset gebruikt. Je kan hier weinig aan doen buiten je gesprekspartner aanspreken en hem aansporen zijn client correct in te stellen.

Further information is available from the Mutt Wiki.

Man

Man paginas zijn integraal deel van elke Linux machine. Om te verzekeren dat enige unicode in je man paginas correct wordt gerenderd, pas /etc/man.conf aan en vervang een lijn zoals hieronder afgebeeld.

Codevoorbeeld 3.13: man.conf veranderingen voor Unicode ondersteuning

(Dit is de oude regel)
NROFF           /usr/bin/nroff -Tascii -c -mandoc
(Vervang bovenstaande met deze regel)
NROFF           /usr/bin/nroff -mandoc -c

elinks and links

Deze zijn veelvoorkomende text-gebaseerde browsers, en we zullen zien hoe we kunnen UTF-8 ondersteuning op hen inschakelen. Op elinks en links, er zijn twee manieren om dit te doen, de ene gebruikt de Setup opetie van de browser, open een site met elinks of links en dan Alt+S om het Setup Menu weer te geven, selecteer daarna Terminal options, of druk op T. Scroll naar beneden en selecteer de laatste optie UTF-8 I/O dor op Enter te drukken. Spaar daarna de instellingen op en verlaat het menu. Op links kun je een herhaling doen van de handelingen (Alt+S) en druk dan S om het op te sparen. De config bestands-opties zijn hieronder afgebeeld.

Codevoorbeeld 3.14: inschakelen van UTF-8 voor elinks/links

(Voor elinks, pas /etc/elinks/elinks.conf of ~/.elinks/elinks.conf en
voeg de volgende lijn toe)
set terminal.linux.utf_8_io = 1

(Voor links, pas ~/.links/links.cfg aan en voeg de volgende lijn
toe.)
terminal "xterm" 0 1 0 us-ascii utf-8

Samba

Samba is een software reeks die het SMB (Server Message Block) protocol implementeerd voor UNIX systemen zoals Macs, Linux en FreeBSD. Er wordt ook soms naar het protocol is ook soms verwezen als het Common Internet File System (CIFS). Samba bevat ook het NetBIOS systeem - gebruikt om bestanden uit te wisselen over windows netwerken.

Codevoorbeeld 3.15: Inschakelen van UTF-8 voor Samba

(Pas /etc/samba/smb.conf aan en de voeg het volgende onder de [global]
sectie)
dos charset = 1255
unix charset = UTF-8
display charset = UTF-8

Alles uittesten.

Er zijn vele UTF-8 test websites. net-www/w3m, net-www/links, net-www/elinks, net-www/lynx en alle Mozilla gebaseere browers (waaronder firefox) ondersteund UTF-8. Konqueror en Opera hebben ook volledige UTF-8 ondersteuning.

Als je een textuele web browser gebruikt, controleer dan of je een unicode-bewuste terminal gebruikt.

Als je bepaalde karakters afgebeeld ziet met letters en nummers vanbinnen, betekend dit dat je lettertype geen karakter voor het symbool of glyph die UTF-8 wilt heeft. In de plaats van het goed af te beelden, beelt het een blokje af met de hexadecimale code of het UTF-8 symbool.

Invoer Methoden

Dead keys kunnen gebruikt worden om karakters in te geven in X die niet op je toetsenbord staan. Deze werkt door rechts op de Alt key (in sommige landen Alt-gr) samen met een keuze key van de niet-alfabetische sectie van de toetsenbord aan de linkerkant van de enter toets ,vrij te maken en daarna op een letter te drukken. De dead key past dit zelf aan. Gegevens kunnen verder aangepast worden door gebruik te maken van de shift toets samen met de Alt-gr te drukken en dan aan te passen.

Om dead keys vrij te maken in X, moet je een goede layout hebben dat dit ondersteund. De meeste Europese layouts hebben al een dead key met een standaart variant. Dit is niet zo bij Noord Amerikaanse layouts. Er is een bepaalde graad van onenigheid tussen layouts, de gemakkelijkste oplossing zou zijn door een layout te gebruiken in de vorm van "nl_BE" liever dan "be", alleen bijvoorbeeld. De layouts staan in /etc/X11/xorg.conf op deze manier:

Codevoorbeeld 3.16: /etc/X11/xorg.conf snippet

Section "InputDevice"
    Identifier "Keyboard0"
    Driver     "kbd"
    Option     "XkbLayout" "nl_Be" # Liever dan gewoon "be"
    (ander Xkb opties hier)
EndSection

Nota: De verdere verandering moet alleen toegepast worden als je een Noord Amerikaans layout, of een ander layout waar dead keys niet werken. De Europese gebruikers hebben werkende dead keys.

Deze verandering zal pas effectief zijn wanneer je je x-server herstart Voor het toepassen van de verandering , gebruik de setxkbmap bijvoorbeeld setxkbmap nl_BE.

Het is gemakkelijker dead keys te beschrijven met voorbeelden. Al zijn de resultaten locaal afhankelijk,het consept blijf hetzelfde , ongeacht de localisatie. De voorbeelden bevatten UTF-8, dus om ze te bezien moet je je browser zeggen om de pagina te bezien als een UTF-8, of al een UTF-8 te hebben geconfigureerd.

Wanneer ik Altgr en [ tesamen druk,en loslaat daarna a druk is ä getoond Wanneer ik Altgr en [ tesamen druk,en loslaat daarna e druk is ë getoond Wanneer ik Altgr en ; tesamen druk,en loslaat daarna a druk is á getoond Wanneer ik Altgr en ; tesamen druk,en loslaat daarna e druk is é getoond

Wanneer ik Altgr,shift en [ tesamen druk,en loslaat daarna a druk is een Scandinavische 'å' getoond. Eveneens wanneer ik Altgr,shift en [ tesamen druk en alleen [ loslaat en herdruk is '˚' getoond. Al lijkt het erop, dit (U+02DA) is niet dezelfde als een graden symbool (U+00B0). Dit werkt voor ander accenten geproduceert door dead keys. Altgr en [,daarna alleen [loslaat en herdruk, maakt '¨'.

Altgr kan gebruikt worden met alfabetische keys alleen. Bijvoorbeeld Altgr en m, een griekse lower-case letter mu wordt getoond als 'µ'; Altgr en s maakt een scharfes s or esszet:getoond als 'ß'. Zoals vele Europese gebruikers zouden verwachten(omdat dit gemarkeerd staat op hun toetsenbord); Altgr en 4(of E afhankelijk welk toetsenbord layout). Maakt dit een Euro teken '€'.

Bronnen



Print

Upgedate op 6 oktober 2006

De originele versie van dit document wordt niet meer onderhouden

Korte inhoud: Deze gids toont je hoe je UTF-8 unicode karakter kunt opzetten en gebruiken met je Gentoo Linux systeem, na het uitleggen van de voordelen en meer specifiek UTF-8

Thomas Martin
Author

Alexander Simonov
Contributor

Shyam Mani
Editor

Dimitry Bradt
Translator

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.