Jump to content

Uwe Raabe

Members
  • Content Count

    2907
  • Joined

  • Last visited

  • Days Won

    169

Posts posted by Uwe Raabe


  1. Are you aware of this function from IOTAServices?

     

        { ExpandRootMacro will change a string that contains $(BDS) or any $(name)
          and expands that environment variable. So for example $(BDS)\bin will be
          expanded to C:\Program Files\Embarcadero\10.0\bin assuming that
          BDS=C:\Program Files\Embarcadero\10.0 }
        function ExpandRootMacro(const S: string): string;

     


  2. 1 hour ago, sLesage said:

    This in combination with a remove unused units would be heaven for me ... Well maybe a remove unused unit which would also move uses from Interface to Implementation if they aren't needed in the interface section

    Well, that would require some sort of compilation or so and is definitely outside the scope of such a tool.

     

    It might be worth to investigate in interpreting the output of Peganza Pascal Analyzer Uses Report and act accordingly. This would eliminate the burden of analyzing the code.


  3. @sLesage

    This is an early beta. It is a command line tool called with the following parameters:

    UsesCleaner [<filepath>]<filename> [-c:<configfile>] [-o:<outputpath>] [-l:<logfile>] [-s]
    
    <filename> may contain wildcards
    <configfile> default is UsesCleaner.cfg
    <outputpath> if not specified, original files will be changed!
    -s: also handles subfolders

     

    The example config file is targeting Delphi 10.2 Tokyo, but can easily be adjusted. Some entries are self-explaining.

    [Settings]
    Indentation=2
    Compressed=1
    MaxLineLength=130
    SearchPath=c:\program files (x86)\embarcadero\studio\19.0\lib\Win32\release;
    UnitAliases=WinTypes=Winapi.Windows;WinProcs=Winapi.Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
    UnitScopeNames=Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;System;Xml;Data;Datasnap;Bde;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell
    GroupNames=@DelphiOTA;Winapi;System.Win;System;Data;FireDAC;Vcl;Rz*
    
    [Groups]
    DelphiOTA=ToolsAPI;DesignIntf;DesignEditors
    
    

    The tool will resolve any unit aliases and unit scope names. Then it will group the units according to the order given in GroupNames followed by any remaining units. Plain group names are taken as namespace prefix (like Data or Vcl). Unit names without such namespace can be grouped with wildcards (like Rz* for Raize Components units). You can define groups by simply listing the unit names in the Groups section as it is show with the DelphiOTA group.

    UsesCleaner.zip


  4. 17 minutes ago, Bill Meyer said:

    where I usually have a VDI file for my C:\ drive, another for S:\ (our local convention for source), and in some, a third virtual drive for local data.

    That is the same in VMware - one file per virtual disk. Each virtual disk has a setting where you can decide if the disk shall be split into several files or just one. The default is split, but I prefer it the other way.


  5. @John Kouraklis That is mentioned in the text of the beta download page:

    Quote

    Note: Unfortunately Delphi 10.3.2 Rio broke binary compatibility with 10.3 and 10.3.1 – so you need Delphi 10.3.2 to run MMX 15. I am not sure if and when Embarcadero will be able to fix that.

     

×