updated for version 7.4b.009
Problem: When setting the Visual area manually and 'selection' is
exclusive, a yank includes one character too much. (Ingo Karkat)
Solution: Default the Visual operation to "v". (Christian Brabandt)
diff --git a/src/mark.c b/src/mark.c
index f31f53b..1ac91d8 100644
--- a/src/mark.c
+++ b/src/mark.c
@@ -99,14 +99,15 @@
}
#ifdef FEAT_VISUAL
- if (c == '<')
+ if (c == '<' || c == '>')
{
- curbuf->b_visual.vi_start = *pos;
- return OK;
- }
- if (c == '>')
- {
- curbuf->b_visual.vi_end = *pos;
+ if (c == '<')
+ curbuf->b_visual.vi_start = *pos;
+ else
+ curbuf->b_visual.vi_end = *pos;
+ if (curbuf->b_visual.vi_mode == NUL)
+ /* Visual_mode has not yet been set, use a sane default. */
+ curbuf->b_visual.vi_mode = 'v';
return OK;
}
#endif