summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2012-11-28 16:06:22 +0100
committerBram Moolenaar <Bram@vim.org>2012-11-28 16:06:22 +0100
commit442b5c48fd27f88357dedc3161bde01b5d99e0d2 (patch)
tree9c218310ab9046880582bfbcf2c82b1224ae417f
parent8866d277c97632d013c56b12a4bb98701d4a9ae0 (diff)
downloadvim-442b5c48fd27f88357dedc3161bde01b5d99e0d2.zip
updated for version 7.3.734
Problem: Cannot put help files in a sub-directory. Solution: Make :helptags work for sub-directories. (Charles Campbell)
-rw-r--r--src/ex_cmds.c15
-rw-r--r--src/version.c2
2 files changed, 10 insertions, 7 deletions
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 889ea6203..0bef623c0 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -6344,10 +6344,10 @@ ex_helptags(eap)
}
#ifdef FEAT_MULTI_LANG
- /* Get a list of all files in the directory. */
+ /* Get a list of all files in the help directory and in subdirectories. */
STRCPY(NameBuff, dirname);
add_pathsep(NameBuff);
- STRCAT(NameBuff, "*");
+ STRCAT(NameBuff, "**");
if (gen_expand_wildcards(1, &NameBuff, &filecount, &files,
EW_FILE|EW_SILENT) == FAIL
|| filecount == 0)
@@ -6436,8 +6436,8 @@ ex_helptags(eap)
helptags_one(dir, ext, tagfname, add_help_tags)
char_u *dir; /* doc directory */
char_u *ext; /* suffix, ".txt", ".itx", ".frx", etc. */
- char_u *tagfname; /* "tags" for English, "tags-fr" for French. */
- int add_help_tags; /* add "help-tags" tag */
+ char_u *tagfname; /* "tags" for English, "tags-fr" for French. */
+ int add_help_tags; /* add "help-tags" tag */
{
FILE *fd_tags;
FILE *fd;
@@ -6449,6 +6449,7 @@ helptags_one(dir, ext, tagfname, add_help_tags)
char_u *s;
int i;
char_u *fname;
+ int dirlen;
# ifdef FEAT_MBYTE
int utf8 = MAYBE;
int this_utf8;
@@ -6459,9 +6460,9 @@ helptags_one(dir, ext, tagfname, add_help_tags)
/*
* Find all *.txt files.
*/
+ dirlen = STRLEN(dir);
STRCPY(NameBuff, dir);
- add_pathsep(NameBuff);
- STRCAT(NameBuff, "*");
+ STRCAT(NameBuff, "/**/*");
STRCAT(NameBuff, ext);
if (gen_expand_wildcards(1, &NameBuff, &filecount, &files,
EW_FILE|EW_SILENT) == FAIL
@@ -6522,7 +6523,7 @@ helptags_one(dir, ext, tagfname, add_help_tags)
EMSG2(_("E153: Unable to open %s for reading"), files[fi]);
continue;
}
- fname = gettail(files[fi]);
+ fname = files[fi] + dirlen + 1;
# ifdef FEAT_MBYTE
firstline = TRUE;
diff --git a/src/version.c b/src/version.c
index 3582fbc99..87762a978 100644
--- a/src/version.c
+++ b/src/version.c
@@ -726,6 +726,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 734,
+/**/
733,
/**/
732,