#Translatable - Implementación i18n

1 messages · Page 1 of 1 (latest)

heady drum
#

Translatable es una librería para cargar traducciones de archivos en el proyecto, la librería genera optimizaciones dependiendo del nivel de dinamismo en la llamada de la macro, esta todo documentado en el README.MD.

Al instalarla de crates.io la libreria te permite por defecto, y de forma configurable, tener una carpeta de translations/ en el root de tu proyecto. Esa carpeta contendrá archivos .toml en cualquiera de sus sub-carpetas y organizados como requiera el proyecto.

Un ejemplo de un archivo es

[actions.users.roles.add]
es = "Se agrego un rol a {target}."
en = "A role was added to {target}."

Y esto se puede obtener de la siguiente manera

use translatable::translation;

fn main() {
  let target = "Juan";
  // devuelve un String.
  translation!("es", static actions::users::roles::add, target);
  // devuelve un Result<String, translatable::Error>
  translation!(Language::ES, vec!["actions", "users", "roles", "add"], target);
}

Los argumentos se pueden mezclar, siendo que el idioma sea dinámico y la ruta estática o viceversa. Los argumentos también se pueden asignar en la propia macro como target = "Juan" en la invocación directamente.

Esto es completamente de código abierto y esta disponible en GitHub.

https://github.com/FlakySL/translatable
https://crates.io/crates/translatable

Gracias.

-# la librería fue creada por mi junto a @bright sapphire

GitHub

A robust internationalization solution for Rust featuring compile-time validation, ISO 639-1 compliance, and TOML-based translation management. - FlakySL/translatable

heady drum
#

A ver si sale como yo espero

#

La macro ya esta parseada y generada, falta pulir

#

Documentar testear y listo

viral citrus
#

Oka

ruby lynx
#

Super útil, me encanta, facil de usar, muchas gracias!!!

heady drum
gleaming junco
#

fuaaa, lo probare en el siguiente proyecto de rust que tenga

heady drum
#

@upbeat anvil me puedes dar tu opinion sobre la 1.0? Pls

#

Q tu tienes experiencia con librerias y demas

upbeat anvil
#

pero pondria algun example en /examples

heady drum
#

Y gracias por la estrellita tambien 😊