[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Generation of tags for the current project on the fly
From: |
Dmitry Gutov |
Subject: |
Re: Generation of tags for the current project on the fly |
Date: |
Fri, 19 Jan 2018 04:21:05 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:58.0) Gecko/20100101 Thunderbird/58.0 |
On 1/18/18 03:14, Dmitry Gutov wrote:
Dmitry> I'm sure it would be helpful, even if only to study the approach.
I pushed it to feature/etags-update.
Thanks! I'll do some benchmarking if nobody beats me to it.
The first result: 'make tags' never finishes with that version. Here's
the last output before it's stuck:
../lib-src/etags --include=../lisp/TAGS --include=../lwlib/TAGS \
--regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/\1/' \
--regex='{c}/[ ]*DEFVAR_[A-Z_ (]+"[^"]+",[
]\([A-Za-z0-9_]+\)/\1/' \
./character.c <...many lines here...> ./systime.h \
--regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/\1/' \
--regex='{objc}/[ ]*DEFVAR_[A-Z_ (]+"[^"]+",[
]\([A-Za-z0-9_]+\)/\1/' \
./macfont.m ./nsfont.m ./nsmenu.m ./nsterm.m ./nsselect.m ./nsfns.m
./nsimage.m
Tried it several times, including after 'make bootstrap'.
And here's another way to make it freeze:
find . -name "*.[ch]" | lib-src/etags - -o TAGS
(But both *.c and *.h finish okay separately).
Other than that:
1. '-u' doesn't seem to be statistically significantly slower than
without (good), but maybe I haven't tested large enough repos.
2. Not sure I understand how .etags works. How do I tell it to only
index *.c files? Any presence of wildcard ignore (!*) makes 'etags
--find' index nothing.
3. 'lib-src/etags src/category.c -u -o TAGS' results in having only that
file's tags inside TAGS (before, it contained the entries for all .c
files). This behavior contradicts the help and stops the rest of my
testing in its tracks.
- Re: Generation of tags for the current project on the fly, (continued)
- Re: Generation of tags for the current project on the fly, Eli Zaretskii, 2018/01/17
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly, Eli Zaretskii, 2018/01/17
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly, Tom Tromey, 2018/01/17
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly, Tom Tromey, 2018/01/17
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly,
Dmitry Gutov <=
- Re: Generation of tags for the current project on the fly, Tom Tromey, 2018/01/20
- Re: Generation of tags for the current project on the fly, Tom Tromey, 2018/01/20
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/21
- Re: Generation of tags for the current project on the fly, Tom Tromey, 2018/01/29
- Re: Generation of tags for the current project on the fly, Tom Tromey, 2018/01/30
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/17
- Re: Generation of tags for the current project on the fly, John Yates, 2018/01/14
- Re: Generation of tags for the current project on the fly, Eli Zaretskii, 2018/01/15
- Re: Generation of tags for the current project on the fly, Dmitry Gutov, 2018/01/15
- Re: Generation of tags for the current project on the fly, Eli Zaretskii, 2018/01/15