Hello Geany developers,
i know i’m late to the party and its gotten quite on this list. Is there any development going on ?
In 2016 there was a long discussion about the Symbols-View and possible changes to the TagManager - it seems there have been no changes since september 2016 ?
I’m asking because i'd like to add some language support for the Nim language. Its a small community - i’d estimate less than one tenth of the Smalltalk-community. Looking at how things should be done, i learned a Scintilla-Lexer must be done, that might or might not get included upstream depending on the size of the community. Then for Geany a parser is required that provides the CTags/Exuberant-Tags or the non-compatible Geany-Tags for Geany. Fair enough - Nim is a not easy to parse language and actually i’m using the default support, which uses the Python-parser. The only thing lacking is a proper symbol-view.
As pragmatic as i tackle things, i guess that requires a compiler/dev-setup for everything Geany plus Scintilla and may be Exuberant-Tags - and i’m on a Mac - so this is not an option.
During your long discussion about restructuring or opening up the CTag-mechanism to Plugins, i learned that this involves many performance issues around huge loads of AST generated tags for intelligent IDE-support etc. pp. Thats all not needed on my side - since i’m coming form VS-Code and help me god - i don’t need any more smart-stuff popping up around me, forcing me to dig into mile-long JSON-cfg-files to turn it off somehow. And the super-smart background memory-hogs that eat up all resources bringing the entire system to a halt - i’m done with that, too.
Writing a cmd-line tool that populates the symbol-view with struct-infos, procedures and Enums to get a sorted overview would take me an afternoon using the compiler-tools that are already part of my setup. I can also provide CTag-compatible tags - but right now i need to smuggle them into a geany-project and they only provide completion-support - they don’t show up in the symbol-view.
I’d wish for a option in a language-format-cfg, that allows me to name a cmd-line-tool that provides the tags for the symbol-view. In any format that Geany likes best - including the undocumented binary TagManager-format. Without stressing the rest of the Tag-Management-System in the background. It does not need to rebuild the tag-list on-every-keystroke and it must not try to read/incorporate other files that might belong to a project - it shall just care for the one file in the current Viewport. I think there is already a command to refresh the symbol-outline manually ?
Would that be possible and might that help other smaller communities to get around the Scintilla/C-Parser/Excuberant-Tags-thingy-challenge ?
Any comments are welcome, thx for making Geany, greets Andreas