From 4770d09abd866bb53d95895dc6a5c5fe7cccb619 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Thu, 12 Jan 2006 23:22:24 +0000 Subject: [PATCH] updated for version 7.0179 --- Filelist | 4 + runtime/autoload/syntaxcomplete.vim | 179 + runtime/doc/autocmd.txt | 8 +- runtime/doc/cmdline.txt | 4 +- runtime/doc/develop.txt | 84 +- runtime/doc/eval.txt | 9 +- runtime/doc/if_mzsch.txt | 21 +- runtime/doc/index.txt | 5 +- runtime/doc/insert.txt | 49 +- runtime/doc/map.txt | 11 +- runtime/doc/message.txt | 5 +- runtime/doc/motion.txt | 7 +- runtime/doc/options.txt | 9 +- runtime/doc/pattern.txt | 16 +- runtime/doc/quickfix.txt | 30 +- runtime/doc/quickref.txt | 6 +- runtime/doc/spell.txt | 436 ++- runtime/doc/syntax.txt | 4 +- runtime/doc/tags | 4 +- runtime/doc/todo.txt | 110 +- runtime/doc/various.txt | 3 +- runtime/doc/version7.txt | 16 +- runtime/doc/vi_diff.txt | 6 +- runtime/filetype.vim | 7 +- runtime/makemenu.vim | 4 +- runtime/optwin.vim | 4 +- runtime/spell/en.ascii.spl | Bin 566667 -> 567989 bytes runtime/spell/en.ascii.sug | Bin 0 -> 555631 bytes runtime/spell/en.latin1.spl | Bin 568766 -> 570088 bytes runtime/spell/en.latin1.sug | Bin 0 -> 556457 bytes runtime/spell/en.utf-8.spl | Bin 569197 -> 570519 bytes runtime/spell/en.utf-8.sug | Bin 0 -> 556527 bytes runtime/syntax/eviews.vim | 104 + runtime/syntax/gretl.vim | 102 + runtime/syntax/r.vim | 21 +- runtime/syntax/vim.vim | 10 +- src/Makefile | 3 + src/buffer.c | 6 +- src/edit.c | 9 + src/eval.c | 21 +- src/ex_cmds.c | 4 +- src/ex_cmds.h | 6 +- src/ex_docmd.c | 7 +- src/ex_getln.c | 25 +- src/feature.h | 9 + src/fileio.c | 2 +- src/globals.h | 7 +- src/gui_gtk_x11.c | 1 + src/hashtable.c | 25 + src/memline.c | 146 +- src/message.c | 2 +- src/misc1.c | 4 + src/misc2.c | 6 +- src/po/it.po | 150 +- src/proto/eval.pro | 1 + src/proto/hashtable.pro | 1 + src/proto/memline.pro | 61 +- src/proto/spell.pro | 4 +- src/quickfix.c | 40 +- src/screen.c | 11 +- src/spell.c | 5214 +++++++++++++++++++-------- src/structs.h | 22 +- src/testdir/test58.ok | 14 +- src/testdir/test59.ok | 14 +- src/testdir/test60.in | 262 +- src/testdir/test60.ok | 76 +- src/testdir/test60.vim | 97 + src/version.h | 4 +- 68 files changed, 5542 insertions(+), 1990 deletions(-) create mode 100644 runtime/autoload/syntaxcomplete.vim create mode 100644 runtime/spell/en.ascii.sug create mode 100644 runtime/spell/en.latin1.sug create mode 100644 runtime/spell/en.utf-8.sug create mode 100644 runtime/syntax/eviews.vim create mode 100644 runtime/syntax/gretl.vim create mode 100644 src/testdir/test60.vim diff --git a/Filelist b/Filelist index 9b57eb35b4..59ec95646b 100644 --- a/Filelist +++ b/Filelist @@ -77,6 +77,7 @@ SRC_ALL = \ src/testdir/*.in \ src/testdir/test[0-9]*.ok \ src/testdir/test49.vim \ + src/testdir/test60.vim \ src/proto.h \ src/proto/buffer.pro \ src/proto/charset.pro \ @@ -683,6 +684,9 @@ LANG_GEN_BIN = \ runtime/spell/en.ascii.spl \ runtime/spell/en.latin1.spl \ runtime/spell/en.utf-8.spl \ + runtime/spell/en.ascii.sug \ + runtime/spell/en.latin1.sug \ + runtime/spell/en.utf-8.sug \ # all files for lang archive LANG_SRC = \ diff --git a/runtime/autoload/syntaxcomplete.vim b/runtime/autoload/syntaxcomplete.vim new file mode 100644 index 0000000000..367847c9b5 --- /dev/null +++ b/runtime/autoload/syntaxcomplete.vim @@ -0,0 +1,179 @@ +" Vim completion script +" Language: All languages, uses existing syntax highlighting rules +" Maintainer: David Fishburn +" Version: 1.0 +" Last Change: Sun Jan 08 2006 10:17:51 PM + +" Set completion with CTRL-X CTRL-O to autoloaded function. +if exists('&ofu') + setlocal ofu=syntaxcomplete#Complete +endif + +if exists('g:loaded_syntax_completion') + finish +endif +let g:loaded_syntax_completion = 1 + +" This script will build a completion list based on the syntax +" elements defined by the files in $VIMRUNTIME/syntax. + +let s:syn_remove_words = 'match,matchgroup=,contains,'. + \ 'links to,start=,end=,nextgroup=' + +let s:cache_name = [] +let s:cache_list = [] + +" This function is used for the 'omnifunc' option. +function! syntaxcomplete#Complete(findstart, base) + + if a:findstart + " Locate the start of the item, including "." + let line = getline('.') + let start = col('.') - 1 + let lastword = -1 + while start > 0 + if line[start - 1] =~ '\w' + let start -= 1 + elseif line[start - 1] =~ '\.' + " The user must be specifying a column name + if lastword == -1 + let lastword = start + endif + let start -= 1 + let b:sql_compl_type = 'column' + else + break + endif + endwhile + + " Return the column of the last word, which is going to be changed. + " Remember the text that comes before it in s:prepended. + if lastword == -1 + let s:prepended = '' + return start + endif + let s:prepended = strpart(line, start, lastword - start) + return lastword + endif + + let base = s:prepended . a:base + + let list_idx = index(s:cache_name, &filetype, 0, &ignorecase) + if list_idx > -1 + let compl_list = s:cache_list[list_idx] + else + let compl_list = s:SyntaxList() + let s:cache_name = add( s:cache_name, &filetype ) + let s:cache_list = add( s:cache_list, compl_list ) + endif + + " Return list of matches. + + if base =~ '\w' + let compstr = join(compl_list, ' ') + let compstr = substitute(compstr, '\<\%('.base.'\)\@!\w\+\s*', '', 'g') + let compl_list = split(compstr, '\s\+') + endif + + return compl_list +endfunc + +function! s:SyntaxList() + let saveL = @l + + " Loop through all the syntax groupnames, and build a + " syntax file which contains these names. This can + " work generically for any filetype that does not already + " have a plugin defined. + " This ASSUMES the syntax groupname BEGINS with the name + " of the filetype. From my casual viewing of the vim7\sytax + " directory. + redir @l + silent! exec 'syntax list ' + redir END + + let syntax_groups = @l + let @l = saveL + + if syntax_groups =~ 'E28' + \ || syntax_groups =~ 'E411' + \ || syntax_groups =~ 'E415' + \ || syntax_groups =~ 'No sytax items' + return -1 + endif + + " Abort names - match, links to, matchgroup=, start=, contains=, contained, + " cluster=, nextgroup=, end= + let next_group_regex = '\n' . + \ '\zs'.&filetype.'\w\+\ze'. + \ '\s\+xxx\s\+'. + \ '\<\('. + \ substitute(s:syn_remove_words, ',', '\\|', 'g'). + \ '\)\@!' + let syn_list = '' + let index = 0 + let index = match(syntax_groups, next_group_regex, index) + + + while index > 0 + let group_name = matchstr( syntax_groups, '\w\+', index ) + + let extra_syn_list = s:SyntaxGroupItems(group_name) + + let syn_list = syn_list . extra_syn_list . "\n" + + let index = index + strlen(group_name) + let index = match(syntax_groups, next_group_regex, index) + endwhile + + return sort(split(syn_list)) +endfunction + +function! s:SyntaxGroupItems( group_name ) + let saveL = @l + + " Generate (based on the syntax highlight rules) a list of + " the Statements, functions, keywords and so on available + " If this needs updating, the syntax\sql.vim file should be + " updated + redir @l + silent! exec 'syntax list ' . a:group_name + redir END + + if @l !~ 'E28' + " let syn_list = substitute( @l, '^.*xxx\s*\%(contained\s*\)\?', "", '' ) + let syn_list = substitute( @l, '^.*xxx\s*', "", '' ) + + " We only want the words for the lines begining with + " containedin, but there could be other items. + + " Tried to remove all lines that do not begin with contained + " but this does not work in all cases since you can have + " contained nextgroup=... + " So this will strip off the ending of lines with known + " keywords. + let syn_list = substitute( syn_list, '\<\('. + \ substitute( + \ escape( s:syn_remove_words, '\\/.*$^~[]') + \ , ',', '\\|', 'g'). + \ '\).\{-}\%($\|'."\n".'\)' + \ , "\n", 'g' ) + + " Now strip off the newline + blank space + contained + let syn_list = substitute( syn_list, '\%(^\|\n\)\@<=\s*\<\('. + \ 'contained\)' + \ , "", 'g' ) + + " There are a number of items which have non-word characters in + " them, *'T_F1'*. vim.vim is one such file. + " This will replace non-word characters with spaces. + let syn_list = substitute( syn_list, '[^0-9A-Za-z_ ]', ' ', 'g' ) + else + let syn_list = '' + endif + + let @l = saveL + + return syn_list +endfunction + diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index 28edb4d4bb..e83309a8d9 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -1,4 +1,4 @@ -*autocmd.txt* For Vim version 7.0aa. Last change: 2005 Dec 18 +*autocmd.txt* For Vim version 7.0aa. Last change: 2006 Jan 08 VIM REFERENCE MANUAL by Bram Moolenaar @@ -330,7 +330,7 @@ BufEnter After entering a buffer. Useful for setting *BufFilePost* BufFilePost After changing the name of the current buffer with the ":file" or ":saveas" command. - *BufReadCmd* + *BufFilePre* BufFilePre Before changing the name of the current buffer with the ":file" or ":saveas" command. *BufHidden* @@ -368,10 +368,10 @@ BufRead or BufReadPost When starting to edit a new buffer, after This does NOT work for ":r file". Not used when the file doesn't exist. Also used after successfully recovering a file. - *BufReadPre* *E200* *E201* + *BufReadCmd* BufReadCmd Before starting to edit a new buffer. Should read the file into the buffer. |Cmd-event| - *BufFilePre* + *BufReadPre* *E200* *E201* BufReadPre When starting to edit a new buffer, before reading the file into the buffer. Not used if the file doesn't exist. diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt index 72b3c295fe..d12c1ea779 100644 --- a/runtime/doc/cmdline.txt +++ b/runtime/doc/cmdline.txt @@ -1,4 +1,4 @@ -*cmdline.txt* For Vim version 7.0aa. Last change: 2005 Dec 27 +*cmdline.txt* For Vim version 7.0aa. Last change: 2005 Dec 30 VIM REFERENCE MANUAL by Bram Moolenaar @@ -198,6 +198,8 @@ CTRL-\ e {expr} *c_CTRL-\_e* The cursor position is unchanged, except when the cursor was at the end of the line, then it stays at the end. |setcmdpos()| can be used to set the cursor position. + The |sandbox| is used for evaluating the expression to avoid + nasty side effects. Example: > :cmap eAppendSome() :func AppendSome() diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt index 498833c5a7..4d12d166c0 100644 --- a/runtime/doc/develop.txt +++ b/runtime/doc/develop.txt @@ -1,4 +1,4 @@ -*develop.txt* For Vim version 7.0aa. Last change: 2005 Sep 01 +*develop.txt* For Vim version 7.0aa. Last change: 2006 Jan 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -382,8 +382,8 @@ checking engine in Vim, for various reasons: them separately from Vim. That's mostly not impossible, but a drawback. - Performance: A few tests showed that it's possible to check spelling on the fly (while redrawing), just like syntax highlighting. But the mechanisms - used by other code are much slower. Myspell uses a simplistic hashtable, - for example. + used by other code are much slower. Myspell uses a hashtable, for example. + The affix compression that most spell checkers use makes it slower too. - For using an external program like aspell a communication mechanism would have to be setup. That's complicated to do in a portable way (Unix-only would be relatively simple, but that's not good enough). And performance @@ -399,14 +399,88 @@ checking engine in Vim, for various reasons: another program or library would be acceptable. But the word lists probably differ, the suggestions may be wrong words. + +Spelling suggestions *develop-spell-suggestions* + +For making suggestions there are two basic mechanisms: +1. Try changing the bad word a little bit and check for a match with a good + word. Or go through the list of good words, change them a little bit and + check for a match with the bad word. The changes are deleting a character, + inserting a character, swapping two characters, etc. +2. Perform soundfolding on both the bad word and the good words and then find + matches, possibly with a few changes like with the first mechanism. + +The first is good for finding typing mistakes. After experimenting with +hashtables and looking at solutions from other spell checkers the conclusion +was that a trie (a kind of tree structure) is ideal for this. Both for +reducing memory use and being able to try sensible changes. For example, when +inserting a character only characters that lead to good words need to be +tried. Other mechanisms (with hashtables) need to try all possible letters at +every position in the word. Also, a hashtable has the requirement that word +boundaries are identified separately, while a trie does not require this. +That makes the mechanism a lot simpler. + +Soundfolding is useful when someone knows how the words sounds but doesn't +know how it is spelled. For example, the word "dictionary" might be written +as "daktonerie". The number of changes that the first method would need to +try is very big, it's hard to find the good word that way. After soundfolding +the words become "tktnr" and "tkxnry", these differ by only two letters. + +To find words by their soundfolded equivalent (soundalike word) we need a list +of all soundfolded words. A few experiments have been done to find out what +the best method is. Alternatives: +1. Do the sound folding on the fly when looking for suggestions. This means + walking through the trie of good words, soundfolding each word and + checking how different it is from the bad word. This is very efficient for + memory use, but takes a long time. On a fast PC it takes a couple of + seconds for English, which can be acceptable for interactive use. But for + some languages it takes more than ten seconds (e.g., German, Catalan), + which is unacceptable slow. For batch processing (automatic corrections) + it's to slow for all languages. +2. Use a trie for the soundfolded words, so that searching can be done just + like how it works without soundfolding. This requires remembering a list + of good words for each soundfolded word. This makes finding matches very + fast but requires quite a lot of memory, in the order of 1 to 10 Mbyte. + For some languages more than the original word list. +3. Like the second alternative, but reduce the amount of memory by using affix + compression and store only the soundfolded basic word. This is what Aspell + does. Disadvantage is that affixes need to be stripped from the bad word + before soundfolding it, which means that mistakes at the start and/or end + of the word will cause the mechanism to fail. Also, this becomes slow when + the bad word is quite different from the good word. + +The choice made is to use the second mechanism and use a separate file. This +way a user with sufficient memory can get very good suggestions while a user +who is short of memory or just wants the spell checking and no suggestions +doesn't use so much memory. + + +Word frequency + +For sorting suggestions it helps to know which words are common. In theory we +could store a word frequency with the word in the dictionary. However, this +requires storing a count per word. That degrades word tree compression a lot. +And maintaining the word frequency for all languages will be a heavy task. +Also, it would be nice to prefer words that are already in the text. This way +the words that appear in the specific text are preferred for suggestions. + +What has been implemented is to count words that have been seen during +displaying. A hashtable is used to quickly find the word count. The count is +initialized from words listed in COMMON items in the affix file, so that it +also works when starting a new file. + +This isn't ideal, because the longer Vim is running the higher the counts +become. But in practice it is a noticable improvement over not using the word +count. + ============================================================================== 4. Assumptions *design-assumptions* Size of variables: char 8 bit signed char_u 8 bit unsigned -int 16, 32 or 64 bit signed -unsigned 16, 32 or 64 bit unsigned +int 32 or 64 bit signed (16 might be possible with limited features) +unsigned 32 or 64 bit unsigned (16 as with ints) long 32 or 64 bit signed, can hold a pointer Note that some compilers cannot handle long lines or strings. The C89 diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 7d70582016..4c527e1a12 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.0aa. Last change: 2005 Dec 27 +*eval.txt* For Vim version 7.0aa. Last change: 2006 Jan 09 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1419,7 +1419,7 @@ v:swapchoice |SwapExists| autocommands can set this to the selected choice no SwapExists autocommand. The default is empty. *v:swapcommand* *swapcommand-variable* -v:swapcommand Normal mode ommand to be executed after a file has been +v:swapcommand Normal mode command to be executed after a file has been opened. Can be used for a |SwapExists| autocommand to have another Vim open the file and jump to the right place. For example, when jumping to a tag the value is ":tag tagname\r". @@ -4381,6 +4381,10 @@ system({expr} [, {input}]) *system()* *E677* The resulting error code can be found in |v:shell_error|. This function will fail in |restricted-mode|. + + Note that any wrong value in the options mentioned above may + make the function fail. It has also been reported to fail + when using a security agent application. Unlike ":!cmd" there is no automatic check for changed files. Use |:checktime| to force a check. @@ -6814,6 +6818,7 @@ These items are not allowed in the sandbox: - executing a shell command - reading or writing a file - jumping to another buffer or editing a file + - executing Python, Perl, etc. commands This is not guaranteed 100% secure, but it should block most attacks. *:san* *:sandbox* diff --git a/runtime/doc/if_mzsch.txt b/runtime/doc/if_mzsch.txt index 0580891e24..d0fd793a26 100644 --- a/runtime/doc/if_mzsch.txt +++ b/runtime/doc/if_mzsch.txt @@ -1,4 +1,4 @@ -*if_mzsch.txt* For Vim version 7.0aa. Last change: 2005 May 08 +*if_mzsch.txt* For Vim version 7.0aa. Last change: 2006 Jan 05 VIM REFERENCE MANUAL by Sergey Khorev @@ -10,6 +10,7 @@ The MzScheme Interface to Vim *mzscheme* *MzScheme* 2. Examples |mzscheme-examples| 3. Threads |mzscheme-threads| 4. The Vim access procedures |mzscheme-vim| +5. Dynamic loading |mzscheme-dynamic| {Vi does not have any of these commands} @@ -243,5 +244,23 @@ Windows *mzscheme-window* a pair (linenr . column). (set-cursor (line . col) [window]) Set cursor position. +============================================================================== +5. Dynamic loading *mzscheme-dynamic* + +On MS-Windows the MzScheme libraries can be loaded dynamically. The |:version| +output then includes |+mzscheme/dyn|. + +This means that Vim will search for the MzScheme DLL files only when needed. +When you don't use the MzScheme interface you don't need them, thus you can +use Vim without these DLL files. + +To use the MzScheme interface the MzScheme DLLs must be in your search path. +In a console window type "path" to see what directories are used. + +The names of the DLLs must match the MzScheme version Vim was compiled with. +For MzScheme version 209 they will be "libmzsch209_000.dll" and +"libmzgc209_000.dll". To know for sure edit "gvim.exe" and search for +"libmzsch\d\d\d_\d\d\d\.dll\c". + ====================================================================== vim:tw=78:ts=8:sts=4:ft=help:norl: diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 6c5037c882..96a6c612dd 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 7.0aa. Last change: 2005 Dec 23 +*index.txt* For Vim version 7.0aa. Last change: 2006 Jan 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1069,7 +1069,8 @@ The commands are sorted on the non-optional part of their name. |:cNfile| :cNf[ile] go to last error in previous file |:cabbrev| :ca[bbrev] like ":abbreviate" but for Command-line mode |:cabclear| :cabc[lear] clear all abbreviations for Command-line mode -|:caddfile| :cad[dfile] add error message to current quickfix list +|:caddexpr| :cad[dexpr] add errors from expr +|:caddfile| :caddf[ile] add error message to current quickfix list |:call| :cal[l] call a function |:catch| :cat[ch] part of a :try command |:cbuffer| :cb[uffer] parse error messages and jump to first error diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt index f7db100cbb..0a28038dc2 100644 --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -1,4 +1,4 @@ -*insert.txt* For Vim version 7.0aa. Last change: 2005 Dec 28 +*insert.txt* For Vim version 7.0aa. Last change: 2006 Jan 08 VIM REFERENCE MANUAL by Bram Moolenaar @@ -354,7 +354,7 @@ CTRL-G CTRL-J cursor one line down, insert start column *i_CTRL-G_CTRL-J* scroll three lines up *i_* scroll a full page up *i_* CTRL-O execute one command, return to Insert mode *i_CTRL-O* -CTRL-\ CTRL-O like CTRL-O but don't move the cursor *i_CTRL-\_CTRL-O* +CTRL-\ CTRL-O like CTRL-O but don't move the cursor *i_CTRL-\_CTRL-O* CTRL-L when 'insertmode' is set: go to Normal mode *i_CTRL-L* CTRL-G u break undo sequence, start new change *i_CTRL-G_u* ----------------------------------------------------------------------- @@ -963,8 +963,8 @@ The menu is used when: While the menu is displayed these keys have a special meaning: and : Accept the currently selected match -: Select the previous match, as if CTRL-P was used -: Select the next match, as if CTRL-N was used +: Select the previous match, as if CTRL-P was used +: Select the next match, as if CTRL-N was used : Select a match several entries back : Select a match several entries further @@ -1010,14 +1010,14 @@ When the same structure name appears in multiple places all possible members are included. -CSS *ft-css-omni* +CSS *ft-css-omni* Complete properties and their appropriate values according to CSS 2.1 specification. -(X)HTML *ft-html-omni* - *ft-xhtml-omni* +(X)HTML *ft-html-omni* + *ft-xhtml-omni* CTRL-X CTRL-O provides completion of various elements of (X)HTML files. It is designed to support writing of XHTML 1.0 Strict files but will @@ -1040,7 +1040,26 @@ Note: When used first time completion menu will be shown with little delay - this is time needed for loading of data file. -XML *ft-xml-omni* +SYNTAX *ft-syntax-omni* + +This uses the current syntax highlighting for completion. It can be used for +any filetype and provides a minimal language-sensitive completion. + +To enable code completion do: > + source $VIMRUNTIME/autoload/syntaxcomplete.vim + +You can automate this by placing this in your vimrc (after any ":filetype" +command): > + autocmd Filetype * + \ if exists('&ofu') && &ofu == "" | + \ source $VIMRUNTIME/autoload/syntaxcomplete.vim | + \ endif + +The above will set completion to this script only if a proper one does not +already exist for that filetype. + + +XML *ft-xml-omni* Vim 7 provides mechanism to context aware completion of XML files. It depends on special |xml-omni-datafile| and two commands: |:XMLns| and |:XMLent|. @@ -1056,7 +1075,7 @@ Features are: with " :XMLns xsl xsl -:XMLent {name} *:XMLent* +:XMLent {name} *:XMLent* By default entities will be completed from data file of default namespace. XMLent command should be used in case when there is no default namespace: > - :XMLent xhtml10s + :XMLent xhtml10s Usage While used in situation (after declarations from previous part, | is cursor position): > - <| + <| Will complete to appropriate XHTML tag, and in this situation: > - - :echo xmlcomplete#GetLastOpenTag("b:unaryTagsStack") + :echo xmlcomplete#GetLastOpenTag("b:unaryTagsStack") diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt index 90ebe06ebc..85155b439d 100644 --- a/runtime/doc/map.txt +++ b/runtime/doc/map.txt @@ -1,4 +1,4 @@ -*map.txt* For Vim version 7.0aa. Last change: 2005 Dec 17 +*map.txt* For Vim version 7.0aa. Last change: 2006 Jan 09 VIM REFERENCE MANUAL by Bram Moolenaar @@ -946,11 +946,10 @@ local function or uses a local mapping. Otherwise, using "" outside of a script context is an error. If you need to get the script number to use in a complicated script, you can -use this trick: > - :map xx xx - :let s:sid = maparg("xx") - :unmap xx -And remove the trailing "xx". +use this function: > + function s:SID() + return matchstr(expand(''), '\zs\d\+\ze_SID$') + endfun The "" will be shown when listing functions and mappings. This is useful to find out what they are defined to. diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt index c64b4540be..bb94867b3f 100644 --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 7.0aa. Last change: 2005 Oct 10 +*message.txt* For Vim version 7.0aa. Last change: 2006 Jan 08 VIM REFERENCE MANUAL by Bram Moolenaar @@ -19,7 +19,8 @@ The ":messages" command can be used to view previously given messages. This is especially useful when messages have been overwritten or truncated. This depends on the 'shortmess' option. -The number of remembered messages is fixed at 20. +The number of remembered messages is fixed at 20 for the tiny version and 100 +for other versions. *g<* The "g<" command can be used to see the last page of previous command output. diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt index dd95b6cc65..5570d7303f 100644 --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -1,4 +1,4 @@ -*motion.txt* For Vim version 7.0aa. Last change: 2005 Dec 12 +*motion.txt* For Vim version 7.0aa. Last change: 2006 Jan 02 VIM REFERENCE MANUAL by Bram Moolenaar @@ -386,10 +386,11 @@ These commands move over words or WORDS. *word* A word consists of a sequence of letters, digits and underscores, or a sequence of other non-blank characters, separated with white space (spaces, -tabs, ). This can be changed with the 'iskeyword' option. +tabs, ). This can be changed with the 'iskeyword' option. An empty line +is also considered to be a word. *WORD* A WORD consists of a sequence of non-blank characters, separated with white -space. An empty line is also considered to be a word and a WORD. +space. An empty line is also considered to be a WORD. A sequence of folded lines is counted for one word of a single character. "w" and "W", "e" and "E" move to the start/end of the first word or WORD after diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index e121a77c6e..c6535366dc 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.0aa. Last change: 2005 Dec 29 +*options.txt* For Vim version 7.0aa. Last change: 2006 Jan 04 VIM REFERENCE MANUAL by Bram Moolenaar @@ -4597,12 +4597,12 @@ A jump table for the options with a short description can be found at |Q_op|. This defines what bases Vim will consider for numbers when using the CTRL-A and CTRL-X commands for adding to and subtracting from a number respectively; see |CTRL-A| for more info on these commands. - alpha if included, single alphabetical characters will be + alpha If included, single alphabetical characters will be incremented or decremented. This is useful for a list with a letter index a), b), etc. - octal if included, numbers that start with a zero will be considered + octal If included, numbers that start with a zero will be considered to be octal. Example: Using CTRL-A on "007" results in "010". - hex if included, numbers starting with "0x" or "0X" will be + hex If included, numbers starting with "0x" or "0X" will be considered to be hexadecimal. Example: Using CTRL-X on "0x100" results in "0x0ff". Numbers which simply begin with a digit in the range 1-9 are always @@ -6050,6 +6050,7 @@ A jump table for the options with a short description can be found at |Q_op|. a S Argument list status as in default title. ({current} of {max}) Empty if the argument file count is zero or one. { NF Evaluate expression between '{' and '}' and substitute result. + Note that there is no '%' before the closing '}'. ( - Start of item group. Can be used for setting the width and alignment of a section. Must be followed by %) somewhere. ) - End of item group. No width fields allowed. diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index 2cc5921894..191a8d587c 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 7.0aa. Last change: 2005 Sep 12 +*pattern.txt* For Vim version 7.0aa. Last change: 2006 Jan 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -256,9 +256,13 @@ switched off by setting the 's' flag in the 'shortmess' option. The highlight method 'w' is used for this message (default: standout). *search-range* -You cannot limit the search command "/" to a certain range of lines. A trick -to do this anyway is to use the ":substitute" command with the 'c' flag. -Example: > +You can limit the search command "/" to a certain range of lines by including +\%>l items. For example, to match the word "limit" below line 199 and above +line 300: > + /\%>199l\%<300llimit +Also see |/\%>l|. + +Another way is to use the ":substitute" command with the 'c' flag. Example: > :.,300s/Pattern//gc This command will search from the cursor position until line 300 for "Pattern". At the match, you will be asked to type a character. Type 'q' to @@ -800,8 +804,8 @@ $ At end of pattern or in front of "\|" or "\)" ("|" or ")" after "\v"): */\%l* */\%>l* */\%23l Matches below a specific line. +\%<23l Matches above a specific line (lower line number). +\%>23l Matches below a specific line (higher line number). These three can be used to match specific lines in a buffer. The "23" can be any line number. The first line is 1. {not in Vi} WARNING: When inserting or deleting lines Vim does not automatically diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt index 0049a5464f..09eccb52e3 100644 --- a/runtime/doc/quickfix.txt +++ b/runtime/doc/quickfix.txt @@ -1,4 +1,4 @@ -*quickfix.txt* For Vim version 7.0aa. Last change: 2005 Sep 27 +*quickfix.txt* For Vim version 7.0aa. Last change: 2006 Jan 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -110,8 +110,8 @@ The following quickfix commands can be used: Read the error file. Just like ":cfile" but don't jump to the first error. - *:cad* *:caddfile* -:cad[dfile] [errorfile] Read the error file and add the errors from the + *:caddf* *:caddfile* +:caddf[ile] [errorfile] Read the error file and add the errors from the errorfile to the current quickfix list. If a quickfix list is not present, then a new list is created. @@ -124,17 +124,27 @@ The following quickfix commands can be used: Otherwise all lines in the buffer are used. *:cex* *:cexpr* -:cex[pr][!] {expr} Create a quickfix list using the result of {expr}. - If {expr} is a String, then each new-line terminated - line in the String is processed using 'errorformat' - and the result is added to the quickfix list. - If {expr} is a List, then each String item in the list - is processed and added to the quickfix list. - Non String items in the List are ignored. See |:cc| +:cex[pr][!] {expr} Create a quickfix list using the result of {expr} and + jump to the first error. If {expr} is a String, then + each new-line terminated line in the String is + processed using 'errorformat' and the result is added + to the quickfix list. If {expr} is a List, then each + String item in the list is processed and added to the + quickfix list. Non String items in the List are + ignored. See |:cc| for [!]. Examples: > :cexpr system('grep -n xyz *') :cexpr getline(1, '$') +< + *:cad* *:caddexpr* +:cad[dexpr][!] {expr} Evaluate {expr} and add the resulting lines to the + current quickfix list. If a quickfix list is not + present, then a new list is created. The current + cursor position will not be changed. See |:cexpr| for + more information. + Example: > + :g/mypattern/caddexpr expand("%") . ":" . line(".") . ":" . getline(".") < *:cl* *:clist* :cl[ist] [from] [, [to]] diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index 687e5cff5c..251fcc2b5b 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 7.0aa. Last change: 2005 Dec 12 +*quickref.txt* For Vim version 7.0aa. Last change: 2006 Jan 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -938,7 +938,9 @@ Short explanation of each option: *option-list* |:clist| :cl list all errors |:cfile| :cf read errors from the file 'errorfile' |:cgetfile| :cg like :cfile but don't jump to the first error -|:caddfile| :cad add errors from the error file to the current +|:caddfile| :caddf add errors from the error file to the current + quickfix list +|:caddexpr| :cad add errors from an expression to the current quickfix list |:cbuffer| :cb read errors from text in a buffer |:cexpr| :cex read errors from an expression diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt index 101e9b518b..a2989d7830 100644 --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -1,4 +1,4 @@ -*spell.txt* For Vim version 7.0aa. Last change: 2005 Dec 29 +*spell.txt* For Vim version 7.0aa. Last change: 2006 Jan 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -172,6 +172,12 @@ When there is a line break right after a sentence the highlighting of the next line may be postponed. Use |CTRL-L| when needed. Also see |set-spc-auto| for how it can be set automatically when 'spelllang' is set. +Vim counts the number of times a good word is encountered. This is used to +sort the suggestions: words that have been seen before get a small bonus, +words that have been seen often get a bigger bonus. The COMMON item in the +affix file can be used to define common words, so that this mechanism also +works in a new or short file |spell-COMMON|. + ============================================================================== 2. Remarks on spell checking *spell-remarks* @@ -296,6 +302,11 @@ A spell file might not be available in the current 'encoding'. See |spell-mkspell| about how to create a spell file. Converting a spell file with "iconv" will NOT work! + *spell-sug-file* +If there is a file with exactly the same name as the ".spl" file but ending in +".sug", that file will be used for giving better suggestions. It isn't loaded +before suggestions are made to reduce memory use. + *E758* *E759* When loading a spell file Vim checks that it is properly formatted. If you get an error the file may be truncated, modified or intended for another Vim @@ -531,6 +542,11 @@ used spelling files, use this command: Note: For some languages the result may be enormous, causing Vim to run out of memory. +:spelld[ump]! Like ":spelldump" and include the word count. This is + the number of times the word was found while + updating the screen. Words that are in COMMON items + get a starting count of 10. + The format of the word list is used |spell-wordlist-format|. You should be able to read it with ":mkspell" to generate one .spl file that includes all the words. @@ -569,13 +585,16 @@ Additionally the following items are recognized: - Empty and blank lines are ignored. + # comment ~ - Lines starting with a # are ignored (comment lines). + /encoding=utf-8 ~ - A line starting with "/encoding=", before any word, specifies the encoding of the file. After the second '=' comes an encoding name. This tells Vim to setup conversion from the specified encoding to 'encoding'. Thus you can use one word list for several target encodings. + /regions=usca ~ - A line starting with "/regions=" specifies the region names that are supported. Each region name must be two ASCII letters. The first one is region 1. Thus "/regions=usca" has region 1 "us" and region 2 "ca". @@ -583,7 +602,8 @@ Additionally the following items are recognized: list! - Other lines starting with '/' are reserved for future use. The ones that - are not recognized are ignored (but you do get a warning message). + are not recognized are ignored. You do get a warning message, so that you + know something won't work. - A "/" may follow the word with the following items: = Case must match exactly. @@ -608,17 +628,18 @@ accepted. This is different from a word with mixed case that is automatically marked as keep-case, those words may appear in all upper-case letters. -FORMAT WITH AFFIX COMPRESSION +FORMAT WITH .AFF and .DIC FILES -There are two files: the basic word list and an affix file. The affixes are +There are two files: the basic word list and an affix file. The affix file +specifies settings for the language and can contain affixes. The affixes are used to modify the basic words to get the full word list. This significantly reduces the number of words, especially for a language like Polish. This is called affix compression. -The basic word list and the affix file are combined and turned into a binary -spell file. All the preprocessing has been done, thus this file loads fast. -The binary spell file format is described in the source code (src/spell.c). -But only developers need to know about it. +The basic word list and the affix file are combined with the ":mkspell" +command and results in a binary spell file. All the preprocessing has been +done, thus this file loads fast. The binary spell file format is described in +the source code (src/spell.c). But only developers need to know about it. The preprocessing also allows us to take the Myspell language files and modify them before the Vim word list is made. The tools for this can be found in the @@ -630,39 +651,47 @@ here: http://lingucomponent.openoffice.org/affix.readme ~ Note that affixes are case sensitive, this isn't obvious from the description. -Vim does not use the TRY item, it is ignored. For making suggestions the -possible characters in the words are used. - Vim supports quite a few extras. They are described below |spell-affix-vim|. Attempts have been made to keep this compatible with other spell checkers, so -that the same files can be used. +that the same files can often be used. One other project that offers more +than Myspell is Hunspell ( http://hunspell.sf.net ). WORD LIST FORMAT *spell-dic-format* -A very short example, with line numbers: - - 1 1234 - 2 aan - 3 Als - 4 Etten-Leur - 5 et al. - 6 's-Gravenhage - 7 's-Gravenhaags - 8 bedel/P - 9 kado/1 - 10 cadeau/2 - 11 TCP,IP +A short example, with line numbers: + + 1 1234 ~ + 2 aan ~ + 3 Als ~ + 4 Etten-Leur ~ + 5 et al. ~ + 6 's-Gravenhage ~ + 7 's-Gravenhaags ~ + 8 # word that differs between regions ~ + 9 kado/1 ~ + 10 cadeau/2 ~ + 11 TCP,IP ~ + 12 /the S affix may add a 's' ~ + 13 bedel/S ~ The first line contains the number of words. Vim ignores it, but you do get an error message if it's not there. *E760* -What follows is one word per line. There should be no white space before or -after the word. After the word there is an optional slash and flags. Most of -these flags are letters that indicate the affixes that can be used with this -word. These are specified with SFX and PFX lines in the .aff file. See the -Myspell documentation. Vim allows using other flag types with the FLAG item -in the affix file |spell-FLAG|. +What follows is one word per line. White space at the end of the line is +ignored, all other white space matters. The encoding is specified in the +affix file |spell-SET|. + +Comment lines start with '#' or '/'. See the example lines 8 and 12. Note +that putting a comment after a word is NOT allowed: + + someword # comment that causes an error! ~ + +After the word there is an optional slash and flags. Most of these flags are +letters that indicate the affixes that can be used with this word. These are +specified with SFX and PFX lines in the .aff file, see |spell-SFX| and +|spell-PFX|. Vim allows using other flag types with the FLAG item in the +affix file |spell-FLAG|. When the word only has lower-case letters it will also match with the word starting with an upper-case letter. @@ -672,7 +701,7 @@ is required at this position. The same word with a lower-case letter at this position will not match. When some of the other letters are upper-case it will not match either. -The word with all upper-case characters will always be OK. +The word with all upper-case characters will always be OK, word list matches does not match ~ als als Als ALS ALs AlS aLs aLS @@ -683,46 +712,57 @@ The word with all upper-case characters will always be OK. The KEEPCASE affix ID can be used to specifically match a word with identical case only, see below |spell-KEEPCASE|. -Note in line 5 to 7 that non-word characters are used. You can include -any character in a word. When checking the text a word still only matches -when it appears with a non-word character before and after it. For Myspell a -word starting with a non-word character probably won't work. +Note: in line 5 to 7 non-word characters are used. You can include any +character in a word. When checking the text a word still only matches when it +appears with a non-word character before and after it. For Myspell a word +starting with a non-word character probably won't work. In line 12 the word "TCP/IP" is defined. Since the slash has a special meaning the comma is used instead. This is defined with the SLASH item in the -affix file, see |spell-SLASH|. Note that without this SLASH item the -word will be "TCP,IP". +affix file, see |spell-SLASH|. Note that without this SLASH item the word +will be "TCP,IP". - *spell-affix-vim* -A flag that Vim adds and is not in Myspell is the flag defined with KEEPCASE -in the affix file. This has the meaning that case matters. This can be used -if the word does not have the first letter in upper case at the start of a -sentence. Example (assuming that = was used for KEEPCASE): - word list matches does not match ~ - 's morgens/= 's morgens 'S morgens 's Morgens 'S MORGENS - 's Morgens 's Morgens 'S MORGENS 'S morgens 's morgens +AFFIX FILE FORMAT *spell-aff-format* *spell-affix-vim* -The flag can also be used to avoid that the word matches when it is in all -upper-case letters. + *spell-affix-comment* +Comment lines in the .aff file start with a '#': + + # comment line ~ +With some items it's also possible to put a comment after it, but this isn't +supported in general. + + +ENCODING *spell-SET* + +The affix file can be in any encoding that is supported by "iconv". However, +in some cases the current locale should also be set properly at the time +|:mkspell| is invoked. Adding FOL/LOW/UPP lines removes this requirement +|spell-FOL|. + +The encoding should be specified before anything where the encoding matters. +The encoding applies both to the affix file and the dictionary file. It is +done with a SET line: + + SET utf-8 ~ + +The encoding can be different from the value of the 'encoding' option at the +time ":mkspell" is used. Vim will then convert everything to 'encoding' and +generate a spell file for 'encoding'. If some of the used characters to not +fit in 'encoding' you will get an error message. *spell-affix-mbyte* -The basic word list is normally in an 8-bit encoding, which is mentioned in -the affix file. The affix file must always be in the same encoding as the -word list. This is compatible with Myspell. For Vim the encoding may also be -something else, any encoding that "iconv" supports. The "SET" line must -specify the name of the encoding. When using a multi-byte encoding it's -possible to use more different affixes (but Myspell doesn't support that, thus -you may not want to use it anyway). +When using a multi-byte encoding it's possible to use more different affix +flags. But Myspell doesn't support that, thus you may not want to use it +anyway. For compatibility use an 8-bit encoding. CHARACTER TABLES *spell-affix-chars* When using an 8-bit encoding the affix file should define what characters are -word characters (as specified with ENC). This is because the system where -":mkspell" is used may not support a locale with this encoding and isalpha() -won't work. For example when using "cp1250" on Unix. - +word characters. This is because the system where ":mkspell" is used may not +support a locale with this encoding and isalpha() won't work. For example +when using "cp1250" on Unix. *E761* *E762* *spell-FOL* *spell-LOW* *spell-UPP* Three lines in the affix file are needed. Simplistic example: @@ -774,7 +814,7 @@ the word. This is needed to detect a spelling error such as they'are. That should be they're, but since "they" and "are" are words themselves that would go unnoticed. -These characters are defined with MIDWORD in the .aff file: +These characters are defined with MIDWORD in the .aff file. Example: MIDWORD '- ~ @@ -808,9 +848,58 @@ The usual PFX (prefix) and SFX (suffix) lines are supported (see the Myspell documentation or the Aspell manual: http://aspell.net/man-html/Affix-Compression.html). -Note that Myspell ignores any extra text after the relevant info. Vim -requires this text to start with a "#" so that mistakes don't go unnoticed. -Example: +Summary: + SFX L Y 2 ~ + SFX L 0 re [^x] ~ + SFX L 0 ro x ~ + +The first line is a header and has four fields: + SFX {flag} {combine} {count} + +{flag} The name used for the suffix. Mostly it's a single letter, + but other characters can be used, see |spell-FLAG|. + +{combine} Can be 'Y' or 'N'. When 'Y' then the word plus suffix can + also have a prefix. When 'N' then a prefix is not allowed. + +{count} The number of lines following. If this is wrong you will get + an error message. + +For PFX the fields are exactly the same. + +The basic format for the following lines is: + SFX {flag} {strip} {add} {condition} + +{flag} Must be the same as the {flag} used in the first line. + +{strip} Characters removed from the basic word. There is no check if + the characters are actually there, only the length is used (in + bytes). This better match the {condition}, otherwise strange + things may happen. If the {strip} length is equal to or + longer than the basic word the suffix won't be used. + When {strip} is 0 (zero) then nothing is stripped. + +{add} Characters added to the basic word, after removing {strip}. + +{condition} A simplistic pattern. Only when this matches with a basic + word will the suffix be used for that word. This is normally + for using one suffix letter with different {add} and {strip} + fields for words with different endings. + When {condition} is a . (dot) there is no condition. + The pattern may contain: + - Literal characters. + - A set of characters in []. [abc] matches a, b and c. + A dash is allowed for a range [a-c], but this is + Vim-specific. + - A set of characters that starts with a ^, meaning the + complement of the specified characters. [^abc] matches any + character but a, b and c. + +For PFX the fields are the same, but the {strip}, {add} and {condition} apply +to the start of the word. + +Note: Myspell ignores any extra text after the relevant info. Vim requires +this text to start with a "#" so that mistakes don't go unnoticed. Example: SFX F 0 in [^i]n # Spion > Spionin ~ SFX F 0 nen in # Bauerin > Bauerinnen ~ @@ -826,16 +915,49 @@ Myspell that use this feature apparently have this flag. Example: SFX a 0 en . ~ SFX a 0 on . ~ + +AFFIX FLAGS *spell-affix-flags* + +This is a feature that comes from Hunspell: The affix may specify flags. This +works similar to flags specified on a basic word. The flags apply to the +basic word plus the affix. Example: + + SFX S Y 1 ~ + SFX S 0 s . ~ + + SFX A Y 1 ~ + SFX A 0 able/S . ~ + +When the dictionary file contains "drink/AS" then these words are possible: + + drink + drinks uses S suffix + drinkable uses A suffix + drinkables uses A suffix and then S suffix + +Generally the flags of the suffix are added to the flags of the basic word, +both are used for the word plus suffix. But the flags of the basic word are +only used once for affixes, except that both one prefix and one suffix can be +used when both support combining. + +Specifically, the affix flags can be used for: +- Affixes on affixes, as in the example above. +- Making the word with the affix rare, by using the |spell-RARE| flag. +- Exclude the word with the affix from compounding, by using the + |spell-COMPOUNDFORBIDFLAG| flag. + +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- +OLD STUFF *spell-affix-rare* An extra item for Vim is the "rare" flag. It must come after the other fields, before a comment. When used then all words that use the affix will be -marked as rare words. Example: +marked as rare words. Examples: PFX F 0 nene . rare ~ SFX F 0 oin n rare # hardly ever used ~ -However, if the word also appears as a good word in another way it won't be -marked as rare. +However, if the word also appears as a good word in another way (e.g., in +another region) it won't be marked as rare. *spell-affix-nocomp* Another extra item for Vim is the "nocomp" flag. It must come after the other @@ -852,6 +974,7 @@ Example: util/ac ~ This allows for "wordutil" and "wordutils" but not "wordutilize". +-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- *spell-PFXPOSTPONE* When an affix file has very many prefixes that apply to many words it's not @@ -891,7 +1014,16 @@ for keep-case words. Example: KEEPCASE = ~ -See above for an example |spell-affix-vim|. +This flag is not supported by Myspell. It has the meaning that case matters. +This can be used if the word does not have the first letter in upper case at +the start of a sentence. Example: + + word list matches does not match ~ + 's morgens/= 's morgens 'S morgens 's Morgens 'S MORGENS + 's Morgens 's Morgens 'S MORGENS 'S morgens 's morgens + +The flag can also be used to avoid that the word matches when it is in all +upper-case letters. RARE WORDS *spell-RARE* @@ -922,18 +1054,15 @@ This can be used to exclude words that would otherwise be good. For example Once a word has been marked as bad it won't be undone by encountering the same word as good. +The flag also applies to the word with affixes, thus this can be used to mark +a whole bunch of related words as bad. + *spell-NEEDAFFIX* The NEEDAFFIX flag is used to require that a word is used with an affix. The -word itself is not a good word. Example: +word itself is not a good word (unless there is an empty affix). Example: NEEDAFFIX + ~ - *spell-NEEDCOMPOUND* -The NEEDCOMPOUND flag is used to require that a word is used as part of a -compound word The word itself is not a good word. Example: - - NEEDCOMPOUND & ~ - COMPOUND WORDS *spell-compound* @@ -944,8 +1073,8 @@ call this character a flag here. Obviously these flags must be different from any affix IDs used. *spell-COMPOUNDFLAG* -The Myspell compatible method uses one flag, specified with COMPOUNDFLAG. -All words with this flag combine in any order. This means there is no control +The Myspell compatible method uses one flag, specified with COMPOUNDFLAG. All +words with this flag combine in any order. This means there is no control over which word comes first. Example: COMPOUNDFLAG c ~ @@ -1006,6 +1135,12 @@ A specific example: Allow a compound to be made of two words and a dash: This allows for the word "start-end", but not "startend". + *spell-NEEDCOMPOUND* +The NEEDCOMPOUND flag is used to require that a word is used as part of a +compound word. The word itself is not a good word. Example: + + NEEDCOMPOUND & ~ + *spell-COMPOUNDMIN* The minimal character length of a word used for compounding is specified with COMPOUNDMIN. Example: @@ -1037,6 +1172,17 @@ If both COMPOUNDMAX and COMPOUNDSYLMAX are defined, a compound word is accepted if it fits one of the criteria, thus is either made from up to COMPOUNDMAX words or contains up to COMPOUNDSYLMAX syllables. + *spell-COMPOUNDFORBIDFLAG* +The COMPOUNDFORBIDFLAG specifies a flag that can be used on an affix. It +means that the word plus affix cannot be used in a compound word. +NOT IMPLEMENTED YET. + + *spell-COMPOUNDPERMITFLAG* +The COMPOUNDPERMITFLAG specifies a flag that can be used on an affix. It +means that the word plus affix can also be used in a compound word in a way +where the affix ends up halfway the word. +NOT IMPLEMENTED YET. + *spell-SYLLABLE* The SYLLABLE item defines characters or character sequences that are used to count the number of syllables in a word. Example: @@ -1105,6 +1251,30 @@ lists that support this. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< + *spell-COMMON* +Common words can be specified with the COMMON item. This will give better +suggestions when editing a short file. Example: + + COMMON the of to and a in is it you that he was for on are ~ + +The words must be separated by white space, up to 25 per line. +When multiple regions are specified in a ":mkspell" command the common words +for all regions are combined and used for all regions. + + *spell-NOSPLITSUGS* +This item indicates that suggestions for splitting a word will not appear: + + NOSPLITSUGS ~ + + *spell-NOSUGGEST* +The flag specified with NOSUGGEST can be used for words that will not be +suggested. Can be used for obscene words. + + NOSUGGEST % ~ + +NOT IMPLEMENTED YET. + + REPLACEMENTS *spell-REP* In the affix file REP items can be used to define common mistakes. This is @@ -1118,7 +1288,7 @@ used to make spelling suggestions. The items define the "from" text and the REP ch k ~ The first line specifies the number of REP lines following. Vim ignores the -number, but it must be there. +number, but it must be there (for compatibility with Myspell). Don't include simple one-character replacements or swaps. Vim will try these anyway. You can include whole words if you want to, but you might want to use @@ -1146,6 +1316,17 @@ Each letter must appear in only one of the MAP items. It's a bit more efficient if the first letter is ASCII or at least one without accents. +.SUG FILE *spell-NOSUGFILE* + +When soundfolding is specified in the affix file then ":mkspell" will normally +p ~ ~roduce a .sug file next to the .spl file. This used to find suggestions by +their sound-a-like form quickly. At the cost of a lot of memory. + +To avoid producing a .sug file use this item in the affix file: + + NOSUGFILE ~ + + SOUND-A-LIKE *spell-SAL* In the affix file SAL items can be used to define the sounds-a-like mechanism @@ -1197,4 +1378,105 @@ You can use the |soundfold()| function to try out the results. Or set the 'verbose' option to see the score in the output of the |z=| command. +UNSUPPORTED ITEMS *spell-affix-not-supported* + +These items appear in the affix file of other spell checkers. In Vim they are +ignored, not supported or defined in another way. + +ACCENT (Hunspell) *spell-ACCENT* + Use MAP instead. |spell-MAP| + +CHECKCOMPOUNDCASE (Hunspell) *spell-CHECKCOMPOUNDCASE* + Disallow uppercase letters at compound word boundaries. + Not supported. + +CHECKCOMPOUNDDUP (Hunspell) *spell-CHECKCOMPOUNDDUP* + Disallow using the same word twice in a compound. Not + supported. + +CHECKCOMPOUNDREP (Hunspell) *spell-CHECKCOMPOUNDREP* + Something about using REP items and compound words. Not + supported. + +CHECKCOMPOUNDTRIPLE (Hunspell) *spell-CHECKCOMPOUNDTRIPLE* + Forbid three identical characters when compounding. Not + supported. + +CHECKCOMPOUNDPATTERN (Hunspell) *spell-CHECKCOMPOUNDPATTERN* + Forbid compounding when patterns match. Not supported. + +CIRCUMFIX (Hunspell) *spell-CIRCUMFIX* + This means a prefix and suffix must be added at the same time. + Instead only specify the suffix, and give the that suffix two + flags: The required prefix and the NEEDAFFIX flag. + |spell-NEEDAFFIX| + +COMPLEXPREFIXES (Hunspell) *spell-COMPLEXPREFIXES* + Enables using two prefixes. Not supported. + +COMPOUNDBEGIN (Hunspell) *spell-COMPOUNDBEGIN* + Use COMPOUNDFLAGS instead. |spell-COMPOUNDFLAGS| + +COMPOUNDEND (Hunspell) *spell-COMPOUNDEND* + Use COMPOUNDFLAGS instead. |spell-COMPOUNDFLAGS| + +COMPOUNDMIDDLE (Hunspell) *spell-COMPOUNDMIDDLE* + Use COMPOUNDFLAGS instead. |spell-COMPOUNDFLAGS| + +COMPOUNDROOT (Hunspell) *spell-COMPOUNDROOT* + Flag for words in the dictionary that are already a compound. + Vim doesn't use it. + +COMPOUNDSYLLABLE (Hunspell) *spell-COMPOUNDSYLLABLE* + Use SYLLABLE and COMPOUNDSYLMAX instead. |spell-SYLLABLE| + |spell-COMPOUNDSYLMAX| + +COMPOUNDWORDMAX (Hunspell) *spell-COMPOUNDWORDMAX* + Use COMPOUNDMAX instead. |spell-COMPOUNDMAX| + +FORBIDDENWORD (Hunspell) *spell-FORBIDDENWORD* + Use BAD instead. |spell-BAD| + +HOME (Hunspell) *spell-HOME* + Specifies the website for the language. Not supported. + +LANG (Hunspell) *spell-LANG* + This specifies language-specific behavior. This actually + moves part of the language knowledge into the program, + therefore Vim does not support it. Each language property + must be specified separately. + +LEMMA_PRESENT (Hunspell) *spell-LEMMA_PRESENT* + Only needed for mprphological analysis. + +MAXNGRAMSUGS (Hunspell) *spell-MAXNGRAMSUGS* + Not supported. + +NAME (Hunspell) *spell-NAME* + Specifies the name of the language. Not supported. + +ONLYINCOMPOUND (Hunspell) *spell-ONLYINCOMPOUND* + Use NEEDCOMPOUND instead. |spell-NEEDCOMPOUND| + +PSEUDOROOT (Hunspell) *spell-PSEUDOROOT* + Use NEEDAFFIX instead. |spell-NEEDAFFIX| + +SUGSWITHDOTS (Hunspell) *spell-SUGSWITHDOTS* + Adds dots to suggestions. Vim doesn't need this. + +SYLLABLENUM (Hunspell) *spell-SYLLABLENUM* + Not supported. + +TRY (Myspell, Hunspell, others) *spell-TRY* + Vim does not use the TRY item, it is ignored. For making + suggestions the actual characters in the words are used. + +VERSION (Hunspell) *spell-VERSION* + Specifies the version for the language. Not supported. + +WORDCHARS (Hunspell) *spell-WORDCHARS* + Used to recognize words. Vim doesn't need it, because there + is no need to separate words before checking them (using a + trie instead of a hashtable). + vim:tw=78:sw=4:ts=8:ft=help:norl: diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 02a4ea016c..2ded3f2eb4 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.0aa. Last change: 2005 Nov 30 +*syntax.txt* For Vim version 7.0aa. Last change: 2005 Dec 31 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3245,7 +3245,7 @@ A more complicated Example: > < abcfoostringbarabc mmmmmmmmmmm match - ssrrrreee highlight start/region/end ("Foo", "Exa" and "Bar") + sssrrreee highlight start/region/end ("Foo", "Exa" and "Bar") Leading context *:syn-lc* *:syn-leading* *:syn-context* diff --git a/runtime/doc/tags b/runtime/doc/tags index c2ec052d68..187a06e1bf 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -1782,7 +1782,9 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :cabbrev map.txt /*:cabbrev* :cabc map.txt /*:cabc* :cabclear map.txt /*:cabclear* -:cad quickfix.txt /*:cad* +:cadde quickfix.txt /*:cadde* +:caddexpr quickfix.txt /*:caddexpr* +:caddf quickfix.txt /*:caddf* :caddfile quickfix.txt /*:caddfile* :cal eval.txt /*:cal* :call eval.txt /*:call* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 745e4b7899..542e6f133e 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.0aa. Last change: 2005 Dec 29 +*todo.txt* For Vim version 7.0aa. Last change: 2006 Jan 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,25 +30,81 @@ be worked on, but only if you sponsor Vim development. See |sponsor|. *known-bugs* -------------------- Known bugs and current work ----------------------- +Find E999 and hand out numbers. + +Compress list of word numbers: sort them, computer differences, store as utf-8 +bytes. + +Undo bug: Gerald Lai Jan 3. + +Syntax HL: when region start has an offset that happens to be after the end of +the line then strange things happen. (Brett Stahlman Dec 31) + +Add Python complete script (Aaron Griffin) + +Evaluating CTRL-R = in the sandbox causes trouble (G. Sumner Hayes). Can the +rules for the commandline window be used? + +Evaluate 'balloonexpr' in the sandbox only when it was set from an unsafe +place (e.g., modeline)? Patch from Sumner Hayes, Jan 12. Also use for other +options? + +":saveas asdf.c" should set 'filetype' to c when it's empty. Also for ":w +asdf.c" when it sets the buffer filename. + ccomplete: +- When using page-up/page-down in menu it sometimes jumps more than a page. - When an option is set: In completion mode and the user types (identifier) characters, advance to the first match instead of removing the popup menu. If there is no match remove the selection. (Yegappan Lakshmanan) - Complete the longest common match instead of the first match? For all kinds of completions? Configurable? -- Window resize when poup is displayed +- Window resize when poup is displayed. - When completing something that is a structure, add the "." or "->" right away. How to figure out if it's a pointer or not? - When a typedef or struct is local to a file only use it in that file? +- Extra info for each entry to show in a tooltip kind of thing. +- Special mappings for when the popup menu is visible? Would allow for making + a specific selection (e.g, methods vs variables). +- Provide a function to popup the menu, so that an insert mode mapping can + start it (with a specific selection). - !_TAG_FILE_FORMAT and it's ilk are listed in the global completions Can't reproduce it right now... spelling: -- Hunspell has NOSUGGEST flag (use for obscene words?) -- Check out Hunspell 1.1.2. +- NL woordenlijst naar Adri sturen. +- Include script to cleanup a .add file. (Antonio Colombo, Jan 9) +- suggestions for "macARONI" doesn't include "macaroni", they are all allcap. + suggestion for "KG" to "kg" when it's keepcase. +- Autocommand event for when a spell file is missing. Allows making a plugin + that fetches the file over internet. Pattern == language. +- Using KEEPCASE flag still allows all-upper word, docs say it doesn't. + Don't allow it, because there is no other way to do this. +- Implement NOSUGGEST flag (used for obscene words). +- Implement NOSPLITSUGS. +- Rename COMPOUNDFLAGS to COMPOUNDPATTERN or COMPOUNDRULE? + Hunspell now uses COMPOUND with a count. +- Check out Hunspell 1.1.3. + what does MAXNGRAMSUGS do? + See announcement (Nemeth, 5 jan) + use "\/" instead of SLASH item? + is COMPLEXPREFIXES necessary now that we have flags for affixes? - Look into hungarian dictionary: - http://magyarispell.sourceforge.net/rc3-beta2.zip -- Support breakpoint character · 0xb7 and ignore it? + http://magyarispell.sourceforge.net/hu_HU-1.0.tar.gz +- Support flags on a suffix. Used for second level affixes, rare and + nocomp. The flags may also be used for compounding. Default is an OR + mechanism with the flags of the word. Adding "compset" on the affixes + means the compound flags of the word are not used. + Instead of "SFX a 0 add/FLAGS ." we could use "SFX a 0 add . /FLAGS" (or + support both). +- When compounding Hunspell doesn't allow affixes inside the compound word, + only before and after it. COMPOUNDPERMITFLAG can be used to allow it. + Check Myspell and Aspell if they also work this way. + Thus a word + suffix needs a flag that it can't be used with a following + compound, and word + prefix can't be after another word in a compound. +- Implement COMPOUNDFORBIDFLAG. +- Support breakpoint character · 0xb7 and ignore it? Makes it possible to use + same wordlist for hyphenation. 8 Alternate Dutch word list at www.nederlandsewoorden.nl (use script to obtain). But new Myspell wordlist will come (Hagen) - Finding suggestions with sound folding is slow. Somehow store the @@ -56,6 +112,9 @@ spelling: - Also use the spelling dictionary for dictionary completion. - Have "zg" and "zw" report the file that was modified. (Marvin Renich) - Add a command like "zg" that selects one of the files 'spellfile'. +- Add a "zug" command that undoes "zg"? Deletes the good word instead of + adding a bad word like "zw" would. Use "zuw" to undo "zw"? (Antonio + Colombo) GTK: get an X error while exiting quickly after starting (running the tests). Caused by new GTK library? @@ -66,6 +125,18 @@ Support saving and restoring session for X windows? It should work to do gui_x11_wm_protocol_handler() already takes care of the rest. global_event_filter() for GTK. +Is it easy to have an item in a pattern that matches with a mark location? +Similar to |/\%>l| and |/\%c|. (Benji Fisher) + +Patch to support lists and dicts for the Python interface. (G. Sumner Hayes, +Jan 12). Docs in a previous patch. +Use free_tv() instead of clear_tv() and vim_free(). + +Win32 installer: Default _vimrc contains absolute path to diff.exe. After +upgrading it becomes invalid. Fix it automatically somehow? Use $VIMRUNTIME +in the path instead of filling it the path? At least give a clear error +message. + In diff mode deleting lines is very slow. E.g., when diffing two .po files and then sourcing po/cleaup.vim. @@ -278,6 +349,7 @@ PLANNED FOR VERSION 7.0: 8 Support four composing/combining characters, needed for Hebrew. (Ron Aaron) Add the 'maxcombining' option to set the nr. of composing characters. At the same time support more colors (use two bytes when necessary). +8 "ga" should show all composing characters, also if there are more than 2. 8 Searching for a composing character by itself should work. Perhaps "." with a composing char should work too. - Add a few more things to 'diffopt': "horizontal", "vertical", @@ -368,6 +440,7 @@ Add gui_mch_browsedir() for Motif, Mac OS/X. Add extra list of file locations. A bit like the quickfix list, but there is one per window. Can be used with: :ltag list of matching tags, like :tselect +Patch from Yegappan Lakshmanan, Jan 9. Commands to use the location list: :lnext next location :lprevious :lNext previous location @@ -404,6 +477,11 @@ Add more tests for all new functionality in Vim 7. Especially new functions. Updated Ruby interface. (Ryan Paul) +'errorformat' docs are a bit unclear. Suggestions by Charles Campbell (2006 +Jan 6) +Add a flag to check for a match with the next item first? Helps for +continuation lines that may contain just about anything. + Awaiting updated patches: --- awaiting updated patch --- 8 Add ":n" to fnamemodify(): normalize path, remove "../" when possible. @@ -1395,12 +1473,8 @@ Spell checking: - Compound word is accepted if nr of words is <= COMPOUNDMAX OR nr of syllables <= COMPOUNDSYLMAX. Specify using AND in the affix file? - COMPOUNDMAX -> COMPOUNDWORDMAX? -- Support flags on a suffix. Used for second level affixes. The flags may - also be used for compounding. Default is an OR mechanism with the flags - of the word. Adding "compset" on the affixes means the compound flags of - the word are not used. Instead of "SFX a 0 add/FLAGS ." we could use "SFX - a 0 add . /FLAGS" (or support both). -- NEEDCOMPOUND also used for affix? Or use "needcomp" after affix? +- NEEDCOMPOUND also used for affix? Or is this called ONLYINCOMPOUND now? + Or is ONLYINCOMPOUND only for inside a compound, not at start or end? - Do we need a flag for the rule that when compounding is done the following word doesn't have a capital after a word character, even for Onecap words? - New hunspell home page: http://hunspell.sourceforge.net/ @@ -1425,8 +1499,8 @@ Spell checking: - Add flags to count extra syllables in a word. SYLLABLEADD1 SYLLABLEADD2, etc.? Or make it possible to specify the syllable count of a word directly, e.g., after another slash: /abc/3 -- MORPHO item in affix file: ignore morphological fields after word and - affix. +- MORPHO item in affix file: ignore TAB and morphological field after + word/flags and affix. - Implement multiple flags for compound words and CMP item? Await comments from other spell checking authors. - Also see tklspell: http://tkltrans.sourceforge.net/ @@ -1487,8 +1561,8 @@ Folding: - 'foldmethod' "textobject": fold on sections and paragraph text objects. - Add 'hidecomment' option: don't display comments in /* */ and after //. Or is the conceal patch from Vince Negri a more generic solution? -- "zu": undo change in manual fold. "zU" redo change in manual fold. How to - implement this? +- "zuf": undo change in manual fold. "zUf" redo change in manual fold. How + to implement this? - "zJ" command: add the line or fold below the fold in the fold under the cursor. - 'foldmethod' "syntax": "fold=3": set fold level for a region. @@ -1525,7 +1599,6 @@ Multi-byte characters: 8 Should add test for using various commands with multi-byte characters. 8 'infercase' doesn't work with multi-byte characters. 8 toupper() function doesn't handle byte count changes. -8 "ga" should show all composing characters, also if there are more than 2. 7 When searching, should order of composing characters be ignored? 8 Should implement 'delcombine' for command line editing. 8 Detect overlong UTF-8 sequences and handle them like illegal bytes. @@ -2814,8 +2887,9 @@ Incsearch: Searching: -7 Add "g/" and "gb" to search for a pattern in the Visually selected text? +8 Add "g/" and "gb" to search for a pattern in the Visually selected text? "g?" is already used for rot13. + Can use "g/" in Normal mode, uses the '< to '> area. 8 Add a mechanism for recursiveness: "\@(([^()]*\@g[^()]*)\)". \@g stands for "go recursive here" and \@( \) marks the recursive part. Perl does it this way: diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index b4172ccb12..4cb9687cd5 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.0aa. Last change: 2005 Oct 14 +*various.txt* For Vim version 7.0aa. Last change: 2006 Jan 08 VIM REFERENCE MANUAL by Bram Moolenaar @@ -321,6 +321,7 @@ B *+multi_byte* Korean and other languages |multibyte| *+multi_byte_ime* Win32 input method for multibyte chars |multibyte-ime| N *+multi_lang* non-English language support |multi-lang| m *+mzscheme* Mzscheme interface |mzscheme| +m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn| m *+netbeans_intg* |netbeans| m *+ole* Win32 GUI only: |ole-interface| *+osfiletype* Support for the 'osfiletype' option and filetype diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt index 8518f82809..560b7ffa35 100644 --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 7.0aa. Last change: 2005 Dec 28 +*version7.txt* For Vim version 7.0aa. Last change: 2006 Jan 09 VIM REFERENCE MANUAL by Bram Moolenaar @@ -435,6 +435,9 @@ Win32: The ":winpos" command now also works in the console. (Vipin Aravind) |:cexpr| Read error messages from a Vim expression (Yegappan Lakshmanan). +|:caddexpr| Add error messages from a Vim expression to an + existing quickfix list. (Yegappan Lakshmanan). + Ex command modifiers: ~ @@ -919,6 +922,9 @@ without losing the last inserted text. The exists() function now supports checking for autocmd group definition and for supported autocommand events. (Yegappan Lakshmanan) +Allow using ":global" in the sandbox, it doesn't do anything harmful by +itself. + ============================================================================== COMPILE TIME CHANGES *compile-changes-7* @@ -1523,7 +1529,7 @@ string, because it may cause trouble in Insert mode. When evaluating an expression for CTRL-R = on the command line it was possible to open a new window, resulting in errors for incremental search, and many other nasty things were possible. Now evaluate the expression in the sandbox -to protect from unexpected behavior. +to protect from unexpected behavior. Same for CTRL-\ e. "d(" deleted the character under the cursor, while the documentation specified an exclusive motion. Vi also doesn't delete the character under the cursor. @@ -1533,4 +1539,10 @@ when it just fits in the window. In coladvance() don't stop at the window edge when filling with spaces and when in Insert mode. In mswin.vim avoid getting a beep from the "l" command. +Win32 GUI: When Alt-F4 is used to close the window and Cancel is selected in +the dialog then Vim would insert in the text. Now it's ignored. + +When ":silent! {cmd}" caused the swap file dialog, which isn't displayed, +there would still be a hit-enter prompt. + vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt index 76893e255a..4fe7ff9701 100644 --- a/runtime/doc/vi_diff.txt +++ b/runtime/doc/vi_diff.txt @@ -1,4 +1,4 @@ -*vi_diff.txt* For Vim version 7.0aa. Last change: 2005 Apr 01 +*vi_diff.txt* For Vim version 7.0aa. Last change: 2006 Jan 02 VIM REFERENCE MANUAL by Bram Moolenaar @@ -87,7 +87,9 @@ Length of an expanded string option Maximum display width Unix and Win32: 1024 characters, otherwise 255 characters Maximum lhs of a mapping 50 characters. -Number of highlighting different types: 223 +Number of different highlighting types: over 30000 +Range of a Number variable: -2147483648 to 2147483647 (more on 64 bit + systems) Information for undo and text in registers is kept in memory, thus when making (big) changes the amount of (virtual) memory available limits the number of diff --git a/runtime/filetype.vim b/runtime/filetype.vim index e2b1d10410..3a4d70ff90 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar -" Last Change: 2005 Nov 23 +" Last Change: 2006 Jan 12 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -399,7 +399,7 @@ fun! s:FTent() setf dtd endfun -" Clipper (or FoxPro) +" Clipper (or FoxPro; could also be eviews) au BufNewFile,BufRead *.prg \ if exists("g:filetype_prg") | \ exe "setf " . g:filetype_prg | @@ -606,6 +606,9 @@ au BufNewFile,BufRead *.gpi setf gnuplot " GrADS scripts au BufNewFile,BufRead *.gs setf grads +" Gretl +au BufNewFile,BufRead *.gretl setf gretl + " Groovy au BufNewFile,BufRead *.groovy setf groovy diff --git a/runtime/makemenu.vim b/runtime/makemenu.vim index 4cb0ddfb92..3728041cc0 100644 --- a/runtime/makemenu.vim +++ b/runtime/makemenu.vim @@ -1,6 +1,6 @@ " Script to define the syntax menu in synmenu.vim " Maintainer: Bram Moolenaar -" Last Change: 2005 Dec 01 +" Last Change: 2006 Jan 12 " This is used by "make menu" in the src directory. edit :p:h/synmenu.vim @@ -186,7 +186,9 @@ SynMenu FG.Grub:grub SynMenu FG.GNU\ Server\ Pages:gsp SynMenu FG.GNUplot:gnuplot SynMenu FG.GrADS\ scripts:grads +SynMenu FG.Gretl:gretl SynMenu FG.Groff:groff +SynMenu FG.Groovy:groovy SynMenu FG.GTKrc:gtkrc SynMenu HIJK.Haskell.Haskell:haskell diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 5c53b05608..67538dfb51 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: Bram Moolenaar -" Last Change: 2005 Oct 02 +" Last Change: 2006 Jan 13 " If there already is an option window, jump to that one. if bufwinnr("option-window") > 0 @@ -725,6 +725,8 @@ if has("digraphs") endif call append("$", "tildeop\tthe \"~\" command behaves like an operator") call BinOptionG("top", &top) +call append("$", "operatorfunc\tfunction called for the\"g@\" operator") +call OptionG("opfunc", &opfunc) call append("$", "showmatch\tWhen inserting a bracket, briefly jump to its match") call BinOptionG("sm", &sm) call append("$", "matchtime\ttenth of a second to show a match for 'showmatch'") diff --git a/runtime/spell/en.ascii.spl b/runtime/spell/en.ascii.spl index 10ed3b6a26c9e7ff832c5a85320d5f33b4079007..33cb8202a21ba4e658a54e4850878a70fffabecc 100644 GIT binary patch delta 1398 zc-k#gy^`iM5S-n+-McD|_#%=o;9`Cr;Hrpt4A~l4!m`FC$!i=rARwTK2nY#DNho*% z5~?mEAmdG-+s9X*T$VJN>FI9yyFYKg{&oB1-NX4x@OvfqcW>`w$N%o_hgf)czNegJ zutOH>QL6;oikIRRmAV!2DFm#xZH!_;tcX?7CoK%D;&3>)>)>u%_VT3^RWD6d*6c%`CV>HX+2HU#0v9mxy zI8vzu-KED=CW#LC2RF{we3tC$q;keI0Y+{nInAhRPbwqf4~k~K+8T1=U^6uCfuMB& z7w5f9hMhy^0@&G5VRs$qk-Z^T?-@*~^RgNaOnB{_13t2ZRFODqIPr9N^;X_=R3XVD zNzN&NDof}jR9o0i0XwA1g9a>*7qOVn;sPs&1nk*tmK97imppQJP>mKbC%x2$G(nj| z`fli-ETJjHji3mWEbqe&iajCgVVk4?y3I=}g60w+S1Mk+2t1t2y8dt1pWEPJ-KhaawJIP8qH#($d$c4374g z;F3-h)F>nhwNSk1z*0+I#n^+De28)v*2Tgh#c03DPIP5^p>?r3tFC}ix)xZpC)DT$ z6q8G|JfykOIZ(E(f+*P3M6AT>Wr=i?K>~V!VG&fAcVVjSpBjt zYBsK;r^{7XTGNQu;RDSp_W@`j|2xQd(z8gt6ffH{@PiUBSC{MB>cR(DTS?gnMn^}( zExdOqhxkS5qw6x14h1a)AZJ3H1WFPM%W}(8XS%lFuJe0Bi+()QG~Q@)R%dd!hE<{i zSFR)&N`83v@cHWx_^Eu!#}|M6^Yg#*?Dy|Kdh_XLKYsG}i`U=W9>2Xk-eKHhJi~a7 Q@qoeg7r)&eU#6e_13=%+DF6Tf delta 50 xc-q@~RjK>5(uQ-alV5R}H0yA;>u@syF%u9o12GE_vjQ<25VLRB;pXU^4*;>74v7E& diff --git a/runtime/spell/en.ascii.sug b/runtime/spell/en.ascii.sug new file mode 100644 index 0000000000000000000000000000000000000000..a254ed27bf77fee875ecb343d93c6ca56537025c GIT binary patch literal 555631 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

0ToM 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 z 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

92DA`%?+}sY4B4 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 N%}{wY_3G8@{{jBu-~j*t literal 0 Hc-jL100001 diff --git a/runtime/spell/en.latin1.spl b/runtime/spell/en.latin1.spl index fb522ea5aedc7789f123aabc2af2f3cad82bb3f2..68cade0044262de55d59846d4f4cf12c3e02c1b1 100644 GIT binary patch delta 1384 zc-k$LF|y?}5JmfcX68@TA6Uc$umKh@RYWX9w%WFMvf3rd-#B^!0SkaN5K~1!M#vT> zAR(cOWpLWVt0$KwwYqQLd*wg=djIb~?|=RH=KfCjy_3g>506Xd|M1~+7GA$PQqD5i zDXaBGt4y|+C?%{abuSXrG_l(DaS@xuidYqW(c*zs0*9w?9XxE$QNER;8l|bqmcyu` zq4q_>T^8%aRALr8#82p{vU=jy_jt+?n#@X2;9W`Fx?`It7)_hBaWTsh2HU%Yv3r3+ zIH^=7J)|$G%(4XV4`IAr^PA*QXO;VsW?f}nMP zONdcsW9O7x0d_Vj9HE1r?2TN#XPD9uWit-Uymp@hpDa_VB+feBc?Mpim9IKgoaE6- z&S`=wOLQ_-TfLnEJ5E)E2A0Q*SmrkglUJS+*t6M9HkfE3MRIqjrbXsXuWREpq0A}$ zF#30vXo|QIilAiu6mBT?Le|rENfUHilvIS~5|AusSIhS1r>&BW)3T&hdPQVrbe4+B zLQ56t4;N*w4g%OK!NZ>N9UdL_>eOnUIOEkt!it6h5PQ%@o{$#7dioDyvx89bC)f| z7<>(B_Qr4z3~m8I#?;;U)mgosUIUY#q`k>ljRM?;6?$#kR?l!O2149@VD-zo)NH;^ zPnWA$+R{kt_(1dK`v6*<{{u2!^j@T1ikE#I{DZPwt}fTL)zu%cwmD@ZjE=z#xB9)K z9Pz8VkFLv5Ittn}f!q^v5|mCXmi4XZI=gENciq1yZqYAqZklLrbFc2nagA450$hcX yFqHiC@y*v?Jo~5etv|l`^Y5R3cz*iv`RRf2$oP!$it(E9hVk_K^V8eke)$j8*vNwb delta 50 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%0A*KgtfCM{4W%WOow!{zpMa?u)nWLMi^ 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

@>Kzao(|t79}1okp*H-k!QK* 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 l#EtZ!&Qjym{OWX` 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

  • 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 N;Ms!_X$L!<&VQlojK%-} literal 0 Hc-jL100001 diff --git a/runtime/spell/en.utf-8.spl b/runtime/spell/en.utf-8.spl index 49ddd8ae201ecca455c7052e69bb61956c2f9325..b0dd947eb5ce9ce23200563670e0672d6056ff95 100644 GIT binary patch delta 1384 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 jpY|*AB5tYEB)E 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%0ABgdmy5wy{Nep7EZ#{t(SF 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 +" Last Change: 2006 Jan 11 +" Filenames: *.prg +" URL: http://uosis.mif.vu.lt/~zemlys/vim-syntax/eviews.vim +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +if version >= 600 + setlocal iskeyword=@,48-57,_,. +else + set iskeyword=@,48-57,_,. +endif + +syn case match + +" Comment +syn match eComment /\'.*/ + +" Constant +" string enclosed in double quotes +syn region eString start=/"/ skip=/\\\\\|\\"/ end=/"/ +" number with no fractional part or exponent +syn match eNumber /\d\+/ +" floating point number with integer and fractional parts and optional exponent +syn match eFloat /\d\+\.\d*\([Ee][-+]\=\d\+\)\=/ +" floating point number with no integer part and optional exponent +syn match eFloat /\.\d\+\([Ee][-+]\=\d\+\)\=/ +" floating point number with no fractional part and optional exponent +syn match eFloat /\d\+[Ee][-+]\=\d\+/ + +" Identifier +" identifier with leading letter and optional following keyword characters +syn match eIdentifier /\a\k*/ + +" Eviews Programing Language +syn keyword eProgLang @date else endif @errorcount @evpath exitloop for if @isobject next poff pon return statusline step stop @temppath then @time to @toc wend while include call subroutine endsub and or + +" Eviews Objects, Views and Procedures +syn keyword eOVP alpha coef equation graph group link logl matrix model pool rowvector sample scalar series sspace sym system table text valmap var vector + + +" Standard Eviews Commands +syn keyword eStdCmd 3sls add addassign addinit addtext align alpha append arch archtest area arlm arma arroots auto axis bar bdstest binary block boxplot boxplotby bplabel cause ccopy cd cdfplot cellipse censored cfetch checkderivs chow clabel cleartext close coef coefcov coint comment control copy cor correl correlsq count cov create cross data datelabel dates db dbcopy dbcreate dbdelete dbopen dbpack dbrebuild dbrename dbrepair decomp define delete derivs describe displayname do draw driconvert drop dtable ec edftest endog eqs equation errbar exclude exit expand fetch fill fiml fit forecast freeze freq frml garch genr gmm grads graph group hconvert hfetch hilo hist hlabel hpf impulse jbera kdensity kerfit label laglen legend line linefit link linkto load logit logl ls makecoint makederivs makeendog makefilter makegarch makegrads makegraph makegroup makelimits makemodel makeregs makeresids makesignals makestates makestats makesystem map matrix means merge metafile ml model msg name nnfit open options ordered output override pageappend pagecontract pagecopy pagecreate pagedelete pageload pagerename pagesave pageselect pagestack pagestruct pageunstack param pcomp pie pool predict print probit program qqplot qstats range read rename representations resample reset residcor residcov resids results rls rndint rndseed rowvector run sample save scalar scale scat scatmat scenario seas seasplot series set setbpelem setcell setcolwidth setconvert setelem setfillcolor setfont setformat setheight setindent setjust setline setlines setmerge settextcolor setwidth sheet show signalgraphs smooth smpl solve solveopt sort spec spike sspace statby statefinal stategraphs stateinit stats statusline stomna store structure sur svar sym system table template testadd testbtw testby testdrop testexog testfit testlags teststat text tic toc trace tramoseats tsls unlink update updatecoefs uroot usage valmap var vars vector wald wfcreate wfopen wfsave wfselect white wls workfile write wtsls x11 x12 xy xyline xypair + +" Constant Identifier +syn match eConstant /\!\k*/ +" String Identifier +syn match eStringId /%\k*/ +" Command Identifier +syn match eCommand /@\k*/ + +" Special +syn match eDelimiter /[,;:]/ + +" Error +syn region eRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError +syn region eRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError +syn region eRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError +syn match eError /[)\]}]/ +syn match eBraceError /[)}]/ contained +syn match eCurlyError /[)\]]/ contained +syn match eParenError /[\]}]/ contained + +" Define the default highlighting. +" For version 5.7 and earlier: only when not done already +" For version 5.8 and later: only when an item doesn't have highlighting yet +if version >= 508 || !exists("did_r_syn_inits") + if version < 508 + let did_r_syn_inits = 1 + command -nargs=+ HiLink hi link + else + command -nargs=+ HiLink hi def link + endif + HiLink eComment Comment + HiLink eConstant Identifier + HiLink eStringId Identifier + HiLink eCommand Type + HiLink eString String + HiLink eNumber Number + HiLink eBoolean Boolean + HiLink eFloat Float + HiLink eConditional Conditional + HiLink eProgLang Statement + HiLink eOVP Statement + HiLink eStdCmd Statement + HiLink eIdentifier Normal + HiLink eDelimiter Delimiter + HiLink eError Error + HiLink eBraceError Error + HiLink eCurlyError Error + HiLink eParenError Error + delcommand HiLink +endif + +let b:current_syntax="eviews" + +" vim: ts=8 sw=2 diff --git a/runtime/syntax/gretl.vim b/runtime/syntax/gretl.vim new file mode 100644 index 0000000000..9999ff0f40 --- /dev/null +++ b/runtime/syntax/gretl.vim @@ -0,0 +1,102 @@ +" Vim syntax file +" Language: gretl (http://gretl.sf.net) +" Maintainer: Vaidotas Zemlys +" Last Change: 2006 Jan 6 +" Filenames: *.inp *.gretl +" URL: http://uosis.mif.vu.lt/~zemlys/vim-syntax/gretl.vim +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded + +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +if version >= 600 + setlocal iskeyword=@,48-57,_,. +else + set iskeyword=@,48-57,_,. +endif + +syn case match + +" Constant +" string enclosed in double quotes +syn region gString start=/"/ skip=/\\\\\|\\"/ end=/"/ +" number with no fractional part or exponent +syn match gNumber /\d\+/ +" floating point number with integer and fractional parts and optional exponent +syn match gFloat /\d\+\.\d*\([Ee][-+]\=\d\+\)\=/ +" floating point number with no integer part and optional exponent +syn match gFloat /\.\d\+\([Ee][-+]\=\d\+\)\=/ +" floating point number with no fractional part and optional exponent +syn match gFloat /\d\+[Ee][-+]\=\d\+/ + +" Gretl commands +syn keyword gCommands add addobs addto adf append ar arch arma break boxplot chow coeffsum coint coint2 corc corr corrgm criteria critical cusum data delete diff else end endif endloop eqnprint equation estimate fcast fcasterr fit freq function funcerr garch genr gnuplot graph hausman hccm help hilu hsk hurst if import include info kpss label labels lad lags ldiff leverage lmtest logistic logit logs loop mahal meantest mle modeltab mpols multiply nls nulldata ols omit omitfrom open outfile panel pca pergm plot poisson pooled print printf probit pvalue pwe quit remember rename reset restrict rhodiff rmplot run runs scatters sdiff set setobs setmiss shell sim smpl spearman square store summary system tabprint testuhat tobit transpos tsls var varlist vartest vecm vif wls + +"Gretl genr functions +syn keyword gGenrFunc log exp sin cos tan atan diff ldiff sdiff mean sd min max sort int ln coeff abs rho sqrt sum nobs firstobs lastobs normal uniform stderr cum missing ok misszero corr vcv var sst cov median zeromiss pvalue critical obsnum mpow dnorm cnorm gamma lngamma resample hpfilt bkfilt fracdiff varnum isvector islist nelem + +" Identifier +" identifier with leading letter and optional following keyword characters +syn match gIdentifier /\a\k*/ + +" Variable with leading $ +syn match gVariable /\$\k*/ +" Arrow +syn match gArrow /<-/ + +" Special +syn match gDelimiter /[,;:]/ + +" Error +syn region gRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError,gBCstart,gBCend +syn region gRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError +syn region gRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError +syn match gError /[)\]}]/ +syn match gBraceError /[)}]/ contained +syn match gCurlyError /[)\]]/ contained +syn match gParenError /[\]}]/ contained + +" Comment +syn match gComment /#.*/ +syn match gBCstart /(\*/ +syn match gBCend /\*)/ + +syn region gBlockComment matchgroup=gCommentStart start="(\*" end="\*)" + +" Define the default highlighting. +" For version 5.7 and earlier: only when not done already +" For version 5.8 and later: only when an item doesn't have highlighting yet +if version >= 508 || !exists("did_r_syn_inits") + if version < 508 + let did_r_syn_inits = 1 + command -nargs=+ HiLink hi link + else + command -nargs=+ HiLink hi def link + endif + HiLink gComment Comment + HiLink gCommentStart Comment + HiLink gBlockComment Comment + HiLink gString String + HiLink gNumber Number + HiLink gBoolean Boolean + HiLink gFloat Float + HiLink gCommands Repeat + HiLink gGenrFunc Type + HiLink gDelimiter Delimiter + HiLink gError Error + HiLink gBraceError Error + HiLink gCurlyError Error + HiLink gParenError Error + HiLink gIdentifier Normal + HiLink gVariable Identifier + HiLink gArrow Repeat + delcommand HiLink +endif + +let b:current_syntax="gretl" + +" vim: ts=8 sw=2 diff --git a/runtime/syntax/r.vim b/runtime/syntax/r.vim index c2ecca4ef2..8432c208ec 100644 --- a/runtime/syntax/r.vim +++ b/runtime/syntax/r.vim @@ -1,9 +1,13 @@ " Vim syntax file " Language: R (GNU S) -" Maintainer: Tom Payne -" Last Change: 2003 May 11 -" Filenames: *.r -" URL: http://www.tompayne.org/vim/syntax/r.vim +" Maintainer: Vaidotas Zemlys +" Last Change: 2006 January 12 +" Filenames: *.R *.Rout *.r *.Rhistory *.Rt *.Rout.save *.Rout.fail +" URL: http://uosis.mif.vu.lt/~zemlys/vim-syntax/r.vim + +" First maintainer Tom Payne +" Modified to make syntax less colourful and added the highlighting of +" R assignment arrow " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -54,9 +58,10 @@ syn keyword rConstant LETTERS letters month.ab month.name pi syn keyword rConstant NULL syn keyword rBoolean FALSE TRUE syn keyword rNumber NA +syn match rArrow /<\{1,2}-/ " Type -syn keyword rType array category character complex double function integer list logical matrix numeric vector +syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame " Special syn match rDelimiter /[,;:]/ @@ -89,8 +94,9 @@ if version >= 508 || !exists("did_r_syn_inits") HiLink rStatement Statement HiLink rConditional Conditional HiLink rRepeat Repeat - HiLink rIdentifier Identifier - HiLink rType Type + HiLink rIdentifier Normal + HiLink rArrow Statement + HiLink rType Type HiLink rDelimiter Delimiter HiLink rError Error HiLink rBraceError Error @@ -102,3 +108,4 @@ endif let b:current_syntax="r" " vim: ts=8 sw=2 + diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index 52ca8ae1b9..21715b7ba2 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Vim 7.0 script " Maintainer: Dr. Charles E. Campbell, Jr. -" Last Change: December 09, 2005 -" Version: 7.0-21 +" Last Change: Jan 09, 2006 +" Version: 7.0-22 " Automatically generated keyword lists: {{{1 " Quit when a syntax file was already loaded {{{2 @@ -175,7 +175,7 @@ endif syn match vimComment excludenl +\s"[^\-:.%#=*].*$+lc=1 contains=@vimCommentGroup,vimCommentString syn match vimComment +\b_flags & BF_NEVERLOADED)) curbuf->b_p_ro = TRUE; - if (ml_open() == FAIL) + if (ml_open(curbuf) == FAIL) { /* * There MUST be a memfile, otherwise we can't do anything @@ -1505,6 +1505,8 @@ buflist_new(ffname, sfname, lnum, flags) * buffer. Otherwise: Need to allocate a new buffer structure. * * This is the ONLY place where a new buffer structure is allocated! + * (A spell file buffer is allocated in spell.c, but that's not a normal + * buffer.) */ buf = NULL; if ((flags & BLN_CURBUF) @@ -5191,7 +5193,7 @@ buf_contents_changed(buf) curwin->w_buffer = newbuf; #endif - if (ml_open() == OK + if (ml_open(curbuf) == OK && readfile(buf->b_ffname, buf->b_fname, (linenr_T)0, (linenr_T)0, (linenr_T)MAXLNUM, &ea, READ_NEW | READ_DUMMY) == OK) diff --git a/src/edit.c b/src/edit.c index 23dd57eb9d..c037d1f961 100644 --- a/src/edit.c +++ b/src/edit.c @@ -987,6 +987,15 @@ doESCkey: case K_IGNORE: /* Something mapped to nothing */ break; +#ifdef FEAT_GUI_W32 + /* On Win32 ignore , we get it when closing the window was + * cancelled. */ + case K_F4: + if (mod_mask != MOD_MASK_ALT) + goto normalchar; + break; +#endif + #ifdef FEAT_GUI case K_VER_SCROLLBAR: ins_scroll(); diff --git a/src/eval.c b/src/eval.c index eef865a4bd..4823593317 100644 --- a/src/eval.c +++ b/src/eval.c @@ -654,7 +654,6 @@ static int get_var_tv __ARGS((char_u *name, int len, typval_T *rettv, int verbos static int handle_subscript __ARGS((char_u **arg, typval_T *rettv, int evaluate, int verbose)); static typval_T *alloc_tv __ARGS((void)); static typval_T *alloc_string_tv __ARGS((char_u *string)); -static void free_tv __ARGS((typval_T *varp)); static void init_tv __ARGS((typval_T *varp)); static long get_tv_number __ARGS((typval_T *varp)); static linenr_T get_tv_lnum __ARGS((typval_T *argvars)); @@ -1323,7 +1322,9 @@ get_spellword(list, pp) #endif /* - * Top level evaluation function, + * Top level evaluation function. + * Returns an allocated typval_T with the result. + * Returns NULL when there is an error. */ typval_T * eval_expr(arg, nextcmd) @@ -1333,13 +1334,10 @@ eval_expr(arg, nextcmd) typval_T *tv; tv = (typval_T *)alloc(sizeof(typval_T)); - if (!tv) - return NULL; - - if (eval0(arg, tv, nextcmd, TRUE) == FAIL) + if (tv != NULL && eval0(arg, tv, nextcmd, TRUE) == FAIL) { vim_free(tv); - return NULL; + tv = NULL; } return tv; @@ -13930,7 +13928,7 @@ f_spellbadword(argvars, rettv) /* Check the argument for spelling. */ while (*str != NUL) { - len = spell_check(curwin, str, &attr, &capcol); + len = spell_check(curwin, str, &attr, &capcol, FALSE); if (attr != HLF_COUNT) { word = str; @@ -13996,7 +13994,7 @@ f_spellsuggest(argvars, rettv) else maxcount = 25; - spell_suggest_list(&ga, str, maxcount, need_capital); + spell_suggest_list(&ga, str, maxcount, need_capital, FALSE); for (i = 0; i < ga.ga_len; ++i) { @@ -15904,7 +15902,7 @@ alloc_string_tv(s) /* * Free the memory for a variable type-value. */ - static void + void free_tv(varp) typval_T *varp; { @@ -16910,7 +16908,10 @@ ex_execute(eap) if (ret != FAIL && ga.ga_data != NULL) { if (eap->cmdidx == CMD_echomsg) + { MSG_ATTR(ga.ga_data, echo_attr); + out_flush(); + } else if (eap->cmdidx == CMD_echoerr) { /* We don't want to abort following commands, restore did_emsg. */ diff --git a/src/ex_cmds.c b/src/ex_cmds.c index 006733c4d8..c4fd0c4bd0 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -111,9 +111,9 @@ do_ascii(eap) IObuff[len++] = ' '; IObuff[len++] = '<'; if (utf_iscomposing(c) -#ifdef USE_GUI +# ifdef USE_GUI && !gui.in_use -#endif +# endif ) IObuff[len++] = ' '; /* draw composing char on top of a space */ len += (*mb_char2bytes)(c, IObuff + len); diff --git a/src/ex_cmds.h b/src/ex_cmds.h index 4c4ab6ff07..a15ed464d8 100644 --- a/src/ex_cmds.h +++ b/src/ex_cmds.h @@ -187,6 +187,8 @@ EX(CMD_cabbrev, "cabbrev", ex_abbreviate, EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), EX(CMD_cabclear, "cabclear", ex_abclear, EXTRA|TRLBAR|CMDWIN), +EX(CMD_caddexpr, "caddexpr", ex_cexpr, + NEEDARG|WORD1|NOTRLCOM|TRLBAR|BANG), EX(CMD_caddfile, "caddfile", ex_cfile, TRLBAR|FILE1), EX(CMD_call, "call", ex_call, @@ -394,7 +396,7 @@ EX(CMD_for, "for", ex_while, EX(CMD_function, "function", ex_function, EXTRA|BANG|CMDWIN), EX(CMD_global, "global", ex_global, - RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|CMDWIN), + RANGE|WHOLEFOLD|BANG|EXTRA|DFLALL|SBOXOK|CMDWIN), EX(CMD_goto, "goto", ex_goto, RANGE|NOTADR|COUNT|TRLBAR|SBOXOK|CMDWIN), EX(CMD_grep, "grep", ex_make, @@ -768,7 +770,7 @@ EX(CMD_spellgood, "spellgood", ex_spell, EX(CMD_spellwrong, "spellwrong", ex_spell, BANG|RANGE|NOTADR|NEEDARG|EXTRA|TRLBAR), EX(CMD_spelldump, "spelldump", ex_spelldump, - TRLBAR), + BANG|TRLBAR), EX(CMD_spellrepall, "spellrepall", ex_spellrepall, TRLBAR), EX(CMD_sprevious, "sprevious", ex_previous, diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 1eb2bb9a55..e15c6c5d7b 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -8234,8 +8234,11 @@ ex_mkrc(eap) failed = TRUE; if (put_line(fd, "doautoall SessionLoadPost") == FAIL) failed = TRUE; - if (put_line(fd, "unlet SessionLoad") == FAIL) - failed = TRUE; + if (eap->cmdidx == CMD_mksession) + { + if (put_line(fd, "unlet SessionLoad") == FAIL) + failed = TRUE; + } } #endif if (put_line(fd, "\" vim: set ft=vim :") == FAIL) diff --git a/src/ex_getln.c b/src/ex_getln.c index 335f2a411c..95109534aa 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -645,8 +645,8 @@ getcmdline(firstc, count, indent) /* * Replace the command line with the result of an expression. - * Need to save the current command line, to be able to enter - * a new one... + * Need to save and restore the current command line, to be + * able to enter a new one... */ if (ccline.cmdpos == ccline.cmdlen) new_cmdpos = 99999; /* keep it at the end */ @@ -658,8 +658,17 @@ getcmdline(firstc, count, indent) restore_cmdline(&save_ccline); if (c == '=') { + /* Need to save and restore ccline. And go into the + * sandbox to avoid nasty things like going to another + * buffer when evaluating an expression. */ save_cmdline(&save_ccline); +#ifdef HAVE_SANDBOX + ++sandbox; +#endif p = get_expr_line(); +#ifdef HAVE_SANDBOX + --sandbox; +#endif restore_cmdline(&save_ccline); if (p != NULL && realloc_cmdbuff((int)STRLEN(p) + 1) == OK) @@ -1192,6 +1201,18 @@ getcmdline(firstc, count, indent) case K_IGNORE: goto cmdline_not_changed; /* Ignore mouse */ +#ifdef FEAT_GUI_W32 + /* On Win32 ignore , we get it when closing the window was + * cancelled. */ + case K_F4: + if (mod_mask == MOD_MASK_ALT) + { + redrawcmd(); /* somehow the cmdline is cleared */ + goto cmdline_not_changed; + } + break; +#endif + #ifdef FEAT_MOUSE case K_MIDDLEDRAG: case K_MIDDLERELEASE: diff --git a/src/feature.h b/src/feature.h index 69a784e442..efe7915675 100644 --- a/src/feature.h +++ b/src/feature.h @@ -126,6 +126,15 @@ # define FEAT_CMDHIST #endif +/* + * Message history is fixed at 100 message, 20 for the tiny version. + */ +#ifdef FEAT_SMALL +# define MAX_MSG_HIST_LEN 100 +#else +# define MAX_MSG_HIST_LEN 20 +#endif + /* * +jumplist Jumplist, CTRL-O and CTRL-I commands. */ diff --git a/src/fileio.c b/src/fileio.c index e05fb54db8..c5c9262998 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -6405,7 +6405,7 @@ buf_reload(buf) /* Open the memline. */ curbuf = savebuf; curwin->w_buffer = savebuf; - saved = ml_open(); + saved = ml_open(curbuf); curbuf = buf; curwin->w_buffer = buf; } diff --git a/src/globals.h b/src/globals.h index 8c21105698..c22466c069 100644 --- a/src/globals.h +++ b/src/globals.h @@ -528,7 +528,12 @@ EXTERN int starting INIT(= NO_SCREEN); /* first NO_SCREEN, then NO_BUFFERS and then * set to 0 when starting up finished */ EXTERN int exiting INIT(= FALSE); - /* TRUE when abandoning Vim */ + /* TRUE when planning to exit Vim. Might + * still keep on running if there is a changed + * buffer. */ +EXTERN int really_exiting INIT(= FALSE); + /* TRUE when we are sure to exit, e.g., after + * a deadly signal */ EXTERN int full_screen INIT(= FALSE); /* TRUE when doing full-screen output * otherwise only writing some messages */ diff --git a/src/gui_gtk_x11.c b/src/gui_gtk_x11.c index 1502e0c1c0..84c5fe4064 100644 --- a/src/gui_gtk_x11.c +++ b/src/gui_gtk_x11.c @@ -2328,6 +2328,7 @@ sm_client_die(GnomeClient *client, gpointer data) vim_strncpy(IObuff, _("Vim: Received \"die\" request from session manager\n"), IOSIZE - 1); + deadly_exit = TRUE; preserve_exit(); } diff --git a/src/hashtable.c b/src/hashtable.c index 904be4704c..066f0f3cbb 100644 --- a/src/hashtable.c +++ b/src/hashtable.c @@ -85,6 +85,31 @@ hash_clear(ht) vim_free(ht->ht_array); } +/* + * Free the array of a hash table and all the keys it contains. The keys must + * have been allocated. "off" is the offset from the start of the allocate + * memory to the location of the key (it's always positive). + */ + void +hash_clear_all(ht, off) + hashtab_T *ht; + int off; +{ + int todo; + hashitem_T *hi; + + todo = ht->ht_used; + for (hi = ht->ht_array; todo > 0; ++hi) + { + if (!HASHITEM_EMPTY(hi)) + { + vim_free(hi->hi_key - off); + --todo; + } + } + hash_clear(ht); +} + /* * Find "key" in hashtable "ht". "key" must not be NULL. * Always returns a pointer to a hashitem. If the item was not found then diff --git a/src/memline.c b/src/memline.c index 3eba98d598..9abf155234 100644 --- a/src/memline.c +++ b/src/memline.c @@ -13,10 +13,11 @@ /* * memline.c: Contains the functions for appending, deleting and changing the - * text lines. The memfile functions are used to store the information in blocks - * of memory, backed up by a file. The structure of the information is a tree. - * The root of the tree is a pointer block. The leaves of the tree are data - * blocks. In between may be several layers of pointer blocks, forming branches. + * text lines. The memfile functions are used to store the information in + * blocks of memory, backed up by a file. The structure of the information is + * a tree. The root of the tree is a pointer block. The leaves of the tree + * are data blocks. In between may be several layers of pointer blocks, + * forming branches. * * Three types of blocks are used: * - Block nr 0 contains information for recovery @@ -169,7 +170,7 @@ struct block0 }; /* - * Note: b0_fname and b0_flags are put at the end of the file name. For very + * Note: b0_dirty and b0_flags are put at the end of the file name. For very * long file names in older versions of Vim they are invalid. * The 'fileencoding' comes before b0_flags, with a NUL in front. But only * when there is room, for very long file names it's omitted. @@ -245,12 +246,13 @@ static void ml_updatechunk __ARGS((buf_T *buf, long line, long len, int updtype) #endif /* - * open a new memline for 'curbuf' + * Open a new memline for "buf". * - * return FAIL for failure, OK otherwise + * Return FAIL for failure, OK otherwise. */ int -ml_open() +ml_open(buf) + buf_T *buf; { memfile_T *mfp; bhdr_T *hp = NULL; @@ -258,36 +260,36 @@ ml_open() PTR_BL *pp; DATA_BL *dp; -/* - * init fields in memline struct - */ - curbuf->b_ml.ml_stack_size = 0; /* no stack yet */ - curbuf->b_ml.ml_stack = NULL; /* no stack yet */ - curbuf->b_ml.ml_stack_top = 0; /* nothing in the stack */ - curbuf->b_ml.ml_locked = NULL; /* no cached block */ - curbuf->b_ml.ml_line_lnum = 0; /* no cached line */ + /* + * init fields in memline struct + */ + buf->b_ml.ml_stack_size = 0; /* no stack yet */ + buf->b_ml.ml_stack = NULL; /* no stack yet */ + buf->b_ml.ml_stack_top = 0; /* nothing in the stack */ + buf->b_ml.ml_locked = NULL; /* no cached block */ + buf->b_ml.ml_line_lnum = 0; /* no cached line */ #ifdef FEAT_BYTEOFF - curbuf->b_ml.ml_chunksize = NULL; + buf->b_ml.ml_chunksize = NULL; #endif -/* - * When 'updatecount' is non-zero, flag that a swap file may be opened later. - */ - if (p_uc && curbuf->b_p_swf) - curbuf->b_may_swap = TRUE; + /* + * When 'updatecount' is non-zero swap file may be opened later. + */ + if (p_uc && buf->b_p_swf) + buf->b_may_swap = TRUE; else - curbuf->b_may_swap = FALSE; + buf->b_may_swap = FALSE; -/* - * Open the memfile. No swap file is created yet. - */ + /* + * Open the memfile. No swap file is created yet. + */ mfp = mf_open(NULL, 0); if (mfp == NULL) goto error; - curbuf->b_ml.ml_mfp = mfp; - curbuf->b_ml.ml_flags = ML_EMPTY; - curbuf->b_ml.ml_line_count = 1; + buf->b_ml.ml_mfp = mfp; + buf->b_ml.ml_flags = ML_EMPTY; + buf->b_ml.ml_line_count = 1; #ifdef FEAT_LINEBREAK curwin->w_nrwidth_line_count = 0; #endif @@ -296,7 +298,7 @@ ml_open() /* for 16 bit MS-DOS create a swapfile now, because we run out of * memory very quickly */ if (p_uc != 0) - ml_open_file(curbuf); + ml_open_file(buf); #endif /* @@ -313,36 +315,40 @@ ml_open() b0p->b0_id[0] = BLOCK0_ID0; b0p->b0_id[1] = BLOCK0_ID1; - b0p->b0_dirty = curbuf->b_changed ? B0_DIRTY : 0; - b0p->b0_flags = get_fileformat(curbuf) + 1; b0p->b0_magic_long = (long)B0_MAGIC_LONG; b0p->b0_magic_int = (int)B0_MAGIC_INT; b0p->b0_magic_short = (short)B0_MAGIC_SHORT; b0p->b0_magic_char = B0_MAGIC_CHAR; - STRNCPY(b0p->b0_version, "VIM ", 4); STRNCPY(b0p->b0_version + 4, Version, 6); - set_b0_fname(b0p, curbuf); long_to_char((long)mfp->mf_page_size, b0p->b0_page_size); - (void)get_user_name(b0p->b0_uname, B0_UNAME_SIZE); - b0p->b0_uname[B0_UNAME_SIZE - 1] = NUL; - mch_get_host_name(b0p->b0_hname, B0_HNAME_SIZE); - b0p->b0_hname[B0_HNAME_SIZE - 1] = NUL; - long_to_char(mch_get_pid(), b0p->b0_pid); + + if (!B_SPELL(buf)) + { + b0p->b0_dirty = buf->b_changed ? B0_DIRTY : 0; + b0p->b0_flags = get_fileformat(buf) + 1; + set_b0_fname(b0p, buf); + (void)get_user_name(b0p->b0_uname, B0_UNAME_SIZE); + b0p->b0_uname[B0_UNAME_SIZE - 1] = NUL; + mch_get_host_name(b0p->b0_hname, B0_HNAME_SIZE); + b0p->b0_hname[B0_HNAME_SIZE - 1] = NUL; + long_to_char(mch_get_pid(), b0p->b0_pid); + } /* * Always sync block number 0 to disk, so we can check the file name in - * the swap file in findswapname(). Don't do this for help files though. + * the swap file in findswapname(). Don't do this for help files though + * and spell buffer though. * Only works when there's a swapfile, otherwise it's done when the file * is created. */ mf_put(mfp, hp, TRUE, FALSE); - if (!curbuf->b_help) + if (!buf->b_help && !B_SPELL(buf)) (void)mf_sync(mfp, 0); -/* - * fill in root pointer block and write page 1 - */ + /* + * Fill in root pointer block and write page 1. + */ if ((hp = ml_new_ptr(mfp)) == NULL) goto error; if (hp->bh_bnum != 1) @@ -358,9 +364,9 @@ ml_open() pp->pb_pointer[0].pe_line_count = 1; /* line count after insertion */ mf_put(mfp, hp, TRUE, FALSE); -/* - * allocate first data block and create an empty line 1. - */ + /* + * Allocate first data block and create an empty line 1. + */ if ((hp = ml_new_data(mfp, FALSE, 1)) == NULL) goto error; if (hp->bh_bnum != 2) @@ -384,7 +390,7 @@ error: mf_put(mfp, hp, FALSE, FALSE); mf_close(mfp, TRUE); /* will also free(mfp->mf_fname) */ } - curbuf->b_ml.ml_mfp = NULL; + buf->b_ml.ml_mfp = NULL; return FAIL; } @@ -518,6 +524,18 @@ ml_open_file(buf) if (mfp == NULL || mfp->mf_fd >= 0 || !buf->b_p_swf) return; /* nothing to do */ +#ifdef FEAT_SYN_HL + /* For a spell buffer use a temp file name. */ + if (buf->b_spell) + { + fname = vim_tempname('s'); + if (fname != NULL) + (void)mf_open_file(mfp, fname); /* consumes fname! */ + buf->b_may_swap = FALSE; + return; + } +#endif + /* * Try all directories in 'directory' option. */ @@ -886,7 +904,7 @@ ml_recover() goto theend; /* out of memory */ /* When called from main() still need to initialize storage structure */ - if (called_from_main && ml_open() == FAIL) + if (called_from_main && ml_open(curbuf) == FAIL) getout(1); /* @@ -2100,6 +2118,28 @@ ml_append(lnum, line, len, newfile) return ml_append_int(curbuf, lnum, line, len, newfile, FALSE); } +#if defined(FEAT_SYN_HL) || defined(PROTO) +/* + * Like ml_append() but for an arbitrary buffer. The buffer must already have + * a memline. + */ + int +ml_append_buf(buf, lnum, line, len, newfile) + buf_T *buf; + linenr_T lnum; /* append after this line (can be 0) */ + char_u *line; /* text of the new line */ + colnr_T len; /* length of new line, including NUL, or 0 */ + int newfile; /* flag, see above */ +{ + if (buf->b_ml.ml_mfp == NULL) + return FAIL; + + if (buf->b_ml.ml_line_lnum != 0) + ml_flush_line(buf); + return ml_append_int(buf, lnum, line, len, newfile, FALSE); +} +#endif + static int ml_append_int(buf, lnum, line, len, newfile, mark) buf_T *buf; @@ -2599,7 +2639,7 @@ ml_append_int(buf, lnum, line, len, newfile, mark) } /* - * replace line lnum, with buffering, in current buffer + * Replace line lnum, with buffering, in current buffer. * * If copy is TRUE, make a copy of the line, otherwise the line has been * copied to allocated memory already. @@ -2643,7 +2683,7 @@ ml_replace(lnum, line, copy) } /* - * delete line 'lnum' + * Delete line 'lnum' in the current buffer. * * Check: The caller of this function should probably also call * deleted_lines() after this. @@ -4114,7 +4154,9 @@ findswapname(buf, dirp, old_fname) #endif { MSG_PUTS("\n"); - need_wait_return = TRUE; /* call wait_return later */ + if (msg_silent == 0) + /* call wait_return() later */ + need_wait_return = TRUE; } #ifdef CREATE_DUMMY_FILE diff --git a/src/message.c b/src/message.c index 8ea49ae200..465b25e7e7 100644 --- a/src/message.c +++ b/src/message.c @@ -752,7 +752,7 @@ add_msg_hist(s, len, attr) return; /* Don't let the message history get too big */ - while (msg_hist_len > 20) + while (msg_hist_len > MAX_MSG_HIST_LEN) (void)delete_first_msg(); /* allocate an entry and add the message at the end of the history */ diff --git a/src/misc1.c b/src/misc1.c index a5a1805c2b..08cd20c91d 100644 --- a/src/misc1.c +++ b/src/misc1.c @@ -7952,6 +7952,10 @@ preserve_exit() prepare_to_exit(); + /* Setting this will prevent free() calls. That avoids calling free() + * recursively when free() was invoked with a bad pointer. */ + really_exiting = TRUE; + out_str(IObuff); screen_start(); /* don't know where cursor is now */ out_flush(); diff --git a/src/misc2.c b/src/misc2.c index c3f2b37989..f5b13e7629 100644 --- a/src/misc2.c +++ b/src/misc2.c @@ -1426,13 +1426,15 @@ copy_option_part(option, buf, maxlen, sep_chars) } /* - * replacement for free() that ignores NULL pointers + * Replacement for free() that ignores NULL pointers. + * Also skip free() when exiting for sure, this helps when we caught a deadly + * signal that was caused by a crash in free(). */ void vim_free(x) void *x; { - if (x != NULL) + if (x != NULL && !really_exiting) { #ifdef MEM_PROFILE mem_pre_free(&x); diff --git a/src/po/it.po b/src/po/it.po index ed25f47fcb..dba546c950 100644 --- a/src/po/it.po +++ b/src/po/it.po @@ -12,9 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: vim 7.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-08-25 09:30+0200\n" -"PO-Revision-Date: 2005-08-29 21:30+0200\n" +"POT-Creation-Date: 2006-01-03 16:07+0100\n" +"PO-Revision-Date: 2006-01-06 13:50+0100\n" "Last-Translator: Vlad Sandrini \n" "Language-Team: Italian" " Antonio Colombo " @@ -22,6 +21,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO_8859-1\n" "Content-Transfer-Encoding: 8-bit\n" +"Report-Msgid-Bugs-To: \n" msgid "E82: Cannot allocate any buffer, exiting..." msgstr "E82: Non riesco ad allocare alcun buffer, esco..." @@ -254,8 +254,8 @@ msgstr " Completamento linea comandi (^V^N^P)" msgid " User defined completion (^U^N^P)" msgstr " Completamento definito dall'utente (^U^N^P)" -msgid " Occult completion (^O^N^P)" -msgstr " Completamento nascosto (^O^N^P)" +msgid " Omni completion (^O^N^P)" +msgstr " Completamento globale (^O^N^P)" msgid " Spelling suggestion (^S^N^P)" msgstr " Suggerimento ortografico (^S^N^P)" @@ -267,10 +267,10 @@ msgid "Hit end of paragraph" msgstr "Giunto alla fine del paragrafo" msgid "'dictionary' option is empty" -msgstr "l'opzione 'dictionary' è vuota" +msgstr "l'opzione 'dictionary' non è impostata" msgid "'thesaurus' option is empty" -msgstr "l'opzione 'thesaurus' è vuota" +msgstr "l'opzione 'thesaurus' non è impostata" #, c-format msgid "Scanning dictionary: %s" @@ -1131,21 +1131,8 @@ msgstr "E177: Non si pu msgid "E178: Invalid default value for count" msgstr "E178: Valore predefinito del contatore non valido" -msgid "E179: argument required for complete" -msgstr "E179: argomento necessario per complete" - -#, c-format -msgid "E180: Invalid complete value: %s" -msgstr "E180: Valore %s non valido per 'complete'" - -msgid "E468: Completion argument only allowed for custom completion" -msgstr "" -"E468: Argomento di completamento permesso solo per completamento " -"personalizzato" - -msgid "E467: Custom completion requires a function argument" -msgstr "" -"E467: Il completamento personalizzato richiede un argomento di funzione" +msgid "E179: argument required for -complete" +msgstr "E179: argomento necessario per -complete" #, c-format msgid "E181: Invalid attribute: %s" @@ -1162,6 +1149,19 @@ msgstr "" msgid "E184: No such user-defined command: %s" msgstr "E184: Comando definito dall'utente %s inesistente" +#, c-format +msgid "E180: Invalid complete value: %s" +msgstr "E180: Valore %s non valido per 'complete'" + +msgid "E468: Completion argument only allowed for custom completion" +msgstr "" +"E468: Argomento di completamento permesso solo per completamento " +"personalizzato" + +msgid "E467: Custom completion requires a function argument" +msgstr "" +"E467: Il completamento personalizzato richiede un argomento di funzione" + #, c-format msgid "E185: Cannot find color scheme %s" msgstr "E185: Non riesco a trovare schema colore %s" @@ -1420,6 +1420,12 @@ msgstr "non msgid "[New File]" msgstr "[File nuovo]" +msgid "[New DIRECTORY]" +msgstr "[Nuova DIRECTORY]" + +msgid "[File too big]" +msgstr "[File troppo grande]" + msgid "[Permission Denied]" msgstr "[Tipo di accesso non consentito]" @@ -1469,8 +1475,9 @@ msgstr "[convertito]" msgid "[crypted]" msgstr "[cifrato]" -msgid "[CONVERSION ERROR]" -msgstr "[ERRORE DI CONVERSIONE]" +#, c-format +msgid "[CONVERSION ERROR in line %ld]" +msgstr "[ERRORE DI CONVERSIONE alla linea %ld]" #, c-format msgid "[ILLEGAL BYTE in line %ld]" @@ -3024,25 +3031,6 @@ msgstr "" msgid "--socketid \tOpen Vim inside another GTK widget" msgstr "--socketid \tApri Vim dentro un altro 'widget' GTK" -msgid "" -"\n" -"Arguments recognised by kvim (KDE version):\n" -msgstr "" -"\n" -"Argomenti accettati da kvim (versione KDE):\n" - -msgid "-black\t\tUse reverse video" -msgstr "-black\t\tUsa colori invertiti" - -msgid "-tip\t\t\tDisplay the tip dialog on startup" -msgstr "-tip\t\t\tMostra la finestra consigli all'avvio" - -msgid "-notip\t\tDisable the tip dialog" -msgstr "-notip\t\tDisabilita la finestra consigli" - -msgid "--display \tRun vim on " -msgstr "--display \tEsegui vim su " - msgid "-P \tOpen Vim inside parent application" msgstr "-P \tApri Vim in un'applicazione padre" @@ -3468,6 +3456,10 @@ msgstr "Dimensione 'stack' aumentata" msgid "E317: pointer block id wrong 2" msgstr "E317: ID blocco puntatori errato 2" +#, c-format +msgid "E773: Symlink loop for \"%s\"" +msgstr "E773: Collegamento ricorsivo per \"%s\"" + msgid "E325: ATTENTION" msgstr "E325: ATTENZIONE" @@ -3641,6 +3633,10 @@ msgstr "Interruzione: " msgid "Press ENTER or type command to continue" msgstr "Premi INVIO o un comando per proseguire" +#, c-format +msgid "%s line %ld" +msgstr "%s linea %ld" + msgid "-- More --" msgstr "-- Ancora --" @@ -3830,6 +3826,12 @@ msgstr "E658: Connessione NetBeans persa per il buffer %ld" msgid "E505: " msgstr "E505: " +msgid "E774: 'operatorfunc' is empty" +msgstr "E774: opzione 'operatorfunc' non impostata" + +msgid "E775: Eval feature not available" +msgstr "E775: Tipo di valorizzazione [eval] non disponibile" + msgid "Warning: terminal cannot highlight" msgstr "Attenzione: il terminale non è in grado di evidenziare" @@ -3843,7 +3845,7 @@ msgid "E352: Cannot erase folds with current 'foldmethod'" msgstr "E352: Non posso togliere piegature con il 'foldmethod' in uso" msgid "E664: changelist is empty" -msgstr "E664: lista modifiche vuota" +msgstr "E664: lista modifiche non impostata" msgid "E662: At start of changelist" msgstr "E662: All'inizio della lista modifiche" @@ -4225,14 +4227,6 @@ msgstr "Vim: Intercettato segnale fatale\n" msgid "Opening the X display took %ld msec" msgstr "Attivazione visualizzazione X ha richiesto %ld msec" -#. KDE sometimes produces X error that we want to ignore -msgid "" -"\n" -"Vim: Got X error but we continue...\n" -msgstr "" -"\n" -"Vim: Preso errore X ma andiamo avanti...\n" - msgid "" "\n" "Vim: Got X error\n" @@ -4562,12 +4556,6 @@ msgstr " SELEZIONA BLOCCO" msgid "recording" msgstr "registrazione" -msgid "search hit TOP, continuing at BOTTOM" -msgstr "raggiunta la CIMA nella ricerca, continuo dal FONDO" - -msgid "search hit BOTTOM, continuing at TOP" -msgstr "raggiunto il FONDO nella ricerca, continuo dalla CIMA" - #, c-format msgid "E383: Invalid search string: %s" msgstr "E383: Stringa di ricerca non valida: %s" @@ -4645,7 +4633,7 @@ msgid "Compressing word tree..." msgstr "Comprimo albero di parole..." msgid "E756: Spell checking is not enabled" -msgstr "E756: Il controllo ortografico non è abilitato" +msgstr "E756: Controllo ortografico non abilitato" #, c-format msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\"" @@ -4659,7 +4647,7 @@ msgid "E757: This does not look like a spell file" msgstr "E757: Questo non sembra un file ortografico" msgid "E771: Old spell file, needs to be updated" -msgstr "E771: File ortografico obsoleto, necessario aggiornamento" +msgstr "E771: File ortografico obsoleto, è necessario aggiornarlo" msgid "E772: Spell file is for newer version of Vim" msgstr "E772: Il file ortografico è per versioni di Vim più recenti" @@ -4712,13 +4700,25 @@ msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s" msgstr "Valore errato per COMPOUNDSYLMAX in %s linea %d: %s" #, c-format -msgid "Expected Y or N in %s line %d: %s" -msgstr "Y o N deve essere presente in %s linea %d: %s" +msgid "Different combining flag in continued affix block in %s line %d: %s" +msgstr "" +"Flag combinazione diverso in blocco affissi continuo in %s linea %d: %s" #, c-format msgid "Duplicate affix in %s line %d: %s" msgstr "Affisso duplicato in %s linea %d: %s" +#, c-format +msgid "" +"Affix also used for BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND in %s line %d: %" +"s" +msgstr "" +"Affisso usato anche per BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND in %s linea %d: %s" + +#, c-format +msgid "Expected Y or N in %s line %d: %s" +msgstr "Y o N deve essere presente in %s linea %d: %s" + #, c-format msgid "Broken condition in %s line %d: %s" msgstr "Condizione non rispettata in %s linea %d: %s" @@ -4747,13 +4747,13 @@ msgid "COMPOUNDSYLMAX used without SYLLABLE" msgstr "COMPOUNDSYLMAX usato senza SYLLABLE" msgid "Too many postponed prefixes" -msgstr "Troppi prefissi posposti" +msgstr "Troppi suffissi" msgid "Too many compound flags" msgstr "Troppi flag composti" msgid "Too many posponed prefixes and/or compound flags" -msgstr "Troppi prefissi posposti e/o flag composti" +msgstr "Troppi suffissi e/o flag composti" #, c-format msgid "Missing SOFO%s line in %s" @@ -4867,11 +4867,8 @@ msgstr "Fatto!" msgid "Estimated runtime memory use: %d bytes" msgstr "Uso stimato di memoria durante esecuzione: %d bytes" -msgid "E764: 'spellfile' is not set" -msgstr "E764: opzione 'spellfile' vuota" - #, c-format -msgid "E765: 'spellfile' does not have %ld enties" +msgid "E765: 'spellfile' does not have %ld entries" msgstr "E765: 'spellfile' non ha %ld elementi" msgid "E763: Word characters differ between spell files" @@ -5406,9 +5403,6 @@ msgstr "con GUI Cocoa." msgid "with (classic) GUI." msgstr "con GUI (classica)." -msgid "with KDE GUI." -msgstr "con GUI KDE." - msgid " Features included (+) or not (-):\n" msgstr " Opzioni incluse (+) o escluse (-):\n" @@ -5862,7 +5856,7 @@ msgid "E49: Invalid scroll size" msgstr "E49: Quantità di 'scroll' non valida" msgid "E91: 'shell' option is empty" -msgstr "E91: opzione 'shell' vuota" +msgstr "E91: opzione 'shell' non impostata" msgid "E255: Couldn't read in sign data!" msgstr "E255: Errore -- non sono riuscito a leggere i dati del 'sign'!" @@ -5871,7 +5865,7 @@ msgid "E72: Close error on swap file" msgstr "E72: Errore durante chiusura swap file" msgid "E73: tag stack empty" -msgstr "E73: tag stack vuota" +msgstr "E73: tag stack non impostata" msgid "E74: Command too complex" msgstr "E74: Comando troppo complesso" @@ -5933,3 +5927,13 @@ msgstr "E682: Espressione o delimitatore di ricerca non validi" msgid "E139: File is loaded in another buffer" msgstr "E139: File già caricato in un altro buffer" + +#, c-format +msgid "E764: Option '%s' is not set" +msgstr "E764: opzione '%s' non impostata" + +msgid "search hit TOP, continuing at BOTTOM" +msgstr "raggiunta la CIMA nella ricerca, continuo dal FONDO" + +msgid "search hit BOTTOM, continuing at TOP" +msgstr "raggiunto il FONDO nella ricerca, continuo dalla CIMA" diff --git a/src/proto/eval.pro b/src/proto/eval.pro index 7c0ca84026..0b76ff6af4 100644 --- a/src/proto/eval.pro +++ b/src/proto/eval.pro @@ -61,6 +61,7 @@ void set_reg_var __ARGS((int c)); char_u *v_exception __ARGS((char_u *oldval)); char_u *v_throwpoint __ARGS((char_u *oldval)); char_u *set_cmdarg __ARGS((exarg_T *eap, char_u *oldarg)); +void free_tv __ARGS((typval_T *varp)); void clear_tv __ARGS((typval_T *varp)); long get_tv_number_chk __ARGS((typval_T *varp, int *denote)); char_u *get_tv_string_chk __ARGS((typval_T *varp)); diff --git a/src/proto/hashtable.pro b/src/proto/hashtable.pro index aebb458d66..90723765c3 100644 --- a/src/proto/hashtable.pro +++ b/src/proto/hashtable.pro @@ -1,6 +1,7 @@ /* hashtable.c */ void hash_init __ARGS((hashtab_T *ht)); void hash_clear __ARGS((hashtab_T *ht)); +void hash_clear_all __ARGS((hashtab_T *ht, int off)); hashitem_T *hash_find __ARGS((hashtab_T *ht, char_u *key)); hashitem_T *hash_lookup __ARGS((hashtab_T *ht, char_u *key, hash_T hash)); void hash_debug_results __ARGS((void)); diff --git a/src/proto/memline.pro b/src/proto/memline.pro index 90d3285595..de75a7dcf6 100644 --- a/src/proto/memline.pro +++ b/src/proto/memline.pro @@ -1,32 +1,33 @@ /* memline.c */ -extern int ml_open __ARGS((void)); -extern void ml_setname __ARGS((buf_T *buf)); -extern void ml_open_files __ARGS((void)); -extern void ml_open_file __ARGS((buf_T *buf)); -extern void check_need_swap __ARGS((int newfile)); -extern void ml_close __ARGS((buf_T *buf, int del_file)); -extern void ml_close_all __ARGS((int del_file)); -extern void ml_close_notmod __ARGS((void)); -extern void ml_timestamp __ARGS((buf_T *buf)); -extern void ml_recover __ARGS((void)); -extern int recover_names __ARGS((char_u **fname, int list, int nr)); -extern void ml_sync_all __ARGS((int check_file, int check_char)); -extern void ml_preserve __ARGS((buf_T *buf, int message)); -extern char_u *ml_get __ARGS((linenr_T lnum)); -extern char_u *ml_get_pos __ARGS((pos_T *pos)); -extern char_u *ml_get_curline __ARGS((void)); -extern char_u *ml_get_cursor __ARGS((void)); -extern char_u *ml_get_buf __ARGS((buf_T *buf, linenr_T lnum, int will_change)); -extern int ml_line_alloced __ARGS((void)); -extern int ml_append __ARGS((linenr_T lnum, char_u *line, colnr_T len, int newfile)); -extern int ml_replace __ARGS((linenr_T lnum, char_u *line, int copy)); -extern int ml_delete __ARGS((linenr_T lnum, int message)); -extern void ml_setmarked __ARGS((linenr_T lnum)); -extern linenr_T ml_firstmarked __ARGS((void)); -extern void ml_clearmarked __ARGS((void)); -extern char_u *makeswapname __ARGS((char_u *fname, char_u *ffname, buf_T *buf, char_u *dir_name)); -extern char_u *get_file_in_dir __ARGS((char_u *fname, char_u *dname)); -extern void ml_setflags __ARGS((buf_T *buf)); -extern long ml_find_line_or_offset __ARGS((buf_T *buf, linenr_T lnum, long *offp)); -extern void goto_byte __ARGS((long cnt)); +int ml_open __ARGS((buf_T *buf)); +void ml_setname __ARGS((buf_T *buf)); +void ml_open_files __ARGS((void)); +void ml_open_file __ARGS((buf_T *buf)); +void check_need_swap __ARGS((int newfile)); +void ml_close __ARGS((buf_T *buf, int del_file)); +void ml_close_all __ARGS((int del_file)); +void ml_close_notmod __ARGS((void)); +void ml_timestamp __ARGS((buf_T *buf)); +void ml_recover __ARGS((void)); +int recover_names __ARGS((char_u **fname, int list, int nr)); +void ml_sync_all __ARGS((int check_file, int check_char)); +void ml_preserve __ARGS((buf_T *buf, int message)); +char_u *ml_get __ARGS((linenr_T lnum)); +char_u *ml_get_pos __ARGS((pos_T *pos)); +char_u *ml_get_curline __ARGS((void)); +char_u *ml_get_cursor __ARGS((void)); +char_u *ml_get_buf __ARGS((buf_T *buf, linenr_T lnum, int will_change)); +int ml_line_alloced __ARGS((void)); +int ml_append __ARGS((linenr_T lnum, char_u *line, colnr_T len, int newfile)); +int ml_append_buf __ARGS((buf_T *buf, linenr_T lnum, char_u *line, colnr_T len, int newfile)); +int ml_replace __ARGS((linenr_T lnum, char_u *line, int copy)); +int ml_delete __ARGS((linenr_T lnum, int message)); +void ml_setmarked __ARGS((linenr_T lnum)); +linenr_T ml_firstmarked __ARGS((void)); +void ml_clearmarked __ARGS((void)); +char_u *makeswapname __ARGS((char_u *fname, char_u *ffname, buf_T *buf, char_u *dir_name)); +char_u *get_file_in_dir __ARGS((char_u *fname, char_u *dname)); +void ml_setflags __ARGS((buf_T *buf)); +long ml_find_line_or_offset __ARGS((buf_T *buf, linenr_T lnum, long *offp)); +void goto_byte __ARGS((long cnt)); /* vim: set ft=c : */ diff --git a/src/proto/spell.pro b/src/proto/spell.pro index 87261a2444..791ec240be 100644 --- a/src/proto/spell.pro +++ b/src/proto/spell.pro @@ -1,5 +1,5 @@ /* spell.c */ -int spell_check __ARGS((win_T *wp, char_u *ptr, hlf_T *attrp, int *capcol)); +int spell_check __ARGS((win_T *wp, char_u *ptr, hlf_T *attrp, int *capcol, int docount)); int spell_move_to __ARGS((win_T *wp, int dir, int allwords, int curline, hlf_T *attrp)); void spell_cat_line __ARGS((char_u *buf, char_u *line, int maxlen)); char_u *did_set_spelllang __ARGS((buf_T *buf)); @@ -14,7 +14,7 @@ void init_spell_chartab __ARGS((void)); int spell_check_sps __ARGS((void)); void spell_suggest __ARGS((int count)); void ex_spellrepall __ARGS((exarg_T *eap)); -void spell_suggest_list __ARGS((garray_T *gap, char_u *word, int maxcount, int need_cap)); +void spell_suggest_list __ARGS((garray_T *gap, char_u *word, int maxcount, int need_cap, int interactive)); char_u *eval_soundfold __ARGS((char_u *word)); void ex_spelldump __ARGS((exarg_T *eap)); char_u *spell_to_word_end __ARGS((char_u *start, buf_T *buf)); diff --git a/src/quickfix.c b/src/quickfix.c index d0a2e153e9..f550f116a6 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -86,6 +86,7 @@ struct eformat /* 'O' overread (partial) message */ char_u flags; /* additional flags given in prefix */ /* '-' do not include this line */ + /* '+' include whole line in message */ }; static int qf_init_ext __ARGS((char_u *efile, buf_T *buf, typval_T *tv, char_u *errorformat, int newlist, linenr_T lnumfirst, linenr_T lnumlast)); @@ -578,7 +579,7 @@ restofline: col = (int)atol((char *)regmatch.startp[i]); if ((i = (int)fmt_ptr->addr[4]) > 0) /* %t */ type = *regmatch.startp[i]; - if (fmt_ptr->flags == '+' && !multiscan) /* %+ */ + if (fmt_ptr->flags == '+' && !multiscan) /* %+ */ STRCPY(errmsg, IObuff); else if ((i = (int)fmt_ptr->addr[5]) > 0) /* %m */ { @@ -613,9 +614,9 @@ restofline: } } multiscan = FALSE; - if (!fmt_ptr || idx == 'D' || idx == 'X') + if (fmt_ptr == NULL || idx == 'D' || idx == 'X') { - if (fmt_ptr) + if (fmt_ptr != NULL) { if (idx == 'D') /* enter directory */ { @@ -634,10 +635,10 @@ restofline: lnum = 0; /* don't jump to this line */ valid = FALSE; STRCPY(errmsg, IObuff); /* copy whole line to error message */ - if (!fmt_ptr) + if (fmt_ptr == NULL) multiline = multiignore = FALSE; } - else if (fmt_ptr) + else if (fmt_ptr != NULL) { if (vim_strchr((char_u *)"AEWI", idx) != NULL) multiline = TRUE; /* start of a multi-line message */ @@ -2747,7 +2748,7 @@ load_dummy_buffer(fname) /* Need to set the filename for autocommands. */ (void)setfname(curbuf, fname, NULL, FALSE); - if (ml_open() == OK) + if (ml_open(curbuf) == OK) { /* Create swap file now to avoid the ATTENTION message. */ check_need_swap(TRUE); @@ -2978,7 +2979,7 @@ ex_cbuffer(eap) #if defined(FEAT_EVAL) || defined(PROTO) /* - * ":cexpr {expr}" command. + * ":cexpr {expr}" and ":caddexpr {expr}" command. */ void ex_cexpr(eap) @@ -2986,16 +2987,23 @@ ex_cexpr(eap) { typval_T *tv; + /* Evaluate the expression. When the result is a string or a list we can + * use it to fill the errorlist. */ tv = eval_expr(eap->arg, NULL); - if (!tv || (tv->v_type != VAR_STRING && tv->v_type != VAR_LIST) || - (tv->v_type == VAR_STRING && !tv->vval.v_string) || - (tv->v_type == VAR_LIST && !tv->vval.v_list)) - return; - - if (qf_init_ext(NULL, NULL, tv, p_efm, TRUE, (linenr_T)0, (linenr_T)0) > 0) - qf_jump(0, 0, eap->forceit); /* display first error */ - - clear_tv(tv); + if (tv != NULL) + { + if ((tv->v_type == VAR_STRING && tv->vval.v_string != NULL) + || (tv->v_type == VAR_LIST && tv->vval.v_list != NULL)) + { + if (qf_init_ext(NULL, NULL, tv, p_efm, eap->cmdidx == CMD_cexpr, + (linenr_T)0, (linenr_T)0) > 0 + && eap->cmdidx == CMD_cexpr) + qf_jump(0, 0, eap->forceit); /* display first error */ + } + else + EMSG(_("E999: String or List expected")); + free_tv(tv); + } } #endif diff --git a/src/screen.c b/src/screen.c index 09821bd1a9..fb55934477 100644 --- a/src/screen.c +++ b/src/screen.c @@ -134,7 +134,7 @@ static void fold_line __ARGS((win_T *wp, long fold_count, foldinfo_T *foldinfo, static void fill_foldcolumn __ARGS((char_u *p, win_T *wp, int closed, linenr_T lnum)); static void copy_text_attr __ARGS((int off, char_u *buf, int len, int attr)); #endif -static int win_line __ARGS((win_T *, linenr_T, int, int)); +static int win_line __ARGS((win_T *, linenr_T, int, int, int nochange)); static int char_needs_redraw __ARGS((int off_from, int off_to, int cols)); #ifdef FEAT_RIGHTLEFT static void screen_line __ARGS((int row, int coloff, int endcol, int clear_width, int rlflag)); @@ -1681,7 +1681,7 @@ win_update(wp) /* * Display one line. */ - row = win_line(wp, lnum, srow, wp->w_height); + row = win_line(wp, lnum, srow, wp->w_height, mod_top == 0); #ifdef FEAT_FOLDING wp->w_lines[idx].wl_folded = FALSE; @@ -2446,12 +2446,14 @@ fill_foldcolumn(p, wp, closed, lnum) * * Return the number of last row the line occupies. */ +/* ARGSUSED */ static int -win_line(wp, lnum, startrow, endrow) +win_line(wp, lnum, startrow, endrow, nochange) win_T *wp; linenr_T lnum; int startrow; int endrow; + int nochange; /* not updating for changed text */ { int col; /* visual column on screen */ unsigned off; /* offset in ScreenLines/ScreenAttrs */ @@ -3744,7 +3746,8 @@ win_line(wp, lnum, startrow, endrow) else p = prev_ptr; cap_col -= (prev_ptr - line); - len = spell_check(wp, p, &spell_hlf, &cap_col); + len = spell_check(wp, p, &spell_hlf, &cap_col, + nochange); word_end = v + len; /* In Insert mode only highlight a word that diff --git a/src/spell.c b/src/spell.c index ffe5a207c1..a1ab89c826 100644 --- a/src/spell.c +++ b/src/spell.c @@ -43,6 +43,9 @@ * * Thanks to Olaf Seibert for providing an example implementation of this tree * and the compression mechanism. + * LZ trie ideas: + * http://www.irb.hr/hr/home/ristov/papers/RistovLZtrieRevision1.pdf + * More papers: http://www-igm.univ-mlv.fr/~laporte/publi_en.html * * Matching involves checking the caps type: Onecap ALLCAP KeepCap. * @@ -56,16 +59,27 @@ # define SPELL_PRINTTREE #endif +/* Use DEBUG_TRIEWALK to print the changes made in suggest_trie_walk(). */ +#if 0 +# define DEBUG_TRIEWALK +#endif + /* * Use this to adjust the score after finding suggestions, based on the * suggested word sounding like the bad word. This is much faster than doing * it for every possible suggestion. - * Disadvantage: When "the" is typed as "hte" it sounds different and goes - * down in the list. + * Disadvantage: When "the" is typed as "hte" it sounds quite different ("@" + * vs "ht") and goes down in the list. * Used when 'spellsuggest' is set to "best". */ #define RESCORE(word_score, sound_score) ((3 * word_score + sound_score) / 4) +/* + * Do the opposite: based on a maximum end score and a known sound score, + * compute the the maximum word score that can be used. + */ +#define MAXSCORE(word_score, sound_score) ((4 * word_score - sound_score) / 3) + /* * Vim spell file format:

    * @@ -133,6 +147,9 @@ * 1 byte length of * N bytes "to" part of replacement * + * sectionID == SN_REPSAL: ... + * just like SN_REP but for soundfolded words + * * sectionID == SN_SAL: ... * 1 byte flags for soundsalike conversion: * SAL_F0LLOWUP @@ -151,6 +168,12 @@ * 2 bytes length of * N bytes "to" part of soundfold * + * sectionID == SN_SUGFILE: + * 8 bytes time in seconds that must match with .sug file + * + * sectionID == SN_WORDS: ... + * N bytes NUL terminated common word + * * sectionID == SN_MAP: * N bytes String with sequences of similar characters, * separated by slashes. @@ -236,6 +259,32 @@ * All text characters are in 'encoding', but stored as single bytes. */ +/* + * Vim .sug file format: + * + * + * + * : + * + * 6 bytes "VIMsug" + * 1 byte VIMSUGVERSION + * 8 bytes timestamp that must match with .spl file + * + * + * : (see above, no flags or region used) + * + * + * : ... + * + * 4 bytes number of following + * + * : ... NUL + * + * : X bytes word number that results in this soundfolded word, + * stored as an offset to the previous number in as + * few bytes as possible, see offset2bytes()) + */ + #if defined(MSDOS) || defined(WIN16) || defined(WIN32) || defined(_WIN64) # include /* for lseek(), must be before vim.h */ #endif @@ -248,6 +297,10 @@ # include #endif +#ifndef UNIX /* it's in os_unix.h for Unix */ +# include /* for time_t */ +#endif + #define MAXWLEN 250 /* Assume max. word len is this many bytes. Some places assume a word length fits in a byte, thus it can't be above 255. */ @@ -302,8 +355,8 @@ typedef long idx_T; * follow; never used in prefix tree */ #define BY_SPECIAL BY_FLAGS2 /* highest special byte value */ -/* Info from "REP" and "SAL" entries in ".aff" file used in si_rep, sl_rep, - * and si_sal. Not for sl_sal! +/* Info from "REP", "REPSAL" and "SAL" entries in ".aff" file used in si_rep, + * si_repsal, sl_rep, and si_sal. Not for sl_sal! * One replacement: from "ft_from" to "ft_to". */ typedef struct fromto_S { @@ -374,6 +427,8 @@ struct slang_S char_u *sl_midword; /* MIDWORD string or NULL */ + hashtab_T sl_wordcount; /* hashtable with word count, wordcount_T */ + int sl_compmax; /* COMPOUNDMAX (default: MAXWLEN) */ int sl_compminlen; /* COMPOUNDMIN (default: 0) */ int sl_compsylmax; /* COMPOUNDSYLMAX (default: MAXWLEN) */ @@ -394,12 +449,23 @@ struct slang_S garray_T sl_sal; /* list of salitem_T entries from SAL lines */ salfirst_T sl_sal_first[256]; /* indexes where byte first appears, -1 if there is none */ - int sl_sofo; /* SOFOFROM and SOFOTO instead of SAL items: - * "sl_sal_first" maps chars, when has_mbyte - * "sl_sal" is a list of wide char lists. */ int sl_followup; /* SAL followup */ int sl_collapse; /* SAL collapse_result */ int sl_rem_accents; /* SAL remove_accents */ + int sl_sofo; /* SOFOFROM and SOFOTO instead of SAL items: + * "sl_sal_first" maps chars, when has_mbyte + * "sl_sal" is a list of wide char lists. */ + garray_T sl_repsal; /* list of fromto_T entries from REPSAL lines */ + short sl_repsal_first[256]; /* sl_rep_first for REPSAL lines */ + + /* Info from the .sug file. Loaded on demand. */ + time_t sl_sugtime; /* timestamp for .sug file */ + char_u *sl_sbyts; /* soundfolded word bytes */ + idx_T *sl_sidxs; /* soundfolded word indexes */ + buf_T *sl_sugbuf; /* buffer with word number table */ + int sl_sugloaded; /* TRUE when .sug file was loaded or failed to + load */ + int sl_has_map; /* TRUE if there is a MAP line */ #ifdef FEAT_MBYTE hashtab_T sl_map_hash; /* MAP for multi-byte chars */ @@ -407,6 +473,8 @@ struct slang_S #else char_u sl_map_array[256]; /* MAP for first 256 chars */ #endif + hashtab_T sl_sounddone; /* table with soundfolded words that have + handled, see add_sound_suggest() */ }; /* First language that is loaded, start of the linked list of loaded @@ -437,6 +505,10 @@ typedef struct langp_S #define VIMSPELLMAGICL 8 #define VIMSPELLVERSION 50 +#define VIMSUGMAGIC "VIMsug" /* string at start of Vim .sug file */ +#define VIMSUGMAGICL 6 +#define VIMSUGVERSION 1 + /* Section IDs. Only renumber them when VIMSPELLVERSION changes! */ #define SN_REGION 0 /* section */ #define SN_CHARFLAGS 1 /* charflags section */ @@ -449,6 +521,9 @@ typedef struct langp_S #define SN_COMPOUND 8 /* compound words section */ #define SN_SYLLABLE 9 /* syllable section */ #define SN_NOBREAK 10 /* NOBREAK section */ +#define SN_SUGFILE 11 /* timestamp for .sug file */ +#define SN_REPSAL 12 /* REPSAL items section */ +#define SN_WORDS 13 /* common words */ #define SN_END 255 /* end of sections */ #define SNF_REQUIRED 1 /* : required section */ @@ -463,6 +538,17 @@ typedef struct langp_S /* file used for "zG" and "zW" */ static char_u *int_wordlist = NULL; +typedef struct wordcount_S +{ + short_u wc_count; /* nr of times word was seen */ + char_u wc_word[1]; /* word, actually longer */ +} wordcount_T; + +static wordcount_T dumwc; +#define WC_KEY_OFF (dumwc.wc_word - (char_u *)&dumwc) +#define HI2WC(hi) ((wordcount_T *)((hi)->hi_key - WC_KEY_OFF)) +#define MAXWORDCOUNT 0xffff + /* * Information used when looking for suggestions. */ @@ -471,6 +557,7 @@ typedef struct suginfo_S garray_T su_ga; /* suggestions, contains "suggest_T" */ int su_maxcount; /* max. number of suggestions displayed */ int su_maxscore; /* maximum score for adding to su_ga */ + int su_sfmaxscore; /* idem, for when doing soundfold words */ garray_T su_sga; /* like su_ga, sound-folded scoring */ char_u *su_badptr; /* start of bad word in line */ int su_badlen; /* length of detected bad word in line */ @@ -478,7 +565,6 @@ typedef struct suginfo_S char_u su_badword[MAXWLEN]; /* bad word truncated at su_badlen */ char_u su_fbadword[MAXWLEN]; /* su_badword case-folded */ char_u su_sal_badword[MAXWLEN]; /* su_badword soundfolded */ - slang_T *su_slang_first; /* slang_T used for su_sal_badword */ hashtab_T su_banned; /* table with banned words */ slang_T *su_sallang; /* default language for sound folding */ } suginfo_T; @@ -487,6 +573,7 @@ typedef struct suginfo_S typedef struct suggest_S { char_u *st_word; /* suggested word, allocated string */ + int st_wordlen; /* STRLEN(st_word) */ int st_orglen; /* length of replaced text */ int st_score; /* lower is better */ int st_altscore; /* used when st_score compares equal */ @@ -497,21 +584,24 @@ typedef struct suggest_S #define SUG(ga, i) (((suggest_T *)(ga).ga_data)[i]) -/* Number of suggestions kept when cleaning up. When rescore_suggestions() is - * called the score may change, thus we need to keep more than what is - * displayed. */ -#define SUG_CLEAN_COUNT(su) ((su)->su_maxcount < 50 ? 50 : (su)->su_maxcount) +/* TRUE if a word appears in the list of banned words. */ +#define WAS_BANNED(su, word) (!HASHITEM_EMPTY(hash_find(&su->su_banned, word))) + +/* Number of suggestions kept when cleaning up. we need to keep more than + * what is displayed, because when rescore_suggestions() is called the score + * may change and wrong suggestions may be removed later. */ +#define SUG_CLEAN_COUNT(su) ((su)->su_maxcount < 130 ? 150 : (su)->su_maxcount + 20) /* Threshold for sorting and cleaning up suggestions. Don't want to keep lots * of suggestions that are not going to be displayed. */ -#define SUG_MAX_COUNT(su) ((su)->su_maxcount + 50) +#define SUG_MAX_COUNT(su) (SUG_CLEAN_COUNT(su) + 50) /* score for various changes */ #define SCORE_SPLIT 149 /* split bad word */ #define SCORE_ICASE 52 /* slightly different case */ #define SCORE_REGION 200 /* word is for different region */ #define SCORE_RARE 180 /* rare word */ -#define SCORE_SWAP 90 /* swap two characters */ +#define SCORE_SWAP 75 /* swap two characters */ #define SCORE_SWAP3 110 /* swap two characters in three */ #define SCORE_REP 65 /* REP replacement */ #define SCORE_SUBST 93 /* substitute a character */ @@ -529,8 +619,27 @@ typedef struct suggest_S #define SCORE_MAXINIT 350 /* Initial maximum score: higher == slower. * 350 allows for about three changes. */ +#define SCORE_COMMON1 30 /* subtracted for words seen before */ +#define SCORE_COMMON2 40 /* subtracted for words often seen */ +#define SCORE_COMMON3 50 /* subtracted for words very often seen */ +#define SCORE_THRES2 10 /* word count threshold for COMMON2 */ +#define SCORE_THRES3 100 /* word count threshold for COMMON3 */ + +/* When trying changed soundfold words it becomes slow when trying more than + * two changes. With less then two changes it's slightly faster but we miss a + * few good suggestions. In rare cases we need to try three of four changes. + */ +#define SCORE_SFMAX1 200 /* maximum score for first try */ +#define SCORE_SFMAX2 300 /* maximum score for second try */ +#define SCORE_SFMAX3 400 /* maximum score for third try */ + #define SCORE_BIG SCORE_INS * 3 /* big difference */ -#define SCORE_MAXMAX 999999 /* accept any score */ +#define SCORE_MAXMAX 999999 /* accept any score */ +#define SCORE_LIMITMAX 350 /* for spell_edit_score_limit() */ + +/* for spell_edit_score_limit() we need to know the minimum value of + * SCORE_ICASE, SCORE_SWAP, SCORE_DEL, SCORE_SIMILAR and SCORE_INS */ +#define SCORE_EDIT_MIN SCORE_SIMILAR /* * Structure to store info for word matching. @@ -617,6 +726,7 @@ typedef enum STATE_ENDNUL, /* Past NUL bytes at start of the node. */ STATE_PLAIN, /* Use each byte of the node. */ STATE_DEL, /* Delete a byte from the bad word. */ + STATE_INS_PREP, /* Prepare for inserting bytes. */ STATE_INS, /* Insert a byte in the bad word. */ STATE_SWAP, /* Swap two bytes. */ STATE_UNSWAP, /* Undo swap two characters. */ @@ -657,6 +767,8 @@ typedef struct trystate_S char_u ts_complen; /* nr of compound words used */ char_u ts_compsplit; /* index for "compflags" where word was spit */ char_u ts_save_badflags; /* su_badflags saved here */ + char_u ts_delidx; /* index in fword for char that was deleted, + valid when "ts_flags" has TSF_DIDDEL */ } trystate_T; /* values for ts_isdiff */ @@ -667,11 +779,12 @@ typedef struct trystate_S /* values for ts_flags */ #define TSF_PREFIXOK 1 /* already checked that prefix is OK */ #define TSF_DIDSPLIT 2 /* tried split at this point */ +#define TSF_DIDDEL 4 /* did a delete, "ts_delidx" has index */ /* special values ts_prefixdepth */ #define PFD_NOPREFIX 0xff /* not using prefixes */ #define PFD_PREFIXTREE 0xfe /* walking through the prefix tree */ -#define PFD_NOTSPECIAL 0xfd /* first value that's not special */ +#define PFD_NOTSPECIAL 0xfd /* highest value that's not special */ /* mode values for find_word */ #define FIND_FOLDWORD 0 /* find word case-folded */ @@ -683,6 +796,7 @@ typedef struct trystate_S static slang_T *slang_alloc __ARGS((char_u *lang)); static void slang_free __ARGS((slang_T *lp)); static void slang_clear __ARGS((slang_T *lp)); +static void slang_clear_sug __ARGS((slang_T *lp)); static void find_word __ARGS((matchinf_T *mip, int mode)); static int can_compound __ARGS((slang_T *slang, char_u *word, char_u *flags)); static int valid_word_prefix __ARGS((int totprefcnt, int arridx, int flags, char_u *word, slang_T *slang, int cond_req)); @@ -700,8 +814,11 @@ static char_u *read_string __ARGS((FILE *fd, int cnt)); static int read_region_section __ARGS((FILE *fd, slang_T *slang, int len)); static int read_charflags_section __ARGS((FILE *fd)); static int read_prefcond_section __ARGS((FILE *fd, slang_T *lp)); -static int read_rep_section __ARGS((FILE *fd, slang_T *slang)); +static int read_rep_section __ARGS((FILE *fd, garray_T *gap, short *first)); static int read_sal_section __ARGS((FILE *fd, slang_T *slang)); +static int read_words_section __ARGS((FILE *fd, slang_T *lp, int len)); +static void count_common_word __ARGS((slang_T *lp, char_u *word, int len, int count)); +static int score_wordcount_adj __ARGS((slang_T *slang, int score, char_u *word, int split)); static int read_sofo_section __ARGS((FILE *fd, slang_T *slang)); static int read_compound __ARGS((FILE *fd, slang_T *slang, int len)); static int byte_in_str __ARGS((char_u *str, int byte)); @@ -712,7 +829,8 @@ static void set_sal_first __ARGS((slang_T *lp)); #ifdef FEAT_MBYTE static int *mb_str2wide __ARGS((char_u *s)); #endif -static idx_T read_tree __ARGS((FILE *fd, char_u *byts, idx_T *idxs, int maxidx, int startidx, int prefixtree, int maxprefcondnr)); +static int spell_read_tree __ARGS((FILE *fd, char_u **bytsp, idx_T **idxsp, int prefixtree, int prefixcnt)); +static idx_T read_tree_node __ARGS((FILE *fd, char_u *byts, idx_T *idxs, int maxidx, int startidx, int prefixtree, int maxprefcondnr)); static void clear_midword __ARGS((buf_T *buf)); static void use_midword __ARGS((slang_T *lp, buf_T *buf)); static int find_region __ARGS((char_u *rp, char_u *region)); @@ -723,18 +841,21 @@ static void set_spell_charflags __ARGS((char_u *flags, int cnt, char_u *upp)); static int set_spell_chartab __ARGS((char_u *fol, char_u *low, char_u *upp)); static int spell_casefold __ARGS((char_u *p, int len, char_u *buf, int buflen)); static int check_need_cap __ARGS((linenr_T lnum, colnr_T col)); -static void spell_find_suggest __ARGS((char_u *badptr, suginfo_T *su, int maxcount, int banbadword, int need_cap)); +static void spell_find_suggest __ARGS((char_u *badptr, suginfo_T *su, int maxcount, int banbadword, int need_cap, int interactive)); #ifdef FEAT_EVAL static void spell_suggest_expr __ARGS((suginfo_T *su, char_u *expr)); #endif static void spell_suggest_file __ARGS((suginfo_T *su, char_u *fname)); -static void spell_suggest_intern __ARGS((suginfo_T *su)); +static void spell_suggest_intern __ARGS((suginfo_T *su, int interactive)); +static void suggest_load_files __ARGS((void)); +static void tree_count_words __ARGS((char_u *byts, idx_T *idxs)); static void spell_find_cleanup __ARGS((suginfo_T *su)); static void onecap_copy __ARGS((char_u *word, char_u *wcopy, int upper)); static void allcap_copy __ARGS((char_u *word, char_u *wcopy)); static void suggest_try_special __ARGS((suginfo_T *su)); static void suggest_try_change __ARGS((suginfo_T *su)); -static int try_deeper __ARGS((suginfo_T *su, trystate_T *stack, int depth, int score_add)); +static void suggest_trie_walk __ARGS((suginfo_T *su, langp_T *lp, char_u *fword, int soundfold)); +static void go_deeper __ARGS((trystate_T *stack, int depth, int score_add)); #ifdef FEAT_MBYTE static int nofold_len __ARGS((char_u *fword, int flen, char_u *word)); #endif @@ -742,14 +863,17 @@ static void find_keepcap_word __ARGS((slang_T *slang, char_u *fword, char_u *kwo static void score_comp_sal __ARGS((suginfo_T *su)); static void score_combine __ARGS((suginfo_T *su)); static int stp_sal_score __ARGS((suggest_T *stp, suginfo_T *su, slang_T *slang, char_u *badsound)); +static void suggest_try_soundalike_prep __ARGS((void)); static void suggest_try_soundalike __ARGS((suginfo_T *su)); +static void suggest_try_soundalike_finish __ARGS((void)); +static void add_sound_suggest __ARGS((suginfo_T *su, char_u *goodword, int score, langp_T *lp)); +static int soundfold_find __ARGS((slang_T *slang, char_u *word)); static void make_case_word __ARGS((char_u *fword, char_u *cword, int flags)); static void set_map_str __ARGS((slang_T *lp, char_u *map)); static int similar_chars __ARGS((slang_T *slang, int c1, int c2)); -static void add_suggestion __ARGS((suginfo_T *su, garray_T *gap, char_u *goodword, int badlen, int score, int altscore, int had_bonus, slang_T *slang)); +static void add_suggestion __ARGS((suginfo_T *su, garray_T *gap, char_u *goodword, int badlen, int score, int altscore, int had_bonus, slang_T *slang, int maxsf)); +static void check_suggestions __ARGS((suginfo_T *su, garray_T *gap)); static void add_banned __ARGS((suginfo_T *su, char_u *word)); -static int was_banned __ARGS((suginfo_T *su, char_u *word)); -static void free_banned __ARGS((suginfo_T *su)); static void rescore_suggestions __ARGS((suginfo_T *su)); static void rescore_one __ARGS((suginfo_T *su, suggest_T *stp)); static int cleanup_suggestions __ARGS((garray_T *gap, int maxscore, int keep)); @@ -760,9 +884,15 @@ static void spell_soundfold_sal __ARGS((slang_T *slang, char_u *inword, char_u * static void spell_soundfold_wsal __ARGS((slang_T *slang, char_u *inword, char_u *res)); #endif static int soundalike_score __ARGS((char_u *goodsound, char_u *badsound)); -static int spell_edit_score __ARGS((char_u *badword, char_u *goodword)); -static void dump_word __ARGS((char_u *word, int round, int flags, linenr_T lnum)); +static int spell_edit_score __ARGS((slang_T *slang, char_u *badword, char_u *goodword)); +static int spell_edit_score_limit __ARGS((slang_T *slang, char_u *badword, char_u *goodword, int limit)); +#ifdef FEAT_MBYTE +static int spell_edit_score_limit_w __ARGS((slang_T *slang, char_u *badword, char_u *goodword, int limit)); +#endif +static void dump_word __ARGS((slang_T *slang, char_u *word, int round, int flags, linenr_T lnum)); static linenr_T dump_prefixes __ARGS((slang_T *slang, char_u *word, int round, int flags, linenr_T startlnum)); +static buf_T *open_spellbuf __ARGS((void)); +static void close_spellbuf __ARGS((buf_T *buf)); /* * Use our own character-case definitions, because the current locale may @@ -831,11 +961,12 @@ static char *msg_compressing = N_("Compressing word tree..."); * caller can skip over the word. */ int -spell_check(wp, ptr, attrp, capcol) +spell_check(wp, ptr, attrp, capcol, docount) win_T *wp; /* current window */ char_u *ptr; hlf_T *attrp; int *capcol; /* column to check for Capital */ + int docount; /* count good words */ { matchinf_T mi; /* Most things are put in "mi" so that it can be passed to functions quickly. */ @@ -843,6 +974,7 @@ spell_check(wp, ptr, attrp, capcol) int c; int wrongcaplen = 0; int lpi; + int count_word = docount; /* A word never starts at a space or a control character. Return quickly * then, skipping over the character. */ @@ -905,8 +1037,8 @@ spell_check(wp, ptr, attrp, capcol) /* * Loop over the languages specified in 'spelllang'. - * We check them all, because a matching word may be longer than an - * already found matching word. + * We check them all, because a word may be matched longer in another + * language. */ for (lpi = 0; lpi < wp->w_buffer->b_langp.ga_len; ++lpi) { @@ -934,6 +1066,14 @@ spell_check(wp, ptr, attrp, capcol) mi.mi_result = mi.mi_result2; mi.mi_end = mi.mi_end2; } + + /* Count the word in the first language where it's found to be OK. */ + if (count_word && mi.mi_result == SP_OK) + { + count_common_word(mi.mi_lp->lp_slang, ptr, + (int)(mi.mi_end - ptr), 1); + count_word = FALSE; + } } if (mi.mi_result != SP_OK) @@ -1897,7 +2037,7 @@ spell_move_to(wp, dir, allwords, curline, attrp) /* start of word */ attr = HLF_COUNT; - len = spell_check(wp, p, &attr, &capcol); + len = spell_check(wp, p, &attr, &capcol, FALSE); if (attr != HLF_COUNT) { @@ -2140,7 +2280,7 @@ int_wordlist_spl(fname) } /* - * Allocate a new slang_T. + * Allocate a new slang_T for language "lang". "lang" can be NULL. * Caller must fill "sl_next". */ static slang_T * @@ -2152,11 +2292,15 @@ slang_alloc(lang) lp = (slang_T *)alloc_clear(sizeof(slang_T)); if (lp != NULL) { - lp->sl_name = vim_strsave(lang); + if (lang != NULL) + lp->sl_name = vim_strsave(lang); ga_init2(&lp->sl_rep, sizeof(fromto_T), 10); + ga_init2(&lp->sl_repsal, sizeof(fromto_T), 10); lp->sl_compmax = MAXWLEN; lp->sl_compsylmax = MAXWLEN; + hash_init(&lp->sl_wordcount); } + return lp; } @@ -2184,6 +2328,7 @@ slang_clear(lp) fromto_T *ftp; salitem_T *smp; int i; + int round; vim_free(lp->sl_fbyts); lp->sl_fbyts = NULL; @@ -2199,14 +2344,17 @@ slang_clear(lp) vim_free(lp->sl_pidxs); lp->sl_pidxs = NULL; - gap = &lp->sl_rep; - while (gap->ga_len > 0) + for (round = 1; round <= 2; ++round) { - ftp = &((fromto_T *)gap->ga_data)[--gap->ga_len]; - vim_free(ftp->ft_from); - vim_free(ftp->ft_to); + gap = round == 1 ? &lp->sl_rep : &lp->sl_repsal; + while (gap->ga_len > 0) + { + ftp = &((fromto_T *)gap->ga_data)[--gap->ga_len]; + vim_free(ftp->ft_from); + vim_free(ftp->ft_to); + } + ga_clear(gap); } - ga_clear(gap); gap = &lp->sl_sal; if (lp->sl_sofo) @@ -2253,27 +2401,39 @@ slang_clear(lp) lp->sl_syllable = NULL; ga_clear(&lp->sl_syl_items); -#ifdef FEAT_MBYTE - { - int todo = lp->sl_map_hash.ht_used; - hashitem_T *hi; + hash_clear_all(&lp->sl_wordcount, WC_KEY_OFF); + hash_init(&lp->sl_wordcount); - for (hi = lp->sl_map_hash.ht_array; todo > 0; ++hi) - if (!HASHITEM_EMPTY(hi)) - { - --todo; - vim_free(hi->hi_key); - } - } - hash_clear(&lp->sl_map_hash); +#ifdef FEAT_MBYTE + hash_clear_all(&lp->sl_map_hash, 0); #endif + /* Clear info from .sug file. */ + slang_clear_sug(lp); + lp->sl_compmax = MAXWLEN; lp->sl_compminlen = 0; lp->sl_compsylmax = MAXWLEN; lp->sl_regions[0] = NUL; } +/* + * Clear the info from the .sug file in "lp". + */ + static void +slang_clear_sug(lp) + slang_T *lp; +{ + vim_free(lp->sl_sbyts); + lp->sl_sbyts = NULL; + vim_free(lp->sl_sidxs); + lp->sl_sidxs = NULL; + close_spellbuf(lp->sl_sugbuf); + lp->sl_sugbuf = NULL; + lp->sl_sugloaded = FALSE; + lp->sl_sugtime = 0; +} + /* * Load one spell file and store the info into a slang_T. * Invoked through do_in_runtimepath(). @@ -2303,11 +2463,13 @@ spell_load_cb(fname, cookie) /* * Load one spell file and store the info into a slang_T. * - * This is invoked in two ways: + * This is invoked in three ways: * - From spell_load_cb() to load a spell file for the first time. "lang" is * the language name, "old_lp" is NULL. Will allocate an slang_T. * - To reload a spell file that was changed. "lang" is NULL and "old_lp" * points to the existing slang_T. + * - Just after writing a .spl file; it's read back to produce the .sug file. + * "old_lp" is NULL and "lang" is a dummy name. Will allocate an slang_T. * Returns the slang_T the spell file was loaded into. NULL for error. */ static slang_T * @@ -2320,16 +2482,12 @@ spell_load_file(fname, lang, old_lp, silent) FILE *fd; char_u buf[VIMSPELLMAGICL]; char_u *p; - char_u *bp; - idx_T *ip; int i; int n; int len; - int round; char_u *save_sourcing_name = sourcing_name; linenr_T save_sourcing_lnum = sourcing_lnum; slang_T *lp = NULL; - idx_T idx; int c = 0; int res; @@ -2374,7 +2532,8 @@ spell_load_file(fname, lang, old_lp, silent) sourcing_name = fname; sourcing_lnum = 0; - /*
    : + /* + *
    : */ for (i = 0; i < VIMSPELLMAGICL; ++i) buf[i] = getc(fd); /* */ @@ -2433,7 +2592,11 @@ spell_load_file(fname, lang, old_lp, silent) break; case SN_REP: - res = read_rep_section(fd, lp); + res = read_rep_section(fd, &lp->sl_rep, lp->sl_rep_first); + break; + + case SN_REPSAL: + res = read_rep_section(fd, &lp->sl_repsal, lp->sl_repsal_first); break; case SN_SAL: @@ -2452,6 +2615,15 @@ spell_load_file(fname, lang, old_lp, silent) vim_free(p); break; + case SN_WORDS: + res = read_words_section(fd, lp, len); + break; + + case SN_SUGFILE: + for (i = 7; i >= 0; --i) /* */ + lp->sl_sugtime += getc(fd) << (i * 8); + break; + case SN_COMPOUND: res = read_compound(fd, lp, len); break; @@ -2481,9 +2653,9 @@ spell_load_file(fname, lang, old_lp, silent) goto truncerr; break; } +someerror: if (res == SP_FORMERROR) { -formerr: EMSG(_(e_format)); goto endFAIL; } @@ -2497,48 +2669,21 @@ truncerr: goto endFAIL; } - /* round 1: - * round 2: - * round 3: */ - for (round = 1; round <= 3; ++round) - { - /* The tree size was computed when writing the file, so that we can - * allocate it as one long block. */ - len = (getc(fd) << 24) + (getc(fd) << 16) + (getc(fd) << 8) + getc(fd); - if (len < 0) - goto truncerr; - if (len > 0) - { - /* Allocate the byte array. */ - bp = lalloc((long_u)len, TRUE); - if (bp == NULL) - goto endFAIL; - if (round == 1) - lp->sl_fbyts = bp; - else if (round == 2) - lp->sl_kbyts = bp; - else - lp->sl_pbyts = bp; + /* */ + res = spell_read_tree(fd, &lp->sl_fbyts, &lp->sl_fidxs, FALSE, 0); + if (res != 0) + goto someerror; - /* Allocate the index array. */ - ip = (idx_T *)lalloc_clear((long_u)(len * sizeof(int)), TRUE); - if (ip == NULL) - goto endFAIL; - if (round == 1) - lp->sl_fidxs = ip; - else if (round == 2) - lp->sl_kidxs = ip; - else - lp->sl_pidxs = ip; + /* */ + res = spell_read_tree(fd, &lp->sl_kbyts, &lp->sl_kidxs, FALSE, 0); + if (res != 0) + goto someerror; - /* Read the tree and store it in the array. */ - idx = read_tree(fd, bp, ip, len, 0, round == 3, lp->sl_prefixcnt); - if (idx == -1) - goto truncerr; - if (idx < 0) - goto formerr; - } - } + /* */ + res = spell_read_tree(fd, &lp->sl_pbyts, &lp->sl_pidxs, TRUE, + lp->sl_prefixcnt); + if (res != 0) + goto someerror; /* For a new file link it in the list of spell files. */ if (old_lp == NULL) @@ -2733,25 +2878,23 @@ read_prefcond_section(fd, lp) } /* - * Read REP items section from "fd": ... + * Read REP or REPSAL items section from "fd": ... * Return SP_*ERROR flags. */ static int -read_rep_section(fd, slang) +read_rep_section(fd, gap, first) FILE *fd; - slang_T *slang; + garray_T *gap; + short *first; { int cnt; - garray_T *gap; fromto_T *ftp; - short *first; int i; cnt = (getc(fd) << 8) + getc(fd); /* */ if (cnt < 0) return SP_TRUNCERROR; - gap = &slang->sl_rep; if (ga_grow(gap, cnt) == FAIL) return SP_OTHERERROR; @@ -2775,7 +2918,6 @@ read_rep_section(fd, slang) } /* Fill the first-index table. */ - first = slang->sl_rep_first; for (i = 0; i < 256; ++i) first[i] = -1; for (i = 0; i < gap->ga_len; ++i) @@ -2940,6 +3082,119 @@ read_sal_section(fd, slang) return 0; } +/* + * Read SN_WORDS: ... + * Return SP_*ERROR flags. + */ + static int +read_words_section(fd, lp, len) + FILE *fd; + slang_T *lp; + int len; +{ + int done = 0; + int i; + char_u word[MAXWLEN]; + + while (done < len) + { + /* Read one word at a time. */ + for (i = 0; ; ++i) + { + word[i] = getc(fd); + if (word[i] == NUL) + break; + if (i == MAXWLEN - 1) + return SP_FORMERROR; + } + + /* Init the count to 10. */ + count_common_word(lp, word, -1, 10); + done += i + 1; + } + return 0; +} + +/* + * Add a word to the hashtable of common words. + * If it's already there then the counter is increased. + */ + static void +count_common_word(lp, word, len, count) + slang_T *lp; + char_u *word; + int len; /* word length, -1 for upto NUL */ + int count; /* 1 to count once, 10 to init */ +{ + hash_T hash; + hashitem_T *hi; + wordcount_T *wc; + char_u buf[MAXWLEN]; + char_u *p; + + if (len == -1) + p = word; + else + { + vim_strncpy(buf, word, len); + p = buf; + } + + hash = hash_hash(p); + hi = hash_lookup(&lp->sl_wordcount, p, hash); + if (HASHITEM_EMPTY(hi)) + { + wc = (wordcount_T *)alloc(sizeof(wordcount_T) + STRLEN(p)); + if (wc == NULL) + return; + STRCPY(wc->wc_word, p); + wc->wc_count = count; + hash_add_item(&lp->sl_wordcount, hi, wc->wc_word, hash); + } + else + { + wc = HI2WC(hi); + if ((wc->wc_count += count) < (unsigned)count) /* check for overflow */ + wc->wc_count = MAXWORDCOUNT; + } +} + +/* + * Adjust the score of common words. + */ + static int +score_wordcount_adj(slang, score, word, split) + slang_T *slang; + int score; + char_u *word; + int split; /* word was split, less bonus */ +{ + hashitem_T *hi; + wordcount_T *wc; + int bonus; + int newscore; + + hi = hash_find(&slang->sl_wordcount, word); + if (!HASHITEM_EMPTY(hi)) + { + wc = HI2WC(hi); + if (wc->wc_count < SCORE_THRES2) + bonus = SCORE_COMMON1; + else if (wc->wc_count < SCORE_THRES3) + bonus = SCORE_COMMON2; + else + bonus = SCORE_COMMON3; + if (split) + newscore = score - bonus / 2; + else + newscore = score - bonus; + if (newscore < 0) + return 0; + return newscore; + } + return score; +} + /* * SN_SOFO: * Return SP_*ERROR flags. @@ -3433,18 +3688,64 @@ mb_str2wide(s) } #endif +/* + * Read a tree from the .spl or .sug file. + * Allocates the memory and stores pointers in "bytsp" and "idxsp". + * This is skipped when the tree has zero length. + * Returns zero when OK, SP_ value for an error. + */ + static int +spell_read_tree(fd, bytsp, idxsp, prefixtree, prefixcnt) + FILE *fd; + char_u **bytsp; + idx_T **idxsp; + int prefixtree; /* TRUE for the prefix tree */ + int prefixcnt; /* when "prefixtree" is TRUE: prefix count */ +{ + int len; + int idx; + char_u *bp; + idx_T *ip; + + /* The tree size was computed when writing the file, so that we can + * allocate it as one long block. */ + len = (getc(fd) << 24) + (getc(fd) << 16) + (getc(fd) << 8) + getc(fd); + if (len < 0) + return SP_TRUNCERROR; + if (len > 0) + { + /* Allocate the byte array. */ + bp = lalloc((long_u)len, TRUE); + if (bp == NULL) + return SP_OTHERERROR; + *bytsp = bp; + + /* Allocate the index array. */ + ip = (idx_T *)lalloc_clear((long_u)(len * sizeof(int)), TRUE); + if (ip == NULL) + return SP_OTHERERROR; + *idxsp = ip; + + /* Recursively read the tree and store it in the array. */ + idx = read_tree_node(fd, bp, ip, len, 0, prefixtree, prefixcnt); + if (idx < 0) + return idx; + } + return 0; +} + /* * Read one row of siblings from the spell file and store it in the byte array * "byts" and index array "idxs". Recursively read the children. * - * NOTE: The code here must match put_node(). + * NOTE: The code here must match put_node()! * - * Returns the index follosing the siblings. - * Returns -1 if the file is shorter than expected. - * Returns -2 if there is a format error. + * Returns the index (>= 0) following the siblings. + * Returns SP_TRUNCERROR if the file is shorter than expected. + * Returns SP_FORMERROR if there is a format error. */ static idx_T -read_tree(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) +read_tree_node(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) FILE *fd; char_u *byts; idx_T *idxs; @@ -3463,10 +3764,10 @@ read_tree(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) len = getc(fd); /* */ if (len <= 0) - return -1; + return SP_TRUNCERROR; if (startidx + len >= maxidx) - return -2; + return SP_FORMERROR; byts[idx++] = len; /* Read the byte values, flag/region bytes and shared indexes. */ @@ -3474,7 +3775,7 @@ read_tree(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) { c = getc(fd); /* */ if (c < 0) - return -1; + return SP_TRUNCERROR; if (c <= BY_SPECIAL) { if (c == BY_NOFLAGS && !prefixtree) @@ -3500,7 +3801,7 @@ read_tree(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) n = (getc(fd) << 8) + getc(fd); /* */ if (n >= maxprefcondnr) - return -2; + return SP_FORMERROR; c |= (n << 8); } else /* c must be BY_FLAGS or BY_FLAGS2 */ @@ -3526,7 +3827,7 @@ read_tree(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) /* */ n = (getc(fd) << 16) + (getc(fd) << 8) + getc(fd); if (n < 0 || n >= maxidx) - return -2; + return SP_FORMERROR; idxs[idx] = n + SHARED_MASK; c = getc(fd); /* */ } @@ -3545,7 +3846,7 @@ read_tree(fd, byts, idxs, maxidx, startidx, prefixtree, maxprefcondnr) else { idxs[startidx + i] = idx; - idx = read_tree(fd, byts, idxs, maxidx, idx, + idx = read_tree_node(fd, byts, idxs, maxidx, idx, prefixtree, maxprefcondnr); if (idx < 0) break; @@ -3820,7 +4121,7 @@ did_set_spelllang(buf) /* language has REP items itself */ lp->lp_replang = lp->lp_slang; else - /* find first similar language that does sound folding */ + /* find first similar language that has REP items */ for (j = 0; j < ga.ga_len; ++j) { lp2 = LANGP_ENTRY(ga, j); @@ -4239,11 +4540,15 @@ struct wordnode_S siblings, in following siblings it is always one. */ char_u wn_byte; /* Byte for this node. NUL for word end */ - char_u wn_affixID; /* when "wn_byte" is NUL: supported/required - prefix ID or 0 */ - short_u wn_flags; /* when "wn_byte" is NUL: WF_ flags */ - short wn_region; /* when "wn_byte" is NUL: region mask; for - PREFIXTREE it's the prefcondnr */ + + /* Info for when "wn_byte" is NUL. + * In PREFIXTREE "wn_region" is used for the prefcondnr. + * In the soundfolded word tree "wn_flags" has the MSW of the wordnr and + * "wn_region" the LSW of the wordnr. */ + char_u wn_affixID; /* supported/required prefix ID or 0 */ + short_u wn_flags; /* WF_ flags */ + short wn_region; /* region mask */ + #ifdef SPELL_PRINTTREE int wn_nr; /* sequence nr for printing */ #endif @@ -4266,6 +4571,8 @@ typedef struct spellinfo_S wordnode_T *si_prefroot; /* tree with postponed prefixes */ + long si_sugtree; /* creating the soundfolding trie */ + sblock_T *si_blocks; /* memory blocks used */ long si_blocks_cnt; /* memory blocks allocated */ long si_compress_cnt; /* words to add before lowering @@ -4276,7 +4583,7 @@ typedef struct spellinfo_S #ifdef SPELL_PRINTTREE int si_wordnode_nr; /* sequence nr for nodes */ #endif - + buf_T *si_spellbuf; /* buffer used to store soundfold word table */ int si_ascii; /* handling only ASCII words */ int si_add; /* addition file */ @@ -4292,11 +4599,15 @@ typedef struct spellinfo_S * si_region_count > 1) */ garray_T si_rep; /* list of fromto_T entries from REP lines */ + garray_T si_repsal; /* list of fromto_T entries from REPSAL lines */ garray_T si_sal; /* list of fromto_T entries from SAL lines */ char_u *si_sofofr; /* SOFOFROM text */ char_u *si_sofoto; /* SOFOTO text */ + int si_nosugfile; /* NOSUGFILE item found */ int si_followup; /* soundsalike: ? */ int si_collapse; /* soundsalike: ? */ + hashtab_T si_commonwords; /* hashtable for common words */ + time_t si_sugtime; /* timestamp for .sug file */ int si_rem_accents; /* soundsalike: remove accents */ garray_T si_map; /* MAP info concatenated */ char_u *si_midword; /* MIDWORD chars or NULL */ @@ -4337,15 +4648,24 @@ static wordnode_T *wordtree_alloc __ARGS((spellinfo_T *spin)); static int store_word __ARGS((spellinfo_T *spin, char_u *word, int flags, int region, char_u *pfxlist, int need_affix)); static int tree_add_word __ARGS((spellinfo_T *spin, char_u *word, wordnode_T *tree, int flags, int region, int affixID)); static wordnode_T *get_wordnode __ARGS((spellinfo_T *spin)); -static void deref_wordnode __ARGS((spellinfo_T *spin, wordnode_T *node)); +static int deref_wordnode __ARGS((spellinfo_T *spin, wordnode_T *node)); static void free_wordnode __ARGS((spellinfo_T *spin, wordnode_T *n)); static void wordtree_compress __ARGS((spellinfo_T *spin, wordnode_T *root)); static int node_compress __ARGS((spellinfo_T *spin, wordnode_T *node, hashtab_T *ht, int *tot)); static int node_equal __ARGS((wordnode_T *n1, wordnode_T *n2)); +static void put_sugtime __ARGS((spellinfo_T *spin, FILE *fd)); static int write_vim_spell __ARGS((spellinfo_T *spin, char_u *fname)); static void clear_node __ARGS((wordnode_T *node)); static int put_node __ARGS((FILE *fd, wordnode_T *node, int index, int regionmask, int prefixtree)); +static void spell_make_sugfile __ARGS((spellinfo_T *spin, char_u *wfname)); +static int sug_filltree __ARGS((spellinfo_T *spin, slang_T *slang)); +static int sug_maketable __ARGS((spellinfo_T *spin)); +static int sug_filltable __ARGS((spellinfo_T *spin, wordnode_T *node, int startwordnr, garray_T *gap)); +static int offset2bytes __ARGS((int nr, char_u *buf)); +static int bytes2offset __ARGS((char_u **pp)); +static void sug_write __ARGS((spellinfo_T *spin, char_u *fname)); static void mkspell __ARGS((int fcount, char_u **fnames, int ascii, int overwrite, int added_word)); +static void spell_message __ARGS((spellinfo_T *spin, char_u *str)); static void init_spellfile __ARGS((void)); /* In the postponed prefixes tree wn_flags is used to store the WFP_ flags, @@ -4475,7 +4795,7 @@ spell_read_aff(spin, fname) char_u rline[MAXLINELEN]; char_u *line; char_u *pc = NULL; -#define MAXITEMCNT 7 +#define MAXITEMCNT 30 char_u *(items[MAXITEMCNT]); int itemcnt; char_u *p; @@ -4488,6 +4808,7 @@ spell_read_aff(spin, fname) char_u *fol = NULL; char_u *upp = NULL; int do_rep; + int do_repsal; int do_sal; int do_map; int found_map = FALSE; @@ -4513,19 +4834,15 @@ spell_read_aff(spin, fname) return NULL; } - if (spin->si_verbose || p_verbose > 2) - { - if (!spin->si_verbose) - verbose_enter(); - smsg((char_u *)_("Reading affix file %s ..."), fname); - out_flush(); - if (!spin->si_verbose) - verbose_leave(); - } + vim_snprintf((char *)IObuff, IOSIZE, _("Reading affix file %s ..."), fname); + spell_message(spin, IObuff); /* Only do REP lines when not done in another .aff file already. */ do_rep = spin->si_rep.ga_len == 0; + /* Only do REPSAL lines when not done in another .aff file already. */ + do_repsal = spin->si_repsal.ga_len == 0; + /* Only do SAL lines when not done in another .aff file already. */ do_sal = spin->si_sal.ga_len == 0; @@ -4756,6 +5073,10 @@ spell_read_aff(spin, fname) { spin->si_nobreak = TRUE; } + else if (STRCMP(items[0], "NOSUGFILE") == 0 && itemcnt == 1) + { + spin->si_nosugfile = TRUE; + } else if (STRCMP(items[0], "PFXPOSTPONE") == 0 && itemcnt == 1) { aff->af_pfxpostpone = TRUE; @@ -5061,21 +5382,25 @@ spell_read_aff(spin, fname) { upp = vim_strsave(items[1]); } - else if (STRCMP(items[0], "REP") == 0 && itemcnt == 2) + else if ((STRCMP(items[0], "REP") == 0 + || STRCMP(items[0], "REPSAL") == 0) + && itemcnt == 2) { - /* Ignore REP count */; + /* Ignore REP/REPSAL count */; if (!isdigit(*items[1])) - smsg((char_u *)_("Expected REP count in %s line %d"), + smsg((char_u *)_("Expected REP(SAL) count in %s line %d"), fname, lnum); } - else if (STRCMP(items[0], "REP") == 0 && itemcnt >= 3) + else if ((STRCMP(items[0], "REP") == 0 + || STRCMP(items[0], "REPSAL") == 0) + && itemcnt >= 3) { - /* REP item */ + /* REP/REPSAL item */ /* Myspell ignores extra arguments, we require it starts with * # to detect mistakes. */ if (itemcnt > 3 && items[3][0] != '#') smsg((char_u *)_(e_afftrailing), fname, lnum, items[3]); - if (do_rep) + if (items[0][3] == 'S' ? do_repsal : do_rep) { /* Replace underscore with space (can't include a space * directly). */ @@ -5085,7 +5410,9 @@ spell_read_aff(spin, fname) for (p = items[2]; *p != NUL; mb_ptr_adv(p)) if (*p == '_') *p = ' '; - add_fromto(spin, &spin->si_rep, items[1], items[2]); + add_fromto(spin, items[0][3] == 'S' + ? &spin->si_repsal + : &spin->si_rep, items[1], items[2]); } } else if (STRCMP(items[0], "MAP") == 0 && itemcnt == 2) @@ -5156,6 +5483,22 @@ spell_read_aff(spin, fname) { sofoto = getroom_save(spin, items[1]); } + else if (STRCMP(items[0], "COMMON") == 0) + { + int i; + + for (i = 1; i < itemcnt; ++i) + { + if (HASHITEM_EMPTY(hash_find(&spin->si_commonwords, + items[i]))) + { + p = vim_strsave(items[i]); + if (p == NULL) + break; + hash_add(&spin->si_commonwords, p); + } + } + } else smsg((char_u *)_("Unrecognized or duplicate item in %s line %d: %s"), fname, lnum, items[0]); @@ -5665,15 +6008,9 @@ spell_read_dic(spin, fname, affile) /* The hashtable is only used to detect duplicated words. */ hash_init(&ht); - if (spin->si_verbose || p_verbose > 2) - { - if (!spin->si_verbose) - verbose_enter(); - smsg((char_u *)_("Reading dictionary file %s ..."), fname); - out_flush(); - if (!spin->si_verbose) - verbose_leave(); - } + vim_snprintf((char *)IObuff, IOSIZE, + _("Reading dictionary file %s ..."), fname); + spell_message(spin, IObuff); /* start with a message for the first line */ spin->si_msg_count = 999999; @@ -6122,15 +6459,8 @@ spell_read_wordfile(spin, fname) return FAIL; } - if (spin->si_verbose || p_verbose > 2) - { - if (!spin->si_verbose) - verbose_enter(); - smsg((char_u *)_("Reading word file %s ..."), fname); - out_flush(); - if (!spin->si_verbose) - verbose_leave(); - } + vim_snprintf((char *)IObuff, IOSIZE, _("Reading word file %s ..."), fname); + spell_message(spin, IObuff); /* * Read all the lines in the file one by one. @@ -6294,15 +6624,13 @@ spell_read_wordfile(spin, fname) vim_free(pc); fclose(fd); - if (spin->si_ascii && non_ascii > 0 && (spin->si_verbose || p_verbose > 2)) + if (spin->si_ascii && non_ascii > 0) { - if (p_verbose > 2) - verbose_enter(); - smsg((char_u *)_("Ignored %d words with non-ASCII characters"), - non_ascii); - if (p_verbose > 2) - verbose_leave(); + vim_snprintf((char *)IObuff, IOSIZE, + _("Ignored %d words with non-ASCII characters"), non_ascii); + spell_message(spin, IObuff); } + return retval; } @@ -6442,7 +6770,7 @@ store_word(spin, word, flags, region, pfxlist, need_affix) /* * Add word "word" to a word tree at "root". - * When "flags" < 0 we are adding to the prefix tree where flags is used for + * When "flags" < 0 we are adding to the prefix tree where "flags" is used for * "rare" and "region" is the condition nr. * Returns FAIL when out of memory. */ @@ -6507,10 +6835,13 @@ tree_add_word(spin, word, root, flags, region, affixID) && (node->wn_byte < word[i] || (node->wn_byte == NUL && (flags < 0 - ? node->wn_affixID < affixID - : node->wn_flags < (flags & WN_MASK) + ? node->wn_affixID < (unsigned)affixID + : (node->wn_flags < (unsigned)(flags & WN_MASK) || (node->wn_flags == (flags & WN_MASK) - && node->wn_affixID < affixID))))) + && (spin->si_sugtree + ? (node->wn_region & 0xffff) < region + : node->wn_affixID + < (unsigned)affixID))))))) { prev = &node->wn_sibling; node = *prev; @@ -6519,6 +6850,7 @@ tree_add_word(spin, word, root, flags, region, affixID) || node->wn_byte != word[i] || (word[i] == NUL && (flags < 0 + || spin->si_sugtree || node->wn_flags != (flags & WN_MASK) || node->wn_affixID != affixID))) { @@ -6606,9 +6938,11 @@ tree_add_word(spin, word, root, flags, region, affixID) /* Compress both trees. Either they both have many nodes, which makes * compression useful, or one of them is small, which means - * compression goes fast. */ + * compression goes fast. But when filling the souldfold word tree + * there is no keep-case tree. */ wordtree_compress(spin, spin->si_foldroot); - wordtree_compress(spin, spin->si_keeproot); + if (affixID >= 0) + wordtree_compress(spin, spin->si_keeproot); } return OK; @@ -6684,21 +7018,28 @@ get_wordnode(spin) * Decrement the reference count on a node (which is the head of a list of * siblings). If the reference count becomes zero free the node and its * siblings. + * Returns the number of nodes actually freed. */ - static void + static int deref_wordnode(spin, node) spellinfo_T *spin; wordnode_T *node; { - wordnode_T *np; + wordnode_T *np; + int cnt = 0; if (--node->wn_refs == 0) + { for (np = node; np != NULL; np = np->wn_sibling) { if (np->wn_child != NULL) - deref_wordnode(spin, np->wn_child); + cnt += deref_wordnode(spin, np->wn_child); free_wordnode(spin, np); + ++cnt; } + ++cnt; /* length field */ + } + return cnt; } /* @@ -6739,18 +7080,16 @@ wordtree_compress(spin, root) if (spin->si_verbose || p_verbose > 2) #endif { - if (!spin->si_verbose) - verbose_enter(); if (tot > 1000000) perc = (tot - n) / (tot / 100); else if (tot == 0) perc = 0; else perc = (tot - n) * 100 / tot; - smsg((char_u *)_("Compressed %d of %d nodes; %d%% remaining"), - n, tot, perc); - if (p_verbose > 2) - verbose_leave(); + vim_snprintf((char *)IObuff, IOSIZE, + _("Compressed %d of %d nodes; %d (%d%%) remaining"), + n, tot, tot - n, perc); + spell_message(spin, IObuff); } #ifdef SPELL_PRINTTREE spell_print_tree(root->wn_sibling); @@ -6784,24 +7123,24 @@ node_compress(spin, node, ht, tot) * Go through the list of siblings. Compress each child and then try * finding an identical child to replace it. * Note that with "child" we mean not just the node that is pointed to, - * but the whole list of siblings, of which the node is the first. + * but the whole list of siblings of which the child node is the first. */ for (np = node; np != NULL && !got_int; np = np->wn_sibling) { ++len; if ((child = np->wn_child) != NULL) { - /* Compress the child. This fills hashkey. */ + /* Compress the child first. This fills hashkey. */ compressed += node_compress(spin, child, ht, tot); /* Try to find an identical child. */ hash = hash_hash(child->wn_u1.hashkey); hi = hash_lookup(ht, child->wn_u1.hashkey, hash); - tp = NULL; if (!HASHITEM_EMPTY(hi)) { - /* There are children with an identical hash value. Now check - * if there is one that is really identical. */ + /* There are children we encountered before with a hash value + * identical to the current child. Now check if there is one + * that is really identical. */ for (tp = HI2WN(hi); tp != NULL; tp = tp->wn_u2.next) if (node_equal(child, tp)) { @@ -6809,9 +7148,8 @@ node_compress(spin, node, ht, tot) * current one. This means the current child and all * its siblings is unlinked from the tree. */ ++tp->wn_refs; - deref_wordnode(spin, child); + compressed += deref_wordnode(spin, child); np->wn_child = tp; - ++compressed; break; } if (tp == NULL) @@ -6830,7 +7168,7 @@ node_compress(spin, node, ht, tot) hash_add_item(ht, hi, child->wn_u1.hashkey, hash); } } - *tot += len; + *tot += len + 1; /* add one for the node that stores the length */ /* * Make a hash key for the node and its siblings, so that we can quickly @@ -6906,6 +7244,30 @@ put_bytes(fd, nr, len) putc((int)(nr >> (i * 8)), fd); } +/* + * Write spin->si_sugtime to file "fd". + */ + static void +put_sugtime(spin, fd) + spellinfo_T *spin; + FILE *fd; +{ + int c; + int i; + + /* time_t can be up to 8 bytes in size, more than long_u, thus we + * can't use put_bytes() here. */ + for (i = 7; i >= 0; --i) + if (i + 1 > sizeof(time_t)) + /* ">>" doesn't work well when shifting more bits than avail */ + putc(0, fd); + else + { + c = (unsigned)spin->si_sugtime >> (i * 8); + putc(c, fd); + } +} + static int #ifdef __BORLANDC__ _RTLENTRYF @@ -7056,29 +7418,37 @@ write_vim_spell(spin, fname) } /* SN_REP: ... - * SN_SAL: ... */ - - /* Sort the REP items. */ - qsort(spin->si_rep.ga_data, (size_t)spin->si_rep.ga_len, - sizeof(fromto_T), rep_compare); + * SN_SAL: ... + * SN_REPSAL: ... */ /* round 1: SN_REP section - * round 2: SN_SAL section (unless SN_SOFO is used) */ - for (round = 1; round <= 2; ++round) + * round 2: SN_SAL section (unless SN_SOFO is used) + * round 3: SN_REPSAL section */ + for (round = 1; round <= 3; ++round) { if (round == 1) - { gap = &spin->si_rep; - putc(SN_REP, fd); /* */ - } - else + else if (round == 2) { + /* Don't write SN_SAL when using a SN_SOFO section */ if (spin->si_sofofr != NULL && spin->si_sofoto != NULL) - /* using SN_SOFO section instead of SN_SAL */ - break; + continue; gap = &spin->si_sal; - putc(SN_SAL, fd); /* */ } + else + gap = &spin->si_repsal; + + /* Don't write the section if there are no items. */ + if (gap->ga_len == 0) + continue; + + /* Sort the REP/REPSAL items. */ + if (round != 2) + qsort(gap->ga_data, (size_t)gap->ga_len, + sizeof(fromto_T), rep_compare); + + i = round == 1 ? SN_REP : (round == 2 ? SN_SAL : SN_REPSAL); + putc(i, fd); /* */ /* This is for making suggestions, section is not required. */ putc(0, fd); /* */ @@ -7143,6 +7513,36 @@ write_vim_spell(spin, fname) fwrite(spin->si_sofoto, l, (size_t)1, fd); /* */ } + /* SN_WORDS: ... + * This is for making suggestions, section is not required. */ + if (spin->si_commonwords.ht_used > 0) + { + putc(SN_WORDS, fd); /* */ + putc(0, fd); /* */ + + /* round 1: count the bytes + * round 2: write the bytes */ + for (round = 1; round <= 2; ++round) + { + int todo; + int len = 0; + hashitem_T *hi; + + todo = spin->si_commonwords.ht_used; + for (hi = spin->si_commonwords.ht_array; todo > 0; ++hi) + if (!HASHITEM_EMPTY(hi)) + { + l = STRLEN(hi->hi_key) + 1; + len += l; + if (round == 2) /* */ + fwrite(hi->hi_key, (size_t)l, (size_t)1, fd); + --todo; + } + if (round == 1) + put_bytes(fd, (long_u)len, 4); /* */ + } + } + /* SN_MAP: * This is for making suggestions, section is not required. */ if (spin->si_map.ga_len > 0) @@ -7155,6 +7555,24 @@ write_vim_spell(spin, fname) /* */ } + /* SN_SUGFILE: + * This is used to notify that a .sug file may be available and at the + * same time allows for checking that a .sug file that is found matches + * with this .spl file. That's because the word numbers must be exactly + * right. */ + if (!spin->si_nosugfile + && (spin->si_sal.ga_len > 0 + || (spin->si_sofofr != NULL && spin->si_sofoto != NULL))) + { + putc(SN_SUGFILE, fd); /* */ + putc(0, fd); /* */ + put_bytes(fd, (long_u)8, 4); /* */ + + /* Set si_sugtime and write it to the file. */ + spin->si_sugtime = time(NULL); + put_sugtime(spin, fd); /* */ + } + /* SN_COMPOUND: compound info. * We don't mark it required, when not supported all compound words will * be bad words. */ @@ -7267,9 +7685,9 @@ clear_node(node) * This first writes the list of possible bytes (siblings). Then for each * byte recursively write the children. * - * NOTE: The code here must match the code in read_tree(), since assumptions - * are made about the indexes (so that we don't have to write them in the - * file). + * NOTE: The code here must match the code in read_tree_node(), since + * assumptions are made about the indexes (so that we don't have to write them + * in the file). * * Returns the number of nodes used. */ @@ -7427,250 +7845,749 @@ ex_mkspell(eap) } /* - * Create a Vim spell file from one or more word lists. - * "fnames[0]" is the output file name. - * "fnames[fcount - 1]" is the last input file name. - * Exception: when "fnames[0]" ends in ".add" it's used as the input file name - * and ".spl" is appended to make the output file name. + * Create the .sug file. + * Uses the soundfold info in "spin". + * Writes the file with the name "wfname", with ".spl" changed to ".sug". */ static void -mkspell(fcount, fnames, ascii, overwrite, added_word) - int fcount; - char_u **fnames; - int ascii; /* -ascii argument given */ - int overwrite; /* overwrite existing output file */ - int added_word; /* invoked through "zg" */ +spell_make_sugfile(spin, wfname) + spellinfo_T *spin; + char_u *wfname; { char_u fname[MAXPATHL]; - char_u wfname[MAXPATHL]; - char_u **innames; - int incount; - afffile_T *(afile[8]); - int i; int len; - struct stat st; - int error = FALSE; - spellinfo_T spin; + slang_T *slang; + int free_slang = FALSE; - vim_memset(&spin, 0, sizeof(spin)); - spin.si_verbose = !added_word; - spin.si_ascii = ascii; - spin.si_followup = TRUE; - spin.si_rem_accents = TRUE; - ga_init2(&spin.si_rep, (int)sizeof(fromto_T), 20); - ga_init2(&spin.si_sal, (int)sizeof(fromto_T), 20); - ga_init2(&spin.si_map, (int)sizeof(char_u), 100); - ga_init2(&spin.si_prefcond, (int)sizeof(char_u *), 50); - spin.si_newcompID = 127; /* start compound ID at first maximum */ + /* + * Read back the .spl file that was written. This fills the required + * info for soundfolding. This also uses less memory than the + * pointer-linked version of the trie. And it avoids having two versions + * of the code for the soundfolding stuff. + * It might have been done already by spell_reload_one(). + */ + for (slang = first_lang; slang != NULL; slang = slang->sl_next) + if (fullpathcmp(wfname, slang->sl_fname, FALSE) == FPC_SAME) + break; + if (slang == NULL) + { + spell_message(spin, (char_u *)_("Reading back spell file...")); + slang = spell_load_file(wfname, NULL, NULL, FALSE); + if (slang == NULL) + return; + /* don't want this language in the list */ + if (first_lang == slang) + first_lang = slang->sl_next; + free_slang = TRUE; + } - /* default: fnames[0] is output file, following are input files */ - innames = &fnames[1]; - incount = fcount - 1; + /* + * Clear the info in "spin" that is used. + */ + spin->si_blocks = NULL; + spin->si_blocks_cnt = 0; + spin->si_compress_cnt = 0; /* will stay at 0 all the time*/ + spin->si_free_count = 0; + spin->si_first_free = NULL; + spin->si_foldwcount = 0; - if (fcount >= 1) - { - len = STRLEN(fnames[0]); - if (fcount == 1 && len > 4 && STRCMP(fnames[0] + len - 4, ".add") == 0) - { - /* For ":mkspell path/en.latin1.add" output file is - * "path/en.latin1.add.spl". */ - innames = &fnames[0]; - incount = 1; - vim_snprintf((char *)wfname, sizeof(wfname), "%s.spl", fnames[0]); - } - else if (fcount == 1) - { - /* For ":mkspell path/vim" output file is "path/vim.latin1.spl". */ - innames = &fnames[0]; - incount = 1; - vim_snprintf((char *)wfname, sizeof(wfname), "%s.%s.spl", fnames[0], - spin.si_ascii ? (char_u *)"ascii" : spell_enc()); - } - else if (len > 4 && STRCMP(fnames[0] + len - 4, ".spl") == 0) - { - /* Name ends in ".spl", use as the file name. */ - vim_strncpy(wfname, fnames[0], sizeof(wfname) - 1); - } - else - /* Name should be language, make the file name from it. */ - vim_snprintf((char *)wfname, sizeof(wfname), "%s.%s.spl", fnames[0], - spin.si_ascii ? (char_u *)"ascii" : spell_enc()); + /* + * Go through the trie of good words, soundfold each word and add it to + * the soundfold trie. + */ + spell_message(spin, (char_u *)_("Performing soundfolding...")); + if (sug_filltree(spin, slang) == FAIL) + goto theend; - /* Check for .ascii.spl. */ - if (strstr((char *)gettail(wfname), ".ascii.") != NULL) - spin.si_ascii = TRUE; + /* + * Create the table which links each soundfold word with a list of the + * good words it may come from. Creates buffer "spin->si_spellbuf". + * This also removes the wordnr from the NUL byte entries to make + * compression possible. + */ + if (sug_maketable(spin) == FAIL) + goto theend; - /* Check for .add.spl. */ - if (strstr((char *)gettail(wfname), ".add.") != NULL) - spin.si_add = TRUE; - } + smsg((char_u *)_("Number of words after soundfolding: %ld"), + (long)spin->si_spellbuf->b_ml.ml_line_count); - if (incount <= 0) - EMSG(_(e_invarg)); /* need at least output and input names */ - else if (vim_strchr(gettail(wfname), '_') != NULL) - EMSG(_("E751: Output file name must not have region name")); - else if (incount > 8) - EMSG(_("E754: Only up to 8 regions supported")); - else + /* + * Compress the soundfold trie. + */ + spell_message(spin, (char_u *)_(msg_compressing)); + wordtree_compress(spin, spin->si_foldroot); + + /* + * Write the .sug file. + * Make the file name by changing ".spl" to ".sug". + */ + STRCPY(fname, wfname); + len = STRLEN(fname); + fname[len - 2] = 'u'; + fname[len - 1] = 'g'; + sug_write(spin, fname); + +theend: + if (free_slang) + slang_free(slang); + free_blocks(spin->si_blocks); + close_spellbuf(spin->si_spellbuf); +} + +/* + * Build the soundfold trie for language "slang". + */ + static int +sug_filltree(spin, slang) + spellinfo_T *spin; + slang_T *slang; +{ + char_u *byts; + idx_T *idxs; + int depth; + idx_T arridx[MAXWLEN]; + int curi[MAXWLEN]; + char_u tword[MAXWLEN]; + char_u tsalword[MAXWLEN]; + int c; + idx_T n; + unsigned words_done = 0; + int wordcount[MAXWLEN]; + + /* We use si_foldroot for the souldfolded trie. */ + spin->si_foldroot = wordtree_alloc(spin); + if (spin->si_foldroot == NULL) + return FAIL; + + /* let tree_add_word() know we're adding to the soundfolded tree */ + spin->si_sugtree = TRUE; + + /* + * Go through the whole case-folded tree, soundfold each word and put it + * in the trie. + */ + byts = slang->sl_fbyts; + idxs = slang->sl_fidxs; + + arridx[0] = 0; + curi[0] = 1; + wordcount[0] = 0; + + depth = 0; + while (depth >= 0 && !got_int) { - /* Check for overwriting before doing things that may take a lot of - * time. */ - if (!overwrite && mch_stat((char *)wfname, &st) >= 0) + if (curi[depth] > byts[arridx[depth]]) { - EMSG(_(e_exists)); - return; + /* Done all bytes at this node, go up one level. */ + idxs[arridx[depth]] = wordcount[depth]; + if (depth > 0) + wordcount[depth - 1] += wordcount[depth]; + + --depth; + line_breakcheck(); } - if (mch_isdir(wfname)) + else { - EMSG2(_(e_isadir2), wfname); - return; - } - /* - * Init the aff and dic pointers. - * Get the region names if there are more than 2 arguments. - */ - for (i = 0; i < incount; ++i) - { - afile[i] = NULL; + /* Do one more byte at this node. */ + n = arridx[depth] + curi[depth]; + ++curi[depth]; - if (incount > 1) + c = byts[n]; + if (c == 0) { - len = STRLEN(innames[i]); - if (STRLEN(gettail(innames[i])) < 5 - || innames[i][len - 3] != '_') - { - EMSG2(_("E755: Invalid region in %s"), innames[i]); - return; - } - spin.si_region_name[i * 2] = TOLOWER_ASC(innames[i][len - 2]); - spin.si_region_name[i * 2 + 1] = - TOLOWER_ASC(innames[i][len - 1]); - } - } - spin.si_region_count = incount; + /* Sound-fold the word. */ + tword[depth] = NUL; + spell_soundfold(slang, tword, TRUE, tsalword); - spin.si_foldroot = wordtree_alloc(&spin); - spin.si_keeproot = wordtree_alloc(&spin); - spin.si_prefroot = wordtree_alloc(&spin); - if (spin.si_foldroot == NULL - || spin.si_keeproot == NULL - || spin.si_prefroot == NULL) - { - free_blocks(spin.si_blocks); - return; - } + /* We use the "flags" field for the MSB of the wordnr, + * "region" for the LSB of the wordnr. */ + if (tree_add_word(spin, tsalword, spin->si_foldroot, + words_done >> 16, words_done & 0xffff, + 0) == FAIL) + return FAIL; - /* When not producing a .add.spl file clear the character table when - * we encounter one in the .aff file. This means we dump the current - * one in the .spl file if the .aff file doesn't define one. That's - * better than guessing the contents, the table will match a - * previously loaded spell file. */ - if (!spin.si_add) - spin.si_clear_chartab = TRUE; + ++words_done; + ++wordcount[depth]; - /* - * Read all the .aff and .dic files. - * Text is converted to 'encoding'. - * Words are stored in the case-folded and keep-case trees. - */ - for (i = 0; i < incount && !error; ++i) - { - spin.si_conv.vc_type = CONV_NONE; - spin.si_region = 1 << i; + /* Reset the block count each time to avoid compression + * kicking in. */ + spin->si_blocks_cnt = 0; - vim_snprintf((char *)fname, sizeof(fname), "%s.aff", innames[i]); - if (mch_stat((char *)fname, &st) >= 0) - { - /* Read the .aff file. Will init "spin->si_conv" based on the - * "SET" line. */ - afile[i] = spell_read_aff(&spin, fname); - if (afile[i] == NULL) - error = TRUE; - else + /* Skip over any other NUL bytes (same word with different + * flags). */ + while (byts[n + 1] == 0) { - /* Read the .dic file and store the words in the trees. */ - vim_snprintf((char *)fname, sizeof(fname), "%s.dic", - innames[i]); - if (spell_read_dic(&spin, fname, afile[i]) == FAIL) - error = TRUE; + ++n; + ++curi[depth]; } } else { - /* No .aff file, try reading the file as a word list. Store - * the words in the trees. */ - if (spell_read_wordfile(&spin, innames[i]) == FAIL) - error = TRUE; + /* Normal char, go one level deeper. */ + tword[depth++] = c; + arridx[depth] = idxs[n]; + curi[depth] = 1; + wordcount[depth] = 0; } - -#ifdef FEAT_MBYTE - /* Free any conversion stuff. */ - convert_setup(&spin.si_conv, NULL, NULL); -#endif } + } - if (spin.si_compflags != NULL && spin.si_nobreak) - MSG(_("Warning: both compounding and NOBREAK specified")); - - if (!error) - { - /* - * Combine tails in the tree. - */ - if (spin.si_verbose || p_verbose > 2) - { - if (!spin.si_verbose) - verbose_enter(); - MSG(_(msg_compressing)); - out_flush(); - if (!spin.si_verbose) - verbose_leave(); - } - wordtree_compress(&spin, spin.si_foldroot); - wordtree_compress(&spin, spin.si_keeproot); - wordtree_compress(&spin, spin.si_prefroot); - } + smsg((char_u *)_("Total number of words: %d"), words_done); - if (!error) - { - /* - * Write the info in the spell file. - */ - if (spin.si_verbose || p_verbose > 2) - { - if (!spin.si_verbose) - verbose_enter(); - smsg((char_u *)_("Writing spell file %s ..."), wfname); - out_flush(); - if (!spin.si_verbose) - verbose_leave(); - } + return OK; +} - error = write_vim_spell(&spin, wfname) == FAIL; +/* + * Make the table that links each word in the soundfold trie to the words it + * can be produced from. + * This is not unlike lines in a file, thus use a memfile to be able to access + * the table efficiently. + * Returns FAIL when out of memory. + */ + static int +sug_maketable(spin) + spellinfo_T *spin; +{ + garray_T ga; + int res = OK; + + /* Allocate a buffer, open a memline for it and create the swap file + * (uses a temp file, not a .swp file). */ + spin->si_spellbuf = open_spellbuf(); + if (spin->si_spellbuf == NULL) + return FAIL; + + /* Use a buffer to store the line info, avoids allocating many small + * pieces of memory. */ + ga_init2(&ga, 1, 100); + + /* recursively go through the tree */ + if (sug_filltable(spin, spin->si_foldroot->wn_sibling, 0, &ga) == -1) + res = FAIL; + + ga_clear(&ga); + return res; +} + +/* + * Fill the table for one node and its children. + * Returns the wordnr at the start of the node. + * Returns -1 when out of memory. + */ + static int +sug_filltable(spin, node, startwordnr, gap) + spellinfo_T *spin; + wordnode_T *node; + int startwordnr; + garray_T *gap; /* place to store line of numbers */ +{ + wordnode_T *p, *np; + int wordnr = startwordnr; + int nr; + int prev_nr; + + for (p = node; p != NULL; p = p->wn_sibling) + { + if (p->wn_byte == NUL) + { + gap->ga_len = 0; + prev_nr = 0; + for (np = p; np != NULL && np->wn_byte == NUL; np = np->wn_sibling) + { + if (ga_grow(gap, 10) == FAIL) + return -1; + + nr = (np->wn_flags << 16) + (np->wn_region & 0xffff); + /* Compute the offset from the previous nr and store the + * offset in a way that it takes a minimum number of bytes. + * It's a bit like utf-8, but without the need to mark + * following bytes. */ + nr -= prev_nr; + prev_nr += nr; + gap->ga_len += offset2bytes(nr, + (char_u *)gap->ga_data + gap->ga_len); + } + + /* add the NUL byte */ + ((char_u *)gap->ga_data)[gap->ga_len++] = NUL; + + if (ml_append_buf(spin->si_spellbuf, (linenr_T)wordnr, + gap->ga_data, gap->ga_len, TRUE) == FAIL) + return -1; + ++wordnr; + + /* Remove extra NUL entries, we no longer need them. We don't + * bother freeing the nodes, the won't be reused anyway. */ + while (p->wn_sibling != NULL && p->wn_sibling->wn_byte == NUL) + p->wn_sibling = p->wn_sibling->wn_sibling; + + /* Clear the flags on the remaining NUL node, so that compression + * works a lot better. */ + p->wn_flags = 0; + p->wn_region = 0; + } + else + { + wordnr = sug_filltable(spin, p->wn_child, wordnr, gap); + if (wordnr == -1) + return -1; + } + } + return wordnr; +} + +/* + * Convert an offset into a minimal number of bytes. + * Similar to utf_char2byters, but use 8 bits in followup bytes and avoid NUL + * bytes. + */ + static int +offset2bytes(nr, buf) + int nr; + char_u *buf; +{ + int rem; + int b1, b2, b3, b4; + + /* Split the number in parts of base 255. We need to avoid NUL bytes. */ + b1 = nr % 255 + 1; + rem = nr / 255; + b2 = rem % 255 + 1; + rem = rem / 255; + b3 = rem % 255 + 1; + b4 = rem / 255 + 1; + + if (b4 > 1 || b3 > 0x1f) /* 4 bytes */ + { + buf[0] = 0xe0 + b4; + buf[1] = b3; + buf[2] = b2; + buf[3] = b1; + return 4; + } + if (b3 > 1 || b2 > 0x3f ) /* 3 bytes */ + { + buf[0] = 0xc0 + b3; + buf[1] = b2; + buf[2] = b1; + return 3; + } + if (b2 > 1 || b1 > 0x7f ) /* 2 bytes */ + { + buf[0] = 0x80 + b2; + buf[1] = b1; + return 2; + } + /* 1 byte */ + buf[0] = b1; + return 1; +} + +/* + * Opposite of offset2bytes(). + * "pp" points to the bytes and is advanced over it. + * Returns the offset. + */ + static int +bytes2offset(pp) + char_u **pp; +{ + char_u *p = *pp; + int nr; + int c; + + c = *p++; + if ((c & 0x80) == 0x00) /* 1 byte */ + { + nr = c - 1; + } + else if ((c & 0xc0) == 0x80) /* 2 bytes */ + { + nr = (c & 0x3f) - 1; + nr = nr * 255 + (*p++ - 1); + } + else if ((c & 0xe0) == 0xc0) /* 3 bytes */ + { + nr = (c & 0x1f) - 1; + nr = nr * 255 + (*p++ - 1); + nr = nr * 255 + (*p++ - 1); + } + else /* 4 bytes */ + { + nr = (c & 0x0f) - 1; + nr = nr * 255 + (*p++ - 1); + nr = nr * 255 + (*p++ - 1); + nr = nr * 255 + (*p++ - 1); + } + + *pp = p; + return nr; +} + +/* + * Write the .sug file in "fname". + */ + static void +sug_write(spin, fname) + spellinfo_T *spin; + char_u *fname; +{ + FILE *fd; + wordnode_T *tree; + int nodecount; + int wcount; + char_u *line; + linenr_T lnum; + int len; + + /* Create the file. Note that an existing file is silently overwritten! */ + fd = mch_fopen((char *)fname, "w"); + if (fd == NULL) + { + EMSG2(_(e_notopen), fname); + return; + } + + vim_snprintf((char *)IObuff, IOSIZE, + _("Writing suggestion file %s ..."), fname); + spell_message(spin, IObuff); + + /* + * : + */ + if (fwrite(VIMSUGMAGIC, VIMSUGMAGICL, (size_t)1, fd) != 1) /* */ + { + EMSG(_(e_write)); + goto theend; + } + putc(VIMSUGVERSION, fd); /* */ + + /* Write si_sugtime to the file. */ + put_sugtime(spin, fd); /* */ + + /* + * + */ + spin->si_memtot = 0; + tree = spin->si_foldroot->wn_sibling; + + /* Clear the index and wnode fields in the tree. */ + clear_node(tree); + + /* Count the number of nodes. Needed to be able to allocate the + * memory when reading the nodes. Also fills in index for shared + * nodes. */ + nodecount = put_node(NULL, tree, 0, 0, FALSE); + + /* number of nodes in 4 bytes */ + put_bytes(fd, (long_u)nodecount, 4); /* */ + spin->si_memtot += nodecount + nodecount * sizeof(int); + + /* Write the nodes. */ + (void)put_node(fd, tree, 0, 0, FALSE); + + /* + * : ... + */ + wcount = spin->si_spellbuf->b_ml.ml_line_count; + put_bytes(fd, (long_u)wcount, 4); /* */ + + for (lnum = 1; lnum <= (linenr_T)wcount; ++lnum) + { + /* : ... NUL */ + line = ml_get_buf(spin->si_spellbuf, lnum, FALSE); + len = STRLEN(line) + 1; + if (fwrite(line, (size_t)len, (size_t)1, fd) == 0) + { + EMSG(_(e_write)); + goto theend; + } + spin->si_memtot += len; + } + + /* Write another byte to check for errors. */ + if (putc(0, fd) == EOF) + EMSG(_(e_write)); + + vim_snprintf((char *)IObuff, IOSIZE, + _("Estimated runtime memory use: %d bytes"), spin->si_memtot); + spell_message(spin, IObuff); + +theend: + /* close the file */ + fclose(fd); +} + +/* + * Open a spell buffer. This is a nameless buffer that is not in the buffer + * list and only contains text lines. Can use a swapfile to reduce memory + * use. + * Most other fields are invalid! Esp. watch out for string options being + * NULL and there is no undo info. + * Returns NULL when out of memory. + */ + static buf_T * +open_spellbuf() +{ + buf_T *buf; + + buf = (buf_T *)alloc_clear(sizeof(buf_T)); + if (buf != NULL) + { + buf->b_spell = TRUE; + buf->b_p_swf = TRUE; /* may create a swap file */ + ml_open(buf); + ml_open_file(buf); /* create swap file now */ + } + return buf; +} + +/* + * Close the buffer used for spell info. + */ + static void +close_spellbuf(buf) + buf_T *buf; +{ + if (buf != NULL) + { + ml_close(buf, TRUE); + vim_free(buf); + } +} + + +/* + * Create a Vim spell file from one or more word lists. + * "fnames[0]" is the output file name. + * "fnames[fcount - 1]" is the last input file name. + * Exception: when "fnames[0]" ends in ".add" it's used as the input file name + * and ".spl" is appended to make the output file name. + */ + static void +mkspell(fcount, fnames, ascii, overwrite, added_word) + int fcount; + char_u **fnames; + int ascii; /* -ascii argument given */ + int overwrite; /* overwrite existing output file */ + int added_word; /* invoked through "zg" */ +{ + char_u fname[MAXPATHL]; + char_u wfname[MAXPATHL]; + char_u **innames; + int incount; + afffile_T *(afile[8]); + int i; + int len; + struct stat st; + int error = FALSE; + spellinfo_T spin; + + vim_memset(&spin, 0, sizeof(spin)); + spin.si_verbose = !added_word; + spin.si_ascii = ascii; + spin.si_followup = TRUE; + spin.si_rem_accents = TRUE; + ga_init2(&spin.si_rep, (int)sizeof(fromto_T), 20); + ga_init2(&spin.si_repsal, (int)sizeof(fromto_T), 20); + ga_init2(&spin.si_sal, (int)sizeof(fromto_T), 20); + ga_init2(&spin.si_map, (int)sizeof(char_u), 100); + ga_init2(&spin.si_prefcond, (int)sizeof(char_u *), 50); + hash_init(&spin.si_commonwords); + spin.si_newcompID = 127; /* start compound ID at first maximum */ + + /* default: fnames[0] is output file, following are input files */ + innames = &fnames[1]; + incount = fcount - 1; + + if (fcount >= 1) + { + len = STRLEN(fnames[0]); + if (fcount == 1 && len > 4 && STRCMP(fnames[0] + len - 4, ".add") == 0) + { + /* For ":mkspell path/en.latin1.add" output file is + * "path/en.latin1.add.spl". */ + innames = &fnames[0]; + incount = 1; + vim_snprintf((char *)wfname, sizeof(wfname), "%s.spl", fnames[0]); + } + else if (fcount == 1) + { + /* For ":mkspell path/vim" output file is "path/vim.latin1.spl". */ + innames = &fnames[0]; + incount = 1; + vim_snprintf((char *)wfname, sizeof(wfname), "%s.%s.spl", fnames[0], + spin.si_ascii ? (char_u *)"ascii" : spell_enc()); + } + else if (len > 4 && STRCMP(fnames[0] + len - 4, ".spl") == 0) + { + /* Name ends in ".spl", use as the file name. */ + vim_strncpy(wfname, fnames[0], sizeof(wfname) - 1); + } + else + /* Name should be language, make the file name from it. */ + vim_snprintf((char *)wfname, sizeof(wfname), "%s.%s.spl", fnames[0], + spin.si_ascii ? (char_u *)"ascii" : spell_enc()); + + /* Check for .ascii.spl. */ + if (strstr((char *)gettail(wfname), ".ascii.") != NULL) + spin.si_ascii = TRUE; + + /* Check for .add.spl. */ + if (strstr((char *)gettail(wfname), ".add.") != NULL) + spin.si_add = TRUE; + } + + if (incount <= 0) + EMSG(_(e_invarg)); /* need at least output and input names */ + else if (vim_strchr(gettail(wfname), '_') != NULL) + EMSG(_("E751: Output file name must not have region name")); + else if (incount > 8) + EMSG(_("E754: Only up to 8 regions supported")); + else + { + /* Check for overwriting before doing things that may take a lot of + * time. */ + if (!overwrite && mch_stat((char *)wfname, &st) >= 0) + { + EMSG(_(e_exists)); + return; + } + if (mch_isdir(wfname)) + { + EMSG2(_(e_isadir2), wfname); + return; + } + + /* + * Init the aff and dic pointers. + * Get the region names if there are more than 2 arguments. + */ + for (i = 0; i < incount; ++i) + { + afile[i] = NULL; + + if (incount > 1) + { + len = STRLEN(innames[i]); + if (STRLEN(gettail(innames[i])) < 5 + || innames[i][len - 3] != '_') + { + EMSG2(_("E755: Invalid region in %s"), innames[i]); + return; + } + spin.si_region_name[i * 2] = TOLOWER_ASC(innames[i][len - 2]); + spin.si_region_name[i * 2 + 1] = + TOLOWER_ASC(innames[i][len - 1]); + } + } + spin.si_region_count = incount; + + spin.si_foldroot = wordtree_alloc(&spin); + spin.si_keeproot = wordtree_alloc(&spin); + spin.si_prefroot = wordtree_alloc(&spin); + if (spin.si_foldroot == NULL + || spin.si_keeproot == NULL + || spin.si_prefroot == NULL) + { + free_blocks(spin.si_blocks); + return; + } + + /* When not producing a .add.spl file clear the character table when + * we encounter one in the .aff file. This means we dump the current + * one in the .spl file if the .aff file doesn't define one. That's + * better than guessing the contents, the table will match a + * previously loaded spell file. */ + if (!spin.si_add) + spin.si_clear_chartab = TRUE; + + /* + * Read all the .aff and .dic files. + * Text is converted to 'encoding'. + * Words are stored in the case-folded and keep-case trees. + */ + for (i = 0; i < incount && !error; ++i) + { + spin.si_conv.vc_type = CONV_NONE; + spin.si_region = 1 << i; - if (spin.si_verbose || p_verbose > 2) + vim_snprintf((char *)fname, sizeof(fname), "%s.aff", innames[i]); + if (mch_stat((char *)fname, &st) >= 0) + { + /* Read the .aff file. Will init "spin->si_conv" based on the + * "SET" line. */ + afile[i] = spell_read_aff(&spin, fname); + if (afile[i] == NULL) + error = TRUE; + else + { + /* Read the .dic file and store the words in the trees. */ + vim_snprintf((char *)fname, sizeof(fname), "%s.dic", + innames[i]); + if (spell_read_dic(&spin, fname, afile[i]) == FAIL) + error = TRUE; + } + } + else { - if (!spin.si_verbose) - verbose_enter(); - MSG(_("Done!")); - smsg((char_u *)_("Estimated runtime memory use: %d bytes"), - spin.si_memtot); - out_flush(); - if (!spin.si_verbose) - verbose_leave(); + /* No .aff file, try reading the file as a word list. Store + * the words in the trees. */ + if (spell_read_wordfile(&spin, innames[i]) == FAIL) + error = TRUE; } - /* If the file is loaded need to reload it. */ +#ifdef FEAT_MBYTE + /* Free any conversion stuff. */ + convert_setup(&spin.si_conv, NULL, NULL); +#endif + } + + if (spin.si_compflags != NULL && spin.si_nobreak) + MSG(_("Warning: both compounding and NOBREAK specified")); + + if (!error && !got_int) + { + /* + * Combine tails in the tree. + */ + spell_message(&spin, (char_u *)_(msg_compressing)); + wordtree_compress(&spin, spin.si_foldroot); + wordtree_compress(&spin, spin.si_keeproot); + wordtree_compress(&spin, spin.si_prefroot); + } + + if (!error && !got_int) + { + /* + * Write the info in the spell file. + */ + vim_snprintf((char *)IObuff, IOSIZE, + _("Writing spell file %s ..."), wfname); + spell_message(&spin, IObuff); + + error = write_vim_spell(&spin, wfname) == FAIL; + + spell_message(&spin, (char_u *)_("Done!")); + vim_snprintf((char *)IObuff, IOSIZE, + _("Estimated runtime memory use: %d bytes"), spin.si_memtot); + spell_message(&spin, IObuff); + + /* + * If the file is loaded need to reload it. + */ if (!error) spell_reload_one(wfname, added_word); } /* Free the allocated memory. */ ga_clear(&spin.si_rep); + ga_clear(&spin.si_repsal); ga_clear(&spin.si_sal); ga_clear(&spin.si_map); ga_clear(&spin.si_prefcond); + hash_clear_all(&spin.si_commonwords, 0); /* Free the .aff file structures. */ for (i = 0; i < incount; ++i) @@ -7679,9 +8596,36 @@ mkspell(fcount, fnames, ascii, overwrite, added_word) /* Free all the bits and pieces at once. */ free_blocks(spin.si_blocks); + + /* + * If there is soundfolding info and no NOSUGFILE item create the + * .sug file with the soundfolded word trie. + */ + if (spin.si_sugtime != 0 && !error && !got_int) + spell_make_sugfile(&spin, wfname); + } } +/* + * Display a message for spell file processing when 'verbose' is set or using + * ":mkspell". "str" can be IObuff. + */ + static void +spell_message(spin, str) + spellinfo_T *spin; + char_u *str; +{ + if (spin->si_verbose || p_verbose > 2) + { + if (!spin->si_verbose) + verbose_enter(); + MSG(str); + out_flush(); + if (!spin->si_verbose) + verbose_leave(); + } +} /* * ":[count]spellgood {word}" @@ -8334,12 +9278,13 @@ spell_casefold(str, len, buf, buflen) return OK; } +/* values for sps_flags */ #define SPS_BEST 1 #define SPS_FAST 2 #define SPS_DOUBLE 4 -static int sps_flags = SPS_BEST; -static int sps_limit = 9999; +static int sps_flags = SPS_BEST; /* flags from 'spellsuggest' */ +static int sps_limit = 9999; /* max nr of suggestions given */ /* * Check the 'spellsuggest' option. Return FAIL if it's wrong. @@ -8461,7 +9406,7 @@ spell_suggest(count) else limit = sps_limit; spell_find_suggest(line + curwin->w_cursor.col, &sug, limit, - TRUE, need_cap); + TRUE, need_cap, TRUE); if (sug.su_ga.ga_len == 0) MSG(_("Sorry, no suggestions")); @@ -8512,7 +9457,7 @@ spell_suggest(count) * the not replaced part. */ STRCPY(wcopy, stp->st_word); if (sug.su_badlen > stp->st_orglen) - vim_strncpy(wcopy + STRLEN(wcopy), + vim_strncpy(wcopy + stp->st_wordlen, sug.su_badptr + stp->st_orglen, sug.su_badlen - stp->st_orglen); vim_snprintf((char *)IObuff, IOSIZE, "%2d", i + 1); @@ -8586,7 +9531,7 @@ spell_suggest(count) } /* Replace the word. */ - p = alloc(STRLEN(line) - stp->st_orglen + STRLEN(stp->st_word) + 1); + p = alloc(STRLEN(line) - stp->st_orglen + stp->st_wordlen + 1); if (p != NULL) { c = sug.su_badptr - line; @@ -8601,7 +9546,7 @@ spell_suggest(count) ResetRedobuff(); AppendToRedobuff((char_u *)"ciw"); AppendToRedobuffLit(p + c, - STRLEN(stp->st_word) + sug.su_badlen - stp->st_orglen); + stp->st_wordlen + sug.su_badlen - stp->st_orglen); AppendCharToRedobuff(ESC); } } @@ -8759,18 +9704,19 @@ ex_spellrepall(eap) * a list of allocated strings. */ void -spell_suggest_list(gap, word, maxcount, need_cap) +spell_suggest_list(gap, word, maxcount, need_cap, interactive) garray_T *gap; char_u *word; int maxcount; /* maximum nr of suggestions */ int need_cap; /* 'spellcapcheck' matched */ + int interactive; { suginfo_T sug; int i; suggest_T *stp; char_u *wcopy; - spell_find_suggest(word, &sug, maxcount, FALSE, need_cap); + spell_find_suggest(word, &sug, maxcount, FALSE, need_cap, interactive); /* Make room in "gap". */ ga_init2(gap, sizeof(char_u *), sug.su_ga.ga_len + 1); @@ -8783,12 +9729,12 @@ spell_suggest_list(gap, word, maxcount, need_cap) /* The suggested word may replace only part of "word", add the not * replaced part. */ - wcopy = alloc(STRLEN(stp->st_word) + wcopy = alloc(stp->st_wordlen + STRLEN(sug.su_badptr + stp->st_orglen) + 1); if (wcopy == NULL) break; STRCPY(wcopy, stp->st_word); - STRCAT(wcopy, sug.su_badptr + stp->st_orglen); + STRCPY(wcopy + stp->st_wordlen, sug.su_badptr + stp->st_orglen); ((char_u **)gap->ga_data)[gap->ga_len++] = wcopy; } @@ -8803,12 +9749,13 @@ spell_suggest_list(gap, word, maxcount, need_cap) * This is based on the mechanisms of Aspell, but completely reimplemented. */ static void -spell_find_suggest(badptr, su, maxcount, banbadword, need_cap) +spell_find_suggest(badptr, su, maxcount, banbadword, need_cap, interactive) char_u *badptr; suginfo_T *su; int maxcount; int banbadword; /* don't include badword in suggestions */ int need_cap; /* word should start with capital */ + int interactive; { hlf_T attr = HLF_COUNT; char_u buf[MAXPATHL]; @@ -8833,7 +9780,7 @@ spell_find_suggest(badptr, su, maxcount, banbadword, need_cap) hash_init(&su->su_banned); su->su_badptr = badptr; - su->su_badlen = spell_check(curwin, su->su_badptr, &attr, NULL); + su->su_badlen = spell_check(curwin, su->su_badptr, &attr, NULL, FALSE); su->su_maxcount = maxcount; su->su_maxscore = SCORE_MAXINIT; @@ -8876,7 +9823,7 @@ spell_find_suggest(badptr, su, maxcount, banbadword, need_cap) { make_case_word(su->su_badword, buf, WF_ONECAP); add_suggestion(su, &su->su_ga, buf, su->su_badlen, SCORE_ICASE, - 0, TRUE, su->su_sallang); + 0, TRUE, su->su_sallang, FALSE); } /* Ban the bad word itself. It may appear in another region. */ @@ -8912,7 +9859,7 @@ spell_find_suggest(badptr, su, maxcount, banbadword, need_cap) else { /* Use internal method. */ - spell_suggest_intern(su); + spell_suggest_intern(su, interactive); if (sps_flags & SPS_DOUBLE) do_combine = TRUE; } @@ -8952,14 +9899,15 @@ spell_suggest_expr(su, expr) { /* Get the word and the score from the items. */ score = get_spellword(li->li_tv.vval.v_list, &p); - if (score >= 0) - add_suggestion(su, &su->su_ga, p, - su->su_badlen, score, 0, TRUE, su->su_sallang); + if (score >= 0 && score <= su->su_maxscore) + add_suggestion(su, &su->su_ga, p, su->su_badlen, + score, 0, TRUE, su->su_sallang, FALSE); } list_unref(list); } - /* Sort the suggestions and truncate at "maxcount". */ + /* Remove bogus suggestions, sort and truncate at "maxcount". */ + check_suggestions(su, &su->su_ga); (void)cleanup_suggestions(&su->su_ga, su->su_maxscore, su->su_maxcount); } #endif @@ -9011,13 +9959,14 @@ spell_suggest_file(su, fname) } add_suggestion(su, &su->su_ga, p, su->su_badlen, - SCORE_FILE, 0, TRUE, su->su_sallang); + SCORE_FILE, 0, TRUE, su->su_sallang, FALSE); } } fclose(fd); - /* Sort the suggestions and truncate at "maxcount". */ + /* Remove bogus suggestions, sort and truncate at "maxcount". */ + check_suggestions(su, &su->su_ga); (void)cleanup_suggestions(&su->su_ga, su->su_maxscore, su->su_maxcount); } @@ -9025,9 +9974,15 @@ spell_suggest_file(su, fname) * Find suggestions for the internal method indicated by "sps_flags". */ static void -spell_suggest_intern(su) +spell_suggest_intern(su, interactive) suginfo_T *su; + int interactive; { + /* + * Load the .sug file(s) that are available and not done yet. + */ + suggest_load_files(); + /* * 1. Try special cases, such as repeating a word: "the the" -> "the". * @@ -9048,22 +10003,50 @@ spell_suggest_intern(su) /* * 3. Try finding sound-a-like words. - * - * Only do this when we don't have a lot of suggestions yet, because it's - * very slow and often doesn't find new suggestions. */ - if ((sps_flags & SPS_DOUBLE) - || (!(sps_flags & SPS_FAST) - && su->su_ga.ga_len < SUG_CLEAN_COUNT(su))) + if ((sps_flags & SPS_FAST) == 0) { - /* Allow a higher score now. */ - su->su_maxscore = SCORE_MAXMAX; + if (sps_flags & SPS_BEST) + /* Adjust the word score for the suggestions found so far for how + * they sounds like. */ + rescore_suggestions(su); + + /* + * While going throught the soundfold tree "su_maxscore" is the score + * for the soundfold word, limits the changes that are being tried, + * and "su_sfmaxscore" the rescored score, which is set by + * cleanup_suggestions(). + * First find words with a small edit distance, because this is much + * faster and often already finds the top-N suggestions. If we didn't + * find many suggestions try again with a higher edit distance. + * "sl_sounddone" is used to avoid doing the same word twice. + */ + suggest_try_soundalike_prep(); + su->su_maxscore = SCORE_SFMAX1; + su->su_sfmaxscore = SCORE_MAXINIT * 3; suggest_try_soundalike(su); + if (su->su_ga.ga_len < SUG_CLEAN_COUNT(su)) + { + /* We didn't find enough matches, try again, allowing more + * changes to the soundfold word. */ + su->su_maxscore = SCORE_SFMAX2; + suggest_try_soundalike(su); + if (su->su_ga.ga_len < SUG_CLEAN_COUNT(su)) + { + /* Still didn't find enough matches, try again, allowing even + * more changes to the soundfold word. */ + su->su_maxscore = SCORE_SFMAX3; + suggest_try_soundalike(su); + } + } + su->su_maxscore = su->su_sfmaxscore; + suggest_try_soundalike_finish(); } - /* When CTRL-C was hit while searching do show the results. */ + /* When CTRL-C was hit while searching do show the results. Only clear + * got_int when using a command, not for spellsuggest(). */ ui_breakcheck(); - if (got_int) + if (interactive && got_int) { (void)vgetc(); got_int = FALSE; @@ -9075,11 +10058,219 @@ spell_suggest_intern(su) /* Adjust the word score for how it sounds like. */ rescore_suggestions(su); - /* Sort the suggestions and truncate at "maxcount". */ + /* Remove bogus suggestions, sort and truncate at "maxcount". */ + check_suggestions(su, &su->su_ga); (void)cleanup_suggestions(&su->su_ga, su->su_maxscore, su->su_maxcount); } } +/* + * Load the .sug files for languages that have one and weren't loaded yet. + */ + static void +suggest_load_files() +{ + langp_T *lp; + int lpi; + slang_T *slang; + char_u *dotp; + FILE *fd; + char_u buf[MAXWLEN]; + int i; + time_t timestamp; + int wcount; + int wordnr; + garray_T ga; + int c; + + /* Do this for all languages that support sound folding. */ + for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) + { + lp = LANGP_ENTRY(curbuf->b_langp, lpi); + slang = lp->lp_slang; + if (slang->sl_sugtime != 0 && !slang->sl_sugloaded) + { + /* Change ".spl" to ".sug" and open the file. When the file isn't + * found silently skip it. Do set "sl_sugloaded" so that we + * don't try again and again. */ + slang->sl_sugloaded = TRUE; + + dotp = vim_strrchr(slang->sl_fname, '.'); + if (dotp == NULL || fnamecmp(dotp, ".spl") != 0) + continue; + STRCPY(dotp, ".sug"); + fd = fopen((char *)slang->sl_fname, "r"); + if (fd == NULL) + goto nextone; + + /* + * : + */ + for (i = 0; i < VIMSUGMAGICL; ++i) + buf[i] = getc(fd); /* */ + if (STRNCMP(buf, VIMSUGMAGIC, VIMSUGMAGICL) != 0) + { + EMSG2(_("E999: This does not look like a .sug file: %s"), + slang->sl_fname); + goto nextone; + } + c = getc(fd); /* */ + if (c < VIMSUGVERSION) + { + EMSG2(_("E999: Old .sug file, needs to be updated: %s"), + slang->sl_fname); + goto nextone; + } + else if (c > VIMSUGVERSION) + { + EMSG2(_("E999: .sug file is for newer version of Vim: %s"), + slang->sl_fname); + goto nextone; + } + + /* Check the timestamp, it must be exactly the same as the one in + * the .spl file. Otherwise the word numbers won't match. */ + timestamp = 0; + for (i = 7; i >= 0; --i) /* */ + timestamp += getc(fd) << (i * 8); + if (timestamp != slang->sl_sugtime) + { + EMSG2(_("E999: .sug file doesn't match .spl file: %s"), + slang->sl_fname); + goto nextone; + } + + /* + * : + * Read the trie with the soundfolded words. + */ + if (spell_read_tree(fd, &slang->sl_sbyts, &slang->sl_sidxs, + FALSE, 0) != 0) + { +someerror: + EMSG2(_("E999: error while reading .sug file: %s"), + slang->sl_fname); + slang_clear_sug(slang); + goto nextone; + } + + /* + * : ... + * + * Read the table with word numbers. We use a file buffer for + * this, because it's so much like a file with lines. Makes it + * possible to swap the info and save on memory use. + */ + slang->sl_sugbuf = open_spellbuf(); + if (slang->sl_sugbuf == NULL) + goto someerror; + /* */ + wcount = (getc(fd) << 24) + (getc(fd) << 16) + (getc(fd) << 8) + + getc(fd); + if (wcount < 0) + goto someerror; + + /* Read all the wordnr lists into the buffer, one NUL terminated + * list per line. */ + ga_init2(&ga, 1, 100); + for (wordnr = 0; wordnr < wcount; ++wordnr) + { + ga.ga_len = 0; + for (;;) + { + c = getc(fd); /* */ + if (c < 0 || ga_grow(&ga, 1) == FAIL) + goto someerror; + ((char_u *)ga.ga_data)[ga.ga_len++] = c; + if (c == NUL) + break; + } + if (ml_append_buf(slang->sl_sugbuf, (linenr_T)wordnr, + ga.ga_data, ga.ga_len, TRUE) == FAIL) + goto someerror; + } + ga_clear(&ga); + + /* + * Need to put word counts in the word tries, so that we can find + * a word by its number. + */ + tree_count_words(slang->sl_fbyts, slang->sl_fidxs); + tree_count_words(slang->sl_sbyts, slang->sl_sidxs); + +nextone: + if (fd != NULL) + fclose(fd); + STRCPY(dotp, ".spl"); + } + } +} + + +/* + * Fill in the wordcount fields for a trie. + * Returns the total number of words. + */ + static void +tree_count_words(byts, idxs) + char_u *byts; + idx_T *idxs; +{ + int depth; + idx_T arridx[MAXWLEN]; + int curi[MAXWLEN]; + int c; + idx_T n; + int wordcount[MAXWLEN]; + + arridx[0] = 0; + curi[0] = 1; + wordcount[0] = 0; + depth = 0; + while (depth >= 0 && !got_int) + { + if (curi[depth] > byts[arridx[depth]]) + { + /* Done all bytes at this node, go up one level. */ + idxs[arridx[depth]] = wordcount[depth]; + if (depth > 0) + wordcount[depth - 1] += wordcount[depth]; + + --depth; + fast_breakcheck(); + } + else + { + /* Do one more byte at this node. */ + n = arridx[depth] + curi[depth]; + ++curi[depth]; + + c = byts[n]; + if (c == 0) + { + /* End of word, count it. */ + ++wordcount[depth]; + + /* Skip over any other NUL bytes (same word with different + * flags). */ + while (byts[n + 1] == 0) + { + ++n; + ++curi[depth]; + } + } + else + { + /* Normal char, go one level deeper to count the words. */ + ++depth; + arridx[depth] = idxs[n]; + curi[depth] = 1; + wordcount[depth] = 0; + } + } + } +} + /* * Free the info put in "*su" by spell_find_suggest(). */ @@ -9098,7 +10289,7 @@ spell_find_cleanup(su) ga_clear(&su->su_sga); /* Free the banned words. */ - free_banned(su); + hash_clear_all(&su->su_banned, 0); } /* @@ -9224,31 +10415,87 @@ suggest_try_special(su) /* Give a soundalike score of 0, compute the score as if deleting one * character. */ add_suggestion(su, &su->su_ga, word, su->su_badlen, - RESCORE(SCORE_REP, 0), 0, TRUE, su->su_sallang); + RESCORE(SCORE_REP, 0), 0, TRUE, su->su_sallang, FALSE); + } +} + +/* + * Try finding suggestions by adding/removing/swapping letters. + */ + static void +suggest_try_change(su) + suginfo_T *su; +{ + char_u fword[MAXWLEN]; /* copy of the bad word, case-folded */ + int n; + char_u *p; + int lpi; + langp_T *lp; + + /* We make a copy of the case-folded bad word, so that we can modify it + * to find matches (esp. REP items). Append some more text, changing + * chars after the bad word may help. */ + STRCPY(fword, su->su_fbadword); + n = STRLEN(fword); + p = su->su_badptr + su->su_badlen; + (void)spell_casefold(p, STRLEN(p), fword + n, MAXWLEN - n); + + for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) + { + lp = LANGP_ENTRY(curbuf->b_langp, lpi); + + /* If reloading a spell file fails it's still in the list but + * everything has been cleared. */ + if (lp->lp_slang->sl_fbyts == NULL) + continue; + + /* Try it for this language. Will add possible suggestions. */ + suggest_trie_walk(su, lp, fword, FALSE); } } +/* Check the maximum score, if we go over it we won't try this change. */ +#define TRY_DEEPER(su, stack, depth, add) \ + (stack[depth].ts_score + (add) < su->su_maxscore) + /* * Try finding suggestions by adding/removing/swapping letters. * * This uses a state machine. At each node in the tree we try various - * operations. When trying if an operation work "depth" is increased and the + * operations. When trying if an operation works "depth" is increased and the * stack[] is used to store info. This allows combinations, thus insert one * character, replace one and delete another. The number of changes is - * limited by su->su_maxscore, checked in try_deeper(). + * limited by su->su_maxscore. * * After implementing this I noticed an article by Kemal Oflazer that * describes something similar: "Error-tolerant Finite State Recognition with * Applications to Morphological Analysis and Spelling Correction" (1996). * The implementation in the article is simplified and requires a stack of - * unknown depth. The implementation here only needs a stack depth of the - * length of the word. + * unknown depth. The implementation here only needs a stack depth equal to + * the length of the word. + * + * This is also used for the sound-folded word, "soundfold" is TRUE then. + * The mechanism is the same, but we find a match with a sound-folded word + * that comes from one or more original words. Each of these words may be + * added, this is done by add_sound_suggest(). + * Don't use: + * the prefix tree or the keep-case tree + * "su->su_badlen" + * anything to do with upper and lower case + * anything to do with word or non-word characters ("spell_iswordp()") + * banned words + * word flags (rare, region, compounding) + * word splitting for now + * "similar_chars()" + * use "slang->sl_repsal" instead of "lp->lp_replang->sl_rep" */ static void -suggest_try_change(su) +suggest_trie_walk(su, lp, fword, soundfold) suginfo_T *su; + langp_T *lp; + char_u *fword; + int soundfold; { - char_u fword[MAXWLEN]; /* copy of the bad word, case-folded */ char_u tword[MAXWLEN]; /* good word collected so far */ trystate_T stack[MAXWLEN]; char_u preword[MAXWLEN * 3]; /* word found with proper case; @@ -9259,12 +10506,12 @@ suggest_try_change(su) char_u compflags[MAXWLEN]; /* compound flags, one for each word */ trystate_T *sp; int newscore; - langp_T *lp; + int score; char_u *byts, *fbyts, *pbyts; idx_T *idxs, *fidxs, *pidxs; int depth; int c, c2, c3; - int n; + int n = 0; int flags; garray_T *gap; idx_T arridx; @@ -9273,41 +10520,39 @@ suggest_try_change(su) fromto_T *ftp; int fl = 0, tl; int repextra = 0; /* extra bytes in fword[] from REP item */ - slang_T *slang; + slang_T *slang = lp->lp_slang; int fword_ends; - int lpi; - int maysplit; int goodword_ends; +#ifdef DEBUG_TRIEWALK + /* Stores the name of the change made at each level. */ + char_u changename[MAXWLEN][80]; +#endif + int breakcheckcount = 1000; + int compound_ok; - /* We make a copy of the case-folded bad word, so that we can modify it - * to find matches (esp. REP items). Append some more text, changing - * chars after the bad word may help. */ - STRCPY(fword, su->su_fbadword); - n = STRLEN(fword); - p = su->su_badptr + su->su_badlen; - (void)spell_casefold(p, STRLEN(p), fword + n, MAXWLEN - n); + /* + * Go through the whole case-fold tree, try changes at each node. + * "tword[]" contains the word collected from nodes in the tree. + * "fword[]" the word we are trying to match with (initially the bad + * word). + */ + depth = 0; + sp = &stack[0]; + vim_memset(sp, 0, sizeof(trystate_T)); + sp->ts_curi = 1; - for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) + if (soundfold) + { + /* Going through the soundfold tree. */ + byts = fbyts = slang->sl_sbyts; + idxs = fidxs = slang->sl_sidxs; + pbyts = NULL; + pidxs = NULL; + sp->ts_prefixdepth = PFD_NOPREFIX; + sp->ts_state = STATE_START; + } + else { - lp = LANGP_ENTRY(curbuf->b_langp, lpi); - slang = lp->lp_slang; - - /* If reloading a spell file fails it's still in the list but - * everything has been cleared. */ - if (slang->sl_fbyts == NULL) - continue; - - /* - * Go through the whole case-fold tree, try changes at each node. - * "tword[]" contains the word collected from nodes in the tree. - * "fword[]" the word we are trying to match with (initially the bad - * word). - */ - depth = 0; - sp = &stack[0]; - vim_memset(sp, 0, sizeof(trystate_T)); - sp->ts_curi = 1; - /* * When there are postponed prefixes we need to use these first. At * the end of the prefix we continue in the case-fold tree. @@ -9330,232 +10575,243 @@ suggest_try_change(su) sp->ts_prefixdepth = PFD_NOPREFIX; sp->ts_state = STATE_START; } + } - /* - * Loop to find all suggestions. At each round we either: - * - For the current state try one operation, advance "ts_curi", - * increase "depth". - * - When a state is done go to the next, set "ts_state". - * - When all states are tried decrease "depth". - */ - while (depth >= 0 && !got_int) + /* + * Loop to find all suggestions. At each round we either: + * - For the current state try one operation, advance "ts_curi", + * increase "depth". + * - When a state is done go to the next, set "ts_state". + * - When all states are tried decrease "depth". + */ + while (depth >= 0 && !got_int) + { + sp = &stack[depth]; + switch (sp->ts_state) { - sp = &stack[depth]; - switch (sp->ts_state) + case STATE_START: + case STATE_NOPREFIX: + /* + * Start of node: Deal with NUL bytes, which means + * tword[] may end here. + */ + arridx = sp->ts_arridx; /* current node in the tree */ + len = byts[arridx]; /* bytes in this node */ + arridx += sp->ts_curi; /* index of current byte */ + + if (sp->ts_prefixdepth == PFD_PREFIXTREE) { - case STATE_START: - case STATE_NOPREFIX: - /* - * Start of node: Deal with NUL bytes, which means - * tword[] may end here. - */ - arridx = sp->ts_arridx; /* current node in the tree */ - len = byts[arridx]; /* bytes in this node */ - arridx += sp->ts_curi; /* index of current byte */ + /* Skip over the NUL bytes, we use them later. */ + for (n = 0; n < len && byts[arridx + n] == 0; ++n) + ; + sp->ts_curi += n; + + /* Always past NUL bytes now. */ + n = (int)sp->ts_state; + sp->ts_state = STATE_ENDNUL; + sp->ts_save_badflags = su->su_badflags; - if (sp->ts_prefixdepth == PFD_PREFIXTREE) + /* At end of a prefix or at start of prefixtree: check for + * following word. */ + if (byts[arridx] == 0 || n == (int)STATE_NOPREFIX) { - /* Skip over the NUL bytes, we use them later. */ - for (n = 0; n < len && byts[arridx + n] == 0; ++n) - ; - sp->ts_curi += n; - - /* Always past NUL bytes now. */ - n = (int)sp->ts_state; - sp->ts_state = STATE_ENDNUL; - sp->ts_save_badflags = su->su_badflags; - - /* At end of a prefix or at start of prefixtree: check for - * following word. */ - if (byts[arridx] == 0 || n == (int)STATE_NOPREFIX) - { - /* Set su->su_badflags to the caps type at this - * position. Use the caps type until here for the - * prefix itself. */ + /* Set su->su_badflags to the caps type at this position. + * Use the caps type until here for the prefix itself. */ #ifdef FEAT_MBYTE - if (has_mbyte) - n = nofold_len(fword, sp->ts_fidx, su->su_badptr); - else + if (has_mbyte) + n = nofold_len(fword, sp->ts_fidx, su->su_badptr); + else #endif - n = sp->ts_fidx; - flags = badword_captype(su->su_badptr, - su->su_badptr + n); - su->su_badflags = badword_captype(su->su_badptr + n, + n = sp->ts_fidx; + flags = badword_captype(su->su_badptr, su->su_badptr + n); + su->su_badflags = badword_captype(su->su_badptr + n, su->su_badptr + su->su_badlen); - ++depth; - stack[depth] = stack[depth - 1]; - sp = &stack[depth]; - sp->ts_prefixdepth = depth - 1; - byts = fbyts; - idxs = fidxs; - sp->ts_state = STATE_START; - sp->ts_curi = 1; /* start just after length byte */ - sp->ts_arridx = 0; - - /* Move the prefix to preword[] with the right case - * and make find_keepcap_word() works. */ - tword[sp->ts_twordlen] = NUL; - make_case_word(tword + sp->ts_splitoff, - preword + sp->ts_prewordlen, - flags); - sp->ts_prewordlen = STRLEN(preword); - sp->ts_splitoff = sp->ts_twordlen; - } - break; +#ifdef DEBUG_TRIEWALK + sprintf(changename[depth], "prefix"); +#endif + go_deeper(stack, depth, 0); + ++depth; + sp = &stack[depth]; + sp->ts_prefixdepth = depth - 1; + byts = fbyts; + idxs = fidxs; + sp->ts_arridx = 0; + + /* Move the prefix to preword[] with the right case + * and make find_keepcap_word() works. */ + tword[sp->ts_twordlen] = NUL; + make_case_word(tword + sp->ts_splitoff, + preword + sp->ts_prewordlen, flags); + sp->ts_prewordlen = STRLEN(preword); + sp->ts_splitoff = sp->ts_twordlen; } + break; + } - if (sp->ts_curi > len || byts[arridx] != 0) - { - /* Past bytes in node and/or past NUL bytes. */ - sp->ts_state = STATE_ENDNUL; - sp->ts_save_badflags = su->su_badflags; - break; - } + if (sp->ts_curi > len || byts[arridx] != 0) + { + /* Past bytes in node and/or past NUL bytes. */ + sp->ts_state = STATE_ENDNUL; + sp->ts_save_badflags = su->su_badflags; + break; + } - /* - * End of word in tree. - */ - ++sp->ts_curi; /* eat one NUL byte */ + /* + * End of word in tree. + */ + ++sp->ts_curi; /* eat one NUL byte */ - flags = (int)idxs[arridx]; - fword_ends = (fword[sp->ts_fidx] == NUL - || !spell_iswordp(fword + sp->ts_fidx, curbuf)); - tword[sp->ts_twordlen] = NUL; + flags = (int)idxs[arridx]; + fword_ends = (fword[sp->ts_fidx] == NUL + || (soundfold + ? vim_iswhite(fword[sp->ts_fidx]) + : !spell_iswordp(fword + sp->ts_fidx, curbuf))); + tword[sp->ts_twordlen] = NUL; - if (sp->ts_prefixdepth <= PFD_NOTSPECIAL + if (sp->ts_prefixdepth <= PFD_NOTSPECIAL && (sp->ts_flags & TSF_PREFIXOK) == 0) + { + /* There was a prefix before the word. Check that the prefix + * can be used with this word. */ + /* Count the length of the NULs in the prefix. If there are + * none this must be the first try without a prefix. */ + n = stack[sp->ts_prefixdepth].ts_arridx; + len = pbyts[n++]; + for (c = 0; c < len && pbyts[n + c] == 0; ++c) + ; + if (c > 0) { - /* There was a prefix before the word. Check that the - * prefix can be used with this word. */ - /* Count the length of the NULs in the prefix. If there - * are none this must be the first try without a prefix. - */ - n = stack[sp->ts_prefixdepth].ts_arridx; - len = pbyts[n++]; - for (c = 0; c < len && pbyts[n + c] == 0; ++c) - ; - if (c > 0) - { - c = valid_word_prefix(c, n, flags, + c = valid_word_prefix(c, n, flags, tword + sp->ts_splitoff, slang, FALSE); - if (c == 0) - break; + if (c == 0) + break; - /* Use the WF_RARE flag for a rare prefix. */ - if (c & WF_RAREPFX) - flags |= WF_RARE; + /* Use the WF_RARE flag for a rare prefix. */ + if (c & WF_RAREPFX) + flags |= WF_RARE; - /* Tricky: when checking for both prefix and - * compounding we run into the prefix flag first. - * Remember that it's OK, so that we accept the prefix - * when arriving at a compound flag. */ - sp->ts_flags |= TSF_PREFIXOK; - } + /* Tricky: when checking for both prefix and compounding + * we run into the prefix flag first. + * Remember that it's OK, so that we accept the prefix + * when arriving at a compound flag. */ + sp->ts_flags |= TSF_PREFIXOK; } + } - /* Check NEEDCOMPOUND: can't use word without compounding. Do - * try appending another compound word below. */ - if (sp->ts_complen == sp->ts_compsplit && fword_ends + /* Check NEEDCOMPOUND: can't use word without compounding. Do try + * appending another compound word below. */ + if (sp->ts_complen == sp->ts_compsplit && fword_ends && (flags & WF_NEEDCOMP)) - goodword_ends = FALSE; - else - goodword_ends = TRUE; + goodword_ends = FALSE; + else + goodword_ends = TRUE; - if (sp->ts_complen > sp->ts_compsplit) + p = NULL; + compound_ok = TRUE; + if (sp->ts_complen > sp->ts_compsplit) + { + if (slang->sl_nobreak) { - if (slang->sl_nobreak) - { - /* There was a word before this word. When there was - * no change in this word (it was correct) add the - * first word as a suggestion. If this word was - * corrected too, we need to check if a correct word - * follows. */ - if (sp->ts_fidx - sp->ts_splitfidx + /* There was a word before this word. When there was no + * change in this word (it was correct) add the first word + * as a suggestion. If this word was corrected too, we + * need to check if a correct word follows. */ + if (sp->ts_fidx - sp->ts_splitfidx == sp->ts_twordlen - sp->ts_splitoff - && STRNCMP(fword + sp->ts_splitfidx, - tword + sp->ts_splitoff, + && STRNCMP(fword + sp->ts_splitfidx, + tword + sp->ts_splitoff, sp->ts_fidx - sp->ts_splitfidx) == 0) - { - preword[sp->ts_prewordlen] = NUL; + { + preword[sp->ts_prewordlen] = NUL; + newscore = score_wordcount_adj(slang, sp->ts_score, + preword + sp->ts_prewordlen, + sp->ts_prewordlen > 0); + /* Add the suggestion if the score isn't too bad. */ + if (newscore <= su->su_maxscore) add_suggestion(su, &su->su_ga, preword, sp->ts_splitfidx - repextra, - sp->ts_score, 0, FALSE, - lp->lp_sallang); - break; - } + newscore, 0, FALSE, + lp->lp_sallang, FALSE); + break; } - else - { - /* There was a compound word before this word. If - * this word does not support compounding then give up - * (splitting is tried for the word without compound - * flag). */ - if (((unsigned)flags >> 24) == 0 - || sp->ts_twordlen - sp->ts_splitoff + } + else + { + /* There was a compound word before this word. If this + * word does not support compounding then give up + * (splitting is tried for the word without compound + * flag). */ + if (((unsigned)flags >> 24) == 0 + || sp->ts_twordlen - sp->ts_splitoff < slang->sl_compminlen) - break; + break; #ifdef FEAT_MBYTE - /* For multi-byte chars check character length against - * COMPOUNDMIN. */ - if (has_mbyte - && slang->sl_compminlen > 0 - && mb_charlen(tword + sp->ts_splitoff) + /* For multi-byte chars check character length against + * COMPOUNDMIN. */ + if (has_mbyte + && slang->sl_compminlen > 0 + && mb_charlen(tword + sp->ts_splitoff) < slang->sl_compminlen) - break; + break; #endif - compflags[sp->ts_complen] = ((unsigned)flags >> 24); - compflags[sp->ts_complen + 1] = NUL; - vim_strncpy(preword + sp->ts_prewordlen, - tword + sp->ts_splitoff, - sp->ts_twordlen - sp->ts_splitoff); - p = preword; - while (*skiptowhite(p) != NUL) - p = skipwhite(skiptowhite(p)); - if (fword_ends && !can_compound(slang, p, + compflags[sp->ts_complen] = ((unsigned)flags >> 24); + compflags[sp->ts_complen + 1] = NUL; + vim_strncpy(preword + sp->ts_prewordlen, + tword + sp->ts_splitoff, + sp->ts_twordlen - sp->ts_splitoff); + p = preword; + while (*skiptowhite(p) != NUL) + p = skipwhite(skiptowhite(p)); + if (fword_ends && !can_compound(slang, p, compflags + sp->ts_compsplit)) - break; + /* Compound is not allowed. But it may still be + * possible if we add another (short) word. */ + compound_ok = FALSE; - /* Get pointer to last char of previous word. */ - p = preword + sp->ts_prewordlen; - mb_ptr_back(preword, p); - } + /* Get pointer to last char of previous word. */ + p = preword + sp->ts_prewordlen; + mb_ptr_back(preword, p); } - else - p = NULL; + } - /* - * Form the word with proper case in preword. - * If there is a word from a previous split, append. - */ - if (flags & WF_KEEPCAP) - /* Must find the word in the keep-case tree. */ - find_keepcap_word(slang, tword + sp->ts_splitoff, + /* + * Form the word with proper case in preword. + * If there is a word from a previous split, append. + * For the soundfold tree don't change the case, simply append. + */ + if (soundfold) + STRCPY(preword + sp->ts_prewordlen, tword + sp->ts_splitoff); + else if (flags & WF_KEEPCAP) + /* Must find the word in the keep-case tree. */ + find_keepcap_word(slang, tword + sp->ts_splitoff, preword + sp->ts_prewordlen); - else - { - /* Include badflags: if the badword is onecap or allcap - * use that for the goodword too. But if the badword is - * allcap and it's only one char long use onecap. */ - c = su->su_badflags; - if ((c & WF_ALLCAP) + else + { + /* Include badflags: If the badword is onecap or allcap + * use that for the goodword too. But if the badword is + * allcap and it's only one char long use onecap. */ + c = su->su_badflags; + if ((c & WF_ALLCAP) #ifdef FEAT_MBYTE - && su->su_badlen == (*mb_ptr2len)(su->su_badptr) + && su->su_badlen == (*mb_ptr2len)(su->su_badptr) #else - && su->su_badlen == 1 + && su->su_badlen == 1 #endif - ) - c = WF_ONECAP; - c |= flags; - - /* When appending a compound word after a word character - * don't use Onecap. */ - if (p != NULL && spell_iswordp_nmw(p)) - c &= ~WF_ONECAP; - make_case_word(tword + sp->ts_splitoff, + ) + c = WF_ONECAP; + c |= flags; + + /* When appending a compound word after a word character don't + * use Onecap. */ + if (p != NULL && spell_iswordp_nmw(p)) + c &= ~WF_ONECAP; + make_case_word(tword + sp->ts_splitoff, preword + sp->ts_prewordlen, c); - } + } + if (!soundfold) + { /* Don't use a banned word. It may appear again as a good * word, thus remember it. */ if (flags & WF_BANNED) @@ -9564,16 +10820,19 @@ suggest_try_change(su) break; } if ((sp->ts_complen == sp->ts_compsplit - && was_banned(su, preword + sp->ts_prewordlen)) - || was_banned(su, preword)) + && WAS_BANNED(su, preword + sp->ts_prewordlen)) + || WAS_BANNED(su, preword)) { if (slang->sl_compprog == NULL) break; /* the word so far was banned but we may try compounding */ goodword_ends = FALSE; } + } - newscore = 0; + newscore = 0; + if (!soundfold) /* soundfold words don't have flags */ + { if ((flags & WF_REGION) && (((unsigned)flags >> 16) & lp->lp_region) == 0) newscore += SCORE_REGION; @@ -9583,113 +10842,141 @@ suggest_try_change(su) if (!spell_valid_case(su->su_badflags, captype(preword + sp->ts_prewordlen, NULL))) newscore += SCORE_ICASE; + } - maysplit = TRUE; - if (fword_ends && goodword_ends - && sp->ts_fidx >= sp->ts_fidxtry) + /* TODO: how about splitting in the soundfold tree? */ + if (fword_ends + && goodword_ends + && sp->ts_fidx >= sp->ts_fidxtry + && compound_ok) + { + /* The badword also ends: add suggestions. */ +#ifdef DEBUG_TRIEWALK + if (soundfold && STRCMP(preword, "smwrd") == 0) { - /* The badword also ends: add suggestions. Give a penalty - * when changing non-word char to word char, e.g., "thes," - * -> "these". */ - p = fword + sp->ts_fidx; -#ifdef FEAT_MBYTE - if (has_mbyte) - mb_ptr_back(fword, p); - else + int j; + + /* print the stack of changes that brought us here */ + smsg("------ %s -------", fword); + for (j = 0; j < depth; ++j) + smsg("%s", changename[j]); + } #endif - --p; + if (soundfold) + { + /* For soundfolded words we need to find the original + * words, the edit distrance and then add them. */ + add_sound_suggest(su, preword, sp->ts_score, lp); + } + else + { + /* Give a penalty when changing non-word char to word + * char, e.g., "thes," -> "these". */ + p = fword + sp->ts_fidx; + mb_ptr_back(fword, p); if (!spell_iswordp(p, curbuf)) { p = preword + STRLEN(preword); -#ifdef FEAT_MBYTE - if (has_mbyte) - mb_ptr_back(preword, p); - else -#endif - --p; + mb_ptr_back(preword, p); if (spell_iswordp(p, curbuf)) newscore += SCORE_NONWORD; } - add_suggestion(su, &su->su_ga, preword, - sp->ts_fidx - repextra, - sp->ts_score + newscore, 0, FALSE, - lp->lp_sallang); - - /* When the bad word doesn't end yet, try changing the - * next word. E.g., find suggestions for "the the" where - * the second "the" is different. It's done like a split. - */ - if (sp->ts_fidx - repextra >= su->su_badlen) - maysplit = FALSE; + /* Give a bonus to words seen before. */ + score = score_wordcount_adj(slang, + sp->ts_score + newscore, + preword + sp->ts_prewordlen, + sp->ts_prewordlen > 0); + + /* Add the suggestion if the score isn't too bad. */ + if (score <= su->su_maxscore) + add_suggestion(su, &su->su_ga, preword, + sp->ts_fidx - repextra, + score, 0, FALSE, lp->lp_sallang, FALSE); } + } - if (maysplit - && (sp->ts_fidx >= sp->ts_fidxtry || fword_ends) + /* + * Try word split and/or compounding. + */ + if ((sp->ts_fidx >= sp->ts_fidxtry || fword_ends) #ifdef FEAT_MBYTE - /* Don't split halfway a character. */ - && (!has_mbyte || sp->ts_tcharlen == 0) -#endif - ) - { - int try_compound; - - /* Get here in two situations: - * 1. The word in the tree ends but the badword continues: - * If the word allows compounding try that. Otherwise - * try a split by inserting a space. For both check - * that a valid words starts at fword[sp->ts_fidx]. - * For NOBREAK do like compounding to be able to check - * if the next word is valid. - * 2. The badword does end, but it was due to a change - * (e.g., a swap). No need to split, but do check that - * the following word is valid. - */ - try_compound = FALSE; - if ((!fword_ends || !goodword_ends) - && slang->sl_compprog != NULL - && ((unsigned)flags >> 24) != 0 - && sp->ts_twordlen - sp->ts_splitoff - >= slang->sl_compminlen + /* Don't split halfway a character. */ + && (!has_mbyte || sp->ts_tcharlen == 0) +#endif + ) + { + int try_compound; + int try_split; + + /* If past the end of the bad word don't try a split. + * Otherwise try changing the next word. E.g., find + * suggestions for "the the" where the second "the" is + * different. It's done like a split. + * TODO: word split for soundfold words */ + try_split = (sp->ts_fidx - repextra < su->su_badlen) + && !soundfold; + + /* Get here in several situations: + * 1. The word in the tree ends: + * If the word allows compounding try that. Otherwise try + * a split by inserting a space. For both check that a + * valid words starts at fword[sp->ts_fidx]. + * For NOBREAK do like compounding to be able to check if + * the next word is valid. + * 2. The badword does end, but it was due to a change (e.g., + * a swap). No need to split, but do check that the + * following word is valid. + * 3. The badword and the word in the tree end. It may still + * be possible to compound another (short) word. + */ + try_compound = FALSE; + if (!soundfold + && slang->sl_compprog != NULL + && ((unsigned)flags >> 24) != 0 + && sp->ts_twordlen - sp->ts_splitoff + >= slang->sl_compminlen #ifdef FEAT_MBYTE - && (!has_mbyte - || slang->sl_compminlen == 0 - || mb_charlen(tword + sp->ts_splitoff) + && (!has_mbyte + || slang->sl_compminlen == 0 + || mb_charlen(tword + sp->ts_splitoff) >= slang->sl_compminlen) #endif - && (slang->sl_compsylmax < MAXWLEN - || sp->ts_complen + 1 - sp->ts_compsplit - < slang->sl_compmax) - && (byte_in_str(sp->ts_complen == sp->ts_compsplit - ? slang->sl_compstartflags - : slang->sl_compallflags, + && (slang->sl_compsylmax < MAXWLEN + || sp->ts_complen + 1 - sp->ts_compsplit + < slang->sl_compmax) + && (byte_in_str(sp->ts_complen == sp->ts_compsplit + ? slang->sl_compstartflags + : slang->sl_compallflags, ((unsigned)flags >> 24)))) - { - try_compound = TRUE; - compflags[sp->ts_complen] = ((unsigned)flags >> 24); - compflags[sp->ts_complen + 1] = NUL; - } + { + try_compound = TRUE; + compflags[sp->ts_complen] = ((unsigned)flags >> 24); + compflags[sp->ts_complen + 1] = NUL; + } - /* For NOBREAK we never try splitting, it won't make any - * word valid. */ - if (slang->sl_nobreak) - try_compound = TRUE; - - /* If we could add a compound word, and it's also possible - * to split at this point, do the split first and set - * TSF_DIDSPLIT to avoid doing it again. */ - else if (!fword_ends - && try_compound - && (sp->ts_flags & TSF_DIDSPLIT) == 0) - { - try_compound = FALSE; - sp->ts_flags |= TSF_DIDSPLIT; - --sp->ts_curi; /* do the same NUL again */ - compflags[sp->ts_complen] = NUL; - } - else - sp->ts_flags &= ~TSF_DIDSPLIT; + /* For NOBREAK we never try splitting, it won't make any word + * valid. */ + if (slang->sl_nobreak) + try_compound = TRUE; + + /* If we could add a compound word, and it's also possible to + * split at this point, do the split first and set + * TSF_DIDSPLIT to avoid doing it again. */ + else if (!fword_ends + && try_compound + && (sp->ts_flags & TSF_DIDSPLIT) == 0) + { + try_compound = FALSE; + sp->ts_flags |= TSF_DIDSPLIT; + --sp->ts_curi; /* do the same NUL again */ + compflags[sp->ts_complen] = NUL; + } + else + sp->ts_flags &= ~TSF_DIDSPLIT; + if (try_split || try_compound) + { if (!try_compound && (!fword_ends || !goodword_ends)) { /* If we're going to split need to check that the @@ -9707,10 +10994,23 @@ suggest_try_change(su) compflags + sp->ts_compsplit)) break; newscore += SCORE_SPLIT; + + /* Give a bonus to words seen before. */ + newscore = score_wordcount_adj(slang, newscore, + preword + sp->ts_prewordlen, TRUE); } - if (try_deeper(su, stack, depth, newscore)) + if (TRY_DEEPER(su, stack, depth, newscore)) { + go_deeper(stack, depth, newscore); +#ifdef DEBUG_TRIEWALK + if (!try_compound && !fword_ends) + sprintf(changename[depth], "%.*s-%s: split", + sp->ts_twordlen, tword, fword + sp->ts_fidx); + else + sprintf(changename[depth], "%.*s-%s: compound", + sp->ts_twordlen, tword, fword + sp->ts_fidx); +#endif /* Save things to be restored at STATE_SPLITUNDO. */ sp->ts_save_badflags = su->su_badflags; sp->ts_state = STATE_SPLITUNDO; @@ -9730,10 +11030,11 @@ suggest_try_change(su) * non-word character with a space. Always skip a * character when the word ends. But only when the * good word can end. */ - if (((!try_compound - && !spell_iswordp_nmw(fword + sp->ts_fidx)) - || fword_ends) - && goodword_ends) + if (((!try_compound && !spell_iswordp_nmw(fword + + sp->ts_fidx)) + || fword_ends) + && fword[sp->ts_fidx] != NUL + && goodword_ends) { int l; @@ -9789,508 +11090,644 @@ suggest_try_change(su) } } } - break; + } + break; - case STATE_SPLITUNDO: - /* Undo the changes done for word split or compound word. */ - su->su_badflags = sp->ts_save_badflags; + case STATE_SPLITUNDO: + /* Undo the changes done for word split or compound word. */ + su->su_badflags = sp->ts_save_badflags; - /* Continue looking for NUL bytes. */ - sp->ts_state = STATE_START; + /* Continue looking for NUL bytes. */ + sp->ts_state = STATE_START; - /* In case we went into the prefix tree. */ - byts = fbyts; - idxs = fidxs; - break; + /* In case we went into the prefix tree. */ + byts = fbyts; + idxs = fidxs; + break; - case STATE_ENDNUL: - /* Past the NUL bytes in the node. */ - su->su_badflags = sp->ts_save_badflags; - if (fword[sp->ts_fidx] == NUL + case STATE_ENDNUL: + /* Past the NUL bytes in the node. */ + su->su_badflags = sp->ts_save_badflags; + if (fword[sp->ts_fidx] == NUL #ifdef FEAT_MBYTE - && sp->ts_tcharlen == 0 + && sp->ts_tcharlen == 0 #endif - ) - { - /* The badword ends, can't use the bytes in this node. */ - sp->ts_state = STATE_DEL; - break; - } - sp->ts_state = STATE_PLAIN; - /*FALLTHROUGH*/ + ) + { + /* The badword ends, can't use STATE_PLAIN. */ + sp->ts_state = STATE_DEL; + break; + } + sp->ts_state = STATE_PLAIN; + /*FALLTHROUGH*/ - case STATE_PLAIN: - /* - * Go over all possible bytes at this node, add each to - * tword[] and use child node. "ts_curi" is the index. - */ - arridx = sp->ts_arridx; - if (sp->ts_curi > byts[arridx]) - { - /* Done all bytes at this node, do next state. When still - * at already changed bytes skip the other tricks. */ - if (sp->ts_fidx >= sp->ts_fidxtry) - sp->ts_state = STATE_DEL; - else - sp->ts_state = STATE_FINAL; - } + case STATE_PLAIN: + /* + * Go over all possible bytes at this node, add each to tword[] + * and use child node. "ts_curi" is the index. + */ + arridx = sp->ts_arridx; + if (sp->ts_curi > byts[arridx]) + { + /* Done all bytes at this node, do next state. When still at + * already changed bytes skip the other tricks. */ + if (sp->ts_fidx >= sp->ts_fidxtry) + sp->ts_state = STATE_DEL; else - { - arridx += sp->ts_curi++; - c = byts[arridx]; + sp->ts_state = STATE_FINAL; + } + else + { + arridx += sp->ts_curi++; + c = byts[arridx]; - /* Normal byte, go one level deeper. If it's not equal to - * the byte in the bad word adjust the score. But don't - * even try when the byte was already changed. */ - if (c == fword[sp->ts_fidx] + /* Normal byte, go one level deeper. If it's not equal to the + * byte in the bad word adjust the score. But don't even try + * when the byte was already changed. And don't try when we + * just deleted this byte, accepting it is always cheaper then + * delete + substitute. */ + if (c == fword[sp->ts_fidx] #ifdef FEAT_MBYTE - || (sp->ts_tcharlen > 0 - && sp->ts_isdiff != DIFF_NONE) + || (sp->ts_tcharlen > 0 && sp->ts_isdiff != DIFF_NONE) #endif - ) - newscore = 0; + ) + newscore = 0; + else + newscore = SCORE_SUBST; + if ((newscore == 0 + || (sp->ts_fidx >= sp->ts_fidxtry + && ((sp->ts_flags & TSF_DIDDEL) == 0 + || c != fword[sp->ts_delidx]))) + && TRY_DEEPER(su, stack, depth, newscore)) + { + go_deeper(stack, depth, newscore); +#ifdef DEBUG_TRIEWALK + if (newscore > 0) + sprintf(changename[depth], "%.*s-%s: subst %c to %c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + fword[sp->ts_fidx], c); else - newscore = SCORE_SUBST; - if ((newscore == 0 || sp->ts_fidx >= sp->ts_fidxtry) - && try_deeper(su, stack, depth, newscore)) - { - ++depth; - sp = &stack[depth]; - ++sp->ts_fidx; - tword[sp->ts_twordlen++] = c; - sp->ts_arridx = idxs[arridx]; + sprintf(changename[depth], "%.*s-%s: accept %c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + fword[sp->ts_fidx]); +#endif + ++depth; + sp = &stack[depth]; + ++sp->ts_fidx; + tword[sp->ts_twordlen++] = c; + sp->ts_arridx = idxs[arridx]; #ifdef FEAT_MBYTE - if (newscore == SCORE_SUBST) - sp->ts_isdiff = DIFF_YES; - if (has_mbyte) + if (newscore == SCORE_SUBST) + sp->ts_isdiff = DIFF_YES; + if (has_mbyte) + { + /* Multi-byte characters are a bit complicated to + * handle: They differ when any of the bytes differ + * and then their length may also differ. */ + if (sp->ts_tcharlen == 0) { - /* Multi-byte characters are a bit complicated to - * handle: They differ when any of the bytes - * differ and then their length may also differ. */ - if (sp->ts_tcharlen == 0) - { - /* First byte. */ - sp->ts_tcharidx = 0; - sp->ts_tcharlen = MB_BYTE2LEN(c); - sp->ts_fcharstart = sp->ts_fidx - 1; - sp->ts_isdiff = (newscore != 0) + /* First byte. */ + sp->ts_tcharidx = 0; + sp->ts_tcharlen = MB_BYTE2LEN(c); + sp->ts_fcharstart = sp->ts_fidx - 1; + sp->ts_isdiff = (newscore != 0) ? DIFF_YES : DIFF_NONE; - } - else if (sp->ts_isdiff == DIFF_INSERT) - /* When inserting trail bytes don't advance in - * the bad word. */ - --sp->ts_fidx; - if (++sp->ts_tcharidx == sp->ts_tcharlen) + } + else if (sp->ts_isdiff == DIFF_INSERT) + /* When inserting trail bytes don't advance in the + * bad word. */ + --sp->ts_fidx; + if (++sp->ts_tcharidx == sp->ts_tcharlen) + { + /* Last byte of character. */ + if (sp->ts_isdiff == DIFF_YES) { - /* Last byte of character. */ - if (sp->ts_isdiff == DIFF_YES) - { - /* Correct ts_fidx for the byte length of - * the character (we didn't check that - * before). */ - sp->ts_fidx = sp->ts_fcharstart - + MB_BYTE2LEN( + /* Correct ts_fidx for the byte length of the + * character (we didn't check that before). */ + sp->ts_fidx = sp->ts_fcharstart + + MB_BYTE2LEN( fword[sp->ts_fcharstart]); - /* For changing a composing character - * adjust the score from SCORE_SUBST to - * SCORE_SUBCOMP. */ - if (enc_utf8 - && utf_iscomposing( - mb_ptr2char(tword - + sp->ts_twordlen + /* For changing a composing character adjust + * the score from SCORE_SUBST to + * SCORE_SUBCOMP. */ + if (enc_utf8 + && utf_iscomposing( + mb_ptr2char(tword + + sp->ts_twordlen - sp->ts_tcharlen)) - && utf_iscomposing( - mb_ptr2char(fword + && utf_iscomposing( + mb_ptr2char(fword + sp->ts_fcharstart))) - sp->ts_score -= + sp->ts_score -= SCORE_SUBST - SCORE_SUBCOMP; - /* For a similar character adjust score - * from SCORE_SUBST to SCORE_SIMILAR. */ - else if (slang->sl_has_map - && similar_chars(slang, - mb_ptr2char(tword - + sp->ts_twordlen + /* For a similar character adjust score from + * SCORE_SUBST to SCORE_SIMILAR. */ + else if (!soundfold + && slang->sl_has_map + && similar_chars(slang, + mb_ptr2char(tword + + sp->ts_twordlen - sp->ts_tcharlen), - mb_ptr2char(fword + mb_ptr2char(fword + sp->ts_fcharstart))) - sp->ts_score -= + sp->ts_score -= SCORE_SUBST - SCORE_SIMILAR; + } + else if (sp->ts_isdiff == DIFF_INSERT + && sp->ts_twordlen > sp->ts_tcharlen) + { + p = tword + sp->ts_twordlen - sp->ts_tcharlen; + c = mb_ptr2char(p); + if (enc_utf8 && utf_iscomposing(c)) + { + /* Inserting a composing char doesn't + * count that much. */ + sp->ts_score -= SCORE_INS - SCORE_INSCOMP; } - else if (sp->ts_isdiff == DIFF_INSERT - && sp->ts_twordlen > sp->ts_tcharlen) + else { - p = tword + sp->ts_twordlen - - sp->ts_tcharlen; - c = mb_ptr2char(p); - if (enc_utf8 && utf_iscomposing(c)) - { - /* Inserting a composing char doesn't - * count that much. */ + /* If the previous character was the same, + * thus doubling a character, give a bonus + * to the score. Also for the soundfold + * tree (might seem illogical but does + * give better scores). */ + mb_ptr_back(tword, p); + if (c == mb_ptr2char(p)) sp->ts_score -= SCORE_INS - - SCORE_INSCOMP; - } - else - { - /* If the previous character was the - * same, thus doubling a character, - * give a bonus to the score. */ - mb_ptr_back(tword, p); - if (c == mb_ptr2char(p)) - sp->ts_score -= SCORE_INS - SCORE_INSDUP; - } } - - /* Starting a new char, reset the length. */ - sp->ts_tcharlen = 0; } + + /* Starting a new char, reset the length. */ + sp->ts_tcharlen = 0; } - else + } + else #endif - { - /* If we found a similar char adjust the score. - * We do this after calling try_deeper() because - * it's slow. */ - if (newscore != 0 - && slang->sl_has_map - && similar_chars(slang, + { + /* If we found a similar char adjust the score. + * We do this after calling go_deeper() because + * it's slow. */ + if (newscore != 0 + && !soundfold + && slang->sl_has_map + && similar_chars(slang, c, fword[sp->ts_fidx - 1])) - sp->ts_score -= SCORE_SUBST - SCORE_SIMILAR; - } + sp->ts_score -= SCORE_SUBST - SCORE_SIMILAR; } } - break; - - case STATE_DEL: -#ifdef FEAT_MBYTE - /* When past the first byte of a multi-byte char don't try - * delete/insert/swap a character. */ - if (has_mbyte && sp->ts_tcharlen > 0) - { - sp->ts_state = STATE_FINAL; - break; - } -#endif - /* - * Try skipping one character in the bad word (delete it). - */ - sp->ts_state = STATE_INS; - sp->ts_curi = 1; - if (fword[sp->ts_fidx] != NUL - && try_deeper(su, stack, depth, SCORE_DEL)) - { - ++depth; + } + break; - /* Advance over the character in fword[]. Give a bonus to - * the score if the same character is following "nn" -> - * "n". */ + case STATE_DEL: #ifdef FEAT_MBYTE - if (has_mbyte) - { - c = mb_ptr2char(fword + sp->ts_fidx); - stack[depth].ts_fidx += MB_BYTE2LEN(fword[sp->ts_fidx]); - if (enc_utf8 && utf_iscomposing(c)) - stack[depth].ts_score -= SCORE_DEL - SCORE_DELCOMP; - else if (c == mb_ptr2char(fword + stack[depth].ts_fidx)) - stack[depth].ts_score -= SCORE_DEL - SCORE_DELDUP; - } - else + /* When past the first byte of a multi-byte char don't try + * delete/insert/swap a character. */ + if (has_mbyte && sp->ts_tcharlen > 0) + { + sp->ts_state = STATE_FINAL; + break; + } #endif - { - ++stack[depth].ts_fidx; - if (fword[sp->ts_fidx] == fword[sp->ts_fidx + 1]) - stack[depth].ts_score -= SCORE_DEL - SCORE_DELDUP; - } - break; - } - /*FALLTHROUGH*/ + /* + * Try skipping one character in the bad word (delete it). + */ + sp->ts_state = STATE_INS_PREP; + sp->ts_curi = 1; + if (soundfold && sp->ts_fidx == 0 && fword[sp->ts_fidx] == '*') + /* Deleting a vowel at the start of a word counts less, see + * soundalike_score(). */ + newscore = 2 * SCORE_DEL / 3; + else + newscore = SCORE_DEL; + if (fword[sp->ts_fidx] != NUL + && TRY_DEEPER(su, stack, depth, newscore)) + { + go_deeper(stack, depth, newscore); +#ifdef DEBUG_TRIEWALK + sprintf(changename[depth], "%.*s-%s: delete %c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + fword[sp->ts_fidx]); +#endif + ++depth; - case STATE_INS: - /* Insert one byte. Do this for each possible byte at this - * node. */ - n = sp->ts_arridx; - if (sp->ts_curi > byts[n]) + /* Remember what character we deleted, so that we can avoid + * inserting it again. */ + stack[depth].ts_flags |= TSF_DIDDEL; + stack[depth].ts_delidx = sp->ts_fidx; + + /* Advance over the character in fword[]. Give a bonus to the + * score if the same character is following "nn" -> "n". It's + * a bit illogical for soundfold tree but it does give better + * results. */ +#ifdef FEAT_MBYTE + if (has_mbyte) { - /* Done all bytes at this node, do next state. */ - sp->ts_state = STATE_SWAP; + c = mb_ptr2char(fword + sp->ts_fidx); + stack[depth].ts_fidx += MB_BYTE2LEN(fword[sp->ts_fidx]); + if (enc_utf8 && utf_iscomposing(c)) + stack[depth].ts_score -= SCORE_DEL - SCORE_DELCOMP; + else if (c == mb_ptr2char(fword + stack[depth].ts_fidx)) + stack[depth].ts_score -= SCORE_DEL - SCORE_DELDUP; } else - { - /* Do one more byte at this node. Skip NUL bytes. */ - n += sp->ts_curi++; - c = byts[n]; - if (c != 0 && try_deeper(su, stack, depth, SCORE_INS)) - { - ++depth; - sp = &stack[depth]; - tword[sp->ts_twordlen++] = c; - sp->ts_arridx = idxs[n]; -#ifdef FEAT_MBYTE - if (has_mbyte) - { - fl = MB_BYTE2LEN(c); - if (fl > 1) - { - /* There are following bytes for the same - * character. We must find all bytes before - * trying delete/insert/swap/etc. */ - sp->ts_tcharlen = fl; - sp->ts_tcharidx = 1; - sp->ts_isdiff = DIFF_INSERT; - } - } - else - fl = 1; - if (fl == 1) #endif - { - /* If the previous character was the same, thus - * doubling a character, give a bonus to the - * score. */ - if (sp->ts_twordlen >= 2 - && tword[sp->ts_twordlen - 2] == c) - sp->ts_score -= SCORE_INS - SCORE_INSDUP; - } - } + { + ++stack[depth].ts_fidx; + if (fword[sp->ts_fidx] == fword[sp->ts_fidx + 1]) + stack[depth].ts_score -= SCORE_DEL - SCORE_DELDUP; } break; + } + /*FALLTHROUGH*/ - case STATE_SWAP: - /* - * Swap two bytes in the bad word: "12" -> "21". - * We change "fword" here, it's changed back afterwards. - */ - p = fword + sp->ts_fidx; - c = *p; - if (c == NUL) + case STATE_INS_PREP: + if (sp->ts_flags & TSF_DIDDEL) + { + /* If we just deleted a byte then inserting won't make sense, + * a substitute is always cheaper. */ + sp->ts_state = STATE_SWAP; + break; + } + + /* skip over NUL bytes */ + n = sp->ts_arridx; + for (;;) + { + if (sp->ts_curi > byts[n]) { - /* End of word, can't swap or replace. */ - sp->ts_state = STATE_FINAL; + /* Only NUL bytes at this node, go to next state. */ + sp->ts_state = STATE_SWAP; break; } - - /* Don't swap if the first character is not a word character. - * SWAP3 etc. also don't make sense then. */ - if (!spell_iswordp(p, curbuf)) + if (byts[n + sp->ts_curi] != NUL) { - sp->ts_state = STATE_REP_INI; + /* Found a byte to insert. */ + sp->ts_state = STATE_INS; break; } + ++sp->ts_curi; + } + break; + + /*FALLTHROUGH*/ + + case STATE_INS: + /* Insert one byte. Repeat this for each possible byte at this + * node. */ + n = sp->ts_arridx; + if (sp->ts_curi > byts[n]) + { + /* Done all bytes at this node, go to next state. */ + sp->ts_state = STATE_SWAP; + break; + } + /* Do one more byte at this node, but: + * - Skip NUL bytes. + * - Skip the byte if it's equal to the byte in the word, + * accepting that byte is always better. + */ + n += sp->ts_curi++; + c = byts[n]; + if (soundfold && sp->ts_twordlen == 0 && c == '*') + /* Inserting a vowel at the start of a word counts less, + * see soundalike_score(). */ + newscore = 2 * SCORE_INS / 3; + else + newscore = SCORE_INS; + if (c != fword[sp->ts_fidx] + && TRY_DEEPER(su, stack, depth, newscore)) + { + go_deeper(stack, depth, newscore); +#ifdef DEBUG_TRIEWALK + sprintf(changename[depth], "%.*s-%s: insert %c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + c); +#endif + ++depth; + sp = &stack[depth]; + tword[sp->ts_twordlen++] = c; + sp->ts_arridx = idxs[n]; #ifdef FEAT_MBYTE if (has_mbyte) { - n = mb_cptr2len(p); - c = mb_ptr2char(p); - if (!spell_iswordp(p + n, curbuf)) - c2 = c; /* don't swap non-word char */ - else - c2 = mb_ptr2char(p + n); + fl = MB_BYTE2LEN(c); + if (fl > 1) + { + /* There are following bytes for the same character. + * We must find all bytes before trying + * delete/insert/swap/etc. */ + sp->ts_tcharlen = fl; + sp->ts_tcharidx = 1; + sp->ts_isdiff = DIFF_INSERT; + } } else + fl = 1; + if (fl == 1) #endif { - if (!spell_iswordp(p + 1, curbuf)) - c2 = c; /* don't swap non-word char */ - else - c2 = p[1]; + /* If the previous character was the same, thus doubling a + * character, give a bonus to the score. Also for + * soundfold words (illogical but does give a better + * score). */ + if (sp->ts_twordlen >= 2 + && tword[sp->ts_twordlen - 2] == c) + sp->ts_score -= SCORE_INS - SCORE_INSDUP; } + } + break; + + case STATE_SWAP: + /* + * Swap two bytes in the bad word: "12" -> "21". + * We change "fword" here, it's changed back afterwards at + * STATE_UNSWAP. + */ + p = fword + sp->ts_fidx; + c = *p; + if (c == NUL) + { + /* End of word, can't swap or replace. */ + sp->ts_state = STATE_FINAL; + break; + } + + /* Don't swap if the first character is not a word character. + * SWAP3 etc. also don't make sense then. */ + if (!soundfold && !spell_iswordp(p, curbuf)) + { + sp->ts_state = STATE_REP_INI; + break; + } - /* When characters are identical, swap won't do anything. - * Also get here if the second char is not a word character. */ - if (c == c2) - { - sp->ts_state = STATE_SWAP3; - break; - } - if (c2 != NUL && try_deeper(su, stack, depth, SCORE_SWAP)) - { - sp->ts_state = STATE_UNSWAP; - ++depth; #ifdef FEAT_MBYTE - if (has_mbyte) - { - fl = mb_char2len(c2); - mch_memmove(p, p + n, fl); - mb_char2bytes(c, p + fl); - stack[depth].ts_fidxtry = sp->ts_fidx + n + fl; - } - else + if (has_mbyte) + { + n = mb_cptr2len(p); + c = mb_ptr2char(p); + if (!soundfold && !spell_iswordp(p + n, curbuf)) + c2 = c; /* don't swap non-word char */ + else + c2 = mb_ptr2char(p + n); + } + else #endif - { - p[0] = c2; - p[1] = c; - stack[depth].ts_fidxtry = sp->ts_fidx + 2; - } - } + { + if (!soundfold && !spell_iswordp(p + 1, curbuf)) + c2 = c; /* don't swap non-word char */ else - /* If this swap doesn't work then SWAP3 won't either. */ - sp->ts_state = STATE_REP_INI; - break; + c2 = p[1]; + } - case STATE_UNSWAP: - /* Undo the STATE_SWAP swap: "21" -> "12". */ - p = fword + sp->ts_fidx; + /* When characters are identical, swap won't do anything. + * Also get here if the second char is not a word character. */ + if (c == c2) + { + sp->ts_state = STATE_SWAP3; + break; + } + if (c2 != NUL && TRY_DEEPER(su, stack, depth, SCORE_SWAP)) + { + go_deeper(stack, depth, SCORE_SWAP); +#ifdef DEBUG_TRIEWALK + sprintf(changename[depth], "%.*s-%s: swap %c and %c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + c, c2); +#endif + sp->ts_state = STATE_UNSWAP; + ++depth; #ifdef FEAT_MBYTE if (has_mbyte) { - n = MB_BYTE2LEN(*p); - c = mb_ptr2char(p + n); - mch_memmove(p + MB_BYTE2LEN(p[n]), p, n); - mb_char2bytes(c, p); + fl = mb_char2len(c2); + mch_memmove(p, p + n, fl); + mb_char2bytes(c, p + fl); + stack[depth].ts_fidxtry = sp->ts_fidx + n + fl; } else #endif { - c = *p; - *p = p[1]; + p[0] = c2; p[1] = c; + stack[depth].ts_fidxtry = sp->ts_fidx + 2; } - /*FALLTHROUGH*/ + } + else + /* If this swap doesn't work then SWAP3 won't either. */ + sp->ts_state = STATE_REP_INI; + break; - case STATE_SWAP3: - /* Swap two bytes, skipping one: "123" -> "321". We change - * "fword" here, it's changed back afterwards. */ - p = fword + sp->ts_fidx; + case STATE_UNSWAP: + /* Undo the STATE_SWAP swap: "21" -> "12". */ + p = fword + sp->ts_fidx; +#ifdef FEAT_MBYTE + if (has_mbyte) + { + n = MB_BYTE2LEN(*p); + c = mb_ptr2char(p + n); + mch_memmove(p + MB_BYTE2LEN(p[n]), p, n); + mb_char2bytes(c, p); + } + else +#endif + { + c = *p; + *p = p[1]; + p[1] = c; + } + /*FALLTHROUGH*/ + + case STATE_SWAP3: + /* Swap two bytes, skipping one: "123" -> "321". We change + * "fword" here, it's changed back afterwards at STATE_UNSWAP3. */ + p = fword + sp->ts_fidx; +#ifdef FEAT_MBYTE + if (has_mbyte) + { + n = mb_cptr2len(p); + c = mb_ptr2char(p); + fl = mb_cptr2len(p + n); + c2 = mb_ptr2char(p + n); + if (!soundfold && !spell_iswordp(p + n + fl, curbuf)) + c3 = c; /* don't swap non-word char */ + else + c3 = mb_ptr2char(p + n + fl); + } + else +#endif + { + c = *p; + c2 = p[1]; + if (!soundfold && !spell_iswordp(p + 2, curbuf)) + c3 = c; /* don't swap non-word char */ + else + c3 = p[2]; + } + + /* When characters are identical: "121" then SWAP3 result is + * identical, ROT3L result is same as SWAP: "211", ROT3L result is + * same as SWAP on next char: "112". Thus skip all swapping. + * Also skip when c3 is NUL. + * Also get here when the third character is not a word character. + * Second character may any char: "a.b" -> "b.a" */ + if (c == c3 || c3 == NUL) + { + sp->ts_state = STATE_REP_INI; + break; + } + if (TRY_DEEPER(su, stack, depth, SCORE_SWAP3)) + { + go_deeper(stack, depth, SCORE_SWAP3); +#ifdef DEBUG_TRIEWALK + sprintf(changename[depth], "%.*s-%s: swap3 %c and %c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + c, c3); +#endif + sp->ts_state = STATE_UNSWAP3; + ++depth; #ifdef FEAT_MBYTE if (has_mbyte) { - n = mb_cptr2len(p); - c = mb_ptr2char(p); - fl = mb_cptr2len(p + n); - c2 = mb_ptr2char(p + n); - if (!spell_iswordp(p + n + fl, curbuf)) - c3 = c; /* don't swap non-word char */ - else - c3 = mb_ptr2char(p + n + fl); + tl = mb_char2len(c3); + mch_memmove(p, p + n + fl, tl); + mb_char2bytes(c2, p + tl); + mb_char2bytes(c, p + fl + tl); + stack[depth].ts_fidxtry = sp->ts_fidx + n + fl + tl; } else #endif { - c = *p; - c2 = p[1]; - if (!spell_iswordp(p + 2, curbuf)) - c3 = c; /* don't swap non-word char */ - else - c3 = p[2]; + p[0] = p[2]; + p[2] = c; + stack[depth].ts_fidxtry = sp->ts_fidx + 3; } + } + else + sp->ts_state = STATE_REP_INI; + break; - /* When characters are identical: "121" then SWAP3 result is - * identical, ROT3L result is same as SWAP: "211", ROT3L - * result is same as SWAP on next char: "112". Thus skip all - * swapping. Also skip when c3 is NUL. - * Also get here when the third character is not a word - * character. Second character may any char: "a.b" -> "b.a" */ - if (c == c3 || c3 == NUL) - { - sp->ts_state = STATE_REP_INI; - break; - } - if (try_deeper(su, stack, depth, SCORE_SWAP3)) - { - sp->ts_state = STATE_UNSWAP3; - ++depth; + case STATE_UNSWAP3: + /* Undo STATE_SWAP3: "321" -> "123" */ + p = fword + sp->ts_fidx; #ifdef FEAT_MBYTE - if (has_mbyte) - { - tl = mb_char2len(c3); - mch_memmove(p, p + n + fl, tl); - mb_char2bytes(c2, p + tl); - mb_char2bytes(c, p + fl + tl); - stack[depth].ts_fidxtry = sp->ts_fidx + n + fl + tl; - } - else + if (has_mbyte) + { + n = MB_BYTE2LEN(*p); + c2 = mb_ptr2char(p + n); + fl = MB_BYTE2LEN(p[n]); + c = mb_ptr2char(p + n + fl); + tl = MB_BYTE2LEN(p[n + fl]); + mch_memmove(p + fl + tl, p, n); + mb_char2bytes(c, p); + mb_char2bytes(c2, p + tl); + p = p + tl; + } + else #endif - { - p[0] = p[2]; - p[2] = c; - stack[depth].ts_fidxtry = sp->ts_fidx + 3; - } - } - else - sp->ts_state = STATE_REP_INI; + { + c = *p; + *p = p[2]; + p[2] = c; + ++p; + } + + if (!soundfold && !spell_iswordp(p, curbuf)) + { + /* Middle char is not a word char, skip the rotate. First and + * third char were already checked at swap and swap3. */ + sp->ts_state = STATE_REP_INI; break; + } - case STATE_UNSWAP3: - /* Undo STATE_SWAP3: "321" -> "123" */ + /* Rotate three characters left: "123" -> "231". We change + * "fword" here, it's changed back afterwards at STATE_UNROT3L. */ + if (TRY_DEEPER(su, stack, depth, SCORE_SWAP3)) + { + go_deeper(stack, depth, SCORE_SWAP3); +#ifdef DEBUG_TRIEWALK + p = fword + sp->ts_fidx; + sprintf(changename[depth], "%.*s-%s: rotate left %c%c%c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + p[0], p[1], p[2]); +#endif + sp->ts_state = STATE_UNROT3L; + ++depth; p = fword + sp->ts_fidx; #ifdef FEAT_MBYTE if (has_mbyte) { - n = MB_BYTE2LEN(*p); - c2 = mb_ptr2char(p + n); - fl = MB_BYTE2LEN(p[n]); - c = mb_ptr2char(p + n + fl); - tl = MB_BYTE2LEN(p[n + fl]); - mch_memmove(p + fl + tl, p, n); - mb_char2bytes(c, p); - mb_char2bytes(c2, p + tl); - p = p + tl; + n = mb_cptr2len(p); + c = mb_ptr2char(p); + fl = mb_cptr2len(p + n); + fl += mb_cptr2len(p + n + fl); + mch_memmove(p, p + n, fl); + mb_char2bytes(c, p + fl); + stack[depth].ts_fidxtry = sp->ts_fidx + n + fl; } else #endif { c = *p; - *p = p[2]; + *p = p[1]; + p[1] = p[2]; p[2] = c; - ++p; - } - - if (!spell_iswordp(p, curbuf)) - { - /* Middle char is not a word char, skip the rotate. - * First and third char were already checked at swap - * and swap3. */ - sp->ts_state = STATE_REP_INI; - break; + stack[depth].ts_fidxtry = sp->ts_fidx + 3; } + } + else + sp->ts_state = STATE_REP_INI; + break; - /* Rotate three characters left: "123" -> "231". We change - * "fword" here, it's changed back afterwards. */ - if (try_deeper(su, stack, depth, SCORE_SWAP3)) - { - sp->ts_state = STATE_UNROT3L; - ++depth; - p = fword + sp->ts_fidx; + case STATE_UNROT3L: + /* Undo ROT3L: "231" -> "123" */ + p = fword + sp->ts_fidx; #ifdef FEAT_MBYTE - if (has_mbyte) - { - n = mb_cptr2len(p); - c = mb_ptr2char(p); - fl = mb_cptr2len(p + n); - fl += mb_cptr2len(p + n + fl); - mch_memmove(p, p + n, fl); - mb_char2bytes(c, p + fl); - stack[depth].ts_fidxtry = sp->ts_fidx + n + fl; - } - else + if (has_mbyte) + { + n = MB_BYTE2LEN(*p); + n += MB_BYTE2LEN(p[n]); + c = mb_ptr2char(p + n); + tl = MB_BYTE2LEN(p[n]); + mch_memmove(p + tl, p, n); + mb_char2bytes(c, p); + } + else #endif - { - c = *p; - *p = p[1]; - p[1] = p[2]; - p[2] = c; - stack[depth].ts_fidxtry = sp->ts_fidx + 3; - } - } - else - sp->ts_state = STATE_REP_INI; - break; + { + c = p[2]; + p[2] = p[1]; + p[1] = *p; + *p = c; + } - case STATE_UNROT3L: - /* Undo ROT3L: "231" -> "123" */ + /* Rotate three bytes right: "123" -> "312". We change "fword" + * here, it's changed back afterwards at STATE_UNROT3R. */ + if (TRY_DEEPER(su, stack, depth, SCORE_SWAP3)) + { + go_deeper(stack, depth, SCORE_SWAP3); +#ifdef DEBUG_TRIEWALK + p = fword + sp->ts_fidx; + sprintf(changename[depth], "%.*s-%s: rotate right %c%c%c", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + p[0], p[1], p[2]); +#endif + sp->ts_state = STATE_UNROT3R; + ++depth; p = fword + sp->ts_fidx; #ifdef FEAT_MBYTE if (has_mbyte) { - n = MB_BYTE2LEN(*p); - n += MB_BYTE2LEN(p[n]); + n = mb_cptr2len(p); + n += mb_cptr2len(p + n); c = mb_ptr2char(p + n); - tl = MB_BYTE2LEN(p[n]); + tl = mb_cptr2len(p + n); mch_memmove(p + tl, p, n); mb_char2bytes(c, p); + stack[depth].ts_fidxtry = sp->ts_fidx + n + tl; } else #endif @@ -10299,193 +11736,176 @@ suggest_try_change(su) p[2] = p[1]; p[1] = *p; *p = c; + stack[depth].ts_fidxtry = sp->ts_fidx + 3; } + } + else + sp->ts_state = STATE_REP_INI; + break; - /* Rotate three bytes right: "123" -> "312". We change - * "fword" here, it's changed back afterwards. */ - if (try_deeper(su, stack, depth, SCORE_SWAP3)) - { - sp->ts_state = STATE_UNROT3R; - ++depth; - p = fword + sp->ts_fidx; -#ifdef FEAT_MBYTE - if (has_mbyte) - { - n = mb_cptr2len(p); - n += mb_cptr2len(p + n); - c = mb_ptr2char(p + n); - tl = mb_cptr2len(p + n); - mch_memmove(p + tl, p, n); - mb_char2bytes(c, p); - stack[depth].ts_fidxtry = sp->ts_fidx + n + tl; - } - else -#endif - { - c = p[2]; - p[2] = p[1]; - p[1] = *p; - *p = c; - stack[depth].ts_fidxtry = sp->ts_fidx + 3; - } - } - else - sp->ts_state = STATE_REP_INI; - break; - - case STATE_UNROT3R: - /* Undo ROT3R: "312" -> "123" */ - p = fword + sp->ts_fidx; + case STATE_UNROT3R: + /* Undo ROT3R: "312" -> "123" */ + p = fword + sp->ts_fidx; #ifdef FEAT_MBYTE - if (has_mbyte) - { - c = mb_ptr2char(p); - tl = MB_BYTE2LEN(*p); - n = MB_BYTE2LEN(p[tl]); - n += MB_BYTE2LEN(p[tl + n]); - mch_memmove(p, p + tl, n); - mb_char2bytes(c, p + n); - } - else -#endif - { - c = *p; - *p = p[1]; - p[1] = p[2]; - p[2] = c; - } - /*FALLTHROUGH*/ - - case STATE_REP_INI: - /* Check if matching with REP items from the .aff file would - * work. Quickly skip if: - * - there are no REP items - * - the score is going to be too high anyway - * - already applied a REP item or swapped here */ - if (lp->lp_replang == NULL - || sp->ts_score + SCORE_REP >= su->su_maxscore - || sp->ts_fidx < sp->ts_fidxtry) - { - sp->ts_state = STATE_FINAL; - break; - } - gap = &lp->lp_replang->sl_rep; + if (has_mbyte) + { + c = mb_ptr2char(p); + tl = MB_BYTE2LEN(*p); + n = MB_BYTE2LEN(p[tl]); + n += MB_BYTE2LEN(p[tl + n]); + mch_memmove(p, p + tl, n); + mb_char2bytes(c, p + n); + } + else +#endif + { + c = *p; + *p = p[1]; + p[1] = p[2]; + p[2] = c; + } + /*FALLTHROUGH*/ + + case STATE_REP_INI: + /* Check if matching with REP items from the .aff file would work. + * Quickly skip if: + * - there are no REP items and we are not in the soundfold trie + * - the score is going to be too high anyway + * - already applied a REP item or swapped here */ + if ((lp->lp_replang == NULL && !soundfold) + || sp->ts_score + SCORE_REP >= su->su_maxscore + || sp->ts_fidx < sp->ts_fidxtry) + { + sp->ts_state = STATE_FINAL; + break; + } - /* Use the first byte to quickly find the first entry that - * may match. If the index is -1 there is none. */ + /* Use the first byte to quickly find the first entry that may + * match. If the index is -1 there is none. */ + if (soundfold) + sp->ts_curi = slang->sl_repsal_first[fword[sp->ts_fidx]]; + else sp->ts_curi = lp->lp_replang->sl_rep_first[fword[sp->ts_fidx]]; - if (sp->ts_curi < 0) - { - sp->ts_state = STATE_FINAL; - break; - } - sp->ts_state = STATE_REP; - /*FALLTHROUGH*/ + if (sp->ts_curi < 0) + { + sp->ts_state = STATE_FINAL; + break; + } + + sp->ts_state = STATE_REP; + /*FALLTHROUGH*/ - case STATE_REP: - /* Try matching with REP items from the .aff file. For each - * match replace the characters and check if the resulting - * word is valid. */ - p = fword + sp->ts_fidx; + case STATE_REP: + /* Try matching with REP items from the .aff file. For each match + * replace the characters and check if the resulting word is + * valid. */ + p = fword + sp->ts_fidx; + if (soundfold) + gap = &slang->sl_repsal; + else gap = &lp->lp_replang->sl_rep; - while (sp->ts_curi < gap->ga_len) + while (sp->ts_curi < gap->ga_len) + { + ftp = (fromto_T *)gap->ga_data + sp->ts_curi++; + if (*ftp->ft_from != *p) + { + /* past possible matching entries */ + sp->ts_curi = gap->ga_len; + break; + } + if (STRNCMP(ftp->ft_from, p, STRLEN(ftp->ft_from)) == 0 + && TRY_DEEPER(su, stack, depth, SCORE_REP)) { - ftp = (fromto_T *)gap->ga_data + sp->ts_curi++; - if (*ftp->ft_from != *p) + go_deeper(stack, depth, SCORE_REP); +#ifdef DEBUG_TRIEWALK + sprintf(changename[depth], "%.*s-%s: replace %s with %s", + sp->ts_twordlen, tword, fword + sp->ts_fidx, + ftp->ft_from, ftp->ft_to); +#endif + /* Need to undo this afterwards. */ + sp->ts_state = STATE_REP_UNDO; + + /* Change the "from" to the "to" string. */ + ++depth; + fl = STRLEN(ftp->ft_from); + tl = STRLEN(ftp->ft_to); + if (fl != tl) { - /* past possible matching entries */ - sp->ts_curi = gap->ga_len; - break; + mch_memmove(p + tl, p + fl, STRLEN(p + fl) + 1); + repextra += tl - fl; } - if (STRNCMP(ftp->ft_from, p, STRLEN(ftp->ft_from)) == 0 - && try_deeper(su, stack, depth, SCORE_REP)) - { - /* Need to undo this afterwards. */ - sp->ts_state = STATE_REP_UNDO; - - /* Change the "from" to the "to" string. */ - ++depth; - fl = STRLEN(ftp->ft_from); - tl = STRLEN(ftp->ft_to); - if (fl != tl) - { - mch_memmove(p + tl, p + fl, STRLEN(p + fl) + 1); - repextra += tl - fl; - } - mch_memmove(p, ftp->ft_to, tl); - stack[depth].ts_fidxtry = sp->ts_fidx + tl; + mch_memmove(p, ftp->ft_to, tl); + stack[depth].ts_fidxtry = sp->ts_fidx + tl; #ifdef FEAT_MBYTE - stack[depth].ts_tcharlen = 0; + stack[depth].ts_tcharlen = 0; #endif - break; - } + break; } + } - if (sp->ts_curi >= gap->ga_len && sp->ts_state == STATE_REP) - /* No (more) matches. */ - sp->ts_state = STATE_FINAL; + if (sp->ts_curi >= gap->ga_len && sp->ts_state == STATE_REP) + /* No (more) matches. */ + sp->ts_state = STATE_FINAL; - break; + break; - case STATE_REP_UNDO: - /* Undo a REP replacement and continue with the next one. */ - ftp = (fromto_T *)lp->lp_replang->sl_rep.ga_data - + sp->ts_curi - 1; - fl = STRLEN(ftp->ft_from); - tl = STRLEN(ftp->ft_to); - p = fword + sp->ts_fidx; - if (fl != tl) - { - mch_memmove(p + fl, p + tl, STRLEN(p + tl) + 1); - repextra -= tl - fl; - } - mch_memmove(p, ftp->ft_from, fl); - sp->ts_state = STATE_REP; - break; + case STATE_REP_UNDO: + /* Undo a REP replacement and continue with the next one. */ + if (soundfold) + gap = &slang->sl_repsal; + else + gap = &lp->lp_replang->sl_rep; + ftp = (fromto_T *)gap->ga_data + sp->ts_curi - 1; + fl = STRLEN(ftp->ft_from); + tl = STRLEN(ftp->ft_to); + p = fword + sp->ts_fidx; + if (fl != tl) + { + mch_memmove(p + fl, p + tl, STRLEN(p + tl) + 1); + repextra -= tl - fl; + } + mch_memmove(p, ftp->ft_from, fl); + sp->ts_state = STATE_REP; + break; - default: - /* Did all possible states at this level, go up one level. */ - --depth; + default: + /* Did all possible states at this level, go up one level. */ + --depth; - if (depth >= 0 && stack[depth].ts_prefixdepth == PFD_PREFIXTREE) - { - /* Continue in or go back to the prefix tree. */ - byts = pbyts; - idxs = pidxs; - } + if (depth >= 0 && stack[depth].ts_prefixdepth == PFD_PREFIXTREE) + { + /* Continue in or go back to the prefix tree. */ + byts = pbyts; + idxs = pidxs; + } - /* Don't check for CTRL-C too often, it takes time. */ - line_breakcheck(); + /* Don't check for CTRL-C too often, it takes time. */ + if (--breakcheckcount == 0) + { + ui_breakcheck(); + breakcheckcount = 1000; } } } } + /* - * Try going one level deeper in the tree. + * Go one level deeper in the tree. */ - static int -try_deeper(su, stack, depth, score_add) - suginfo_T *su; + static void +go_deeper(stack, depth, score_add) trystate_T *stack; int depth; int score_add; { - int newscore; - - /* Refuse to go deeper if the scrore is getting too big. */ - newscore = stack[depth].ts_score + score_add; - if (newscore >= su->su_maxscore) - return FALSE; - stack[depth + 1] = stack[depth]; stack[depth + 1].ts_state = STATE_START; - stack[depth + 1].ts_score = newscore; + stack[depth + 1].ts_score = stack[depth].ts_score + score_add; stack[depth + 1].ts_curi = 1; /* start just after length byte */ stack[depth + 1].ts_flags = 0; - return TRUE; } #ifdef FEAT_MBYTE @@ -10713,6 +12133,7 @@ score_comp_sal(su) sstp->st_word = vim_strsave(stp->st_word); if (sstp->st_word != NULL) { + sstp->st_wordlen = stp->st_wordlen; sstp->st_score = score; sstp->st_altscore = 0; sstp->st_orglen = stp->st_orglen; @@ -10743,6 +12164,7 @@ score_combine(su) char_u badsound[MAXWLEN]; int round; int lpi; + slang_T *slang = NULL; /* Add the alternate score to su_ga. */ for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) @@ -10751,13 +12173,13 @@ score_combine(su) if (lp->lp_slang->sl_sal.ga_len > 0) { /* soundfold the bad word */ - spell_soundfold(lp->lp_slang, su->su_fbadword, TRUE, badsound); + slang = lp->lp_slang; + spell_soundfold(slang, su->su_fbadword, TRUE, badsound); for (i = 0; i < su->su_ga.ga_len; ++i) { stp = &SUG(su->su_ga, i); - stp->st_altscore = stp_sal_score(stp, su, lp->lp_slang, - badsound); + stp->st_altscore = stp_sal_score(stp, su, slang, badsound); if (stp->st_altscore == SCORE_MAXMAX) stp->st_score = (stp->st_score * 3 + SCORE_BIG) / 4; else @@ -10769,11 +12191,15 @@ score_combine(su) } } + if (slang == NULL) /* just in case */ + return; + /* Add the alternate score to su_sga. */ for (i = 0; i < su->su_sga.ga_len; ++i) { stp = &SUG(su->su_sga, i); - stp->st_altscore = spell_edit_score(su->su_badword, stp->st_word); + stp->st_altscore = spell_edit_score(slang, + su->su_badword, stp->st_word); if (stp->st_score == SCORE_MAXMAX) stp->st_score = (SCORE_BIG * 7 + stp->st_altscore) / 8; else @@ -10781,8 +12207,11 @@ score_combine(su) stp->st_salscore = TRUE; } - /* Sort the suggestions and truncate at "maxcount" for both lists. */ + /* Remove bad suggestions, sort the suggestions and truncate at "maxcount" + * for both lists. */ + check_suggestions(su, &su->su_ga); (void)cleanup_suggestions(&su->su_ga, su->su_maxscore, su->su_maxcount); + check_suggestions(su, &su->su_sga); (void)cleanup_suggestions(&su->su_sga, su->su_maxscore, su->su_maxcount); ga_init2(&ga, (int)sizeof(suginfo_T), 1); @@ -10872,7 +12301,8 @@ stp_sal_score(stp, su, slang, badsound) /* Add part of the bad word to the good word, so that we soundfold * what replaces the bad word. */ STRCPY(goodword, stp->st_word); - STRNCAT(goodword, su->su_badptr + su->su_badlen - lendiff, lendiff); + vim_strncpy(goodword + stp->st_wordlen, + su->su_badptr + su->su_badlen - lendiff, lendiff); pgood = goodword; } else @@ -10884,6 +12314,40 @@ stp_sal_score(stp, su, slang, badsound) return soundalike_score(goodsound, pbad); } +/* structure used to store soundfolded words that add_sound_suggest() has + * handled already. */ +typedef struct +{ + short sft_score; /* lowest score used */ + char_u sft_word[1]; /* soundfolded word, actually longer */ +} sftword_T; + +static sftword_T dumsft; +#define HIKEY2SFT(p) ((sftword_T *)(p - (dumsft.sft_word - (char_u *)&dumsft))) +#define HI2SFT(hi) HIKEY2SFT((hi)->hi_key) + +/* + * Prepare for calling suggest_try_soundalike(). + */ + static void +suggest_try_soundalike_prep() +{ + langp_T *lp; + int lpi; + slang_T *slang; + + /* Do this for all languages that support sound folding and for which a + * .sug file has been loaded. */ + for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) + { + lp = LANGP_ENTRY(curbuf->b_langp, lpi); + slang = lp->lp_slang; + if (slang->sl_sal.ga_len > 0 && slang->sl_sbyts != NULL) + /* prepare the hashtable used by add_sound_suggest() */ + hash_init(&slang->sl_sounddone); + } +} + /* * Find suggestions by comparing the word in a sound-a-like form. * Note: This doesn't support postponed prefixes. @@ -10893,161 +12357,340 @@ suggest_try_soundalike(su) suginfo_T *su; { char_u salword[MAXWLEN]; - char_u tword[MAXWLEN]; - char_u tsalword[MAXWLEN]; - idx_T arridx[MAXWLEN]; - int curi[MAXWLEN]; langp_T *lp; - char_u *byts; - idx_T *idxs; - int depth; - int c; - idx_T n; - int round; - int flags; - int sound_score; - int local_score; int lpi; slang_T *slang; - /* Do this for all languages that support sound folding. */ + /* Do this for all languages that support sound folding and for which a + * .sug file has been loaded. */ for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) { lp = LANGP_ENTRY(curbuf->b_langp, lpi); slang = lp->lp_slang; - if (slang->sl_sal.ga_len > 0) + if (slang->sl_sal.ga_len > 0 && slang->sl_sbyts != NULL) { /* soundfold the bad word */ spell_soundfold(slang, su->su_fbadword, TRUE, salword); - /* - * Go through the whole tree, soundfold each word and compare. - * round 1: use the case-folded tree. - * round 2: use the keep-case tree. - */ - for (round = 1; round <= 2; ++round) + /* try all kinds of inserts/deletes/swaps/etc. */ + /* TODO: also soundfold the next words, so that we can try joining + * and splitting */ + suggest_trie_walk(su, lp, salword, TRUE); + } + } +} + +/* + * Finish up after calling suggest_try_soundalike(). + */ + static void +suggest_try_soundalike_finish() +{ + langp_T *lp; + int lpi; + slang_T *slang; + int todo; + hashitem_T *hi; + + /* Do this for all languages that support sound folding and for which a + * .sug file has been loaded. */ + for (lpi = 0; lpi < curbuf->b_langp.ga_len; ++lpi) + { + lp = LANGP_ENTRY(curbuf->b_langp, lpi); + slang = lp->lp_slang; + if (slang->sl_sal.ga_len > 0 && slang->sl_sbyts != NULL) + { + /* Free the info about handled words. */ + todo = slang->sl_sounddone.ht_used; + for (hi = slang->sl_sounddone.ht_array; todo > 0; ++hi) + if (!HASHITEM_EMPTY(hi)) + { + vim_free(HI2SFT(hi)); + --todo; + } + hash_clear(&slang->sl_sounddone); + } + } +} + +/* + * A match with a soundfolded word is found. Add the good word(s) that + * produce this soundfolded word. + */ + static void +add_sound_suggest(su, goodword, score, lp) + suginfo_T *su; + char_u *goodword; + int score; /* soundfold score */ + langp_T *lp; +{ + slang_T *slang = lp->lp_slang; /* language for sound folding */ + int sfwordnr; + char_u *nrline; + int orgnr; + char_u theword[MAXWLEN]; + int i; + int wlen; + char_u *byts; + idx_T *idxs; + int n; + int wordcount; + int wc; + int goodscore; + hash_T hash; + hashitem_T *hi; + sftword_T *sft; + int bc, gc; + int limit; + + /* + * It's very well possible that the same soundfold word is found several + * times with different scores. Since the following is quite slow only do + * the words that have a better score than before. Use a hashtable to + * remember the words that have been done. + */ + hash = hash_hash(goodword); + hi = hash_lookup(&slang->sl_sounddone, goodword, hash); + if (HASHITEM_EMPTY(hi)) + { + sft = (sftword_T *)alloc(sizeof(sftword_T) + STRLEN(goodword)); + if (sft != NULL) + { + sft->sft_score = score; + STRCPY(sft->sft_word, goodword); + hash_add_item(&slang->sl_sounddone, hi, sft->sft_word, hash); + } + } + else + { + sft = HI2SFT(hi); + if (score >= sft->sft_score) + return; + sft->sft_score = score; + } + + /* + * Find the word nr in the soundfold tree. + */ + sfwordnr = soundfold_find(slang, goodword); + if (sfwordnr < 0) + { + EMSG2(_(e_intern2), "add_sound_suggest()"); + return; + } + + /* + * go over the list of good words that produce this soundfold word + */ + nrline = ml_get_buf(slang->sl_sugbuf, (linenr_T)(sfwordnr + 1), FALSE); + orgnr = 0; + while (*nrline != NUL) + { + /* The wordnr was stored in a minimal nr of bytes as an offset to the + * previous wordnr. */ + orgnr += bytes2offset(&nrline); + + byts = slang->sl_fbyts; + idxs = slang->sl_fidxs; + + /* Lookup the word "orgnr" one of the two tries. */ + n = 0; + wlen = 0; + wordcount = 0; + for (;;) + { + i = 1; + if (wordcount == orgnr && byts[n + 1] == NUL) + break; /* found end of word */ + + if (byts[n + 1] == NUL) + ++wordcount; + + /* skip over the NUL bytes */ + for ( ; byts[n + i] == NUL; ++i) + if (i > byts[n]) /* safety check */ + { + STRCPY(theword + wlen, "BAD"); + goto badword; + } + + /* One of the siblings must have the word. */ + for ( ; i < byts[n]; ++i) + { + wc = idxs[idxs[n + i]]; /* nr of words under this byte */ + if (wordcount + wc > orgnr) + break; + wordcount += wc; + } + + theword[wlen++] = byts[n + i]; + n = idxs[n + i]; + } +badword: + theword[wlen] = NUL; + + /* Go over the possible flags and regions. */ + for (; i <= byts[n] && byts[n + i] == NUL; ++i) + { + char_u cword[MAXWLEN]; + char_u *p; + int flags = (int)idxs[n + i]; + + if (flags & WF_KEEPCAP) + { + /* Must find the word in the keep-case tree. */ + find_keepcap_word(slang, theword, cword); + p = cword; + } + else { - if (round == 1) + flags |= su->su_badflags; + if ((flags & WF_CAPMASK) != 0) { - byts = slang->sl_fbyts; - idxs = slang->sl_fidxs; + /* Need to fix case according to "flags". */ + make_case_word(theword, cword, flags); + p = cword; } else + p = theword; + } + + /* Add the suggestion. */ + if (sps_flags & SPS_DOUBLE) + { + /* Add the suggestion if the score isn't too bad. */ + if (score <= su->su_maxscore) + add_suggestion(su, &su->su_sga, p, su->su_badlen, + score, 0, FALSE, slang, FALSE); + } + else + { + /* Add a penalty for words in another region. */ + if ((flags & WF_REGION) + && (((unsigned)flags >> 16) & lp->lp_region) == 0) + goodscore = SCORE_REGION; + else + goodscore = 0; + + /* Add a small penalty for changing the first letter from + * lower to upper case. Helps for "tath" -> "Kath", which is + * less common thatn "tath" -> "path". Don't do it when the + * letter is the same, that has already been counted. */ + gc = PTR2CHAR(p); + if (SPELL_ISUPPER(gc)) { - byts = slang->sl_kbyts; - idxs = slang->sl_kidxs; - if (byts == NULL) /* no keep-case words */ - continue; + bc = PTR2CHAR(su->su_badword); + if (!SPELL_ISUPPER(bc) + && SPELL_TOFOLD(bc) != SPELL_TOFOLD(gc)) + goodscore += SCORE_ICASE / 2; } - depth = 0; - arridx[0] = 0; - curi[0] = 1; - while (depth >= 0 && !got_int) + /* Compute the score for the good word. This only does letter + * insert/delete/swap/replace. REP items are not considered, + * which may make the score a bit higher. + * Use a limit for the score to make it work faster. Use + * MAXSCORE(), because RESCORE() will change the score. + * If the limit is very high then the iterative method is + * inefficient, using an array is quicker. */ + limit = MAXSCORE(su->su_sfmaxscore - goodscore, score); + if (limit > SCORE_LIMITMAX) + goodscore += spell_edit_score(slang, su->su_badword, p); + else + goodscore += spell_edit_score_limit(slang, su->su_badword, + p, limit); + + /* When going over the limit don't bother to do the rest. */ + if (goodscore < SCORE_MAXMAX) { - if (curi[depth] > byts[arridx[depth]]) - { - /* Done all bytes at this node, go up one level. */ - --depth; - line_breakcheck(); - } - else - { - /* Do one more byte at this node. */ - n = arridx[depth] + curi[depth]; - ++curi[depth]; - c = byts[n]; - if (c == 0) - { - /* End of word, deal with the word. */ - flags = (int)idxs[n]; - if (round == 2 || (flags & WF_KEEPCAP) == 0) - { - tword[depth] = NUL; - /* Sound-fold. Only in keep-case tree need to - * case-fold the word. */ - spell_soundfold(slang, tword, - round == 1, tsalword); - - /* Compute the edit distance between the - * sound-a-like words. */ - sound_score = soundalike_score(salword, - tsalword); - - /* Add a penalty for words in another region. */ - if ((flags & WF_REGION) && (((unsigned)flags - >> 16) & lp->lp_region) == 0) - local_score = SCORE_REGION; - else - local_score = 0; - sound_score += local_score; + /* Give a bonus to words seen before. */ + goodscore = score_wordcount_adj(slang, goodscore, p, FALSE); + + /* Add the suggestion if the score isn't too bad. */ + goodscore = RESCORE(goodscore, score); + if (goodscore <= su->su_sfmaxscore) + add_suggestion(su, &su->su_ga, p, su->su_badlen, + goodscore, score, TRUE, slang, TRUE); + } + } + } + /* smsg("word %s (%d): %s (%d)", sftword, sftnr, theword, orgnr); */ + } +} - if (sound_score < SCORE_MAXMAX) - { - char_u cword[MAXWLEN]; - char_u *p; - int score; +/* + * Find word "word" in fold-case tree for "slang" and return the word number. + */ + static int +soundfold_find(slang, word) + slang_T *slang; + char_u *word; +{ + idx_T arridx = 0; + int len; + int wlen = 0; + int c; + char_u *ptr = word; + char_u *byts; + idx_T *idxs; + int wordnr = 0; - flags |= su->su_badflags; - if (round == 1 && (flags & WF_CAPMASK) != 0) - { - /* Need to fix case according to - * "flags". */ - make_case_word(tword, cword, flags); - p = cword; - } - else - p = tword; - - if (sps_flags & SPS_DOUBLE) - add_suggestion(su, &su->su_sga, p, - su->su_badlen, - sound_score, 0, FALSE, - lp->lp_sallang); - else - { - /* Compute the score. */ - score = spell_edit_score( - su->su_badword, p) - + local_score; - if (sps_flags & SPS_BEST) - /* give a bonus for the good word - * sounding the same as the bad - * word */ - add_suggestion(su, &su->su_ga, p, - su->su_badlen, - RESCORE(score, sound_score), - sound_score, TRUE, - lp->lp_sallang); - else - add_suggestion(su, &su->su_ga, p, - su->su_badlen, - score + sound_score, - 0, FALSE, - lp->lp_sallang); - } - } - } + byts = slang->sl_sbyts; + idxs = slang->sl_sidxs; - /* Skip over other NUL bytes. */ - while (byts[n + 1] == 0) - { - ++n; - ++curi[depth]; - } - } - else - { - /* Normal char, go one level deeper. */ - tword[depth++] = c; - arridx[depth] = idxs[n]; - curi[depth] = 1; - } - } - } + for (;;) + { + /* First byte is the number of possible bytes. */ + len = byts[arridx++]; + + /* If the first possible byte is a zero the word could end here. + * If the word ends we found the word. If not skip the NUL bytes. */ + c = ptr[wlen]; + if (byts[arridx] == NUL) + { + if (c == NUL) + break; + + /* Skip over the zeros, there can be several. */ + while (len > 0 && byts[arridx] == NUL) + { + ++arridx; + --len; } + if (len == 0) + return -1; /* no children, word should have ended here */ + ++wordnr; + } + + /* If the word ends we didn't find it. */ + if (c == NUL) + return -1; + + /* Perform a binary search in the list of accepted bytes. */ + if (c == TAB) /* is handled like */ + c = ' '; + while (byts[arridx] < c) + { + /* The word count is in the first idxs[] entry of the child. */ + wordnr += idxs[idxs[arridx]]; + ++arridx; + if (--len == 0) /* end of the bytes, didn't find it */ + return -1; } + if (byts[arridx] != c) /* didn't find the byte */ + return -1; + + /* Continue at the child (if there is one). */ + arridx = idxs[arridx]; + ++wlen; + + /* One space in the good word may stand for several spaces in the + * checked word. */ + if (c == ' ') + while (ptr[wlen] == ' ' || ptr[wlen] == TAB) + ++wlen; } + + return wordnr; } /* @@ -11090,7 +12733,7 @@ set_map_str(lp, map) } lp->sl_has_map = TRUE; - /* Init the array and hash table empty. */ + /* Init the array and hash tables empty. */ for (i = 0; i < 256; ++i) lp->sl_map_array[i] = 0; #ifdef FEAT_MBYTE @@ -11204,45 +12847,39 @@ similar_chars(slang, c1, c2) /* * Add a suggestion to the list of suggestions. - * Do not add a duplicate suggestion or suggestions with a bad score. - * When "use_score" is not zero it's used, otherwise the score is computed - * with spell_edit_score(). + * For a suggestion that is already in the list the lowest score is remembered. */ static void -add_suggestion(su, gap, goodword, badlenarg, score, altscore, had_bonus, slang) +add_suggestion(su, gap, goodword, badlenarg, score, altscore, had_bonus, + slang, maxsf) suginfo_T *su; - garray_T *gap; + garray_T *gap; /* either su_ga or su_sga */ char_u *goodword; int badlenarg; /* len of bad word replaced with "goodword" */ int score; int altscore; int had_bonus; /* value for st_had_bonus */ slang_T *slang; /* language for sound folding */ + int maxsf; /* su_maxscore applies to soundfold score, + su_sfmaxscore to the total score. */ { - int goodlen = STRLEN(goodword); /* len of goodword changed */ - int badlen = badlenarg; /* len of bad word changed */ + int goodlen; /* len of goodword changed */ + int badlen; /* len of bad word changed */ suggest_T *stp; suggest_T new_sug; int i; - hlf_T attr = HLF_COUNT; - char_u longword[MAXWLEN + 1]; char_u *pgood, *pbad; - /* Check that the word really is valid. Esp. for banned words and for - * split words, such as "the the". Need to append what follows to check - * for that. */ - STRCPY(longword, goodword); - vim_strncpy(longword + goodlen, su->su_badptr + badlen, MAXWLEN - goodlen); - (void)spell_check(curwin, longword, &attr, NULL); - if (attr != HLF_COUNT) - return; - /* Minimize "badlen" for consistency. Avoids that changing "the the" to * "thee the" is added next to changing the first "the" the "thee". */ pgood = goodword + STRLEN(goodword); - pbad = su->su_badptr + badlen; - while (pgood > goodword && pbad > su->su_badptr) + pbad = su->su_badptr + badlenarg; + for (;;) { + goodlen = pgood - goodword; + badlen = pbad - su->su_badptr; + if (goodlen <= 0 || badlen <= 0) + break; mb_ptr_back(goodword, pgood); mb_ptr_back(su->su_badptr, pbad); #ifdef FEAT_MBYTE @@ -11255,143 +12892,152 @@ add_suggestion(su, gap, goodword, badlenarg, score, altscore, had_bonus, slang) #endif if (*pgood != *pbad) break; - badlen = pbad - su->su_badptr; - goodlen = pgood - goodword; } + if (badlen == 0 && goodlen == 0) /* goodword doesn't change anything; may happen for "the the" changing * the first "the" to itself. */ return; - if (score <= su->su_maxscore) - { - /* Check if the word is already there. Also check the length that is - * being replaced "thes," -> "these" is a different suggestion from - * "thes" -> "these". */ - stp = &SUG(*gap, 0); - for (i = gap->ga_len - 1; i >= 0; --i) - if ((int)STRLEN(stp[i].st_word) == goodlen - && STRNCMP(stp[i].st_word, goodword, goodlen) == 0 - && stp[i].st_orglen == badlen) - { - /* - * Found it. Remember the word with the lowest score. - */ - if (stp[i].st_slang == NULL) - stp[i].st_slang = slang; + /* Check if the word is already there. Also check the length that is + * being replaced "thes," -> "these" is a different suggestion from + * "thes" -> "these". */ + stp = &SUG(*gap, 0); + for (i = gap->ga_len; --i >= 0; ++stp) + if (stp->st_wordlen == goodlen + && stp->st_orglen == badlen + && STRNCMP(stp->st_word, goodword, goodlen) == 0) + { + /* + * Found it. Remember the word with the lowest score. + */ + if (stp->st_slang == NULL) + stp->st_slang = slang; - new_sug.st_score = score; - new_sug.st_altscore = altscore; - new_sug.st_had_bonus = had_bonus; + new_sug.st_score = score; + new_sug.st_altscore = altscore; + new_sug.st_had_bonus = had_bonus; - if (stp[i].st_had_bonus != had_bonus) + if (stp->st_had_bonus != had_bonus) + { + /* Only one of the two had the soundalike score computed. + * Need to do that for the other one now, otherwise the + * scores can't be compared. This happens because + * suggest_try_change() doesn't compute the soundalike + * word to keep it fast, while some special methods set + * the soundalike score to zero. */ + if (had_bonus) + rescore_one(su, stp); + else { - /* Only one of the two had the soundalike score computed. - * Need to do that for the other one now, otherwise the - * scores can't be compared. This happens because - * suggest_try_change() doesn't compute the soundalike - * word to keep it fast, while some special methods set - * the soundalike score to zero. */ - if (had_bonus) - rescore_one(su, &stp[i]); - else - { - new_sug.st_word = goodword; - new_sug.st_slang = stp[i].st_slang; - new_sug.st_orglen = badlen; - rescore_one(su, &new_sug); - } + new_sug.st_word = stp->st_word; + new_sug.st_wordlen = stp->st_wordlen; + new_sug.st_slang = stp->st_slang; + new_sug.st_orglen = badlen; + rescore_one(su, &new_sug); } + } - if (stp[i].st_score > new_sug.st_score) - { - stp[i].st_score = new_sug.st_score; - stp[i].st_altscore = new_sug.st_altscore; - stp[i].st_had_bonus = new_sug.st_had_bonus; - } - break; + if (stp->st_score > new_sug.st_score) + { + stp->st_score = new_sug.st_score; + stp->st_altscore = new_sug.st_altscore; + stp->st_had_bonus = new_sug.st_had_bonus; } + break; + } - if (i < 0 && ga_grow(gap, 1) == OK) + if (i < 0 && ga_grow(gap, 1) == OK) + { + /* Add a suggestion. */ + stp = &SUG(*gap, gap->ga_len); + stp->st_word = vim_strnsave(goodword, goodlen); + if (stp->st_word != NULL) { - /* Add a suggestion. */ - stp = &SUG(*gap, gap->ga_len); - stp->st_word = vim_strnsave(goodword, goodlen); - if (stp->st_word != NULL) - { - stp->st_score = score; - stp->st_altscore = altscore; - stp->st_had_bonus = had_bonus; - stp->st_orglen = badlen; - stp->st_slang = slang; - ++gap->ga_len; + stp->st_wordlen = goodlen; + stp->st_score = score; + stp->st_altscore = altscore; + stp->st_had_bonus = had_bonus; + stp->st_orglen = badlen; + stp->st_slang = slang; + ++gap->ga_len; - /* If we have too many suggestions now, sort the list and keep - * the best suggestions. */ - if (gap->ga_len > SUG_MAX_COUNT(su)) - su->su_maxscore = cleanup_suggestions(gap, su->su_maxscore, - SUG_CLEAN_COUNT(su)); + /* If we have too many suggestions now, sort the list and keep + * the best suggestions. */ + if (gap->ga_len > SUG_MAX_COUNT(su)) + { + if (maxsf) + su->su_sfmaxscore = cleanup_suggestions(gap, + su->su_sfmaxscore, SUG_CLEAN_COUNT(su)); + else + { + i = su->su_maxscore; + su->su_maxscore = cleanup_suggestions(gap, + su->su_maxscore, SUG_CLEAN_COUNT(su)); + } } } } } /* - * Add a word to be banned. + * Suggestions may in fact be flagged as errors. Esp. for banned words and + * for split words, such as "the the". Remove these from the list here. */ static void -add_banned(su, word) +check_suggestions(su, gap) suginfo_T *su; - char_u *word; + garray_T *gap; /* either su_ga or su_sga */ { - char_u *s = vim_strsave(word); - hash_T hash; - hashitem_T *hi; + suggest_T *stp; + int i; + char_u longword[MAXWLEN + 1]; + int len; + hlf_T attr; - if (s != NULL) + stp = &SUG(*gap, 0); + for (i = gap->ga_len - 1; i >= 0; --i) { - hash = hash_hash(s); - hi = hash_lookup(&su->su_banned, s, hash); - if (HASHITEM_EMPTY(hi)) - hash_add_item(&su->su_banned, hi, s, hash); - else - vim_free(s); + /* Need to append what follows to check for "the the". */ + STRCPY(longword, stp[i].st_word); + len = stp[i].st_wordlen; + vim_strncpy(longword + len, su->su_badptr + stp[i].st_orglen, + MAXWLEN - len); + attr = HLF_COUNT; + (void)spell_check(curwin, longword, &attr, NULL, FALSE); + if (attr != HLF_COUNT) + { + /* Remove this entry. */ + vim_free(stp[i].st_word); + --gap->ga_len; + if (i < gap->ga_len) + mch_memmove(stp + i, stp + i + 1, + sizeof(suggest_T) * (gap->ga_len - i)); + } } } -/* - * Return TRUE if a word appears in the list of banned words. - */ - static int -was_banned(su, word) - suginfo_T *su; - char_u *word; -{ - hashitem_T *hi = hash_find(&su->su_banned, word); - - return !HASHITEM_EMPTY(hi); -} /* - * Free the banned words in "su". + * Add a word to be banned. */ static void -free_banned(su) +add_banned(su, word) suginfo_T *su; + char_u *word; { - int todo; + char_u *s = vim_strsave(word); + hash_T hash; hashitem_T *hi; - todo = su->su_banned.ht_used; - for (hi = su->su_banned.ht_array; todo > 0; ++hi) + hash = hash_hash(word); + hi = hash_lookup(&su->su_banned, word, hash); + if (HASHITEM_EMPTY(hi)) { - if (!HASHITEM_EMPTY(hi)) - { - vim_free(hi->hi_key); - --todo; - } + s = vim_strsave(word); + if (s != NULL) + hash_add_item(&su->su_banned, hi, s, hash); } - hash_clear(&su->su_banned); } /* @@ -12270,11 +13916,21 @@ soundalike_score(goodstart, badstart) * counted so much, vowels halfway the word aren't counted at all. */ if ((*badsound == '*' || *goodsound == '*') && *badsound != *goodsound) { - score = SCORE_DEL / 2; - if (*badsound == '*') - ++badsound; + if (badsound[1] == goodsound[1] + || (badsound[1] != NUL + && goodsound[1] != NUL + && badsound[2] == goodsound[2])) + { + /* handle like a substitute */ + } else - ++goodsound; + { + score = 2 * SCORE_DEL / 3; + if (*badsound == '*') + ++badsound; + else + ++goodsound; + } } goodlen = STRLEN(goodsound); @@ -12470,7 +14126,8 @@ soundalike_score(goodstart, badstart) * support multi-byte characters. */ static int -spell_edit_score(badword, goodword) +spell_edit_score(slang, badword, goodword) + slang_T *slang; char_u *badword; char_u *goodword; { @@ -12512,11 +14169,11 @@ spell_edit_score(badword, goodword) CNT(0, 0) = 0; for (j = 1; j <= goodlen; ++j) - CNT(0, j) = CNT(0, j - 1) + SCORE_DEL; + CNT(0, j) = CNT(0, j - 1) + SCORE_INS; for (i = 1; i <= badlen; ++i) { - CNT(i, 0) = CNT(i - 1, 0) + SCORE_INS; + CNT(i, 0) = CNT(i - 1, 0) + SCORE_DEL; for (j = 1; j <= goodlen; ++j) { #ifdef FEAT_MBYTE @@ -12539,7 +14196,15 @@ spell_edit_score(badword, goodword) if (SPELL_TOFOLD(bc) == SPELL_TOFOLD(gc)) CNT(i, j) = SCORE_ICASE + CNT(i - 1, j - 1); else - CNT(i, j) = SCORE_SUBST + CNT(i - 1, j - 1); + { + /* For a similar character use SCORE_SIMILAR. */ + if (slang != NULL + && slang->sl_has_map + && similar_chars(slang, gc, bc)) + CNT(i, j) = SCORE_SIMILAR + CNT(i - 1, j - 1); + else + CNT(i, j) = SCORE_SUBST + CNT(i - 1, j - 1); + } if (i > 1 && j > 1) { @@ -12577,6 +14242,392 @@ spell_edit_score(badword, goodword) return i; } +typedef struct +{ + int badi; + int goodi; + int score; +} limitscore_T; + +/* + * Like spell_edit_score(), but with a limit on the score to make it faster. + * May return SCORE_MAXMAX when the score is higher than "limit". + * + * This uses a stack for the edits still to be tried. + * The idea comes from Aspell leditdist.cpp. Rewritten in C and added support + * for multi-byte characters. + */ + static int +spell_edit_score_limit(slang, badword, goodword, limit) + slang_T *slang; + char_u *badword; + char_u *goodword; + int limit; +{ + limitscore_T stack[10]; /* allow for over 3 * 2 edits */ + int stackidx; + int bi, gi; + int bi2, gi2; + int bc, gc; + int score; + int score_off; + int minscore; + int round; + +#ifdef FEAT_MBYTE + /* Multi-byte characters require a bit more work, use a different function + * to avoid testing "has_mbyte" quite often. */ + if (has_mbyte) + return spell_edit_score_limit_w(slang, badword, goodword, limit); +#endif + + /* + * The idea is to go from start to end over the words. So long as + * characters are equal just continue, this always gives the lowest score. + * When there is a difference try several alternatives. Each alternative + * increases "score" for the edit distance. Some of the alternatives are + * pushed unto a stack and tried later, some are tried right away. At the + * end of the word the score for one alternative is known. The lowest + * possible score is stored in "minscore". + */ + stackidx = 0; + bi = 0; + gi = 0; + score = 0; + minscore = limit + 1; + + for (;;) + { + /* Skip over an equal part, score remains the same. */ + for (;;) + { + bc = badword[bi]; + gc = goodword[gi]; + if (bc != gc) /* stop at a char that's different */ + break; + if (bc == NUL) /* both words end */ + { + if (score < minscore) + minscore = score; + goto pop; /* do next alternative */ + } + ++bi; + ++gi; + } + + if (gc == NUL) /* goodword ends, delete badword chars */ + { + do + { + if ((score += SCORE_DEL) >= minscore) + goto pop; /* do next alternative */ + } while (badword[++bi] != NUL); + minscore = score; + } + else if (bc == NUL) /* badword ends, insert badword chars */ + { + do + { + if ((score += SCORE_INS) >= minscore) + goto pop; /* do next alternative */ + } while (goodword[++gi] != NUL); + minscore = score; + } + else /* both words continue */ + { + /* If not close to the limit, perform a change. Only try changes + * that may lead to a lower score than "minscore". + * round 0: try deleting a char from badword + * round 1: try inserting a char in badword */ + for (round = 0; round <= 1; ++round) + { + score_off = score + (round == 0 ? SCORE_DEL : SCORE_INS); + if (score_off < minscore) + { + if (score_off + SCORE_EDIT_MIN >= minscore) + { + /* Near the limit, rest of the words must match. We + * can check that right now, no need to push an item + * onto the stack. */ + bi2 = bi + 1 - round; + gi2 = gi + round; + while (goodword[gi2] == badword[bi2]) + { + if (goodword[gi2] == NUL) + { + minscore = score_off; + break; + } + ++bi2; + ++gi2; + } + } + else + { + /* try deleting/inserting a character later */ + stack[stackidx].badi = bi + 1 - round; + stack[stackidx].goodi = gi + round; + stack[stackidx].score = score_off; + ++stackidx; + } + } + } + + if (score + SCORE_SWAP < minscore) + { + /* If swapping two characters makes a match then the + * substitution is more expensive, thus there is no need to + * try both. */ + if (gc == badword[bi + 1] && bc == goodword[gi + 1]) + { + /* Swap two characters, that is: skip them. */ + gi += 2; + bi += 2; + score += SCORE_SWAP; + continue; + } + } + + /* Substitute one character for another which is the same + * thing as deleting a character from both goodword and badword. + * Use a better score when there is only a case difference. */ + if (SPELL_TOFOLD(bc) == SPELL_TOFOLD(gc)) + score += SCORE_ICASE; + else + { + /* For a similar character use SCORE_SIMILAR. */ + if (slang != NULL + && slang->sl_has_map + && similar_chars(slang, gc, bc)) + score += SCORE_SIMILAR; + else + score += SCORE_SUBST; + } + + if (score < minscore) + { + /* Do the substitution. */ + ++gi; + ++bi; + continue; + } + } +pop: + /* + * Get here to try the next alternative, pop it from the stack. + */ + if (stackidx == 0) /* stack is empty, finished */ + break; + + /* pop an item from the stack */ + --stackidx; + gi = stack[stackidx].goodi; + bi = stack[stackidx].badi; + score = stack[stackidx].score; + } + + /* When the score goes over "limit" it may actually be much higher. + * Return a very large number to avoid going below the limit when giving a + * bonus. */ + if (minscore > limit) + return SCORE_MAXMAX; + return minscore; +} + +#ifdef FEAT_MBYTE +/* + * Multi-byte version of spell_edit_score_limit(). + * Keep it in sync with the above! + */ + static int +spell_edit_score_limit_w(slang, badword, goodword, limit) + slang_T *slang; + char_u *badword; + char_u *goodword; + int limit; +{ + limitscore_T stack[10]; /* allow for over 3 * 2 edits */ + int stackidx; + int bi, gi; + int bi2, gi2; + int bc, gc; + int score; + int score_off; + int minscore; + int round; + char_u *p; + int wbadword[MAXWLEN]; + int wgoodword[MAXWLEN]; + + /* Get the characters from the multi-byte strings and put them in an + * int array for easy access. */ + bi = 0; + for (p = badword; *p != NUL; ) + wbadword[bi++] = mb_cptr2char_adv(&p); + wbadword[bi++] = 0; + gi = 0; + for (p = goodword; *p != NUL; ) + wgoodword[gi++] = mb_cptr2char_adv(&p); + wgoodword[gi++] = 0; + + /* + * The idea is to go from start to end over the words. So long as + * characters are equal just continue, this always gives the lowest score. + * When there is a difference try several alternatives. Each alternative + * increases "score" for the edit distance. Some of the alternatives are + * pushed unto a stack and tried later, some are tried right away. At the + * end of the word the score for one alternative is known. The lowest + * possible score is stored in "minscore". + */ + stackidx = 0; + bi = 0; + gi = 0; + score = 0; + minscore = limit + 1; + + for (;;) + { + /* Skip over an equal part, score remains the same. */ + for (;;) + { + bc = wbadword[bi]; + gc = wgoodword[gi]; + + if (bc != gc) /* stop at a char that's different */ + break; + if (bc == NUL) /* both words end */ + { + if (score < minscore) + minscore = score; + goto pop; /* do next alternative */ + } + ++bi; + ++gi; + } + + if (gc == NUL) /* goodword ends, delete badword chars */ + { + do + { + if ((score += SCORE_DEL) >= minscore) + goto pop; /* do next alternative */ + } while (wbadword[++bi] != NUL); + minscore = score; + } + else if (bc == NUL) /* badword ends, insert badword chars */ + { + do + { + if ((score += SCORE_INS) >= minscore) + goto pop; /* do next alternative */ + } while (wgoodword[++gi] != NUL); + minscore = score; + } + else /* both words continue */ + { + /* If not close to the limit, perform a change. Only try changes + * that may lead to a lower score than "minscore". + * round 0: try deleting a char from badword + * round 1: try inserting a char in badword */ + for (round = 0; round <= 1; ++round) + { + score_off = score + (round == 0 ? SCORE_DEL : SCORE_INS); + if (score_off < minscore) + { + if (score_off + SCORE_EDIT_MIN >= minscore) + { + /* Near the limit, rest of the words must match. We + * can check that right now, no need to push an item + * onto the stack. */ + bi2 = bi + 1 - round; + gi2 = gi + round; + while (wgoodword[gi2] == wbadword[bi2]) + { + if (wgoodword[gi2] == NUL) + { + minscore = score_off; + break; + } + ++bi2; + ++gi2; + } + } + else + { + /* try deleting a character from badword later */ + stack[stackidx].badi = bi + 1 - round; + stack[stackidx].goodi = gi + round; + stack[stackidx].score = score_off; + ++stackidx; + } + } + } + + if (score + SCORE_SWAP < minscore) + { + /* If swapping two characters makes a match then the + * substitution is more expensive, thus there is no need to + * try both. */ + if (gc == wbadword[bi + 1] && bc == wgoodword[gi + 1]) + { + /* Swap two characters, that is: skip them. */ + gi += 2; + bi += 2; + score += SCORE_SWAP; + continue; + } + } + + /* Substitute one character for another which is the same + * thing as deleting a character from both goodword and badword. + * Use a better score when there is only a case difference. */ + if (SPELL_TOFOLD(bc) == SPELL_TOFOLD(gc)) + score += SCORE_ICASE; + else + { + /* For a similar character use SCORE_SIMILAR. */ + if (slang != NULL + && slang->sl_has_map + && similar_chars(slang, gc, bc)) + score += SCORE_SIMILAR; + else + score += SCORE_SUBST; + } + + if (score < minscore) + { + /* Do the substitution. */ + ++gi; + ++bi; + continue; + } + } +pop: + /* + * Get here to try the next alternative, pop it from the stack. + */ + if (stackidx == 0) /* stack is empty, finished */ + break; + + /* pop an item from the stack */ + --stackidx; + gi = stack[stackidx].goodi; + bi = stack[stackidx].badi; + score = stack[stackidx].score; + } + + /* When the score goes over "limit" it may actually be much higher. + * Return a very large number to avoid going below the limit when giving a + * bonus. */ + if (minscore > limit) + return SCORE_MAXMAX; + return minscore; +} +#endif + +#define DUMPFLAG_KEEPCASE 1 /* round 2: keep-case tree */ +#define DUMPFLAG_COUNT 2 /* include word count */ + /* * ":spelldump" */ @@ -12603,6 +14654,7 @@ ex_spelldump(eap) int do_region = TRUE; /* dump region names and numbers */ char_u *p; int lpi; + int dumpflags; if (no_spell_checking(curwin)) return; @@ -12657,17 +14709,22 @@ ex_spelldump(eap) { if (round == 1) { + dumpflags = 0; byts = slang->sl_fbyts; idxs = slang->sl_fidxs; } else { + dumpflags = DUMPFLAG_KEEPCASE; byts = slang->sl_kbyts; idxs = slang->sl_kidxs; } if (byts == NULL) continue; /* array is empty */ + if (eap->forceit) + dumpflags |= DUMPFLAG_COUNT; + depth = 0; arridx[0] = 0; curi[0] = 1; @@ -12707,11 +14764,12 @@ ex_spelldump(eap) * when it's the first one. */ c = (unsigned)flags >> 24; if (c == 0 || curi[depth] == 2) - dump_word(word, round, flags, lnum++); + dump_word(slang, word, dumpflags, + flags, lnum++); /* Apply the prefix, if there is one. */ if (c != 0) - lnum = dump_prefixes(slang, word, round, + lnum = dump_prefixes(slang, word, dumpflags, flags, lnum); } } @@ -12738,19 +14796,21 @@ ex_spelldump(eap) * Dump one word: apply case modifications and append a line to the buffer. */ static void -dump_word(word, round, flags, lnum) +dump_word(slang, word, dumpflags, flags, lnum) + slang_T *slang; char_u *word; - int round; + int dumpflags; int flags; linenr_T lnum; { int keepcap = FALSE; char_u *p; + char_u *tw; char_u cword[MAXWLEN]; char_u badword[MAXWLEN + 10]; int i; - if (round == 1 && (flags & WF_CAPMASK) != 0) + if ((dumpflags & DUMPFLAG_KEEPCASE) == 0 && (flags & WF_CAPMASK) != 0) { /* Need to fix case according to "flags". */ make_case_word(word, cword, flags); @@ -12759,10 +14819,12 @@ dump_word(word, round, flags, lnum) else { p = word; - if (round == 2 && ((captype(word, NULL) & WF_KEEPCAP) == 0 + if ((dumpflags & DUMPFLAG_KEEPCASE) + && ((captype(word, NULL) & WF_KEEPCAP) == 0 || (flags & WF_FIXCAP) != 0)) keepcap = TRUE; } + tw = p; /* Add flags and regions after a slash. */ if ((flags & (WF_BANNED | WF_RARE | WF_REGION)) || keepcap) @@ -12782,6 +14844,20 @@ dump_word(word, round, flags, lnum) p = badword; } + if (dumpflags & DUMPFLAG_COUNT) + { + hashitem_T *hi; + + /* Include the word count for ":spelldump!". */ + hi = hash_find(&slang->sl_wordcount, tw); + if (!HASHITEM_EMPTY(hi)) + { + vim_snprintf((char *)IObuff, IOSIZE, "%s\t%d", + tw, HI2WC(hi)->wc_count); + p = IObuff; + } + } + ml_append(lnum, p, (colnr_T)0, FALSE); } @@ -12791,10 +14867,10 @@ dump_word(word, round, flags, lnum) * Return the updated line number. */ static linenr_T -dump_prefixes(slang, word, round, flags, startlnum) +dump_prefixes(slang, word, dumpflags, flags, startlnum) slang_T *slang; char_u *word; /* case-folded word */ - int round; + int dumpflags; int flags; /* flags with prefix ID */ linenr_T startlnum; { @@ -12860,7 +14936,7 @@ dump_prefixes(slang, word, round, flags, startlnum) if (c != 0) { vim_strncpy(prefix + depth, word, MAXWLEN - depth - 1); - dump_word(prefix, round, + dump_word(slang, prefix, dumpflags, (c & WF_RAREPFX) ? (flags | WF_RARE) : flags, lnum++); } @@ -12876,7 +14952,7 @@ dump_prefixes(slang, word, round, flags, startlnum) { vim_strncpy(prefix + depth, word_up, MAXWLEN - depth - 1); - dump_word(prefix, round, + dump_word(slang, prefix, dumpflags, (c & WF_RAREPFX) ? (flags | WF_RARE) : flags, lnum++); } @@ -12981,7 +15057,7 @@ expand_spelling(lnum, col, pat, matchp) { garray_T ga; - spell_suggest_list(&ga, pat, 100, spell_expand_need_cap); + spell_suggest_list(&ga, pat, 100, spell_expand_need_cap, TRUE); *matchp = ga.ga_data; return ga.ga_len; } diff --git a/src/structs.h b/src/structs.h index 5b91cecb64..5420b4e4bd 100644 --- a/src/structs.h +++ b/src/structs.h @@ -1074,6 +1074,13 @@ struct dictvar_S #define SYNSPL_TOP 1 /* spell check toplevel text */ #define SYNSPL_NOTOP 2 /* don't spell check toplevel text */ +/* avoid #ifdefs for when b_spell is not available */ +#ifdef FEAT_SYN_HL +# define B_SPELL(buf) ((buf)->b_spell) +#else +# define B_SPELL(buf) (0) +#endif + /* * buffer: structure that holds information about one file @@ -1407,8 +1414,19 @@ struct file_buffer int b_may_swap; int b_did_warn; /* Set to 1 if user has been warned on first change of a read-only file */ - int b_help; /* buffer for help file (when set b_p_bt is - "help") */ + + /* Two special kinds of buffers: + * help buffer - used for help files, won't use a swap file. + * spell buffer - used for spell info, never displayed and doesn't have a + * file name. + */ + int b_help; /* TRUE for help file buffer (when set b_p_bt + is "help") */ +#ifdef FEAT_SYN_HL + int b_spell; /* TRUE for a spell file buffer, most fields + are not used! Use the B_SPELL macro to + access b_spell without #ifdef. */ +#endif #ifndef SHORT_FNAME int b_shortname; /* this file has an 8.3 file name */ diff --git a/src/testdir/test58.ok b/src/testdir/test58.ok index 75caa7e668..b7ed094669 100644 --- a/src/testdir/test58.ok +++ b/src/testdir/test58.ok @@ -20,11 +20,11 @@ uk wrong ------- bad -['put', 'OK', 'uk'] +['put', 'uk', 'OK'] inputs ['input', 'puts', 'outputs'] comment -['Comment'] +['Comment', 'outtest', 'the end'] ok ['OK', 'uk', 'put'] Ok @@ -34,7 +34,7 @@ test déôl ['deol', 'déôr', 'test'] end -['put', 'OK', 'test'] +['put', 'uk', 'test'] the ['put', 'uk', 'test'] gebletegek @@ -141,7 +141,7 @@ bad wordutilize ['word utilize', 'wordutils', 'wordutil'] pro -['bork', 'end', 'word'] +['bork', 'word', 'end'] borkborkborkborkborkbork ['bork borkborkborkborkbork', 'borkbork borkborkborkbork', 'borkborkbork borkborkbork'] tomatotomatotomato @@ -185,7 +185,7 @@ probarbirk middle [] startmiddle -['startmiddleend'] +['startmiddleend', 'startmiddlebar'] middleend [] endstart @@ -217,7 +217,7 @@ probarbirk middle [] leadmiddle -['leadmiddleend'] +['leadmiddleend', 'leadmiddlebar'] middleend [] endlead @@ -249,7 +249,7 @@ probarmaat middle [] leadmiddle -[] +['leadmiddlebar'] middletail [] taillead diff --git a/src/testdir/test59.ok b/src/testdir/test59.ok index 9c49be4cb4..29c9696e8d 100644 --- a/src/testdir/test59.ok +++ b/src/testdir/test59.ok @@ -20,11 +20,11 @@ uk wrong ------- bad -['put', 'OK', 'uk'] +['put', 'uk', 'OK'] inputs ['input', 'puts', 'outputs'] comment -['Comment'] +['Comment', 'outtest', 'the end'] ok ['OK', 'uk', 'put'] Ok @@ -34,7 +34,7 @@ test déôl ['deol', 'déôr', 'test'] end -['put', 'OK', 'test'] +['put', 'uk', 'test'] the ['put', 'uk', 'test'] gebletegek @@ -141,7 +141,7 @@ bad wordutilize ['word utilize', 'wordutils', 'wordutil'] pro -['bork', 'end', 'word'] +['bork', 'word', 'end'] borkborkborkborkborkbork ['bork borkborkborkborkbork', 'borkbork borkborkborkbork', 'borkborkbork borkborkbork'] tomatotomatotomato @@ -185,7 +185,7 @@ probarbirk middle [] startmiddle -['startmiddleend'] +['startmiddleend', 'startmiddlebar'] middleend [] endstart @@ -217,7 +217,7 @@ probarbirk middle [] leadmiddle -['leadmiddleend'] +['leadmiddleend', 'leadmiddlebar'] middleend [] endlead @@ -249,7 +249,7 @@ probarmaat middle [] leadmiddle -[] +['leadmiddlebar'] middletail [] taillead diff --git a/src/testdir/test60.in b/src/testdir/test60.in index 9899a94ebd..2c414b38ef 100644 --- a/src/testdir/test60.in +++ b/src/testdir/test60.in @@ -51,6 +51,10 @@ endfunction let test_cases += [['&textwidth', 1]] " Existing and working option (short form) let test_cases += [['&tw', 1]] + " Global option + let test_cases += [['&g:errorformat', 1]] + " Local option + let test_cases += [['&l:errorformat', 1]] " Negative form of existing and working option (long form) let test_cases += [['&nojoinspaces', 0]] " Negative form of existing and working option (short form) @@ -212,6 +216,26 @@ endfunction echo "FAILED" endif + " Existing local curly-brace variable + let str = "local" + let curly_{str}_var = 1 + echo 'curly_' . str . '_var: 1' + if exists('curly_{str}_var') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing local curly-brace variable + unlet curly_{str}_var + echo 'curly_' . str . '_var: 0' + if !exists('curly_{str}_var') + echo "OK" + else + echo "FAILED" + endif + + " Existing global variable let g:global_var = 1 echo 'g:global_var: 1' @@ -230,29 +254,46 @@ endfunction echo "FAILED" endif - " Existing local curly-brace variable - let curly_local_var = 1 - let str = "local" - echo 'curly_{str}_var: 1' - if exists('curly_{str}_var') + " Existing global list + let g:global_list = ["blue", "orange"] + echo 'g:global_list: 1' + if exists('g:global_list') echo "OK" else echo "FAILED" endif - " Non-existing local curly-brace variable - unlet curly_local_var - echo 'curly_{str}_var: 0' - if !exists('curly_{str}_var') + " Non-existing global list + unlet g:global_list + echo 'g:global_list: 0' + if !exists('g:global_list') + echo "OK" + else + echo "FAILED" + endif + + " Existing global dictionary + let g:global_dict = {"xcord":100, "ycord":2} + echo 'g:global_dict: 1' + if exists('g:global_dict') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing global dictionary + unlet g:global_dict + echo 'g:global_dict: 0' + if !exists('g:global_dict') echo "OK" else echo "FAILED" endif " Existing global curly-brace variable - let g:curly_global_var = 1 let str = "global" - echo 'g:curly_{str}_var: 1' + let g:curly_{str}_var = 1 + echo 'g:curly_' . str . '_var: 1' if exists('g:curly_{str}_var') echo "OK" else @@ -260,17 +301,212 @@ endfunction endif " Non-existing global curly-brace variable - unlet g:curly_global_var - echo 'g:curly_{str}_var: 0' + unlet g:curly_{str}_var + echo 'g:curly_' . str . '_var: 0' if !exists('g:curly_{str}_var') echo "OK" else echo "FAILED" endif + " Existing window variable + echo 'w:window_var: 1' + let w:window_var = 1 + if exists('w:window_var') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing window variable + unlet w:window_var + echo 'w:window_var: 0' + if !exists('w:window_var') + echo "OK" + else + echo "FAILED" + endif + + " Existing window list + let w:window_list = ["blue", "orange"] + echo 'w:window_list: 1' + if exists('w:window_list') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing window list + unlet w:window_list + echo 'w:window_list: 0' + if !exists('w:window_list') + echo "OK" + else + echo "FAILED" + endif + + " Existing window dictionary + let w:window_dict = {"xcord":100, "ycord":2} + echo 'w:window_dict: 1' + if exists('w:window_dict') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing window dictionary + unlet w:window_dict + echo 'w:window_dict: 0' + if !exists('w:window_dict') + echo "OK" + else + echo "FAILED" + endif + + " Existing window curly-brace variable + let str = "window" + let w:curly_{str}_var = 1 + echo 'w:curly_' . str . '_var: 1' + if exists('w:curly_{str}_var') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing window curly-brace variable + unlet w:curly_{str}_var + echo 'w:curly_' . str . '_var: 0' + if !exists('w:curly_{str}_var') + echo "OK" + else + echo "FAILED" + endif + + " Existing buffer variable + echo 'b:buffer_var: 1' + let b:buffer_var = 1 + if exists('b:buffer_var') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing buffer variable + unlet b:buffer_var + echo 'b:buffer_var: 0' + if !exists('b:buffer_var') + echo "OK" + else + echo "FAILED" + endif + + " Existing buffer list + let b:buffer_list = ["blue", "orange"] + echo 'b:buffer_list: 1' + if exists('b:buffer_list') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing buffer list + unlet b:buffer_list + echo 'b:buffer_list: 0' + if !exists('b:buffer_list') + echo "OK" + else + echo "FAILED" + endif + + " Existing buffer dictionary + let b:buffer_dict = {"xcord":100, "ycord":2} + echo 'b:buffer_dict: 1' + if exists('b:buffer_dict') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing buffer dictionary + unlet b:buffer_dict + echo 'b:buffer_dict: 0' + if !exists('b:buffer_dict') + echo "OK" + else + echo "FAILED" + endif + + " Existing buffer curly-brace variable + let str = "buffer" + let b:curly_{str}_var = 1 + echo 'b:curly_' . str . '_var: 1' + if exists('b:curly_{str}_var') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing buffer curly-brace variable + unlet b:curly_{str}_var + echo 'b:curly_' . str . '_var: 0' + if !exists('b:curly_{str}_var') + echo "OK" + else + echo "FAILED" + endif + " Script-local tests source test60.vim + " Existing Vim internal variable + echo 'v:version: 1' + if exists('v:version') + echo "OK" + else + echo "FAILED" + endif + + " Non-existing Vim internal variable + echo 'v:non_exists_var: 0' + if !exists('v:non_exists_var') + echo "OK" + else + echo "FAILED" + endif + + " Function arguments + function TestFuncArg(func_arg, ...) + echo 'a:func_arg: 1' + if exists('a:func_arg') + echo "OK" + else + echo "FAILED" + endif + + echo 'a:non_exists_arg: 0' + if !exists('a:non_exists_arg') + echo "OK" + else + echo "FAILED" + endif + + echo 'a:1: 1' + if exists('a:1') + echo "OK" + else + echo "FAILED" + endif + + echo 'a:2: 0' + if !exists('a:2') + echo "OK" + else + echo "FAILED" + endif + endfunction + + call TestFuncArg("arg1", "arg2") + redir END endfunction :call TestExists() diff --git a/src/testdir/test60.ok b/src/testdir/test60.ok index fe6c4b7658..46a72e4d2f 100644 --- a/src/testdir/test60.ok +++ b/src/testdir/test60.ok @@ -33,6 +33,10 @@ OK OK &tw: 1 OK +&g:errorformat: 1 +OK +&l:errorformat: 1 +OK &nojoinspaces: 0 OK &nojs: 0 @@ -85,27 +89,87 @@ local_dict: 1 OK local_dict: 0 OK +curly_local_var: 1 +OK +curly_local_var: 0 +OK g:global_var: 1 OK g:global_var: 0 OK -curly_{str}_var: 1 +g:global_list: 1 +OK +g:global_list: 0 +OK +g:global_dict: 1 +OK +g:global_dict: 0 +OK +g:curly_global_var: 1 +OK +g:curly_global_var: 0 +OK +w:window_var: 1 +OK +w:window_var: 0 +OK +w:window_list: 1 +OK +w:window_list: 0 +OK +w:window_dict: 1 +OK +w:window_dict: 0 +OK +w:curly_window_var: 1 OK -curly_{str}_var: 0 +w:curly_window_var: 0 OK -g:curly_{str}_var: 1 +b:buffer_var: 1 OK -g:curly_{str}_var: 0 +b:buffer_var: 0 +OK +b:buffer_list: 1 +OK +b:buffer_list: 0 +OK +b:buffer_dict: 1 +OK +b:buffer_dict: 0 +OK +b:curly_buffer_var: 1 +OK +b:curly_buffer_var: 0 OK s:script_var: 1 OK s:script_var: 0 OK -s:curly_{str}_var: 1 +s:script_list: 1 +OK +s:script_list: 0 +OK +s:script_dict: 1 OK -s:curly_{str}_var: 0 +s:script_dict: 0 +OK +s:curly_script_var: 1 +OK +s:curly_script_var: 0 OK *s:my_script_func: 1 OK *s:my_script_func: 0 OK +v:version: 1 +OK +v:non_exists_var: 0 +OK +a:func_arg: 1 +OK +a:non_exists_arg: 0 +OK +a:1: 1 +OK +a:2: 0 +OK diff --git a/src/testdir/test60.vim b/src/testdir/test60.vim new file mode 100644 index 0000000000..48eea4279e --- /dev/null +++ b/src/testdir/test60.vim @@ -0,0 +1,97 @@ +" Vim script for exists() function test +" Script-local variables are checked here + +" Existing script-local variable +let s:script_var = 1 +echo 's:script_var: 1' +if exists('s:script_var') + echo "OK" +else + echo "FAILED" +endif + +" Non-existing script-local variable +unlet s:script_var +echo 's:script_var: 0' +if !exists('s:script_var') + echo "OK" +else + echo "FAILED" +endif + +" Existing script-local list +let s:script_list = ["blue", "orange"] +echo 's:script_list: 1' +if exists('s:script_list') + echo "OK" +else + echo "FAILED" +endif + +" Non-existing script-local list +unlet s:script_list +echo 's:script_list: 0' +if !exists('s:script_list') + echo "OK" +else + echo "FAILED" +endif + +" Existing script-local dictionary +let s:script_dict = {"xcord":100, "ycord":2} +echo 's:script_dict: 1' +if exists('s:script_dict') + echo "OK" +else + echo "FAILED" +endif + +" Non-existing script-local dictionary +unlet s:script_dict +echo 's:script_dict: 0' +if !exists('s:script_dict') + echo "OK" +else + echo "FAILED" +endif + +" Existing script curly-brace variable +let str = "script" +let s:curly_{str}_var = 1 +echo 's:curly_' . str . '_var: 1' +if exists('s:curly_{str}_var') + echo "OK" +else + echo "FAILED" +endif + +" Non-existing script-local curly-brace variable +unlet s:curly_{str}_var +echo 's:curly_' . str . '_var: 0' +if !exists('s:curly_{str}_var') + echo "OK" +else + echo "FAILED" +endif + +" Existing script-local function +function! s:my_script_func() +endfunction + +echo '*s:my_script_func: 1' +if exists('*s:my_script_func') + echo "OK" +else + echo "FAILED" +endif + +" Non-existing script-local function +delfunction s:my_script_func + +echo '*s:my_script_func: 0' +if !exists('*s:my_script_func') + echo "OK" +else + echo "FAILED" +endif + diff --git a/src/version.h b/src/version.h index 253102b529..447f4fa0be 100644 --- a/src/version.h +++ b/src/version.h @@ -36,5 +36,5 @@ #define VIM_VERSION_NODOT "vim70aa" #define VIM_VERSION_SHORT "7.0aa" #define VIM_VERSION_MEDIUM "7.0aa ALPHA" -#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Dec 29)" -#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Dec 29, compiled " +#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2006 Jan 12)" +#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2006 Jan 12, compiled " -- 2.47.3
  • XTr%S*yu4?UfO#FV|5{8ozS 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 z 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