anchor.diff:  end;
   
   
  -procedure TTextManager.ScanAvailableTranslations(aTextPath: string);
  -var
  -  SearchRec: TSearchRec;
  -begin
  +//aTextPath is in format drive\path\filename.%s.libx
  +procedure TTextManager.ScanTranslations(aTextPath: string);
  +var SearchRec: TSearchRec;
  +begin
  +  fLocalesCount := 0;
     fDefaultLocale := 0; //Default in case there is no eng
  -  fLocalesCount := 0;
  -  FindFirst(Format(aTextPath, ['*']), faDirectory, SearchRec);
  +
  +  FindFirst(Format(aTextPath, ['*']), faAnyFile - faDirectory, SearchRec);
     repeat
  -    if (SearchRec.Name <> '.') and (SearchRec.Name <> '..')
  -    and (SearchRec.Attr and faDirectory <> faDirectory) then
  -    begin
  -        SetLength(fLocales, fLocalesCount + 1);
  -        //text.***.libx
  -        fLocales[fLocalesCount] := Copy(SearchRec.Name, 6, 3);
  -        if fLocales[fLocalesCount] = 'eng' then
  -          fDefaultLocale := fLocalesCount;
  -        Inc(fLocalesCount);
  -      end;
  +    SetLength(fLocales, fLocalesCount + 1);
  +    //text.***.libx
  +    fLocales[fLocalesCount] := Copy(SearchRec.Name, 6, 3);
  +    if fLocales[fLocalesCount] = 'eng' then
  +      fDefaultLocale := fLocalesCount;
  +    Inc(fLocalesCount);
     until (FindNext(SearchRec) <> 0);
   end;
   
  
positive.code:   for i := Length(fConsts)-2 downto aIndex do
      fConsts[i+1] := fConsts[i];
  
    SetLength(fTexts, Length(fTexts) + 1);
    SetLength(fTexts[High(fTexts)], fLocalesCount);
    for I := 0 to fLocalesCount - 1 do
      fTexts[aIndex,I] := '';
  
    fConsts[aIndex].TextID := High(fTexts);
    fConsts[aIndex].ConstName := 'TX_NEW'+IntToStr(High(fTexts));
  end;
  
  
  
negative.code:   end;
  var I: Integer; s: string;
  begin
    for I := 0 to fTextsCount - 1 do
      if not TextEmpty(I) and TextUnused(I) then
      begin
        s := StringReplace(fTexts[I, fDefaultLocale], ' ', '', [rfReplaceAll]);
  