Lingo.dev + .properties (Java)
Lingo.dev CLI traduce archivos .properties de Java preservando la estructura de clave-valor, secuencias de escape y convenciones de localización de Java. La CLI funciona perfectamente con el sistema ResourceBundle de Java, mantiene exactamente el formato del archivo properties, maneja correctamente el escape de Unicode y caracteres especiales, preserva los marcadores {0}
, {1}
para MessageFormat, y se integra con los procesos de compilación de Maven y Gradle.
Configuración rápida
Configuración para archivos properties de Java:
{
"locale": {
"source": "en",
"targets": ["es", "fr", "de"]
},
"buckets": {
"properties": {
"include": ["src/main/resources/messages_[locale].properties"]
}
}
}
Recordatorio: [locale]
es un marcador de posición que debe permanecer literalmente en la configuración, ya que se reemplaza con la configuración regional real durante la ejecución de la CLI.
Traducir archivos Properties
npx lingo.dev@latest i18n
Preserva el formato del archivo properties, las secuencias de escape y las convenciones específicas de Java mientras traduce los valores.
Estructura del archivo Properties
Pares clave-valor básicos
welcome.message=Bienvenido a nuestra aplicación
login.button=Iniciar sesión
logout.button=Cerrar sesión
error.invalid.credentials=Nombre de usuario o contraseña inválidos
Organización de espacios de nombres
# Mensajes de autenticación
auth.login.title=Iniciar sesión
auth.login.subtitle=Introduce tus credenciales
auth.register.title=Crear cuenta
auth.forgot.password=¿Olvidaste tu contraseña?
# Elementos de navegación
nav.home=Inicio
nav.dashboard=Panel de control
nav.settings=Configuración
Marcadores de MessageFormat
welcome.user=¡Bienvenido de nuevo, {0}!
items.count=Tienes {0} artículos en tu carrito
validation.min.length=El campo debe tener al menos {0} caracteres
date.format=Hoy es {0,date,short}
Características específicas de Java
Secuencias de escape Unicode
japanese.greeting=\u3053\u3093\u306b\u3061\u306f
euro.symbol=Precio: 100\u20ac
Los escapes Unicode se preservan durante la traducción.
Continuación de línea
long.message=Este es un mensaje muy largo que \
abarca múltiples líneas para mejor \
legibilidad en el archivo fuente
Escape de caracteres especiales
file.path=C:\\Users\\Documents\\file.txt
key.with.spaces=clave\ con\ espacios=valor con espacios
special.chars=Contiene signos \= igual y \: dos puntos
Configuración avanzada
Múltiples archivos de propiedades
"properties": {
"include": [
"src/main/resources/messages_[locale].properties",
"src/main/resources/validation_[locale].properties"
]
}
Bloquear claves de configuración
"properties": {
"include": ["src/main/resources/messages_[locale].properties"],
"lockedKeys": ["app.version", "build.timestamp", "api.endpoint"]
}