diff --git a/src/buffer.c b/src/buffer.c
index 6dfe007..97c6596 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -2071,17 +2071,21 @@
 	 * "buf" if one exists */
 	if (swb_flags & SWB_USEOPEN)
 	    wp = buf_jump_open_win(buf);
+
 	/* If 'switchbuf' contains "usetab": jump to first window in any tab
 	 * page containing "buf" if one exists */
 	if (wp == NULL && (swb_flags & SWB_USETAB))
 	    wp = buf_jump_open_tab(buf);
-	/* If 'switchbuf' contains "split" or "newtab" and the current buffer
-	 * isn't empty: open new window */
-	if (wp == NULL && (swb_flags & (SWB_SPLIT | SWB_NEWTAB)) && !bufempty())
+
+	/* If 'switchbuf' contains "split", "vsplit" or "newtab" and the
+	 * current buffer isn't empty: open new tab or window */
+	if (wp == NULL && (swb_flags & (SWB_VSPLIT | SWB_SPLIT | SWB_NEWTAB))
+							       && !bufempty())
 	{
-	    if (swb_flags & SWB_NEWTAB)		/* Open in a new tab */
+	    if (swb_flags & SWB_NEWTAB)
 		tabpage_new();
-	    else if (win_split(0, 0) == FAIL)	/* Open in a new window */
+	    else if (win_split(0, (swb_flags & SWB_VSPLIT) ? WSP_VERT : 0)
+								      == FAIL)
 		return FAIL;
 	    RESET_BINDING(curwin);
 	}
diff --git a/src/option.h b/src/option.h
index b031466..7c7d35a 100644
--- a/src/option.h
+++ b/src/option.h
@@ -765,12 +765,13 @@
 EXTERN char_u	*p_swb;		/* 'switchbuf' */
 EXTERN unsigned	swb_flags;
 #ifdef IN_OPTION_C
-static char *(p_swb_values[]) = {"useopen", "usetab", "split", "newtab", NULL};
+static char *(p_swb_values[]) = {"useopen", "usetab", "split", "newtab", "vsplit", NULL};
 #endif
 #define SWB_USEOPEN		0x001
 #define SWB_USETAB		0x002
 #define SWB_SPLIT		0x004
 #define SWB_NEWTAB		0x008
+#define SWB_VSPLIT		0x010
 EXTERN int	p_tbs;		/* 'tagbsearch' */
 EXTERN long	p_tl;		/* 'taglength' */
 EXTERN int	p_tr;		/* 'tagrelative' */
diff --git a/src/version.c b/src/version.c
index 6fc420c..197b6ea 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    742,
+/**/
     741,
 /**/
     740,
