updated for version 7.0196
diff --git a/src/eval.c b/src/eval.c
index 3044ef8..50f688a 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -15378,7 +15378,21 @@
return NULL;
return pp;
}
- if (name[0] == '$') /* last column or line */
+ if (name[0] == 'w' && lnum)
+ {
+ pos.col = 0;
+ if (name[1] == '0') /* "w0": first visible line */
+ {
+ pos.lnum = curwin->w_topline;
+ return &pos;
+ }
+ else if (name[1] == '$') /* "w$": last visible line */
+ {
+ pos.lnum = curwin->w_botline - 1;
+ return &pos;
+ }
+ }
+ else if (name[0] == '$') /* last column or line */
{
if (lnum)
{