# HG changeset patch # User vimboss # Date 1124662828 0 # Node ID b1e87b7f5db64eb40fafb0e9bcbb0c39fa2bac63 # Parent f00f0af2a320a621ad494c64cad9cb72018839c5 updated for version 7.0133 diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.0aa. Last change: 2005 Aug 19 +*todo.txt* For Vim version 7.0aa. Last change: 2005 Aug 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -31,10 +31,7 @@ be worked on, but only if you sponsor Vi -------------------- Known bugs and current work ----------------------- Spelling: -- Test counting syllables and comparing against the maximum. -- Test nocomp flag for affixes. - -- When looking for following compound word, also do postponed prefixes. +- New hunspell home page: http://hunspell.sourceforge.net/ - Implement multiple flags for compound words and CMP item? Await comments from other spell checking authors. diff --git a/runtime/spell/el/el_GR.diff b/runtime/spell/el/el_GR.diff new file mode 100644 diff --git a/runtime/spell/hr/hr_HR.diff b/runtime/spell/hr/hr_HR.diff new file mode 100644 --- /dev/null +++ b/runtime/spell/hr/hr_HR.diff @@ -0,0 +1,11 @@ +*** hr_HR.orig.aff Sun Aug 14 20:00:56 2005 +--- hr_HR.aff Wed Aug 17 17:11:35 2005 +*************** +*** 4,5 **** +--- 4,9 ---- + ++ FOL ±¢³µ¶¨¹º»¼¾¿±²³´µ¶·¸¹º»¼½¾¿àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ ++ LOW ±¢³µ¶¨¹º»¼¾¿±²³´µ¶·¸¹º»¼½¾¿àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ ++ UPP ¡¢£¥¦¨©ª«¬®¯±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ ++ + SFX A N 1 diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -612,6 +612,7 @@ static void f_synIDtrans __ARGS((typval_ static void f_system __ARGS((typval_T *argvars, typval_T *rettv)); static void f_taglist __ARGS((typval_T *argvars, typval_T *rettv)); static void f_tempname __ARGS((typval_T *argvars, typval_T *rettv)); +static void f_test __ARGS((typval_T *argvars, typval_T *rettv)); static void f_tolower __ARGS((typval_T *argvars, typval_T *rettv)); static void f_toupper __ARGS((typval_T *argvars, typval_T *rettv)); static void f_tr __ARGS((typval_T *argvars, typval_T *rettv)); @@ -6849,6 +6850,7 @@ static struct fst {"system", 1, 2, f_system}, {"taglist", 1, 1, f_taglist}, {"tempname", 0, 0, f_tempname}, + {"test", 1, 1, f_test}, {"tolower", 1, 1, f_tolower}, {"toupper", 1, 1, f_toupper}, {"tr", 3, 3, f_tr}, @@ -11952,7 +11954,7 @@ f_printf(argvars, rettv) { rettv->v_type = VAR_STRING; rettv->vval.v_string = NULL; -#ifdef HAVE_STDARG_H +#ifdef HAVE_STDARG_H /* only very old compilers can't do this */ { char_u buf[NUMBUFLEN]; int len; @@ -11961,10 +11963,8 @@ f_printf(argvars, rettv) char *fmt; va_list ap; /* dummy */ -# ifdef LINT - /* avoid warning for "ap" used before set; it is unused. */ + /* Avoid warning for "ap" used before set; it's unused. */ va_start(ap, rettv); -# endif /* Get the required length, allocate the buffer and do it for real. */ did_emsg = FALSE; @@ -14490,6 +14490,38 @@ f_tempname(argvars, rettv) } /* + * "test(list)" function: Just checking the walls... + */ +/*ARGSUSED*/ + static void +f_test(argvars, rettv) + typval_T *argvars; + typval_T *rettv; +{ + /* Used for unit testing. Change the code below to your liking. */ +#if 0 + listitem_T *li; + list_T *l; + char_u *bad, *good; + + if (argvars[0].v_type != VAR_LIST) + return; + l = argvars[0].vval.v_list; + if (l == NULL) + return; + li = l->lv_first; + if (li == NULL) + return; + bad = get_tv_string(&li->li_tv); + li = li->li_next; + if (li == NULL) + return; + good = get_tv_string(&li->li_tv); + rettv->vval.v_number = test_edit_score(bad, good); +#endif +} + +/* * "tolower(string)" function */ static void diff --git a/src/testdir/test58.in b/src/testdir/test58.in --- a/src/testdir/test58.in +++ b/src/testdir/test58.in @@ -105,12 +105,31 @@ gg:/^affstart3/+1,/^affend3/-1w! Xtest.a :mkspell! Xtest Xtest :set spellfile= :set spl=Xtest.latin1.spl -:mess :spelldump 1GyG:q :$put :call SpellTest() :" +:" Compounding +gg:/^compaffstart/+1,/^compaffend/-1w! Xtest.aff +gg:/^compdicstart/+1,/^compdicend/-1w! Xtest.dic +:mkspell! Xtest Xtest +:set spellfile= +:set spl=Xtest.latin1.spl +:spelldump +1GyG:q +:$put +/^comptest: +:for i in range(12) +normal ]smm +let str = spellbadword() +$put =str +normal `m +let lst = spellsuggest(str, 3) +$put =string(lst) +normal `m +endfor +:" gg:/^test output:/,$wq! test.out ENDTEST @@ -384,6 +403,61 @@ deol déôr dicend +compaffstart +SET ISO8859-1 + +FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ +LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ +UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ + +COMPOUNDFLAGS m+ +COMPOUNDFLAGS sm*e +COMPOUNDFLAGS sm+ +COMPOUNDMIN 3 +COMPOUNDMAX 3 + +COMPOUNDSYLMAX 5 +SYLLABLE aáeéiíoóöõuúüûy/aa/au/ea/ee/ei/ie/oa/oe/oo/ou/uu/ui + +MAP 9 +MAP aàáâãäå +MAP eèéêë +MAP iìíîï +MAP oòóôõö +MAP uùúûü +MAP nñ +MAP cç +MAP yÿý +MAP sß + +NEEDAFFIX x + +PFXPOSTPONE + +MIDWORD '- + +SFX q N 1 +SFX q 0 -ok . + +SFX a Y 2 +SFX a 0 s . +SFX a 0 ize . nocomp + +PFX p N 1 +PFX p 0 pre . +compaffend + +compdicstart +1234 +word/m +util/am +pro/xq +tomato/m +bork/mp +start/s +end/e +compdicend + addstart /regions=usgbnz elequint/2 @@ -402,5 +476,15 @@ déôl test2: elequint test elekwint test elekwent asdf +comptest: +word util +wordutil wordutils wordutilize +pro pro-ok +bork borkbork borkborkbork borkborkborkbork borkborkborkborkbork +tomato tomatotomato tomatotomatotomato +startend endstart endend startstart +startword startwordword wordstart startwordend startwordwordend +prebork preborkprebork preborkborkprebork preborkpreborkbork +borkpreborkpreborkbork test output: