Hello Lex,

thx for your quick reply.

Am 29.06.2023 um 02:02 schrieb Lex Trotman via Devel <devel@lists.geany.org>:

On Thu, 29 Jun 2023 at 07:58, Andreas Schöller via Devel
<devel@lists.geany.org> wrote:

Perhaps you should have checked, Lexilla already has a Nim lexer.  It
hasn't had a substantive change in 4 years, so either its really good,
or nobody is maintaining it.  But you can add a language to Geany that
only has a lexer, IIRC there are several.  Of course that doesn't
solve symbols.

I even found two Nim-parsers at the Lexilla-repo. I have added a issue-3520 to the Geany-repo and asked for inclusion of one or both of them.

s possible to build Geany on Mac, see the geany/geany_OSX repo, but
yeah the process is Linux centric, thats where the contributors are. 

If it is just for a Excumberant-Tag-Parser - that i would try on a Mac.

There has been discussion about adding the capability for Geany to
talk to LSPs, and there was an initial attempt, but that showed the
the size of the changes, so nobody has offered to do it.
LSP-support could help for the symbol-outline, though 80-percent of what is possible with LSP - i don’t want plus other consequences/risks see below.

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.

With the osx-geany comes a plugin, that allows to import tags. And that fails cos' of the missing Nim-support. But i used a external tool to generate the tags and then put them where the plug-in expected them to be. I think after i converted via `geany -g ` from CTags to Geany-tags. Thats what ‚smuggeling-in‘ means.

I am not sure what you mean by "smuggle", you can have tag files
loaded automatically or Tools->Load Tags File if you don't want it
automatic.  

This is the definition of an LSP, but "somebody" has to add the
capability to Geany, as noted above.
ah yes and no - LSP is much more than triggering a script/binary to deliver some structured list-of-smth. The way i see it after reading your discussion is that the „big"-solution (LSP and overhaul of the TagMgmt-system ) brings considerable risks with it. Eg. the Nim-LSP-support for VS-Code spawns a process for every document and doing so drives the resource-usage up - and in Nims case might even overload the system. But i’m asking for a very limited „small“-solution. A little defined path to update the symbol-outline - without LSP - by using a tool of my choice. I mean C-Tag and Exuberant-Tags were thought to be shell-system-tools - but geany comes with its own version of it baked in ? and sadly offers no alternative to that. Or is it possible to use the CTags-binary  from my system somehow ? 

 The LSP could of course be used
with other editor/IDEs until its added to geany, and could use the
actual Nim parser internals, a good Nim community project??
well, nim-language-server and nim-suggest are part of the language.

Anyhow, even without the tag-support Geany feels much more alike TextMate-1 and provides almost everything i expect from a decent editor.

Greets Amdreas,