On Wed, Feb 24, 2016 at 9:56 PM, Bram Moolenaar <[email protected]> wrote: > > Takuya Fujiwara wrote: > >> After 'make && make install' in Vim source directory, >> runtime/doc/tags gets modified in current HEAD (Patch 7.4.1412). >> >> Normally tags file is not managed under version control. >> I know tags file is needed to look up runtime's help, >> but the tags file is generated by 'make install'. >> I don't think you need to git-add runtime/doc/tags file. >> >> So could you git-rm runtime/doc/tags? >> Or could you update tags at each commit? > > This was mentioned before, and I haven't thought of a good solution yet. > I think the tags file should be included, so that the help works without > installing Vim. This is for systems that don't actually install. > > I think the main problem is that "make install" overwrites the > distributed tags file. We could make it generate the tags file > elsewhere, so that the original remains unchanged. > > Would that work? >
Maybe I was the one who "mentioned it earlier". Here is my usecase at the moment (using Mercurial and C. Brabandt's mirror on bitbucket, because unlike Mercurial, git is foreign to me: if I have a choice I'll always prefer the former over the latter): I have added runtime/doc/tags to my .hgignore file; I also have local changes to src/feature.h to add or remove a couple of features for which AFAIK there is no configure switch (setting -tag_old_static +xterm_save). Under the previous (13.2) release of openSUSE Linux the only problem with that was that I had better set $PYTHONUNBUFFERED to something other than the empty string (I use "export PYTHONUNBUFFERED=unbuffered" in my bash startup script) so that I would see Mercurial's question (when there was a change to the tagfile on the remote repository) asking me if I wanted to get the changed file or keep it "deleted" (i.e. not under version control). (Without that environment variable, and because I use tee to log the Mercurial runs, the question would still be invisible, in Python's stdout buffer, when Mercurial waited for my answer.) With Mercurial 3.5.1 as included with openSUSE Leap 42.1, that is not enough: if I try to "hg fetch" one or more changesets including a change to the tagfile, and I have a tagfile present not under version control, the first part (pull) of the fetch will succeed and the second part (merge) will fail; then I have to manually delete the tagfile, manually merge, and manually commit the merge. (It took me a number of trials and errors to find that out.) (N.B. "hg fetch", which requires an extension, is now deprecated, but won't be removed, and works for me; it means "pull, merge if necessary, and update to tip"; "hg pull" means "get the changes, but don't apply them unless there is a -u switch on the hg pull command-line". This is IIUC the opposite of what pull and fetch mean under git.) What works is to check the files in "hg incoming" by eyeball, with ui.verbose set to true, and delete runtime/doc/tags manually before fetching if there are changes to the tagfile: then hg fetch will ask me the same question it used to, and run to completion after I hit d (delete). "make install" will subsequently regenerate the tagfile; or if there is a compilation failure preventing an install, the production tagfile at $VIMRUNTIME/doc/tags will be kept. Best regards, Tony. -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
