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
commit6ae84f05e684e7e3735ad230ab66f6cc67465770 (patch)
tree57b79799cc2133a9db719d87afb52c5955cb391a
parentb9345eca5f78410b14086b5765a8aa34081f393f (diff)
downloadvim-6ae84f05e684e7e3735ad230ab66f6cc67465770.tar.gz
updated for version 7.3.734v7.3.734v7-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 889ea620..0bef623c 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 3582fbc9..87762a97 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,