Mercurial > vim
view runtime/doc/spell.txt @ 235:23d380e32c95
updated for version 7.0066
author | vimboss |
---|---|
date | Fri, 15 Apr 2005 20:41:38 +0000 |
parents | ef254e0f2365 |
children | 73354c21f1e4 |
line wrap: on
line source
*spell.txt* For Vim version 7.0aa. Last change: 2005 Mar 22 VIM REFERENCE MANUAL by Bram Moolenaar Spell checking *spell* 1. Quick start |spell-quickstart| X. Spell file format |spell-file-format| {Vi does not have any of these commands} Spell checking is not available when the |+syntax| feature has been disabled at compile time. ============================================================================== 1. Quick start *spell-quickstart* This command switches on spell checking: > :setlocal spell spelllang=en_us This switches the 'spell' option on and specifies to check for US English. The words that are not recognized are highlighted with one of these: SpellBad word not recognized SpellRare rare word SpellLocal wrong spelling for selected region PERFORMANCE Note that Vim does on-the-fly spellchecking. To make this work fast the word list is loaded in memory. Thus this uses a lot of memory (2 Mbyte or more). There might also be a noticable delay when the word list is loaded, which happens when 'spelllang' is set. Each word list is only loaded once, they are not deleted when 'spelllang' is made empty. When 'encoding' is set the word lists are reloaded, thus you may notice a delay then too. REGIONS A word may be spelled differently in various regions. For example, English comes in (at least) these variants: en all regions en_us US en_gb Great Britain en_ca Canada Words that are not used in one region but are used in another region are highlighted with SpellLocal. Always use lowercase letters. SPELL FILES Vim searches for spell files in the "spell" subdirectory of the directories in 'runtimepath'. The name is: xx.yyy.spl, where: xx the language name yyy the value of 'encoding' Exception: Vim uses "latin1" when 'encoding' is "iso-8859-15". The euro sign doesn't matter for spelling. Spelling for EBCDIC is currently not supported. A spell file might not be available in the current 'encoding'. You may try using the "iconv" program to create one: > iconv -f latin1 -t koi8-r de.latin1.spl >de.koi8-r.spl However, if some characters cannot be presented in the target encoding this will give wrong results. If a spell file only uses ASCII characters the encoding can be omitted. This is useful for English: "en.spl" The file with encoding is checked first, thus you could have one with encoding that includes words with non-ASCII characters and use the ASCII file as a fall-back. WORDS Vim uses a fixed method to recognize a word. This is independent of 'iskeyword', so that it also works in help files and for languages that include characters like '-' in 'iskeyword'. The word characters do depend on 'encoding'. A word that starts with a digit is always ignored. SYNTAX HIGHLIGHTING Files that use syntax highlighting can specify where spell checking should be done: everywhere default in specific items use "contains=@Spell" everywhere but specific items use "contains=@NoSpell" Note that mixing @Spell and @NoSpell doesn't make sense. ============================================================================== X. Spell file format *spell-file-format* *E751* The spelling for a language is specified in file with a specific format. The first character of a line specifies what follows in the line: line meaning ~ -xx[-yy]... words for region xx (and region yy, etc.) follow <word> normal word ><word> rare word +<word> optional addition after a word !<word> normal word, keep upper/lower case !><word> rare word, keep upper/lower case !+<word> optional word addition, keep upper/lower case #<anything> comment Empty lines are ignored. The word continues until the end of the line. Watch out for trailing white space! Words that start with an upper-case letter will be required to start with an upper-case letter. Otherwise, words must be in lower-case and case is ignored. It is possible that a word appears both with an upper-case letter and as a rare word. This means that the word with an upper-case letter is OK and the word without the upper-case letter is rare. *E753* The region is specified with "-xx". For example, in the "en.spl" file "-us" starts the word for "en_us". This can be repeated for words that are used in more than one region. For example "-ca-us" is used for Canadian and US English words. Use "---" to go back to the words for all regions. Vim supports up to eight regions. *E752* It is possible to have a match that starts with a valid word. In that case the match is used, because it is longer. Example: we =we're "re" is not a word, thus "=we're" is needed to avoid it gets highlighted. The "+" items may appear after any word. For English "'s" is used. Be careful with this, it may hide mistakes. Vim will check for duplicate words in the files used, but you will only get warnings if the 'verbose' option is set to 1 or more. Note that the "=" and "+" words will slow down the operation. Use them only when really needed. vim:tw=78:sw=4:ts=8:ft=help:norl: