[Geany-devel] R Tags

Lex Trotman elextr at xxxxx
Wed Nov 10 22:11:30 UTC 2010


On 11 November 2010 07:55, Liviu Andronic <landronimirc at gmail.com> wrote:
> On Tue, Nov 9, 2010 at 7:45 AM, Lex Trotman <elextr at gmail.com> wrote:
>>>> Step 1, if you open an R file do you get symbols in the sidebar?
>>>>
>>> Yes it does. Here on 0.20 (svn >= r5271).
>>
>> Step one tick :-)
>>>
>>>
>>>> This tests that Geany's R tag parser is in fact working.  But I'm not
>>>> sure how much information it gathers, it looks pretty simple.
>>>>
>>>> Step 2.  to get tags for files that you don't want to have open all
>>>> the time (eg libraries) you use geany -g tagfile rfile
>>>>
>>
>> Did this step work?
>>
> No. I tested the functionality using a single R file (attached), and
> it errors out.
> sh>geany -g "/usr/local/build/R.tags"
> "/usr/local/build/latticist/R/latticist.R"  (5603)
> Failed to create tags file, perhaps because no tags were found.
>
> sh>geany -g "/usr/local/build/R.tags" ... atticist/R/latticist.R"
> (5603) returned '1'
>
> Opening the file in Geany will correctly identify two tags (Functions,
> in Symbols).

Using the file you attached it works for me on 0.19.1, created the
tags file and when loaded the symbols show up in autocompletion.

two comments about what you are doing above

1. do you have the authority to write to /usr/local?? why not try in
your home dir first and load manually to see if it works.
2. the tags file name is in the wrong format, should be
filename.R.tags not just R.tags, that shouldn't prevent it writing but
it will prevent it loading

>
> However, even if geany -g worked on .R files, the approach would be
> difficult to apply in practice. It requires the user to specify .R
> files, and given the structure of R packages this could be a quickly
> become tedious. It would have been much easier if Geany accepted a
> path in which it could recursively scan (and parse) R files. The
> rtags() function can do that, so it might make sense to find a
> conversion route for etags files.
>

Whats the structure of R packages?

Presuming from the above that it is lot of files in nested directories
you could use find to run geany -g on them all.  Whilst that gives you
lots of tag files to open, I don't expect it to be too much slower
than one huge file.

Otherwise patches are welcome.

>
>> No, thats why I said you need to convert it yourself, sorry.  My
>> googles of emacs tags format in the past have been somewhat
>> unproductive, but maybe you can read the source.  Geany also doesn't
>> document tagmanager format (the more complex of its two formats)
>> either.
>>

I have tried to use the information in the wikipedia entry in the past
but it appears to be incomplete, the rtags entry doesn't tell me
anything about the format.

> Unfortunately I haven't yet managed to get any output from rtags()
> [2], pending a cry for help on r-help, so I couldn't post an example
> (@Jon, did you have any luck with that?). But here's [1] what I found
> as close as possible to a spec. Could you please take a look and let
> us know whether there's some resemblance with the Geany format, for a
> potential conversion route?

As best I can tell the formats are similarish, so I don't expect a
format conversion to be too hard for someone to write, if you can find
out what they actually are.

Cheers
Lex

>
> Thank you
> Liviu
>
> [1] http://en.wikipedia.org/wiki/Ctags#Etags_2
> [2] http://developer.r-project.org/rtags.html
>
> _______________________________________________
> Geany-devel mailing list
> Geany-devel at uvena.de
> http://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
>
>



More information about the Devel mailing list