Skip to content
This repository has been archived by the owner on May 18, 2024. It is now read-only.

Commit

Permalink
Merge branch 'spanishTra' of https://github.com/matiasbian/2048-cli i…
Browse files Browse the repository at this point in the history
…nto matiasbian-spanishTra
  • Loading branch information
tiehuis committed Nov 18, 2018
2 parents 850638e + 6ad9b16 commit 0e81799
Show file tree
Hide file tree
Showing 14 changed files with 341 additions and 18 deletions.
Binary file added 18n/es_AR/LC_MESSAGES/gfx_curses.mo
Binary file not shown.
Binary file added 18n/es_AR/LC_MESSAGES/gfx_terminal.mo
Binary file not shown.
Binary file added 18n/es_AR/LC_MESSAGES/highscore.mo
Binary file not shown.
53 changes: 53 additions & 0 deletions HowToTranslate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@

# How to translate 2048 to another language.

First, if you do not have Gettext, get it by entering the following command by terminal

```
sudo apt-get install gettext
```

We aim to have the following structure for our directory:

./po/language_name/file.po

So, go to the ./po directory and then create a directory with your language standard name.

for example:

```
mkdir po/es_AR
```

The next step is to generate the .po files with the following command (change 'es_AR' by your language standard name):
```
msginit --input=po/gfx_curses.pot --locale=es_AR --output=po/es_AR/gfx_curses.po
msginit --input=po/gfx_terminal.pot --locale=es_AR --output=po/es_AR/gfx_terminal.po
msginit --input=po/highscore.pot --locale=es_AR --output=po/es_AR/gfx_highscore.po
```

### Translation

Now, we can translate the strings:

so, go to ./po/language_name/ and translate the strings in the .po files with a text editor.

for example:
![Screenshot](https://k62.kn3.net/5/0/D/B/4/4/870.png)


Nwe should create the directory where we'll place the .mo files (change es_AR by your language standard name):

```
mkdir 18n/es_AR/LC_MESSAGES
```

The last step is to generate the .mo file:

```
msgfmt --output-file=/18n/es_AR/LC_MESSAGES/gfx_curses.mo po/es_AR/gfx_curses.po
msgfmt --output-file=/18n/es_AR/LC_MESSAGES/gfx_terminal.mo po/es_AR/gfx_terminal.po
msgfmt --output-file=/18n/es_AR/LC_MESSAGES/highscore.mo po/es_AR/highscore.po
```

##And this is it!
33 changes: 33 additions & 0 deletions po/es_AR/gfx_curses.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Spanish translations for 2048 package.
# Copyright (C) 2018 THE 2048'S COPYRIGHT HOLDER
# This file is distributed under the same license as the 2048 package.
# Matias <[email protected]>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: 2048 v1.0.1\n"
"Report-Msgid-Bugs-To: [email protected]\n"
"POT-Creation-Date: 2018-04-26 18:58-0300\n"
"PO-Revision-Date: 2018-04-26 19:00-0300\n"
"Last-Translator: Matias <[email protected]>\n"
"Language-Team: Spanish\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#: src/gfx_curses.c:70
#, c-format
msgid " Hi: %d\n"
msgstr "Puntuación Máxima: %d\n"

#: src/gfx_curses.c:68
#, c-format
msgid "Score: %d\n"
msgstr "Puntuación: %d\n"

#: src/gfx_curses.c:66
#, c-format
msgid "Score: %d (+%d)\n"
msgstr "Puntuación: %d (+%d)\n"
33 changes: 33 additions & 0 deletions po/es_AR/gfx_terminal.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Spanish translations for PACKAGE package.
# Copyright (C) 2018 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Matias <[email protected]>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-04-26 19:02-0300\n"
"PO-Revision-Date: 2018-04-26 19:03-0300\n"
"Last-Translator: Matias <[email protected]>\n"
"Language-Team: Spanish\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#: src/gfx_terminal.c:46
#, c-format
msgid " Hi: %ld\n"
msgstr "Puntuación Máxima: %ld\n"

#: src/gfx_terminal.c:44
#, c-format
msgid "Score: %ld\n"
msgstr "Puntuación: %ld\n"

#: src/gfx_terminal.c:42
#, c-format
msgid "Score: %ld (+%ld)\n"
msgstr "Puntuación: %ld (+%ld)\n"
56 changes: 56 additions & 0 deletions po/es_AR/highscore.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Spanish translations for PACKAGE package.
# Copyright (C) 2018 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Matias <[email protected]>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-17 18:12-0300\n"
"PO-Revision-Date: 2018-05-17 18:19-0300\n"
"Last-Translator: Matias <[email protected]>\n"
"Language-Team: Argentinian <[email protected]>\n"
"Language: es_AR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#: src/highscore.c:58
#, c-format
msgid "Are you sure you want to reset your scores? Y(es) or N(o)\n"
msgstr "¿Estás seguro que quieres reiniciar tus puntuaciones? (S)i o (N)o\n"

#: src/highscore.c:76
#, c-format
msgid "Please enter Yes or No\n"
msgstr "Por favor ingresa Si o No\n"

#: src/highscore.c:95
#, c-format
msgid "load: Failed to open highscore file\n"
msgstr "Carga: Error al abrir el archivo de puntuaciones máximas\n"

#: src/highscore.c:100
#, c-format
msgid "load: Failed to parse highscore file\n"
msgstr "Carga: Error al parsear el archivo de puntuaciones máximas\n"

#: src/highscore.c:122
#, c-format
msgid "save: Failed to open highscore file\n"
msgstr "Guardado: Error al abrir el archivo de puntuaciones máximas\n"

#: src/highscore.c:127
#, c-format
msgid "save: Failed to write highscore file\n"
msgstr "Guardado: Error al escribir el archivo de puntuaciones máximas\n"

#: src/highscore.c:71
msgid "y"
msgstr "s"

#: src/highscore.c:71
msgid "yes"
msgstr "si"
33 changes: 33 additions & 0 deletions po/gfx_curses.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: 2048 v1.0.1\n"
"Report-Msgid-Bugs-To: [email protected]\n"
"POT-Creation-Date: 2018-04-26 18:58-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <[email protected]>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: src/gfx_curses.c:70
#, c-format
msgid " Hi: %d\n"
msgstr ""

#: src/gfx_curses.c:68
#, c-format
msgid "Score: %d\n"
msgstr ""

#: src/gfx_curses.c:66
#, c-format
msgid "Score: %d (+%d)\n"
msgstr ""
33 changes: 33 additions & 0 deletions po/gfx_terminal.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-04-26 19:02-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: src/gfx_terminal.c:46
#, c-format
msgid " Hi: %ld\n"
msgstr ""

#: src/gfx_terminal.c:44
#, c-format
msgid "Score: %ld\n"
msgstr ""

#: src/gfx_terminal.c:42
#, c-format
msgid "Score: %ld (+%ld)\n"
msgstr ""
56 changes: 56 additions & 0 deletions po/highscore.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-17 18:12-0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <[email protected]>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: src/highscore.c:58
#, c-format
msgid "Are you sure you want to reset your scores? Y(es) or N(o)\n"
msgstr ""

#: src/highscore.c:76
#, c-format
msgid "Please enter Yes or No\n"
msgstr ""

#: src/highscore.c:95
#, c-format
msgid "load: Failed to open highscore file\n"
msgstr ""

#: src/highscore.c:100
#, c-format
msgid "load: Failed to parse highscore file\n"
msgstr ""

#: src/highscore.c:122
#, c-format
msgid "save: Failed to open highscore file\n"
msgstr ""

#: src/highscore.c:127
#, c-format
msgid "save: Failed to write highscore file\n"
msgstr ""

#: src/highscore.c:71
msgid "y"
msgstr ""

#: src/highscore.c:71
msgid "yes"
msgstr ""
14 changes: 8 additions & 6 deletions src/gfx_curses.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
#include <unistd.h>
#include "gfx.h"
#include "merge.h"
#include <gettext.h>
#include <locale.h>

#define NUMBER_OF_COLORS 7

Expand Down Expand Up @@ -62,14 +64,14 @@ struct gfx_state* gfx_init(struct gamestate *g)
void gfx_draw(struct gfx_state *s, struct gamestate *g)
{
if (g->score_last)
mvwprintw(s->window, 0, 0, "Score: %d (+%d)\n", g->score, g->score_last);
mvwprintw(s->window, 0, 0, gettext("Score: %d (+%d)\n"), g->score, g->score_last);
else
mvwprintw(s->window, 0, 0, "Score: %d\n", g->score);
mvwprintw(s->window, 0, 0, gettext("Score: %d\n"), g->score);

if (g->score >= g->score_high)
g->score_high = g->score;
mvwprintw(s->window, 1, 0, " Hi: %d\n", g->score_high);
if (g->score >= g->score_high)
g->score_high = g->score;

mvwprintw(s->window, 1, 0, gettext(" Hil: %d\n"), g->score_high);

wattron(s->window, A_DIM);
iterate(g->opts->grid_width * (g->print_width + 2) + 1, waddch(s->window, '-'));
Expand Down
12 changes: 7 additions & 5 deletions src/gfx_terminal.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
#include <unistd.h>
#include "merge.h"
#include "gfx.h"
#include <libintl.h>
#include <locale.h>

#define iterate(n, expression)\
do {\
Expand Down Expand Up @@ -37,14 +39,14 @@ void gfx_draw(struct gfx_state *s, struct gamestate *g)
#endif

if (g->score_last)
printf("Score: %ld (+%ld)\n", g->score, g->score_last);
printf(gettext("Score: %ld (+%ld)\n"), g->score, g->score_last);
else
printf("Score: %ld\n", g->score);
printf(gettext("Score: %ld\n"), g->score);

if (g->score >= g->score_high)
g->score_high = g->score;
if (g->score >= g->score_high)
g->score_high = g->score;

printf(" Hi: %ld\n", g->score_high);
printf(gettext(" Hi: %ld\n"), g->score_high);

iterate((g->print_width + 2) * g->opts->grid_width + 1, printf("-")); printf("\n");

Expand Down
Loading

0 comments on commit 0e81799

Please sign in to comment.