summaryrefslogtreecommitdiff
path: root/src/normal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/normal.c')
-rw-r--r--src/normal.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/normal.c b/src/normal.c
index 86d4504a9..987705d4c 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -5302,15 +5302,25 @@ handle_tabmenu()
break;
case TABLINE_MENU_NEW:
- vim_snprintf((char *)IObuff, IOSIZE, "%dtabnew",
- current_tab > 0 ? current_tab - 1 : 999);
- do_cmdline_cmd(IObuff);
+ if (current_tab == 0)
+ do_cmdline_cmd((char_u *)"$tabnew");
+ else
+ {
+ vim_snprintf((char *)IObuff, IOSIZE, "%dtabnew",
+ current_tab - 1);
+ do_cmdline_cmd(IObuff);
+ }
break;
case TABLINE_MENU_OPEN:
- vim_snprintf((char *)IObuff, IOSIZE, "browse %dtabnew",
- current_tab > 0 ? current_tab - 1 : 999);
- do_cmdline_cmd(IObuff);
+ if (current_tab == 0)
+ do_cmdline_cmd((char_u *)"browse $tabnew");
+ else
+ {
+ vim_snprintf((char *)IObuff, IOSIZE, "browse %dtabnew",
+ current_tab - 1);
+ do_cmdline_cmd(IObuff);
+ }
break;
}
}