diff --git a/TranslationChecker.exe b/TranslationChecker.exe
index 3bb2231..ba0bd25 100644
Binary files a/TranslationChecker.exe and b/TranslationChecker.exe differ
diff --git a/TranslationChecker/TranslationChecker/Program.cs b/TranslationChecker/TranslationChecker/Program.cs
index c7930aa..13baa40 100644
--- a/TranslationChecker/TranslationChecker/Program.cs
+++ b/TranslationChecker/TranslationChecker/Program.cs
@@ -186,7 +186,15 @@ namespace TranslationChecker
void ReportError(Message message, string translation)
{
var location = message.Locations.First();
- Console.WriteLine($" Format string error ({location.Filename}:{location.Line})\n Source:\n '{message.Source}'\n Translation:\n '{translation}'");
+ if (string.IsNullOrEmpty(translation))
+ {
+ Console.WriteLine($" Empty translation ({location.Filename}:{location.Line})\n Source:\n '{message.Source}'");
+ }
+ else
+ {
+ Console.WriteLine($" Format string error ({location.Filename}:{location.Line})\n Source:\n '{message.Source}'\n Translation:\n '{translation}'");
+
+ }
success = false;
ErrorCount++;
}
@@ -224,7 +232,13 @@ namespace TranslationChecker
else
{
var translation = message.Translation.Text;
- if (!CheckTranslation(original, translation))
+ if (string.IsNullOrEmpty(translation))
+ {
+ ReportError(message, translation);
+ if (fix)
+ message.Translation.Text = original;
+ }
+ else if (!CheckTranslation(original, translation))
{
ReportError(message, translation);
if (fix)
@@ -266,19 +280,17 @@ namespace TranslationChecker
}
var fix = false;
- var folder = false;
for (var i = 1; i < args.Length; i++)
{
if (args[i] == "--fix")
fix = true;
- else if (args[i] == "--folder")
- folder = true;
}
var success = true;
- if (folder)
+ var path = args[0];
+ if (File.GetAttributes(path).HasFlag(FileAttributes.Directory))
{
- foreach (var tsFile in Directory.EnumerateFiles(args[0], "*.ts", SearchOption.AllDirectories))
+ foreach (var tsFile in Directory.EnumerateFiles(path, "*.ts", SearchOption.AllDirectories))
{
if (!CheckFile(tsFile, fix))
success = false;
@@ -286,7 +298,7 @@ namespace TranslationChecker
}
else
{
- success = CheckFile(args[0], fix);
+ success = CheckFile(path, fix);
}
Console.WriteLine($"\nTotal errors: {ErrorCount}");
diff --git a/TranslationChecker/TranslationChecker/TranslationChecker.csproj b/TranslationChecker/TranslationChecker/TranslationChecker.csproj
index 37a031d..c81e316 100644
--- a/TranslationChecker/TranslationChecker/TranslationChecker.csproj
+++ b/TranslationChecker/TranslationChecker/TranslationChecker.csproj
@@ -25,12 +25,13 @@
AnyCPU
- pdbonly
+ full
true
bin\Release\
TRACE
prompt
4
+ true
diff --git a/crowdin-sync.bat b/crowdin-sync.bat
index ae05a1b..4a60b82 100644
--- a/crowdin-sync.bat
+++ b/crowdin-sync.bat
@@ -10,7 +10,7 @@ java -jar crowdin-cli.jar download
if not %ERRORLEVEL%==0 exit /b
echo Checking translations...
-TranslationChecker.exe translations --folder --fix
+TranslationChecker.exe translations --fix
set CHECKER_ERRORLEVEL=%ERRORLEVEL%
echo Generating Qt translations...