summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2024-07-14 13:53:36 +0200
committerFelix Morgner <felix.morgner@gmail.com>2024-07-14 13:53:36 +0200
commit2f73c37c90eb0e1fb00fd91f1873f50060300d54 (patch)
tree1d465094a6040a6055d4da88c64182e56e7aee89 /lang
parent22affd3c791679f05ccde937a1804ecb3f5bf5e2 (diff)
downloadturns-2f73c37c90eb0e1fb00fd91f1873f50060300d54.tar.xz
turns-2f73c37c90eb0e1fb00fd91f1873f50060300d54.zip
lang: merge translations
Diffstat (limited to 'lang')
-rw-r--r--lang/CMakeLists.txt13
-rw-r--r--lang/include/turns/lang/messages.hpp36
-rw-r--r--lang/po/buttons/de.po2
-rw-r--r--lang/po/buttons/de_CH.po2
-rw-r--r--lang/po/buttons/en_US.po2
-rw-r--r--lang/po/de.po30
-rw-r--r--lang/po/de_CH.po3
-rw-r--r--lang/po/en.po39
-rw-r--r--lang/po/en_US.po9
-rw-r--r--lang/po/labels/de.po17
-rw-r--r--lang/po/labels/en_US.po17
-rw-r--r--lang/po/menu_items/de.po2
-rw-r--r--lang/po/menu_items/en_US.po2
-rw-r--r--lang/po/tooltips/de.po8
-rw-r--r--lang/po/tooltips/en_US.po8
-rw-r--r--lang/tests/labels.cpp34
-rw-r--r--lang/tests/menu_items.cpp29
-rw-r--r--lang/tests/messages.cpp (renamed from lang/tests/buttons.cpp)13
-rw-r--r--lang/tests/tooltips.cpp37
19 files changed, 98 insertions, 205 deletions
diff --git a/lang/CMakeLists.txt b/lang/CMakeLists.txt
index ed234e6..ca5fb0b 100644
--- a/lang/CMakeLists.txt
+++ b/lang/CMakeLists.txt
@@ -1,12 +1,12 @@
set(TRANSLATIONS
"de"
"de_CH"
- "en_US"
+ "en"
)
foreach(LANG IN LISTS TRANSLATIONS)
set(BINARY_FILE "${CMAKE_CURRENT_BINARY_DIR}/${LANG}/LC_MESSAGES/turns.mo")
- file(GLOB_RECURSE PARTS CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/*/${LANG}.po")
+ set(SOURCE_FILE "${CMAKE_CURRENT_SOURCE_DIR}/po/${LANG}.po")
list(APPEND TRANSLATION_BINARIES "${BINARY_FILE}")
@@ -15,10 +15,10 @@ foreach(LANG IN LISTS TRANSLATIONS)
ARGS
"-o"
"${BINARY_FILE}"
- ${PARTS}
+ "${SOURCE_FILE}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
DEPENDS
- ${PARTS}
+ "${SOURCE_FILE}"
COMMENT "Processing translation ${LANG}"
)
@@ -52,10 +52,7 @@ add_dependencies("lang" "mofiles")
# Tests
add_executable("lang-tests"
- "tests/buttons.cpp"
- "tests/labels.cpp"
- "tests/menu_items.cpp"
- "tests/tooltips.cpp"
+ "tests/messages.cpp"
)
target_link_libraries("lang-tests" PRIVATE
diff --git a/lang/include/turns/lang/messages.hpp b/lang/include/turns/lang/messages.hpp
index ea76565..359798d 100644
--- a/lang/include/turns/lang/messages.hpp
+++ b/lang/include/turns/lang/messages.hpp
@@ -3,32 +3,16 @@
namespace turns::lang
{
- namespace buttons
- {
- auto constexpr static finish = "Finish";
- }
-
- namespace menu_items
- {
- auto constexpr static quit = "_Quit";
- } // namespace menu_items
-
- namespace labels
- {
- auto constexpr static add_participant = "Add participant";
- auto constexpr static disposition = "Disposition";
- auto constexpr static name = "Name";
- auto constexpr static no_active_turn_order = "No active turn order";
- auto constexpr static order = "Order";
- auto constexpr static turns = "Turns";
- } // namespace labels
-
- namespace tooltips
- {
- auto constexpr static add_a_participant = "Add a participant";
- auto constexpr static main_menu = "Main Menu";
- auto constexpr static mark_as_defeated = "Mark as defeated";
- } // namespace tooltips
+ auto constexpr static add_participant = "Add participant";
+ auto constexpr static disposition = "Disposition";
+ auto constexpr static finish = "Finish";
+ auto constexpr static main_menu = "Main Menu";
+ auto constexpr static mark_as_defeated = "Mark as defeated";
+ auto constexpr static name = "Name";
+ auto constexpr static no_active_turn_order = "No active turn order";
+ auto constexpr static order = "Order";
+ auto constexpr static quit = "_Quit";
+ auto constexpr static turns = "Turns";
} // namespace turns::lang
#endif \ No newline at end of file
diff --git a/lang/po/buttons/de.po b/lang/po/buttons/de.po
deleted file mode 100644
index afbf89e..0000000
--- a/lang/po/buttons/de.po
+++ /dev/null
@@ -1,2 +0,0 @@
-msgid "Finish"
-msgstr "Abschließen"
diff --git a/lang/po/buttons/de_CH.po b/lang/po/buttons/de_CH.po
deleted file mode 100644
index dba2a58..0000000
--- a/lang/po/buttons/de_CH.po
+++ /dev/null
@@ -1,2 +0,0 @@
-msgid "Finish"
-msgstr "Abschliessen"
diff --git a/lang/po/buttons/en_US.po b/lang/po/buttons/en_US.po
deleted file mode 100644
index a38c78d..0000000
--- a/lang/po/buttons/en_US.po
+++ /dev/null
@@ -1,2 +0,0 @@
-msgid "Finish"
-msgstr "Finish"
diff --git a/lang/po/de.po b/lang/po/de.po
index c775800..78cba48 100644
--- a/lang/po/de.po
+++ b/lang/po/de.po
@@ -7,3 +7,33 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Add participant"
+msgstr "Teilnehmer hinzufügen"
+
+msgid "Disposition"
+msgstr "Gesinnung"
+
+msgid "Finish"
+msgstr "Abschließen"
+
+msgid "Main Menu"
+msgstr "Hauptmenü"
+
+msgid "Mark as defeated"
+msgstr "Als besiegt markieren"
+
+msgid "Name"
+msgstr "Name"
+
+msgid "No active turn order"
+msgstr "Keine aktive Zugreihenfolge"
+
+msgid "Order"
+msgstr "Reihenfolge"
+
+msgid "_Quit"
+msgstr "_Beenden"
+
+msgid "Turns"
+msgstr "Züge"
diff --git a/lang/po/de_CH.po b/lang/po/de_CH.po
index c775800..e79f91e 100644
--- a/lang/po/de_CH.po
+++ b/lang/po/de_CH.po
@@ -7,3 +7,6 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Finish"
+msgstr "Abschliessen"
diff --git a/lang/po/en.po b/lang/po/en.po
new file mode 100644
index 0000000..d04b751
--- /dev/null
+++ b/lang/po/en.po
@@ -0,0 +1,39 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: turns 1.0.0\n"
+"Last-Translator: Felix Morgner\n"
+"Language: en\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Add participant"
+msgstr "Add participant"
+
+msgid "Disposition"
+msgstr "Disposition"
+
+msgid "Finish"
+msgstr "Finish"
+
+msgid "Main Menu"
+msgstr "Main Menu"
+
+msgid "Mark as defeated"
+msgstr "Mark as defeated"
+
+msgid "Name"
+msgstr "Name"
+
+msgid "No active turn order"
+msgstr "No active turn order"
+
+msgid "Order"
+msgstr "Order"
+
+msgid "_Quit"
+msgstr "_Quit"
+
+msgid "Turns"
+msgstr "Turns"
diff --git a/lang/po/en_US.po b/lang/po/en_US.po
deleted file mode 100644
index 5ffcd74..0000000
--- a/lang/po/en_US.po
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: turns 1.0.0\n"
-"Last-Translator: Felix Morgner\n"
-"Language: en_US\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
diff --git a/lang/po/labels/de.po b/lang/po/labels/de.po
deleted file mode 100644
index 3f6f7f9..0000000
--- a/lang/po/labels/de.po
+++ /dev/null
@@ -1,17 +0,0 @@
-msgid "Add participant"
-msgstr "Teilnehmer hinzufügen"
-
-msgid "Disposition"
-msgstr "Gesinnung"
-
-msgid "Name"
-msgstr "Name"
-
-msgid "No active turn order"
-msgstr "Keine aktive Zugreihenfolge"
-
-msgid "Order"
-msgstr "Reihenfolge"
-
-msgid "Turns"
-msgstr "Züge"
diff --git a/lang/po/labels/en_US.po b/lang/po/labels/en_US.po
deleted file mode 100644
index 88eed2e..0000000
--- a/lang/po/labels/en_US.po
+++ /dev/null
@@ -1,17 +0,0 @@
-msgid "Add participant"
-msgstr "Add participant"
-
-msgid "Disposition"
-msgstr "Disposition"
-
-msgid "Name"
-msgstr "Name"
-
-msgid "No active turn order"
-msgstr "No active turn order"
-
-msgid "Order"
-msgstr "Order"
-
-msgid "Turns"
-msgstr "Turns" \ No newline at end of file
diff --git a/lang/po/menu_items/de.po b/lang/po/menu_items/de.po
deleted file mode 100644
index 4351945..0000000
--- a/lang/po/menu_items/de.po
+++ /dev/null
@@ -1,2 +0,0 @@
-msgid "_Quit"
-msgstr "_Beenden"
diff --git a/lang/po/menu_items/en_US.po b/lang/po/menu_items/en_US.po
deleted file mode 100644
index 7b59e50..0000000
--- a/lang/po/menu_items/en_US.po
+++ /dev/null
@@ -1,2 +0,0 @@
-msgid "_Quit"
-msgstr "_Quit"
diff --git a/lang/po/tooltips/de.po b/lang/po/tooltips/de.po
deleted file mode 100644
index 6804ea6..0000000
--- a/lang/po/tooltips/de.po
+++ /dev/null
@@ -1,8 +0,0 @@
-msgid "Add a participant"
-msgstr "Teilnehmer hinzufügen"
-
-msgid "Main Menu"
-msgstr "Hauptmenü"
-
-msgid "Mark as defeated"
-msgstr "Als besiegt markieren" \ No newline at end of file
diff --git a/lang/po/tooltips/en_US.po b/lang/po/tooltips/en_US.po
deleted file mode 100644
index c22d541..0000000
--- a/lang/po/tooltips/en_US.po
+++ /dev/null
@@ -1,8 +0,0 @@
-msgid "Add a participant"
-msgstr "Add a participant"
-
-msgid "Main Menu"
-msgstr "Main Menu"
-
-msgid "Mark as defeated"
-msgstr "Mark as defeated" \ No newline at end of file
diff --git a/lang/tests/labels.cpp b/lang/tests/labels.cpp
deleted file mode 100644
index 6bdf8cc..0000000
--- a/lang/tests/labels.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
-#include "turns/lang/messages.hpp"
-
-#include <catch2/catch_test_macros.hpp>
-#include <catch2/generators/catch_generators.hpp>
-
-#include <format>
-#include <string>
-
-#include <libintl.h>
-
-namespace turns::lang::tests
-{
-
- TEST_CASE("Label translations")
- {
- auto message = GENERATE(
- labels::add_participant,
- labels::disposition,
- // labels::name, // a better solution is required to support this one
- labels::no_active_turn_order,
- labels::order,
- labels::turns
- );
-
- auto locale = GENERATE("de_CH.UTF-8", "de_DE.UTF-8", "de_AT.UTF-8");
-
- SECTION(std::format("'{}' has a translation in '{}'", message, locale))
- {
- setlocale(LC_ALL, locale);
- REQUIRE(std::string{gettext(message)} != message);
- }
- }
-
-} // namespace turns::lang::tests \ No newline at end of file
diff --git a/lang/tests/menu_items.cpp b/lang/tests/menu_items.cpp
deleted file mode 100644
index 71fdef5..0000000
--- a/lang/tests/menu_items.cpp
+++ /dev/null
@@ -1,29 +0,0 @@
-#include "turns/lang/messages.hpp"
-
-#include <catch2/catch_test_macros.hpp>
-#include <catch2/generators/catch_generators.hpp>
-
-#include <format>
-#include <string>
-
-#include <libintl.h>
-
-namespace turns::lang::tests
-{
-
- TEST_CASE("Menu item translations")
- {
- auto message = GENERATE(
- menu_items::quit
- );
-
- auto locale = GENERATE("de_CH.UTF-8", "de_DE.UTF-8", "de_AT.UTF-8");
-
- SECTION(std::format("'{}' has a translation in '{}'", message, locale))
- {
- setlocale(LC_ALL, locale);
- REQUIRE(std::string{gettext(message)} != message);
- }
- }
-
-} // namespace turns::lang::tests \ No newline at end of file
diff --git a/lang/tests/buttons.cpp b/lang/tests/messages.cpp
index b016ecf..39b9bc0 100644
--- a/lang/tests/buttons.cpp
+++ b/lang/tests/messages.cpp
@@ -11,10 +11,19 @@
namespace turns::lang::tests
{
- TEST_CASE("Button translations")
+ TEST_CASE("Translated messages")
{
auto message = GENERATE(
- buttons::finish
+ add_participant,
+ disposition,
+ finish,
+ main_menu,
+ mark_as_defeated,
+ // name, a better solution is required to test this entry.
+ no_active_turn_order,
+ order,
+ quit,
+ turns
);
auto locale = GENERATE("de_CH.UTF-8", "de_DE.UTF-8", "de_AT.UTF-8");
diff --git a/lang/tests/tooltips.cpp b/lang/tests/tooltips.cpp
deleted file mode 100644
index 8274487..0000000
--- a/lang/tests/tooltips.cpp
+++ /dev/null
@@ -1,37 +0,0 @@
-#include "turns/lang/messages.hpp"
-
-#include <catch2/catch_test_macros.hpp>
-#include <catch2/generators/catch_generators.hpp>
-
-#include <format>
-#include <string>
-
-#include <libintl.h>
-
-namespace turns::lang::tests
-{
-
- TEST_CASE("Tooltip translations")
- {
- // clang-format off
- auto message = GENERATE(
- tooltips::add_a_participant,
- tooltips::main_menu,
- tooltips::mark_as_defeated
- );
-
- auto locale = GENERATE(
- "de_CH.UTF-8",
- "de_DE.UTF-8",
- "de_AT.UTF-8"
- );
- // clang-format on
-
- SECTION(std::format("'{}' has a translation in '{}'", message, locale))
- {
- setlocale(LC_ALL, locale);
- REQUIRE(std::string{gettext(message)} != message);
- }
- }
-
-} // namespace turns::lang::tests \ No newline at end of file