[Geany-Devel] [FT-plugins] Proposed "Features"

Lex Trotman elextr at xxxxx
Wed Aug 31 15:01:34 UTC 2016


On 1 September 2016 at 00:55, Thomas Martitz <kugel at rockbox.org> wrote:
> Am 31.08.2016 um 16:52 schrieb Lex Trotman:
>>
>> On 1 September 2016 at 00:43, Thomas Martitz <kugel at rockbox.org> wrote:
>>>
>>> Am 31.08.2016 um 16:39 schrieb Matthew Brush:
>>>>
>>>>
>>>> I can't speak to all compiler libraries, but at least libclang,
>>>> libpython
>>>> and libvala "compile" the source (well just the front-end of the
>>>> compiler is
>>>> needed). They literally use the built-in compiler front ends to
>>>> understand
>>>> the code. In the case of libclang, it additionally provides helpful
>>>> methods
>>>> for performing IDE-related features on the AST, while say with libvala,
>>>> the
>>>> ft-plugin would be required to perform it's own analysis of the AST to
>>>> implement those feaures, which is still a lot less work than in Geany/TM
>>>> since it has access to the full AST/context and the ft-plugin need not
>>>> fear
>>>> encoding language specific semantics into its logic.
>>>
>>>
>>> How do you pass {C,CXX,CPP}FLAGS to libclang? And where do you get them
>>> from?
>>
>> Libclang needs the full-fat build knowledge that "project" systems on
>> other IDEs provide.  Another reason to keep it separate from Geany.
>
>
> So one would have to adjust the build settings and one or more ft-plugins
> all the time?

I am guessing that one of the reasons Matthew mentioned build settings
access in #1195 is so that the plugins with complex build requirements
can set Geany's simple build system to match their complex one.

>
> IMO, complex build system integration is out of scope for ft-plugins. But I
> see that not all features can be supported properly without build system.

I am not sure I understand you?  That sounds like you are saying that
plugins cannot be allowed to have complex build systems inside the
plugin for its own use, or do I misunderstand?

>
>
> Best regards
> _______________________________________________
> Devel mailing list
> Devel at lists.geany.org
> https://lists.geany.org/cgi-bin/mailman/listinfo/devel


More information about the Devel mailing list