aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_docmd.c
diff options
context:
space:
mode:
authorJames McCoy <jamessan@jamessan.com>2017-01-12 06:45:03 -0500
committerGitHub <noreply@github.com>2017-01-12 06:45:03 -0500
commit50d0d891299c111c5e349c084ef146facfaad009 (patch)
tree9e8890cb34ea5178900a37df8a61fbc2711c0f73 /src/nvim/ex_docmd.c
parent207ba359b0127fa5893b980abcb9186ffec1879c (diff)
parentf2dff864934eeb4eaefee577fbdcc5e4969c3864 (diff)
downloadrneovim-50d0d891299c111c5e349c084ef146facfaad009.tar.gz
rneovim-50d0d891299c111c5e349c084ef146facfaad009.tar.bz2
rneovim-50d0d891299c111c5e349c084ef146facfaad009.zip
Merge pull request #5932 from jamessan/icm-fixes
inccommand: Ignore errors during preview and make cmd_can_preview stricter
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r--src/nvim/ex_docmd.c19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c
index eccece7ac7..19691ccc3a 100644
--- a/src/nvim/ex_docmd.c
+++ b/src/nvim/ex_docmd.c
@@ -9674,9 +9674,20 @@ bool cmd_can_preview(char_u *cmd)
if (*ea.cmd == '*') {
ea.cmd = skipwhite(ea.cmd + 1);
}
- find_command(&ea, NULL);
+ char_u *end = find_command(&ea, NULL);
- return ea.cmdidx == CMD_substitute
- || ea.cmdidx == CMD_smagic
- || ea.cmdidx == CMD_snomagic;
+ switch (ea.cmdidx) {
+ case CMD_substitute:
+ case CMD_smagic:
+ case CMD_snomagic:
+ // Only preview once the pattern delimiter has been typed
+ if (*end && !ASCII_ISALNUM(*end)) {
+ return true;
+ }
+ break;
+ default:
+ break;
+ }
+
+ return false;
}