跳到正文

Textualizer

作者:deftu

A custom localization implementation for consistency between 1.8.9 - 1.21.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

Textualizer

A simple localization management library.

Features a Minecraft-specific implementation for mod developers, wrapping around Minecraft’s own localization system.


Discord Badge
Ko-Fi Badge


For developers

Setup

You need to add it as a dependency in your build.gradle(.kts) file.

repositories {
    maven("https://maven.deftu.dev/releases")
}

dependencies {
    modImplementation("dev.deftu:textualizer:<VERSION>")
}

Replace <VERSION> with the version of the library you want to use.

Usage

You’ll need to implement Language, LocalizationContext, and Localization in your project. This means you need to handle language metadata, translation loading, translation retrieval, placeholder replacement, and language switching.

Refer to the Minecraft-specific implementation for an example of how to do this.


For Minecraft mod users

Why do I need this?

Minecraft’s (and Forge’s) language management system is very buggy and inconsistent across several Minecraft versions. This library aims to provide a consistent and reliable way to manage translations in your mods.

Is it going to affect my FPS / performance?

No. The library doesn’t add anything which would affect performance outside the initial loading of the translations and language switching.


For Minecraft mod developers

Setup

You need to add it as a dependency in your build.gradle(.kts) file.

repositories {
    maven("https://maven.deftu.dev/releases")
}

dependencies {
    modImplementation("dev.deftu:textualizer-<MINECRAFT VERSION>-<MOD LOADER>:<VERSION>")
}

Of course, replace <MINECRAFT VERSION> with the version of Minecraft you are developing for, <MOD LOADER> with the mod loader you are developing for, and <VERSION> with the version of the library you want to use.

Usage

Getting the current (selected in-game) language’s context can be done like so:

import dev.deftu.textualizer.minecraft.MCLocalization;

LocalizationContext context = MCLocalization.current();

To obtain a translated string, you can use

import dev.deftu.textualizer.minecraft.MCLocalization;

LocalizationContext context = MCLocalization.current();
String text = context.get("com.example");

To obtain a translated string and replace your placeholders, you can use

import dev.deftu.textualizer.MCLocalization;

int number = 10;
LocalizationContext context = MCLocalization.current();
String text = context.get("com.example", number);

BisectHosting


This project is licensed under LGPL-3.0.
© 2024 Deftu

常见问题

Textualizer 支持哪些 Minecraft 版本?

Textualizer 支持 Minecraft Java 版 1.8.9–1.21.4,共 16 个版本,可用的加载器:Fabric / Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。

Textualizer 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅客户端。

评论

登录后评论和评分

deftu 的其他作品

查看全部 →