[ In English. ]

Svensk ispell-ordlista

Här finns en svensk ordlista som motsvarar cirka 120000 ordformer. Ordlistan kan användas tillsammans med programmet ispell på UNIX-system för att kontrollera och rätta stavningen i filer med svensk text.

Copyright

Copyright © 1998 Skåne/Sjælland Linux User Group .
    This dictionary is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This dictionary is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
The GNU General Public License

Installation

Installera först ispell 3.1. Programkoden för ispell, buildhash mm kan erhållas från ispells hemsida,
http://fmg-www.cs.ucla.edu/geoff/ispell.html.
OBS! Programmet måste komplieras utan direktivet NO8BIT. Kommentera därför bort raden #define NO8BIT från filen local.h. Därefter kan programmet kompileras med kommandot make.

Hämta hem filen iswedish-1.3.tar.gz.

Packa upp filen t.ex. med kommandona

    gunzip iswedish-1.3.tar.gz
    tar -xvf iswedish-1.3.tar
    cd iswedish-1.3
    
Bygg en hashkodad ordlista med kommandot
    buildhash svenska.datalista svenska.aff svenska.hash
    
Kopiera filerna svenska.aff och svenska.hash till ispell-katalogen, troligtvis /usr/lib/ispell eller /usr/local/lib/ispell. (Använd kommandot ispell -vv | grep LIBDIR för att ta reda på vilken katalog det ska vara.) Om detta är omöjligt, kopiera dem t.ex. till din hemkatalog och ange hela sökvägen till svenska.hash varje gång ispell anropas.
    cp svenska.aff svenska.hash /usr/lib/ispell
    
Övriga filer kan raderas:
    cd ..
    rm -r iswedish-1.3
    rm iswedish-1.3.tar
    
Om den svenska ordlistan är den som vanligtvis används (ja, det finns ordlistor för åtskilliga andra språk, se ispells hemsida), så kan det vara lämpligt att göra den till default:
    cd /usr/lib/ispell
    ln -s svenska.hash default.hash
    ln -s svenska.aff default.aff
    

Användning

Om t ex LaeSMIG är en fil med svensk text, ge kommandot
    ispell -d svenska LaeSMIG
    
eller, om svenska är default,
    ispell LaeSMIG 
    
för att kontrollera stavningen i filen.

När programmet kommer till ett ord som inte finns bland ordformerna i ordlistan, så stannar det upp och markerar detta ord. Eventuellt ges en lista med förslag på hur stavningen ska ändras, numrerade 0,1,2 osv. Om man accepterar något av dessa ändringsförslag, så kan man trycka på motsvarande tangent. Man kan också trycka på tangenten R för att ändra manuellt. Om man inte vill ändra ordet i sin fil, så finns ett antal alternativ. Om man trycker på mellanslagstangenten, så fortsätter ispell utan att ändra något. Om man trycker på tangenten A, så tvingar man ispell att acceptera varje förekomst av detta ord i filen utan att stanna upp.

Om ispell knotar fast ordet är rättstavat (detta inträffar tyvärr alltför ofta), så kan man lämpligen lägga in det i sin privata tilläggsordlista och därigenom utöka antalet ord ispell känner igen. Detta går till så att man trycker I (insert, dvs lägg in) eller U (uncapitalize and insert, dvs omvandla till små bokstäver och lägg sedan in). Då läggs ordet in i en fil med namnet .ispell_svenska eller .ispell_default i ens hemkatalog. Det är viktigt att man ser till att de ord man lägger in i .ispell_default bara har stora bokstäver om de alltid måste skrivas så (t.ex. egennamn, som Göran, eller vissa förkortningar, som TCO). Vanliga ord ska läggas in med små bokstäver. Om ett ord inleds med stor bokstav fast det inte är ett ett egennamn, t.ex. eftersom det kommer först i en mening, ska man alltså välja U snarare än I.

Emacs

Med fördel kan man dock anropa ispell från GNU Emacs eller XEmacs. För att kontrollera stavningen i sin fil ger man kommandot M-x ispell-buffer. För att välja den svenska ordlistan används kommandot M-x ispell-change-dictionary med valet svenska (detta behövs inte om svenska är default). Dessa kommandon bör också vara tillgängliga från menyn Edit, undermenyn Spell - välj först Select Svenska och därefter Check Buffer. Om Spell inte syns på menyn Edit, så lägg in följande kommandon i en fil med namnet .emacs i din hemkatalog.
      (autoload 'ispell-word "ispell"
        "Check the spelling of word in buffer." t)
      (global-set-key "\e$" 'ispell-word)
      (autoload 'ispell-region "ispell"
        "Check the spelling of region." t)
      (autoload 'ispell-buffer "ispell"
        "Check the spelling of buffer." t)
      (autoload 'ispell-complete-word "ispell"
        "Look up current word in dictionary and try to complete it." t)
      (autoload 'ispell-change-dictionary "ispell"
        "Change ispell dictionary." t)
      (autoload 'ispell-message "ispell"
        "Check spelling of mail message or news post.")
   
Tyvärr anger emacs automatiskt flaggan -C om man väljer "svenska" som ordlista, och flaggan -B om man väljer default. Ett (inte särskilt vackert) sätt att råda bot på detta är att lägga in raderna
      (setq ispell-dictionary "svenska")
      (setq ispell-dictionary-alist
        '(("svenska"
           "[A-Za-z\345\344\366\305\304\366]"  "[^A-Za-z\345\344\366\305\304\366]"
           "[']" nil ("-d" "svenska") "~list"
           iso-latin-1)
          ("svenska8"
           "[A-Za-z\345\344\366\305\304\366]"  "[^A-Za-z\345\344\366\305\304\366]"
           "[']" nil ("-B" "-d" "svenska") "~list"
           iso-latin-1)
          ))
   
i sin .emacs. Då anropas ispell med flaggan -B ifall man väljer "svenska8" som ordlista, men utan såväl -B som -C om man väljer "svenska" som ordlista (detta är standardfallet).

Ändringar


Skåne/Sjælland Linux User Group, <ispell@sslug.imm.dtu.dk>