anchor.diff:  
   procedure TEditorFrame.DoSaveHistoryEx(c: TJsonConfig; const path: string);
   var
  -  lexname: string;
     caret: TATCaretItem;
     items, items2: TStringList;
     bookmark: TATBookmarkItem;
     i: integer;
   begin
  -  if Lexer=nil then
  -    lexname:= ''
  -  else
  -    lexname:= Lexer.LexerName;
  -
  -  c.SetValue(path+cHistory_Lexer, lexname);
  +  c.SetValue(path+cHistory_Lexer, LexerName);
     c.SetValue(path+cHistory_Enc, EncodingName);
     c.SetValue(path+cHistory_Top, Editor.LineTop);
     c.SetValue(path+cHistory_Wrap, Ord(Editor.OptWrapMode));
  
positive.code:   if Editor.Strings.Count=0 then exit;
  
    //restore props
    //Lexer:= AppManager.FindLexerByName(PrevLexer);
    PrevCaretY:= Min(PrevCaretY, Editor.Strings.Count-1);
    if PrevTail then
    begin
  
negative.code:   if Lexer=nil then str0:= '' else str0:= Lexer.LexerName;
    str:= c.GetValue(path+cHistory_Lexer, str0);
    if str='PHP' then
      str:= 'HTML'; //HTML lexer handles php files
    if (str<>'') and (str<>str0) then
      LexerName:= str;
  
    //enc
    str0:= EncodingName;
  