Hi,

On Thu, Jan 19, 2017 at 3:56 PM, Zhen-Huan (Kenny) Hu
<[email protected]> wrote:
> #ifdef FEAT_INS_EXPAND
> if (ctrl_x_mode != 0)
>    buf[0] = 'x';
> else
> #endif
>
> I tested the code. mode() all returns x as expected when pressing <C-x>
> alone, or combined with <C-d>, <C-f>, <C-i>, <C-v>, <C-l>, <C-s>, <C-o>, as
> well as <C-e>, <C-y>
>
> Pressing <C-x><C-n> or <C-x><C-p>, mode() returns i.
>
> I agree it should be ix since it's a sub-mode.
>

An updated patch to return either "ix" or "Rx" is attached.

- Yegappan

-- 
-- 
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 [email protected].
For more options, visit https://groups.google.com/d/optout.
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)
     {

Raspunde prin e-mail lui