Mercurial > vim
changeset 17791:55c167b08c2b v8.1.1892
patch 8.1.1892: missing index entry and option menu for 'completepopup'
commit https://github.com/vim/vim/commit/36e4d985f0e015b189351d612132d382da9d014d
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Aug 20 21:12:16 2019 +0200
patch 8.1.1892: missing index entry and option menu for 'completepopup'
Problem: Missing index entry and option menu for 'completepopup'.
Solution: Add the entries. Adjust #ifdefs to avoid dead code.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 20 Aug 2019 21:15:04 +0200 |
parents | c6a0db4bab28 |
children | a50ed390fd6e |
files | runtime/doc/quickref.txt runtime/optwin.vim src/option.c src/option.h src/popupwin.c src/version.c |
diffstat | 6 files changed, 27 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- 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: *opti '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
--- 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")
--- 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. */
--- 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
--- a/src/popupwin.c +++ b/src/popupwin.c @@ -1294,9 +1294,13 @@ popup_set_buffer_text(buf_T *buf, typval static int parse_popup_option(win_T *wp, int is_preview) { - char_u *p; - - for (p = is_preview ? p_pvp : p_cpp; *p != NUL; p += (*p == ',' ? 1 : 0)) + char_u *p = +#ifdef FEAT_QUICKFIX + !is_preview ? p_cpp : +#endif + p_pvp; + + 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 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 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.