To: vim_dev@googlegroups.com Subject: Patch 8.0.1495 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.0.1495 Problem: Having 'pumwidth' default to zero has no merit. Solution: Make the default 15, as the actual default value. Files: src/popupmnu.c, src/option.c *** ../vim-8.0.1494/src/popupmnu.c 2018-02-10 15:36:51.138901636 +0100 --- src/popupmnu.c 2018-02-10 18:26:42.904867804 +0100 *************** *** 67,81 **** } /* - * Return the minimum width of the popup menu. - */ - static int - pum_get_width(void) - { - return p_pw == 0 ? PUM_DEF_WIDTH : p_pw; - } - - /* * Show the popup menu with items "array[size]". * "array" must remain valid until pum_undisplay() is called! * When possible the leftmost character is aligned with screen column "col". --- 67,72 ---- *************** *** 102,108 **** do { ! def_width = pum_get_width(); above_row = 0; below_row = cmdline_row; --- 93,99 ---- do { ! def_width = p_pw; above_row = 0; below_row = cmdline_row; *************** *** 225,234 **** if (def_width < max_width) def_width = max_width; ! if (((col < Columns - pum_get_width() || col < Columns - max_width) #ifdef FEAT_RIGHTLEFT && !curwin->w_p_rl) ! || (curwin->w_p_rl && (col > pum_get_width() || col > max_width) #endif )) { --- 216,225 ---- if (def_width < max_width) def_width = max_width; ! if (((col < Columns - p_pw || col < Columns - max_width) #ifdef FEAT_RIGHTLEFT && !curwin->w_p_rl) ! || (curwin->w_p_rl && (col > p_pw || col > max_width) #endif )) { *************** *** 244,260 **** pum_width = Columns - pum_col - pum_scrollbar; if (pum_width > max_width + pum_kind_width + pum_extra_width + 1 ! && pum_width > pum_get_width()) { /* the width is too much, make it narrower */ pum_width = max_width + pum_kind_width + pum_extra_width + 1; ! if (pum_width < pum_get_width()) ! pum_width = pum_get_width(); } ! else if (((col > pum_get_width() || col > max_width) #ifdef FEAT_RIGHTLEFT && !curwin->w_p_rl) ! || (curwin->w_p_rl && (col < Columns - pum_get_width() || col < Columns - max_width) #endif )) --- 235,251 ---- pum_width = Columns - pum_col - pum_scrollbar; if (pum_width > max_width + pum_kind_width + pum_extra_width + 1 ! && pum_width > p_pw) { /* the width is too much, make it narrower */ pum_width = max_width + pum_kind_width + pum_extra_width + 1; ! if (pum_width < p_pw) ! pum_width = p_pw; } ! else if (((col > p_pw || col > max_width) #ifdef FEAT_RIGHTLEFT && !curwin->w_p_rl) ! || (curwin->w_p_rl && (col < Columns - p_pw || col < Columns - max_width) #endif )) *************** *** 282,290 **** #endif pum_width = pum_col - pum_scrollbar; ! if (pum_width < pum_get_width()) { ! pum_width = pum_get_width(); #ifdef FEAT_RIGHTLEFT if (curwin->w_p_rl) { --- 273,281 ---- #endif pum_width = pum_col - pum_scrollbar; ! if (pum_width < p_pw) { ! pum_width = p_pw; #ifdef FEAT_RIGHTLEFT if (curwin->w_p_rl) { *************** *** 300,311 **** } else if (pum_width > max_width + pum_kind_width + pum_extra_width + 1 ! && pum_width > pum_get_width()) { pum_width = max_width + pum_kind_width + pum_extra_width + 1; ! if (pum_width < pum_get_width()) ! pum_width = pum_get_width(); } } --- 291,302 ---- } else if (pum_width > max_width + pum_kind_width + pum_extra_width + 1 ! && pum_width > p_pw) { pum_width = max_width + pum_kind_width + pum_extra_width + 1; ! if (pum_width < p_pw) ! pum_width = p_pw; } } *************** *** 323,330 **** } else { ! if (max_width > pum_get_width()) ! max_width = pum_get_width(); /* truncate */ #ifdef FEAT_RIGHTLEFT if (curwin->w_p_rl) pum_col = max_width - 1; --- 314,321 ---- } else { ! if (max_width > p_pw) ! max_width = p_pw; /* truncate */ #ifdef FEAT_RIGHTLEFT if (curwin->w_p_rl) pum_col = max_width - 1; *** ../vim-8.0.1494/src/option.c 2018-02-10 15:36:51.138901636 +0100 --- src/option.c 2018-02-10 18:27:15.124633981 +0100 *************** *** 2245,2251 **** #else (char_u *)NULL, PV_NONE, #endif ! {(char_u *)0L, (char_u *)0L} SCRIPTID_INIT}, {"pythonthreedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, #if defined(DYNAMIC_PYTHON3) (char_u *)&p_py3dll, PV_NONE, --- 2245,2251 ---- #else (char_u *)NULL, PV_NONE, #endif ! {(char_u *)15L, (char_u *)15L} SCRIPTID_INIT}, {"pythonthreedll", NULL, P_STRING|P_EXPAND|P_VI_DEF|P_SECURE, #if defined(DYNAMIC_PYTHON3) (char_u *)&p_py3dll, PV_NONE, *** ../vim-8.0.1494/src/version.c 2018-02-10 18:15:00.758098776 +0100 --- src/version.c 2018-02-10 18:28:08.728245657 +0100 *************** *** 773,774 **** --- 773,776 ---- { /* Add new patch number below this line */ + /**/ + 1495, /**/ -- A mathematician is a device for turning coffee into theorems. Paul Erdos A computer programmer is a device for turning coffee into bugs. Bram Moolenaar /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///