diff --git a/.github/workflows/publish_alpha.yml b/.github/workflows/publish_alpha.yml new file mode 100644 index 0000000..b43f906 --- /dev/null +++ b/.github/workflows/publish_alpha.yml @@ -0,0 +1,72 @@ +# This workflow will generate a distribution and upload it to PyPI + +name: Publish Alpha Build ...aX +on: + push: + branches: + - dev + paths-ignore: + - 'test/**' + - 'examples/**' + - '.github/**' + - '.gitignore' + - 'LICENSE' + - 'CHANGELOG.md' + - 'MANIFEST.in' + - 'readme.md' + - 'scripts/**' + - 'translations/**' + workflow_dispatch: + +jobs: + build_and_publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + ref: dev + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + - name: Setup Python + uses: actions/setup-python@v1 + with: + python-version: 3.8 + - name: Install Build Tools + run: | + python -m pip install build wheel + - name: Increment Version + run: | + VER=$(python setup.py --version) + python scripts/bump_alpha.py + - name: "Generate release changelog" + uses: heinrichreimer/github-changelog-generator-action@v2.3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + id: changelog + - name: Commit to dev + uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: Prepare alpha version package + branch: dev + - name: version + run: echo "::set-output name=version::$(python setup.py --version)" + id: version + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token + with: + tag_name: V${{ steps.version.outputs.version }} + release_name: Release ${{ steps.version.outputs.version }} + body: | + Changes in this Release + ${{ steps.changelog.outputs.changelog }} + draft: false + prerelease: true + - name: Build Distribution Packages + run: | + python setup.py bdist_wheel + - name: Publish to Test PyPI + uses: pypa/gh-action-pypi-publish@master + with: + password: ${{secrets.PYPI_TOKEN}} diff --git a/.github/workflows/sync_tx.yml b/.github/workflows/sync_tx.yml new file mode 100644 index 0000000..2fd378e --- /dev/null +++ b/.github/workflows/sync_tx.yml @@ -0,0 +1,32 @@ +name: Run script on merge to dev by gitlocalize-app + +on: + workflow_dispatch: + push: + branches: + - dev + +jobs: + run-script: + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v2 + with: + ref: dev + fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository. + - name: Setup Python + uses: actions/setup-python@v1 + with: + python-version: 3.9 + + - name: Run script if merged by gitlocalize-app[bot] + if: github.event_name == 'push' && github.event.head_commit.author.username == 'gitlocalize-app[bot]' + run: | + python scripts/sync_translations.py + + - name: Commit to dev + uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: Update translations + branch: dev diff --git a/scripts/prepare_translations.py b/scripts/prepare_translations.py new file mode 100644 index 0000000..46dee45 --- /dev/null +++ b/scripts/prepare_translations.py @@ -0,0 +1,53 @@ +"""this script should run every time the contents of the locale folder change +except if PR originated from @gitlocalize-app +TODO - on commit to dev +""" + +import json +from os.path import dirname +import os + +locale = f"{dirname(dirname(__file__))}/locale" +tx = f"{dirname(dirname(__file__))}/translations" + + +for lang in os.listdir(locale): + intents = {} + dialogs = {} + vocs = {} + regexes = {} + for root, _, files in os.walk(f"{locale}/{lang}"): + b = root.split(f"/{lang}")[-1] + + for f in files: + if b: + fid = f"{b}/{f}" + else: + fid = f + with open(f"{root}/{f}") as fi: + strings = [l.replace("{{", "{").replace("}}", "}") + for l in fi.read().split("\n") if l.strip() + and not l.startswith("#")] + + if fid.endswith(".intent"): + intents[fid] = strings + elif fid.endswith(".dialog"): + dialogs[fid] = strings + elif fid.endswith(".voc"): + vocs[fid] = strings + elif fid.endswith(".rx"): + regexes[fid] = strings + + os.makedirs(f"{tx}/{lang}", exist_ok=True) + if intents: + with open(f"{tx}/{lang}/intents.json", "w") as f: + json.dump(intents, f, indent=4) + if dialogs: + with open(f"{tx}/{lang}/dialogs.json", "w") as f: + json.dump(dialogs, f, indent=4) + if vocs: + with open(f"{tx}/{lang}/vocabs.json", "w") as f: + json.dump(vocs, f, indent=4) + if regexes: + with open(f"{tx}/{lang}/regexes.json", "w") as f: + json.dump(regexes, f, indent=4) diff --git a/scripts/sync_translations.py b/scripts/sync_translations.py new file mode 100644 index 0000000..9322d94 --- /dev/null +++ b/scripts/sync_translations.py @@ -0,0 +1,54 @@ +"""this script should run in every PR originated from @gitlocalize-app +TODO - before PR merge +""" + +import json +from os.path import dirname +import os + +locale = f"{dirname(dirname(__file__))}/locale" +tx = f"{dirname(dirname(__file__))}/translations" + + +for lang in os.listdir(tx): + intents = f"{tx}/{lang}/intents.json" + dialogs = f"{tx}/{lang}/dialogs.json" + vocs = f"{tx}/{lang}/vocabs.json" + regexes = f"{tx}/{lang}/regexes.json" + + if os.path.isfile(intents): + with open(intents) as f: + data = json.load(f) + for fid, samples in data.items(): + if samples: + samples = [s for s in samples if s] # s may be None + with open(f"{locale}/{lang}/{fid}", "w") as f: + f.write("\n".join(sorted(samples))) + + if os.path.isfile(dialogs): + with open(dialogs) as f: + data = json.load(f) + for fid, samples in data.items(): + if samples: + samples = [s for s in samples if s] # s may be None + with open(f"{locale}/{lang}/{fid}", "w") as f: + f.write("\n".join(sorted(samples))) + + if os.path.isfile(vocs): + with open(vocs) as f: + data = json.load(f) + for fid, samples in data.items(): + if samples: + samples = [s for s in samples if s] # s may be None + with open(f"{locale}/{lang}/{fid}", "w") as f: + f.write("\n".join(sorted(samples))) + + if os.path.isfile(regexes): + with open(regexes) as f: + data = json.load(f) + for fid, samples in data.items(): + if samples: + samples = [s for s in samples if s] # s may be None + with open(f"{locale}/{lang}/{fid}", "w") as f: + f.write("\n".join(sorted(samples))) + diff --git a/translations/da-dk/dialogs.json b/translations/da-dk/dialogs.json new file mode 100644 index 0000000..1f30e0c --- /dev/null +++ b/translations/da-dk/dialogs.json @@ -0,0 +1,63 @@ +{ + "/dialog/movie.popular.dialog": [ + "De nyeste popul\u00e6re film der er ude nu er {popul\u00e6rliste}.", + "{popularlist} top filmen charts lige nu." + ], + "/dialog/movie.production.single.dialog": [ + "Produktionsselskabet {company} producerede filmen {movie}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "Filmen (filmen | filmen | flicken) findes i en af \u200b\u200bgenrene; {genrelist} og {genrelistlast}", + "Folk mener (filmen | filmen) er en {genrelist} eller en {genrelistlastlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "filmene med genren {genre} er;" + ], + "/dialog/genre.tv.search.dialog": [ + "(fjernsyn | tv) (shows | serier) med genren {genre} er;" + ], + "/dialog/no.info.dialog": [ + "Undskyld. Jeg kan ikke finde nogen oplysninger om filmen {movie}" + ], + "/dialog/movie.description.dialog": [ + "(filmen | filmen) {movie} handler om dette.", + "her er en oversigt over (filmen | filmen) {film}." + ], + "/dialog/movie.recommendations.dialog": [ + "Jeg anbefaler filmmene {movielist}, hvis du kan lide filmen (filnen | flicken) {movie}", + "Filmerne {movielist} er et godt valg, hvis du kan lide filmen {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} blev udgivet den {\u00e5r} med et budget p\u00e5 {budget} dollars." + ], + "/dialog/movie.top.dialog": [ + "Dette er (top | den mest popul\u00e6re) film (ude | der spiller) nu; {Topliste}", + "{toplist} er (top | den mest popul\u00e6re) film (ude | der spiller) nu." + ], + "/dialog/movie.year.dialog": [ + "(filmen | flicken) {movie} blev (udgivet) i {\u00e5r}" + ], + "/dialog/movie.genre.single.dialog": [ + "(filmen | filmen) {movie} kunne v\u00e6re en {genre}", + "Du kan finde (filmen | flicken) {movie} under sektionen {genre}" + ], + "/dialog/movie.production.multiple.dialog": [ + "Virksomhederne {companies} og {lastcompany} producerede filmen {movie}", + "{companies} og {lastcompany} producerede filmen {movie}" + ], + "/dialog/movie.cast.dialog": [ + "Her er casten af \u200b\u200b{movie}; {actorlist} og {lastactor}", + "F\u00f8lgende personer (star | play | act) i filmen {movie}; {actorlist} og {lastactor}" + ], + "/dialog/bad.genre.catagory.dialog": [ + "Jeg kan ikke finde nogen (film | film) med genren {genre}" + ], + "/dialog/no.info.general.dialog": [ + "Jeg er ked af det, jeg kan ikke finde den liste, du leder efter lige nu; sp\u00f8rg igen senere." + ], + "/dialog/movie.runtime.dialog": [ + "Filmen {movie}, varer i {runtime} minutter.", + "Filmen {movie} er {runtime} minutter lang.", + "Hvis du ser {movie}; Du kan forvente omkring {runtime} minutter, f\u00f8r du kan f\u00e5 en tissepause." + ] +} \ No newline at end of file diff --git a/translations/da-dk/intents.json b/translations/da-dk/intents.json new file mode 100644 index 0000000..aaa4700 --- /dev/null +++ b/translations/da-dk/intents.json @@ -0,0 +1,51 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(list | find) film der er (i genren | en) {genre}", + "(list | find) {genre} film" + ], + "/vocab/movie.popular.intent": [ + "(liste | s\u00f8gning | s\u00f8g efter) popul\u00e6re film", + "hvad er (| de) popul\u00e6re film (der spiller | er ude) nu" + ], + "/vocab/movie.information.intent": [ + "(find | led efter | er der) (information | info) (p\u00e5 | om) (filmen |) {movie}", + "(giv | fort\u00e6l | hent) (| mig | os) (information | info) (p\u00e5 | om) (filmen | ) {movie}", + "(har du | kan du f\u00e5) (info | information) (p\u00e5| om) (filmen | ) {movie}" + ], + "/vocab/movie.production.intent": [ + "(hvem | hvilket firma) ahr (produceret | lavet) filmen {movie}" + ], + "/vocab/movie.top.intent": [ + "(list | hvad er | s\u00f8g efter) de (top | mest popul\u00e6re | h\u00f8jst vurderede) film (der spiller | er ude) (| nu)" + ], + "/vocab/movie.genres.intent": [ + "hvad (genrer | genre) tilh\u00f8rer (filmen|) {movie}", + "hvad er (genrer | genre) af (filmen|) {movie}", + "hvad (genrer | genre) er (filmem | ) {film}" + ], + "/vocab/movie.recommendations.intent": [ + "anbefal en film der (ligner | lignende) {movie}", + "hvilke film (ville | kan) du anbefale (der ligner | der lignende) {movie}", + "(list | f\u00e5) (gode|) film (der ligner | der lignende) {movie}" + ], + "/vocab/movie.year.intent": [ + "(hvilket \u00e5r | hvorn\u00e5r | hvilken dato) var filmen {movie} (lavet | frigivet)" + ], + "/vocab/movie.runtime.intent": [ + "Hvor lang tid (er|varer) (filmen|) {movie}", + "Hvad er spiletiden (for|p\u00e5) (filmen|) (film)", + "F\u00e5 (runtime | l\u00e6ngden) af (film | film | flick) {movie}" + ], + "/vocab/movie.description.intent": [ + "Hvad handler filmen {movie} om", + "fort\u00e6l (mig | os) om (filmen|) {movie}", + "giv (mig | os) en (beskrivelse | synopsis) af (filmen|) {movie}" + ], + "/vocab/genre.tv.search.intent": [ + "(list | find) (tv-shows | fjernsynsprogrammer | programmer) der er (en |) {genre}", + "(list | find) {genre} (tv-shows | fjernsnsprogrammer | programmer)" + ], + "/vocab/movie.cast.intent": [ + "hvem (spiller | er) i filmen {film}" + ] +} \ No newline at end of file diff --git a/translations/de-de/dialogs.json b/translations/de-de/dialogs.json new file mode 100644 index 0000000..7a2e1b2 --- /dev/null +++ b/translations/de-de/dialogs.json @@ -0,0 +1,75 @@ +{ + "/dialog/movie.popular.dialog": [ + "Die neuen popul\u00e4ren Filme sind {popularlist}.", + "{popularlist} ist jetzt ganz oben in den Filmcharts." + ], + "/dialog/movie.production.single.dialog": [ + "Die Produktionsfirma {company} produzierte den Film {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "Ich kann keine (TV|Fernseh-) Sendungen mit dem Genre {genre} finden" + ], + "/dialog/movie.genre.multiple.dialog": [ + "der (clip| film | flick) kann in einem der Genres gefunden werden; {genrelist} und {genrelistlast}", + "Die Leute betrachten den Film als {genrelist} oder {genrelistlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "Die Filme mit dem Genre {genre} sind;" + ], + "/dialog/genre.tv.search.dialog": [ + "Die (Fernseh|TV) Sendungen mit dem Genre {genre} sind;" + ], + "/dialog/no.info.dialog": [ + "Es tut mir leid. Ich kann keine Informationen zum (film | movie) {movie} finden." + ], + "/dialog/movie.description.dialog": [ + "Der (Movie|Film) {movie} handelt davon.", + "Hier ist eine Zusammenfassung der (movies|filme) {movie}." + ], + "/dialog/movie.recommendations.dialog": [ + "Ich empfehle die Filme {movielist}, wenn dir der (movie | Film) {movie} gef\u00e4llt", + "Die Filme {movielist} sind eine gute Wahl, wenn du den (movie | Film) {movie} magst" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} wurde {year} mit einem Budget von {budget} Dollar ver\u00f6ffentlicht." + ], + "/dialog/movie.top.dialog": [ + "Dies sind die (beliebtesten|bekanntesten) Filme, die gerade abgespielt werden; {toplist}", + "{toplist} sind derzeit die (beliebtesten) Filme, die gerade abgespielt werden." + ], + "/dialog/fallback.api.dialog": [ + "Greife auf die standard A P I zur\u00fcck" + ], + "/dialog/movie.year.dialog": [ + "der (movie| film|flick) {movie} wurde am {year} ver\u00f6ffentlicht" + ], + "/dialog/movie.genre.single.dialog": [ + "Der (Movie | Film) {movie} k\u00f6nnte als {genre} angesehen werden.", + "Du findest den (film|flick) {movie} im Abschnitt {genre}" + ], + "/dialog/movie.production.multiple.dialog": [ + "Die Firmen {companies} und {lastcompany} haben den Film {movie} produziert", + "{companies} und {lastcompany} haben den Film {movie} produziert" + ], + "/dialog/no.valid.api.dialog": [ + "Der von dir eingegebene A P I-Schl\u00fcssel ist ung\u00fcltig. In der Read Me-Datei findest du Anweisungen zum Beziehen eines Schl\u00fcssels." + ], + "/dialog/movie.cast.dialog": [ + "Hier ist die Besetzung von {movie}; {actorlist} und {lastactor}", + "Die folgenden Personen (Stars | spieler | Aktoren) im Film {movie}; {actorlist} und {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "Ich kann keine (TV|Fernseh-) Sendungen mit dem Genre {genre} finden" + ], + "/dialog/no.api.dialog": [ + "Du musst deine T M D B A P I-Kode unter home Punkt mycroft punkt A I eingeben, um die Movie Master-F\u00e4higkeit zu verwenden" + ], + "/dialog/no.info.general.dialog": [ + "Es tut mir leid, ich kann die gesuchte Liste derzeit nicht finden. Bitte frage mich sp\u00e4ter noch einmal." + ], + "/dialog/movie.runtime.dialog": [ + "Der (movie | film | flick) {movie} l\u00e4uft {runtime} Minuten.", + "Der (movie|film|flick) {movie} ist {runtime} Minuten lang.", + "Schaue {movie}; du musst mit ungef\u00e4hr {runtime} Minuten rechnen, bevor du eine Toilettenpause einlegen kannst." + ] +} \ No newline at end of file diff --git a/translations/de-de/intents.json b/translations/de-de/intents.json new file mode 100644 index 0000000..abc4181 --- /dev/null +++ b/translations/de-de/intents.json @@ -0,0 +1,51 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(liste | finde) (movies | filme) die (in |) {genre} sind", + "(liste|finde) {genre} (movies|filme)" + ], + "/vocab/movie.popular.intent": [ + "(liste|suche|finde) beliebte (Movies|Filme|Flicks)", + "Was sind ( |die) beliebtesten (Movies|Filme|Flicks) (aktulle|aktuell) ( |gespielte)" + ], + "/vocab/movie.information.intent": [ + "(finde|hole|schaue nach|gibt es) nach (informationen|infos) (\u00fcber|zum) (movie | film | flick) {movie}", + "(gib|hole|suche) (|mir|uns) (informationen|infos) (zu|\u00fcber) den (movie | film | flick) {movie}", + "(hast du|kannst du) (infos|informationen) \u00fcber den (Movie|Film|flick) {movie} (finden|bekommen|)" + ], + "/vocab/movie.production.intent": [ + "(wer|welche Firma) (produziert|produzierte) den Film {movie}" + ], + "/vocab/movie.top.intent": [ + "(Liste|Was sind|Suche) die (Top|Beliebtesten|Besten) (Movies|Filme|Flicks) zum abspielen" + ], + "/vocab/movie.genres.intent": [ + "Zu welchem (Genres|Genre) geh\u00f6rt der (Movie|Film|Flick) {movie}", + "Was sind die (Genres|Genre) der (Movie|Film|Flick) {movie}", + "Welches (Genres|Genre) (hat|ist) das (Movie|Film|flick) {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "empfehle (einen|) (Movie|Film|Flicks) (\u00e4hnlich zu|\u00e4hnlich) (wie|){movie}", + "Was empfehlst du (\u00e4hnliche|vergleichbare) (movies|Filme|Filme) wie {movie}", + "(liste|suche|finde) (|gute) (movies | Filme | flicks) (\u00e4hnlich wie|vergleichbar mit) {movie}" + ], + "/vocab/movie.year.intent": [ + "(in welchem Jahr | wann | zu welchem Datum) wurde der (Movie | Film | Flick) {movie} (gemacht | ver\u00f6ffentlicht)" + ], + "/vocab/movie.runtime.intent": [ + "Wie (lange|lang) ist der (movie|film|flick) {movie}", + "Was ist die (laufzeit|l\u00e4nge) vom (movie|Film|Flick) {movie}", + "suche die (Laufzeit | L\u00e4nge) des (Films|Movies|Flicks) {movie}" + ], + "/vocab/movie.description.intent": [ + "Worum geht es in (movie | film | flick) {movie}", + "erz\u00e4hle (mir|uns) vom (Movie|Film|flick) {movie}", + "(gib|nenne) (mir|uns) eine (Beschreibung|Zusammenfassung) des (movies|films|flicks) {movie}" + ], + "/vocab/genre.tv.search.intent": [ + "(liste|finde|hole) (Fernsehssendungen|Sendung|Sendungen) die (|in) {genre} sind", + "(liste|finde|hole) {genre} (Fernsehsendungen|Sendungen|Sendung)" + ], + "/vocab/movie.cast.intent": [ + "wer (handelt|spielt|ist) im (movie|film|Titel) {movie}" + ] +} \ No newline at end of file diff --git a/translations/en-us/dialogs.json b/translations/en-us/dialogs.json new file mode 100644 index 0000000..b78b66f --- /dev/null +++ b/translations/en-us/dialogs.json @@ -0,0 +1,81 @@ +{ + "/dialog/movie.popular.dialog": [ + "The new popular movies out now are {popularlist} and {lastmovie}.", + "{popularlist} and {lastmovie} top the movie charts right now." + ], + "/dialog/movie.production.single.dialog": [ + "The production company {company}, produced the movie {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "I can not find any (TV|television) shows with the genre {genre}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "The (movie|film|flick) can be found in one of the genres; {genrelist} and {genrelistlast}", + "People consider the (movie|film) a {genrelist} or {genrelistlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "the movies with the genre {genre} are;" + ], + "/dialog/genre.tv.search.dialog": [ + "the (television|TV) shows with the genre {genre} are;" + ], + "/dialog/no.info.dialog": [ + "I'm sorry. I can not find any information on the (film|movie) {movie}" + ], + "/dialog/movie.description.dialog": [ + "the (movie|film) {movie} is about this.", + "here is a synopsis of the (movie|film) {movie}." + ], + "/dialog/movie.description.error.dialog": [ + "I can not seem to find information on the (movie|film|flick) {movie}." + ], + "/dialog/movie.recommendations.dialog": [ + "I recommend the movies {movielist} and {lastmovie}, if you like the (movie|flick) {movie}", + "The movies {movielist} and {lastmovie} are a good choice if you like the (movie|flick) {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} was released on {year}, with a budget of {budget} dollars." + ], + "/dialog/movie.top.dialog": [ + "These are the (top|most popular) movies (out|playing) now; {toplist}, and {lastmovie}", + "{toplist}, and {lastmovie} are the (top|most popular) movies (out|playing) now." + ], + "/dialog/fallback.api.dialog": [ + "Falling back to the default A P I" + ], + "/dialog/movie.year.dialog": [ + "the (movie|film|flick) {movie} was (made|released) on {year}" + ], + "/dialog/movie.genre.single.dialog": [ + "The (movie|film) {movie} could be considered a {genre}", + "You can find the (film|flick) {movie} in the {genre} section" + ], + "/dialog/movie.year.error.dialog": [ + "I can not find a release date for the (movie|film|flick) {movie}" + ], + "/dialog/movie.production.multiple.dialog": [ + "The companies {companies} and {lastcompany} produced the movie {movie}", + "{companies} and {lastcompany} produced the movie {movie}" + ], + "/dialog/no.valid.api.dialog": [ + "The A P I key that you entered is not valid. Refer to the read me file for instructions on how to obtain one." + ], + "/dialog/movie.cast.dialog": [ + "Here is the cast of {movie}; {actorlist} and {lastactor}", + "The following people (star|play|act) in the movie {movie}; {actorlist} and {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "I can not find any (TV|television) shows with the genre {genre}" + ], + "/dialog/no.api.dialog": [ + "You must enter your T M D B A P I key at home dot mycroft dot A I to use the movie master skill" + ], + "/dialog/no.info.general.dialog": [ + "I'm sorry, I can not find the list you are looking for right now; please ask again later." + ], + "/dialog/movie.runtime.dialog": [ + "The (movie|film|flick) {movie}, runs for {runtime} minutes.", + "The (movie|film|flick) {movie} is {runtime} minutes long.", + "Watching {movie}; You can expect about {runtime} minutes before you can have a bathroom break." + ] +} \ No newline at end of file diff --git a/translations/en-us/intents.json b/translations/en-us/intents.json new file mode 100644 index 0000000..f4477c2 --- /dev/null +++ b/translations/en-us/intents.json @@ -0,0 +1,55 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(list|find) (movies|films) that are (a| ) {genre}", + "(list|find) {genre} (movies|films)" + ], + "/vocab/movie.popular.intent": [ + "(list|search|(search|look) for) popular (movies|films|flicks)", + "what are ( |the) popular (movies|films|flicks) (playing|out) ( |now)" + ], + "/vocab/movie.information.intent": [ + "(find|get|look for|is there) (information|info) (on|about) the (movie|film|flick) {movie}", + "(give|tell|get) (|me|us) (information|info) (on|about) the (movie|film|flick) {movie}", + "(do you have|can you get) (info|information) (on|about) the (movie|film|flick) {movie}" + ], + "/vocab/movie.genre.search.intent": [ + "(list|find) (movies|films|flicks) that are (a| ) {genre}", + "(list|find) {genre} (movies|films|flicks)" + ], + "/vocab/movie.production.intent": [ + "(who|what company) (produced|made) the movie {movie}" + ], + "/vocab/movie.top.intent": [ + "(list|what are|search for) the (top|most popular|highest rated) (movies|films|flicks) (playing|out) (|now)" + ], + "/vocab/movie.genres.intent": [ + "what (genres|genre) does the (movie|film|flick) {movie} belong to", + "what are the (genres|genre) of the (movie|film|flick) {movie}", + "what (genres|genre) (is|are) the (movie|film|flick) {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "recommend (movies|films|flicks) (similar to|like) {movie}", + "what (movies|films|flicks) (would|do) you recommend (similar to|like) {movie}", + "(list|get) (|good) (movies|films|flicks) (similar to|like) {movie}" + ], + "/vocab/movie.year.intent": [ + "(what year|when|what date) was the (movie|film|flick) {movie} (made|released)" + ], + "/vocab/movie.runtime.intent": [ + "How long is the (movie|film|flick) {movie}", + "What is the (runtime|length) of the (movie|film|flick) {movie}", + "Get the (runtime|length) of the (movie|film|flick) {movie}" + ], + "/vocab/movie.description.intent": [ + "what is the (movie|film|flick) {movie} about", + "tell (me|us) about the (movie|film|flick) {movie}", + "(give|get) (|me|us) a (description|synopsis) of the (movie|film|flick) {movie}" + ], + "/vocab/genre.tv.search.intent": [ + "(list|find|get) (TV shows|television shows|shows) that are (|a) {genre}", + "(list|find|get) {genre} (TV shows|television shows|shows)" + ], + "/vocab/movie.cast.intent": [ + "who (acts|plays|is) in the (movie|film|flick) {movie}" + ] +} \ No newline at end of file diff --git a/translations/es-es/dialogs.json b/translations/es-es/dialogs.json new file mode 100644 index 0000000..68852a8 --- /dev/null +++ b/translations/es-es/dialogs.json @@ -0,0 +1,75 @@ +{ + "/dialog/movie.popular.dialog": [ + "Las nuevas pel\u00edculas populares por ahi son {popularlist}", + "Las pel\u00edculas {popularlist} lideran los rankings ahora." + ], + "/dialog/movie.production.single.dialog": [ + "La productora {company} produjo la pel\u00edcula {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "No puedo hallar ning\u00fan programa de (TV|television) con el g\u00e9nero {genre}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "(La|El) (pel\u00edcula|filme) se puede encontrar en uno de los g\u00e9neros; {genrelist} y {genrelistlast}", + "La gente considera (la|el) (pel\u00edcula|filme) (una|un) {genrelist} o {genrelistlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "las pel\u00edculas del g\u00e9nero {genre} son;" + ], + "/dialog/genre.tv.search.dialog": [ + "Los programas de (televisi\u00f3n|TV) del g\u00e9nero {genre} son;" + ], + "/dialog/no.info.dialog": [ + "Lo siento, No puedo encontrar ninguna informaci\u00f3n sobre (la|el) (pel\u00edcula|filme) {movie}" + ], + "/dialog/movie.description.dialog": [ + "la pelicula {movie} ((se|) trata|va) de \u00e9sto.", + "Aqu\u00ed hay una sinopsis de la pel\u00edcula {movie}" + ], + "/dialog/movie.recommendations.dialog": [ + "Recomiendo las pel\u00edculas {movielist} si te gusta la pel\u00edcula {movie}", + "Las pel\u00edculas {movielist} son una buena elecci\u00f3n si te gusta la pel\u00edcula {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "La pel\u00edcula {movie} se estren\u00f3 en el a\u00f1o {year} con un presupuesto de {budget} de d\u00f3lares." + ], + "/dialog/movie.top.dialog": [ + "Estas son las pel\u00edculas (top|m\u00e1s populares) en cartelera ahora; {toplist}", + "{toplist} son las pel\u00edculas (top|m\u00e1s populares) en cartelera ahora." + ], + "/dialog/fallback.api.dialog": [ + "Retornando a la A P I por defecto" + ], + "/dialog/movie.year.dialog": [ + "(La|El) (pel\u00edcula|filme) {movie} fue (hecha|hecho) en el a\u00f1o {year}" + ], + "/dialog/movie.genre.single.dialog": [ + "(La|El) (pel\u00edcula|filme) {movie} se puede considerar del g\u00e9nero {genre}", + "Puedes encontrar la pel\u00edcula {movie} en la secci\u00f3n de {genre}" + ], + "/dialog/movie.production.multiple.dialog": [ + "Las compan\u00edas {companies} y {lastcompany} produjeron la pel\u00edcula {movie}", + "{companies} y {lastcompany} produjeron la pel\u00edcula {movie}" + ], + "/dialog/no.valid.api.dialog": [ + "La clave A P I que ingresaste no es v\u00e1lida. Refi\u00e9rete al archivo reade me para instrucciones acerca de c\u00f3mo obtener una." + ], + "/dialog/movie.cast.dialog": [ + "Aqu\u00ed est\u00e1 el elenco de {movie}; {actorlist} y {lastactor}", + "Los siguientes actores (protagonizan|trabajan|act\u00faan) en la pel\u00edcula {movie}; {actorlist} y {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "No puedo hallar ning\u00fan programa de (TV|television) con el g\u00e9nero {genre}" + ], + "/dialog/no.api.dialog": [ + "Debes ingresar tu clave A P I T M D B en hombe punto mycroft put A I para usar el skill movie master" + ], + "/dialog/no.info.general.dialog": [ + "Lo siento, no puedo encontrar la lista que estas buscando justo ahora; por favor, consulta de nuevo luego" + ], + "/dialog/movie.runtime.dialog": [ + "(La|El) (pel\u00edcula|filme) {movie} dura {runtime} minutos.", + "(La|El) (pel\u00edcula|filme) {movie} tiene una duraci\u00f3n de {runtime} minutos.", + "Viendo la pel\u00edcula {movie}; Puedes esperar cerca de {runtime} minutos antes de que puedas ir al ba\u00f1o." + ] +} \ No newline at end of file diff --git a/translations/es-es/intents.json b/translations/es-es/intents.json new file mode 100644 index 0000000..db6a88a --- /dev/null +++ b/translations/es-es/intents.json @@ -0,0 +1,52 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(listar|encontrar) (pel\u00edculas|filmes) que son (un| ) {genre}", + "(listar|encontrar) (pel\u00edculas|filmes) de {genre}" + ], + "/vocab/movie.popular.intent": [ + "(Lista|Busca) (las|los) (peliculas|filmes) m\u00e1s populares", + "Cu\u00e1les son (las|los) (pel\u00edculas|flimes) m\u00e1s populares ahora" + ], + "/vocab/movie.information.intent": [ + "(Averiguar|Obtener|Buscar) (informaci\u00f3n|info) acerca (de la|del) (pel\u00edcula|filme) {movie}", + "(Dame|Danos) (informaci\u00f3n|info) acerca (de la|del) (pel\u00edcula|filme) {movie}", + "(Tienes|Puedes obtener) (info|informaci\u00f3n) (de la|del) (pel\u00edcula|filme) {movie}" + ], + "/vocab/movie.production.intent": [ + "(Qui\u00e9n|Qu\u00e9 compan\u00eda) (produjo|hizo) la pel\u00edcula {movie}" + ], + "/vocab/movie.top.intent": [ + "(lista|cu\u00e1les son|busca) (las|los) (pel\u00edculas|filmes) (top|m\u00e1s populares|mejores en el ranking) en cartelera (|ahora)" + ], + "/vocab/movie.genres.intent": [ + "(A qu\u00e9|A cuales|A cual) (g\u00e9neros|g\u00e9nero) pertenece (la|el) (pel\u00edcula|filme) {movie} ", + "(Cuales|Cual) (son|es) (los|el) (g\u00e9neros|g\u00e9nero) (de la|del) (pel\u00edcula|filme) {movie}", + "A que (g\u00e9neros|g\u00e9nero) pertenece (la|el) (pel\u00edcula|filme) {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "Recomienda (pel\u00edculas|filmes) (similares a|parecidas a) {movie}", + "Qu\u00e9 (pel\u00edculas|filmes) recomendarias (similares a|parecidas a) {movie}", + "(Lista|obtiene) (|buenas|buenos) (pel\u00edculas|filmes) similares a {movie}" + ], + "/vocab/movie.year.intent": [ + "(En qu\u00e9 a\u00f1o|Cu\u00e1ndo|En qu\u00e9 fecha) fue lanzado (la|el) (pel\u00edcula|filme) {movie}" + ], + "/vocab/movie.runtime.intent": [ + "Cu\u00e1nto dura (la pel\u00edcula|el filme) {movie}", + "Cu\u00e1nto dura (la|el) (pel\u00edcula|filme) {movie}", + "Obtiene la duraci\u00f3n (de la|del) (pel\u00edcula|filme) {movie}" + ], + "/vocab/movie.description.intent": [ + "de qu\u00e9 ((se|) trata|va) la pel\u00edcula {movie}", + "(cu\u00e9ntame|cu\u00e9ntanos) acerca de la pel\u00edcula {movie}", + "(dame|danos) una (descripci\u00f3n|sinopsis) (de la|del) (pel\u00edcula|film) {movie}", + "." + ], + "/vocab/genre.tv.search.intent": [ + "(listar|encontrar|obtener) (programas de TV|programas de televisi\u00f3n|shows) que son del g\u00e9nero {genre}", + "(listar|encontrar|obtener) (programas de TV|programas de televisi\u00f3n|shows) del g\u00e9nero {genre}" + ], + "/vocab/movie.cast.intent": [ + "Qui\u00e9n (act\u00faa|trabaja|est\u00e1|sale) en la pel\u00edcula {movie}" + ] +} \ No newline at end of file diff --git a/translations/fr-fr/dialogs.json b/translations/fr-fr/dialogs.json new file mode 100644 index 0000000..0bdfeb6 --- /dev/null +++ b/translations/fr-fr/dialogs.json @@ -0,0 +1,75 @@ +{ + "/dialog/movie.popular.dialog": [ + "Le nouveau film populaire du moment est {popularlist}", + "{popularlist} est en t\u00eate du classement des films en ce moment." + ], + "/dialog/movie.production.single.dialog": [ + "Le studio de production {company}, a produit le film {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "Je ne trouve aucune (\u00e9mission) t\u00e9l\u00e9 du genre {genre}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "Le (movie|film|flick) peut \u00eatre trouv\u00e9 dans l'un des genres; {genrelist} et {genrelistlast}.", + "Les gens consid\u00e8rent le (movie|film) comme un {genrelist} ou un {genrelistlast}." + ], + "/dialog/genre.movie.search.dialog": [ + "les films du genre {genre} sont;" + ], + "/dialog/genre.tv.search.dialog": [ + "les \u00e9missions (t\u00e9l\u00e9|) du genre {genre} sont;" + ], + "/dialog/no.info.dialog": [ + "Je suis d\u00e9sol\u00e9, je ne trouve aucune information sur le film {movie}" + ], + "/dialog/movie.description.dialog": [ + "le (filme) {movie} parle de.", + "voici le synopsis du (film) {movie}" + ], + "/dialog/movie.recommendations.dialog": [ + "Je recommande les films {movielist}, si vous aimez le film {movie}", + "Les films {movielist} sont un bon choix si vous aimez le film {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} est sorti en {year}, avec un budget de {budget} dollars" + ], + "/dialog/movie.top.dialog": [ + "Ce sont les film les (meilleurs|plus populaires) du moment; {toplist}", + "{toplist} sont (les meilleurs|les plus populaires) films du moment" + ], + "/dialog/fallback.api.dialog": [ + "Retour \u00e0 l'A P I par d\u00e9faut" + ], + "/dialog/movie.year.dialog": [ + "Le film {movie} a \u00e9t\u00e9 (fait|tourn\u00e9|r\u00e9alis\u00e9|diffus\u00e9) en {year} " + ], + "/dialog/movie.genre.single.dialog": [ + "Le (movie|film) {movie} pourrait \u00eatre consid\u00e9r\u00e9 comme un {genre}.", + "Vous pouvez trouver le film {movie} dans la section {genre}" + ], + "/dialog/movie.production.multiple.dialog": [ + "Les studio {companies} et {lastcompany} ont produit le film {movie}", + "{companies} et {lastcompany} ont produit le film {movie}" + ], + "/dialog/no.valid.api.dialog": [ + "La cl\u00e9 API que vous avez entr\u00e9 est invalide. Consultez le fichier lisez-moi pour savoir comment en obtenir une." + ], + "/dialog/movie.cast.dialog": [ + "Voici la distribution de {movie} ; {actorlist} et {lastactor}", + "Les personnes suivantes (star|play|act) dans le film {movie} ; {actorlist} et {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "Je ne trouve aucune (\u00e9mission) t\u00e9l\u00e9 du genre {genre}" + ], + "/dialog/no.api.dialog": [ + "Vous devez entrer votre cl\u00e9 A P I de T M D B sur home . mycroft . A I pour utiliser la comp\u00e9tence de ma\u00eetre de cin\u00e9ma" + ], + "/dialog/no.info.general.dialog": [ + "Je suis d\u00e9soler, je ne peux pas trouver la liste que vous cherchez pour le moment ; veuillez la redemander plus tard." + ], + "/dialog/movie.runtime.dialog": [ + "Le film {movie}, dure {runtime} minutes", + "Le film {movie} dure {runtime} minutes", + "en regardant le film {movie}; Vous pouvez (pr\u00e9voir|vous attendre \u00e0) environ {runtime} minutes avant de pouvoir faire une pause pipi" + ] +} \ No newline at end of file diff --git a/translations/fr-fr/intents.json b/translations/fr-fr/intents.json new file mode 100644 index 0000000..a37a3fc --- /dev/null +++ b/translations/fr-fr/intents.json @@ -0,0 +1,51 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(liste|trouve) moi les (films|vid\u00e9os) du genre {genre}", + "(liste|trouve) les (films|videos) {genre}" + ], + "/vocab/movie.popular.intent": [ + "(liste|recherche) (des|les) films populaires", + "quels sont les films populaires du moment qui sont (jou\u00e9s|sortis) " + ], + "/vocab/movie.information.intent": [ + "(trouve|r\u00e9cup\u00e8re|recherche|cherche|y a t-il) des(informations|info) (sur|\u00e0 propos) (le|du) film {movie} ", + "(donne|dit|r\u00e9cup\u00e8re) (moi|nous) des (informations|infos) (sur|\u00e0 propos) du film {movie}", + "(est-ce que tu a|peux-tu r\u00e9cup\u00e9rer) des (informations|infos) sur le film {movie}" + ], + "/vocab/movie.production.intent": [ + "(qui|quel studio) (a produit|a fait) le film {movie}" + ], + "/vocab/movie.top.intent": [ + "(liste|quels sont|recherche) le (meilleur film|film le plus populaire|le film le mieux not\u00e9) du moment" + ], + "/vocab/movie.genres.intent": [ + "A (quel genre|quels genres) le film {movie} appartient-il?", + "Quels sont les genres du film {movie}", + "De (quels genres|quel genre) (est|sont) (le|les) (film|films) {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "recommander des (films|video) (similaire au film|comme le film) {movie}", + "quels sont les films que vous recommanderiez (similaire au film|comme le film|comme) {movie}", + "(liste|r\u00e9cup\u00e8re) (les|des) (|bons) films (similaires au film|comme le film|comme) {movie}" + ], + "/vocab/movie.year.intent": [ + "(en quelle ann\u00e9e|quand est-ce que|a quel date) le film {movie} a \u00e9t\u00e9 (fait|r\u00e9alis\u00e9|diffus\u00e9)" + ], + "/vocab/movie.runtime.intent": [ + "Combien (|de temps) dure le film {movie}", + "Quelle est (la dur\u00e9e|la longueur) du film {movie}", + "Obtiens la (dur\u00e9e|longueur) du film {movie}" + ], + "/vocab/movie.description.intent": [ + "De quoi parle le film {movie} ?", + "Parle (me|us) du (movie|film|flick) {movie}", + "Donne (moi|nous) (une description|le synoptique) du film {movie}" + ], + "/vocab/genre.tv.search.intent": [ + "(liste|trouve|r\u00e9cup\u00e8re) les (\u00e9missions| \u00e9missions t\u00e9l\u00e9) du genre {genre}", + "(liste|trouve|r\u00e9cup\u00e8re) les (\u00e9missions t\u00e9l\u00e9|\u00e9missions) {genre}" + ], + "/vocab/movie.cast.intent": [ + "qui (joue) dans (le film) {movie}" + ] +} \ No newline at end of file diff --git a/translations/it-it/dialogs.json b/translations/it-it/dialogs.json new file mode 100644 index 0000000..9197dd3 --- /dev/null +++ b/translations/it-it/dialogs.json @@ -0,0 +1,75 @@ +{ + "/dialog/movie.popular.dialog": [ + "I film pi\u00f9 popolari (in proiezione|in sala|al cinema|nei cinema) (|al momento|in questo momento) sono {popularlist}", + "{popularlist} in cima alle classifiche cinematografiche in questo momento." + ], + "/dialog/movie.production.single.dialog": [ + "La casa di produzione {company} ha prodotto il film {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "Non riesco a trovare nessuno show (TV|televisivo) di genere {genre}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "Il film pu\u00f2 essere trovato in uno dei generi; {genrelist} e {genrelistlast}", + "Le persone considerano il film (un|uno|una) {genrelist} o (un|uno|una) {genrelistlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "i film di {genre} sono;" + ], + "/dialog/genre.tv.search.dialog": [ + "i programmi (televisivi|TV) di genere {genre} sono;" + ], + "/dialog/no.info.dialog": [ + "Mi dispiace. Non riesco a trovare nessuna informazione sul (film) {movie}" + ], + "/dialog/movie.description.dialog": [ + "il (film) {movie} parla di questo.", + "ecco una sinossi (di|del film) {movie}." + ], + "/dialog/movie.recommendations.dialog": [ + "Ti consiglio i film {movielist}, se ti (piace|\u00e8 piaciuto) il film {movie}", + "I film {movielist} sono un'ottima scelta se ti (piace|\u00e8 piaciuto) (il film|) {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} \u00e8 stato distribuito nel {year}, con un budget di {budget} dollari." + ], + "/dialog/movie.top.dialog": [ + "Questi sono i film (migliori|pi\u00f9 popolari) (in sala|nei cinema|in proiezione) in questo momento; {toplist}", + "{toplist} sono i (migliori film|film pi\u00f9 popolari) (in sala|in proiezione|nei cinema|al cinema) in questo momento." + ], + "/dialog/fallback.api.dialog": [ + "Ripiego sulla vecchia A P I" + ], + "/dialog/movie.year.dialog": [ + "il film {movie} \u00e8 stato (realizzato|rilasciato) nel {year}" + ], + "/dialog/movie.genre.single.dialog": [ + "Il film {movie} potrebbe essere considerato (un|uno|una) {genre}", + "Puoi trovare (il film|) {movie} nella sezione {genre}" + ], + "/dialog/movie.production.multiple.dialog": [ + "Le (compagnie|case di produzione|case produttrici) {companies} e {lastcompany} hanno prodotto il film {movie}", + "{companies} e {lastcompany} hanno prodotto il film {movie}" + ], + "/dialog/no.valid.api.dialog": [ + "La chiave A P I che hai inserito non \u00e8 valida. Fai riferimento al file 'read me' per le istruzioni su come ottenerne una." + ], + "/dialog/movie.cast.dialog": [ + "Ecco il cast di {movie}; {actorlist} e {lastactor}", + "Le seguenti persone (sono nel|interpretano il|recitano nel) film {movie}; {actorlist} e {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "Non riesco a trovare nessuno show (TV|televisivo) di genere {genre}" + ], + "/dialog/no.api.dialog": [ + "Devi inserire la tua chiave A P I T M D B su home punto mycroft punto A I per usare la skill movie master" + ], + "/dialog/no.info.general.dialog": [ + "Mi dispiace, non riesco a trovare l'elenco che stai cercando in questo momento; per favore riprova pi\u00f9 tardi." + ], + "/dialog/movie.runtime.dialog": [ + "La durata (del film|di) {movie} \u00e8 di {runtime} minuti.", + "(|Il film) {movie} dura {runtime} minuti.", + "Guardando {movie}; ci si pu\u00f2 aspettare circa {runtime} minuti prima di poter fare una pausa bagno." + ] +} \ No newline at end of file diff --git a/translations/it-it/intents.json b/translations/it-it/intents.json new file mode 100644 index 0000000..d126a00 --- /dev/null +++ b/translations/it-it/intents.json @@ -0,0 +1,51 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(elenca|trova) (film|) (di|d'|) {genre}", + "(elenca|cerca|trova) film (di|d'|) {genre}" + ], + "/vocab/movie.popular.intent": [ + "(Elenca|Cerca|Dimmi) ( |dei|di|i) film pi\u00f9 popolari", + "Quali sono i film pi\u00f9 popolari ( |in proiezione) (al momento|del momento|ora) ( |nei cinema|al cinema)" + ], + "/vocab/movie.information.intent": [ + "(cerca|trova|guarda|cercami|trovami|ci sono) (informazioni|info) (su|riguardo) (|il|al) (|film) {movie}", + "(dammi|dimmi|trova|cerca|trovami|cercami) (informazioni|info) (su|riguardo) (|il|al) (|film) {movie}", + "(hai|puoi trovare|puoi cercare) (|delle) (info|informazioni) (su|sul) (|film) {movie}" + ], + "/vocab/movie.production.intent": [ + "(chi|quale compagnia|quale casa di produzione) (ha prodotto|ha fatto) il film {movie}" + ], + "/vocab/movie.top.intent": [ + "(elenca|quali sono|cerca) i (migliori|pi\u00f9 popolari|pi\u00f9 votati) film (in sala|nelle sale|al cinema|nei cinema) (in proiezione|fuori|disponibili) (|in questo momento|al momento|ora)" + ], + "/vocab/movie.genres.intent": [ + "A (che|quale|quali) (genere|generi) (pu\u00f2 appartenere|appartiene) ( |il film) {movie}", + "(Qual|quali) (\u00e8|sono) (il|i) (genere|generi) (del film|di) {movie}", + "di (quali|quale|che) (generi|genere) (\u00e8|sono) ( |il|i) ( |film) {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "(raccomanda|raccomandami|consiglia|consigliami) (|dei|un) film (simili a|simile a|come|tipo) {movie}", + "(quali|quale) film (|mi) (raccomandi|raccomanderesti|consigli|consiglieresti) (simili a|simile a|come|tipo) {movie}", + "(raccomanda|raccomandami|consiglia|consigliami|trova|trovami|elenca|elencami) (|dei|un) (|bei|bel) film (simili a|simile a|come|tipo) {movie}" + ], + "/vocab/movie.year.intent": [ + "(in quale anno|quando|in che anno) \u00e8 stato (fatto|realizzato|rilasciato) il film {movie}" + ], + "/vocab/movie.runtime.intent": [ + "Quanto (dura|\u00e8 lungo) (il film|) {movie}", + "Qual \u00e8 la (durata|lunghezza) (del film|di) {movie}", + "(Quanto dura|Quanto \u00e8 lungo|Qual \u00e8 la( durata| lunghezza)) (del film|di|de) {movie}" + ], + "/vocab/movie.description.intent": [ + "di cosa parla (il film|) {movie}", + "(Dimmi|Dicci|Parlami|Parlaci|Raccontami|Raccontaci) del film {movie}", + "(cerca|trova|dammi|cercami|trovami) una (descrizione|sinossi) (di|del) (|film) {movie}" + ], + "/vocab/genre.tv.search.intent": [ + "(dimmi|trova|quali sono) (programmi TV|programmi televisivi|programmi) (|di|del) {genre}", + "(elenco|cerca|trova|cercami|trovami) (|di) (serie TV|serie|show|show televisivi) {genre}" + ], + "/vocab/movie.cast.intent": [ + "chi (recita|interpreta|c'\u00e8) nel (film|) {movie}" + ] +} \ No newline at end of file diff --git a/translations/pt-br/dialogs.json b/translations/pt-br/dialogs.json new file mode 100644 index 0000000..14866b1 --- /dev/null +++ b/translations/pt-br/dialogs.json @@ -0,0 +1,75 @@ +{ + "/dialog/movie.popular.dialog": [ + "Os lan\u00e7amentos de filme mais populares s\u00e3o {popularlist}.", + "{popularlist} no topo das bilheterias neste momento." + ], + "/dialog/movie.production.single.dialog": [ + "A produtora {company}, produziu o filme {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "N\u00e3o encontrei (nenhuma|nenhum) (s\u00e9rie|seriado) (de TV|de televis\u00e3o) com o g\u00eanero {genre}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "O (filme|curta) pode ser encontrado em um dos g\u00eaneros; {genrelist} e {genrelistlast}", + "As pessoas consideram que o g\u00eanero desse (filme|curta) \u00e9 {genrelist} ou {genrelistlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "os filmes com o g\u00eanero {genre} s\u00e3o;" + ], + "/dialog/genre.tv.search.dialog": [ + "(as s\u00e9ries|os seriados|os programas) (de TV) com o g\u00eanero {genre} s\u00e3o;" + ], + "/dialog/no.info.dialog": [ + "Desculpe. Eu n\u00e3o consigo encontrar nenhuma informa\u00e7\u00e3o sobre o filme {movie}" + ], + "/dialog/movie.description.dialog": [ + "o filme {movie} \u00e9 sobre isso.", + "aqui est\u00e1 uma sinopse do filme {movie}." + ], + "/dialog/movie.recommendations.dialog": [ + "Eu recomendo os filmes {movielist}, se voc\u00ea gosta do filme {movie}", + "Os filmes {movielist} s\u00e3o uma boa escolha se voc\u00ea gosta do (filme|curta) {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} foi lan\u00e7ado em {year}, com um or\u00e7amento de {budget} dol\u00e1res." + ], + "/dialog/movie.top.dialog": [ + "Estes s\u00e3o os filmes mais populares (em cartaz|exibindo) agora: {toplist}", + "{toplist} s\u00e3o os filmes mais populares (sendo exibidos|em cartaz) agora." + ], + "/dialog/fallback.api.dialog": [ + "Retrocedendo \u00e0 API padr\u00e3o" + ], + "/dialog/movie.year.dialog": [ + "(o|a) (filme|fita) {movie} foi (feito|lan\u00e7ado) em {year}" + ], + "/dialog/movie.genre.single.dialog": [ + "O filme {movie} poderia ser considerado um filme com o g\u00eanero {genre}", + "Voc\u00ea pode encontrar o filme {movie} na se\u00e7\u00e3o de {genre}" + ], + "/dialog/movie.production.multiple.dialog": [ + "As empresas {companies} e {lastcompany} produziram o filme {movie}", + "{companies} e {lastcompany} produziram o filme {movie}" + ], + "/dialog/no.valid.api.dialog": [ + "A chave A P I digitada n\u00e3o \u00e9 v\u00e1lida. Consulte o arquivo leia-me para obter instru\u00e7\u00f5es sobre como obter uma." + ], + "/dialog/movie.cast.dialog": [ + "Aqui est\u00e1 o elenco de {movie}; {actorlist} e {lastactor}", + "As seguintes pessoas (estreiam|atuam|interpretam) no filme {movie}; {actorlist} e {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "N\u00e3o encontrei (nenhuma|nenhum) (s\u00e9rie|seriado) (de TV|de televis\u00e3o) com o g\u00eanero {genre}" + ], + "/dialog/no.api.dialog": [ + "Voc\u00ea deve digitar sua chave T M D B A P I em home ponto mycroft ponto a i para usar a habilidade mestre de filme." + ], + "/dialog/no.info.general.dialog": [ + "Desculpe, eu n\u00e3o consigo encontrar a lista que voc\u00ea est\u00e1 procurando agora; por favor, pergunte novamente mais tarde." + ], + "/dialog/movie.runtime.dialog": [ + "(O|A) (filme|fita) {movie} dura {runtime} minutos.", + "O filme {movie} tem dura\u00e7\u00e3o de {runtime} minutos.", + "Assistindo {movie}; Voc\u00ea pode esperar cerca de {runtime} minutos antes de poder ter uma pausa para ir ao banheiro." + ] +} \ No newline at end of file diff --git a/translations/pt-br/intents.json b/translations/pt-br/intents.json new file mode 100644 index 0000000..63e3448 --- /dev/null +++ b/translations/pt-br/intents.json @@ -0,0 +1,52 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(listar|buscar|procurar|exibir) (filmes|curtas) que s\u00e3o (de) {genre}", + "(listar|buscar|procurar) (filmes|curtas|filmes de|curtas de) {genre}" + ], + "/vocab/movie.popular.intent": [ + "(listar|procurar|buscar) (filmes|curtas) populares", + "quais ( |s\u00e3o) os filmes populares (saindo|exibindo|em exibi\u00e7\u00e3o) ( |agora)" + ], + "/vocab/movie.information.intent": [ + "(encontre|h\u00e1|procure|existe|tem) (informa\u00e7\u00e3o|informa\u00e7\u00f5es) (do|sobre o) filme {movie}", + "(me|nos) (d\u00ea|diga|fale) (informa\u00e7\u00e3o|informa\u00e7\u00f5es) (sobre o|do) filme {movie}", + "(voc\u00ea tem|voc\u00ea pode pegar|voc\u00ea consegue) (informa\u00e7\u00e3o|informa\u00e7\u00f5es) (sobre o|do) filme {movie}" + ], + "/vocab/movie.production.intent": [ + "(quem|qual empresa|qual est\u00fadio) (produziu|fez) o filme {movie}" + ], + "/vocab/movie.top.intent": [ + "(listar|liste|quais s\u00e3o|busque|buscar|procurar|procure) os (melhores|mais populares|mais cotados) (filmes|fitas) (saindo|sendo exibidos|em exibi\u00e7\u00e3o|em cartaz) (|agora)" + ], + "/vocab/movie.genres.intent": [ + "(a qual|a quais) (g\u00eanero|g\u00eaneros) o filme {movie} pertence", + "(quais s\u00e3o|qual \u00e9 o) (g\u00eanero|g\u00eaneros) do (filme|curta) {movie}", + "(qual|quais) (\u00e9|s\u00e3o) (o|os) (g\u00eanero|g\u00eanero) do filme {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "recomende filmes (similares|parecidos|parecidos com|como|iguais) (ao|) {movie}", + "qual filme voc\u00ea (recomenda|recomendaria) (parecido|parecido com|igual|similar|como) (ao|) {movie}", + "(listar|liste|recomende|recomendar) (filmes|fitas) (similares|parecidos|parecidas|parecidos|parecidas|com|como|iguais) (ao|\u00e0) {movie}" + ], + "/vocab/movie.year.intent": [ + "(em que ano|quando|em que data|em qual data|em qual ano) (o|a) (filme|fita) {movie} foi (feito|lan\u00e7ado)" + ], + "/vocab/movie.runtime.intent": [ + "Quanto (tempo|dura) (\u00e9|) o (filme|fita) {movie}", + "Qual \u00e9 (o|a) (tempo|dura\u00e7\u00e3o|tamanho) do (filme|fita) {movie}", + "(Veja|Diga|Mostre) (o|a) (dura\u00e7\u00e3o|tamanho|tempo) (do|da) (filme|fita) {movie}" + ], + "/vocab/movie.description.intent": [ + "(sobre|) (do que se trata|de que se trata|do que|o que|o que se trata) (\u00e9|) o filme {movie}", + "(me diga|conte para mim|fale para mim|fala pra mim) sobre o filme {movie}", + "(nos d\u00ea|me d\u00ea|me d\u00e1) uma (descri\u00e7\u00e3o|sinopse|resumo) do (filme|curta) {movie}", + "." + ], + "/vocab/genre.tv.search.intent": [ + "(listar|procurar|buscar|obter|mostrar|exibir) (programas|s\u00e9ries|seriados) (de TV) que s\u00e3o de {genre}", + "(listar|encontrar|pegar) {genre} (programas de TV|programas de televis\u00e3o|programas|s\u00e9ries|seriados)" + ], + "/vocab/movie.cast.intent": [ + "quem (atua|contracena|estreia|est\u00e1) no (filme|curta) {movie}" + ] +} \ No newline at end of file diff --git a/translations/sv-se/dialogs.json b/translations/sv-se/dialogs.json new file mode 100644 index 0000000..0f1b0f6 --- /dev/null +++ b/translations/sv-se/dialogs.json @@ -0,0 +1,75 @@ +{ + "/dialog/movie.popular.dialog": [ + "De nya popul\u00e4ra filmerna ute nu \u00e4r {popularlist}.", + "{popularlist} toppar filmlistorna just nu." + ], + "/dialog/movie.production.single.dialog": [ + "Produktionsf\u00f6retaget {company}, producerade filmen {movie}" + ], + "/dialog/bad.tv.genre.catagory.dialog": [ + "Jag kan inte hitta n\u00e5gra (TV|television) serier med genren {genre}" + ], + "/dialog/movie.genre.multiple.dialog": [ + "(Videon|Filmen|Film) finns i en av genrerna; {genrelist} och {genrelistlast}", + "M\u00e4nniskor anser att (film|filmen) \u00e4r {genrelist} eller {genrelistlast}" + ], + "/dialog/genre.movie.search.dialog": [ + "filmerna med genren {genre} \u00e4r;" + ], + "/dialog/genre.tv.search.dialog": [ + "(television|TV) serierna med genren {genre} \u00e4r;" + ], + "/dialog/no.info.dialog": [ + "Jag \u00e4r ledsen. Jag kan inte hitta n\u00e5gon information om (videon|filmen) {movie}" + ], + "/dialog/movie.description.dialog": [ + "(film|filmen) {movie} handlar om detta.", + "h\u00e4r \u00e4r en sammanfattning av (filmen|film) {movie}." + ], + "/dialog/movie.recommendations.dialog": [ + "Jag rekommenderar filmerna {movielist}, om du gillar (videon|filmen|film) {movie}", + "Filmerna {movielist} \u00e4r ett bra val om du gillar (videon|filmen) {movie}" + ], + "/dialog/movie.info.response.dialog": [ + "{movie} sl\u00e4pptes {year}, med en budget p\u00e5 {budget} dollar." + ], + "/dialog/movie.top.dialog": [ + "Det h\u00e4r \u00e4r de (b\u00e4sta|mest popul\u00e4ra) filmerna (ute|som visas) nu; {toplist}", + "{toplist} \u00e4r de (b\u00e4sta|mest popul\u00e4ra) filmerna (ute|som spelar) nu." + ], + "/dialog/fallback.api.dialog": [ + "Faller tillbaka till standard A P I" + ], + "/dialog/movie.year.dialog": [ + "(Videon|Filmen|Film) {movie} (gjordes|sl\u00e4pptes) {year}" + ], + "/dialog/movie.genre.single.dialog": [ + "(Film|filmen) {movie} kan betraktas som en {genre}", + "Du hittar (videon|filmen) {movie} i {genre} sektionen" + ], + "/dialog/movie.production.multiple.dialog": [ + "F\u00f6retagen {companies} och {lastcompany} producerade filmen {movie}", + "{companies} och {lastcompany} producerade filmen {movie}" + ], + "/dialog/no.valid.api.dialog": [ + "A P I-nyckeln som du angav \u00e4r inte giltig. Se till l\u00e4s readme-filen f\u00f6r instruktioner om hur du f\u00e5r en." + ], + "/dialog/movie.cast.dialog": [ + "H\u00e4r \u00e4r rollen fr\u00e5n {movie}; {actorlist} och {lastactor}", + "F\u00f6ljande personer (\u00e4r stj\u00e4rnan|spelar|agerar) i filmen {movie}; {actorlist} och {lastactor}" + ], + "/dialog/bad.movie.genre.catagory.dialog": [ + "Jag kan inte hitta n\u00e5gra (TV|television) serier med genren {genre}" + ], + "/dialog/no.api.dialog": [ + "Du m\u00e5ste ange din T M D B A P I-nyckel p\u00e5 home punkt mycroft punkt A I f\u00f6r att anv\u00e4nda movie master skickligheten" + ], + "/dialog/no.info.general.dialog": [ + "Jag \u00e4r ledsen, jag kan inte hitta listan du letar efter just nu; v\u00e4nligen fr\u00e5ga igen senare." + ], + "/dialog/movie.runtime.dialog": [ + "(Videon|Filmen|Film) {movie}, varar i {runtime} minuter.", + "(Videon|Filmen|Film) {movie} \u00e4r {runtime} minuter l\u00e5ng.", + "Titta p\u00e5 {movie}; Du kan f\u00f6rv\u00e4nta dig cirka {runtime} minuter innan du kan ta en badrumsavbrott." + ] +} \ No newline at end of file diff --git a/translations/sv-se/intents.json b/translations/sv-se/intents.json new file mode 100644 index 0000000..2591048 --- /dev/null +++ b/translations/sv-se/intents.json @@ -0,0 +1,51 @@ +{ + "/vocab/genre.movie.search.intent": [ + "(lista|hitta) (video|filmer) som \u00e4r (i|) {genre}", + "(lista|hitta) {genre} (video|filmer)" + ], + "/vocab/movie.popular.intent": [ + "(lista|s\u00f6k|s\u00f6k efter) popul\u00e4ra (video|filmer|film)", + "vad \u00e4r ( |de) popul\u00e4ra (videon|filmen|film) (spelar|ut) ( |nu)" + ], + "/vocab/movie.information.intent": [ + "(hitta|h\u00e4mta|leta efter|\u00e4r d\u00e4r) (information|info) (p\u00e5|om) (videon|filmen|film) {movie}", + "(ge|ber\u00e4tta|h\u00e4mta) (|mig|oss) (information|info) (p\u00e5|om) (videon|filmen|film) {movie}", + "(har du|kan du h\u00e4mta) (info|information) om (videon|filmen|film) {movie}" + ], + "/vocab/movie.production.intent": [ + "(vem|vilket f\u00f6retag) (producerade|gjorde) filmen {movie}" + ], + "/vocab/movie.top.intent": [ + "(lista|vad \u00e4r|s\u00f6k efter) den (popul\u00e4ra|mest popul\u00e4ra|h\u00f6gst rankade) (videon|filmen|film) (som spelas|\u00e4r ute) (|nu)" + ], + "/vocab/movie.genres.intent": [ + "vilken (genre|genren) tillh\u00f6r (videon|filmen|film) {movie}", + "vilken \u00e4r (genre|genren) f\u00f6r (videon|filmen|film) {movie}", + "vilken (genre|genren) (\u00e4r|tillh\u00f6r) denna (videon|filmen|film) {movie}" + ], + "/vocab/movie.recommendations.intent": [ + "rekommendera (videon|filmen|film) (liknande|s\u00e5som) {movie}", + "vilka (video|filmer|film) (skulle du|du) rekommenderar (liknande|s\u00e5som) {movie}", + "(lista|h\u00e4mta) (|bra) (videon|filmen|film) (liknande|s\u00e5som) {movie}" + ], + "/vocab/movie.year.intent": [ + "(vilket \u00e5r|n\u00e4r|vilket datum) var (videon|filmen|film) {movie} (gjord|sl\u00e4ppt)" + ], + "/vocab/movie.runtime.intent": [ + "Hur l\u00e5ng \u00e4r (videon|filmen|film) {movie}", + "Vilken \u00e4r (tiden|l\u00e4ngden) f\u00f6r (videon|filmen|film) {movie}", + "H\u00e4mta (tiden|l\u00e4ngden) f\u00f6r (videon|filmen|film) {movie}" + ], + "/vocab/movie.description.intent": [ + "vad handlar (videon|filmen|film) {movie} om", + "ber\u00e4tta f\u00f6r (mig|oss) om (videon|filmen|film) {movie}", + "(ge|h\u00e4mta) (mig|oss) en (beskrivning|sammanfattning) av (videon|filmen|film) {movie}" + ], + "/vocab/genre.tv.search.intent": [ + "(lista|hitta|f\u00e5) (TV-program|TV program|program) som \u00e4r (|en) {genre}", + "(lista|hitta|f\u00e5) {genre} (TV-program|TV program|program)" + ], + "/vocab/movie.cast.intent": [ + "vem (agerar|spelar|\u00e4r med) i (videon|filmen|film) {movie}" + ] +} \ No newline at end of file