See: https://github.com/universal-ctags/ctags/pull/2084
This import has 3 difference with upstream: * don't use newer API than current Geany has (will be fixed by a later sync, maybe #2132 already); * workaround a current limitation of our ctags use to emit tags for a kind disabled by default (should be fixed in #2132); * workaround a current limitation of our ctags use to emit reference tags.
They are fairly small differences, and they should alight with further sync.
--- reviewers, won't wait too long, I'll merge soon ;) You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/2134
-- Commit Summary --
* Add new upstream candidate Flex parser
-- File Changes --
M ctags/Makefile.am (2) M ctags/main/parsers.h (2) D ctags/parsers/actionscript.c (99) A ctags/parsers/flex.c (2636) M src/symbols.c (1) M src/tagmanager/tm_parser.c (15) M tests/ctags/Makefile.am (7) A tests/ctags/actionscript/as-first-token.as (1) A tests/ctags/actionscript/as-first-token.as.tags (2) A tests/ctags/actionscript/classes.as (16) A tests/ctags/actionscript/classes.as.tags (13) A tests/ctags/actionscript/const.as (8) A tests/ctags/actionscript/const.as.tags (6) A tests/ctags/actionscript/const2.as (7) A tests/ctags/actionscript/const2.as.tags (3) A tests/ctags/actionscript/method-attributes.as (12) A tests/ctags/actionscript/method-attributes.as.tags (10) A tests/ctags/actionscript/packages.as (9) A tests/ctags/actionscript/packages.as.tags (7) A tests/ctags/actionscript/sampler.as (66) A tests/ctags/actionscript/sampler.as.tags (16)
-- Patch Links --
https://github.com/geany/geany/pull/2134.patch https://github.com/geany/geany/pull/2134.diff
techee approved this pull request.
After looking at the 3000 LOC parser, I decided to approve the pull request. Disapproving it would mean I'd have to explain "why" which would mean I'd have to understand what the parser does and what it does wrong :-)
I'll enable reference tag generation in #2132.
Disapproving it would mean I'd have to explain "why" which would mean I'd have to understand what the parser does and what it does wrong :-)
Oh you wouldn't have to go very far to find something wrong with that parser. First thing, it's a fork of the jscript parser, which is wrong on its own. Secondly, support for an XML dialect was thrown in there, well, let's say, quickly. And if you're still standing and keep digging, you'll see that what's left is not *so* bad (well, not worse than jscript), but doesn't extract much info (no signature, no inheritance, no type, etc.).
This said, it still should work OK, and give somewhat better results than the previous one.
elextr approved this pull request.
Not knowing a flex/actionscript from a moviescript I tried a few bits off the internet and got symbols, so I quickly approve before I find something wrong :)
Merged #2134 into master.
github-comments@lists.geany.org