[Geany-Users] Highlight C function names?
Matthew Brush
mbrush at xxxxx
Fri Jan 17 02:55:21 UTC 2014
On 14-01-16 04:25 PM, Nate Bargmann wrote:
> * On 2014 16 Jan 17:16 -0600, Lex Trotman wrote:
>> [...]
>>
>>> However, a quick test shown that the style identifier (as provided by
>>> Scintilla) matches way more than function names only. It highlights also
>>> local variables in functions and many more symbols.
>>>
>>
>> Yeah, thats the problem (my understanding of the OP was they only wanted
>> function names highlighted, not variables).
>
> Indeed, only functions and macros called as functions. Naively,
> anything that follows the C rule for a function name, is preceeded by a
> word boundary, and succeeded by an opening parenthesis, '(', is what I
> would like to highlight. Years back I used FTE which did this which is
> where I became used to it but for various reasons I much prefer Geany.
>
One could hack something up in a plugin as a kind of workaround, but it
would be sub-optimal. Maybe by handling Scintilla's sci-notify event to
trigger off of modify and delete text notifications (ie. buffer
changed), then do a pass over the buffer with GRegex, styling each match
manually.
It would probably be quite slow if you opened massive source files but I
did something similar before (for highlighting something else) and it
wasn't noticeably slow on "normal" sized source code files IIRC.
Of course patching Scintilla's LexCPP.cxx to support styling function
names would be much better. The Python lexer supports this for function
definition names.
Cheers,
Matthew Brush
More information about the Users
mailing list