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 124.7k 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.
    • hiulitH
      hiulit @jdrassa
      last edited by

      @jdrassa Thanks for the explanation. I can't speak for @Flyinghead as he/she is the one who created this fork and did all the coding to allow the localization. He/she would be the one to better answer you about those changes unrelated to localization.

      In any case, could the localization be implemented in RetroPie's EmulationStation in another way? I know this would require time, effort and motivation, but I can see people want, or are very interested in localization. We already have a good amount of translations and if localization would ever be a part of the main EmulationStation (and with good documentation, that I'd be more than happy to help create) I think more people would contribute with more translations.

      My little contributions to the RetroPie project:

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

        Since it is not very probably that the current implementation can/will be merged, why not change the implementation?

        From my understanding you change the language not very often (mostly once during setup of an Arcade).

        Let's assume the localization (e.g. es_l10n) would be a retropie package that can be applied via retropie_setup.sh or retropie_package.sh.

        Just as idea (since this is the ideas and development forum ;-) ), the use case would be as follows:

        1. Install ES as ever
        2. Select l10n package, select your language from retropie-setup
          • The es_l10n package fetches ES sources and
          • does a search and replace with all the strings to localized with the user specified *.po file (the language)
          • recompiles ES and installs it in the usual manner

        On update of ES the process could be:

        1. During installation of the ES the es_l10n is called with the language set by the user as above,
        2. the language specific strings get replaced by the es_l10n package,
        3. then the usual install continues.

        Benefits:

        • No royal PITA (and/or "uphill battle") to merge the current implementation into upstream
        • Seamless integration into current retropie-setup logic
        • Current translation efforts are not lost

        Drawback:

        • Code changes from fork can not be used
        1 Reply Last reply Reply Quote 2
        • C
          CritKid
          last edited by CritKid

          is it possible to display german letters like ä ö ü ?

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

            @CritKid Yes, it already does https://github.com/flyinghead/EmulationStation/blob/9869db9237d3b3abf7b4cd56f1192aba5ce600e4/locale/lang/de_DE/LC_MESSAGES/emulationstation2.po#L338

            My little contributions to the RetroPie project:

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

              @hiulit fixed it :) thx

              another question, how is it possible to boot into "translated ES", instead of the original one ?
              i tried to edit Autostart.sh but it lost all Shutdwn/Reboot features..
              would be nice if there's a solution.

              1 Reply Last reply Reply Quote 0
              • RainisheR
                Rainishe
                last edited by

                retropie-4.5, the version of EmulationStation V2.8.4RP is released.
                Whether your EmulationStation will be updated? You have V2.8.0-DEV.

                1 Reply Last reply Reply Quote 0
                • Luc01L
                  Luc01
                  last edited by

                  J'ai tout relu le fil de cette discussion au moins 4 fois, mais j'ai toujours le même problème.

                  Je réussis à le mettre en français quand je teste avec LANG=fr.UTF8 ./emulationstation

                  Mais aussitôt que je quitte Putty ou que je lance un jeu, tout redevient en anglais.

                  La façon permanente pour le mettre en français semble décrite, mais pas assez détaillée pour un novice comme moi...

                  Quelqu'un peut m'aider ?

                  I have read the thread of this discussion at least 4 times, but I still have the same problem.

                  I manage to put it in French when I test with LANG = fr.UTF8 ./emulationstation

                  But as soon as I leave Putty or start a game, everything becomes English again.

                  The permanent way to put it in French seems described, but not detailed enough for a novice like me ...

                  Someone can help me ?

                  mituM 1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @Luc01
                    last edited by mitu

                    @Luc01 You can use 2 approaches

                    1. Modify your whole system to use FR_fr localization, through raspi-config - https://www.raspberrypi.org/documentation/configuration/raspi-config.md#change-locale.
                    2. Modify the start-up script to include the Locale settings - open /opt/retropie/configs/all/autostart.sh and add LANG=fr_FR.UTF8 before the emulationstation command:
                    LANG=fr_FR.UTF8 emulationstation #auto
                    

                    You can use the nano editor to modify the file from a Putty session.

                    nano /opt/retropie/configs/all/autostart.sh
                    
                    1 Reply Last reply Reply Quote 0
                    • Luc01L
                      Luc01
                      last edited by

                      Thank you for your quick answer, I test this and I give you new ones
                      Thank you again.

                      1 Reply Last reply Reply Quote 0
                      • Luc01L
                        Luc01
                        last edited by

                        I added this line and restarted but it does not work.
                        When I test with LANG = fr_FR.UTF8 ./emulationstation, it works well.

                        Image1.jpg

                        1 Reply Last reply Reply Quote 0
                        • Luc01L
                          Luc01
                          last edited by

                          Here is what I did :

                          1- 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 (Ok)

                          2- cd /home/pi/ (Ok)

                          3- git clone --recursive https://github.com/flyinghead/EmulationStation.git (Ok)

                          4- cd /home/pi/EmulationStation (Ok)

                          5- mkdir build (Ok)

                          6- cd build (Ok)

                          7- cmake .. (Ok)

                          8- make (Ok)

                          Testing

                          cd /home/pi/EmulationStation (Ok)

                          LANG=fr_FR.UTF8 ./emulationstation (Working)

                          Modify

                          Edit /opt/retropie/configs/all/autostart.sh
                          Modify
                          emulationstation #auto to LANG=fr_FR.UTF8 emulationstation #auto

                          Restart many time but dont work !!!

                          mituM 1 Reply Last reply Reply Quote 0
                          • mituM
                            mitu Global Moderator @Luc01
                            last edited by

                            @Luc01 said in EmulationStation localization (translation):

                            emulationstation #auto to LANG=fr_FR.UTF8 emulationstation #auto
                            Restart many time but dont work !!!

                            The autostart will run the default emulationstation package, which has no Localization options. If you didn't overwrite the default Emulationstation in RetroPie, then the autostart.sh must have the correct path to your compiled Emulationstation version:

                            LANG=fr_FR.UTF8 /home/pi/Emulationstation/emulationstation
                            
                            1 Reply Last reply Reply Quote 0
                            • Luc01L
                              Luc01
                              last edited by

                              Thank you, it works now but I had to change Emulationstation for EmulationStation otherwise it would not start.
                              Thank you very much, now it's very clear.

                              1 Reply Last reply Reply Quote 0
                              • Luc01L
                                Luc01
                                last edited by

                                Another question...
                                I started all over again because with the second approach, in the menu exit retropie, the commands did not work.

                                I follow all the steps, but at the installation (sudo cp ./emulationstation /opt/retropie/supplementary/emulationstation/) I always get the message "cp: can not create regular file"/opt/retropie/supplementary/emulationstation/emulationstation: Text file busy "

                                1 Reply Last reply Reply Quote 0
                                • Luc01L
                                  Luc01
                                  last edited by Luc01

                                  I put LANG=fr_FR.UTF8 emulationstation #auto in autostart.sh and now it works. and no more problem with the exit menu

                                  1 Reply Last reply Reply Quote 0
                                  • RainisheR
                                    Rainishe
                                    last edited by

                                    cделал русский перевод. перевод полный но в нем кое что надо будет поправить в будущем.
                                    ru_RU

                                    1 Reply Last reply Reply Quote 1
                                    • M
                                      mvmiranda
                                      last edited by

                                      First of all, thank you all for this!
                                      This is awesome as my kids and friends, who don't speak English, can fully enjoy my Retropie setup now!

                                      I'm running the latest Retropie 4.5.2 with underlying OS and every core updated along with the Comic Book theme and I'm experiencing something I'd call a hickup, not an issue or error.
                                      Whenever I load a game and quit it using START+SELECT the screen becomes black ad it takes almost 15 seconds to the theme come back with my games list.
                                      It started immediately after I compiled the emulationstation with localization and copied it over the original one.
                                      Does anyone have any clue of what might be happening?
                                      Thanks!

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

                                        Hi, I need a little help with GitHub. A while ago, I created a branch for the German translation: https://github.com/Taranchul/EmulationStation

                                        Now, I want to work a little more on the German translation, but my branch is "19 commits behind flyinghead:master", as Github tells me.

                                        How do I update my branch to the current state of @Flyinghead's master? I'm using Linux, so instructions for either the bash or the web interface of Github are welcome. Thanks!

                                        mituM 1 Reply Last reply Reply Quote 0
                                        • mituM
                                          mitu Global Moderator @Clyde
                                          last edited by

                                          @Clyde Assuming you have check out locally your Github repo, follow the instructions here to add @Flyinghead's repository as an upstream and sync it. Make your modifications locally, then push to your Github repo, so you'll be able to create a new PR to the upstream project.

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

                                            @mitu Thank you for pointing me in the right direction. For anyone who is puzzled about this, too, these commands did the job. Anything behind # in a line is just a comment.

                                            git clone https://github.com/Taranchul/EmulationStation # Use the url of your own branch.
                                            cd EmulationStation # Use the directory the former command downloaded to.
                                            git remote -v       # This should only show your own url as "origin".
                                            git remote add upstream https://github.com/flyinghead/EmulationStation # Don't change this url!
                                            git remote -v       # Just for checking, it should list flyinghead's repo as "upstream".
                                            git fetch upstream
                                            git checkout master
                                            git merge upstream/master               # Now, your LOCAL copy should match flyinghead's repo.
                                            git submodule update --init --recursive # Also clone the submodule in external/pugixml`.
                                            git push origin master                  # Upload your local copy to your GitHub repository.
                                            

                                            Guides used:

                                            • https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/configuring-a-remote-for-a-fork
                                            • https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork
                                            • https://help.github.com/en/github/using-git/pushing-commits-to-a-remote-repository
                                            • http://openmetric.org/til/programming/git-pull-with-submodule/

                                            More experienced users may correct anything that's wrong or unnecessary. :)

                                            One more question: After editing a file and pushing it into my repo, how do I make a pull request from the command line?

                                            Update: Added git submodule update --init --recursive and the resp. guide.

                                            1 Reply Last reply Reply Quote 0
                                            • 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.