[Lazarus] ctrl mouse link in "compiler directives" or comments (which color)?

Martin Friebe lazarus at mfriebe.de
Tue Jul 15 11:50:50 CEST 2008



Mattias Gärtner wrote:
>> On the other Hand if ever an optimizer should bundle other words (like
>> identifiers with the separating dots) into one word, then the current
>> method would fail as well.
>>     
>
> I *thought* the new marker concept would handle this. Marker bounds should be
> independent of highlighter bounds.
>   
The new Markup will handle this, that is why I was asking.
Because If I needed to carry the current behaviour, I would need to do a 
lot of extra steps.

I will most likely let the user decide on coloring via the 
Editor-Enviroments/Highlighter settings (as for Special-Line or 
Selection). So if the user set foreground to "default" (clNone) there 
will only be underlining. Otherwise there is a fixed color.

I am still looking into getting underlining via fontstyle to work reliable.

The new Markup will handle:
- "Highlight all" currently for incremental search, but planed also for 
normal sarch/replace, or outside search (other occurrences of selected 
block, or word under cursor)
- Matching Brackets
- Special Lines
- Ctrl-Mouse-Link
- Selected Block
as well as new Markups. (e.g. for code-templates)

All Markups work independent of the Highlighter. They only instruct to 
keep/alter/override selected color or style information.

Each Markup works similar to a plug-in, so it will be easy to write 
extra markup-modules. Hopefully I will have the next part of the 
implementation ready by the end of this week.

As a side effect it also has several fixes:
- Bracket highlight with utf8 chars in line
- Block and special line with Foreground=clNone (just change the 
Background Color, keep the Foreground according to highlighter); depends 
on settings. (probably also honour font style)
- Display of selection in column mode, if some lines include tabs
- Paintlines will be simplified. Selected-Block Highlighting happens 
before the token Accu. So all tokens that are in the selection can be 
joined in the token-accu


Best Regards
Martin







More information about the Lazarus mailing list