Сейчас опишу и прикреплю лексер сюда
Обращаю внимание что сообщения из Темы 
viewtopic.php?f=6&t=2282
лучше перенести сюда. Это одна и таже проблема с неверными интерпретациями  условий лексера ,
а еще лучше удалить ту тему, так как ниже она включена в описание.
Для разбора берем такой пример (он же для удобства внутри лексера уже есть):
Code: Select all
Установить курсор в пределах Блока
 {  Внешний блок фигруных скобок
    подсветка всей строки
    подсвечен весь этот блок от начала до конца
    остальные блоки не подсвечены 
     
    {  	Внутрений блок фигруных скобок
    	подсвечен только внутрений блок
        остальные не подсвечены 
	}                          
 	
    (блок круглых скобок подсвечен голубым, а внешний фигурный весь серым)
    
    [блок квадратных скобок подсвечен красным, а внешний фигурный весь серым]
    
    
    Ниже строчка комбинация, каждый вложенный слой, должен иметь свой цвет
    тут серый цвет  ( голубой блок [ внутри красный блок (перехват голубого) все еще красный ] ) 
   	             			
 }
Как видно из примера, каждый блок должен иметь свою динамическую подсветку.
Условия созданы так, что бы каждый одинаковый блок внутри перехватывал правило подсветки на себя.
Так получается что при:
- при помещении курсора во внешний фигурный блок, он должен весь окраситься в серый цвет.
- при помещении курсора во ВНУТРЕННИЙ фигурный блок, произойдет перехват серого цвета и серым останеться только внутренний блок.
- при помещении курсора в блок круглых скобок, он окрашивается в голубой цвет, но так как курсор по прежнему внутри серого блока, 
   то он тоже по прежнему окрашен в серый цвет.
- при помещении курсора в блок квадратных скобок, он краситься в красный, и остается серый.
ну и так далее
в редакторе КудаТекст обработка правил и построение подсветки создано с ошибками.
На скриншотах ниже можно видеть что
проблема 1:  Серый фигурный блок с инструкцией 
"красить ВСЮ строку" не красит всю строку, а 
красит только между границами блока.
проблема 2:  В случае перехвата цвета правилом 
"выделять наименьший блок" красится от начала блока до начала следующего блока.
проблема 3:  В случае нескольких вложений, 
правила работают только на первое вложение и не распространяются дальше по циклу.