diff --git a/runtime/doc/helphelp.txt b/runtime/doc/helphelp.txt
index 87f095e..e7d281a 100644
--- a/runtime/doc/helphelp.txt
+++ b/runtime/doc/helphelp.txt
@@ -96,6 +96,9 @@
 			find a tag in a file with the same language as the
 			current file.  See |help-translated|.
 
+						 	*:helpc* *:helpclose*
+:helpc[lose]            Close one help window.
+
 							*:helpg* *:helpgrep*
 :helpg[rep] {pattern}[@xx]
 			Search all help text files and make a list of lines
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index cda1768..d16ad9a 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1244,6 +1244,7 @@
 |:gvim|		:gv[im]		start the GUI
 |:hardcopy|	:ha[rdcopy]	send text to the printer
 |:help|		:h[elp]		open a help window
+|:helpclose|	:helpc[lose]	close one help window
 |:helpfind|	:helpf[ind]	dialog to open a help window
 |:helpgrep|	:helpg[rep]	like ":grep" but searches help files
 |:helptags|	:helpt[ags]	generate help tags for a directory
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 2a81eb7..4ae996c 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -5899,6 +5899,24 @@
     vim_free(tag);
 }
 
+/*
+ * ":helpclose": Close the help window
+ */
+    void
+ex_helpclose(eap)
+    exarg_T	*eap UNUSED;
+{
+    win_T *win;
+
+    FOR_ALL_WINDOWS(win)
+    {
+	if (win->w_buffer->b_help)
+	{
+	    win_close(win, FALSE);
+	    break;
+	}
+    }
+}
 
 #if defined(FEAT_MULTI_LANG) || defined(PROTO)
 /*
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index 41d3a64..f3007c9 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -417,6 +417,8 @@
 			BANG|FILES|EDITCMD|ARGOPT|TRLBAR|CMDWIN),
 EX(CMD_help,		"help",		ex_help,
 			BANG|EXTRA|NOTRLCOM),
+EX(CMD_helpclose,	"helpclose",	ex_helpclose,
+			RANGE|NOTADR|COUNT|TRLBAR),
 EX(CMD_helpfind,	"helpfind",	ex_helpfind,
 			EXTRA|NOTRLCOM),
 EX(CMD_helpgrep,	"helpgrep",	ex_helpgrep,
diff --git a/src/proto/ex_cmds.pro b/src/proto/ex_cmds.pro
index a94f5d0..8757637 100644
--- a/src/proto/ex_cmds.pro
+++ b/src/proto/ex_cmds.pro
@@ -44,6 +44,7 @@
 void free_old_sub __ARGS((void));
 int prepare_tagpreview __ARGS((int undo_sync));
 void ex_help __ARGS((exarg_T *eap));
+void ex_helpclose __ARGS((exarg_T *eap));
 char_u *check_help_lang __ARGS((char_u *arg));
 int help_heuristic __ARGS((char_u *matched_string, int offset, int wrong_case));
 int find_help_tags __ARGS((char_u *arg, int *num_matches, char_u ***matches, int keep_lang));
diff --git a/src/version.c b/src/version.c
index 7007e88..83dfeaa 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    449,
+/**/
     448,
 /**/
     447,
