mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 7.4.1753
Problem: "noinsert" in 'completeopt' is sometimes ignored. Solution: Set the variables when the 'completeopt' was set. (Ozaki Kiichi)
This commit is contained in:
parent
8d8aa0a367
commit
c020042083
22
src/edit.c
22
src/edit.c
@ -2760,6 +2760,21 @@ ins_compl_make_cyclic(void)
|
|||||||
return count;
|
return count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Set variables that store noselect and noinsert behavior from the
|
||||||
|
* 'completeopt' value.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
completeopt_was_set()
|
||||||
|
{
|
||||||
|
compl_no_insert = FALSE;
|
||||||
|
compl_no_select = FALSE;
|
||||||
|
if (strstr((char *)p_cot, "noselect") != NULL)
|
||||||
|
compl_no_select = TRUE;
|
||||||
|
if (strstr((char *)p_cot, "noinsert") != NULL)
|
||||||
|
compl_no_insert = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Start completion for the complete() function.
|
* Start completion for the complete() function.
|
||||||
* "startcol" is where the matched text starts (1 is first column).
|
* "startcol" is where the matched text starts (1 is first column).
|
||||||
@ -3675,13 +3690,6 @@ ins_compl_prep(int c)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
compl_no_insert = FALSE;
|
|
||||||
compl_no_select = FALSE;
|
|
||||||
if (strstr((char *)p_cot, "noselect") != NULL)
|
|
||||||
compl_no_select = TRUE;
|
|
||||||
if (strstr((char *)p_cot, "noinsert") != NULL)
|
|
||||||
compl_no_insert = TRUE;
|
|
||||||
|
|
||||||
if (ctrl_x_mode == CTRL_X_NOT_DEFINED_YET)
|
if (ctrl_x_mode == CTRL_X_NOT_DEFINED_YET)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@ -6951,6 +6951,8 @@ did_set_string_option(
|
|||||||
{
|
{
|
||||||
if (check_opt_strings(p_cot, p_cot_values, TRUE) != OK)
|
if (check_opt_strings(p_cot, p_cot_values, TRUE) != OK)
|
||||||
errmsg = e_invarg;
|
errmsg = e_invarg;
|
||||||
|
else
|
||||||
|
completeopt_was_set();
|
||||||
}
|
}
|
||||||
#endif /* FEAT_INS_EXPAND */
|
#endif /* FEAT_INS_EXPAND */
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ void truncate_spaces(char_u *line);
|
|||||||
void backspace_until_column(int col);
|
void backspace_until_column(int col);
|
||||||
int vim_is_ctrl_x_key(int c);
|
int vim_is_ctrl_x_key(int c);
|
||||||
int ins_compl_add_infercase(char_u *str, int len, int icase, char_u *fname, int dir, int flags);
|
int ins_compl_add_infercase(char_u *str, int len, int icase, char_u *fname, int dir, int flags);
|
||||||
|
void completeopt_was_set(void);
|
||||||
void set_completion(colnr_T startcol, list_T *list);
|
void set_completion(colnr_T startcol, list_T *list);
|
||||||
void ins_compl_show_pum(void);
|
void ins_compl_show_pum(void);
|
||||||
char_u *find_word_start(char_u *ptr);
|
char_u *find_word_start(char_u *ptr);
|
||||||
|
@ -748,6 +748,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1753,
|
||||||
/**/
|
/**/
|
||||||
1752,
|
1752,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user