Hvordan få norske tegn i skallet
Om denne beskrivelsen
Å få til norske tegn i konsollet eller skallet er ikke så helt lett. Men dessverre
var ingen av de kildene jeg hadde nøyaktige nok; det manglet noe, eller sto feil der.
Derfor lete jeg frem så mye jeg trengte (og litt til :-) for å fornorske bash, ls,
less, man og tree; fire kommandoer (og et skall) som jeg bruker endel og som ellers
ville vist bare rare tegn for «æ», «ø» og «å».
Jeg ville ha det så lett som mulig, uten å måtte installere flere programmer, endre på
selve tasteoppsettet med xmodmap e.l.
For å fornorske andre programmer, se lenkene nederst (spesielt danish HOWTO).
Jeg har ikke testet annet enn det som står her.
Skulle det være mangler eller feil i dette dokumentet, ikke nøl med å sende en
beskjed om det. Alle rettelser av feil er av det gode.
Autooppsett
Jeg har fått beskjed om at Mandrake 8.2 og 9.0 støtter norske tegn
rett ut av boksen, og har testet at det også gjør det under RedHat 6.0;
dermed virker det nok også på nyere versjoner.
Dette virker kanskje ut av boksen på SuSE også, men det har jeg ikke
testet. Gi tilbakemelding om du er i besittelse av noe slikt.
(K)ubuntu (testet versjon 6.06 og senere) bruker nb_NO.utf8 som locale, så
norske tegn skal i de fleste tilfeller bli vist riktig i skallet.
Men «man» viser alle tegn som utf-8, noe som gir tallkoder
istedenfor en god del tegn, noe som forstyrrer linjelengden. For å rette
på dette, se manuelt oppsett for man nedenfor.
På alle debianbaserte systemer kan du prøve
«dpkg-reconfigure locales»
som root (følg instruksene). Installer gjerne
også «localeconf».
Oppsett for root: På noen maskiner kan det hende root ikke har
satt opp til å bruke norsk tastatur, bruk da (som root) kommandoen
«loadkeys no-latin1» (/usr/share/keymaps har en liste over
tastaturvalg, se f.eks /usr/share/keymaps/i386/qwerty/).
Hvis ikke noe av dette var til hjelp, så les videre.
Konsole og Gnome-terminal
Både Konsole (Verktøy – Tegnkoding) og Gnome-terminal har
eget oppsett for bruk av tegnsett, pass på å sjekke at de er satt rett før du
prøver siste utvei – manuelt oppsett (fortvil ikke, med litt presisjon er dette fort
gjort).
Manuelt oppsett
La bash-skallet bruke æøå
Sett dette i ~/.inputrc eller /etc/inputrc:
(Se bemerkningene nedenfor hvis du er usikker p�hvem av dem som passer best.)
set convert-meta off
set output-meta on
set input-meta on
(Sistnevnte er synonymt med å skrive: set meta-flag on)
La less vise æøå
Sett dette inn i både ~/.profile og ~/.bashrc, eller i både /etc/profile, og
/etc/bash.bashrc:
export LESSCHARSET=latin1
La ls vise æøå
Sett dette inn i både ~/.profile og ~/.bashrc, eller i både /etc/profile, og
/etc/bash.bashrc:
alias ls='ls --show-control-chars'
For å la ls vise filer og mapper i farger også, bruk isteden:
alias ls='ls --show-control-chars --color'
La tree vise æøå
Sett dette inn i både ~/.profile og ~/.bashrc, eller i både /etc/profile, og
/etc/bash.bashrc:
alias tree='tree -N'
For å la tree vise filer og mapper i farger også, bruk isteden:
alias tree='tree -CN'
La man vise alle tegn som ascii
Hvis din maskin viser noen tegn som kontrollkoder når du bruker man
,
Sett dette inn i både ~/.profile og ~/.bashrc, eller i både /etc/profile, og
/etc/bash.bashrc:
alias man='man -E ascii'
Bemerkninger
Bruker man innstillingsfilene i hjemmemappa (~/) så gjelder de bare for den brukeren.
Innstillingsfilene i /etc derimot gjelder for alle brukere, og dermed også for root,
og det er absolutt kjekt :-)
Innstillinger i hjemmemappa overstyrer de generelle systeminnstillingene. (Roots hjemmemappe er «/root».)
Det som ligger i .profile og ~/.profile leses bare inn når man logger inn i skallet,
det i /etc/bash.bashrc og ~/.bashrc leses bare når et (under-)skall startes, f.eks når
wterm eller Konsoll startes under X, eller når du logger deg inn som root med
«su» i et skall en bruker har logget seg inn i.
Prøv å legge inn variablene for less og ls i bare /etc/profile og ikke i /etc/bash-bashrc, og du vil forstå hva jeg mener!
Jeg har tatt utgangspunkt i bash-skallet når jeg har skrevet dette, for andre skall vil enkelte
kommandoer (f.eks export=...) være anderledes. Men det meste vil være likt og iallefall
overførtbart.
Dette er sjekket på Debian 3.0 med KDE 3.1.x og Windowmaker. Oppsettet og
filnavnene/filplasseringene kan være anderledes for andre Linux-distribusjoner.
Oversikt over oppsettsfilene for miljøvariabler
Oppsett for alle brukerne på systemet
FILPLASSERING | INNSTILLINGSVALG |
/etc/inputrc | Oppsett for biblioteket «readline» for alle brukere |
/etc/profile | Miljøvariabler for alle brukere for alle skall |
/etc/environment | Språkvalg for alle brukere; |
| Her settes miljøvariablene LANG og LANGUAGE til |
| LANG=no_NO og LANGUAGE=nb_NO:nn_NO:no_NO:no
|
| eller samme, bare med nb_NO.UTF-8 og nn_NO.UTF-8 isteden. |
| Da åpnes f.eks OOo på norsk som standard
(sett nn_NO først om du heller vil ha nynorsk; jeg bruker bokmål:-) |
Oppsett for eieren av hjemmemappa(~/)
FILPLASSERING | INNSTILLINGSVALG |
~/.profile | Miljøvariabler for hver enkelt bruker, alle skall |
~/.bashrc | Miljøvariabler for hver enkelt bruker, bash-skallet |
~/.bash_profile | Miljøvariabler for bash, 1. prioritet (hvis den finnes) |
~/.bash_login | Miljøvariabler for bash, 2.prioritet |
| Brukes hvis den finnes og ikke 1. prioriteten finnes |
~/.profile | Miljøvariabler for alle skall, (3. prioritet for bash) |
| Brukes hvis den finnes og ikke 1. eller 2. prioriteten finnes |
~/.inputrc | Oppsett for biblioteket «readline» for hver enkelt bruker |
| Kan gi æøå i bash, men ikke
less og ls (se over)! |
Oppsett for nye brukere
Alle filer som ligger i /etc/skel kopieres over i brukerens hjemmemappe når en ny konto blir
opprettet, vanlig er:
/etc/skel/.bashrc
/etc/skel/.bash_profile
Også
/etc/skel/.inputrc
kan ligge samme sted.
Disse filene styrer oppsettet for alle nye brukere.
Feilsøking
Opprett en fil som heter æøå-æøå, eller noe annet som bruker
disse bokstavene. Skriv inn «æøå æøå» i fila, gjerne med
linjeskift istedenfor mellomrom. Nå kan du lett se om de særnorske tegnene vises ved å
bruke less-, ls- eller tree-kommandoen.
For å teste om en miljøvariabel fungerer som ønsket, skriv export
MILJØVARIABEL=verdi (Eksempel: export LANG=nb_NO). Disse variablene gjelder bare for det
terminalvinduet den settes i og forsvinner når vinduet lukkes eller maskina skrus av.
For å se hvilke miljøvariabler som er satt, skriv «set» eller «env» i
skallet («set» gir mest informasjon!).
Skriv «locale» for å se språkinnstillingene.
For å bruke innstillingene fra bare en bestemt fil, kjør «. 'sti/filnavn'»,
f.eks vil kommandoen «. .profile» lese inn innstillingene i «.profile» på nytt.
(Husk mellomrom mellom «.» og «sti/filnavn»!)
Det er forskjell på om du starter et skall i X (altså f.eks i KDE) og om du starter et
innloggingsskall. Skall som startes i X leser ikke oppstartsinformasjonen for innloggingsskall. For å
teste at innlogginsskallet er satt opp rett kan man:
Metode 1
Skriv bash -l i et skall. Bash vil da lese inn oppstartsoppsettet for innloggingsskall, den bruker da også
alle eventuelle endringer. Du starter med dette et underskall i skallet. «exit» fører deg
tilbake til foreldre-skallet, altså et skall med forrige oppsett.
Metode 2
I KDE eller en annen vindusbehandler: trykk «Ctrl+Alt+F1» (eller F2, F3 ... t.o.m. F6). Logg inn der (både som root og som bruker) og se om oppsettet stemmer. Trykk «Ctrl+Alt+F7» og du er tilbake i vindusbehandleren.
NB: Sjekk at innstillingene i fila du skriver i ikke overstyres av innstillinger i en
«viktigere» fil, se filoversikten over.
Kilder
The Danish-HOWTO:
http://www.tldp.org/HOWTO/Danish-HOWTO.html
The Norwegian-HOWTO:
http://www.linux.no/biblioteket/norsk/Norwegian-HOWTO.html
Linux in a nutshell, 3rd Edition, O'Reilly forlag 2000
«info ls» (under «formatting the file names» og «general output formating», nederst).
«man bash»
«man readline»
«man tree»
Videre lesning
Oppsett for eurotegnet:
http://www.tldp.org/HOWTO/mini/Euro-Char-Support/index.html
HOWTO for flere språk:
http://www.tldp.org/HOWTO/HOWTO-INDEX/other-lang.html#OTHER-LANG-SPECIFIC
The Keyboard and console-HOWTO:
http://www.tldp.org/HOWTO/HOWTO-INDEX/hardware.html#HWKYBRD
Bash-Prompt-HOWTO:
http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/index.html
perllocale—Perl locale handling
Av Axel Bojer
Opprettet 29.6.03
Sist oppdatert 4.4.07
E-post: axelb-krøllalfa-skolelinux.no