Just for info, I've synced ctags to the state where the majority of parsers can just be copied from upstream ctags without any modification. The code is here
https://github.com/techee/geany/commits/ctags_sync3
and I'll convert it to a proper pull request once this pull request is merged. As part of this branch I used the upstream versions of html/jscript/css parsers to be able to debug subparser support and it seems to be working pretty well now after some patches.