- Adds Delphi Alexandria Support
- Adds Delphi Sydney Support
- Adds output file prefix parameter
James is an utility created for Delphi. If you find it useful, please consider supporting it.
It makes your life easier while switching from one project to another.
If you see yourself manually installing components and updating Delphi settings every time you have to switch from one project to another, James may help you.
James has two operation modes
All Delphi settings are stored in Windows Registry (like the list of components that you have installed). James will load these settings and store in a local file:
C:\Projects\FirstProject>james.exe -l:Berlin
The -l:
parameter indicates that you want to Load the settings, and in this case, you asked for Berlin version.
It will save a file called .james
in the same folder as you execute. It is a JSON
file containing all Delphi settings that were loaded. Here is an example:
{
"version": "Delphi Berlin",
"known_packages": [
"$(BDS)\\Bin\\dclMetropolisUILiveTile240.bpl",
"$(BDSBIN)\\dclxml240.bpl",
"...",
"C:\\Users\\alefr\\Documents\\Delphi\\SynEdit\\Bin\\SynEdit_D101B.bpl"
],
"library_path": {
"win32": [
"$(BDSLIB)\\$(Platform)\\release",
"$(BDSUSERDIR)\\Imports",
"$(BDS)\\Imports",
"$(BDSCOMMONDIR)\\Dcp",
"$(BDS)\\include",
"C:\\Users\\alefr\\Documents\\Delphi\\SynEdit\\Lib"
]
},
"environment_variables": [
"$(PUBLIC)\\Documents\\Embarcadero\\InterBase\\redist\\InterBaseXE7\\IDE_spoof",
"$(PATH)",
"C:\\Users\\alefr\\Documents\\Delphi\\SynEdit\\Bin"
]
}
You add this .james
file to the project's repository, and everyone which loads the repository will be able to apply the settings.
The -o
parameter allows you to define a custom name (prefix) to the .james
file.
C:\Projects\FirstProject>james.exe -l:Berlin -o:first
Doing so, the Delphi settings will be stored in the first.james
file
Execute James with the .james
file as parameter, to apply the settings stored:
C:\Projects\FirstProject>james.exe -a:.james
The -a:
parameter indicates that you want to Apply the settings, in this case the .james
file is located in the current folder.
If you don't inform a
.james
file, it will try to load a file in the current folder.
James stores the following settings:
- Installed Packages
- Library Path
- Environment Variables
James currently supports the following Delphi versions:
- Delphi 5
- Delphi 2006 (Turbo Delphi)
- Delphi Seattle
- Delphi Berlin
- Delphi Tokyo
- Delphi Rio
- Delphi Sydney
- Clone the repo
https://github.com/alefragnani/delphi-james.git
- Open the
james.dpr
project and build it - You will find James executable in the
bin
folder
You may find usefull to register James in you PATH
Environment Variable, so you can use it in any folder, with no need to type its full path. To register James, call it with -r
parameter:
C:\delphi-james\bin\james.exe -r
Special thanks to the people that have contributed to the project:
- Anderson Dapper Rocha (@toppermitz)
GPLv3 © Alessandro Fragnani
- James icon by Webalys
util\Converter.pas
andutil\Writer.pas
by Embarcadero RTL.JSON Workbench Sample