I have created a unit, that is similar to String Interpolation. Of course real Interpolation would be a compiler feature.
TStr('Hello, {0}! Today is {1:ddd}, it's {1:HH:mm} now.').Params(name, date);
// Hello, Mark! Today is Wednesday, it's 19:40 now.
Variables where automaticly detected and converted (automatic type inferrence via Generics), so no need for IntToStr, FloatToStrF...
Here a short Description of the Format. It is similar to the Format Specifier of .Net. The Date Format is almost the same like in Delphi, but the other Specifier are different. but i think its a way better than the sprintf Convention that Delphi uses:
Integer and Float where automaticly converted and formatted as needed:
C for Currency (Number for Decimal Places)
D for Integer (Number for prefixed Zeros)
F for Double (Number for Decimal Places)
Date can formatted with:
dd = Day, MM=Month, yyyy=Year
HH=Hour, mm=Minute, ss=Seconds
there are further possibilities in the readme
Readme: https://github.com/VoSs2o0o/NetFormat/blob/master/readme.md
Code: https://github.com/VoSs2o0o/NetFormat/
Download: https://github.com/VoSs2o0o/NetFormat/releases
Website in German with descriptive Content about the Code: https://www.cloud-9.de/entwicklung/delphi-besserer-format-befehl