anchor.diff:    protected
       procedure SetVisible(Value: Boolean); override;
       procedure SetHighlighter(const Value: TSynCustomHighlighter); override;
  +    procedure UTF8KeyPress(var Key: TUTF8Char); override;
       procedure KeyDown(var Key: Word; Shift: TShiftState); override;
       procedure KeyUp(var Key: Word; Shift: TShiftState); override;
       procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
  
positive.code: end;
  
  procedure TCESynMemo.KeyUp(var Key: Word; Shift: TShiftState);
  var
    str: string;
  begin
    if Key in [VK_PRIOR, VK_NEXT, Vk_UP] then
      fPositions.store;
  
negative.code:   //
    if StaticEditorMacro.automatic then
      StaticEditorMacro.Execute;
  end;
  
  procedure TCESynMemo.UTF8KeyPress(var Key: TUTF8Char);
  var
    str: string;
    c: TUTF8Char;
  begin
    c := Key;
    inherited;
    if c = '(' then
    begin
      DcdWrapper.getCallTip(str);
      if str <> '' then
      begin
        fCallTipWin.FontSize := Font.Size;
    	  fCallTipWin.HintRect := fCallTipWin.CalcHintRect(0, str, nil);
        fCallTipWin.OffsetHintRect(ClientToScreen(point(CaretXPix, CaretYPix)),
          - 5 - fCallTipWin.HintRect.Bottom - fCallTipWin.HintRect.Top);
  		  fCallTipWin.ActivateHint(str);
      end;
    end
    else if c = ')' then
      fCallTipWin.Hide;
  end;
  
  function TCESynMemo.getMouseFileBytePos: Integer;
  