2013-06-02 18 views
9

Scrivo principalmente la mia documentazione in HTML usando emacs come mio editore principale. Emacs ti permette di controllare interattivamente il buffer corrente con il comando ispell-buffer.Come posso eseguire il controllo ortografico di più lingue in emacs?

Dal momento che passo da un numero di lingue, ho un commento HTML alla fine del file che specifica il dizionario principale e il dizionario personale per quel file, ad es. per norvegese (norsk) utilizzo la seguente coppia di dizionari:

<!-- Local IspellDict: norsk --> 
<!-- Local IspellPersDict: ~/.aspell/personal.dict --> 

Questo funziona benissimo.

Tuttavia, a volte ho un paragrafo in un'altra lingua (ad esempio inglese) incorporato in un documento altrimenti norvegese. Esempio:

<p xml:lang="en">This paragraph is in English.</p> 

Il correttore ortografico naturalmente bandiera tutte le parole in un tale paragrafo come errori di ortografia (dal momento che il dizionario contiene solo le parole norvegesi).

Per evitare questo, ho cercato di aggiungere un dizionario "british" al documento, in questo modo:

<!-- Local IspellDict: british --> 
<!-- Local IspellDict: norsk --> 
<!-- Local IspellPersDict: ~/.aspell/personal.dict --> 

Purtroppo, questo non funziona. Il dizionario "britannico" è semplicemente ignorato.

La mia soluzione preferita dovrebbe caricare un dizionario aggiuntivo e utilizzarlo, insieme al dizionario primario, per il controllo ortografico. È possibile?

Tuttavia, sono anche interessato a una soluzione che consente di contrassegnare i paragrafi per non controllando l'ortografia. Non è l'ideale, ma fermerebbe le parole inglesi valide dall'essere contrassegnate come errori ortografici.

PS: Ho anche guardato la risposta a questa domanda: Multilingual spell checking with language detection, ma è molto più ampio e non affronta l'uso specifico emacs Ispell per fare il controllo ortografico.

+1

possibile duplicato di [Come definire due dizionari ispell in Emacs per la modalità LaTeX?] (Http://stackoverflow.com/questions/11361603/how-to-define-two-ispell-dictionaries-in-emacs-for -latex-mode) –

risposta

1

Prova ispell-multi e flyspell-xml-lang http://www.dur.ac.uk/p.j.heslin/Software/Emacs/

È possibile generare più istanze di ispell, e utilizzare il xml: lang tag per decidere quale lingua per verificare.

+0

Grazie per il suggerimento. Ho caricato 'ispell-multi' e' flyspell-xml-lang' e ho taggato i paragrafi inglesi con 'xml: lang =" en "', ma ignora ancora il dictonary "british". Sembra che manchi qualcosa. –

Problemi correlati