summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Martínez <kaeza@users.noreply.github.com>2016-06-13 07:22:06 -0300
committerGitHub <noreply@github.com>2016-06-13 07:22:06 -0300
commit8b3a97a81af5ab72e96d070980ffb61175985e3e (patch)
treead38c0a25f53613d1b0619532b0a86ac201023b8
parentf80ae5684f390af7d888fd8ecd1478eb1275bede (diff)
Create README-es_UY.md
-rw-r--r--README-es_UY.md136
1 files changed, 136 insertions, 0 deletions
diff --git a/README-es_UY.md b/README-es_UY.md
new file mode 100644
index 0000000..79ea84d
--- /dev/null
+++ b/README-es_UY.md
@@ -0,0 +1,136 @@
+
+# Biblioteca de Internacionalización para Minetest
+
+Por Diego Martínez (kaeza).
+Lanzada bajo WTFPL.
+
+Éste mod es un intento de proveer soporte para internacionalización para otros mods
+(lo cual Minetest carece actualmente).
+
+## Cómo usar
+
+### Para usuarios finales
+
+Para usar éste mod, simplemente [instálalo](http://wiki.minetest.net/Installing_Mods)
+y habilítalo en la interfaz.
+
+Éste mod intenta detectar el idioma del usuario, pero ya que no existe una solución
+portable para hacerlo, éste intenta varias alternativas, y utiliza la primera
+encontrada:
+
+ * Opción `language` en `minetest.conf`.
+ * Si ésta no está definida, usa la variable de entorno `LANG` (ésta está
+ siempre definida en SOs como Unix).
+ * Si todo falla, usa `en` (lo cual básicamente significa textos sin traducir).
+
+En todo caso, el resultado final debe ser el In any case, the end result should be the
+[Código de Idioma ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
+del idioma deseado. Tenga en cuenta tambien que (de momento) solo los dos primeros
+caracteres son usados, así que por ejemplo, las opciones `de_DE.UTF-8`, `de_DE`,
+y `de` son iguales.
+
+Algunos códigos comúnes: `es` para Español, `pt` para Portugués, `fr` para Francés,
+`it` para Italiano, `de` para Aleman.
+
+### Para desarrolladores
+
+Para habilitar funcionalidad en tu mod, copia el siguiente fragmento de código y pégalo
+al comienzo de tus archivos fuente:
+
+```lua
+-- Boilerplate to support localized strings if intllib mod is installed.
+local S
+if minetest.get_modpath("intllib") then
+ S = intllib.Getter()
+else
+ -- Si no requieres patrones de reemplazo (@1, @2, etc) usa ésto:
+ S = function(s) return s end
+
+ -- Si requieres patrones de reemplazo, pero no escapes, usa ésto:
+ S = function(s,a,...)a={a,...}return s:gsub("@(%d+)",function(n)return a[tonumber(n)]end)end
+
+ -- Usa ésto si necesitas funcionalidad completa:
+ S = function(s,a,...)if a==nil then return s end a={a,...}return s:gsub("(@?)@(%(?)(%d+)(%)?)",function(e,o,n,c)if e==""then return a[tonumber(n)]..(o==""and c or"")else return"@"..o..n..c end end) end
+end
+```
+
+Tambien necesitarás depender opcionalmente de intllib. Para hacerlo, añade `intllib?`
+a tu archivo `depends.txt`. Ten en cuenta tambien que si intllib no está instalado,
+la función `S` es definida para regresar la cadena sin cambios. Ésto se hace para
+evitar la necesidad de llenar tu código con montones de `if`s (o similar) para verificar
+que la biblioteca está instalada.
+
+Luego, para cada cadena de texto a traducir en tu código, usa la función `S`
+(definida en el fragmento de arriba) para regresar la cadena traducida. Por ejemplo:
+
+```lua
+minetest.register_node("mimod:minodo", {
+ -- Cadena simple:
+ description = S("My Fabulous Node"),
+ -- Cadena con patrones de reemplazo:
+ description = S("@1 Car", "Blue"),
+ -- ...
+})
+```
+
+Nota: Las cadenas en el código fuente por lo general deben estar en ingles ya que
+es el idioma que más se habla. Es perfectamente posible especificar las cadenas
+fuente en español y proveer una traducción al ingles, pero no se recomienda.
+
+Luego, crea un directorio llamado `locale` dentro del directorio de tu mod, y crea
+un archivo "plantilla" (llamado `template.txt` por lo general) con todas las cadenas
+a traducir (ver *Formato de archivo de traducciones* más abajo). Los traductores
+traducirán las cadenas en éste archivo para agregar idiomas a tu mod.
+
+### Para traductores
+
+Para traducir un mod que tenga soporte para intllib al idioma deseado, copia el
+archivo `locale/template.txt` a `locale/IDIOMA.txt` (donde `IDIOMA` es el
+[Código de Idioma ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
+de tu idioma (`es` para español).
+
+Abre el archivo en tu editor favorito, y traduce cada línea colocando el texto
+traducido luego del signo de igualdad.
+
+Ver *Formato de archivo de traducciones* más abajo.
+
+## Formato de archivo de traducciones
+
+He aquí un ejemplo de archivo de idioma para el español (`es.txt`):
+
+```cfg
+# Un comentario.
+# Otro comentario.
+Ésta línea es ignorada porque no tiene un signo de igualdad.
+Hello, World! = Hola, Mundo!
+String with\nnewlines = Cadena con\nsaltos de linea
+String with an \= equals sign = Cadena con un signo de \= igualdad
+```
+
+Archivos de idioma (o traducción) son archivos de texto sin formato que consisten de
+líneas con el formato `texto fuente = texto traducido`. El archivo debe ubicarse en el
+subdirectorio `locale` del mod, y su nombre debe ser las dos letras del
+[Código de Idioma ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)
+del lenguaje al cual se desea traducir.
+
+Los archivos deben usar la codificación UTF-8.
+
+Las líneas que comienzan en el símbolo numeral (`#`) son comentarios y son ignoradas
+por el lector. Tenga en cuenta que los comentarios terminan al final de la línea;
+no hay soporte para comentarios multilínea. Las líneas que no contengan un signo
+de igualdad (`=`) tambien son ignoradas.
+
+## Palabras finales
+
+Gracias por leer hasta aquí.
+Si tienes algún comentario/sugerencia, por favor publica en el
+[tema en los foros](https://forum.minetest.net/viewtopic.php?id=4929). Para
+reportar errores, usa el [rastreador](https://github.com/minetest-mods/intllib/issues/new)
+en Github.
+
+¡Que se hagan las traducciones! :P
+
+\--
+
+Suyo,
+Kaeza