In VSoft.CommandLine.OptionDef.pas, under tkFloat: in TOptionDefinition<T>.Invoke, StrToFloat is called, but StrToFloat is locale specific.
This means that on most European machines, StrToFloat will assume ',' as a decimal separator and not '.'. That might not work well for scripts that use a program using this command line parser.
Now, I cannot find a simple method like Str (which for the reverse case always uses '.' as decimal separator, whereas FloatToStr would always use the locale), so you need to supply a TFormatSettings with DecimalSeparator set to '.' as its second argument.
In
VSoft.CommandLine.OptionDef.pas, undertkFloat:inTOptionDefinition<T>.Invoke,StrToFloatis called, butStrToFloatis locale specific.This means that on most European machines,
StrToFloatwill assume ',' as a decimal separator and not '.'. That might not work well for scripts that use a program using this command line parser.Now, I cannot find a simple method like
Str(which for the reverse case always uses '.' as decimal separator, whereasFloatToStrwould always use the locale), so you need to supply aTFormatSettingswithDecimalSeparatorset to '.' as its second argument.