summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2005-08-21 22:20:28 +0000
committerBram Moolenaar <Bram@vim.org>2005-08-21 22:20:28 +0000
commitd52d9741ee3770678b1cf6ebc748896a64f3e2ed (patch)
tree704b6980193669fbaef8fa2b8d1a03118e4c1966 /src
parent90915b5d4894da281ad03e902b3e6699ad60aad1 (diff)
updated for version 7.0133v7.0133
Diffstat (limited to 'src')
-rw-r--r--src/eval.c40
-rw-r--r--src/testdir/test58.in86
2 files changed, 121 insertions, 5 deletions
diff --git a/src/eval.c b/src/eval.c
index 2dbbb222c3..3cb3bd7e1f 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -612,6 +612,7 @@ static void f_synIDtrans __ARGS((typval_T *argvars, typval_T *rettv));
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
index e053261370..1beb457360 100644
--- a/src/testdir/test58.in
+++ b/src/testdir/test58.in
@@ -105,12 +105,31 @@ gg:/^affstart3/+1,/^affend3/-1w! Xtest.aff
: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: