diff options
-rw-r--r-- | runtime/doc/quickref.txt | 3 | ||||
-rw-r--r-- | runtime/optwin.vim | 6 | ||||
-rw-r--r-- | src/option.c | 4 | ||||
-rw-r--r-- | src/option.h | 2 | ||||
-rw-r--r-- | src/popupwin.c | 14 | ||||
-rw-r--r-- | src/version.c | 2 |
6 files changed, 26 insertions, 5 deletions
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index bf3e34678..90e76f2e5 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 8.1. Last change: 2019 Aug 01 +*quickref.txt* For Vim version 8.1. Last change: 2019 Aug 20 VIM REFERENCE MANUAL by Bram Moolenaar @@ -651,6 +651,7 @@ Short explanation of each option: *option-list* 'complete' 'cpt' specify how Insert mode completion works 'completefunc' 'cfu' function to be used for Insert mode completion 'completeopt' 'cot' options for Insert mode completion +'completepopup' 'cpp' options for the Insert mode completion info popup 'completeslash' 'csl' like 'shellslash' for completion 'concealcursor' 'cocu' whether concealable text is hidden in cursor line 'conceallevel' 'cole' whether concealable text is shown or hidden diff --git a/runtime/optwin.vim b/runtime/optwin.vim index eec2d1e69..7d3a8804d 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2019 Aug 01 +" Last Change: 2019 Aug 20 " If there already is an option window, jump to that one. let buf = bufnr('option-window') @@ -806,6 +806,10 @@ if has("insert_expand") call <SID>OptionL("cpt") call append("$", "completeopt\twhether to use a popup menu for Insert mode completion") call <SID>OptionG("cot", &cot) + if exists("+completepopup") + call append("$", "completepopup\toptions for the Insert mode completion info popup") + call <SID>OptionG("cpp", &cpp) + endif call append("$", "pumheight\tmaximum height of the popup menu") call <SID>OptionG("ph", &ph) call append("$", "pumwidth\tminimum width of the popup menu") diff --git a/src/option.c b/src/option.c index 69d272768..8d9b5783f 100644 --- a/src/option.c +++ b/src/option.c @@ -894,7 +894,7 @@ static struct vimoption options[] = #endif SCTX_INIT}, {"completepopup", "cpp", P_STRING|P_VI_DEF|P_COMMA|P_NODUP, -#ifdef FEAT_TEXT_PROP +#if defined(FEAT_TEXT_PROP) && defined(FEAT_QUICKFIX) (char_u *)&p_cpp, PV_NONE, {(char_u *)"", (char_u *)0L} #else @@ -7830,12 +7830,14 @@ did_set_string_option( if (parse_previewpopup(NULL) == FAIL) errmsg = e_invarg; } +# ifdef FEAT_QUICKFIX // 'completepopup' else if (varp == &p_cpp) { if (parse_completepopup(NULL) == FAIL) errmsg = e_invarg; } +# endif #endif /* Options that are a list of flags. */ diff --git a/src/option.h b/src/option.h index 0461a648a..0ccf8f129 100644 --- a/src/option.h +++ b/src/option.h @@ -503,7 +503,9 @@ EXTERN int p_fs; // 'fsync' #endif EXTERN int p_gd; // 'gdefault' #ifdef FEAT_TEXT_PROP +# ifdef FEAT_QUICKFIX EXTERN char_u *p_cpp; // 'completepopup' +# endif EXTERN char_u *p_pvp; // 'previewpopup' #endif #ifdef FEAT_PRINTER diff --git a/src/popupwin.c b/src/popupwin.c index a892bb647..99a40afd1 100644 --- a/src/popupwin.c +++ b/src/popupwin.c @@ -1294,9 +1294,13 @@ popup_set_buffer_text(buf_T *buf, typval_T text) static int parse_popup_option(win_T *wp, int is_preview) { - char_u *p; + char_u *p = +#ifdef FEAT_QUICKFIX + !is_preview ? p_cpp : +#endif + p_pvp; - for (p = is_preview ? p_pvp : p_cpp; *p != NUL; p += (*p == ',' ? 1 : 0)) + for ( ; *p != NUL; p += (*p == ',' ? 1 : 0)) { char_u *e, *dig; char_u *s = p; @@ -1674,6 +1678,7 @@ popup_create(typval_T *argvars, typval_T *rettv, create_type_T type) parse_previewpopup(wp); popup_set_wantpos_cursor(wp, wp->w_minwidth); } +# ifdef FEAT_QUICKFIX if (type == TYPE_INFO) { wp->w_popup_pos = POPPOS_TOPLEFT; @@ -1682,6 +1687,7 @@ popup_create(typval_T *argvars, typval_T *rettv, create_type_T type) add_border_left_right_padding(wp); parse_completepopup(wp); } +# endif for (i = 0; i < 4; ++i) VIM_CLEAR(wp->w_border_highlight[i]); @@ -3257,6 +3263,7 @@ popup_is_popup(win_T *wp) return wp->w_popup_flags != 0; } +#if defined(FEAT_QUICKFIX) || defined(PROTO) /* * Find an existing popup used as the info window, in the current tab page. * Return NULL if not found. @@ -3272,6 +3279,7 @@ popup_find_info_window(void) return wp; return NULL; } +#endif void f_popup_getpreview(typval_T *argvars UNUSED, typval_T *rettv) @@ -3314,6 +3322,7 @@ popup_create_preview_window(int info) return OK; } +#if defined(FEAT_QUICKFIX) || defined(PROTO) void popup_close_preview(int info) { @@ -3328,6 +3337,7 @@ popup_close_preview(int info) popup_close_and_callback(wp, &res); } } +#endif /* * Set the title of the popup window to the file name. diff --git a/src/version.c b/src/version.c index 895b4ff5e..5d802fd57 100644 --- a/src/version.c +++ b/src/version.c @@ -766,6 +766,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1892, +/**/ 1891, /**/ 1890, |