# HG changeset patch # User Bram Moolenaar # Date 1354115182 -3600 # Node ID fc8b4a06af9db05af800b1304599afd3e1229980 # Parent 7120c70c42feb4bbb53cd50eb537f19b450b7839 updated for version 7.3.734 Problem: Cannot put help files in a sub-directory. Solution: Make :helptags work for sub-directories. (Charles Campbell) diff --git a/src/ex_cmds.c b/src/ex_cmds.c --- 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_hel 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_hel /* * 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_hel 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 --- 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,