changeset 6228:cb5480096f1b v7.4.449

updated for version 7.4.449 Problem: Can't easily close the help window. (Chris Gaal) Solution: Add ":helpclose". (Christian Brabandt)
author Bram Moolenaar <bram@vim.org>
date Fri, 19 Sep 2014 19:39:34 +0200
parents 3898fa630d12
children 2039eadc0884
files runtime/doc/helphelp.txt runtime/doc/index.txt src/ex_cmds.c src/ex_cmds.h src/proto/ex_cmds.pro src/version.c
diffstat 6 files changed, 27 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/helphelp.txt
+++ b/runtime/doc/helphelp.txt
@@ -96,6 +96,9 @@ 1. Help commands					*online-help*
 			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
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1244,6 +1244,7 @@ tag	      command	      action ~
 |: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
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -5899,6 +5899,24 @@ erret:
     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)
 /*
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -417,6 +417,8 @@ EX(CMD_gvim,		"gvim",		ex_gui,
 			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,
--- a/src/proto/ex_cmds.pro
+++ b/src/proto/ex_cmds.pro
@@ -44,6 +44,7 @@ void write_viminfo_sub_string __ARGS((FI
 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));
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    449,
+/**/
     448,
 /**/
     447,