> I think the code shouldn't hurt anything but I don't think real ctags (unlike 
> the tag generation script) adds parameters to class tags and leaves them only 
> in the constructor methods. So I think it would be better to rather simulate 
> the ctags behavior in the script so this code wouldn't be needed.

Hmm, this would add an `__init__` tag for each class in the generated tags file 
only to satify this special logic for Python (and D). Those additional 
`___init__` tags are of no other use for the user and just might cause 
confusion if you get suggestions and lots of additional calltips when writing 
own `__init__` methods.

Apart from the generated tag file use case, I'd consider this change to make 
this special logic a bit less hard because now the normal calltip selection 
process will continue as for all other languages. Before, it roughly stopped 
trying find a matching calltip if no constructor tag was found.

> The script uses the `inspect` python library and I think it does some "smart" 
> things for you like using `__init__()` arguments for the class constructor.

It's actually the `inspect` library which does "smart" things. The script just 
asks `inspect` to get the signature for a class object. I would not call this 
"fake" :).

-- 
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/3334#issuecomment-1315825287
You are receiving this because you are subscribed to this thread.

Message ID: <geany/geany/pull/3334/[email protected]>

Reply via email to