Mercurial > vim
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 } |