GNU bug report logs - #22241
25.0.50; etags Ruby parser problems

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Sat, 26 Dec 2015 04:00:02 UTC

Severity: normal

Found in version 25.0.50

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#22241: closed (25.0.50; etags Ruby parser problems)
Date: Thu, 04 Feb 2016 20:07:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Thu, 4 Feb 2016 23:06:47 +0300
with message-id <56B3AF57.5020102 <at> yandex.ru>
and subject line Re: bug#22241: 25.0.50; etags Ruby parser problems
has caused the debbugs.gnu.org bug report #22241,
regarding 25.0.50; etags Ruby parser problems
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
22241: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22241
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Dmitry Gutov <dgutov <at> yandex.ru>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.0.50; etags Ruby parser problems
Date: Sat, 26 Dec 2015 05:59:34 +0200
In GNU Emacs 25.0.50.5 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.7).

It's great that we've incorporated some Ruby support, but it has some
apparent problems:

- Constants are not indexed.

- Class methods (def self.foo) are given the wrong name ("self."
  shouldn't be included).

- "class << self" blocks are given a separate entry.

- Qualified tag names are never generated.

Take this example file:

module A
  class B
    ABC = 4

    def foo!
    end

    def self._bar?(abc)
    end

    class << self
      def qux=(tee)
      end
    end
  end
end

It should have this unqualified index:

A
B
ABC
foo!
_bar?
qux=

And the qualified names should look like this:

A
A::B
A::B::ABC
A::B#foo!
A::B.bar?
A::B.qux=

Lastly, it would be great if the parser recognized some built-in
code-generating methods. Example:

def A
  attr_reader :foo
  attr_writer :bar
  attr_accessor :tee
  alias_method :qux, :tee
end

should become (the unqualified version):

A
foo
bar=
tee
tee=
qux

All attr_* methods can take a variable number of arguments. The parser
should take each argument, check that it's a symbol and not a variable
(starts with :), and if so, record the corresponding method name.

Thanks!


[Message part 3 (message/rfc822, inline)]
From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 22241-done <at> debbugs.gnu.org
Subject: Re: bug#22241: 25.0.50; etags Ruby parser problems
Date: Thu, 4 Feb 2016 23:06:47 +0300
On 02/04/2016 08:24 PM, Eli Zaretskii wrote:

>> Just skip it as well.
>
> Done.

Thanks a lot, marking this as done.



This bug report was last modified 9 years and 162 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.