# HG changeset patch # User vimboss # Date 1142463781 0 # Node ID 6c8a16911e946cac4ad276681e7ec93f5fab7138 # Parent f0d0d3d3a1e26c433ca5efd5ccabbf22c30dc54d updated for version 7.0225 diff --git a/src/edit.c b/src/edit.c --- a/src/edit.c +++ b/src/edit.c @@ -2146,11 +2146,11 @@ ins_compl_add(str, len, icase, fname, ki else match->cp_fname = NULL; match->cp_flags = flags; - if (kind != NULL) + if (kind != NULL && *kind != NUL) match->cp_kind = vim_strsave(kind); - if (extra != NULL) + if (extra != NULL && *extra != NUL) match->cp_extra = vim_strsave(extra); - if (info != NULL) + if (info != NULL && *info != NUL) match->cp_info = vim_strsave(info); /* diff --git a/src/globals.h b/src/globals.h --- a/src/globals.h +++ b/src/globals.h @@ -410,7 +410,8 @@ EXTERN int drag_sep_line INIT(= FALSE); #ifdef FEAT_DIFF /* Value set from 'diffopt'. */ -EXTERN int diff_context INIT(= 6); /* context for folds */ +EXTERN int diff_context INIT(= 6); /* context for folds */ +EXTERN int diff_foldcolumn INIT(= 2); /* 'foldcolumn' for diff mode */ EXTERN int diff_need_scrollbind INIT(= FALSE); #endif diff --git a/src/option.c b/src/option.c --- a/src/option.c +++ b/src/option.c @@ -1923,6 +1923,13 @@ static struct vimoption {"prompt", NULL, P_BOOL|P_VI_DEF, (char_u *)&p_prompt, PV_NONE, {(char_u *)TRUE, (char_u *)0L}}, + {"pumheight", "ph", P_NUM|P_VI_DEF, +#ifdef FEAT_INS_EXPAND + (char_u *)&p_ph, PV_NONE, +#else + (char_u *)NULL, PV_NONE, +#endif + {(char_u *)0L, (char_u *)0L}}, {"quoteescape", "qe", P_STRING|P_ALLOCED|P_VI_DEF, #ifdef FEAT_TEXTOBJ (char_u *)&p_qe, PV_QE, @@ -3194,7 +3201,7 @@ set_init_1() } } # else -# ifdef MACOS +# ifdef MACOS_CONVERT if (mch_getenv((char_u *)"LANG") == NULL) { char buf[20]; diff --git a/src/option.h b/src/option.h --- a/src/option.h +++ b/src/option.h @@ -378,6 +378,7 @@ EXTERN int p_confirm; /* 'confirm' */ EXTERN int p_cp; /* 'compatible' */ #ifdef FEAT_INS_EXPAND EXTERN char_u *p_cot; /* 'completeopt' */ +EXTERN long p_ph; /* 'pumheight' */ #endif EXTERN char_u *p_cpo; /* 'cpoptions' */ #ifdef FEAT_CSCOPE diff --git a/src/testdir/test61.in b/src/testdir/test61.in new file mode 100644 --- /dev/null +++ b/src/testdir/test61.in @@ -0,0 +1,52 @@ +Tests for undo tree. +Since this script is sourced we need to explicitly break changes up in +undo-able pieces. Do that by setting 'undolevels'. + +STARTTEST +:" Delete three characters and undo +Gx:set ul=100 +x:set ul=100 +x:.w! test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +:" +:/^111/w >>test.out +:" Delete three other characters and go back in time step by step +$x:set ul=100 +x:set ul=100 +x:.w >>test.out +:sleep 1 +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +g-:.w >>test.out +10g+:.w >>test.out +:" +:/^222/w >>test.out +:" Delay for three seconds and go some seconds forward and backward +:sleep 2 +Aa:set ul=100 +Ab:set ul=100 +Ac:set ul=100 +:.w >>test.out +:ear 1s +:.w >>test.out +:ear 3s +:.w >>test.out +:later 1s +:.w >>test.out +:later 1h +:.w >>test.out +:qa! +ENDTEST + +1111 ----- +2222 ----- + +123456789