Merged revision(s) 61041 #ccf03e0d2a, 61057 #d6391d9421 from trunk:

LCLTranslator: also allow "--lang=<lang>" commandline parameter in addition to "-l <lang>" and "--lang <lang>", bug #35432
........
LCLTranslator: optimized commandline parameters handling code a bit (no functional changes)
........

git-svn-id: branches/fixes_2_0@61737 -
This commit is contained in:
maxim 2019-08-20 22:27:22 +00:00
parent 47e335ba3b
commit 447fab251a

View File

@ -94,7 +94,7 @@ var
function FindLocaleFileName(LCExt: string; Lang: string; Dir: string): string; function FindLocaleFileName(LCExt: string; Lang: string; Dir: string): string;
var var
T: string; T, CurParam: string;
i: integer; i: integer;
function GetLocaleFileName(const LangID, LCExt: string; Dir: string): string; function GetLocaleFileName(const LangID, LCExt: string; Dir: string): string;
@ -264,12 +264,23 @@ begin
Result := ''; Result := '';
if Lang = '' then if Lang = '' then
for i := 1 to Paramcount - 1 do for i := 1 to ParamCount do
if (ParamStrUTF8(i) = '--LANG') or (ParamStrUTF8(i) = '-l') or begin
(ParamStrUTF8(i) = '--lang') then CurParam := ParamStrUTF8(i);
Lang := ParamStrUTF8(i + 1); if (CurParam = '-l') or (UTF8LowerCase(CurParam) = '--lang') then
begin
if i < ParamCount then
Lang := ParamStrUTF8(i + 1);
end
else
if UTF8StartsText('--lang=', CurParam) then
begin
Lang := CurParam;
UTF8Delete(Lang, 1, Length('--lang='));
end;
end;
//Win32 user may decide to override locale with LANG variable. //User can decide to override locale with LANG variable.
if Lang = '' then if Lang = '' then
Lang := GetEnvironmentVariableUTF8('LANG'); Lang := GetEnvironmentVariableUTF8('LANG');