Hi Yegappan, 2017-1-23(Mon) 2:40:48 UTC+9 yega...@gmail.com: > Hi, > > On Fri, Jan 20, 2017 at 12:35 PM, Zhen-Huan (Kenny) Hu > <vim-dev-git...@256bit.org> wrote: > > diff --git a/src/evalfunc.c b/src/evalfunc.c > > index 4b6bfaa..1f3164f 100644 > > --- a/src/evalfunc.c > > +++ b/src/evalfunc.c > > @@ -7765,10 +7765,16 @@ f_mode(typval_T *argvars, typval_T *rettv) > > } > > else > > #endif > > - if (State & REPLACE_FLAG) > > - buf[0] = 'R'; > > - else > > - buf[0] = 'i'; > > + { > > + if (State & REPLACE_FLAG) > > + buf[0] = 'R'; > > + else > > + buf[0] = 'i'; > > +#ifdef FEAT_INS_EXPAND > > + if (ctrl_x_mode != 0) > > + buf[1] = 'x'; > > +#endif > > + } > > } > > else if (State & CMDLINE) > > { > > > > I tested CTRL-X under both replace mode and insert mode. Under replace mode, > > mode(1) returns Rx and under insert mode, it returns ix. > > > > As a side note, why CTRL-N/P and CTRL-X + CTRL-N/P behave differently than > > CTRL-X + others. It seems if CTRL-N/P cannot find a match, it will > > automatically return to the insert mode. If CTRL-X + others cannot find a > > match, it will stay under CTRL-X mode? > > > > Based on the patch from Hirohito, I have adjusted the patch to handle > this case. Try using the attached patch.
`ins_compl_active()` should be referenced before referring to `ctrl_x_mode`. My patch's 'x' means "wait for CTRL-X mode selection". That is, when the following text is displayed on the last line. -- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) Thanks. -- Best regards, Hirohito Higashi (a.k.a. h_east) -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.