Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Gelöst] Adapter "admin" words.js aus i18n -> [lang] -> translations.json generieren

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Gelöst] Adapter "admin" words.js aus i18n -> [lang] -> translations.json generieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • snador
      snador last edited by

      Hallo,

      ich habe mir für die Adapterentwicklung und zum Testen die Adapter Template Vorlage von ioBroker kopiert und einen Dummy-Adapter gebaut und installiert. Jetzt hab ich in der Admin Oberfläche ein paar Felder hinzugefügt und möchter deren Labels / Options / Descriptions übersetzen. Nun gibt es im Adapter admin Ordner eine words.js in der steht, dass in dieser Datei nix hinzugefügt werden soll weil der Inhalt automatisch generiert wird. Und dann gibt es im i18n Ordner die ganzen Sprachen jeweils mit der translations.json. Ich gehe mal davon aus, das man hier die entsprechenden Übersetzungen einträgt - aber wie wird die words.js generiert? Automatisch beim Adapter Upload klappt es schon mal nicht. Ich hab irgendwo ne Anleitung gelesen, die irgendwas von gulp und "adminLanguagesFlat2words" erwähnt - allerdings ist bei dieser Anleitung immer die Rede von Textfiles (flat.txt). Ich gehe mal davon aus, dass diese Anleitung ggf. veraltet ist weil ich in den Language Ordnern ja schon die translations.json drin hab…

      Weis jemadn wie ich die words.js im Adapter genieren kann?

      1 Reply Last reply Reply Quote 0
      • Stabilostick
        Stabilostick last edited by

        Hi auch,

        kenne mich da nicht so gut aus, aber es gibt eine Hilfsfunktion unter

        http://iobroker.net:3000

        wo Du direkt maschinelle Übersetzungen im JSON-Format z.B. zum Kopieren in die words.js erhältst.

        Aber es geht bestimmt auch anders.

        1 Reply Last reply Reply Quote 0
        • snador
          snador last edited by

          Hi,

          ja die hab ich entdeckt. Und wenn ich Daten in der words.js hinterlege funktioniert es auch. Allerdings steht dort explizit in der Datei:

          "// DO NOT EDIT THIS FILE!!! IT WILL BE AUTOMATICALLY GENERATED FROM src/i18n"

          Ich vermute mal Irgendwer hat sich stark was dabei gedacht. 🙂 Hoffe ich 🙂

          Noch Jemand eine Idee?

          1 Reply Last reply Reply Quote 0
          • Stabilostick
            Stabilostick last edited by

            Ließ das durch:

            viewtopic.php?t=10268

            Hilft das?

            Zumindest steckt im gulpfile eine entsprechende Funktion zum Generieren der word.js drin.

            Wenn Du keinen i18n-Ordner hast, kannst Du IMHO ggf. die word.js direkt editieren. Ich stecke aber wie gesagt nicht tief drin.

            1 Reply Last reply Reply Quote 0
            • ldittmar
              ldittmar Developer last edited by

              @Stabilostick:

              viewtopic.php?t=10268 `

              Genau… hier wird erklärt wie man mit den flat.txt Dateien arbeitet. Die translation.json funktionieren genau so, nur als Befehl

              gulp adminWords2languages

              bzw

              gulp languages2adminWords

              , also ohne Flat, nehmen. Dann wird aus der JSON die words.js gebaut. Für die Bearbeitung der translation.json Dateien, existiert auch ein Editor, wo man alle Sprachen gleichzeitig bearbeiten kann.

              https://github.com/ldittmar81/ioBroker- ... r/releases

              386_21-12-_2018_07-14-28.png

              Ich nutze auch gerne Netbeans zum Entwickeln und da wird von Haus aus Gulp im Menü angeboten…

              386_21-12-_2018_07-29-17.png

              1 Reply Last reply Reply Quote 0
              • snador
                snador last edited by

                Hallo,

                ok Danke! Das sieht schon sehr vielversprechend aus. Leider hatte ich im Web nichts dazu gefunden.

                Nun habe ich es mal getestet mit "gulp languages2adminWords" und erhalten folgenden Fehler:

                root@miniserver:/opt/iobroker/node_modules/iobroker.nightingale# gulp languages2adminWords
                [08:58:46] Using gulpfile /opt/iobroker/node_modules/iobroker.nightingale/gulpfile.js
                [08:58:46] Task 'languages2adminWords' is not in your gulpfile
                [08:58:46] Please check the documentation for proper gulpfile formatting
                

                Wie kann ich denn den Task dem Gulpfile hinzufügen?

                1 Reply Last reply Reply Quote 0
                • snador
                  snador last edited by

                  Ok, ich hab im Gulpfile nachgeschaut und der Task muss "gulp adminLanguages2words" heißen, dann läuft der Process erfolgreich!

                  Also nochmal zur Zusammenfassung für die Suchenden:

                  Wenn man die Flatfiles nutzen möchte (flat.txt) dann folgende Befehle:

                  gulp adminWords2languagesFlat
                  

                  Generiert aus der words.js die entsprechenden Flatfiles in den Language Ordnern

                  gulp adminLanguagesFlat2words
                  

                  Generiert aus den Flatfiles der entsprechenden Language Ordner die words.js

                  Möchte man aber die JSON Files verwenden (translations.json) dann sind die folgenden Befehle angesagt:

                  gulp adminWords2languages
                  

                  und

                  gulp adminLanguages2words
                  

                  Danke an alle Helfenden!

                  1 Reply Last reply Reply Quote 0
                  • ldittmar
                    ldittmar Developer last edited by

                    @snador:

                    ich habe mir für die Adapterentwicklung und zum Testen die Adapter Template Vorlage von ioBroker kopiert und einen Dummy-Adapter gebaut… `

                    Schön dass es klappt. Bezüglich Template hätte ich da noch was: Es wird an einem Projekt gearbeitet um Templates automatisch zu generieren. Die alten Templates werden dann auch früher oder später verschwinden… Probier es doch mal aus. Ist richtig cool!

                    viewtopic.php?f=24&t=19148&p=199696&hil ... er#p199696

                    1 Reply Last reply Reply Quote 0
                    • frankjoke
                      frankjoke last edited by

                      Vielleicht bin ich zu blöd um das zu verstehen, aber habe das gulpfile in einige meiner Adapter eingebaut und auch gulp installiert (npm -g).

                      Dann hab ich beim ersten Adapter das gulp adminWords2languages ausgeführt und words.js wurde upgedated sowie die i18n's erzeugt.

                      Seit dem geht allerdings nichts mehr!

                      Im post stand dass ich nur im words.js (im englischen nehme ich an) was ändern muss und bekomme das wieder übersetzt.

                      Das funktioniert nicht!

                      Ich habe etliches hinzugefügt aber Gulp ist nach wenigen ms fertig und erzeugt keine Übersetzungen mehr 😞

                      Wozu brauch ich eigentlich die i18n Dateien? Ich will ja nur ein words.js das upgedated werden sol und wo ich neue Texte in Englisch einfüge (oder alte ändere) und die dann übersetzt bekomme? Oder?

                      p.s.: wollte das nicht nur für die Admin-Oberfläche sondern auch für den Adapter(.js) verwenden um dort mit require('./lib/words') auch so eine Datei zu integrieren und die ganzen logs und Texte umgesetzt zu bekommen. Wieder brauch ich kein i18n oder sowas in json.

                      Was mach ich falsch bzw. wo ist mein Gedankenfehler?

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      924
                      Online

                      31.6k
                      Users

                      79.4k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      783
                      Loading More Posts
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes
                      Reply
                      • Reply as topic
                      Log in to reply
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                      The ioBroker Community 2014-2023
                      logo