comparison src/ex_docmd.c @ 7703:39251e981d1f v7.4.1150

commit https://github.com/vim/vim/commit/25281634cda03ce302aaf9f906a9520b5f81f91e Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jan 21 23:32:32 2016 +0100 patch 7.4.1150 Problem: 'langmap' applies to the first character typed in Select mode. (David Watson) Solution: Check for SELECTMODE. (Christian Brabandt, closes https://github.com/vim/vim/issues/572) Add the 'x' flag to feedkeys().
author Christian Brabandt <cb@256bit.org>
date Thu, 21 Jan 2016 23:45:06 +0100
parents b80fb2cfd62b
children af3c41a3c53f
comparison
equal deleted inserted replaced
7702:c000f1b8a3ce 7703:39251e981d1f
10224 exec_normal_cmd(cmd, remap, silent) 10224 exec_normal_cmd(cmd, remap, silent)
10225 char_u *cmd; 10225 char_u *cmd;
10226 int remap; 10226 int remap;
10227 int silent; 10227 int silent;
10228 { 10228 {
10229 /* Stuff the argument into the typeahead buffer. */
10230 ins_typebuf(cmd, remap, 0, TRUE, silent);
10231 exec_normal(FALSE);
10232 }
10233 #endif
10234
10235 #if defined(FEAT_EX_EXTRA) || defined(FEAT_MENU) || defined(FEAT_EVAL) \
10236 || defined(PROTO)
10237 /*
10238 * Execute normal_cmd() until there is no typeahead left.
10239 */
10240 void
10241 exec_normal(int was_typed)
10242 {
10229 oparg_T oa; 10243 oparg_T oa;
10230 10244
10231 /*
10232 * Stuff the argument into the typeahead buffer.
10233 * Execute normal_cmd() until there is no typeahead left.
10234 */
10235 clear_oparg(&oa); 10245 clear_oparg(&oa);
10236 finish_op = FALSE; 10246 finish_op = FALSE;
10237 ins_typebuf(cmd, remap, 0, TRUE, silent); 10247 while ((!stuff_empty() || ((was_typed || !typebuf_typed())
10238 while ((!stuff_empty() || (!typebuf_typed() && typebuf.tb_len > 0)) 10248 && typebuf.tb_len > 0)) && !got_int)
10239 && !got_int)
10240 { 10249 {
10241 update_topline_cursor(); 10250 update_topline_cursor();
10242 normal_cmd(&oa, TRUE); /* execute a Normal mode cmd */ 10251 normal_cmd(&oa, TRUE); /* execute a Normal mode cmd */
10243 } 10252 }
10244 } 10253 }