Re: GNU Global Parsing Suffixless Files Patch

Shigio YAMAGUCHI <[email protected]>
Newsgroups gmane.comp.gnu.global.bugs
Message-ID <CADJmJYqLJhwDO1aD+iS45pgz+KQqN1QCAa_qrobt5R3XX_q4aQ@mail.gmail.com>
Hi,
Thank you for the patch and suggestion.

I'd like to separate this issue in two cases.

case1: Files under the specific directory like /usr/include/c++/4.2.1

Should that be written on the configuration file as a rule?
In fact shouldn't that be written on the command line of gtags?

$ gtags --language-force=C++:include --language-force=C++:project/include

--language-force=<language>:<file or directory>
If it is a file, it is considered <language> source file.
If it is a directory, all files under it are considered <language>
source file.

If needed, you can make this option default:

# Making project base gtags.conf
$ echo 'default: GTAGS_OPTIONS=--language-force=C++\:include \
--language-force=C++\:project/include' >gtags.conf
$ gtags         # gtags is executed as 'gtags --language-force=...'

case2: Files which have a specific name like 'Makefile'

Since it is considered as a rule, it should be written on the configuration
file, I think. For example, 'Makefile' should be written like:

[gtags.conf]
# A pattern matches only to files.
:langmap=cpp\:([Mm]akefile).mk.mak:

'(<pattern>)' is a syntax of ctags(1)'s langmap. Since I borrowed 'langmap'
from ctags(1), I would like to copy that again.

What do you think?

Regards,
Shigio


2016-09-21 23:52 GMT+09:00 Cooper, Anthony <[email protected]>:

> SECURITY CLASSIFICATION: OFFICIAL
>
>
>        Hi all,
>
>         I've included a patch that allows global to parse and index files
> without an extension (typically C++ header files, e.g.
> /usr/include/c++/4.8/algorithm and many more). This works by having a set
> of rules whereby a user can specify path regexs and the corresponding
> source file types for files without a suffix. This is done by specifying a
> rule, similar to langmap, like this:
>
> default: \
>         :GTAGSFORCECPP: \
>         :suffixless_langmap=[iI]nclude\:cpp,project/include\:cpp:
>
>         This can be specified on multiple lines like langmap. Also the
> regex can be used to match any part of a path, including the filename if
> necessary.
>
>         I know you want patches that apply to the head of your main branch
> but unfortunately our organisation's firewall prevents me from connecting
> to your CVS server, so they are based on your latest release (6.5.4).
>
>         Regards,
>
>         Tony Cooper.
>
> ************************************************************
> ****************
> Communications with GCHQ may be monitored and/or recorded
> for system efficiency and other lawful purposes. Any views or
> opinions expressed in this e-mail do not necessarily reflect GCHQ
> policy.  This email, and any attachments, is intended for the
> attention of the addressee(s) only. Its unauthorised use,
> disclosure, storage or copying is not permitted.  If you are not the
> intended recipient, please notify [email protected].
>
> This information is exempt from disclosure under the Freedom of
> Information Act 2000 and may be subject to exemption under
> other UK information legislation. Refer disclosure requests to
> GCHQ on 01242 221491 ext 30306 (non-secure) or email
> [email protected]
>
> ************************************************************
> ****************
>
>
> _______________________________________________
> Bug-global mailing list
> [email protected]
> https://lists.gnu.org/mailman/listinfo/bug-global
>
>


-- 
Shigio YAMAGUCHI <[email protected]>
PGP fingerprint: D1CB 0B89 B346 4AB6 5663  C4B6 3CA5 BBB3 57BE DDA3

_______________________________________________
Bug-global mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-global
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.