anchor.diff:      Caret:= Ed.Carets[i];
       Caret.GetSelLines(NLine1, NLine2, false);
       if NLine1<0 then Continue;
  -    R1:= GetItemRect(NLine1, NLine2, false);
  +    R1:= GetItemRect(0, NLine1, NLine2, markRight);
       C.FillRect(R1);
     end;
   
  
positive.code:   C.FillRect(ARect);
  
    //paint full-width area of current view
    R1:= GetItemRect(Ed.LineTop, Ed.LineBottom, true);
    R1.Right:= ARect.Right;
  
    C.Brush.Color:= GetAppColor('EdMicromapViewBg');
    C.FillRect(R1);
  
negative.code: 
  procedure TEditorFrame.EditorDrawMicromap(Sender: TObject; C: TCanvas;
    const ARect: TRect);
  type
    TAppMicromapMark = (markFull, markLeft, markRight);
  const
    cTagOccurrences = 101; //see plugin Hilite Occurrences
    cTagSpellChecker = 105; //see plugin SpellChecker
    cMarkColumn = 1;
  var
    Ed: TATSynEdit;
    NPixelOffset: integer;
    NWidthSmall: integer;
  //
    function GetItemRect(AColumn, NLine1, NLine2: integer; APos: TAppMicromapMark): TRect; inline;
    begin
      Result:= Ed.RectMicromapMark(AColumn, NLine1, NLine2);
      case APos of
        markLeft:
          Result.Right:= Result.Left + NWidthSmall;
        markRight:
          Result.Left:= Result.Right - NWidthSmall;
      end;
    end;
  //
  var
  