Nästa Föregående Innehållsförteckning

5. Ispell

Om du vill stavningskontrollera dina dokument från Emacs, så kan du använda Ispell-paketet och dess Emacs-läge.

5.1 Att välja standardordlistor

Du kan ställa in Emacs så att det, då du laddar en fil, automatiskt väljer vilka ordlistor det ska använda (det kan använda flera). Den första, och säkerligen den viktigaste, är huvudordlistan, vilken distribueras med Ispell. Du kan välja mellan flera olika språk. Den andra är din personliga ordlista, där Ispell infogar ord som det inte kunde finna i huvudordlistan, men du sade åt det att komma ihåg.

En svensk (och även en dansk) ordlista kan hämtas på http://www.sslug.dk/ispell.

Om du vill använda den standardiserade franska ordlistan som kommer med Ispell, och om du vill använda filen .ispell-perso-ord, i din hemkatalog, som din personliga ordlista, så lägg till följande rader till din .emacs-fil:

       (setq sgml-mode-hook
       '(lambda () "Defaults for SGML mode."
       (setq ispell-personal-dictionary "~/.ispell-perso-ord")
       (ispell-change-dictionary "francais")
       ))
       

5.2 Välja speciella ordlistor för vissa filer

Du kan få problem om du inte stavningskontrollerar alla dokument i samma språk hela tiden. Om du översätter dokument, så är det ganska troligt att du byter språk (och ordlistor) väldigt ofta.

Jag känner inte till något Lisp-sätt att välja, antingen automatiskt eller med ett enkelt mus-klick, huvudordlista eller personliga ordlista, som ska associeras med språket du för tillfället använder. (Om du känner till något om detta, tala om det för mig!)

Det är dock möjligt att ange, på slutet av filen, vilka ordlistor du vill använda för den aktuella filen (och endast denna). Det räcker att lägga till dem som kommentarer, så att Ispell kan läsa dem då det kör stavningskontrollen (spell-check).

     <!-- Local IspellDict: english -->
     <!-- Local IspellPersDict: ~/emacs/.ispell-english -->
    

Om du redan, i din .emacs-fil, har angivit att dina standard-ordlistor är de franska, så kan du lägga till dessa rader i slutet av varje engelsk fil.

5.3 Stavningskontrollera dina dokument

För att stavningskontrollera ett helt dokument, använd, varifrån som helst i dokumentet, Meta-x ispell-buffer-kommandot. Du kan även välja att bara kontrollera en viss del av dokumentet:

Sedan kör Emacs Ispell. Då det stöter på ett okänt ord visar det dig det aktuella ordet (vanligtvis markerat) och ber dig välja mellan:

Om ispell finner ett eller flera ord som liknar det okända ordet, så visar det dem i ett litet fönster, vart och ett med en siffra framför sig. Tryck bara på motsvarande siffertangent, för att ersätta det felstavade ordet med det korresponderande ordet.

5.4 Personlig ordlista kontra filens lokala ordlista

i-tangenten låter dig infoga ett ord i din personliga ordlista, och A låter dig infoga ett ord i en lokal ordlista för den aktuella filen.

Den lokala filens ordlista är en sekvens av ord infogade i slutet av filen, som kommentarer, vilka läses in a Ispell varje gång det ska kontrollera filen. På det sättet kan du behålla vissa ord, vilka är acceptabla i denna fil, även om de inte med nödvändighet är acceptabla i andra filer.

Enligt min åsikt så är det bättre att reservera den personliga ordlistan för ord som huvudordlistan inte känner till, men som tillhör språket (som sammansatta ord), plus några vanliga ord som substantiv och andra ord (som Linux), om de inte är alltför lika ett riktigt ord, som finns i huvudordlistan; att lägga till alltför många ord i den personliga ordlistan, såsom förnamn, kan vara farligt, eftersom de kan likna ett ord som ingår i språket (man skulle kunna tänka sig att Ispell blir förvirrat av det följande: `Det roligaste med Young Ones var när Neil skulle koka linus-soppa.'

Om jag skulle lagt in Linus i min personliga ordlista!

5.5 Direkt stavningskontroll

Ispell kan utföra stavningskontroll på filen medan du skriver. Till detta måste du använda ispell-minor-mode. För ett starta eller avsluta det, skriv Meta-x ispell-minor-mode. Ispell piper varje gång du skriver ett ord som det inte känner igen.

Om dessa pip irriterar dig (eller om din rumskamrat tar en tupplur), så kan du ersätta de irriterande pipen med att skärmen blinkar till, vilket du gör med kommandot Meta-x set-variable RET visible-bell RET t RET. För att för evigt tysta Emacs, kan du lägga till följande rad i din .emacs-fil:

       (setq visible-bell t)
      


Nästa Föregående Innehållsförteckning