vim-patch:7.4.314

Problem:    Completion messages can get in the way of a plugin.
Solution:   Add 'c' flag to 'shortmess' option. (Shougo Matsu)

https://code.google.com/p/vim/source/detail?r=4d7af1962d6ce61df65fdc5c86544a61951f9517
This commit is contained in:
Damián Silvani 2014-07-20 12:35:29 -03:00
parent 6d45309797
commit fc93536a90
4 changed files with 23 additions and 13 deletions

View File

@ -3151,7 +3151,9 @@ static int ins_compl_prep(int c)
ins_compl_free();
compl_started = FALSE;
compl_matches = 0;
msg_clr_cmdline(); /* necessary for "noshowmode" */
if (!shortmess(SHM_COMPLETIONMENU)) {
msg_clr_cmdline(); // necessary for "noshowmode"
}
ctrl_x_mode = 0;
compl_enter_selects = FALSE;
if (edit_submode != NULL) {
@ -4378,7 +4380,9 @@ static int ins_complete(int c)
if (col == -3) {
ctrl_x_mode = 0;
edit_submode = NULL;
msg_clr_cmdline();
if (!shortmess(SHM_COMPLETIONMENU)) {
msg_clr_cmdline();
}
return FAIL;
}
@ -4597,13 +4601,17 @@ static int ins_complete(int c)
/* Show a message about what (completion) mode we're in. */
showmode();
if (edit_submode_extra != NULL) {
if (!p_smd)
msg_attr(edit_submode_extra,
edit_submode_highl < HLF_COUNT
? hl_attr(edit_submode_highl) : 0);
} else
msg_clr_cmdline(); /* necessary for "noshowmode" */
if (!shortmess(SHM_COMPLETIONMENU)) {
if (edit_submode_extra != NULL) {
if (!p_smd) {
msg_attr(edit_submode_extra,
edit_submode_highl < HLF_COUNT
? hl_attr(edit_submode_highl) : 0);
}
} else {
msg_clr_cmdline(); // necessary for "noshowmode"
}
}
/* Show the popup menu, unless we got interrupted. */
if (!compl_interrupted) {

View File

@ -185,7 +185,8 @@
#define SHM_SEARCH 's' /* no search hit bottom messages */
#define SHM_ATTENTION 'A' /* no ATTENTION messages */
#define SHM_INTRO 'I' /* intro messages */
#define SHM_ALL "rmfixlnwaWtToOsAI" /* all possible flags for 'shm' */
#define SHM_COMPLETIONMENU 'c' // completion menu messages
#define SHM_ALL "rmfixlnwaWtToOsAIc" /* all possible flags for 'shm' */
/* characters for p_go: */
#define GO_ASEL 'a' /* autoselect */

View File

@ -41,7 +41,7 @@
*
* The part of the buffer that is displayed in a window is set with:
* - w_topline (first buffer line in window)
* - w_topfill (filler line above the first line)
* - w_topfill (filler lines above the first line)
* - w_leftcol (leftmost window cell in window),
* - w_skipcol (skipped window cells of first line)
*
@ -7341,7 +7341,8 @@ int showmode(void)
attr = hl_attr(HLF_CM); /* Highlight mode */
if (do_mode) {
MSG_PUTS_ATTR("--", attr);
if (edit_submode != NULL) { /* CTRL-X in Insert mode */
// CTRL-X in Insert mode
if (edit_submode != NULL && !shortmess(SHM_COMPLETIONMENU)) {
/* These messages can get long, avoid a wrap in a narrow
* window. Prefer showing edit_submode_extra. */
length = (Rows - msg_row) * Columns - 3;

View File

@ -235,7 +235,7 @@ static int included_patches[] = {
//317,
//316,
315,
//314,
314,
//313,
//312,
//311,