RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    EmulationStation localization (translation)

    Scheduled Pinned Locked Moved Ideas and Development
    emulationstatiolocalizationlanguageuser interface
    305 Posts 62 Posters 127.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • heloisaH
      heloisa @kactius
      last edited by heloisa

      @kactius Hello. Thanks for warning me, typing error. Open pull request on my github, or send me email with the improvements. :)

      1 Reply Last reply Reply Quote 0
      • hiulitH
        hiulit
        last edited by

        Thanks @heloisa ! It works! :D

        My little contributions to the RetroPie project:

        • Shell-Script-Boilerplate
        • Fun-Facts-Splashscreens
        • Limit-Last-Played-Games
        heloisaH 1 Reply Last reply Reply Quote 1
        • hiulitH
          hiulit
          last edited by

          I would like to thank @Flyinghead for this fork of EmulationStation and the rest of the people that made localization possible. It's a pity that the RetroPie team doesn't want (that's my understanding) to add this feature to the master branch of RetroPie's EmulationStation fork. It would be really cool.

          In the meantime, @Flyinghead , could you update your fork to be at the same level as RetroPie's EmulationStation fork? There has been many new features that the people who also want localization are missing.

          Thanks a lot! :)

          My little contributions to the RetroPie project:

          • Shell-Script-Boilerplate
          • Fun-Facts-Splashscreens
          • Limit-Last-Played-Games
          1 Reply Last reply Reply Quote 1
          • hiulitH
            hiulit
            last edited by

            Btw, @heloisa , why do you need to do the step 3 on your documentation?

            Copy the Locale Directory

            cp -r locale/lang/fr locale/lang/(Your locale)
            

            I didn't use it and I got it working anyway.

            My little contributions to the RetroPie project:

            • Shell-Script-Boilerplate
            • Fun-Facts-Splashscreens
            • Limit-Last-Played-Games
            heloisaH 1 Reply Last reply Reply Quote 0
            • heloisaH
              heloisa @hiulit
              last edited by

              @hiulit :) Good thing it worked, you're welcome.

              hiulitH 1 Reply Last reply Reply Quote 1
              • heloisaH
                heloisa @hiulit
                last edited by

                @hiulit I couldn't translate without. I'll try again without step 3. Tks

                1 Reply Last reply Reply Quote 1
                • hiulitH
                  hiulit
                  last edited by

                  Does anybody know who did the Italian and French translations?

                  My little contributions to the RetroPie project:

                  • Shell-Script-Boilerplate
                  • Fun-Facts-Splashscreens
                  • Limit-Last-Played-Games
                  1 Reply Last reply Reply Quote 0
                  • hiulitH
                    hiulit
                    last edited by

                    Questions for @Flyinghead :

                    • Is the .gitignore that I see in some LC_MESSAGES folders necessary?
                    • Shouldn't we agree on the first part of the *.po file?
                    msgid ""
                    msgstr ""
                    "Project-Id-Version: retropie-emulationstation\n"
                    "Report-Msgid-Bugs-To: \n"
                    "POT-Creation-Date: 2019-02-06 10:58+0100\n"
                    "Last-Translator: hiulit \n"
                    "Language: ca_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"
                    

                    Is this the correct version? What should/n't be on it?

                    Thanks!

                    My little contributions to the RetroPie project:

                    • Shell-Script-Boilerplate
                    • Fun-Facts-Splashscreens
                    • Limit-Last-Played-Games
                    1 Reply Last reply Reply Quote 0
                    • hiulitH
                      hiulit
                      last edited by hiulit

                      Updated the README on @Flyinghead 's EmulationStation fork.

                      Localized EmulationStation

                      This is a localized fork of Retropie's EmulationStation fork.

                      Inspired by similar work on the Recalbox fork.

                      Languages currently supported

                      • Catalan
                      • French
                      • Italian
                      • Japanese
                      • Portuguese (Brazilian)
                      • Spanish

                      How to use the localized EmulationStation

                      Resolve dependencies of libraries

                      sudo apt-get install -y libboost-system-dev libboost-filesystem-dev libboost-date-time-dev libboost-locale-dev libfreeimage-dev libfreetype6-dev libeigen3-dev libcurl4-openssl-dev libasound2-dev cmake libsdl2-dev
                      

                      Create a clone from GitHub

                      cd /home/pi/
                      git clone --recursive https://github.com/flyinghead/EmulationStation.git
                      

                      Compile EmulationStation

                      cd /home/pi/EmulationStation
                      mkdir build
                      cd build
                      cmake ..
                      make
                      

                      Run EmulationStation

                      Be aware that your system must be set to the same locale that you want EmulationStation to run on.

                      cd /home/pi/EmulationStation
                      LANG=[your_locale].UTF8 ./emulationstation
                      

                      Install EmulationStation

                      cd /home/pi/EmulationStation
                      sudo cp ./emulationstation /opt/retropie/supplementary/emulationstation/
                      sudo cp -r locale /opt/retropie/supplementary/emulationstation/
                      

                      How to add a translation

                      You should have, at least, created a clone from GitHub before continuing with the following steps.

                      Create files for the new locale

                      cd /home/pi/EmulationStation/locale
                      mkdir lang/[your_locale]
                      cp emulationstation2.pot lang/[your_locale]/emulationstation2.po
                      

                      Translate the strings

                      Open the newly created emulationstation2.po inside [your_locale] folder and start translating all the msgstr strings.

                      Once you are done, you can compile EmulationStation and then run it to test your translations.

                      Author

                      flyinghead.

                      Credits

                      Thanks to:

                      • flyinghead - For the French translations.
                      • heloisa - For the Portuguese (Brazilian) and Spanish (Spain) translations.
                      • wakaya - For the Japanese translations and for the instructions on how to use the localized EmulationStation.
                      • hiulit - For the Catalan and Spanish (Spain) translations.
                      • Unknown - For the Italian translations.

                      My little contributions to the RetroPie project:

                      • Shell-Script-Boilerplate
                      • Fun-Facts-Splashscreens
                      • Limit-Last-Played-Games
                      W pablokk4P 3 Replies Last reply Reply Quote 1
                      • hiulitH
                        hiulit @heloisa
                        last edited by

                        @heloisa Yay! :D

                        My little contributions to the RetroPie project:

                        • Shell-Script-Boilerplate
                        • Fun-Facts-Splashscreens
                        • Limit-Last-Played-Games
                        1 Reply Last reply Reply Quote 1
                        • ande.rochaA
                          ande.rocha Banned
                          last edited by

                          @heloisa ou Carmen Sandiego, como preferir... rs
                          Poderia me ajudar a configurar o ES para o português pt-br também?

                          heloisaH 1 Reply Last reply Reply Quote 1
                          • heloisaH
                            heloisa @ande.rocha
                            last edited by

                            @ande-rocha kkkkk meu jogo favorito. Então, eu fiz o passo a passo. AQUI. Mas se não conseguir, me envie email, está ali no meu GitHub.

                            1 Reply Last reply Reply Quote 0
                            • ClydeC
                              Clyde
                              last edited by

                              Hello everyone,

                              is anyone working on a German locale already? If not, I would like to give it a try.

                              Do I just take the emulationstation2.pot and write the translated terms into the corresponding msgstr fields? Where should I put the final file and how should I name it? I already have a Github account if it helps.

                              Thanks for any advice.

                              W hiulitH 2 Replies Last reply Reply Quote 2
                              • W
                                wakaya @hiulit
                                last edited by wakaya

                                @hiulit

                                You should ask me questions, because I'm the author of this explanation, may be.

                                This explanation is just for "adding a new locale".
                                It does not explain how to compile from an existing source tree.
                                Therefore, I think that step 3 is an essential method to simply add a locale.

                                In addition, I found out that your document contains old information.
                                "sudo apt-get install libboost1.62-*"
                                It is unnecessary.

                                The latest commentary is always updated with https://pastebin.com/edit/L3MyFkeD.
                                Because the information has not been confirmed at this time.

                                I am writing a document on pastebin because there is a possibility of future modification.
                                I think that writing a "well formatted document" on a place like a forum may cause misunderstanding.

                                hiulitH 1 Reply Last reply Reply Quote 1
                                • W
                                  wakaya @Clyde
                                  last edited by

                                  @Clyde

                                  Hello:-)
                                  I wrote a brief comment on "https://pastebin.com/edit/L3MyFkeD"
                                  You should replace (your locale) with "de_DE" or similar locale.

                                  The way of editing just fills msgstr with German as you assumed.
                                  Since you already have a github account, you should send a pull request to flyinghead after your editing.

                                  1 Reply Last reply Reply Quote 0
                                  • hiulitH
                                    hiulit @wakaya
                                    last edited by hiulit

                                    @wakaya Sorry, I thought it was a text from @heloisa . I took it from here https://github.com/heloisatech/Translate-EmulationStation/wiki/Translate-EmulationStation-on-RetroPie

                                    Anyway, I will credit you in the README.

                                    Apart from that, I will remove sudo apt-get install libboost1.62-*. Thanks.

                                    Also I would like to point out, regarding cp -r locale/lang/fr locale/lang/(Your locale) that I think it would be better to start from emulationstation2.pot, create the necessary folders and then edit the resulting emulationstation2.po.

                                    BTW, I can't see your pastebin. It tells me to login.

                                    My little contributions to the RetroPie project:

                                    • Shell-Script-Boilerplate
                                    • Fun-Facts-Splashscreens
                                    • Limit-Last-Played-Games
                                    heloisaH 1 Reply Last reply Reply Quote 0
                                    • hiulitH
                                      hiulit @Clyde
                                      last edited by

                                      @Clyde Yeah, you should create a folder inside lang with your locale, in this case de_DE. Inside this folder create a LC_MESSAGES folder and then copy emulationstation2.pot in it, changing the extension to .po.

                                      My little contributions to the RetroPie project:

                                      • Shell-Script-Boilerplate
                                      • Fun-Facts-Splashscreens
                                      • Limit-Last-Played-Games
                                      1 Reply Last reply Reply Quote 0
                                      • hiulitH
                                        hiulit
                                        last edited by

                                        @heloisa I tweaked a little bit your Spanish translations, I hope you don't mind. I wanted to ask you, what kind of Spanish were you targeting? Meaning, Spanish from Spain or from a central/south America country? Because my changes were targeted to Spanish from Spain.

                                        Anyway, in any case, the locale must be specified. If it's Spanish from Spain, then it should be es_ES.

                                        Here's a list of all the locales https://stackoverflow.com/questions/3191664/list-of-all-locales-and-their-short-codes

                                        My little contributions to the RetroPie project:

                                        • Shell-Script-Boilerplate
                                        • Fun-Facts-Splashscreens
                                        • Limit-Last-Played-Games
                                        heloisaH 1 Reply Last reply Reply Quote 1
                                        • hiulitH
                                          hiulit
                                          last edited by hiulit

                                          I would like to ask the room, but especially @Flyinghead , as the author and maintainer , why are we using underscore for the locales? I've found that the "standard" seems to be to use a dash.

                                          es_ES -> es-ES.

                                          Should we change it?

                                          EDIT:

                                          It's settled. Linux uses underscore. We are fine then :)

                                          My little contributions to the RetroPie project:

                                          • Shell-Script-Boilerplate
                                          • Fun-Facts-Splashscreens
                                          • Limit-Last-Played-Games
                                          1 Reply Last reply Reply Quote 0
                                          • ClydeC
                                            Clyde
                                            last edited by

                                            @wakaya @hiulit Thank you for the advice, I'll look into it until next weekend, when I will have the time.

                                            @hiulit said in EmulationStation localization (translation):

                                            I would like to ask the room, but especially @Flyinghead , as he is the author and maintainer , why are we using underscore for the locales? I've found that the "standard" seems to be to use a dash.

                                            Which standard? Linux for example uses the underscore for its locales.

                                            hiulitH 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.