first release of translation facility

* runtime - loading and translating
 * design-time - works with *.ts file (pip_tr utility)
 * compile-time - CMake macro for compile *.ts
This commit is contained in:
2024-11-05 13:49:00 +03:00
parent 73ed51e3d4
commit 57f8c1313e
52 changed files with 1571 additions and 480 deletions

View File

@@ -21,6 +21,7 @@
#include "parser.h"
#include "picli.h"
#include "piiostream.h"
#include "pitranslator.h"
using namespace PICoutManipulators;
@@ -56,7 +57,7 @@ int main(int argc, char * argv[]) {
PIVector<ParserSection> files = parse(cli.argumentValue("input"));
if (files.isEmpty()) {
piCout << "Error: resources description file is empty";
piCerr << "Error: resources description file is empty"_tr("pip_rc");
return 0;
}
if (cli.hasArgument("list")) {
@@ -76,7 +77,7 @@ int main(int argc, char * argv[]) {
if (outf.open(out_file, PIIODevice::ReadWrite)) {
outf.clear();
} else {
piCout << "Error: can`t open out file" << out_file;
piCerr << "Error: can`t open output file \"%1\""_tr("pip_rc").arg(out_file);
return 1;
}
PIIOTextStream ts(&outf);
@@ -86,7 +87,7 @@ int main(int argc, char * argv[]) {
ts << "// \"" << _a << "\"\n";
ts << "\n";
if (!generate(init_name, outf, files)) {
piCout << "Error: generate fail";
piCerr << "Error: generate fail"_tr("pip_rc");
return 1;
}
}