This commit is contained in:
Glavo 2025-09-21 21:40:53 +08:00
parent 746729859a
commit 4643215e86
2 changed files with 14 additions and 1 deletions

View File

@ -91,6 +91,8 @@ public abstract class CreateLocaleNames extends DefaultTask {
.toList();
}
UpsideDownTranslate.Translator upsideDownTranslator = new UpsideDownTranslate.Translator();
SortedSet<String> languages = supportedLanguages.stream()
.map(Locale::getLanguage)
.filter(it -> !it.isBlank())
@ -149,6 +151,10 @@ public abstract class CreateLocaleNames extends DefaultTask {
if (displayName.equals(language))
continue; // Skip
if (currentLanguage.equals(UpsideDownTranslate.EN_QABS)) {
displayName = upsideDownTranslator.translate(displayName);
}
}
writer.write(language + "=" + displayName + "\n");
@ -166,6 +172,10 @@ public abstract class CreateLocaleNames extends DefaultTask {
if (displayName.equals(script))
continue; // Skip
if (currentLanguage.equals(UpsideDownTranslate.EN_QABS)) {
displayName = upsideDownTranslator.translate(displayName);
}
}
writer.write(script + "=" + displayName + "\n");

View File

@ -27,6 +27,7 @@ import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.LinkedHashMap;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.regex.Matcher;
@ -35,6 +36,8 @@ import java.util.regex.Pattern;
/// @author Glavo
public abstract class UpsideDownTranslate extends DefaultTask {
static final Locale EN_QABS = Locale.forLanguageTag("en-Qabs");
private static final Map<String, String> PROPERTIES = Map.of(
"datetime.format", "MMM d, yyyy, h:mm:ss a"
);
@ -71,7 +74,7 @@ public abstract class UpsideDownTranslate extends DefaultTask {
}
}
private static final class Translator {
static final class Translator {
private static final Map<Integer, Integer> MAPPER = new LinkedHashMap<>();
private static void putChars(char baseChar, String upsideDownChars) {