<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <TITLE>LinuxDoc+Emacs+Ispell-HOWTO: Ispell</TITLE> <LINK HREF="LinuxDoc+Emacs+Ispell-HOWTO-6.html" REL=next> <LINK HREF="LinuxDoc+Emacs+Ispell-HOWTO-4.html" REL=previous> <LINK HREF="LinuxDoc+Emacs+Ispell-HOWTO.html#toc5" REL=contents> </HEAD> <BODY> <A HREF="LinuxDoc+Emacs+Ispell-HOWTO-6.html">Avanti</A> <A HREF="LinuxDoc+Emacs+Ispell-HOWTO-4.html">Indietro</A> <A HREF="LinuxDoc+Emacs+Ispell-HOWTO.html#toc5">Indice</A> <HR> <H2><A NAME="s5">5. Ispell</A> </H2> <P> Se volete controllare l'ortografia dei vostri documenti all'interno di Emacs, allora potete usare il pacchetto <B>Ispell</B> e la sua modalità Emacs. <P> <H2><A NAME="ss5.1">5.1 Impostare il dizionario predefinito</A> </H2> <P> Potete impostare Emacs in modo tale che quando un file viene caricato scelga automaticamente quale dizionario usare (potete selezionarne diversi). Il primo, sicuramente il piú importante, è il dizionario distribuito con Ispell. Potete scegliere fra varie lingue. Il secondo è il vostro dizionario personale, dove Ispell inserirà le parole che non può trovare nel dizionario principale ma che devono essere ricordate. Se desiderate usare come dizionario predefinito quello Francese che è distribuito con Ispell, e se volete usare il file <CODE>.ispell-dico-perso</CODE>, che si trova nella vostra directory home, come dizionario personale, inserite le seguenti linee nel vostro file <CODE>.emacs</CODE>: <P> <PRE> (setq sgml-mode-hook '(lambda () "Defaut per SGML mode." (setq ispell-personal-dictionary "~/.ispell-dico-perso") (ispell-change-dictionary "francais") )) </PRE> <P> <H2><A NAME="ss5.2">5.2 Selezionare un dizionario per determinati file</A> </H2> <P> Potreste avere qualche problema se non si fate la correzione ortografica dei vostri documenti sempre con la lingua. Se traducete documenti, è normale che passiate da un linguaggio (e dizionario) all'altro molto spesso. <P> <P> Non sono a conoscenza di una funzione Lisp che permetta di selezionare, sia automaticamente oppure con un click del mouse, il dizionario principale e quello personale associato al linguaggio che viene utilizzato (se qualcuno lo sa, per favore me lo dica!). <P> In ogni caso, è possibile indicare, alla fine del file, quale dizionario volete che venga utilizzato per quel determinato documento. È sufficiente aggiungere queste specifiche come commenti, in modo tale che Ispell possa leggerli quando viene avviata la correzione ortografica. Ecco un esempio per la lingua inglese: <P> <PRE> <!-- Local IspellDict: english --> <!-- Local IspellPersDict: ~/emacs/.ispell-english --> </PRE> Se avete precedentemente definito, nel vostro file <CODE>.emacs</CODE>, che il vostro dizionario è, per esempio, quello francese, allora potete aggiungere queste linee alla fine di ogni file scritto in inglese. <P> <P> <H2><A NAME="ss5.3">5.3 Correzione ortografica dei vostri documenti</A> </H2> <P> Per eseguire la correzione ortografica del vostro documento, usate, in qualcunque punto del documento, il comando <CODE>Meta-x ispell-buffer</CODE>. Potete in ogni caso eseguire questo controllo in una singola sezione del documento: <P> <UL> <LI> Marcare l'inizio della sezione con <CODE>Ctrl-Spc</CODE> (mark-set-command), </LI> <LI> Muovetevi fino alla fine della sezione da correggere, </LI> <LI> digitate <CODE>Meta-x ispell-region</CODE>. </LI> </UL> <P> A questo punto Emacs avvia Ispell. Appena incontra una parola sconosciuta, questa viene mostrata evidenziata e aspetta che immettiate un comando: <P> <UL> <LI><B>spazio </B>accetta la parola, questa volta soltanto </LI> <LI><B>i </B>accetta la parola e la inserisce nel dizionario personale </LI> <LI><B>a </B>accetta la parola per questa sessione di Ispell </LI> <LI><B>A </B>accetta la parola per questo file, e la inserisce nel dizionario personale </LI> <LI><B>r </B>permette di correggere la parola manualmente </LI> <LI><B>R </B>permette di correggere tutte le ricorrenze della parola che è stata corretta </LI> <LI><B>x </B>arresta la correzione, e riporta il cursore dove si era lasciato inizialmente </LI> <LI><B>X </B>arresta la correzione e lascia il cursore dove si trova, permettendo di correggere il file; sarete in grado di continuare la correzione in un secondo tempo usando <CODE>Meta-x ispell-continue</CODE> </LI> <LI><B>? </B>accede alla guida in linea. </LI> </UL> Se Ispell trova una o più parole nel dizionario simili a quella sconosciuta, le mostrerà in una piccola finestra, ognuna preceduta da un numero. Basta premere questo numero per sostituire la parola sbagliata con quella corrispondente. <P> <P> <H2><A NAME="ss5.4">5.4 Dizionario personale VS dizionario nel file locale</A> </H2> <P> Il tasto <B>i</B> vi permette di inserire una parola nel vostro dizionario personale, come <B>A</B> permette di inserirla nel dizionario in file locale. <P> Il dizionario nel file locale è una sequenza di parole inserite alla fine del file, come commento, rilette da Ispell ogni volta che viene eseguito sul quel file specifico. In questo modo è possibile accetare alcune parole nel file in questione, ma non in altri. <P> Dal mio punto di vista credo che sia meglio che il dizionario personale venga utilizzato per parole che non sono contenute nel dizionario principale ma che sono tipiche del linguaggio (come le parole accentate), con in piú parole comuni come nomi propri o altre (come <I>Linux</I>), se non sono troppo simili ad altre presenti in quello principale; aggiungere troppe parole nel dizionario personale, come nomi propri, può essere "pericoloso", poiché possono essere viste come parole della lingua in uso (immaginate Ispell alle prese con qualcosa del genere: `<I>When the going gets tof, the tof get going</I>'). <BLOCKQUOTE><EM>Tof</EM> è l'abbreviazione francese per il nome proprio <EM>Christophe</EM>!.</BLOCKQUOTE> <P> <H2><A NAME="ss5.5">5.5 Correzione ortografica durante la digitazione</A> </H2> <P> Ispell può controllare l'ortografia mentre state digitando il vostro documento. Dovete utilizzare <B>ispell-minor-mode</B> per questo. Per avviarlo o arrestarlo, digitate <CODE>Meta-x ispell-minor-mode</CODE>. Ispell emetterà un <EM>beep</EM> ogni volta che digiterete una parola che non è nei due dizionari. <P> <P> Se questi <EM>beep</EM> vi stanno annoiando (oppure il vostro compagno di stanza si è stancato di voi.. ), potete rimpiazzarli con un flash sullo schermo, con il comando <CODE>Meta-x set-variable RET visible-bell RET t RET</CODE>. Potete anche aggiungere le seguenti linee nel vostro file <CODE>.emacs</CODE> e Emacs non parlerà mai piú: <P> <PRE> (setq visible-bell t) </PRE> <HR> <A HREF="LinuxDoc+Emacs+Ispell-HOWTO-6.html">Avanti</A> <A HREF="LinuxDoc+Emacs+Ispell-HOWTO-4.html">Indietro</A> <A HREF="LinuxDoc+Emacs+Ispell-HOWTO.html#toc5">Indice</A> </BODY> </HTML>