mirror of
https://github.com/element-hq/element-web.git
synced 2026-01-11 19:56:47 +00:00
Split translations between EW and shared components (#31441)
* Split translations between EW and shared components Uses update module API with global TranslationKey type that can be overridden. WIP. * Removed the wrong script (for now) * Add the type files * Add shared components i18n file * More i18n strings * Add i18n check for shared conmponents * Needs a different name * rerun i18n for merge from develop, fix test * Move translated strings to shared components file NB. there are lots of removed strings for a few languages where we seem to have hit a localazy bug or something where the key/value for plurals got switched, making the translations invalid. They've been missing for a while so I'm removing them rather than trying to restore them, * Add shared components files to localazy * Merge element web & shared component translations for the built app * Use right translations for shared component tests and fix missign en_EN strings * Pull shared components translations too * Fix/disable warnings * We can now remove the build:res call ...right? (right?) * Remove webpack import for languages index ..and just load it using a relative path which we do for the individual language files and also did anyway for the index because even in non-test it was an object, not a string, so we always usesd the 'test' code path. * Make the storybook language selector work ...without referring to the parent app's files * Revert unnecessary yarn lock change * Typo Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> * Add comment on why we use merge * Fix localazy download config to actually put the translations in the right place * Better typescript syntax Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> * Watch both translations files --------- Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
parent
4ee04d0661
commit
13696af194
131 changed files with 1783 additions and 1763 deletions
13
.github/workflows/static_analysis.yaml
vendored
13
.github/workflows/static_analysis.yaml
vendored
|
|
@ -41,8 +41,8 @@ jobs:
|
|||
- name: Typecheck Shared Components
|
||||
run: "yarn --cwd packages/shared-components run lint:types"
|
||||
|
||||
i18n_lint:
|
||||
name: "i18n Check"
|
||||
i18n_lint_ew:
|
||||
name: "i18n Check (Element Web)"
|
||||
uses: matrix-org/matrix-web-i18n/.github/workflows/i18n_check.yml@main
|
||||
permissions:
|
||||
pull-requests: read
|
||||
|
|
@ -59,6 +59,15 @@ jobs:
|
|||
devtools|settings|elementCallUrl
|
||||
labs|sliding_sync_description
|
||||
|
||||
i18n_lint_shared_components:
|
||||
name: "i18n Check (Shared Components)"
|
||||
uses: matrix-org/matrix-web-i18n/.github/workflows/i18n_check.yml@main
|
||||
permissions:
|
||||
pull-requests: read
|
||||
with:
|
||||
path: "packages/shared-components"
|
||||
hardcoded-words: "Element"
|
||||
|
||||
rethemendex_lint:
|
||||
name: "Rethemendex Check"
|
||||
runs-on: ubuntu-24.04
|
||||
|
|
|
|||
|
|
@ -18,6 +18,18 @@
|
|||
"file": "element-web.json",
|
||||
"excludes": ["src/i18n/strings/en_EN.json"],
|
||||
"lang": "${autodetectLang}"
|
||||
},
|
||||
{
|
||||
"pattern": "packages/shared-components/src/i18n/strings/en_EN.json",
|
||||
"file": "shared-components.json",
|
||||
"lang": "inherited"
|
||||
},
|
||||
{
|
||||
"group": "existing",
|
||||
"pattern": "packages/shared-components/src/i18n/strings/*.json",
|
||||
"file": "shared-components.json",
|
||||
"excludes": ["packages/shared-components/src/i18n/strings/en_EN.json"],
|
||||
"lang": "${autodetectLang}"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
|
@ -27,6 +39,10 @@
|
|||
{
|
||||
"conditions": "equals: ${file}, element-web.json",
|
||||
"output": "src/i18n/strings/${langLsrUnderscore}.json"
|
||||
},
|
||||
{
|
||||
"conditions": "equals: ${file}, shared-components.json",
|
||||
"output": "packages/shared-components/src/i18n/strings/${langLsrUnderscore}.json"
|
||||
}
|
||||
],
|
||||
"includeSourceLang": "${includeSourceLang|false}",
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
"UserFriendlyError"
|
||||
],
|
||||
"scripts": {
|
||||
"i18n": "matrix-gen-i18n src res packages/shared-components/src && yarn i18n:sort && yarn i18n:lint",
|
||||
"i18n": "matrix-gen-i18n src res && yarn i18n:sort && yarn i18n:lint",
|
||||
"i18n:sort": "jq --sort-keys '.' src/i18n/strings/en_EN.json > src/i18n/strings/en_EN.json.tmp && mv src/i18n/strings/en_EN.json.tmp src/i18n/strings/en_EN.json",
|
||||
"i18n:lint": "matrix-i18n-lint && prettier --log-level=silent --write src/i18n/strings/ --ignore-path /dev/null",
|
||||
"i18n:diff": "cp src/i18n/strings/en_EN.json src/i18n/strings/en_EN_orig.json && yarn i18n && matrix-compare-i18n-files src/i18n/strings/en_EN_orig.json src/i18n/strings/en_EN.json",
|
||||
|
|
|
|||
|
|
@ -10,16 +10,14 @@ import { WithTooltip, IconButton, TooltipLinkList } from "storybook/internal/com
|
|||
import React from "react";
|
||||
import { GlobeIcon } from "@storybook/icons";
|
||||
|
||||
// We can't import `shared/i18n.tsx` directly here.
|
||||
// The storybook addon doesn't seem to benefit the vite config of storybook and we can't resolve the alias in i18n.tsx.
|
||||
import json from "../../../webapp/i18n/languages.json";
|
||||
const languages = Object.keys(json).filter((lang) => lang !== "default");
|
||||
const languages = JSON.parse(process.env.STORYBOOK_LANGUAGES);
|
||||
|
||||
/**
|
||||
* Returns the title of a language in the user's locale.
|
||||
*/
|
||||
function languageTitle(language: string): string {
|
||||
return new Intl.DisplayNames([language], { type: "language", style: "short" }).of(language) || language;
|
||||
const normalisedLang = language.toLowerCase().replace("_", "-");
|
||||
return new Intl.DisplayNames([normalisedLang], { type: "language", style: "short" }).of(normalisedLang) || language;
|
||||
}
|
||||
|
||||
export const languageAddon: Addon = {
|
||||
|
|
|
|||
|
|
@ -7,12 +7,15 @@ Please see LICENSE files in the repository root for full details.
|
|||
|
||||
import type { StorybookConfig } from "@storybook/react-vite";
|
||||
import path from "node:path";
|
||||
import fs from "node:fs";
|
||||
import { nodePolyfills } from "vite-plugin-node-polyfills";
|
||||
import { mergeConfig } from "vite";
|
||||
|
||||
// Get a list of available languages so the language selector can display them at runtime
|
||||
const languages = fs.readdirSync("src/i18n/strings").map((f) => f.slice(0, -5));
|
||||
|
||||
const config: StorybookConfig = {
|
||||
stories: ["../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
|
||||
staticDirs: ["../../../webapp"],
|
||||
addons: ["@storybook/addon-docs", "@storybook/addon-designs", "@storybook/addon-a11y"],
|
||||
framework: "@storybook/react-vite",
|
||||
core: {
|
||||
|
|
@ -29,8 +32,42 @@ const config: StorybookConfig = {
|
|||
$webapp: path.resolve("../../webapp"),
|
||||
},
|
||||
},
|
||||
// Needed for counterpart to work
|
||||
plugins: [nodePolyfills({ include: ["process", "util"] })],
|
||||
plugins: [
|
||||
// Needed for counterpart to work
|
||||
nodePolyfills({ include: ["process", "util"] }),
|
||||
{
|
||||
name: "language-middleware",
|
||||
configureServer(server) {
|
||||
server.middlewares.use((req, res, next) => {
|
||||
if (req.url === "/i18n/languages.json") {
|
||||
// Dynamically generate a languages.json file based on what files are available
|
||||
const langJson: Record<string, string> = {};
|
||||
for (const lang of languages) {
|
||||
const normalizedLanguage = lang.toLowerCase().replace("_", "-");
|
||||
const languageParts = normalizedLanguage.split("-");
|
||||
if (languageParts.length === 2 && languageParts[0] === languageParts[1]) {
|
||||
langJson[languageParts[0]] = `${lang}.json`;
|
||||
} else {
|
||||
langJson[normalizedLanguage] = `${lang}.json`;
|
||||
}
|
||||
}
|
||||
|
||||
res.setHeader("Content-Type", "application/json");
|
||||
res.end(JSON.stringify(langJson));
|
||||
} else if (req.url?.startsWith("/i18n/")) {
|
||||
// Serve the individual language files, which annoyingly can't be a simple
|
||||
// static dir because the directory structure in src doesn't match what
|
||||
// the app requests.
|
||||
const langFile = req.url.split("/").pop();
|
||||
res.setHeader("Content-Type", "application/json");
|
||||
fs.createReadStream(`src/i18n/strings/${langFile}`).pipe(res);
|
||||
} else {
|
||||
next();
|
||||
}
|
||||
});
|
||||
},
|
||||
},
|
||||
],
|
||||
server: {
|
||||
allowedHosts: ["localhost", ".docker.internal"],
|
||||
},
|
||||
|
|
@ -42,5 +79,9 @@ const config: StorybookConfig = {
|
|||
url: "https://element-hq.github.io/compound-web/",
|
||||
},
|
||||
},
|
||||
env: (config) => ({
|
||||
...config,
|
||||
STORYBOOK_LANGUAGES: JSON.stringify(languages),
|
||||
}),
|
||||
};
|
||||
export default config;
|
||||
|
|
|
|||
|
|
@ -34,8 +34,11 @@
|
|||
"package.json"
|
||||
],
|
||||
"scripts": {
|
||||
"i18n": "matrix-gen-i18n src && yarn i18n:sort && yarn i18n:lint",
|
||||
"i18n:sort": "jq --sort-keys '.' src/i18n/strings/en_EN.json > src/i18n/strings/en_EN.json.tmp && mv src/i18n/strings/en_EN.json.tmp src/i18n/strings/en_EN.json",
|
||||
"i18n:lint": "matrix-i18n-lint && prettier --log-level=silent --write src/i18n/strings/ --ignore-path /dev/null",
|
||||
"test": "jest",
|
||||
"prepare": "patch-package && yarn --cwd ../.. build:res && node scripts/gatherTranslationKeys.ts && vite build",
|
||||
"prepare": "patch-package && vite build",
|
||||
"storybook": "storybook dev -p 6007",
|
||||
"build-storybook": "storybook build",
|
||||
"lint": "yarn lint:types && yarn lint:js",
|
||||
|
|
|
|||
|
|
@ -1,67 +0,0 @@
|
|||
/*
|
||||
Copyright 2025 Element Creations Ltd.
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
|
||||
Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
// Gathers all the translation keys from element-web's en_EN.json into a TypeScript type definition file
|
||||
// that exports a type `TranslationKey` which is a union of all supported translation keys.
|
||||
// This prevents having to import the json file and make typescript do the work as this results in vite-dts
|
||||
// generating an import to the json file in the .d.ts which doesn't work at runtime: this way, the type
|
||||
// gets put into the bundle.
|
||||
// XXX: It should *not* be in the 'src' directory, being a generated file, but if it isn't then the type
|
||||
// bundler won't bundle the types and will leave the file as a relative import, which will break.
|
||||
|
||||
import * as fs from "fs";
|
||||
import * as path from "path";
|
||||
import { dirname } from "node:path";
|
||||
import { fileURLToPath } from "node:url";
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
const i18nStringsPath = path.resolve(__dirname, "../../../src/i18n/strings/en_EN.json");
|
||||
const outPath = path.resolve(__dirname, "../src/i18nKeys.d.ts");
|
||||
|
||||
function gatherKeys(obj: any, prefix: string[] = []): string[] {
|
||||
if (typeof obj !== "object" || obj === null) return [];
|
||||
let keys: string[] = [];
|
||||
for (const key of Object.keys(obj)) {
|
||||
const value = obj[key];
|
||||
|
||||
// add the path (for both leaves and intermediates as then we include plurals)
|
||||
keys.push([...prefix, key].join("|"));
|
||||
if (typeof value === "object" && value !== null) {
|
||||
// If the value is an object, recurse
|
||||
keys = keys.concat(gatherKeys(value, [...prefix, key]));
|
||||
}
|
||||
}
|
||||
return keys;
|
||||
}
|
||||
|
||||
function main() {
|
||||
const json = JSON.parse(fs.readFileSync(i18nStringsPath, "utf8"));
|
||||
const keys = gatherKeys(json);
|
||||
const typeDef =
|
||||
"/*\n" +
|
||||
" * Copyright 2025 Element Creations Ltd.\n" +
|
||||
" *\n" +
|
||||
" * SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial\n" +
|
||||
" * Please see LICENSE files in the repository root for full details.\n" +
|
||||
" */\n" +
|
||||
"\n" +
|
||||
"// This file is auto-generated by gatherTranslationKeys.ts\n" +
|
||||
"// Do not edit manually.\n\n" +
|
||||
"export type TranslationKey =\n" +
|
||||
keys.map((k) => ` | \"${k}\"`).join("\n") +
|
||||
";\n";
|
||||
fs.mkdirSync(path.dirname(outPath), { recursive: true });
|
||||
fs.writeFileSync(outPath, typeDef, "utf8");
|
||||
console.log(`Wrote ${keys.length} keys to ${outPath}`);
|
||||
}
|
||||
|
||||
if (import.meta.url.startsWith("file:")) {
|
||||
const modulePath = fileURLToPath(import.meta.url);
|
||||
if (process.argv[1] === modulePath) {
|
||||
main();
|
||||
}
|
||||
}
|
||||
14
packages/shared-components/src/@types/i18n.d.ts
vendored
Normal file
14
packages/shared-components/src/@types/i18n.d.ts
vendored
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
/*
|
||||
Copyright 2025 Element Creations Ltd.
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
|
||||
Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
import { type TranslationKey as _TranslationKey } from "matrix-web-i18n";
|
||||
|
||||
import type Translations from "../i18n/strings/en_EN.json";
|
||||
|
||||
declare global {
|
||||
type TranslationKey = _TranslationKey<typeof Translations>;
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/cs.json
Normal file
43
packages/shared-components/src/i18n/strings/cs.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Panel posunu zvuku"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Smazat",
|
||||
"dismiss": "Zavřít",
|
||||
"explore_rooms": "Procházet místnosti",
|
||||
"pause": "Pozastavit",
|
||||
"play": "Přehrát",
|
||||
"search": "Hledání"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Identita %(displayName)s (<b>%(userId)s</b>) se změnila. <a>Další informace</a>",
|
||||
"withdraw_verification_action": "Zrušit ověření"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Otevřít číselník"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "před jedním dnem",
|
||||
"about_hour_ago": "asi před hodinou",
|
||||
"about_minute_ago": "před minutou",
|
||||
"few_seconds_ago": "před pár vteřinami",
|
||||
"in_about_day": "asi za den",
|
||||
"in_about_hour": "asi za hodinu",
|
||||
"in_about_minute": "asi za minutu",
|
||||
"in_few_seconds": "za pár vteřin",
|
||||
"in_n_days": "za %(num)s dní",
|
||||
"in_n_hours": "za %(num)s hodin",
|
||||
"in_n_minutes": "za %(num)s minut",
|
||||
"n_days_ago": "před %(num)s dny",
|
||||
"n_hours_ago": "před %(num)s hodinami",
|
||||
"n_minutes_ago": "před %(num)s minutami"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Audio přehrávač",
|
||||
"error_downloading_audio": "Chyba při stahování audia",
|
||||
"unnamed_audio": "Nepojmenovaný audio soubor"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/cy.json
Normal file
43
packages/shared-components/src/i18n/strings/cy.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Bar chwilio sain"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Dileu",
|
||||
"dismiss": "Gwrthod",
|
||||
"explore_rooms": "Archwilio Ystafelloedd",
|
||||
"pause": "Oedi",
|
||||
"play": "Chwarae",
|
||||
"search": "Chwilio"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Cafodd hunaniaeth (<b>%(userId)s</b>) %(displayName)s ei ailosod. <a>Dysgu rhagor</a>",
|
||||
"withdraw_verification_action": "Tynnu'r dilysiad yn ôl"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Agor y pad deialu"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "tua diwrnod yn ôl",
|
||||
"about_hour_ago": "tua awr yn ol",
|
||||
"about_minute_ago": "tua munud yn ôl",
|
||||
"few_seconds_ago": "ychydig eiliadau yn ôl",
|
||||
"in_about_day": "tua diwrnod o nawr",
|
||||
"in_about_hour": "tuag awr o hyn",
|
||||
"in_about_minute": "tua munud o nawr",
|
||||
"in_few_seconds": "ychydig eiliadau o nawr",
|
||||
"in_n_days": "%(num)s diwrnod o nawr",
|
||||
"in_n_hours": "%(num)s awr o nawr",
|
||||
"in_n_minutes": "%(num)s munud o nawr",
|
||||
"n_days_ago": "%(num)s diwrnod yn ôl",
|
||||
"n_hours_ago": "%(num)s awr yn ôl",
|
||||
"n_minutes_ago": "%(num)s munud yn ôl"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Chwaraewr sain",
|
||||
"error_downloading_audio": "Gwall wrth llwytho i lawrsain",
|
||||
"unnamed_audio": "Sain dienw"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/da.json
Normal file
35
packages/shared-components/src/i18n/strings/da.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Progressionsmarkør for lydafspiller"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Slet",
|
||||
"dismiss": "Afvis",
|
||||
"explore_rooms": "Udforsk rum",
|
||||
"pause": "Pausér",
|
||||
"play": "Afspil",
|
||||
"search": "Søg"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "omkring en dag siden",
|
||||
"about_hour_ago": "for omkring en time siden",
|
||||
"about_minute_ago": "for omkring et minut siden",
|
||||
"few_seconds_ago": "for et par sekunder siden",
|
||||
"in_about_day": "om cirka en dag fra nu",
|
||||
"in_about_hour": "omkring en time fra nu",
|
||||
"in_about_minute": "omkring et minut fra nu",
|
||||
"in_few_seconds": "et par sekunder fra nu",
|
||||
"in_n_days": "%(num)s dage fra nu",
|
||||
"in_n_hours": "%(num)s timer fra nu",
|
||||
"in_n_minutes": "%(num)s minutter fra nu",
|
||||
"n_days_ago": "%(num)s dage siden",
|
||||
"n_hours_ago": "%(num)s timer siden",
|
||||
"n_minutes_ago": "%(num)s minutter siden"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Fejl ved download af lyd",
|
||||
"unnamed_audio": "Unavngiven lyd"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/de_DE.json
Normal file
43
packages/shared-components/src/i18n/strings/de_DE.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Audio-Suchleiste"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Löschen",
|
||||
"dismiss": "Ausblenden",
|
||||
"explore_rooms": "Chats erkunden",
|
||||
"pause": "Pausieren",
|
||||
"play": "Abspielen",
|
||||
"search": "Suchen"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) Identität wurde zurückgesetzt. <a>Mehr erfahren </a>",
|
||||
"withdraw_verification_action": "Verifizierung zurückziehen"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Wähltastatur öffnen"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "vor etwa einem Tag",
|
||||
"about_hour_ago": "vor etwa einer Stunde",
|
||||
"about_minute_ago": "vor etwa einer Minute",
|
||||
"few_seconds_ago": "vor ein paar Sekunden",
|
||||
"in_about_day": "in etwa einem Tag",
|
||||
"in_about_hour": "in etwa einer Stunde",
|
||||
"in_about_minute": "in etwa einer Minute",
|
||||
"in_few_seconds": "in ein paar Sekunden",
|
||||
"in_n_days": "in %(num)s Tagen",
|
||||
"in_n_hours": "in %(num)s Stunden",
|
||||
"in_n_minutes": "In etwa %(num)s Minuten",
|
||||
"n_days_ago": "vor %(num)s Tagen",
|
||||
"n_hours_ago": "vor %(num)s Stunden",
|
||||
"n_minutes_ago": "vor %(num)s Minuten"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Audio-Player",
|
||||
"error_downloading_audio": "Fehler beim Herunterladen der Audiodatei",
|
||||
"unnamed_audio": "Unbenannte Audiodatei"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/el.json
Normal file
35
packages/shared-components/src/i18n/strings/el.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Διαγραφή",
|
||||
"dismiss": "Απόρριψη",
|
||||
"explore_rooms": "Εξερευνήστε αίθουσες",
|
||||
"pause": "Παύση",
|
||||
"play": "Αναπαραγωγή",
|
||||
"search": "Αναζήτηση"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Άνοιγμα πληκτρολογίου κλήσης"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "σχεδόν μία μέρα πριν",
|
||||
"about_hour_ago": "σχεδόν μία ώρα πριν",
|
||||
"about_minute_ago": "σχεδόν ένα λεπτό πριν",
|
||||
"few_seconds_ago": "λίγα δευτερόλεπτα πριν",
|
||||
"in_about_day": "περίπου μια μέρα από τώρα",
|
||||
"in_about_hour": "περίπου μία ώρα από τώρα",
|
||||
"in_about_minute": "περίπου ένα λεπτό από τώρα",
|
||||
"in_few_seconds": "λίγα δευτερόλεπτα από τώρα",
|
||||
"in_n_days": "%(num)s μέρες από τώρα",
|
||||
"in_n_hours": "%(num)s ώρες από τώρα",
|
||||
"in_n_minutes": "%(num)s λεπτά από τώρα",
|
||||
"n_days_ago": "%(num)s μέρες πριν",
|
||||
"n_hours_ago": "%(num)s ώρες πριν",
|
||||
"n_minutes_ago": "%(num)s λεπτά πριν"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Σφάλμα λήψης ήχου",
|
||||
"unnamed_audio": "Ήχος χωρίς όνομα"
|
||||
}
|
||||
}
|
||||
}
|
||||
48
packages/shared-components/src/i18n/strings/en_EN.json
Normal file
48
packages/shared-components/src/i18n/strings/en_EN.json
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Audio seek bar"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Delete",
|
||||
"dismiss": "Dismiss",
|
||||
"explore_rooms": "Explore rooms",
|
||||
"pause": "Pause",
|
||||
"play": "Play",
|
||||
"search": "Search"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) identity was reset. <a>Learn more</a>",
|
||||
"withdraw_verification_action": "Withdraw verification"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Open dial pad"
|
||||
},
|
||||
"room": {
|
||||
"status_bar": {
|
||||
"history_visible": "This room has been configured so that new members can read history. <a>Learn More</a>"
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "about a day ago",
|
||||
"about_hour_ago": "about an hour ago",
|
||||
"about_minute_ago": "about a minute ago",
|
||||
"few_seconds_ago": "a few seconds ago",
|
||||
"in_about_day": "about a day from now",
|
||||
"in_about_hour": "about an hour from now",
|
||||
"in_about_minute": "about a minute from now",
|
||||
"in_few_seconds": "a few seconds from now",
|
||||
"in_n_days": "%(num)s days from now",
|
||||
"in_n_hours": "%(num)s hours from now",
|
||||
"in_n_minutes": "%(num)s minutes from now",
|
||||
"n_days_ago": "%(num)s days ago",
|
||||
"n_hours_ago": "%(num)s hours ago",
|
||||
"n_minutes_ago": "%(num)s minutes ago"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Audio player",
|
||||
"error_downloading_audio": "Error downloading audio",
|
||||
"unnamed_audio": "Unnamed audio"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/eo.json
Normal file
35
packages/shared-components/src/i18n/strings/eo.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Forigi",
|
||||
"dismiss": "Rezigni",
|
||||
"explore_rooms": "Esplori ĉambrojn",
|
||||
"pause": "Paŭzigi",
|
||||
"play": "Ludi",
|
||||
"search": "Serĉi"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Malfermi ciferplaton"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "antaŭ ĉirkaŭ tago",
|
||||
"about_hour_ago": "antaŭ ĉirkaŭ horo",
|
||||
"about_minute_ago": "antaŭ ĉirkaŭ minuto",
|
||||
"few_seconds_ago": "antaŭ kelkaj sekundoj",
|
||||
"in_about_day": "ĉirkaŭ tagon de nun",
|
||||
"in_about_hour": "ĉirkaŭ horon de nun",
|
||||
"in_about_minute": "ĉirkaŭ minuton de nun",
|
||||
"in_few_seconds": "kelkajn sekundojn de nun",
|
||||
"in_n_days": "%(num)s tagojn de nun",
|
||||
"in_n_hours": "%(num)s horojn de nun",
|
||||
"in_n_minutes": "%(num)s minutojn de nun",
|
||||
"n_days_ago": "antaŭ %(num)s tagoj",
|
||||
"n_hours_ago": "antaŭ %(num)s horoj",
|
||||
"n_minutes_ago": "antaŭ %(num)s minutoj"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Eraris elŝuto de sondosiero",
|
||||
"unnamed_audio": "Sennoma sondosiero"
|
||||
}
|
||||
}
|
||||
}
|
||||
39
packages/shared-components/src/i18n/strings/es.json
Normal file
39
packages/shared-components/src/i18n/strings/es.json
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Barra de búsqueda de audio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Borrar",
|
||||
"dismiss": "Omitir",
|
||||
"explore_rooms": "Explorar salas",
|
||||
"pause": "Pausar",
|
||||
"play": "Reproducir",
|
||||
"search": "Buscar"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Abrir teclado numérico"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "hace aprox. un día",
|
||||
"about_hour_ago": "hace aprox. una hora",
|
||||
"about_minute_ago": "hace aproximadamente un minuto",
|
||||
"few_seconds_ago": "hace unos segundos",
|
||||
"in_about_day": "dentro de un día",
|
||||
"in_about_hour": "dentro de una hora",
|
||||
"in_about_minute": "dentro de un minuto",
|
||||
"in_few_seconds": "dentro de unos segundos",
|
||||
"in_n_days": "dentro de %(num)s días",
|
||||
"in_n_hours": "dentro de %(num)s horas",
|
||||
"in_n_minutes": "dentro de %(num)s minutos",
|
||||
"n_days_ago": "hace %(num)s días",
|
||||
"n_hours_ago": "hace %(num)s horas",
|
||||
"n_minutes_ago": "hace %(num)s minutos"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Reproductor de audio",
|
||||
"error_downloading_audio": "Error al descargar el audio",
|
||||
"unnamed_audio": "Audio sin título"
|
||||
}
|
||||
}
|
||||
}
|
||||
48
packages/shared-components/src/i18n/strings/et.json
Normal file
48
packages/shared-components/src/i18n/strings/et.json
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Heli kerimisriba"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Kustuta",
|
||||
"dismiss": "Loobu",
|
||||
"explore_rooms": "Tutvu jututubadega",
|
||||
"pause": "Peata",
|
||||
"play": "Esita",
|
||||
"search": "Otsing"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Kasutaja %(displayName)s (<b>%(userId)s</b>) võrguidentiteet on lähtestatud. <a>Lisateave</a>",
|
||||
"withdraw_verification_action": "Eemalda verifitseerimine"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Ava numbriklahvistik"
|
||||
},
|
||||
"room": {
|
||||
"status_bar": {
|
||||
"history_visible": "See jututuba on seadistatud sel viisil, et uued liikmed saavad lugeda varasemat ajalugu.<a> Lisateave</a>"
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "umbes päev tagasi",
|
||||
"about_hour_ago": "umbes tund aega tagasi",
|
||||
"about_minute_ago": "umbes minut tagasi",
|
||||
"few_seconds_ago": "mõni sekund tagasi",
|
||||
"in_about_day": "umbes päeva pärast",
|
||||
"in_about_hour": "umbes tunni pärast",
|
||||
"in_about_minute": "umbes minuti pärast",
|
||||
"in_few_seconds": "mõne sekundi pärast",
|
||||
"in_n_days": "%(num)s päeva pärast",
|
||||
"in_n_hours": "%(num)s tunni pärast",
|
||||
"in_n_minutes": "%(num)s minuti pärast",
|
||||
"n_days_ago": "%(num)s päeva tagasi",
|
||||
"n_hours_ago": "%(num)s tundi tagasi",
|
||||
"n_minutes_ago": "%(num)s minutit tagasi"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Meediaesitaja",
|
||||
"error_downloading_audio": "Helifaili allalaadimine ei õnnestunud",
|
||||
"unnamed_audio": "Nimetu helifail"
|
||||
}
|
||||
}
|
||||
}
|
||||
29
packages/shared-components/src/i18n/strings/fa.json
Normal file
29
packages/shared-components/src/i18n/strings/fa.json
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "پاککردن",
|
||||
"dismiss": "نادیده بگیر",
|
||||
"explore_rooms": "جستجو در اتاق ها",
|
||||
"pause": "متوقفکردن",
|
||||
"play": "اجرا کردن",
|
||||
"search": "جستجو"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "باز کردن صفحه شمارهگیری"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "حدود یک روز قبل",
|
||||
"about_hour_ago": "حدود یک ساعت قبل",
|
||||
"about_minute_ago": "حدود یک دقیقه قبل",
|
||||
"few_seconds_ago": "چند ثانیه قبل",
|
||||
"in_about_day": "حدود یک روز دیگر",
|
||||
"in_about_hour": "حدود یک ساعت دیگر",
|
||||
"in_about_minute": "حدود یک دقیقه دیگر",
|
||||
"in_few_seconds": "چند ثانیه دیگر",
|
||||
"in_n_days": "%(num)s روز دیگر",
|
||||
"in_n_hours": "%(num)s ساعت دیگر",
|
||||
"in_n_minutes": "%(num)s دقیقه دیگر",
|
||||
"n_days_ago": "%(num)s روز قبل",
|
||||
"n_hours_ago": "%(num)s ساعت قبل",
|
||||
"n_minutes_ago": "%(num)s دقیقه قبل"
|
||||
}
|
||||
}
|
||||
38
packages/shared-components/src/i18n/strings/fi.json
Normal file
38
packages/shared-components/src/i18n/strings/fi.json
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Äänen siirtymispalkki"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Poista",
|
||||
"dismiss": "Hylkää",
|
||||
"explore_rooms": "Selaa huoneita",
|
||||
"pause": "Keskeytä",
|
||||
"play": "Toista",
|
||||
"search": "Haku"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Avaa näppäimistö"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "noin päivä sitten",
|
||||
"about_hour_ago": "noin tunti sitten",
|
||||
"about_minute_ago": "noin minuutti sitten",
|
||||
"few_seconds_ago": "muutama sekunti sitten",
|
||||
"in_about_day": "noin päivä sitten",
|
||||
"in_about_hour": "noin tunti sitten",
|
||||
"in_about_minute": "noin minuutti sitten",
|
||||
"in_few_seconds": "muutama sekunti sitten",
|
||||
"in_n_days": "%(num)s päivää sitten",
|
||||
"in_n_hours": "%(num)s tuntia sitten",
|
||||
"in_n_minutes": "%(num)s minuuttia sitten",
|
||||
"n_days_ago": "%(num)s päivää sitten",
|
||||
"n_hours_ago": "%(num)s tuntia sitten",
|
||||
"n_minutes_ago": "%(num)s minuuttia sitten"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Virhe ääntä ladattaessa",
|
||||
"unnamed_audio": "Nimetön ääni"
|
||||
}
|
||||
}
|
||||
}
|
||||
48
packages/shared-components/src/i18n/strings/fr.json
Normal file
48
packages/shared-components/src/i18n/strings/fr.json
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Barre de recherche audio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Supprimer",
|
||||
"dismiss": "Ignorer",
|
||||
"explore_rooms": "Parcourir les salons",
|
||||
"pause": "Pause",
|
||||
"play": "Lecture",
|
||||
"search": "Rechercher"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "L'identité de %(displayName)s (<b>%(userId)s</b>) semble avoir changé. <a>En savoir plus</a>",
|
||||
"withdraw_verification_action": "Révoquer la vérification"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Ouvrir le pavé de numérotation"
|
||||
},
|
||||
"room": {
|
||||
"status_bar": {
|
||||
"history_visible": "Ce salon a été configuré afin que les nouveaux membres puissent lire l'historique.<a> En savori plus</a>"
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "il y a environ un jour",
|
||||
"about_hour_ago": "il y a environ une heure",
|
||||
"about_minute_ago": "il y a environ une minute",
|
||||
"few_seconds_ago": "il y a quelques secondes",
|
||||
"in_about_day": "dans un jour environ",
|
||||
"in_about_hour": "dans une heure environ",
|
||||
"in_about_minute": "dans une minute environ",
|
||||
"in_few_seconds": "dans quelques secondes",
|
||||
"in_n_days": "dans %(num)s jours",
|
||||
"in_n_hours": "dans %(num)s heures",
|
||||
"in_n_minutes": "dans %(num)s minutes",
|
||||
"n_days_ago": "il y a %(num)s jours",
|
||||
"n_hours_ago": "il y a %(num)s heures",
|
||||
"n_minutes_ago": "il y a %(num)s minutes"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Lecteur audio",
|
||||
"error_downloading_audio": "Erreur lors du téléchargement de l’audio",
|
||||
"unnamed_audio": "Audio sans nom"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/gl.json
Normal file
35
packages/shared-components/src/i18n/strings/gl.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Eliminar",
|
||||
"dismiss": "Rexeitar",
|
||||
"explore_rooms": "Explorar salas",
|
||||
"pause": "Deter",
|
||||
"play": "Reproducir",
|
||||
"search": "Busca"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Abrir marcador"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "onte",
|
||||
"about_hour_ago": "fai unha hora",
|
||||
"about_minute_ago": "fai un minuto",
|
||||
"few_seconds_ago": "fai uns segundos",
|
||||
"in_about_day": "foi onte",
|
||||
"in_about_hour": "fará unha hora",
|
||||
"in_about_minute": "haberá un minuto",
|
||||
"in_few_seconds": "hai só uns segundos",
|
||||
"in_n_days": "fará %(num)s días",
|
||||
"in_n_hours": "fará %(num)s horas",
|
||||
"in_n_minutes": "fará %(num)s minutos",
|
||||
"n_days_ago": "fai %(num)s días",
|
||||
"n_hours_ago": "fai %(num)s horas",
|
||||
"n_minutes_ago": "fai %(num)s minutos"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Erro ao descargar o audio",
|
||||
"unnamed_audio": "Audio sen nome"
|
||||
}
|
||||
}
|
||||
}
|
||||
27
packages/shared-components/src/i18n/strings/he.json
Normal file
27
packages/shared-components/src/i18n/strings/he.json
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "מחק",
|
||||
"dismiss": "התעלם",
|
||||
"explore_rooms": "גלה חדרים",
|
||||
"search": "חפש"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "פתח לוח חיוג"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "בערך לפני יום",
|
||||
"about_hour_ago": "בערך לפני כשעה",
|
||||
"about_minute_ago": "לפני בערך דקה",
|
||||
"few_seconds_ago": "לפני מספר שניות",
|
||||
"in_about_day": "בערך בעוד יום מעכשיו",
|
||||
"in_about_hour": "בערך בעוד כשעה",
|
||||
"in_about_minute": "בערך עוד דקה אחת",
|
||||
"in_few_seconds": "בעוד מספר שניות מעכשיו",
|
||||
"in_n_days": "בעוד %(num)s ימים מעכשיו",
|
||||
"in_n_hours": "בעוד %(num)s שעות",
|
||||
"in_n_minutes": "בעוד %(num)s דקות",
|
||||
"n_days_ago": "לפני %(num)s ימים",
|
||||
"n_hours_ago": "לפני %(num)s שעות",
|
||||
"n_minutes_ago": "לפני %(num)s דקות"
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/hu.json
Normal file
43
packages/shared-components/src/i18n/strings/hu.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Hang keresősávja"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Törlés",
|
||||
"dismiss": "Eltüntetés",
|
||||
"explore_rooms": "Szobák felderítése",
|
||||
"pause": "Szünet",
|
||||
"play": "Lejátszás",
|
||||
"search": "Keresés"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Úgy tűnik, hogy %(displayName)s (<b>%(userId)s</b>) személyazonossága megváltozott. <a>További információ</a>",
|
||||
"withdraw_verification_action": "Ellenőrzés visszavonása"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Számlap megnyitása"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "egy napja",
|
||||
"about_hour_ago": "egy órája",
|
||||
"about_minute_ago": "egy perce",
|
||||
"few_seconds_ago": "néhány másodperce",
|
||||
"in_about_day": "egy nap múlva",
|
||||
"in_about_hour": "egy óra múlva",
|
||||
"in_about_minute": "egy perc múlva",
|
||||
"in_few_seconds": "másodpercek múlva",
|
||||
"in_n_days": "%(num)s nap múlva",
|
||||
"in_n_hours": "%(num)s óra múlva",
|
||||
"in_n_minutes": "%(num)s perc múlva",
|
||||
"n_days_ago": "%(num)s nappal ezelőtt",
|
||||
"n_hours_ago": "%(num)s órával ezelőtt",
|
||||
"n_minutes_ago": "%(num)s perccel ezelőtt"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Hanglejátszó",
|
||||
"error_downloading_audio": "Hiba a hang letöltésekor",
|
||||
"unnamed_audio": "Névtelen hang"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/hy.json
Normal file
43
packages/shared-components/src/i18n/strings/hy.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Աուդիո որոնման գոտի"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Ջնջել",
|
||||
"dismiss": "Հեռացնել",
|
||||
"explore_rooms": "Փնտրել սենյակներ",
|
||||
"pause": "Դադար",
|
||||
"play": "Միացնել",
|
||||
"search": "Որոնել"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)s-ի (<b>%(userId)s</b> ) ինքնությունը վերակայվել է։ <a> Իմանալ ավելին</a>",
|
||||
"withdraw_verification_action": "Հետ կանչել հաստատումը"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Բացեք թվերի հավաքման վահանակը"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "մոտ մեկ օր առաջ",
|
||||
"about_hour_ago": "մոտ մեկ ժամ առաջ",
|
||||
"about_minute_ago": "մոտ մեկ րոպե առաջ",
|
||||
"few_seconds_ago": "մի քանի վայրկյան առաջ",
|
||||
"in_about_day": "մոտ մեկ օր անց",
|
||||
"in_about_hour": "մոտ մեկ ժամ անց",
|
||||
"in_about_minute": "մոտ մեկ րոպե անց",
|
||||
"in_few_seconds": "մի քանի վայրկյան անց",
|
||||
"in_n_days": "%(num)s օր անց",
|
||||
"in_n_hours": "%(num)s ժամ անց",
|
||||
"in_n_minutes": "%(num)s րոպեներ անց",
|
||||
"n_days_ago": "%(num)s օր առաջ",
|
||||
"n_hours_ago": "%(num)s ժամ առաջ",
|
||||
"n_minutes_ago": "%(num)s րոպե առաջ"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Աուդիո նվագարկիչ",
|
||||
"error_downloading_audio": "Աուդիո ներբեռնման սխալ",
|
||||
"unnamed_audio": "Անանուն աուդիո"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/id.json
Normal file
43
packages/shared-components/src/i18n/strings/id.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Bilah pencarian audio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Hapus",
|
||||
"dismiss": "Abaikan",
|
||||
"explore_rooms": "Jelajahi ruangan",
|
||||
"pause": "Jeda",
|
||||
"play": "Mainkan",
|
||||
"search": "Cari"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Identitas (<b>%(userId)s</b>) %(displayName)s tampaknya telah berubah. <a>Pelajari lebih lanjut</a>",
|
||||
"withdraw_verification_action": "Tolak verifikasi"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Buka tombol penyetel"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "1 hari yang lalu",
|
||||
"about_hour_ago": "1 jam yang lalu",
|
||||
"about_minute_ago": "1 menit yang lalu",
|
||||
"few_seconds_ago": "beberapa detik yang lalu",
|
||||
"in_about_day": "1 hari dari sekarang",
|
||||
"in_about_hour": "1 jam dari sekarang",
|
||||
"in_about_minute": "1 menit dari sekarang",
|
||||
"in_few_seconds": "beberapa detik dari sekarang",
|
||||
"in_n_days": "%(num)s hari dari sekarang",
|
||||
"in_n_hours": "%(num)s jam dari sekarang",
|
||||
"in_n_minutes": "%(num)s dari sekarang",
|
||||
"n_days_ago": "%(num)s hari yang lalu",
|
||||
"n_hours_ago": "%(num)s jam yang lalu",
|
||||
"n_minutes_ago": "%(num)s menit yang lalu"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Pemutar audio",
|
||||
"error_downloading_audio": "Terjadi kesalahan mengunduh audio",
|
||||
"unnamed_audio": "Audio tidak dinamai"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/is.json
Normal file
35
packages/shared-components/src/i18n/strings/is.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Eyða",
|
||||
"dismiss": "Hunsa",
|
||||
"explore_rooms": "Kanna spjallrásir",
|
||||
"pause": "Bið",
|
||||
"play": "Spila",
|
||||
"search": "Leita"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Opna talnaborð"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "fyrir um degi síðan",
|
||||
"about_hour_ago": "fyrir um klukkustund síðan",
|
||||
"about_minute_ago": "fyrir um það bil mínútu síðan",
|
||||
"few_seconds_ago": "fyrir örfáum sekúndum síðan",
|
||||
"in_about_day": "eftir um það bil einn dag",
|
||||
"in_about_hour": "eftir um það bil klukkustund",
|
||||
"in_about_minute": "eftir um það bil mínútu",
|
||||
"in_few_seconds": "eftir nokkrar sekúndur",
|
||||
"in_n_days": "eftir %(num)s daga",
|
||||
"in_n_hours": "eftir %(num)s klukkustundir",
|
||||
"in_n_minutes": "eftir %(num)s mínútur",
|
||||
"n_days_ago": "fyrir %(num)s dögum síðan",
|
||||
"n_hours_ago": "fyrir %(num)s klukkustundum síðan",
|
||||
"n_minutes_ago": "fyrir %(num)s mínútum síðan"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Villa við að sækja hljóð",
|
||||
"unnamed_audio": "Nafnlaust hljóð"
|
||||
}
|
||||
}
|
||||
}
|
||||
38
packages/shared-components/src/i18n/strings/it.json
Normal file
38
packages/shared-components/src/i18n/strings/it.json
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Barra di ricerca audio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Elimina",
|
||||
"dismiss": "Chiudi",
|
||||
"explore_rooms": "Esplora stanze",
|
||||
"pause": "Pausa",
|
||||
"play": "Riproduci",
|
||||
"search": "Cerca"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Apri tastierino"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "circa un giorno fa",
|
||||
"about_hour_ago": "circa un'ora fa",
|
||||
"about_minute_ago": "circa un minuto fa",
|
||||
"few_seconds_ago": "pochi secondi fa",
|
||||
"in_about_day": "circa un giorno da adesso",
|
||||
"in_about_hour": "circa un'ora da adesso",
|
||||
"in_about_minute": "circa un minuto da adesso",
|
||||
"in_few_seconds": "pochi secondi da adesso",
|
||||
"in_n_days": "%(num)s giorni da adesso",
|
||||
"in_n_hours": "%(num)s ore da adesso",
|
||||
"in_n_minutes": "%(num)s minuti da adesso",
|
||||
"n_days_ago": "%(num)s giorni fa",
|
||||
"n_hours_ago": "%(num)s ore fa",
|
||||
"n_minutes_ago": "%(num)s minuti fa"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Errore di scaricamento dell'audio",
|
||||
"unnamed_audio": "Audio senza nome"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/ja.json
Normal file
35
packages/shared-components/src/i18n/strings/ja.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "削除",
|
||||
"dismiss": "閉じる",
|
||||
"explore_rooms": "ルームを探す",
|
||||
"pause": "一時停止",
|
||||
"play": "再生",
|
||||
"search": "検索"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "ダイヤルパッドを開く"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "約1日前",
|
||||
"about_hour_ago": "約1時間前",
|
||||
"about_minute_ago": "約1分前",
|
||||
"few_seconds_ago": "数秒前",
|
||||
"in_about_day": "今から約1日前",
|
||||
"in_about_hour": "今から約1時間前",
|
||||
"in_about_minute": "今から約1分前",
|
||||
"in_few_seconds": "今から数秒前",
|
||||
"in_n_days": "今から%(num)s日前",
|
||||
"in_n_hours": "今から%(num)s時間前",
|
||||
"in_n_minutes": "今から%(num)s分前",
|
||||
"n_days_ago": "%(num)s日前",
|
||||
"n_hours_ago": "%(num)s時間前",
|
||||
"n_minutes_ago": "%(num)s分前"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "音声をダウンロードする際にエラーが発生しました",
|
||||
"unnamed_audio": "名前のない音声"
|
||||
}
|
||||
}
|
||||
}
|
||||
32
packages/shared-components/src/i18n/strings/ka.json
Normal file
32
packages/shared-components/src/i18n/strings/ka.json
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "წაშლა",
|
||||
"dismiss": "დახურვა",
|
||||
"explore_rooms": "ოთახების დათავლიერება",
|
||||
"pause": "პაუზა",
|
||||
"play": "დაკვრა",
|
||||
"search": "ძიება"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "დაახლოებით ერთი დღის წინ",
|
||||
"about_hour_ago": "დაახლოებით ერთი საათის წინ",
|
||||
"about_minute_ago": "დაახლოებით ერთი წუთის წინ",
|
||||
"few_seconds_ago": "რამდენიმე წამის წინ",
|
||||
"in_about_day": "დაახლოებით ერთი დღის შემდეგ",
|
||||
"in_about_hour": "დაახლოებით ერთი საათის შემდეგ",
|
||||
"in_about_minute": "დაახლოებით ერთი წუთის შემდეგ",
|
||||
"in_few_seconds": "რამდენიმე წამის შემდეგ",
|
||||
"in_n_days": "%(num)sდღეებიდან",
|
||||
"in_n_hours": "%(num)sსაათის შემდეგ",
|
||||
"in_n_minutes": "%(num)sწუთის შემდეგ",
|
||||
"n_days_ago": "%(num)sდღის წინ",
|
||||
"n_hours_ago": "%(num)sსაათის წინ",
|
||||
"n_minutes_ago": "%(num)sწუთის წინ"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "შეცდომა აუდიოს ჩამოტვირთვისას",
|
||||
"unnamed_audio": "უსახელო აუდიო"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/ko.json
Normal file
43
packages/shared-components/src/i18n/strings/ko.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "오디오 탐색 바"
|
||||
},
|
||||
"action": {
|
||||
"delete": "삭제",
|
||||
"dismiss": "버리기",
|
||||
"explore_rooms": "방 검색",
|
||||
"pause": "일시중지",
|
||||
"play": "재생",
|
||||
"search": "찾기"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)s (<b>%(userId)s</b>)의 신원이 재설정되었습니다. <a>자세히 알아보기</a>",
|
||||
"withdraw_verification_action": "인증 취소"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "다이얼 패드 열기"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "약 1일 전",
|
||||
"about_hour_ago": "약 1 시간 전",
|
||||
"about_minute_ago": "약 1분 전",
|
||||
"few_seconds_ago": "몇 초 전",
|
||||
"in_about_day": "하루 정도 후",
|
||||
"in_about_hour": "지금부터 한 시간 정도 후에",
|
||||
"in_about_minute": "지금부터 약 1분 후",
|
||||
"in_few_seconds": "몇 초 후",
|
||||
"in_n_days": "지금부터 %(num)s 일 후에",
|
||||
"in_n_hours": "지금부터 %(num)s 시간 후",
|
||||
"in_n_minutes": "지금부터 %(num)s분 후",
|
||||
"n_days_ago": "%(num)s일 전",
|
||||
"n_hours_ago": "%(num)s 시간 전",
|
||||
"n_minutes_ago": "%(num)s분 전"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "오디오 플레이어",
|
||||
"error_downloading_audio": "오디오 다운로드 중 오류 발생",
|
||||
"unnamed_audio": "이름 없는 오디오"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/lo.json
Normal file
35
packages/shared-components/src/i18n/strings/lo.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "ລຶບ",
|
||||
"dismiss": "ຍົກເລີກ",
|
||||
"explore_rooms": "ການສຳຫຼວດຫ້ອງ",
|
||||
"pause": "ຢຸດຊົ່ວຄາວ",
|
||||
"play": "ຫຼິ້ນ",
|
||||
"search": "ຊອກຫາ"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "ເປີດແຜ່ນປັດ"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "ປະມານຫນຶ່ງມື້ກ່ອນຫນ້ານີ້",
|
||||
"about_hour_ago": "ປະມານຫນຶ່ງຊົ່ວໂມງກ່ອນຫນ້ານີ້",
|
||||
"about_minute_ago": "ປະມານໜຶ່ງວິນາທີກ່ອນຫນ້ານີ້",
|
||||
"few_seconds_ago": "ສອງສາມວິນາທີກ່ອນຫນ້ານີ້",
|
||||
"in_about_day": "ປະມານນຶ່ງມື້ຈາກນີ້",
|
||||
"in_about_hour": "ປະມານຫນຶ່ງຊົ່ວໂມງຈາກປະຈຸບັນນີ້",
|
||||
"in_about_minute": "ປະມານໜຶ່ງນາທີຕໍ່ຈາກນີ້",
|
||||
"in_few_seconds": "ສອງສາມວິນາທີຕໍ່ຈາກນີ້ໄປ",
|
||||
"in_n_days": "%(num)s ມື້ຕໍ່ຈາກນີ້",
|
||||
"in_n_hours": "%(num)s ຊົ່ວໂມງຈາກປະຈຸບັນນີ້",
|
||||
"in_n_minutes": "%(num)s ນາທີຕໍ່ຈາກນີ້",
|
||||
"n_days_ago": "%(num)sມື້ກ່ອນຫນ້ານີ້",
|
||||
"n_hours_ago": "%(num)s ຊົ່ວໂມງກ່ອນ",
|
||||
"n_minutes_ago": "%(num)s ນາທີກ່ອນ"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "ເກີດຄວາມຜິດພາດໃນການດາວໂຫຼດສຽງ",
|
||||
"unnamed_audio": "ສຽງບໍ່ມີຊື່"
|
||||
}
|
||||
}
|
||||
}
|
||||
24
packages/shared-components/src/i18n/strings/lt.json
Normal file
24
packages/shared-components/src/i18n/strings/lt.json
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Ištrinti",
|
||||
"dismiss": "Atmesti",
|
||||
"explore_rooms": "Žvalgyti kambarius",
|
||||
"search": "Ieškoti"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "maždaug prieš dieną",
|
||||
"about_hour_ago": "maždaug prieš valandą",
|
||||
"about_minute_ago": "maždaug prieš minutę",
|
||||
"few_seconds_ago": "prieš kelias sekundes",
|
||||
"in_about_day": "apie dieną nuo dabar",
|
||||
"in_about_hour": "apie valandą nuo dabar",
|
||||
"in_about_minute": "apie minutę nuo dabar",
|
||||
"in_few_seconds": "keletą sekundžių nuo dabar",
|
||||
"in_n_days": "%(num)s dienas(-ų) nuo dabar",
|
||||
"in_n_hours": "%(num)s valandas(-ų) nuo dabar",
|
||||
"in_n_minutes": "%(num)s minutes(-ų) nuo dabar",
|
||||
"n_days_ago": "prieš %(num)s dienas(-ų)",
|
||||
"n_hours_ago": "prieš %(num)s valandas(-ų)",
|
||||
"n_minutes_ago": "prieš %(num)s minutes(-ų)"
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/lv.json
Normal file
35
packages/shared-components/src/i18n/strings/lv.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Audio meklēšanas josla"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Izdzēst",
|
||||
"dismiss": "Atmest",
|
||||
"explore_rooms": "Pārlūkot istabas",
|
||||
"pause": "Pauzēt",
|
||||
"play": "Atskaņot",
|
||||
"search": "Meklēt"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "aptuveni dienu iepriekš",
|
||||
"about_hour_ago": "aptuveni stundu iepriekš",
|
||||
"about_minute_ago": "aptuveni minūti iepriekš",
|
||||
"few_seconds_ago": "pirms dažām sekundēm",
|
||||
"in_about_day": "aptuveni dienu kopš šī brīža",
|
||||
"in_about_hour": "aptuveni stundu kopš šī brīža",
|
||||
"in_about_minute": "aptuveni minūti kopš šī brīža",
|
||||
"in_few_seconds": "dažas sekundes kopš šī brīža",
|
||||
"in_n_days": "%(num)s dienas kopš šī brīža",
|
||||
"in_n_hours": "%(num)s stundas kopš šī brīža",
|
||||
"in_n_minutes": "%(num)s minūtes kopš šī brīža",
|
||||
"n_days_ago": "%(num)s dienas iepriekš",
|
||||
"n_hours_ago": "%(num)s stundas iepriekš",
|
||||
"n_minutes_ago": "%(num)s minūtes iepriekš"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Kļūda skaņas lejupielādēšanā",
|
||||
"unnamed_audio": "Nenosaukts audio"
|
||||
}
|
||||
}
|
||||
}
|
||||
38
packages/shared-components/src/i18n/strings/mg_MG.json
Normal file
38
packages/shared-components/src/i18n/strings/mg_MG.json
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Audio mitady bar"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Esorina",
|
||||
"dismiss": "Hanario",
|
||||
"explore_rooms": "Tsidiho ny efitrano",
|
||||
"pause": "Mihato",
|
||||
"play": "Milalao",
|
||||
"search": "Karohina"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Sokafy ny dial pad"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "Tokony ho iray andro izay",
|
||||
"about_hour_ago": "Manakaiky adin'iray Teo ho eo",
|
||||
"about_minute_ago": "Misy iray minitra Teo izay",
|
||||
"few_seconds_ago": "Segondra vitsy lasa",
|
||||
"in_about_day": "Anatiny iray andro eo ho eo",
|
||||
"in_about_hour": "Adiny iray eo ho eo",
|
||||
"in_about_minute": "Afaka iray minitra eo ho eo",
|
||||
"in_few_seconds": "Afaka segondra vitsy",
|
||||
"in_n_days": "%(num) s andro manomboka izao",
|
||||
"in_n_hours": "% (num) sAnatiny ora vitsivitsy",
|
||||
"in_n_minutes": "% (Num) sAfaka minitra vitsy",
|
||||
"n_days_ago": "%(num)s Andro vitsivitsy izay",
|
||||
"n_hours_ago": "%(num)sOra maromaro",
|
||||
"n_minutes_ago": "%(Num)s Minitra vitsivitsy izay"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Hadisoana tamin'ny fampidinana feo",
|
||||
"unnamed_audio": "Audio tsy voatonona anarana"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/nb_NO.json
Normal file
43
packages/shared-components/src/i18n/strings/nb_NO.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Søkelinje for lyd"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Slett",
|
||||
"dismiss": "Avvis",
|
||||
"explore_rooms": "Se alle rom",
|
||||
"pause": "Pause",
|
||||
"play": "Spill av",
|
||||
"search": "Søk"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)ss (<b>%(userId)s</b>) identitet ser ut til å ha endret seg. <a>Finn ut mer</a>",
|
||||
"withdraw_verification_action": "Trekk tilbake verifisering"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Åpne nummerpanelet"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "cirka 1 dag siden",
|
||||
"about_hour_ago": "cirka 1 time siden",
|
||||
"about_minute_ago": "cirka 1 minutt siden",
|
||||
"few_seconds_ago": "noen sekunder siden",
|
||||
"in_about_day": "rundt en dag fra nå",
|
||||
"in_about_hour": "rundt en time fra nå",
|
||||
"in_about_minute": "rundt et minutt fra nå",
|
||||
"in_few_seconds": "om noen sekunder fra nå",
|
||||
"in_n_days": "%(num)s dager fra nå",
|
||||
"in_n_hours": "%(num)s timer fra nå",
|
||||
"in_n_minutes": "%(num)s minutter fra nå",
|
||||
"n_days_ago": "%(num)s dager siden",
|
||||
"n_hours_ago": "%(num)s timer siden",
|
||||
"n_minutes_ago": "%(num)s minutter siden"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Lydavspiller",
|
||||
"error_downloading_audio": "Feil ved nedlasting av lyd",
|
||||
"unnamed_audio": "Ikke navngitt lyd"
|
||||
}
|
||||
}
|
||||
}
|
||||
38
packages/shared-components/src/i18n/strings/nl.json
Normal file
38
packages/shared-components/src/i18n/strings/nl.json
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Audio zoekbalk"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Verwijderen",
|
||||
"dismiss": "Sluiten",
|
||||
"explore_rooms": "Kamers ontdekken",
|
||||
"pause": "Pauze",
|
||||
"play": "Afspelen",
|
||||
"search": "Zoeken"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Kiestoetsen openen"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "ongeveer een dag geleden",
|
||||
"about_hour_ago": "ongeveer een uur geleden",
|
||||
"about_minute_ago": "ongeveer een minuut geleden",
|
||||
"few_seconds_ago": "enige tellen geleden",
|
||||
"in_about_day": "over een dag of zo",
|
||||
"in_about_hour": "over ongeveer een uur",
|
||||
"in_about_minute": "over ongeveer een minuut",
|
||||
"in_few_seconds": "over een paar tellen",
|
||||
"in_n_days": "over %(num)s dagen",
|
||||
"in_n_hours": "over %(num)s uur",
|
||||
"in_n_minutes": "over %(num)s minuten",
|
||||
"n_days_ago": "%(num)s dagen geleden",
|
||||
"n_hours_ago": "%(num)s uur geleden",
|
||||
"n_minutes_ago": "%(num)s minuten geleden"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Fout bij downloaden van audio",
|
||||
"unnamed_audio": "Naamloze audio"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/pl.json
Normal file
43
packages/shared-components/src/i18n/strings/pl.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Pasek wyszukiwania audio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Usuń",
|
||||
"dismiss": "Pomiń",
|
||||
"explore_rooms": "Przeglądaj pokoje",
|
||||
"pause": "Wstrzymaj",
|
||||
"play": "Odtwórz",
|
||||
"search": "Szukaj"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Tożsamość %(displayName)s (<b>%(userId)s</b>) została zresetowana. <a>Dowiedz się więcej</a>",
|
||||
"withdraw_verification_action": "Wycofaj weryfikację"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Otwórz klawiaturę numeryczną"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "około dzień temu",
|
||||
"about_hour_ago": "około godziny temu",
|
||||
"about_minute_ago": "około minuty temu",
|
||||
"few_seconds_ago": "kilka sekund temu",
|
||||
"in_about_day": "około dnia od teraz",
|
||||
"in_about_hour": "około godziny od teraz",
|
||||
"in_about_minute": "około minuty od teraz",
|
||||
"in_few_seconds": "za kilka sekund",
|
||||
"in_n_days": "za %(num)s dni",
|
||||
"in_n_hours": "za %(num)s godzin",
|
||||
"in_n_minutes": "za %(num)s minut",
|
||||
"n_days_ago": "%(num)s dni temu",
|
||||
"n_hours_ago": "%(num)s godzin temu",
|
||||
"n_minutes_ago": "%(num)s minut temu"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Odtwarzacz audio",
|
||||
"error_downloading_audio": "Wystąpił błąd w trakcie pobierania audio",
|
||||
"unnamed_audio": "Audio bez nazwy"
|
||||
}
|
||||
}
|
||||
}
|
||||
42
packages/shared-components/src/i18n/strings/pt.json
Normal file
42
packages/shared-components/src/i18n/strings/pt.json
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Barra de procura de áudio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Apagar",
|
||||
"dismiss": "Descartar",
|
||||
"explore_rooms": "Explorar rooms",
|
||||
"pause": "Pausar",
|
||||
"play": "Reproduzir",
|
||||
"search": "Pesquisar"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "A identidade de %(displayName)s (<b>%(userId)s</b> ) foi alterada. <a> Saber mais</a>",
|
||||
"withdraw_verification_action": "Retirar verificação"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Abre o teclado de marcação"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "há cerca de um dia",
|
||||
"about_hour_ago": "há cerca de uma hora",
|
||||
"about_minute_ago": "há cerca de um minuto",
|
||||
"few_seconds_ago": "há alguns segundos atrás",
|
||||
"in_about_day": "daqui a um dia",
|
||||
"in_about_hour": "daqui a uma hora",
|
||||
"in_about_minute": "daqui a um minuto",
|
||||
"in_few_seconds": "daqui a alguns segundos",
|
||||
"in_n_days": "daqui a %(num)s dias",
|
||||
"in_n_hours": "daqui a %(num)s horas",
|
||||
"in_n_minutes": "daqui a %(num)s minutos",
|
||||
"n_days_ago": "%(num)s dias atrás",
|
||||
"n_hours_ago": "%(num)s horas atrás",
|
||||
"n_minutes_ago": "%(num)s minutos atrás"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Erro ao descarregar áudio",
|
||||
"unnamed_audio": "Áudio sem nome"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/pt_BR.json
Normal file
43
packages/shared-components/src/i18n/strings/pt_BR.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Barra de busca de áudio"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Excluir",
|
||||
"dismiss": "Dispensar",
|
||||
"explore_rooms": "Explorar salas",
|
||||
"pause": "Pausar",
|
||||
"play": "Reproduzir",
|
||||
"search": "Buscar"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "A identidade de %(displayName)s (<b>%(userId)s</b>) parece ter mudado. <a>Saiba mais</a>",
|
||||
"withdraw_verification_action": "Retirar verificação"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Abrir o teclado de discagem"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "há aproximadamente um dia",
|
||||
"about_hour_ago": "há aproximadamente uma hora",
|
||||
"about_minute_ago": "há aproximadamente um minuto",
|
||||
"few_seconds_ago": "há alguns segundos",
|
||||
"in_about_day": "dentro de aproximadamente um dia",
|
||||
"in_about_hour": "dentro de aproximadamente uma hora",
|
||||
"in_about_minute": "dentro de aproximadamente um minuto",
|
||||
"in_few_seconds": "dentro de alguns segundos",
|
||||
"in_n_days": "dentro de %(num)s dias",
|
||||
"in_n_hours": "dentro de %(num)s horas",
|
||||
"in_n_minutes": "dentro de %(num)s minutos",
|
||||
"n_days_ago": "há %(num)s dias",
|
||||
"n_hours_ago": "há %(num)s horas",
|
||||
"n_minutes_ago": "há %(num)s minutos"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Reprodutor de Áudio",
|
||||
"error_downloading_audio": "Erro ao baixar o áudio",
|
||||
"unnamed_audio": "Áudio sem nome"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/ru.json
Normal file
43
packages/shared-components/src/i18n/strings/ru.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Панель поиска аудио"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Удалить",
|
||||
"dismiss": "Закрыть",
|
||||
"explore_rooms": "Обзор комнат",
|
||||
"pause": "Пауза",
|
||||
"play": "Воспроизведение",
|
||||
"search": "Поиск"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Идентичность %(displayName)s (<b>%(userId)s</b>), похоже, изменилась. <a>Узнать больше</a>",
|
||||
"withdraw_verification_action": "Подтверждение верификации"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Открыть панель набора номера"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "около суток назад",
|
||||
"about_hour_ago": "около часа назад",
|
||||
"about_minute_ago": "около минуты назад",
|
||||
"few_seconds_ago": "несколько секунд назад",
|
||||
"in_about_day": "примерно через день",
|
||||
"in_about_hour": "примерно через час",
|
||||
"in_about_minute": "примерно через минуту",
|
||||
"in_few_seconds": "несколько секунд назад",
|
||||
"in_n_days": "%(num)s дней спустя",
|
||||
"in_n_hours": "%(num)s часов спустя",
|
||||
"in_n_minutes": "%(num)s минут спустя",
|
||||
"n_days_ago": "%(num)s дней назад",
|
||||
"n_hours_ago": "%(num)s часов назад",
|
||||
"n_minutes_ago": "%(num)s минут назад"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Аудиоплеер",
|
||||
"error_downloading_audio": "Ошибка загрузки аудио",
|
||||
"unnamed_audio": "Безымянное аудио"
|
||||
}
|
||||
}
|
||||
}
|
||||
48
packages/shared-components/src/i18n/strings/sk.json
Normal file
48
packages/shared-components/src/i18n/strings/sk.json
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Panel vyhľadávania zvuku"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Vymazať",
|
||||
"dismiss": "Zamietnuť",
|
||||
"explore_rooms": "Preskúmať miestnosti",
|
||||
"pause": "Pozastaviť",
|
||||
"play": "Prehrať",
|
||||
"search": "Hľadať"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Zdá sa, že identita (<b>%(userId)s</b>) používateľa %(displayName)s bola obnovená. <a>Zistiť viac </a>",
|
||||
"withdraw_verification_action": "Zrušiť overenie"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Otvoriť číselník"
|
||||
},
|
||||
"room": {
|
||||
"status_bar": {
|
||||
"history_visible": "Správy, ktoré odošlete, budú zdieľané s novými členmi pozvanými do tejto miestnosti. <a>Zistiť viac</a>"
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "asi pred jedným dňom",
|
||||
"about_hour_ago": "približne pred hodinou",
|
||||
"about_minute_ago": "približne pred minútou",
|
||||
"few_seconds_ago": "pred pár sekundami",
|
||||
"in_about_day": "približne o deň",
|
||||
"in_about_hour": "približne o hodinu",
|
||||
"in_about_minute": "približne o minútu",
|
||||
"in_few_seconds": "o pár sekúnd",
|
||||
"in_n_days": "o %(num)s dní",
|
||||
"in_n_hours": "o %(num)s hodín",
|
||||
"in_n_minutes": "o %(num)s minút",
|
||||
"n_days_ago": "pred %(num)s dňami",
|
||||
"n_hours_ago": "pred %(num)s hodinami",
|
||||
"n_minutes_ago": "pred %(num)s minútami"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Prehrávač zvuku",
|
||||
"error_downloading_audio": "Chyba pri sťahovaní zvuku",
|
||||
"unnamed_audio": "Nepomenovaný zvukový záznam"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/sq.json
Normal file
35
packages/shared-components/src/i18n/strings/sq.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Fshije",
|
||||
"dismiss": "Mos e merr parasysh",
|
||||
"explore_rooms": "Eksploroni dhoma",
|
||||
"pause": "Ndalesë",
|
||||
"play": "Luaje",
|
||||
"search": "Kërkoni"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Hap butona numrash"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "rreth një ditë më parë",
|
||||
"about_hour_ago": "rreth një orë më parë",
|
||||
"about_minute_ago": "rreth një minutë më parë",
|
||||
"few_seconds_ago": "pak sekonda më parë",
|
||||
"in_about_day": "rreth një ditë nga tani",
|
||||
"in_about_hour": "rreth një orë nga tani",
|
||||
"in_about_minute": "rreth një minutë nga tani",
|
||||
"in_few_seconds": "pak sekonda nga tani",
|
||||
"in_n_days": "%(num)s ditë nga tani",
|
||||
"in_n_hours": "%(num)s orë nga tani",
|
||||
"in_n_minutes": "%(num)s minuta nga tani",
|
||||
"n_days_ago": "%(num)s ditë më parë",
|
||||
"n_hours_ago": "%(num)s orë më parë",
|
||||
"n_minutes_ago": "%(num)s minuta më parë"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Gabim në shkarkim audioje",
|
||||
"unnamed_audio": "Audio pa emër"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/sv.json
Normal file
43
packages/shared-components/src/i18n/strings/sv.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Förloppsfält för ljud"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Radera",
|
||||
"dismiss": "Avvisa",
|
||||
"explore_rooms": "Utforska rum",
|
||||
"pause": "Pausa",
|
||||
"play": "Spela",
|
||||
"search": "Sök"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)ss (<b>%(userId)s</b> ) identitet verkar ha ändrats.<a> Läs mer</a>",
|
||||
"withdraw_verification_action": "Återkalla verifieringen"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Öppna knappsats"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "cirka en dag sedan",
|
||||
"about_hour_ago": "cirka en timme sedan",
|
||||
"about_minute_ago": "cirka en minut sedan",
|
||||
"few_seconds_ago": "några sekunder sedan",
|
||||
"in_about_day": "om cirka en dag",
|
||||
"in_about_hour": "om cirka en timme",
|
||||
"in_about_minute": "om cirka en minut",
|
||||
"in_few_seconds": "om några sekunder",
|
||||
"in_n_days": "om %(num)s dagar",
|
||||
"in_n_hours": "om %(num)s timmar",
|
||||
"in_n_minutes": "om %(num)s minuter",
|
||||
"n_days_ago": "%(num)s dagar sedan",
|
||||
"n_hours_ago": "%(num)s timmar sedan",
|
||||
"n_minutes_ago": "%(num)s minuter sedan"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Ljudspelare",
|
||||
"error_downloading_audio": "Fel vid nedladdning av ljud",
|
||||
"unnamed_audio": "Namnlöst ljud"
|
||||
}
|
||||
}
|
||||
}
|
||||
42
packages/shared-components/src/i18n/strings/tr.json
Normal file
42
packages/shared-components/src/i18n/strings/tr.json
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Ses arama çubuğu"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Sil",
|
||||
"dismiss": "Kapat",
|
||||
"explore_rooms": "Odaları keşfet",
|
||||
"pause": "Durdur",
|
||||
"play": "Oynat",
|
||||
"search": "Ara"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "%(displayName)s'ın (<b>%(userId)s</b>) kimliği değişmiş gibi görünüyor. <a>Daha fazla bilgi </a>",
|
||||
"withdraw_verification_action": "Doğrulamayı iptal et"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Arama tuşlarını aç"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "yaklaşık bir gün önce",
|
||||
"about_hour_ago": "yaklaşık bir saat önce",
|
||||
"about_minute_ago": "yaklaşık bir dakika önce",
|
||||
"few_seconds_ago": "bir kaç saniye önce",
|
||||
"in_about_day": "şu andan itibaren yaklaşık bir gün",
|
||||
"in_about_hour": "şu andan itibaren yaklaşık bir saat",
|
||||
"in_about_minute": "şu andan itibaren yaklaşık bir dakika",
|
||||
"in_few_seconds": "şu andan itibaren bir kaç saniye",
|
||||
"in_n_days": "şu andan itibaren %(num)s gün",
|
||||
"in_n_hours": "şu andan itibaren %(num)s saat",
|
||||
"in_n_minutes": "şu andan itibaren %(num)s dakika",
|
||||
"n_days_ago": "%(num)s gün önce",
|
||||
"n_hours_ago": "%(num)s saat önce",
|
||||
"n_minutes_ago": "%(num)s dakika önce"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Ses dosyası indirilirken hata oluştu",
|
||||
"unnamed_audio": "İsimsiz ses"
|
||||
}
|
||||
}
|
||||
}
|
||||
43
packages/shared-components/src/i18n/strings/uk.json
Normal file
43
packages/shared-components/src/i18n/strings/uk.json
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"a11y": {
|
||||
"seek_bar_label": "Панель гортання аудіо"
|
||||
},
|
||||
"action": {
|
||||
"delete": "Видалити",
|
||||
"dismiss": "Відхилити",
|
||||
"explore_rooms": "Каталог кімнат",
|
||||
"pause": "Призупинити",
|
||||
"play": "Відтворити",
|
||||
"search": "Пошук"
|
||||
},
|
||||
"encryption": {
|
||||
"pinned_identity_changed": "Ідентичність %(displayName)s (<b>%(userId)s</b>) скинуто. <a>Докладніше</a>",
|
||||
"withdraw_verification_action": "Відкликати верифікацію"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Відкрити номеронабирач"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "близько доби тому",
|
||||
"about_hour_ago": "близько години тому",
|
||||
"about_minute_ago": "близько хвилини тому",
|
||||
"few_seconds_ago": "Декілька секунд тому",
|
||||
"in_about_day": "приблизно через день",
|
||||
"in_about_hour": "приблизно через годину",
|
||||
"in_about_minute": "приблизно через хвилинку",
|
||||
"in_few_seconds": "декілька секунд тому",
|
||||
"in_n_days": "%(num)s днів по тому",
|
||||
"in_n_hours": "%(num)s годин по тому",
|
||||
"in_n_minutes": "%(num)s хвилин по тому",
|
||||
"n_days_ago": "%(num)s днів тому",
|
||||
"n_hours_ago": "%(num)s годин тому",
|
||||
"n_minutes_ago": "%(num)s хвилин тому"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"audio_player": "Звуковий програвач",
|
||||
"error_downloading_audio": "Помилка завантаження аудіо",
|
||||
"unnamed_audio": "Аудіо без назви"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/vi.json
Normal file
35
packages/shared-components/src/i18n/strings/vi.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "Xoá",
|
||||
"dismiss": "Bỏ qua",
|
||||
"explore_rooms": "Khám phá các phòng",
|
||||
"pause": "Tạm dừng",
|
||||
"play": "Chạy",
|
||||
"search": "Tìm kiếm"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "Mở bàn phím quay số"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "khoảng một ngày trước",
|
||||
"about_hour_ago": "khoảng một giờ trước",
|
||||
"about_minute_ago": "khoảng một phút trước",
|
||||
"few_seconds_ago": "vài giây trước",
|
||||
"in_about_day": "khoảng một ngày kể từ bây giờ",
|
||||
"in_about_hour": "khoảng một giờ kể từ bây giờ",
|
||||
"in_about_minute": "khoảng một phút kể từ bây giờ",
|
||||
"in_few_seconds": "một vài giây kể từ bây giờ",
|
||||
"in_n_days": "%(num)s ngày kể từ bây giờ",
|
||||
"in_n_hours": "%(num)s giờ kể từ bây giờ",
|
||||
"in_n_minutes": "%(num)s phút kể từ bây giờ",
|
||||
"n_days_ago": "%(num)s ngày trước",
|
||||
"n_hours_ago": "%(num)s giờ trước",
|
||||
"n_minutes_ago": "%(num)s phút trước"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "Lỗi khi tải xuống âm thanh",
|
||||
"unnamed_audio": "Âm thanh không tên"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/zh_Hans.json
Normal file
35
packages/shared-components/src/i18n/strings/zh_Hans.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "删除",
|
||||
"dismiss": "忽略",
|
||||
"explore_rooms": "查找房间",
|
||||
"pause": "暂停",
|
||||
"play": "播放",
|
||||
"search": "搜索"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "打开拨号键盘"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "约一天前",
|
||||
"about_hour_ago": "约一小时前",
|
||||
"about_minute_ago": "约一分钟前",
|
||||
"few_seconds_ago": "数秒前",
|
||||
"in_about_day": "从现在开始约一天",
|
||||
"in_about_hour": "从现在开始约一小时",
|
||||
"in_about_minute": "从现在开始约一分钟",
|
||||
"in_few_seconds": "从现在开始数秒",
|
||||
"in_n_days": "从现在开始%(num)s天",
|
||||
"in_n_hours": "从现在开始%(num)s小时",
|
||||
"in_n_minutes": "从现在开始%(num)s分钟",
|
||||
"n_days_ago": "%(num)s天前",
|
||||
"n_hours_ago": "%(num)s小时前",
|
||||
"n_minutes_ago": "%(num)s分钟前"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "下载音频时出错",
|
||||
"unnamed_audio": "未命名的音频"
|
||||
}
|
||||
}
|
||||
}
|
||||
35
packages/shared-components/src/i18n/strings/zh_Hant.json
Normal file
35
packages/shared-components/src/i18n/strings/zh_Hant.json
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"action": {
|
||||
"delete": "刪除",
|
||||
"dismiss": "關閉",
|
||||
"explore_rooms": "探索聊天室",
|
||||
"pause": "暫停",
|
||||
"play": "播放",
|
||||
"search": "搜尋"
|
||||
},
|
||||
"left_panel": {
|
||||
"open_dial_pad": "開啟撥號鍵盤"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "大約一天前",
|
||||
"about_hour_ago": "大約一小時前",
|
||||
"about_minute_ago": "大約一分鐘前",
|
||||
"few_seconds_ago": "數秒前",
|
||||
"in_about_day": "從現在開始大約一天",
|
||||
"in_about_hour": "從現在開始大約一小時",
|
||||
"in_about_minute": "從現在開始大約一分鐘",
|
||||
"in_few_seconds": "從現在開始數秒鐘",
|
||||
"in_n_days": "從現在開始 %(num)s 天",
|
||||
"in_n_hours": "從現在開始 %(num)s 小時",
|
||||
"in_n_minutes": "從現在開始 %(num)s 分鐘",
|
||||
"n_days_ago": "%(num)s 天前",
|
||||
"n_hours_ago": "%(num)s 小時前",
|
||||
"n_minutes_ago": "%(num)s 分鐘前"
|
||||
},
|
||||
"timeline": {
|
||||
"m.audio": {
|
||||
"error_downloading_audio": "下載音訊時發生錯誤",
|
||||
"unnamed_audio": "未命名的音訊"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -36,7 +36,3 @@ export * from "./utils/I18nApi";
|
|||
export * from "./viewmodel";
|
||||
export * from "./useMockedViewModel";
|
||||
export * from "./useViewModel";
|
||||
|
||||
// i18n (we must export this directly in order to not confuse the type bundler, it seems,
|
||||
// otherwise it will leave it as a relative import rather than bundling it)
|
||||
export type * from "./i18nKeys.d.ts";
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import fetchMock from "fetch-mock-jest";
|
||||
|
||||
import { setLanguage } from "../../src/utils/i18n";
|
||||
import en from "../../../../src/i18n/strings/en_EN.json";
|
||||
import en from "../i18n/strings/en_EN.json";
|
||||
|
||||
export function setupLanguageMock(): void {
|
||||
fetchMock
|
||||
|
|
|
|||
|
|
@ -5,14 +5,13 @@
|
|||
* Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
import { type TranslationKey } from "../i18nKeys";
|
||||
import { I18nApi } from "./I18nApi";
|
||||
|
||||
describe("I18nApi", () => {
|
||||
it("can register a translation and use it", () => {
|
||||
const i18n = new I18nApi();
|
||||
i18n.register({
|
||||
"hello.world": {
|
||||
["hello.world" as TranslationKey]: {
|
||||
en: "Hello, World!",
|
||||
},
|
||||
});
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@ import { type I18nApi as II18nApi, type Variables, type Translations } from "@el
|
|||
|
||||
import { humanizeTime } from "./humanize";
|
||||
import { _t, getLocale, registerTranslations } from "./i18n";
|
||||
import { type TranslationKey } from "../i18nKeys";
|
||||
|
||||
export class I18nApi implements II18nApi {
|
||||
/**
|
||||
|
|
@ -24,10 +23,11 @@ export class I18nApi implements II18nApi {
|
|||
*/
|
||||
public register(translations: Partial<Translations>): void {
|
||||
const langs: Record<string, Record<string, string>> = {};
|
||||
|
||||
for (const key in translations) {
|
||||
for (const lang in translations[key]) {
|
||||
for (const lang in translations[key as keyof Translations]) {
|
||||
langs[lang] = langs[lang] || {};
|
||||
langs[lang][key] = translations[key][lang];
|
||||
langs[lang][key] = translations[key as keyof Translations]![lang];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -25,13 +25,11 @@ import React from "react";
|
|||
import { KEY_SEPARATOR } from "matrix-web-i18n";
|
||||
import counterpart from "counterpart";
|
||||
|
||||
import type { TranslationKey } from "../index";
|
||||
|
||||
// @ts-ignore - $webapp is a webpack resolve alias pointing to the output directory, see webpack config
|
||||
import webpackLangJsonUrl from "$webapp/i18n/languages.json";
|
||||
|
||||
export { KEY_SEPARATOR, normalizeLanguageKey, getNormalizedLanguageKeys } from "matrix-web-i18n";
|
||||
|
||||
// Path where we load language files from (the index plus translations for each language)
|
||||
// The filename is appended to this, so a relative path here will result in a fetch for
|
||||
// a relative URL.
|
||||
const i18nFolder = "i18n/";
|
||||
|
||||
// Control whether to also return original, untranslated strings
|
||||
|
|
@ -421,13 +419,7 @@ async function getLanguage(langPath: string): Promise<ICounterpartTranslation> {
|
|||
}
|
||||
|
||||
export async function getLangsJson(): Promise<Languages> {
|
||||
let url: string;
|
||||
if (typeof webpackLangJsonUrl === "string") {
|
||||
// in Jest this 'url' isn't a URL, so just fall through
|
||||
url = webpackLangJsonUrl;
|
||||
} else {
|
||||
url = i18nFolder + "languages.json";
|
||||
}
|
||||
const url = i18nFolder + "languages.json";
|
||||
|
||||
const res = await fetch(url, { method: "GET" });
|
||||
|
||||
|
|
|
|||
|
|
@ -9,8 +9,10 @@ import _ from "lodash";
|
|||
import webpack from "webpack";
|
||||
import type { Translations } from "matrix-web-i18n";
|
||||
|
||||
const I18N_BASE_PATH = "src/i18n/strings/";
|
||||
const INCLUDE_LANGS = [...new Set([...fs.readdirSync(I18N_BASE_PATH)])]
|
||||
const EW_I18N_BASE_PATH = "src/i18n/strings/";
|
||||
const SC_I18N_BASE_PATH = "packages/shared-components/src/i18n/strings/";
|
||||
|
||||
const INCLUDE_LANGS = [...new Set([...fs.readdirSync(EW_I18N_BASE_PATH)])]
|
||||
.filter((fn) => fn.endsWith(".json"))
|
||||
.map((f) => f.slice(0, -5));
|
||||
|
||||
|
|
@ -41,11 +43,17 @@ const logWatch = (path: string) => {
|
|||
}
|
||||
};
|
||||
|
||||
function prepareLangFile(lang: string, dest: string): [filename: string, json: string] {
|
||||
const path = I18N_BASE_PATH + lang + ".json";
|
||||
/*
|
||||
* Make a JSON language file for the given language by merging all translations
|
||||
* into a single file (ie. element-web and shared-components).
|
||||
* Returns the filename (including hash) and JSON content.
|
||||
*/
|
||||
function prepareLangFile(lang: string): [filename: string, json: string] {
|
||||
const ewTranslationsPath = EW_I18N_BASE_PATH + lang + ".json";
|
||||
const scTranslationsPath = SC_I18N_BASE_PATH + lang + ".json";
|
||||
|
||||
let translations: Translations = {};
|
||||
[path].forEach(function (f) {
|
||||
[ewTranslationsPath, scTranslationsPath].forEach(function (f) {
|
||||
if (fs.existsSync(f)) {
|
||||
try {
|
||||
translations = _.merge(translations, JSON.parse(fs.readFileSync(f).toString()));
|
||||
|
|
@ -99,7 +107,8 @@ function genLangList(langFileMap: Record<string, string>): void {
|
|||
* and regenerating languages.json with the new filename
|
||||
*/
|
||||
function watchLanguage(lang: string, dest: string, langFileMap: Record<string, string>): void {
|
||||
const path = I18N_BASE_PATH + lang + ".json";
|
||||
const ewTranslationsPath = EW_I18N_BASE_PATH + lang + ".json";
|
||||
const scTranslationsPath = SC_I18N_BASE_PATH + lang + ".json";
|
||||
|
||||
// XXX: Use a debounce because for some reason if we read the language
|
||||
// file immediately after the FS event is received, the file contents
|
||||
|
|
@ -110,14 +119,14 @@ function watchLanguage(lang: string, dest: string, langFileMap: Record<string, s
|
|||
clearTimeout(makeLangDebouncer);
|
||||
}
|
||||
makeLangDebouncer = setTimeout(() => {
|
||||
const [filename, json] = prepareLangFile(lang, dest);
|
||||
const [filename, json] = prepareLangFile(lang);
|
||||
genLangFile(dest, filename, json);
|
||||
langFileMap[lang] = filename;
|
||||
genLangList(langFileMap);
|
||||
}, 500);
|
||||
};
|
||||
|
||||
[path].forEach(function (f) {
|
||||
[ewTranslationsPath, scTranslationsPath].forEach(function (f) {
|
||||
chokidar
|
||||
.watch(f, { ignoreInitial: true })
|
||||
.on("ready", () => {
|
||||
|
|
@ -132,7 +141,7 @@ function watchLanguage(lang: string, dest: string, langFileMap: Record<string, s
|
|||
// language resources
|
||||
const I18N_DEST = "webapp/i18n/";
|
||||
const I18N_FILENAME_MAP = INCLUDE_LANGS.reduce<Record<string, string>>((m, l) => {
|
||||
const [filename, json] = prepareLangFile(l, I18N_DEST);
|
||||
const [filename, json] = prepareLangFile(l);
|
||||
if (!watch) {
|
||||
genLangFile(I18N_DEST, filename, json);
|
||||
}
|
||||
|
|
|
|||
14
src/@types/i18n.d.ts
vendored
Normal file
14
src/@types/i18n.d.ts
vendored
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
/*
|
||||
Copyright 2025 Element Creations Ltd.
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Commercial
|
||||
Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
import { type TranslationKey as _TranslationKey } from "matrix-web-i18n";
|
||||
|
||||
import type Translations from "../i18n/strings/en_EN.json";
|
||||
|
||||
declare global {
|
||||
type TranslationKey = _TranslationKey<typeof Translations>;
|
||||
}
|
||||
|
|
@ -9,7 +9,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
*/
|
||||
|
||||
// Import i18n.tsx instead of languageHandler to avoid circular deps
|
||||
import { _td, type TranslationKey } from "@element-hq/web-shared-components";
|
||||
import { _td } from "@element-hq/web-shared-components";
|
||||
|
||||
import { IS_MAC, IS_ELECTRON, Key } from "../Keyboard";
|
||||
import { type IBaseSetting } from "../settings/Settings";
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import sanitizeHtml from "sanitize-html";
|
|||
import classnames from "classnames";
|
||||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
|
||||
import { _t, type TranslationKey } from "../../languageHandler";
|
||||
import { _t } from "../../languageHandler";
|
||||
import dis from "../../dispatcher/dispatcher";
|
||||
import { MatrixClientPeg } from "../../MatrixClientPeg";
|
||||
import MatrixClientContext from "../../contexts/MatrixClientContext";
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import React, { type JSX } from "react";
|
||||
import classNames from "classnames";
|
||||
|
||||
import { _t, type TranslationKey } from "../../languageHandler";
|
||||
import { _t } from "../../languageHandler";
|
||||
import AutoHideScrollbar from "./AutoHideScrollbar";
|
||||
import { PosthogScreenTracker, type ScreenName } from "../../PosthogTrackers";
|
||||
import { type NonEmptyArray } from "../../@types/common";
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ import { Action } from "../../../../dispatcher/actions";
|
|||
import { asyncSome } from "../../../../utils/arrays";
|
||||
import { getUserDeviceIds } from "../../../../utils/crypto/deviceInfo";
|
||||
import { type RoomMember } from "../../../../models/rooms/RoomMember";
|
||||
import { _t, _td, type TranslationKey } from "../../../../languageHandler";
|
||||
import { _t, _td } from "../../../../languageHandler";
|
||||
import { E2EStatus } from "../../../../utils/ShieldUtils";
|
||||
|
||||
interface MemberTileViewModelProps {
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import { useCallback, useEffect, useMemo, useState } from "react";
|
||||
|
||||
import { FilterKey } from "../../../stores/room-list-v3/skip-list/filters";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import RoomListStoreV3, {
|
||||
LISTS_LOADED_EVENT,
|
||||
LISTS_UPDATE_EVENT,
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import React, { type ComponentProps, PureComponent, type Ref } from "react";
|
||||
|
||||
import Field, { type IInputProps } from "../elements/Field";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import withValidation, { type IFieldState, type IValidationResult } from "../elements/Validation";
|
||||
import * as Email from "../../../email";
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import React, { type ComponentProps, PureComponent, type Ref } from "react";
|
|||
|
||||
import Field, { type IInputProps } from "../elements/Field";
|
||||
import withValidation, { type IFieldState, type IValidationResult } from "../elements/Validation";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
|
||||
interface IProps extends Omit<IInputProps, "onValidate" | "label" | "element"> {
|
||||
id?: string;
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import classNames from "classnames";
|
|||
import type { ZxcvbnResult } from "@zxcvbn-ts/core";
|
||||
import SdkConfig from "../../../SdkConfig";
|
||||
import withValidation, { type IFieldState, type IValidationResult } from "../elements/Validation";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import Field, { type IInputProps } from "../elements/Field";
|
||||
import { MatrixClientPeg } from "../../../MatrixClientPeg";
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import React, { useEffect, useState } from "react";
|
|||
import MediaDeviceHandler, { MediaDeviceKindEnum } from "../../../MediaDeviceHandler";
|
||||
import IconizedContextMenu, { IconizedContextMenuOptionList, IconizedContextMenuRadio } from "./IconizedContextMenu";
|
||||
import { type IProps as IContextMenuProps } from "../../structures/ContextMenu";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
|
||||
const SECTION_NAMES: Record<MediaDeviceKindEnum, TranslationKey> = {
|
||||
[MediaDeviceKindEnum.AudioInput]: _td("voip|input_devices"),
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ import { sleep } from "matrix-js-sdk/src/utils";
|
|||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
import { ErrorIcon } from "@vector-im/compound-design-tokens/assets/web/icons";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import BaseDialog from "./BaseDialog";
|
||||
import Dropdown from "../elements/Dropdown";
|
||||
import SearchBox from "../../structures/SearchBox";
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import React, { type JSX, useState } from "react";
|
||||
import { Form } from "@vector-im/compound-web";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import MatrixClientContext from "../../../contexts/MatrixClientContext";
|
||||
import BaseDialog from "./BaseDialog";
|
||||
import { TimelineEventEditor } from "./devtools/Event";
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import React, { type ChangeEvent, createRef } from "react";
|
||||
|
||||
import Field from "../elements/Field";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import { type IFieldState, type IValidationResult } from "../elements/Validation";
|
||||
import BaseDialog from "./BaseDialog";
|
||||
import DialogButtons from "../elements/DialogButtons";
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ import BaseTool, { DevtoolsContext, type IDevtoolsProps } from "./BaseTool";
|
|||
import MatrixClientContext from "../../../../contexts/MatrixClientContext";
|
||||
import { EventEditor, EventViewer, eventTypeField, type IEditorProps, stringify } from "./Event";
|
||||
import FilteredList from "./FilteredList";
|
||||
import { _td, type TranslationKey } from "../../../../languageHandler";
|
||||
import { _td } from "../../../../languageHandler";
|
||||
|
||||
export const AccountDataEventEditor: React.FC<IEditorProps> = ({ mxEvent, onBack }) => {
|
||||
const cli = useContext(MatrixClientContext);
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import React, { createContext, type ReactNode, useState } from "react";
|
|||
import { type Room } from "matrix-js-sdk/src/matrix";
|
||||
import classNames from "classnames";
|
||||
|
||||
import { _t, type TranslationKey } from "../../../../languageHandler";
|
||||
import { _t } from "../../../../languageHandler";
|
||||
import { type XOR } from "../../../../@types/common";
|
||||
import { type Tool } from "../DevtoolsDialog";
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import React, { type ChangeEvent, type ReactNode, useContext, useMemo, useRef, useState } from "react";
|
||||
import { type IContent, type MatrixEvent, type TimelineEvents } from "matrix-js-sdk/src/matrix";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../../languageHandler";
|
||||
import { _t, _td } from "../../../../languageHandler";
|
||||
import Field from "../../elements/Field";
|
||||
import BaseTool, { DevtoolsContext, type IDevtoolsProps } from "./BaseTool";
|
||||
import MatrixClientContext from "../../../../contexts/MatrixClientContext";
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ Please see LICENSE files in the repository root for full details.
|
|||
import React from "react";
|
||||
import classNames from "classnames";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import BaseDialog from "..//dialogs/BaseDialog";
|
||||
import DialogButtons from "./DialogButtons";
|
||||
import AccessibleButton from "./AccessibleButton";
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import classNames from "classnames";
|
|||
import { Tooltip } from "@vector-im/compound-web";
|
||||
import { ErrorSolidIcon, ShieldIcon, LockSolidIcon } from "@vector-im/compound-design-tokens/assets/web/icons";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import AccessibleButton from "../elements/AccessibleButton";
|
||||
import { E2EStatus } from "../../../utils/ShieldUtils";
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ import { type ActionPayload } from "../../../dispatcher/payloads.ts";
|
|||
import { type ViewRoomDeltaPayload } from "../../../dispatcher/payloads/ViewRoomDeltaPayload.ts";
|
||||
import { type ViewRoomPayload } from "../../../dispatcher/payloads/ViewRoomPayload.ts";
|
||||
import { useEventEmitterState } from "../../../hooks/useEventEmitter.ts";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler.tsx";
|
||||
import { _t, _td } from "../../../languageHandler.tsx";
|
||||
import { MatrixClientPeg } from "../../../MatrixClientPeg.ts";
|
||||
import PosthogTrackers from "../../../PosthogTrackers.ts";
|
||||
import SettingsStore from "../../../settings/SettingsStore.ts";
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import { ErrorSolidIcon } from "@vector-im/compound-design-tokens/assets/web/ico
|
|||
|
||||
import MatrixClientContext from "../../../contexts/MatrixClientContext";
|
||||
import DMRoomMap from "../../../utils/DMRoomMap";
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import AccessibleButton, { type ButtonEvent } from "../elements/AccessibleButton";
|
||||
import MiniAvatarUploader, { AVATAR_SIZE } from "../elements/MiniAvatarUploader";
|
||||
import RoomAvatar from "../avatars/RoomAvatar";
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import { type Room, ClientEvent } from "matrix-js-sdk/src/matrix";
|
|||
import { logger } from "matrix-js-sdk/src/logger";
|
||||
import { type IWidget } from "matrix-widget-api";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../languageHandler";
|
||||
import { _t, _td } from "../../../languageHandler";
|
||||
import AppTile from "../elements/AppTile";
|
||||
import { MatrixClientPeg } from "../../../MatrixClientPeg";
|
||||
import dis from "../../../dispatcher/dispatcher";
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ import { Icon as UnknownDeviceIcon } from "../../../../../res/img/element-icons/
|
|||
import { Icon as DesktopIcon } from "../../../../../res/img/element-icons/settings/desktop.svg";
|
||||
import { Icon as WebIcon } from "../../../../../res/img/element-icons/settings/web.svg";
|
||||
import { Icon as MobileIcon } from "../../../../../res/img/element-icons/settings/mobile.svg";
|
||||
import { _t, _td, type TranslationKey } from "../../../../languageHandler";
|
||||
import { _t, _td } from "../../../../languageHandler";
|
||||
import { type ExtendedDevice } from "./types";
|
||||
import { DeviceType } from "../../../../utils/device/parseUserAgent";
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import { logger } from "matrix-js-sdk/src/logger";
|
|||
import { throttle, get, set } from "lodash";
|
||||
import { KnownMembership, type RoomPowerLevelsEventContent } from "matrix-js-sdk/src/types";
|
||||
|
||||
import { _t, _td, type TranslationKey } from "../../../../../languageHandler";
|
||||
import { _t, _td } from "../../../../../languageHandler";
|
||||
import AccessibleButton from "../../../elements/AccessibleButton";
|
||||
import Modal from "../../../../../Modal";
|
||||
import ErrorDialog from "../../../dialogs/ErrorDialog";
|
||||
|
|
|
|||
|
|
@ -7,8 +7,6 @@ SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only OR LicenseRef-Element-Com
|
|||
Please see LICENSE files in the repository root for full details.
|
||||
*/
|
||||
|
||||
import { type TranslationKey } from "../languageHandler";
|
||||
|
||||
export type Effect<TOptions extends { [key: string]: any }> = {
|
||||
/**
|
||||
* one or more emojis that will trigger this effect
|
||||
|
|
|
|||
|
|
@ -103,9 +103,7 @@
|
|||
"ok": "OK",
|
||||
"open": "Otevřít",
|
||||
"open_menu": "Otevřít nabídku",
|
||||
"pause": "Pozastavit",
|
||||
"pin": "Připnout",
|
||||
"play": "Přehrát",
|
||||
"proceed": "Pokračovat",
|
||||
"quote": "Citovat",
|
||||
"react": "Reagovat",
|
||||
|
|
@ -3374,24 +3372,10 @@
|
|||
"no_rooms_with_unread_threads": "Zatím nemáte místnosti s nepřečtenými vlákny."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "před jedním dnem",
|
||||
"about_hour_ago": "asi před hodinou",
|
||||
"about_minute_ago": "před minutou",
|
||||
"date_at_time": "%(date)s v %(time)s",
|
||||
"few_seconds_ago": "před pár vteřinami",
|
||||
"hours_minutes_seconds_left": "zbývá %(hours)sh %(minutes)sm %(seconds)ss",
|
||||
"in_about_day": "asi za den",
|
||||
"in_about_hour": "asi za hodinu",
|
||||
"in_about_minute": "asi za minutu",
|
||||
"in_few_seconds": "za pár vteřin",
|
||||
"in_n_days": "za %(num)s dní",
|
||||
"in_n_hours": "za %(num)s hodin",
|
||||
"in_n_minutes": "za %(num)s minut",
|
||||
"left": "%(timeRemaining)s zbývá",
|
||||
"minutes_seconds_left": "zbývá %(minutes)sm %(seconds)ss",
|
||||
"n_days_ago": "před %(num)s dny",
|
||||
"n_hours_ago": "před %(num)s hodinami",
|
||||
"n_minutes_ago": "před %(num)s minutami",
|
||||
"seconds_left": "Zbývá %(seconds)ss",
|
||||
"short_days": "%(value)sd",
|
||||
"short_days_hours_minutes_seconds": "%(days)sd %(hours)sh %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -3446,11 +3430,9 @@
|
|||
"unable_to_find": "Pokusili jste se načíst bod na časové ose místnosti, ale nepodařilo se ho najít."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Audio přehrávač",
|
||||
"error_downloading_audio": "Chyba při stahování audia",
|
||||
"error_processing_audio": "Došlo k chybě při zpracovávání hlasové zprávy",
|
||||
"error_processing_voice_message": "Chyba při zpracování hlasové zprávy",
|
||||
"unnamed_audio": "Nepojmenovaný audio soubor"
|
||||
"error_processing_voice_message": "Chyba při zpracování hlasové zprávy"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Zobrazit polohu živě"
|
||||
|
|
|
|||
|
|
@ -3,29 +3,9 @@
|
|||
"emoji_picker": "Dewisydd Emoji",
|
||||
"jump_first_invite": "Symud i'r gwahoddiad cyntaf.",
|
||||
"message_composer": "Neges cyfansoddwr",
|
||||
"n_unread_messages": {
|
||||
"%(count)s neges heb eu darllen": "other",
|
||||
"1 neges heb ei darllen": "one"
|
||||
},
|
||||
"n_unread_messages_mentions": {
|
||||
"%(count)s crybwylliadau heb eu darllen": "zero",
|
||||
"1 crybwylliad heb ei ddarllen": "one",
|
||||
"%(count)s grybwylliad heb eu darllen": "two",
|
||||
"%(count)s crybwylliad heb eu darllen": "other"
|
||||
},
|
||||
"recent_rooms": "Ystafelloedd diweddar",
|
||||
"room_messsage_not_sent": "Agor ystafell %(roomName)s gyda neges heb ei gosod.",
|
||||
"room_n_unread_invite": "Agor gwahoddiad i ystafell %(roomName)s.",
|
||||
"room_n_unread_messages": {
|
||||
"Ystafell agored%(roomName)s gyda %(count)s negeseuon heb eu darllen.": "zero",
|
||||
"Ystafell agored %(roomName)s gydag 1 neges heb ei darllen.": "one",
|
||||
"Ystafell agored%(roomName)s gyda %(count)s neges heb eu darllen.": "other"
|
||||
},
|
||||
"room_n_unread_messages_mentions": {
|
||||
"Ystafell agored %(roomName)s gyda %(count)s negeseuon heb eu darllen gan gynnwys crybwylliadau.": "zero",
|
||||
"Ystafell agored %(roomName)s gydag 1 crybwylliad heb ei ddarllen.": "one",
|
||||
"Ystafell agored %(roomName)s gyda %(count)s neges heb eu darllen gan gynnwys crybwylliadau.": "other"
|
||||
},
|
||||
"room_name": "Ystafell %(matere)s",
|
||||
"room_status_bar": "Bar statws ystafell",
|
||||
"seek_bar_label": "Bar chwilio sain",
|
||||
|
|
@ -104,9 +84,7 @@
|
|||
"ok": "Iawn",
|
||||
"open": "Agor",
|
||||
"open_menu": "Agor dewislen",
|
||||
"pause": "Oedi",
|
||||
"pin": "Pinio",
|
||||
"play": "Chwarae",
|
||||
"proceed": "Parhau",
|
||||
"quote": "Dyfyniad",
|
||||
"react": "Ymateb",
|
||||
|
|
@ -474,11 +452,6 @@
|
|||
"advanced": "Uwch",
|
||||
"all_chats": "Pob Sgwrs",
|
||||
"analytics": "Dadansoddi Gwe",
|
||||
"and_n_others": {
|
||||
"a dim arall...": "zero",
|
||||
"ac un arall...": "one",
|
||||
"a %(count)s arall...": "other"
|
||||
},
|
||||
"appearance": "Gwedd",
|
||||
"application": "Rhaglen",
|
||||
"are_you_sure": "Ydych chi'n siŵr?",
|
||||
|
|
@ -533,14 +506,6 @@
|
|||
"moderation_and_safety": "Cymedroli a diogelwch",
|
||||
"modern": "Modern",
|
||||
"mute": "Tewi",
|
||||
"n_members": {
|
||||
"%(count)s aelodau": "zero",
|
||||
"%(count)s aelod": "other"
|
||||
},
|
||||
"n_rooms": {
|
||||
"%(count)s ystafelloedd": "zero",
|
||||
"%(count)s ystafell": "other"
|
||||
},
|
||||
"name": "Enw",
|
||||
"no_results": "Dim canlyniadau",
|
||||
"no_results_found": "Heb ganfod canlyniad",
|
||||
|
|
@ -851,10 +816,6 @@
|
|||
"room_notifications_total": "Cyfanswm: ",
|
||||
"room_notifications_type": "Math: ",
|
||||
"room_status": "Statws ystafell",
|
||||
"room_unread_status_count": {
|
||||
"Statws heb eu darllen yn yr ystafell:<strong>%(status)s</strong> , cyfrif:<strong>%(count)s</strong>": "other",
|
||||
"Statws heb ei ddarllen yn yr ystafell:<strong>%(status)s</strong> , cyfrif:<strong>%(count)s</strong>": "one"
|
||||
},
|
||||
"save_setting_values": "Cadw gwerthoedd gosod",
|
||||
"see_history": "Gweld hanes",
|
||||
"send_custom_account_data_event": "Anfon digwyddiad data cyfrif personol",
|
||||
|
|
@ -874,12 +835,6 @@
|
|||
"settings_explorer": "Archwiliwr gosodiadau",
|
||||
"show_empty_content_events": "Dangos digwyddiadau gyda chynnwys gwag",
|
||||
"show_hidden_events": "Dangos digwyddiadau cudd yn y llinell amser",
|
||||
"spaces": {
|
||||
"<%(count) s gofodau>": "zero",
|
||||
"<space>": "one",
|
||||
"<%(count) s ofod>": "two",
|
||||
"<%(count) s gofod>": "other"
|
||||
},
|
||||
"state_key": "Allwedd Cyflwr",
|
||||
"thread_root_id": "ID Gwraidd Edefyn: %(threadRootId)s",
|
||||
"threads_timeline": "Llinell amser edafedd",
|
||||
|
|
@ -1187,28 +1142,7 @@
|
|||
"error_fetching_file": "Gwall wrth nôl ffeil",
|
||||
"export_info": "Dyma ddechrau allforio o<roomName/>. Wedi'i allforio gan<exporterDetails/> yn %(exportDate)s.",
|
||||
"export_successful": "Allforio yn llwyddiannus!",
|
||||
"exported_n_events_in_time": {
|
||||
"Wedi nôl %(count)s digwyddiadau o fewn %(seconds)s e": "zero",
|
||||
"Wedi allforio %(count)s digwyddiad o fewn %(seconds)s e": "one",
|
||||
"Wedi nôl %(count)s ddigwyddiad o fewn %(seconds)s e": "two",
|
||||
"Wedi nôl %(count)s digwyddiad o fewn %(seconds)s e": "other"
|
||||
},
|
||||
"exporting_your_data": "Allforio eich data",
|
||||
"fetched_n_events": {
|
||||
"Wedi nôl %(count)s digwyddiadau hyd yn hyn": "zero",
|
||||
"Wedi nôl %(count)s digwyddiad hyd yn hyn": "other",
|
||||
"Wedi nôl %(count)s ddigwyddiad hyd yn hyn": "two"
|
||||
},
|
||||
"fetched_n_events_in_time": {
|
||||
"Wedi nôl %(count)s digwyddiadau o fewn %(seconds)s e": "zero",
|
||||
"Wedi nôl %(count)s digwyddiad o fewn %(seconds)s e": "other",
|
||||
"Wedi nôl %(count)s ddigwyddiad o fewn %(seconds)s e": "two"
|
||||
},
|
||||
"fetched_n_events_with_total": {
|
||||
"Wedi nôl %(count)s digwyddiadau allan o %(total)s": "zero",
|
||||
"Wedi nôl %(count)s digwyddiad allan o %(total)s": "other",
|
||||
"Wedi nôl %(count)s ddigwyddiad allan o %(total)s": "two"
|
||||
},
|
||||
"fetching_events": "Wrthi'n nôl digwyddiadau…",
|
||||
"file_attached": "Ffeil wedi'i Atodi",
|
||||
"format": "Fformat",
|
||||
|
|
@ -1297,11 +1231,6 @@
|
|||
},
|
||||
"in_space": "Yn %(spaceName)s.",
|
||||
"in_space1_and_space2": "Mewn gofodau %(space1Name)s a %(space2Name)s.",
|
||||
"in_space_and_n_other_spaces": {
|
||||
"Yn %(spaceName)s a %(count)s gofodau eraill.": "zero",
|
||||
"Yn %(spaceName)s ac un gofod arall": "one",
|
||||
"Yn %(spaceName)s a %(count)s gofod arall.": "other"
|
||||
},
|
||||
"incompatible_browser": {
|
||||
"continue": "Parhau beth bynnag",
|
||||
"description": "Mae %(brand)s yn defnyddio rhai nodweddion porwr nad ydyn nhw ar gael yn eich porwr presennol. %(detail)s",
|
||||
|
|
@ -1395,15 +1324,6 @@
|
|||
"unban_first_title": "Nid oes modd gwahodd defnyddiwr nes ei fod heb ei ddad-wahardd"
|
||||
},
|
||||
"inviting_user1_and_user2": "Yn gwahodd %(user1)s a %(user2)s",
|
||||
"inviting_user_and_n_others": {
|
||||
"Yn gwahodd %(user)s ac un arall": "one",
|
||||
"Yn gwahodd %(user)s a %(count)s arall": "other"
|
||||
},
|
||||
"items_and_n_others": {
|
||||
"<Items/> a dim arall": "zero",
|
||||
"<Items/> ac un arall": "one",
|
||||
"<Items/> a %(count)s arall": "other"
|
||||
},
|
||||
"keyboard": {
|
||||
"activate_button": "Agor y botwm hwn",
|
||||
"alt": "Alt",
|
||||
|
|
@ -1659,10 +1579,6 @@
|
|||
"toggle_attribution": "Toglo priodoli"
|
||||
},
|
||||
"member_list": {
|
||||
"count": {
|
||||
"%(count)s Aelodau": "zero",
|
||||
"%(count)s Aelod": "other"
|
||||
},
|
||||
"filter_placeholder": "Hidlo aelodau'r ystafell",
|
||||
"invite_button_no_perms_tooltip": "Nid oes gennych ganiatâd i wahodd defnyddwyr",
|
||||
"invited_label": "Gwahoddwyd",
|
||||
|
|
@ -1753,13 +1669,6 @@
|
|||
"topic_label": "Cwestiwn neu bwnc",
|
||||
"topic_placeholder": "Ysgrifennu rhywbeth…",
|
||||
"total_decryption_errors": "Oherwydd gwallau dadgryptio, efallai na fydd rhai pleidleisiau'n cael eu cyfrif",
|
||||
"total_n_votes": {
|
||||
"%(count)s pleidlais wedi'u bwrw. Pleidleisiwch i weld y canlyniadau.": "other",
|
||||
"%(count)s pleidlais wedi'i bwrw. Pleidleisiwch i weld y canlyniadau.": "one"
|
||||
},
|
||||
"total_n_votes_voted": {
|
||||
"Ar sail %(count)s pleidlais": "other"
|
||||
},
|
||||
"total_no_votes": "Dim pleidleisiau wedi'u bwrw",
|
||||
"total_not_ended": "Bydd y canlyniadau i'w gweld pan ddaw'r bleidlais i ben",
|
||||
"type_closed": "Arolwg wedi'i chau",
|
||||
|
|
@ -1870,13 +1779,6 @@
|
|||
"pinned_messages": {
|
||||
"empty_description": "Dewiswch neges a dewiswch “%(pinAction)s” i'w chynnwys yma.",
|
||||
"empty_title": "Pinio negeseuon pwysig fel y mae modd eu darganfod yn hawdd",
|
||||
"header": {
|
||||
"%(count)s Neges wedi'u pinio": "other",
|
||||
"1 Neges wedi'i binio": "one"
|
||||
},
|
||||
"limits": {
|
||||
"Dim ond hyd at %(count)s teclyn y gallwch eu pinio": "other"
|
||||
},
|
||||
"menu": "Agor dewislen",
|
||||
"reply_thread": "Ymateb i a <link>neges edefyn</link>",
|
||||
"unpin_all": {
|
||||
|
|
@ -1891,26 +1793,8 @@
|
|||
"active_heading": "Arolygon gweithredol",
|
||||
"empty_active": "Nid oes unrhyw arolygon gweithredol yn yr ystafell hon",
|
||||
"empty_active_load_more": "Nid oes unrhyw arolygon gweithredol. Llwythwch fwy o arolygon barn y misoedd blaenorol",
|
||||
"empty_active_load_more_n_days": {
|
||||
"Does dim polau gweithredol ar gyfer y dyddiau diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "zero",
|
||||
"Does dim polau gweithredol ar gyfer y diwrnod diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "one",
|
||||
"Does dim polau gweithredol ar gyfer y %(count)s ddiwrnod diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "two",
|
||||
"Does dim polau gweithredol ar gyfer y %(count)s diwrnod diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "other"
|
||||
},
|
||||
"empty_past": "Nid oes arolygon o'r gorffennol yn yr ystafell hon",
|
||||
"empty_past_load_more": "Nid oes unrhyw arolygon o'r gorffennol. Llwythwch fwy o arolygon barn ar gyfer y misoedd blaenorol",
|
||||
"empty_past_load_more_n_days": {
|
||||
"Does dim polau'r gorffennol ar gyfer y dyddiau diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "zero",
|
||||
"Does dim polau'r gorffennol ar gyfer y diwrnod diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "one",
|
||||
"Does dim polau'r gorffennol ar gyfer y %(count)s ddiwrnod diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "two",
|
||||
"Does dim polau'r gorffennol ar gyfer y %(count)s diwrnod diwethaf. Llwythwch ragor o bolau i weld polau'r misoedd blaenorol": "other"
|
||||
},
|
||||
"final_result": {
|
||||
"Canlyniadau terfynol yn seiliedig ar %(count)s pleidleisiau": "zero",
|
||||
"Canlyniadau terfynol yn seiliedig ar %(count)s pleidlais": "other",
|
||||
"Canlyniadau terfynol yn seiliedig ar %(count)s bleidlais": "two",
|
||||
"Canlyniadau terfynol yn seiliedig ar %(count)s phleidlais": "many"
|
||||
},
|
||||
"load_more": "Llwytho mwy o arolygon barn",
|
||||
"loading": "Wrthi'n llwytho arolygon",
|
||||
"past_heading": "Arolygon y gorffennol",
|
||||
|
|
@ -1975,15 +1859,6 @@
|
|||
"error_jump_to_date_not_found": "Nid oeddem yn gallu dod o hyd i ddigwyddiad yn edrych ymlaen o %(dateString)s. Ceisiwch ddewis dyddiad cynharach.",
|
||||
"error_jump_to_date_send_logs_prompt": "Cyflwynwch <debugLogsLink>logiau dadfygio</debugLogsLink> i'n helpu i ddod o hyd i'r broblem.",
|
||||
"error_jump_to_date_title": "Methu dod o hyd i ddigwyddiad ar y dyddiad hwnnw",
|
||||
"face_pile_summary": {
|
||||
"Y %(count)s personau rydych chi'n ei adnabod sydd eisoes wedi ymuno": "zero",
|
||||
"Yr %(count)s person rydych chi'n ei adnabod sydd eisoes wedi ymuno": "one",
|
||||
"Y %(count)s person rydych chi'n ei adnabod sydd eisoes wedi ymuno": "other"
|
||||
},
|
||||
"face_pile_tooltip_label": {
|
||||
"Gweld y cyfan o'r %(count)s aelod": "other",
|
||||
"Gweld 1 aelod": "one"
|
||||
},
|
||||
"face_pile_tooltip_shortcut": "Gan gynnwys %(commaSeparatedMembers)s",
|
||||
"face_pile_tooltip_shortcut_joined": "Gan eich cynnwys chi, %(commaSeparatedMembers)s",
|
||||
"failed_determine_user": "Nid oes modd pennu pa ddefnyddiwr i'w anwybyddu gan fod y digwyddiad aelod wedi newid.",
|
||||
|
|
@ -1991,11 +1866,6 @@
|
|||
"forget_room": "Anghofiwch yr ystafell hon",
|
||||
"forget_space": "Anghofiwch y gofod hwn",
|
||||
"header": {
|
||||
"n_people_asking_to_join": {
|
||||
"%(count)s personau'n gofyn i ymuno": "zero",
|
||||
"Yn gofyn i ymuno": "one",
|
||||
"%(count)s person yn gofyn i ymuno": "other"
|
||||
},
|
||||
"room_is_public": "Mae'r ystafell hon yn gyhoeddus"
|
||||
},
|
||||
"header_avatar_open_settings_label": "Agor gosodiadau ystafell",
|
||||
|
|
@ -2085,10 +1955,6 @@
|
|||
"search": {
|
||||
"all_rooms_button": "Chwiliwch bob ystafell",
|
||||
"placeholder": "Chwilio negeseuon…",
|
||||
"summary": {
|
||||
"%(count)s canlyniad wedi'u canfod ar gyfer “<query/>\"": "other",
|
||||
"1 canlyniad wedi'i ganfod ar gyfer “<query/>\"": "one"
|
||||
},
|
||||
"this_room_button": "Chwiliwch yr ystafell hon"
|
||||
},
|
||||
"status_bar": {
|
||||
|
|
@ -2104,11 +1970,6 @@
|
|||
"some_messages_not_sent": "Nid yw rhai o'ch negeseuon wedi'u hanfon"
|
||||
},
|
||||
"unknown_status_code_for_timeline_jump": "cod statws anhysbys",
|
||||
"unread_notifications_predecessor": {
|
||||
"Does gennych %(count)s hysbysiad heb eu darllen mewn fersiwn flaenorol o'r ystafell hon": "zero",
|
||||
"Mae gennych %(count)s hysbysiad heb ei ddarllen mewn fersiwn flaenorol o'r ystafell hon.": "one",
|
||||
"Mae gennych %(count)s hysbysiad heb eu darllen mewn fersiwn flaenorol o'r ystafell hon": "other"
|
||||
},
|
||||
"upgrade_error_description": "Gwiriwch ddwywaith bod eich gweinydd yn cefnogi'r fersiwn ystafell a ddewiswyd a rhowch gynnig arall arni.",
|
||||
"upgrade_error_title": "Gwall wrth uwchraddio'r ystafell",
|
||||
"upgrade_warning_bar": "Bydd uwchraddio'r ystafell hon yn cau enghraifft bresennol yr ystafell ac yn creu ystafell wedi'i huwchraddio gyda'r un enw.",
|
||||
|
|
@ -2116,9 +1977,6 @@
|
|||
"upgrade_warning_bar_unstable": "Mae'r ystafell hon yn fersiwn ystafell redeg<roomVersion /> , y mae'r gweinydd cartref hwn wedi'i nodi'n <i>ansefydlog</i>.",
|
||||
"upgrade_warning_bar_upgraded": "Mae'r ystafell hon eisoes wedi'i huwchraddio.",
|
||||
"upload": {
|
||||
"uploading_multiple_file": {
|
||||
"Wrthi'n llwytho i fyny %(filename)s a %(count)s arall": "other"
|
||||
},
|
||||
"uploading_single_file": "Wrthi'n llwytho %(filematere)s"
|
||||
},
|
||||
"video_room": "Mae'r ystafell hon yn ystafell fideo",
|
||||
|
|
@ -2163,9 +2021,6 @@
|
|||
},
|
||||
"home_menu_label": "Dewisiadau cartref",
|
||||
"join_public_room_label": "Ymuno â'r ystafell gyhoeddus",
|
||||
"joining_rooms_status": {
|
||||
"Yn ymuno â %(count)s ystafell ar hyn o bryd": "other"
|
||||
},
|
||||
"list_title": "Rhestr ystafelloedd",
|
||||
"more_options": {
|
||||
"copy_link": "Copïo dolen ystafell",
|
||||
|
|
@ -2187,9 +2042,6 @@
|
|||
},
|
||||
"room_options": "Dewisiadau Ystafelloedd",
|
||||
"show_less": "Dangos llai",
|
||||
"show_n_more": {
|
||||
"Dangos %(count)s yn rhagor": "other"
|
||||
},
|
||||
"show_previews": "Dangos rhagolwg o negeseuon",
|
||||
"sort": "Trefnu",
|
||||
"sort_by": "Trefnu yn ôl",
|
||||
|
|
@ -2412,25 +2264,10 @@
|
|||
"join_rule_restricted_dialog_heading_space": "Gofodau rydych yn eu hadnabod sy'n cynnwys y gofod hwn",
|
||||
"join_rule_restricted_dialog_heading_unknown": "Mae'r rhain yn debygol o fod yn rhai y mae gweinyddwyr ystafell eraill yn rhan ohonyn nhw.",
|
||||
"join_rule_restricted_dialog_title": "Dewiswch ofodau",
|
||||
"join_rule_restricted_n_more": {
|
||||
"a %(count)s yn rhagor": "other"
|
||||
},
|
||||
"join_rule_restricted_summary": {
|
||||
"Ar hyn o bryd, mae gan %(count)s gofod fynediad": "other",
|
||||
"Ar hyn o bryd, mae gan ofod fynediad": "one"
|
||||
},
|
||||
"join_rule_restricted_upgrade_description": "Bydd yr uwchraddiad hwn yn caniatáu i aelodau o ofodau penodol gael mynediad i'r ystafell hon heb wahoddiad.",
|
||||
"join_rule_restricted_upgrade_warning": "Mae'r ystafell hon mewn rhai gofodau nad ydych chi'n weinyddwr iddynt. Yn y gofodau hynny, bydd yr hen ystafell yn dal i gael ei dangos, ond bydd pobl yn cael eu hannog i ymuno â'r un newydd.",
|
||||
"join_rule_upgrade_awaiting_room": "Wrthi'n llwytho ystafell newydd",
|
||||
"join_rule_upgrade_required": "Angen uwchraddio",
|
||||
"join_rule_upgrade_sending_invites": {
|
||||
"Yn anfon gwahoddiad... (%(progress)s o %(count)s)": "other",
|
||||
"Yn anfon gwahoddiad...": "one"
|
||||
},
|
||||
"join_rule_upgrade_updating_spaces": {
|
||||
"Yn diweddaru gofod... (%(progress)s o %(count)s)": "other",
|
||||
"Yn diweddaru gofod...": "one"
|
||||
},
|
||||
"join_rule_upgrade_upgrading_room": "Ystafell uwchraddio",
|
||||
"join_rule_world_readable_description": "Bydd newid pwy all ymuno â'r ystafell yn newid gwelededd negeseuon yn y dyfodol hefyd.",
|
||||
"public_without_alias_warning": "I gysylltu â'r ystafell hon, ychwanegwch gyfeiriad.",
|
||||
|
|
@ -2891,9 +2728,6 @@
|
|||
"key_backup_algorithm": "Algorithm:",
|
||||
"message_search_disable_warning": "Os yw wedi'i analluogi, ni fydd negeseuon o ystafelloedd wedi'u hamgryptio yn ymddangos yn y canlyniadau chwilio.",
|
||||
"message_search_disabled": "Cadwch negeseuon wedi'u hamgryptio'n ddiogel yn lleol er mwyn iddyn nhw ymddangos yn y canlyniadau chwilio.",
|
||||
"message_search_enabled": {
|
||||
"Cadw negeseuon wedi'u hamgryptio yn ddiogel yn y storfa leol er mwyn iddyn nhw ymddangos mewn canlyniadau chwilio, gan ddefnyddio %(size)s i storio negeseuon o %(rooms)s ystafell.": "other"
|
||||
},
|
||||
"message_search_failed": "Methwyd cychwyn chwiliad neges",
|
||||
"message_search_indexed_messages": "Negeseuon wedi'u mynegeio:",
|
||||
"message_search_indexed_rooms": "Ystafelloedd wedi'u mynegeio:",
|
||||
|
|
@ -2916,22 +2750,6 @@
|
|||
"sessions": {
|
||||
"best_security_note": "Er mwyn sicrhau'r diogelwch gorau, gwiriwch eich sesiynau ac allgofnodwch o unrhyw sesiwn nad ydych yn ei hadnabod nac yn ei defnyddio mwyach.",
|
||||
"browser": "Porwr",
|
||||
"confirm_sign_out": {
|
||||
"Cadarnhau allgofnodi o'r ddyfeisiau hyn": "other",
|
||||
"Cadarnhau allgofnodi o'r ddyfais hon": "one"
|
||||
},
|
||||
"confirm_sign_out_body": {
|
||||
"Cliciwch y botwm isod i gadarnhau allgofnodi o'r dyfeisiau hyn.": "other",
|
||||
"Cliciwch y botwm isod i gadarnhau allgofnodi o'r ddyfais hon.": "one"
|
||||
},
|
||||
"confirm_sign_out_continue": {
|
||||
"Allgofnodi o ddyfeisiau": "other",
|
||||
"Allgofnodi o ddyfais": "one"
|
||||
},
|
||||
"confirm_sign_out_sso": {
|
||||
"Cadarnhau allgofnodi o'r ddyfeisiau hyn trwy ddefnyddio Mewngofnodi Sengl i brofi pwy ydych chi.": "other",
|
||||
"Cadarnhau allgofnodi o'r ddyfais hon trwy ddefnyddio Mewngofnodi Sengl i brofi pwy ydych chi.": "one"
|
||||
},
|
||||
"current_session": "Y sesiwn gyfredol",
|
||||
"desktop_session": "Sesiwn bwrdd gwaith",
|
||||
"details_heading": "Manylion y sesiwn",
|
||||
|
|
@ -2958,10 +2776,6 @@
|
|||
"last_activity": "Gweithgaredd ddiwethaf",
|
||||
"manage": "Rheoli'r sesiwn hon",
|
||||
"mobile_session": "Sesiwn symudol",
|
||||
"n_sessions_selected": {
|
||||
"%(count)s sesiwn wedi'u dewis": "other",
|
||||
"%(count)s sesiwn wedi'i ddewis": "one"
|
||||
},
|
||||
"no_inactive_sessions": "Heb ganfod unrhyw sesiynau anweithredol.",
|
||||
"no_sessions": "Heb ganfod sesiynau.",
|
||||
"no_unverified_sessions": "Heb ganfod unrhyw sesiynau heb eu gwirio.",
|
||||
|
|
@ -2986,12 +2800,6 @@
|
|||
"sign_in_with_qr_unsupported": "Nid yw'n cael ei gefnogi gan ddarparwr eich cyfrif",
|
||||
"sign_out": "Allgofnodwch o'r sesiwn hon",
|
||||
"sign_out_all_other_sessions": "Allgofnodi o bob sesiwn arall (%(otherSessionsCount)s)",
|
||||
"sign_out_confirm_description": {
|
||||
"Ydych chi'n siŵr eich bod chi eisiau allgofnodi o %(count)s sesiwn?": "other"
|
||||
},
|
||||
"sign_out_n_sessions": {
|
||||
"Allgofnodi o %(count)s sesiwn": "other"
|
||||
},
|
||||
"title": "Sesiynau",
|
||||
"unknown_session": "Math o sesiwn anhysbys",
|
||||
"unverified_session": "Sesiwn heb ei wirio",
|
||||
|
|
@ -3175,10 +2983,6 @@
|
|||
"create_prompt": "Creu ystafell newydd",
|
||||
"dm_heading": "Negeseuon Uniongyrchol",
|
||||
"error_heading": "Ni ychwanegwyd pob un a ddewiswyd",
|
||||
"progress_text": {
|
||||
"Yn ychwanegu ystafell...(%(progress)s o %(count)s)": "other",
|
||||
"Yn ychwanegu ystafell...": "one"
|
||||
},
|
||||
"space_dropdown_label": "Dewis gofod",
|
||||
"space_dropdown_title": "Ychwanegu ystafelloedd presennol",
|
||||
"subspace_moved_note": "Mae ychwanegu gofodau wedi symud."
|
||||
|
|
@ -3261,9 +3065,6 @@
|
|||
"cant_find_person_helpful_hint": "Os na allwch weld pwy rydych yn chwilio amdano, anfonwch eich dolen wahoddiad atynt.",
|
||||
"cant_find_room_helpful_hint": "Os na allwch ddod o hyd i'r ystafell yr ydych yn chwilio amdani, gofynnwch am wahoddiad neu crëwch ystafell newydd.",
|
||||
"copy_link_text": "Copïo dolen y gwahoddiad",
|
||||
"count_of_members": {
|
||||
"%(count)s Aelod": "other"
|
||||
},
|
||||
"create_new_room_button": "Creu ystafell newydd",
|
||||
"failed_querying_public_rooms": "Wedi methu â holi ystafelloedd cyhoeddus",
|
||||
"failed_querying_public_spaces": "Wedi methu cwestiynu gofodau cyhoeddus",
|
||||
|
|
@ -3314,9 +3115,6 @@
|
|||
"threads": {
|
||||
"all_threads": "Pob edefyn",
|
||||
"all_threads_description": "Yn dangos pob edefyn o'r ystafell gyfredol",
|
||||
"count_of_reply": {
|
||||
"%(count)s ateb": "other"
|
||||
},
|
||||
"empty_description": "Defnyddio “%(replyInThread)s” wrth hofran dros neges.",
|
||||
"empty_title": "Mae edafedd yn helpu i gadw'ch sgyrsiau ar y pwnc ac yn hawdd eu holrhain.",
|
||||
"error_start_thread_existing_relation": "Methu â chreu edefyn o ddigwyddiad gyda pherthynas sy'n bodoli eisoes",
|
||||
|
|
@ -3332,24 +3130,10 @@
|
|||
"no_rooms_with_unread_threads": "Nid oes gennych chi ystafelloedd ag edafedd heb eu darllen eto."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "tua diwrnod yn ôl",
|
||||
"about_hour_ago": "tua awr yn ol",
|
||||
"about_minute_ago": "tua munud yn ôl",
|
||||
"date_at_time": "%(date)s am %(time)s",
|
||||
"few_seconds_ago": "ychydig eiliadau yn ôl",
|
||||
"hours_minutes_seconds_left": "%(hours)sa %(minutes)sm %(seconds)s ar ôl",
|
||||
"in_about_day": "tua diwrnod o nawr",
|
||||
"in_about_hour": "tuag awr o hyn",
|
||||
"in_about_minute": "tua munud o nawr",
|
||||
"in_few_seconds": "ychydig eiliadau o nawr",
|
||||
"in_n_days": "%(num)s diwrnod o nawr",
|
||||
"in_n_hours": "%(num)s awr o nawr",
|
||||
"in_n_minutes": "%(num)s munud o nawr",
|
||||
"left": "%(timeRemaining)s ar ôl",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss ar ôl",
|
||||
"n_days_ago": "%(num)s diwrnod yn ôl",
|
||||
"n_hours_ago": "%(num)s awr yn ôl",
|
||||
"n_minutes_ago": "%(num)s munud yn ôl",
|
||||
"seconds_left": "Mae %(seconds)s ar ôl",
|
||||
"short_days": "%(value)sch",
|
||||
"short_days_hours_minutes_seconds": "%(days)sd %(hours)sa %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -3404,11 +3188,9 @@
|
|||
"unable_to_find": "Wedi ceisio llwytho pwynt penodol yn llinell amser yr ystafell hon, ond ni lwyddodd i ddod o hyd iddo."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Chwaraewr sain",
|
||||
"error_downloading_audio": "Gwall wrth llwytho i lawrsain",
|
||||
"error_processing_audio": "Gwall wrth brosesu neges sain",
|
||||
"error_processing_voice_message": "Gwall wrth brosesu neges llais",
|
||||
"unnamed_audio": "Sain dienw"
|
||||
"error_processing_voice_message": "Gwall wrth brosesu neges llais"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Gweld lleoliad byw"
|
||||
|
|
@ -3459,11 +3241,6 @@
|
|||
"location": "Wedi rhannu lleoliad: ",
|
||||
"self_location": "Wedi rhannu eu lleoliad: "
|
||||
},
|
||||
"m.poll": {
|
||||
"count_of_votes": {
|
||||
"%(count)s pleidlais": "other"
|
||||
}
|
||||
},
|
||||
"m.poll.end": {
|
||||
"sender_ended": "Mae %(senderName)s wedi dod ag arolwg i ben"
|
||||
},
|
||||
|
|
@ -3475,14 +3252,6 @@
|
|||
"removed": "Mae %(senderDisplayName)s wedi tynnu afatar yr ystafell."
|
||||
},
|
||||
"m.room.canonical_alias": {
|
||||
"alt_added": {
|
||||
"Mae %(senderName)s wedi ychwanegu cyfeiriadau eraill %(addresses)s ar gyfer yr ystafell hon.": "other",
|
||||
"Mae %(senderName)s wedi ychwanegu cyfeiriad arall %(addresses)s ar gyfer yr ystafell hon.": "one"
|
||||
},
|
||||
"alt_removed": {
|
||||
"Mae %(senderName)s wedi tynnu cyfeiriadau eraill %(addresses)s ar gyfer yr ystafell hon.": "other",
|
||||
"Mae %(senderName)s wedi tynnu cyfeiriad arall %(addresses)s ar gyfer yr ystafell hon.": "one"
|
||||
},
|
||||
"changed": "Newidiodd %(senderName)s y cyfeiriadau ar gyfer yr ystafell hon.",
|
||||
"changed_alternative": "Mae %(senderName)s wedi newid y cyfeiriadau amgen ar gyfer yr ystafell hon.",
|
||||
"changed_main_and_alternative": "Newidiodd %(senderName)s y prif gyfeiriadau a chyfeiriadau amgen ar gyfer yr ystafell hon.",
|
||||
|
|
@ -3634,9 +3403,6 @@
|
|||
"label": "Ymatebodd %(reactors)s gyda %(content)s",
|
||||
"tooltip_caption": "wedi ymateb gyda %(shortName)s"
|
||||
},
|
||||
"read_receipt_title": {
|
||||
"Wedi'i weld gan %(count)s person": "other"
|
||||
},
|
||||
"read_receipts_label": "Derbynebau darllen",
|
||||
"redacted": {
|
||||
"tooltip": "Neges wedi'i dileu ar %(date)s"
|
||||
|
|
@ -3657,173 +3423,18 @@
|
|||
"send_state_sending": "Wrthi'n anfon eich neges…",
|
||||
"send_state_sent": "Anfonwyd eich neges",
|
||||
"summary": {
|
||||
"banned": {
|
||||
"wedi'u gwahardd": "zero",
|
||||
"wedi'i wahardd": "one",
|
||||
"wedi'u gwahardd %(count)s gwaith": "other"
|
||||
},
|
||||
"banned_multiple": {
|
||||
"wedi'u gwahardd": "zero",
|
||||
"wedi'i wahardd": "one",
|
||||
"wedi'u gwahardd %(count)s gwaith": "other"
|
||||
},
|
||||
"changed_avatar": {
|
||||
"Does %(count)s %(oneUser)s wedi newid eu llun proffil": "zero",
|
||||
"Mae %(oneUser)s wedi newid eu llun proffil %(count)s gwaith": "other"
|
||||
},
|
||||
"changed_avatar_multiple": {
|
||||
"Does %(count)s o %(severalUsers)s wedi newid eu llun proffil": "zero",
|
||||
"Mae %(severalUsers)s wedi newid ei lun proffil": "one",
|
||||
"Mae %(severalUsers)s wedi newid eu llun proffil %(count)s gwaith": "other"
|
||||
},
|
||||
"changed_name": {
|
||||
"Mae %(oneUser)s wedi newid ei enw %(count)s gwaith": "other",
|
||||
"Mae %(oneUser)s wedi newid ei enw": "one"
|
||||
},
|
||||
"changed_name_multiple": {
|
||||
"Mae %(severalUsers)s wedi newid eu henwau %(count)s gwaith": "other",
|
||||
"Mae %(severalUsers)s wedi newid ei enw": "one"
|
||||
},
|
||||
"format": "%(matereList)s %(transitionList)s",
|
||||
"hidden_event": {
|
||||
"Anfonodd %(oneUser)s %(count)s negeseuon cudd": "zero",
|
||||
"Anfonodd %(oneUser)s neges gudd": "one",
|
||||
"Anfonodd %(oneUser)s %(count)s neges gudd": "other"
|
||||
},
|
||||
"hidden_event_multiple": {
|
||||
"Anfonodd %(severalUsers)s %(count)s negeseuon cudd ": "zero",
|
||||
"Anfonodd %(severalUsers)s neges gudd": "one",
|
||||
"Anfonodd %(severalUsers)s %(count)s neges gudd": "other"
|
||||
},
|
||||
"invite_withdrawn": {
|
||||
"Mae %(oneUser)swedi cael eu gwahoddiadau wedi'i dynnu'n ôl": "zero",
|
||||
"Mae %(oneUser)swedi cael ei gwahoddiad wedi'i dynnu'n ôl": "one",
|
||||
"Mae %(oneUser)swedi cael eu gwahoddiad wedi'i dynnu'n ôl %(count)s gwaith": "other"
|
||||
},
|
||||
"invite_withdrawn_multiple": {
|
||||
"Cafodd %(severalUsers)s eu gwahoddiadau eu dileu": "one",
|
||||
"Cafodd %(severalUsers)s eu gwahoddiadau eu dileu %(count)s gwaith": "other"
|
||||
},
|
||||
"invited": {
|
||||
"wedi'u gwahodd": "zero",
|
||||
"wedi'i wahodd": "one",
|
||||
"wedi'u gwahodd %(count)s gwaith": "other"
|
||||
},
|
||||
"invited_multiple": {
|
||||
"wedi'u gwahodd": "zero",
|
||||
"wedi'i wahodd": "one",
|
||||
"wedi'u gwahodd %(count)s gwaith": "other"
|
||||
},
|
||||
"joined": {
|
||||
"Ymunodd %(oneUser)s %(count)s gwaith": "other",
|
||||
"Ymunodd %(oneUser)s": "one"
|
||||
},
|
||||
"joined_and_left": {
|
||||
"Ymunodd a gadawodd %(oneUser)s %(count)s gwaith": "other"
|
||||
},
|
||||
"joined_and_left_multiple": {
|
||||
"Ymunodd a gadawodd %(severalUsers)s": "one",
|
||||
"Ymunodd a gadawodd %(severalUsers)s %(count)s gwaith": "other"
|
||||
},
|
||||
"joined_multiple": {
|
||||
"Ymunodd %(severalUsers)s": "zero",
|
||||
"Ymunodd %(severalUsers)s %(count)s gwaith": "other"
|
||||
},
|
||||
"kicked": {
|
||||
"wedi'u tynnu %(count)s gwaith": "other",
|
||||
"wedi'u tynnu": "one"
|
||||
},
|
||||
"kicked_multiple": {
|
||||
"wedi'u tynnu %(count)s gwaith": "other",
|
||||
"wedi'u tynnu": "one"
|
||||
},
|
||||
"left": {
|
||||
"Gadawodd %(oneUser)s": "one",
|
||||
"Gadawodd %(oneUser)s %(count)s gwaith": "other"
|
||||
},
|
||||
"left_multiple": {
|
||||
"Gadawodd %(severalUsers)s": "one",
|
||||
"Gadawodd %(severalUsers)s %(count)s gwaith": "other"
|
||||
},
|
||||
"no_change": {
|
||||
"Dyw %(oneUser)s heb wneud unrhyw newidiadau %(count)s gwaith": "other",
|
||||
"Dyw %(oneUser)s heb wneud unrhyw newidiadau": "one"
|
||||
},
|
||||
"no_change_multiple": {
|
||||
"Dyw %(severalUsers)s heb wneud unrhyw newidiadau %(count)s gwaith": "other",
|
||||
"Dyw %(severalUsers)s heb wneud unrhyw newidiadau": "one"
|
||||
},
|
||||
"pinned_events": {
|
||||
"Newidiodd %(oneUser)s y <a>negeseuon wedi'u pinio</a> yr ystafell %(count)s gwaith": "other",
|
||||
"Newidiodd %(oneUser)s y <a>negeseuon wedi'u pinio</a> yr ystafell": "one"
|
||||
},
|
||||
"pinned_events_multiple": {
|
||||
"Newidiodd %(severalUsers)s y <a>negeseuon wedi'u pinio</a> yr ystafell %(count)s gwaith": "other",
|
||||
"Newidiodd %(severalUsers)s y <a>negeseuon wedi'u pinio</a> yr ystafell": "one"
|
||||
},
|
||||
"redacted": {
|
||||
"Tynnodd %(oneUser)s %(count)s neges": "other",
|
||||
"Tynnodd %(oneUser)s neges": "one"
|
||||
},
|
||||
"redacted_multiple": {
|
||||
"Tynnodd %(severalUsers)s %(count)s neges": "other",
|
||||
"Tynnodd %(severalUsers)s neges": "one"
|
||||
},
|
||||
"rejected_invite": {
|
||||
"Gwrthododd %(severalUsers)s eu gwahoddiadau": "zero",
|
||||
"Gwrthododd %(oneUser)s ei wahoddiad": "one",
|
||||
"Gwrthododd %(oneUser)s eu gwahoddiadau %(count)s gwaith": "other"
|
||||
},
|
||||
"rejected_invite_multiple": {
|
||||
"Gwrthododd %(severalUsers)s eu gwahoddiadau": "one",
|
||||
"Gwrthododd %(severalUsers)s eu gwahoddiadau %(count)s gwaith": "other"
|
||||
},
|
||||
"rejoined": {
|
||||
"Ymunodd a gadawodd %(oneUser)s": "one",
|
||||
"Ymunodd a gadawodd %(oneUser)s %(count)s gwaith": "other"
|
||||
},
|
||||
"rejoined_multiple": {
|
||||
"Ymunodd a gadawodd %(severalUsers)s": "one",
|
||||
"Ymunodd a gadawodd %(severalUsers)s %(count)s gwaith": "other"
|
||||
},
|
||||
"server_acls": {
|
||||
"Mae %(oneUser)s wedi newid ACLs y gweinydd %(count)s gwaith": "other",
|
||||
"Mae %(oneUser)s wedi newid ACLs y gweinydd": "one"
|
||||
},
|
||||
"server_acls_multiple": {
|
||||
"Mae %(severalUsers)s wedi newid ACLs y gweinydd %(count)s gwaith": "other",
|
||||
"Mae %(severalUsers)s wedi newid ACLs y gweinydd": "one"
|
||||
},
|
||||
"unbanned": {
|
||||
"wedi'u dadwahardd %(count)s gwaith": "other",
|
||||
"wedi'u dadwahardd": "one"
|
||||
},
|
||||
"unbanned_multiple": {
|
||||
"wedi'u dadwahardd %(count)s gwaith\n ": "zero",
|
||||
"wedi'i ddadwahardd": "one",
|
||||
"wedi'u dadwahardd %(count)s gwaith": "other"
|
||||
}
|
||||
"format": "%(matereList)s %(transitionList)s"
|
||||
},
|
||||
"thread_info_basic": "O edefyn",
|
||||
"typing_indicator": {
|
||||
"more_users": {
|
||||
"Mae %(names)s ac mae %(count)s eraill yn teipio...": "other",
|
||||
"Mae %(names)s ac mae un arall yn teipio...": "one"
|
||||
},
|
||||
"one_user": "Mae %(displayName)s yn teipio…",
|
||||
"two_users": "Mae %(materes)s a %(lastPerson)s yn teipio…"
|
||||
},
|
||||
"undecryptable_tooltip": "Nid oedd modd dadgryptio'r neges hon",
|
||||
"url_preview": {
|
||||
"close": "Cau rhagolwg",
|
||||
"show_n_more": {
|
||||
"Dangos %(count)s rhagolwg arall": "other"
|
||||
}
|
||||
"close": "Cau rhagolwg"
|
||||
}
|
||||
},
|
||||
"truncated_list_n_more": {
|
||||
"A %(count)s yn rhagor...": "other"
|
||||
},
|
||||
"unsupported_browser": {
|
||||
"description": "Os byddwch yn parhau, efallai na fydd rhai nodweddion yn gweithio ac mae risg y gallech golli data yn y dyfodol. Diweddarwch eich porwr i barhau i ddefnyddio %(brand)s.",
|
||||
"title": "Nid yw %(brand)s yn cefnogi'r porwr hwn"
|
||||
|
|
@ -3864,10 +3475,7 @@
|
|||
"not_image": "Nid yw'r ffeil rydych chi wedi'i dewis yn ffeil delwedd ddilys.",
|
||||
"title": "Llwytho ffeiliau",
|
||||
"title_progress": "Llwytho ffeiliau (%(current)s o %(total)s)",
|
||||
"upload_all_button": "Llwytho'r cyfan",
|
||||
"upload_n_others_button": {
|
||||
"Llwytho %(count)s ffeil arall": "other"
|
||||
}
|
||||
"upload_all_button": "Llwytho'r cyfan"
|
||||
},
|
||||
"user_info": {
|
||||
"admin_tools_section": "Offer Gweinyddol",
|
||||
|
|
@ -3905,13 +3513,6 @@
|
|||
"kick_space_warning": "Byddan nhw'n dal i allu cael mynediad at beth bynnag nad ydych yn weinyddwr iddo.",
|
||||
"promote_warning": "Fyddwch chi ddim yn gallu dadwneud y newid hwn gan eich bod yn hyrwyddo'r defnyddiwr i gael yr un lefel pŵer â chi'ch hun.",
|
||||
"redact": {
|
||||
"confirm_button": {
|
||||
"Tynnu %(count)s neges": "other",
|
||||
"Tynnu 1 neges": "one"
|
||||
},
|
||||
"confirm_description_1": {
|
||||
"Rydych chi ar fin tynnu %(count)s neges gan %(user)s. Bydd hyn yn eu tynnu'n barhaol i bawb yn y sgwrs. Ydych chi am barhau?": "other"
|
||||
},
|
||||
"confirm_description_2": "Ar gyfer llawer iawn o negeseuon, gallai hyn gymryd peth amser. Peidiwch ag adnewyddu eich cleient yn y cyfamser.",
|
||||
"confirm_keep_state_explainer": "Dad-diciwch a ydych hefyd am ddileu negeseuon system ar y defnyddiwr hwn (e.e. newid aelodaeth, newid proffil…)",
|
||||
"confirm_keep_state_label": "Cadw negeseuon system",
|
||||
|
|
@ -4002,10 +3603,6 @@
|
|||
"msisdn_lookup_failed": "Methu chwilio am y rhif ffôn",
|
||||
"msisdn_lookup_failed_description": "Bu gwall wrth chwilio am y rhif ffôn",
|
||||
"msisdn_transfer_failed": "Methu trosglwyddo galwad",
|
||||
"n_people_joined": {
|
||||
"Does %(count)s person wedi ymuno": "zero",
|
||||
"Mae %(count)s person wedi ymuno": "other"
|
||||
},
|
||||
"no_audio_input_description": "Heb ddod o hyd i feicroffon ar eich dyfais. Gwiriwch eich gosodiadau a cheisiwch eto.",
|
||||
"no_audio_input_title": "Heb ganfod meicroffon",
|
||||
"no_media_perms_description": "Mae'n bosibl y bydd angen i chi ganiatáu i %(brand)s gael mynediad i'ch meicroffon/gwegamera â llaw",
|
||||
|
|
|
|||
|
|
@ -92,9 +92,7 @@
|
|||
"ok": "OK",
|
||||
"open": "Åbn",
|
||||
"open_menu": "Åbn menu",
|
||||
"pause": "Pausér",
|
||||
"pin": "Fastgør",
|
||||
"play": "Afspil",
|
||||
"proceed": "Fortsæt",
|
||||
"quote": "Citat",
|
||||
"react": "Reager",
|
||||
|
|
@ -1639,7 +1637,6 @@
|
|||
"files_button": "Filer",
|
||||
"pinned_messages": {
|
||||
"limits": {
|
||||
"one": "",
|
||||
"other": "Du kan kun fastgøre op til %(count)s widgets"
|
||||
}
|
||||
},
|
||||
|
|
@ -2886,24 +2883,10 @@
|
|||
"show_thread_filter": "Vis:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "omkring en dag siden",
|
||||
"about_hour_ago": "for omkring en time siden",
|
||||
"about_minute_ago": "for omkring et minut siden",
|
||||
"date_at_time": "%(date)s om %(time)s",
|
||||
"few_seconds_ago": "for et par sekunder siden",
|
||||
"hours_minutes_seconds_left": "%(hours)st %(minutes)sm %(seconds)ss tilbage",
|
||||
"in_about_day": "om cirka en dag fra nu",
|
||||
"in_about_hour": "omkring en time fra nu",
|
||||
"in_about_minute": "omkring et minut fra nu",
|
||||
"in_few_seconds": "et par sekunder fra nu",
|
||||
"in_n_days": "%(num)s dage fra nu",
|
||||
"in_n_hours": "%(num)s timer fra nu",
|
||||
"in_n_minutes": "%(num)s minutter fra nu",
|
||||
"left": "%(timeRemaining)s tilbage",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss tilbage",
|
||||
"n_days_ago": "%(num)s dage siden",
|
||||
"n_hours_ago": "%(num)s timer siden",
|
||||
"n_minutes_ago": "%(num)s minutter siden",
|
||||
"seconds_left": "%(seconds)ss tilbage",
|
||||
"short_days": "%(value)sd",
|
||||
"short_days_hours_minutes_seconds": "%(days)sd %(hours)st %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -2951,8 +2934,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Fejl ved download af lyd",
|
||||
"error_processing_audio": "Fejl ved behandling af lydbesked",
|
||||
"error_processing_voice_message": "Fejl ved behandling af talebesked",
|
||||
"unnamed_audio": "Unavngiven lyd"
|
||||
"error_processing_voice_message": "Fejl ved behandling af talebesked"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Se live lokation"
|
||||
|
|
@ -3351,7 +3333,6 @@
|
|||
}
|
||||
},
|
||||
"truncated_list_n_more": {
|
||||
"one": "",
|
||||
"other": "Og %(count)s mere..."
|
||||
},
|
||||
"unsupported_server_description": "Denne server bruger en ældre version af Matrix. Opgrader til Matrix %(version)s for at kunne bruge %(brand)s uden fejl.",
|
||||
|
|
|
|||
|
|
@ -100,9 +100,7 @@
|
|||
"ok": "Ok",
|
||||
"open": "Öffnen",
|
||||
"open_menu": "Menu öffnen",
|
||||
"pause": "Pausieren",
|
||||
"pin": "Anheften",
|
||||
"play": "Abspielen",
|
||||
"proceed": "Fortfahren",
|
||||
"quote": "Zitieren",
|
||||
"react": "Reagieren",
|
||||
|
|
@ -3364,24 +3362,10 @@
|
|||
"no_rooms_with_unread_threads": "Es gibt keine Chats mit ungelesenen Threads."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "vor etwa einem Tag",
|
||||
"about_hour_ago": "vor etwa einer Stunde",
|
||||
"about_minute_ago": "vor etwa einer Minute",
|
||||
"date_at_time": "%(date)s um %(time)s",
|
||||
"few_seconds_ago": "vor ein paar Sekunden",
|
||||
"hours_minutes_seconds_left": "%(hours)s h %(minutes)s m %(seconds)s s verbleibend",
|
||||
"in_about_day": "in etwa einem Tag",
|
||||
"in_about_hour": "in etwa einer Stunde",
|
||||
"in_about_minute": "in etwa einer Minute",
|
||||
"in_few_seconds": "in ein paar Sekunden",
|
||||
"in_n_days": "in %(num)s Tagen",
|
||||
"in_n_hours": "in %(num)s Stunden",
|
||||
"in_n_minutes": "In etwa %(num)s Minuten",
|
||||
"left": "%(timeRemaining)s übrig",
|
||||
"minutes_seconds_left": "%(minutes)s m %(seconds)s s verbleibend",
|
||||
"n_days_ago": "vor %(num)s Tagen",
|
||||
"n_hours_ago": "vor %(num)s Stunden",
|
||||
"n_minutes_ago": "vor %(num)s Minuten",
|
||||
"seconds_left": "%(seconds)s verbleibend",
|
||||
"short_days": "%(value)sd",
|
||||
"short_days_hours_minutes_seconds": "%(days)s d %(hours)s h %(minutes)s m %(seconds)s s",
|
||||
|
|
@ -3436,11 +3420,9 @@
|
|||
"unable_to_find": "Der Sprung an eine bestimmte Stelle im Nachrichtenverlauf dieses Chats ist gescheitert. Die Stelle konnte nicht gefunden werden."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Audio-Player",
|
||||
"error_downloading_audio": "Fehler beim Herunterladen der Audiodatei",
|
||||
"error_processing_audio": "Fehler beim Verarbeiten der Audionachricht",
|
||||
"error_processing_voice_message": "Fehler beim Verarbeiten der Sprachnachricht",
|
||||
"unnamed_audio": "Unbenannte Audiodatei"
|
||||
"error_processing_voice_message": "Fehler beim Verarbeiten der Sprachnachricht"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Echtzeit-Standort anzeigen"
|
||||
|
|
|
|||
|
|
@ -82,9 +82,7 @@
|
|||
"no": "Όχι",
|
||||
"ok": "Εντάξει",
|
||||
"open": "Άνοιγμα",
|
||||
"pause": "Παύση",
|
||||
"pin": "Καρφίτσα",
|
||||
"play": "Αναπαραγωγή",
|
||||
"proceed": "Συνέχεια",
|
||||
"quote": "Παράθεση",
|
||||
"react": "Αντίδραση",
|
||||
|
|
@ -2618,24 +2616,10 @@
|
|||
"show_thread_filter": "Εμφάνισε:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "σχεδόν μία μέρα πριν",
|
||||
"about_hour_ago": "σχεδόν μία ώρα πριν",
|
||||
"about_minute_ago": "σχεδόν ένα λεπτό πριν",
|
||||
"date_at_time": "%(date)s στις %(time)s",
|
||||
"few_seconds_ago": "λίγα δευτερόλεπτα πριν",
|
||||
"hours_minutes_seconds_left": "απομένουν %(hours)sώ %(minutes)sλ %(seconds)sδλ",
|
||||
"in_about_day": "περίπου μια μέρα από τώρα",
|
||||
"in_about_hour": "περίπου μία ώρα από τώρα",
|
||||
"in_about_minute": "περίπου ένα λεπτό από τώρα",
|
||||
"in_few_seconds": "λίγα δευτερόλεπτα από τώρα",
|
||||
"in_n_days": "%(num)s μέρες από τώρα",
|
||||
"in_n_hours": "%(num)s ώρες από τώρα",
|
||||
"in_n_minutes": "%(num)s λεπτά από τώρα",
|
||||
"left": "%(timeRemaining)s απομένουν",
|
||||
"minutes_seconds_left": "απομένουν %(minutes)sλ %(seconds)sδλ",
|
||||
"n_days_ago": "%(num)s μέρες πριν",
|
||||
"n_hours_ago": "%(num)s ώρες πριν",
|
||||
"n_minutes_ago": "%(num)s λεπτά πριν",
|
||||
"seconds_left": "%(seconds)ss απομένουν",
|
||||
"short_days": "%(value)sμέρες",
|
||||
"short_days_hours_minutes_seconds": "%(days)sη %(hours)sώ %(minutes)sλ %(seconds)sδλ",
|
||||
|
|
@ -2676,8 +2660,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Σφάλμα λήψης ήχου",
|
||||
"error_processing_audio": "Σφάλμα επεξεργασίας του ηχητικού μηνύματος",
|
||||
"error_processing_voice_message": "Σφάλμα επεξεργασίας του φωνητικού μηνύματος",
|
||||
"unnamed_audio": "Ήχος χωρίς όνομα"
|
||||
"error_processing_voice_message": "Σφάλμα επεξεργασίας του φωνητικού μηνύματος"
|
||||
},
|
||||
"m.call": {
|
||||
"video_call_started": "Ξεκίνησε βιντεοκλήση στο %(roomName)s",
|
||||
|
|
|
|||
|
|
@ -101,9 +101,7 @@
|
|||
"ok": "OK",
|
||||
"open": "Open",
|
||||
"open_menu": "Open menu",
|
||||
"pause": "Pause",
|
||||
"pin": "Pin",
|
||||
"play": "Play",
|
||||
"proceed": "Proceed",
|
||||
"quote": "Quote",
|
||||
"react": "React",
|
||||
|
|
@ -2133,7 +2131,6 @@
|
|||
"status_bar": {
|
||||
"delete_all": "Delete all",
|
||||
"exceeded_resource_limit": "Your message wasn't sent because this homeserver has exceeded a resource limit. Please <a>contact your service administrator</a> to continue using the service.",
|
||||
"history_visible": "This room has been configured so that new members can read history. <a>Learn More</a>",
|
||||
"homeserver_blocked": "Your message wasn't sent because this homeserver has been blocked by its administrator. Please <a>contact your service administrator</a> to continue using the service.",
|
||||
"monthly_user_limit_reached": "Your message wasn't sent because this homeserver has hit its Monthly Active User Limit. Please <a>contact your service administrator</a> to continue using the service.",
|
||||
"requires_consent_agreement": "You can't send any messages until you review and agree to <consentLink>our terms and conditions</consentLink>.",
|
||||
|
|
@ -3393,24 +3390,10 @@
|
|||
"no_rooms_with_unread_threads": "You don't have rooms with unread threads yet."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "about a day ago",
|
||||
"about_hour_ago": "about an hour ago",
|
||||
"about_minute_ago": "about a minute ago",
|
||||
"date_at_time": "%(date)s at %(time)s",
|
||||
"few_seconds_ago": "a few seconds ago",
|
||||
"hours_minutes_seconds_left": "%(hours)sh %(minutes)sm %(seconds)ss left",
|
||||
"in_about_day": "about a day from now",
|
||||
"in_about_hour": "about an hour from now",
|
||||
"in_about_minute": "about a minute from now",
|
||||
"in_few_seconds": "a few seconds from now",
|
||||
"in_n_days": "%(num)s days from now",
|
||||
"in_n_hours": "%(num)s hours from now",
|
||||
"in_n_minutes": "%(num)s minutes from now",
|
||||
"left": "%(timeRemaining)s left",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss left",
|
||||
"n_days_ago": "%(num)s days ago",
|
||||
"n_hours_ago": "%(num)s hours ago",
|
||||
"n_minutes_ago": "%(num)s minutes ago",
|
||||
"seconds_left": "%(seconds)ss left",
|
||||
"short_days": "%(value)sd",
|
||||
"short_days_hours_minutes_seconds": "%(days)sd %(hours)sh %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -3465,11 +3448,9 @@
|
|||
"unable_to_find": "Tried to load a specific point in this room's timeline, but was unable to find it."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Audio player",
|
||||
"error_downloading_audio": "Error downloading audio",
|
||||
"error_processing_audio": "Error processing audio message",
|
||||
"error_processing_voice_message": "Error processing voice message",
|
||||
"unnamed_audio": "Unnamed audio"
|
||||
"error_processing_voice_message": "Error processing voice message"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "View live location"
|
||||
|
|
|
|||
|
|
@ -68,9 +68,7 @@
|
|||
"no": "Ne",
|
||||
"ok": "Bone",
|
||||
"open": "Malfermi",
|
||||
"pause": "Paŭzigi",
|
||||
"pin": "Pinglo",
|
||||
"play": "Ludi",
|
||||
"quote": "Citaĵo",
|
||||
"react": "Reagi",
|
||||
"refresh": "Aktualigi",
|
||||
|
|
@ -2035,23 +2033,9 @@
|
|||
"light_high_contrast": "Malpeza alta kontrasto"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "antaŭ ĉirkaŭ tago",
|
||||
"about_hour_ago": "antaŭ ĉirkaŭ horo",
|
||||
"about_minute_ago": "antaŭ ĉirkaŭ minuto",
|
||||
"date_at_time": "%(date)s je %(time)s",
|
||||
"few_seconds_ago": "antaŭ kelkaj sekundoj",
|
||||
"hours_minutes_seconds_left": "%(hours)sh. %(minutes)sm. %(seconds)ss. restas",
|
||||
"in_about_day": "ĉirkaŭ tagon de nun",
|
||||
"in_about_hour": "ĉirkaŭ horon de nun",
|
||||
"in_about_minute": "ĉirkaŭ minuton de nun",
|
||||
"in_few_seconds": "kelkajn sekundojn de nun",
|
||||
"in_n_days": "%(num)s tagojn de nun",
|
||||
"in_n_hours": "%(num)s horojn de nun",
|
||||
"in_n_minutes": "%(num)s minutojn de nun",
|
||||
"minutes_seconds_left": "%(minutes)sm. %(seconds)ss. restas",
|
||||
"n_days_ago": "antaŭ %(num)s tagoj",
|
||||
"n_hours_ago": "antaŭ %(num)s horoj",
|
||||
"n_minutes_ago": "antaŭ %(num)s minutoj",
|
||||
"seconds_left": "%(seconds)s sekundoj restas",
|
||||
"short_days": "%(value)st.",
|
||||
"short_days_hours_minutes_seconds": "%(days)st. %(hours)sh. %(minutes)sm. %(seconds)ss.",
|
||||
|
|
@ -2089,8 +2073,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Eraris elŝuto de sondosiero",
|
||||
"error_processing_audio": "Eraris traktado de sonmesaĝo",
|
||||
"error_processing_voice_message": "Eraris traktado de voĉmesaĝo",
|
||||
"unnamed_audio": "Sennoma sondosiero"
|
||||
"error_processing_voice_message": "Eraris traktado de voĉmesaĝo"
|
||||
},
|
||||
"m.call": {
|
||||
"video_call_started": "Videovoko komenciĝis en %(roomName)s.",
|
||||
|
|
|
|||
|
|
@ -92,9 +92,7 @@
|
|||
"ok": "Vale",
|
||||
"open": "Abrir",
|
||||
"open_menu": "Abrir menú",
|
||||
"pause": "Pausar",
|
||||
"pin": "Fijar",
|
||||
"play": "Reproducir",
|
||||
"proceed": "Continuar",
|
||||
"quote": "Citar",
|
||||
"react": "Reaccionar",
|
||||
|
|
@ -2700,24 +2698,10 @@
|
|||
"show_thread_filter": "Mostrar:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "hace aprox. un día",
|
||||
"about_hour_ago": "hace aprox. una hora",
|
||||
"about_minute_ago": "hace aproximadamente un minuto",
|
||||
"date_at_time": "%(date)s a la(s) %(time)s",
|
||||
"few_seconds_ago": "hace unos segundos",
|
||||
"hours_minutes_seconds_left": "queda(n) %(hours)sh %(minutes)sm %(seconds)ss",
|
||||
"in_about_day": "dentro de un día",
|
||||
"in_about_hour": "dentro de una hora",
|
||||
"in_about_minute": "dentro de un minuto",
|
||||
"in_few_seconds": "dentro de unos segundos",
|
||||
"in_n_days": "dentro de %(num)s días",
|
||||
"in_n_hours": "dentro de %(num)s horas",
|
||||
"in_n_minutes": "dentro de %(num)s minutos",
|
||||
"left": "Queda %(timeRemaining)s",
|
||||
"minutes_seconds_left": "queda(n) %(minutes)sm %(seconds)ss",
|
||||
"n_days_ago": "hace %(num)s días",
|
||||
"n_hours_ago": "hace %(num)s horas",
|
||||
"n_minutes_ago": "hace %(num)s minutos",
|
||||
"seconds_left": "%(seconds)ss restantes",
|
||||
"short_days": "%(value)s d",
|
||||
"short_days_hours_minutes_seconds": "%(days)sd %(hours)sh %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -2758,11 +2742,9 @@
|
|||
"unable_to_find": "Se ha intentado cargar cierto punto en la cronología de esta sala, pero no se ha podido encontrarlo."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Reproductor de audio",
|
||||
"error_downloading_audio": "Error al descargar el audio",
|
||||
"error_processing_audio": "Error al procesar el mensaje de audio",
|
||||
"error_processing_voice_message": "Ha ocurrido un error al procesar el mensaje de voz",
|
||||
"unnamed_audio": "Audio sin título"
|
||||
"error_processing_voice_message": "Ha ocurrido un error al procesar el mensaje de voz"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Ver ubicación en tiempo real"
|
||||
|
|
|
|||
|
|
@ -101,9 +101,7 @@
|
|||
"ok": "Sobib",
|
||||
"open": "Ava",
|
||||
"open_menu": "Ava menüü",
|
||||
"pause": "Peata",
|
||||
"pin": "Tõsta esile",
|
||||
"play": "Esita",
|
||||
"proceed": "Jätka",
|
||||
"quote": "Tsiteeri",
|
||||
"react": "Reageeri",
|
||||
|
|
@ -1914,7 +1912,6 @@
|
|||
"other": "%(count)s esiletõstetud sõnumit"
|
||||
},
|
||||
"limits": {
|
||||
"one": "",
|
||||
"other": "Sa saad esile tõsta kuni %(count)s vidinat"
|
||||
},
|
||||
"menu": "Ava menüü",
|
||||
|
|
@ -2126,7 +2123,6 @@
|
|||
"status_bar": {
|
||||
"delete_all": "Kustuta kõik",
|
||||
"exceeded_resource_limit": "Sinu sõnumit ei saadetud, kuna see koduserver on ületanud on ületanud ressursipiirangu. Teenuse kasutamiseks palun <a>võta ühendust serveri haldajaga</a>.",
|
||||
"history_visible": "See jututuba on seadistatud sel viisil, et uued liikmed saavad lugeda varasemat ajalugu.<a> Lisateave</a>",
|
||||
"homeserver_blocked": "Sinu sõnumit ei saadetud, kuna see koduserver blokeeritud serveri haldaja poolt. Teenuse kasutamiseks palun <a>võta ühendust serveri haldajaga</a>.",
|
||||
"monthly_user_limit_reached": "Sinu sõnumit ei saadetud, kuna see koduserver on saavutanud igakuise aktiivsete kasutajate piiri. Teenuse kasutamiseks palun <a>võta ühendust serveri haldajaga</a>.",
|
||||
"requires_consent_agreement": "Sa ei saa saata ühtego sõnumit enne, kui oled läbi lugenud ja nõustunud <consentLink>meie kasutustingimustega</consentLink>.",
|
||||
|
|
@ -3387,24 +3383,10 @@
|
|||
"no_rooms_with_unread_threads": "Pole veel ühtegi lugemata jutulõngaga jututuba."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "umbes päev tagasi",
|
||||
"about_hour_ago": "umbes tund aega tagasi",
|
||||
"about_minute_ago": "umbes minut tagasi",
|
||||
"date_at_time": "%(date)s %(time)s",
|
||||
"few_seconds_ago": "mõni sekund tagasi",
|
||||
"hours_minutes_seconds_left": "jäänud on %(hours)st %(minutes)sm %(seconds)ss",
|
||||
"in_about_day": "umbes päeva pärast",
|
||||
"in_about_hour": "umbes tunni pärast",
|
||||
"in_about_minute": "umbes minuti pärast",
|
||||
"in_few_seconds": "mõne sekundi pärast",
|
||||
"in_n_days": "%(num)s päeva pärast",
|
||||
"in_n_hours": "%(num)s tunni pärast",
|
||||
"in_n_minutes": "%(num)s minuti pärast",
|
||||
"left": "jäänud %(timeRemaining)s",
|
||||
"minutes_seconds_left": "jäänud on %(minutes)sm %(seconds)ss",
|
||||
"n_days_ago": "%(num)s päeva tagasi",
|
||||
"n_hours_ago": "%(num)s tundi tagasi",
|
||||
"n_minutes_ago": "%(num)s minutit tagasi",
|
||||
"seconds_left": "jäänud %(seconds)s sekundit",
|
||||
"short_days": "%(value)s p",
|
||||
"short_days_hours_minutes_seconds": "%(days)s pv %(hours)s t %(minutes)s m %(seconds)s s",
|
||||
|
|
@ -3459,11 +3441,9 @@
|
|||
"unable_to_find": "Üritasin laadida teatud hetke selle jututoa ajajoonelt, kuid ei suutnud seda leida."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Meediaesitaja",
|
||||
"error_downloading_audio": "Helifaili allalaadimine ei õnnestunud",
|
||||
"error_processing_audio": "Viga häälsõnumi töötlemisel",
|
||||
"error_processing_voice_message": "Viga häälsõnumi töötlemisel",
|
||||
"unnamed_audio": "Nimetu helifail"
|
||||
"error_processing_voice_message": "Viga häälsõnumi töötlemisel"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Vaata asukohta reaalajas"
|
||||
|
|
|
|||
|
|
@ -66,9 +66,7 @@
|
|||
"no": "خیر",
|
||||
"ok": "باشه",
|
||||
"open": "باز",
|
||||
"pause": "متوقفکردن",
|
||||
"pin": "سنجاق",
|
||||
"play": "اجرا کردن",
|
||||
"quote": "نقل قول",
|
||||
"react": "واکنش",
|
||||
"refresh": "رفرش",
|
||||
|
|
@ -1776,21 +1774,7 @@
|
|||
},
|
||||
"thread_view_back_action_label": "بازگشت به موضوع",
|
||||
"time": {
|
||||
"about_day_ago": "حدود یک روز قبل",
|
||||
"about_hour_ago": "حدود یک ساعت قبل",
|
||||
"about_minute_ago": "حدود یک دقیقه قبل",
|
||||
"date_at_time": "%(date)s ساعت %(time)s",
|
||||
"few_seconds_ago": "چند ثانیه قبل",
|
||||
"in_about_day": "حدود یک روز دیگر",
|
||||
"in_about_hour": "حدود یک ساعت دیگر",
|
||||
"in_about_minute": "حدود یک دقیقه دیگر",
|
||||
"in_few_seconds": "چند ثانیه دیگر",
|
||||
"in_n_days": "%(num)s روز دیگر",
|
||||
"in_n_hours": "%(num)s ساعت دیگر",
|
||||
"in_n_minutes": "%(num)s دقیقه دیگر",
|
||||
"n_days_ago": "%(num)s روز قبل",
|
||||
"n_hours_ago": "%(num)s ساعت قبل",
|
||||
"n_minutes_ago": "%(num)s دقیقه قبل",
|
||||
"seconds_left": "%(seconds)s ثانیه باقیمانده",
|
||||
"short_minutes": "%(value)sم",
|
||||
"short_seconds": "%(value)sس"
|
||||
|
|
|
|||
|
|
@ -89,9 +89,7 @@
|
|||
"ok": "OK",
|
||||
"open": "Avaa",
|
||||
"open_menu": "Avaa valikko",
|
||||
"pause": "Keskeytä",
|
||||
"pin": "Kiinnitä",
|
||||
"play": "Toista",
|
||||
"proceed": "Jatka",
|
||||
"quote": "Lainaa",
|
||||
"react": "Reagoi",
|
||||
|
|
@ -2816,24 +2814,10 @@
|
|||
"show_thread_filter": "Näytä:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "noin päivä sitten",
|
||||
"about_hour_ago": "noin tunti sitten",
|
||||
"about_minute_ago": "noin minuutti sitten",
|
||||
"date_at_time": "%(date)s klo %(time)s",
|
||||
"few_seconds_ago": "muutama sekunti sitten",
|
||||
"hours_minutes_seconds_left": "%(hours)s h %(minutes)s m %(seconds)s s jäljellä",
|
||||
"in_about_day": "noin päivä sitten",
|
||||
"in_about_hour": "noin tunti sitten",
|
||||
"in_about_minute": "noin minuutti sitten",
|
||||
"in_few_seconds": "muutama sekunti sitten",
|
||||
"in_n_days": "%(num)s päivää sitten",
|
||||
"in_n_hours": "%(num)s tuntia sitten",
|
||||
"in_n_minutes": "%(num)s minuuttia sitten",
|
||||
"left": "%(timeRemaining)s jäljellä",
|
||||
"minutes_seconds_left": "%(minutes)s min %(seconds)s s jäljellä",
|
||||
"n_days_ago": "%(num)s päivää sitten",
|
||||
"n_hours_ago": "%(num)s tuntia sitten",
|
||||
"n_minutes_ago": "%(num)s minuuttia sitten",
|
||||
"seconds_left": "%(seconds)s s jäljellä",
|
||||
"short_days": "%(value)s vrk",
|
||||
"short_days_hours_minutes_seconds": "%(days)s pv %(hours)s t %(minutes)s min %(seconds)s s",
|
||||
|
|
@ -2882,8 +2866,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Virhe ääntä ladattaessa",
|
||||
"error_processing_audio": "Virhe ääniviestiä käsiteltäessä",
|
||||
"error_processing_voice_message": "Virhe ääniviestin käsittelyssä",
|
||||
"unnamed_audio": "Nimetön ääni"
|
||||
"error_processing_voice_message": "Virhe ääniviestin käsittelyssä"
|
||||
},
|
||||
"m.call": {
|
||||
"video_call_ended": "Videopuhelu päättyi",
|
||||
|
|
|
|||
|
|
@ -101,9 +101,7 @@
|
|||
"ok": "OK",
|
||||
"open": "Ouvrir",
|
||||
"open_menu": "Ouvrir le menu",
|
||||
"pause": "Pause",
|
||||
"pin": "Épingler",
|
||||
"play": "Lecture",
|
||||
"proceed": "Appliquer",
|
||||
"quote": "Citer",
|
||||
"react": "Réagir",
|
||||
|
|
@ -2122,7 +2120,6 @@
|
|||
"status_bar": {
|
||||
"delete_all": "Tout supprimer",
|
||||
"exceeded_resource_limit": "Votre message n’a pas été envoyé car ce serveur d’accueil a dépassé une de ses limites de ressources. Veuillez <a>contacter l’administrateur de votre service</a> pour continuer à l’utiliser.",
|
||||
"history_visible": "Ce salon a été configuré afin que les nouveaux membres puissent lire l'historique.<a> En savori plus</a>",
|
||||
"homeserver_blocked": "Votre message n’a pas été envoyé car ce serveur d’accueil a été bloqué par son administrateur. Veuillez <a>contacter l’administrateur de votre service</a> pour continuer à l’utiliser.",
|
||||
"monthly_user_limit_reached": "Votre message n’a pas été envoyé car le serveur d’accueil a atteint sa limite mensuelle d’utilisateurs. Veuillez <a>contacter l’administrateur de votre service</a> pour continuer à l’utiliser.",
|
||||
"requires_consent_agreement": "Vous ne pouvez voir aucun message tant que vous ne lisez et n’acceptez pas nos <consentLink>conditions générales</consentLink>.",
|
||||
|
|
@ -3383,24 +3380,10 @@
|
|||
"no_rooms_with_unread_threads": "Vous n'avez pas encore de salons contenant des fils de discussion non lus."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "il y a environ un jour",
|
||||
"about_hour_ago": "il y a environ une heure",
|
||||
"about_minute_ago": "il y a environ une minute",
|
||||
"date_at_time": "%(date)s à %(time)s",
|
||||
"few_seconds_ago": "il y a quelques secondes",
|
||||
"hours_minutes_seconds_left": "%(hours)sh %(minutes)sm %(seconds)ss restantes",
|
||||
"in_about_day": "dans un jour environ",
|
||||
"in_about_hour": "dans une heure environ",
|
||||
"in_about_minute": "dans une minute environ",
|
||||
"in_few_seconds": "dans quelques secondes",
|
||||
"in_n_days": "dans %(num)s jours",
|
||||
"in_n_hours": "dans %(num)s heures",
|
||||
"in_n_minutes": "dans %(num)s minutes",
|
||||
"left": "%(timeRemaining)s restant",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss restantes",
|
||||
"n_days_ago": "il y a %(num)s jours",
|
||||
"n_hours_ago": "il y a %(num)s heures",
|
||||
"n_minutes_ago": "il y a %(num)s minutes",
|
||||
"seconds_left": "%(seconds)s secondes restantes",
|
||||
"short_days": "%(value)sj",
|
||||
"short_days_hours_minutes_seconds": "%(days)sj %(hours)sh %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -3455,11 +3438,9 @@
|
|||
"unable_to_find": "Un instant donné du fil de discussion n’a pu être chargé car il n’a pas pu être trouvé."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Lecteur audio",
|
||||
"error_downloading_audio": "Erreur lors du téléchargement de l’audio",
|
||||
"error_processing_audio": "Erreur lors du traitement du message audio",
|
||||
"error_processing_voice_message": "Erreur lors du traitement du message vocal",
|
||||
"unnamed_audio": "Audio sans nom"
|
||||
"error_processing_voice_message": "Erreur lors du traitement du message vocal"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Voir la position en direct"
|
||||
|
|
|
|||
|
|
@ -77,8 +77,6 @@
|
|||
"next": "Seguinte",
|
||||
"no": "Non",
|
||||
"open": "Abrir",
|
||||
"pause": "Deter",
|
||||
"play": "Reproducir",
|
||||
"quote": "Cita",
|
||||
"react": "Reacciona",
|
||||
"refresh": "Actualizar",
|
||||
|
|
@ -2376,24 +2374,10 @@
|
|||
"show_thread_filter": "Mostrar:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "onte",
|
||||
"about_hour_ago": "fai unha hora",
|
||||
"about_minute_ago": "fai un minuto",
|
||||
"date_at_time": "%(date)s ás %(time)s",
|
||||
"few_seconds_ago": "fai uns segundos",
|
||||
"hours_minutes_seconds_left": "%(hours)sh %(minutes)sm %(seconds)ss restantes",
|
||||
"in_about_day": "foi onte",
|
||||
"in_about_hour": "fará unha hora",
|
||||
"in_about_minute": "haberá un minuto",
|
||||
"in_few_seconds": "hai só uns segundos",
|
||||
"in_n_days": "fará %(num)s días",
|
||||
"in_n_hours": "fará %(num)s horas",
|
||||
"in_n_minutes": "fará %(num)s minutos",
|
||||
"left": "%(timeRemaining)s restante",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss restantes",
|
||||
"n_days_ago": "fai %(num)s días",
|
||||
"n_hours_ago": "fai %(num)s horas",
|
||||
"n_minutes_ago": "fai %(num)s minutos",
|
||||
"seconds_left": "%(seconds)ss restantes"
|
||||
},
|
||||
"timeline": {
|
||||
|
|
@ -2428,8 +2412,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Erro ao descargar o audio",
|
||||
"error_processing_audio": "Erro ao procesar a mensaxe de audio",
|
||||
"error_processing_voice_message": "Erro ao procesar a mensaxe de voz",
|
||||
"unnamed_audio": "Audio sen nome"
|
||||
"error_processing_voice_message": "Erro ao procesar a mensaxe de voz"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Ver localización en directo"
|
||||
|
|
|
|||
|
|
@ -1938,23 +1938,9 @@
|
|||
"show_thread_filter": "הצג:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "בערך לפני יום",
|
||||
"about_hour_ago": "בערך לפני כשעה",
|
||||
"about_minute_ago": "לפני בערך דקה",
|
||||
"date_at_time": "%(date)s בשעה %(time)s",
|
||||
"few_seconds_ago": "לפני מספר שניות",
|
||||
"hours_minutes_seconds_left": "נשארו %(hours)s שעות, %(minutes)s דקות ו-%(seconds)s שניות",
|
||||
"in_about_day": "בערך בעוד יום מעכשיו",
|
||||
"in_about_hour": "בערך בעוד כשעה",
|
||||
"in_about_minute": "בערך עוד דקה אחת",
|
||||
"in_few_seconds": "בעוד מספר שניות מעכשיו",
|
||||
"in_n_days": "בעוד %(num)s ימים מעכשיו",
|
||||
"in_n_hours": "בעוד %(num)s שעות",
|
||||
"in_n_minutes": "בעוד %(num)s דקות",
|
||||
"minutes_seconds_left": "נשארו %(minutes)s דקות ו-%(seconds)s שניות",
|
||||
"n_days_ago": "לפני %(num)s ימים",
|
||||
"n_hours_ago": "לפני %(num)s שעות",
|
||||
"n_minutes_ago": "לפני %(num)s דקות",
|
||||
"seconds_left": "נשארו %(seconds)s שניות",
|
||||
"short_days": "%(value)s ימים",
|
||||
"short_hours": "%(value)s שעות",
|
||||
|
|
|
|||
|
|
@ -3,25 +3,9 @@
|
|||
"emoji_picker": "Emodzsiválasztó",
|
||||
"jump_first_invite": "Ugrás az első meghívóhoz.",
|
||||
"message_composer": "Üzenetszerkesztő",
|
||||
"n_unread_messages": {
|
||||
"%(count)s olvasatlan üzenet.": "other",
|
||||
"1 olvasatlan üzenet.": "one"
|
||||
},
|
||||
"n_unread_messages_mentions": {
|
||||
"%(count)s olvasatlan üzenet megemlítéssel.": "other",
|
||||
"1 olvasatlan megemlítés.": "one"
|
||||
},
|
||||
"recent_rooms": "Legutóbbi szobák",
|
||||
"room_messsage_not_sent": "A(z) %(roomName)s szoba megnyitása nem beállított üzenettel.",
|
||||
"room_n_unread_invite": "A(z) %(roomName)s szoba meghívásának megnyitása.",
|
||||
"room_n_unread_messages": {
|
||||
"A(z) %(roomName)s szoba megnyitása 1 olvasatlan üzenettel.": "one",
|
||||
"A(z) %(roomName)s szoba megnyitása %(count)s olvasatlan üzenettel.": "other"
|
||||
},
|
||||
"room_n_unread_messages_mentions": {
|
||||
"A(z) %(roomName)s szoba megnyitása 1 olvasatlan megemlítéssel.": "one",
|
||||
"A(z) %(roomName)s szoba megnyitása %(count)s olvasatlan megemlítéssel.": "other"
|
||||
},
|
||||
"room_name": "Szoba: %(name)s",
|
||||
"room_status_bar": "Szoba állapotsora",
|
||||
"seek_bar_label": "Hang keresősávja",
|
||||
|
|
@ -101,9 +85,7 @@
|
|||
"ok": "Rendben",
|
||||
"open": "Megnyitás",
|
||||
"open_menu": "Menü megnyitása",
|
||||
"pause": "Szünet",
|
||||
"pin": "Kitűzés",
|
||||
"play": "Lejátszás",
|
||||
"proceed": "Folytatás",
|
||||
"quote": "Idézés",
|
||||
"react": "Reakció",
|
||||
|
|
@ -471,10 +453,6 @@
|
|||
"advanced": "Speciális",
|
||||
"all_chats": "Összes csevegés",
|
||||
"analytics": "Analitika",
|
||||
"and_n_others": {
|
||||
"és még: %(count)s ...": "other",
|
||||
"és még egy...": "one"
|
||||
},
|
||||
"appearance": "Megjelenítés",
|
||||
"application": "Alkalmazás",
|
||||
"are_you_sure": "Biztos?",
|
||||
|
|
@ -529,12 +507,6 @@
|
|||
"moderation_and_safety": "Moderálás és biztonság",
|
||||
"modern": "Modern",
|
||||
"mute": "Némítás",
|
||||
"n_members": {
|
||||
"%(count)s tag": "other"
|
||||
},
|
||||
"n_rooms": {
|
||||
"%(count)s szoba": "other"
|
||||
},
|
||||
"name": "Név",
|
||||
"no_results": "Nincs találat",
|
||||
"no_results_found": "Nincs találat",
|
||||
|
|
@ -855,9 +827,6 @@
|
|||
"room_notifications_total": "Összesen: ",
|
||||
"room_notifications_type": "Típus: ",
|
||||
"room_status": "Szoba állapota",
|
||||
"room_unread_status_count": {
|
||||
"Szoba állapota: <strong>%(status)s</strong>, darabszám: <strong>%(count)s</strong>": "other"
|
||||
},
|
||||
"save_setting_values": "Beállított értékek mentése",
|
||||
"see_history": "Előzmények megtekintése",
|
||||
"send_custom_account_data_event": "Egyéni fiókadat-esemény küldése",
|
||||
|
|
@ -877,10 +846,6 @@
|
|||
"settings_explorer": "Beállításböngésző",
|
||||
"show_empty_content_events": "Üres tartalmú események megjelenítése",
|
||||
"show_hidden_events": "Rejtett események megjelenítése az idővonalon",
|
||||
"spaces": {
|
||||
"<%(count)s szóköz>": "other",
|
||||
"<szóköz>": "one"
|
||||
},
|
||||
"state_key": "Állapotkulcs",
|
||||
"thread_root_id": "Üzenetszál gyökérazonosítója: %(threadRootId)s",
|
||||
"threads_timeline": "Üzenetszálak idővonala",
|
||||
|
|
@ -1215,19 +1180,7 @@
|
|||
"error_fetching_file": "Fájlletöltési hiba",
|
||||
"export_info": "Ez a(z) <roomName/> szoba exportálásának kezdete. Exportálta: <exporterDetails/>, időpont: %(exportDate)s.",
|
||||
"export_successful": "Sikeres exportálás!",
|
||||
"exported_n_events_in_time": {
|
||||
"%(count)s esemény exportálva %(seconds)s másodperc alatt": "other"
|
||||
},
|
||||
"exporting_your_data": "Adatai exportálása",
|
||||
"fetched_n_events": {
|
||||
"Eddig %(count)s esemény lett lekérve": "other"
|
||||
},
|
||||
"fetched_n_events_in_time": {
|
||||
"%(count)s esemény lekérve %(seconds)s másodperc alatt": "other"
|
||||
},
|
||||
"fetched_n_events_with_total": {
|
||||
"%(count)s / %(total)s esemény lekérve": "other"
|
||||
},
|
||||
"fetching_events": "Események lekérése…",
|
||||
"file_attached": "Fájl mellékelve",
|
||||
"format": "Formátum",
|
||||
|
|
@ -1316,9 +1269,6 @@
|
|||
},
|
||||
"in_space": "Ebben a térben: %(spaceName)s.",
|
||||
"in_space1_and_space2": "Ezekben a terekben: %(space1Name)s és %(space2Name)s.",
|
||||
"in_space_and_n_other_spaces": {
|
||||
"Itt: %(spaceName)s és %(count)s másik térben.": "other"
|
||||
},
|
||||
"incompatible_browser": {
|
||||
"continue": "Folytatás mégis",
|
||||
"description": "%(brand)s olyan böngészőfunkciókat használ, amelyek nem érhetők el az aktuális böngészőben. %(detail)s",
|
||||
|
|
@ -1412,14 +1362,6 @@
|
|||
"unban_first_title": "A felhasználó addig nem hívható meg, amíg fel nem oldják a kitiltását"
|
||||
},
|
||||
"inviting_user1_and_user2": "%(user1)s és %(user2)s meghívása",
|
||||
"inviting_user_and_n_others": {
|
||||
"%(user)s és 1 további meghívása": "one",
|
||||
"%(user)s és %(count)s további meghívása": "other"
|
||||
},
|
||||
"items_and_n_others": {
|
||||
"<Items/> és még %(count)s másik": "other",
|
||||
"<Items/> és még egy másik": "one"
|
||||
},
|
||||
"keyboard": {
|
||||
"activate_button": "Kiválasztott gomb aktiválása",
|
||||
"alt": "Alt",
|
||||
|
|
@ -1675,9 +1617,6 @@
|
|||
"toggle_attribution": "Forrásmegjelölés be/ki"
|
||||
},
|
||||
"member_list": {
|
||||
"count": {
|
||||
"%(count)s tag": "other"
|
||||
},
|
||||
"filter_placeholder": "Szoba tagság szűrése",
|
||||
"invite_button_no_perms_tooltip": "Nincs jogosultsága felhasználók meghívására",
|
||||
"invited_label": "Meghívott",
|
||||
|
|
@ -1768,12 +1707,6 @@
|
|||
"topic_label": "Kérdés vagy téma",
|
||||
"topic_placeholder": "Írjon valamit…",
|
||||
"total_decryption_errors": "Visszafejtési hibák miatt néhány szavazat nem kerül beszámításra",
|
||||
"total_n_votes": {
|
||||
"%(count)s leadott szavazat. Szavazzon az eredmény megtekintéséhez": "other"
|
||||
},
|
||||
"total_n_votes_voted": {
|
||||
"%(count)s szavazat alapján": "other"
|
||||
},
|
||||
"total_no_votes": "Nem adtak le szavazatot",
|
||||
"total_not_ended": "Az eredmény a szavazás végeztével válik láthatóvá",
|
||||
"type_closed": "Zárt szavazás",
|
||||
|
|
@ -1889,7 +1822,6 @@
|
|||
"other": "%(count)s kitűzött üzenet"
|
||||
},
|
||||
"limits": {
|
||||
"one": "",
|
||||
"other": "Legfeljebb %(count)s kisalkalmazást tűzhet ki"
|
||||
},
|
||||
"menu": "Menü megnyitása",
|
||||
|
|
@ -1906,19 +1838,8 @@
|
|||
"active_heading": "Aktív szavazások",
|
||||
"empty_active": "Nincsenek aktív szavazások ebben a szobában",
|
||||
"empty_active_load_more": "Nincs aktív szavazás. További szavazások betöltése az előző havi szavazások megjelenítéséhez",
|
||||
"empty_active_load_more_n_days": {
|
||||
"%(count)s napja nincs aktív szavazás. További szavazások betöltése az előző havi szavazások megjelenítéséhez": "other",
|
||||
"Nincs aktív szavazás az elmúlt napokból. További szavazások betöltése az előző havi szavazások megjelenítéséhez": "one"
|
||||
},
|
||||
"empty_past": "Nincsenek régebbi szavazások ebben a szobában",
|
||||
"empty_past_load_more": "Nincs régebbi szavazás. További szavazások betöltése az előző havi szavazások megjelenítéséhez",
|
||||
"empty_past_load_more_n_days": {
|
||||
"Nincs aktív szavazás az elmúlt napokból. További szavazások betöltése az előző havi szavazások megjelenítéséhez": "one",
|
||||
"%(count)s napja nincs aktív szavazás. További szavazások betöltése az előző havi szavazások megjelenítéséhez": "other"
|
||||
},
|
||||
"final_result": {
|
||||
"Végeredmény %(count)s szavazat alapján": "other"
|
||||
},
|
||||
"load_more": "Még több szavazás betöltése",
|
||||
"loading": "Szavazások betöltése",
|
||||
"past_heading": "Régi szavazások",
|
||||
|
|
@ -1983,13 +1904,6 @@
|
|||
"error_jump_to_date_not_found": "Nem sikerült megtalálni az eseményt %(dateString)s után keresve. Próbáljon egy korábbi dátumot kiválasztani.",
|
||||
"error_jump_to_date_send_logs_prompt": "Küldjön be <debugLogsLink>hibakeresési naplókat</debugLogsLink>, hogy segítsen nekünk a hiba megtalálásában.",
|
||||
"error_jump_to_date_title": "Nem található esemény az adott dátumkor",
|
||||
"face_pile_summary": {
|
||||
"%(count)s ismerős már csatlakozott": "other"
|
||||
},
|
||||
"face_pile_tooltip_label": {
|
||||
"1 résztvevő megmutatása": "one",
|
||||
"Az összes %(count)s résztvevő megmutatása": "other"
|
||||
},
|
||||
"face_pile_tooltip_shortcut": "Beleértve: %(commaSeparatedMembers)s",
|
||||
"face_pile_tooltip_shortcut_joined": "Önt is beleértve, %(commaSeparatedMembers)s",
|
||||
"failed_determine_user": "Nem lehet meghatározni, hogy melyik felhasználót kell figyelmen kívül hagyni, mivel az esemény megváltozott.",
|
||||
|
|
@ -1997,10 +1911,6 @@
|
|||
"forget_room": "Szoba elfelejtése",
|
||||
"forget_space": "Ennek a térnek az elfelejtése",
|
||||
"header": {
|
||||
"n_people_asking_to_join": {
|
||||
"Csatlakozást kér": "one",
|
||||
"%(count)s csatlakozást kérő ember": "other"
|
||||
},
|
||||
"room_is_public": "Ez egy nyilvános szoba"
|
||||
},
|
||||
"header_avatar_open_settings_label": "Szobabeállítások megnyitása",
|
||||
|
|
@ -2090,10 +2000,6 @@
|
|||
"search": {
|
||||
"all_rooms_button": "Keresés az összes szobában",
|
||||
"placeholder": "Üzenetek keresése...",
|
||||
"summary": {
|
||||
"1 találat ehhez: „<query/>”": "one",
|
||||
"%(count)s találat ehhez: „<query/>”": "other"
|
||||
},
|
||||
"this_room_button": "Keresés ebben a szobában"
|
||||
},
|
||||
"status_bar": {
|
||||
|
|
@ -2109,9 +2015,6 @@
|
|||
"some_messages_not_sent": "Néhány üzenete nem lett elküldve"
|
||||
},
|
||||
"unknown_status_code_for_timeline_jump": "ismeretlen állapotkód",
|
||||
"unread_notifications_predecessor": {
|
||||
"%(count)s olvasatlan értesítésed van a régi verziójú szobában.": "one"
|
||||
},
|
||||
"upgrade_error_description": "Ellenőrizze még egyszer, hogy a kiszolgálója támogatja-e kiválasztott szobaverziót, és próbálja újra.",
|
||||
"upgrade_error_title": "Hiba a szoba verziófrissítésekor",
|
||||
"upgrade_warning_bar": "A szoba fejlesztése bezárja ezt a szobát és új, frissített verzióval ugyanezen a néven létrehoz egy újat.",
|
||||
|
|
@ -2119,9 +2022,6 @@
|
|||
"upgrade_warning_bar_unstable": "A szoba verziója: <roomVersion />, amelyet a Matrix-kiszolgáló <i>instabilnak</i> tekint.",
|
||||
"upgrade_warning_bar_upgraded": "Ez a szoba már fejlesztve van.",
|
||||
"upload": {
|
||||
"uploading_multiple_file": {
|
||||
"%(filename)s és még %(count)s db másik feltöltése": "other"
|
||||
},
|
||||
"uploading_single_file": "%(filename)s feltöltése"
|
||||
},
|
||||
"video_room": "Ez a szoba egy videószoba",
|
||||
|
|
@ -2166,9 +2066,6 @@
|
|||
},
|
||||
"home_menu_label": "Kezdőlap beállítások",
|
||||
"join_public_room_label": "Belépés nyilvános szobába",
|
||||
"joining_rooms_status": {
|
||||
"%(count)s szobába lép be": "other"
|
||||
},
|
||||
"list_title": "Szobalista",
|
||||
"more_options": {
|
||||
"copy_link": "Szoba hivatkozásának másolása",
|
||||
|
|
@ -2190,9 +2087,6 @@
|
|||
},
|
||||
"room_options": "Szobabeállítások",
|
||||
"show_less": "Kevesebb megjelenítése",
|
||||
"show_n_more": {
|
||||
"Még %(count)s megjelenítése": "one"
|
||||
},
|
||||
"show_previews": "Üzenet-előnézet megjelenítése",
|
||||
"sort": "Rendezés",
|
||||
"sort_by": "Rendezés",
|
||||
|
|
@ -2415,25 +2309,10 @@
|
|||
"join_rule_restricted_dialog_heading_space": "Terek melyről tudja, hogy ezt a teret tartalmazzák",
|
||||
"join_rule_restricted_dialog_heading_unknown": "Ezek valószínűleg olyanok, amelyeknek más szobaadminisztrátorok is tagjai.",
|
||||
"join_rule_restricted_dialog_title": "Terek kiválasztása",
|
||||
"join_rule_restricted_n_more": {
|
||||
"és még %(count)s": "one"
|
||||
},
|
||||
"join_rule_restricted_summary": {
|
||||
"Jelenleg %(count)s tér rendelkezik hozzáféréssel": "other",
|
||||
"Jelenleg egy tér rendelkezik hozzáféréssel": "one"
|
||||
},
|
||||
"join_rule_restricted_upgrade_description": "Ez a fejlesztés lehetővé teszi, hogy a kiválasztott terek tagjai meghívó nélkül is elérjék ezt a szobát.",
|
||||
"join_rule_restricted_upgrade_warning": "Ez a szoba olyan terekben is benne van, amelynek nem Ön az adminisztrátora. Ezekben a terekben továbbra is a régi szoba jelenik meg, de az emberek jelzést kapnak, hogy lépjenek be az újba.",
|
||||
"join_rule_upgrade_awaiting_room": "Új szoba betöltése",
|
||||
"join_rule_upgrade_required": "Fejlesztés szükséges",
|
||||
"join_rule_upgrade_sending_invites": {
|
||||
"Meghívók küldése…": "one",
|
||||
"Meghívók küldése… (%(progress)s / %(count)s)": "other"
|
||||
},
|
||||
"join_rule_upgrade_updating_spaces": {
|
||||
"Terek frissítése…": "one",
|
||||
"Terek frissítése… (%(progress)s / %(count)s)": "other"
|
||||
},
|
||||
"join_rule_upgrade_upgrading_room": "Szoba fejlesztése",
|
||||
"join_rule_world_readable_description": "A szobába való belépés jogosultságának módosítása a jövőbeli üzenetek láthatóságát is megváltoztatja.",
|
||||
"public_without_alias_warning": "Hogy hivatkozhasson erre a szobára, adjon hozzá egy címet.",
|
||||
|
|
@ -2896,9 +2775,6 @@
|
|||
"key_backup_algorithm": "Algoritmus:",
|
||||
"message_search_disable_warning": "Ha nincs engedélyezve akkor a titkosított szobák üzenetei nem jelennek meg a keresések között.",
|
||||
"message_search_disabled": "A titkosított üzenetek biztonságos helyi gyorsítótárazása, hogy megjelenhessenek a keresési találatok között.",
|
||||
"message_search_enabled": {
|
||||
"A titkosított üzenetek biztonságos helyi gyorsítótárazása, hogy megjelenhessenek a keresési találatok között, ehhez %(size)s helyet használ %(rooms)s szoba üzeneteihez.": "other"
|
||||
},
|
||||
"message_search_failed": "Az üzenetkeresés előkészítése sikertelen",
|
||||
"message_search_indexed_messages": "Indexált üzenetek:",
|
||||
"message_search_indexed_rooms": "Indexált szobák:",
|
||||
|
|
@ -2921,22 +2797,6 @@
|
|||
"sessions": {
|
||||
"best_security_note": "A legjobb biztonság érdekében ellenőrizze munkameneteit, és jelentkezzen ki minden olyan munkamenetből, amelyet már nem ismer fel vagy használ.",
|
||||
"browser": "Böngésző",
|
||||
"confirm_sign_out": {
|
||||
"Megerősítés ebből az eszközből való kijelentkezéshez": "one",
|
||||
"Megerősítés ezekből az eszközökből való kijelentkezéshez": "other"
|
||||
},
|
||||
"confirm_sign_out_body": {
|
||||
"Ezeknek a eszközöknek törlésének a megerősítéséhez kattintson a gombra lent.": "other",
|
||||
"Az eszközből való kilépés megerősítéséhez kattintson a lenti gombra.": "one"
|
||||
},
|
||||
"confirm_sign_out_continue": {
|
||||
"Eszközből való kijelentkezés": "one",
|
||||
"Eszközökből való kijelentkezés": "other"
|
||||
},
|
||||
"confirm_sign_out_sso": {
|
||||
"Az eszközből való kijelentkezéshez erősítse meg a személyazonosságát az egyszeri bejelentkezés használatával.": "one",
|
||||
"Az eszközökből való kijelentkezéshez erősítse meg a személyazonosságát az egyszeri bejelentkezés használatával.": "other"
|
||||
},
|
||||
"current_session": "Jelenlegi munkamenet",
|
||||
"desktop_session": "Asztali munkamenet",
|
||||
"details_heading": "Munkamenet-információk",
|
||||
|
|
@ -2963,9 +2823,6 @@
|
|||
"last_activity": "Utolsó tevékenység",
|
||||
"manage": "Munkamenet kezelése",
|
||||
"mobile_session": "Mobil munkamenet",
|
||||
"n_sessions_selected": {
|
||||
"%(count)s munkamenet kiválasztva": "other"
|
||||
},
|
||||
"no_inactive_sessions": "Nincs inaktív munkamenet.",
|
||||
"no_sessions": "Nincs munkamenet.",
|
||||
"no_unverified_sessions": "Nincs ellenőrizetlen munkamenet.",
|
||||
|
|
@ -2990,12 +2847,6 @@
|
|||
"sign_in_with_qr_unsupported": "A fiókszolgáltató nem támogatja",
|
||||
"sign_out": "Kijelentkezés ebből a munkamenetből",
|
||||
"sign_out_all_other_sessions": "Kijelentkezés minden munkamenetből (%(otherSessionsCount)s)",
|
||||
"sign_out_confirm_description": {
|
||||
"Biztos, hogy ki szeretne lépni %(count)s munkamenetből?": "other"
|
||||
},
|
||||
"sign_out_n_sessions": {
|
||||
"Kijelentkezés %(count)s munkamenetből": "other"
|
||||
},
|
||||
"title": "Munkamenetek",
|
||||
"unknown_session": "Ismeretlen munkamenettípus",
|
||||
"unverified_session": "Ellenőrizetlen munkamenet",
|
||||
|
|
@ -3185,10 +3036,6 @@
|
|||
"create_prompt": "Új szoba készítése",
|
||||
"dm_heading": "Közvetlen Beszélgetések",
|
||||
"error_heading": "Nem az összes kijelölt lett hozzáadva",
|
||||
"progress_text": {
|
||||
"Szobák hozzáadása…": "one",
|
||||
"Szobák hozzáadása… (%(progress)s ennyiből: %(count)s)": "other"
|
||||
},
|
||||
"space_dropdown_label": "Tér kiválasztása",
|
||||
"space_dropdown_title": "Létező szobák hozzáadása",
|
||||
"subspace_moved_note": "Terek hozzáadása elköltözött."
|
||||
|
|
@ -3271,9 +3118,6 @@
|
|||
"cant_find_person_helpful_hint": "Ha nem találja, akit keres, küldje el neki a meghívási hivatkozást.",
|
||||
"cant_find_room_helpful_hint": "Ha nem található az szoba, amelyet keresett, kérjen egy meghívót, vagy készítsen egy új szobát.",
|
||||
"copy_link_text": "Meghívó hivatkozás másolása",
|
||||
"count_of_members": {
|
||||
"%(count)s tag": "other"
|
||||
},
|
||||
"create_new_room_button": "Új szoba létrehozása",
|
||||
"failed_querying_public_rooms": "Nem sikerült lekérdezni nyilvános szobákat",
|
||||
"failed_querying_public_spaces": "Nem sikerült lekérdezni a nyilvános tereket",
|
||||
|
|
@ -3324,9 +3168,6 @@
|
|||
"threads": {
|
||||
"all_threads": "Minden üzenetszál",
|
||||
"all_threads_description": "A szobában lévő összes üzenetszál megjelenítése",
|
||||
"count_of_reply": {
|
||||
"%(count)s válasz": "other"
|
||||
},
|
||||
"empty_description": "Amikor az egérmutatót egy üzenet fölé viszi használja ezt: „%(replyInThread)s ”.",
|
||||
"empty_title": "Az üzenetszálak segítenek a különböző témájú beszélgetések figyelemmel kísérésében.",
|
||||
"error_start_thread_existing_relation": "Nem lehet üzenetszálat indítani olyan eseményről ami már rendelkezik kapcsolattal",
|
||||
|
|
@ -3342,24 +3183,10 @@
|
|||
"no_rooms_with_unread_threads": "Nincsenek még olvasatlan üzenetszálakkal rendelkező szobái."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "egy napja",
|
||||
"about_hour_ago": "egy órája",
|
||||
"about_minute_ago": "egy perce",
|
||||
"date_at_time": "%(date)s %(time)s",
|
||||
"few_seconds_ago": "néhány másodperce",
|
||||
"hours_minutes_seconds_left": "%(hours)s ó %(minutes)s p %(seconds)s mp van hátra",
|
||||
"in_about_day": "egy nap múlva",
|
||||
"in_about_hour": "egy óra múlva",
|
||||
"in_about_minute": "egy perc múlva",
|
||||
"in_few_seconds": "másodpercek múlva",
|
||||
"in_n_days": "%(num)s nap múlva",
|
||||
"in_n_hours": "%(num)s óra múlva",
|
||||
"in_n_minutes": "%(num)s perc múlva",
|
||||
"left": "Maradék idő: %(timeRemaining)s",
|
||||
"minutes_seconds_left": "%(minutes)s p %(seconds)s mp van hátra",
|
||||
"n_days_ago": "%(num)s nappal ezelőtt",
|
||||
"n_hours_ago": "%(num)s órával ezelőtt",
|
||||
"n_minutes_ago": "%(num)s perccel ezelőtt",
|
||||
"seconds_left": "%(seconds)s mp van hátra",
|
||||
"short_days": "%(value)s n",
|
||||
"short_days_hours_minutes_seconds": "%(days)s n %(hours)s ó %(minutes)s p %(seconds)s mp",
|
||||
|
|
@ -3414,11 +3241,9 @@
|
|||
"unable_to_find": "Megpróbálta betölteni a szoba megadott időpontjának megfelelő adatait, de az nem található."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Hanglejátszó",
|
||||
"error_downloading_audio": "Hiba a hang letöltésekor",
|
||||
"error_processing_audio": "Hiba a hangüzenet feldolgozásánál",
|
||||
"error_processing_voice_message": "Hiba a hangüzenet feldolgozásánál",
|
||||
"unnamed_audio": "Névtelen hang"
|
||||
"error_processing_voice_message": "Hiba a hangüzenet feldolgozásánál"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Élő földrajzi helyzet megtekintése"
|
||||
|
|
@ -3469,11 +3294,6 @@
|
|||
"location": "Megosztott egy földrajzi helyzetet: ",
|
||||
"self_location": "Megosztották a földrajzi helyzetüket: "
|
||||
},
|
||||
"m.poll": {
|
||||
"count_of_votes": {
|
||||
"%(count)s szavazat": "other"
|
||||
}
|
||||
},
|
||||
"m.poll.end": {
|
||||
"sender_ended": "%(senderName)s lezárta a szavazást"
|
||||
},
|
||||
|
|
@ -3485,14 +3305,6 @@
|
|||
"removed": "%(senderDisplayName)s törölte a szoba profilképét."
|
||||
},
|
||||
"m.room.canonical_alias": {
|
||||
"alt_added": {
|
||||
"%(senderName)s hozzáadta a szoba alternatív címeit: %(addresses)s.": "other",
|
||||
"%(senderName)s alternatív címeket adott hozzá a szobához: %(addresses)s.": "one"
|
||||
},
|
||||
"alt_removed": {
|
||||
"%(senderName)s eltávolította az alternatív címeket a szobáról: %(addresses)s.": "other",
|
||||
"%(senderName)s eltávolította az alternatív címet a szobáról: %(addresses)s.": "one"
|
||||
},
|
||||
"changed": "%(senderName)s megváltoztatta a szoba címeit.",
|
||||
"changed_alternative": "%(senderName)s megváltoztatta a szoba alternatív címeit.",
|
||||
"changed_main_and_alternative": "%(senderName)s megváltoztatta a szoba elsődleges és alternatív címeit.",
|
||||
|
|
@ -3644,9 +3456,6 @@
|
|||
"label": "%(reactors)s reagált: %(content)s",
|
||||
"tooltip_caption": "ezzel reagált: %(shortName)s"
|
||||
},
|
||||
"read_receipt_title": {
|
||||
"%(count)s ember látta": "other"
|
||||
},
|
||||
"read_receipts_label": "Olvasási visszajelzés",
|
||||
"redacted": {
|
||||
"tooltip": "Az üzenetet ekkor törölték: %(date)s"
|
||||
|
|
@ -3667,95 +3476,7 @@
|
|||
"send_state_sending": "Üzenet küldése…",
|
||||
"send_state_sent": "Üzenet elküldve",
|
||||
"summary": {
|
||||
"banned": {
|
||||
"%(count)s alkalommal lett kitiltva": "other",
|
||||
"ki lett tiltva": "one"
|
||||
},
|
||||
"banned_multiple": {
|
||||
"%(count)s alkalommal lett kitiltva": "other",
|
||||
"lett kitiltva": "one"
|
||||
},
|
||||
"changed_avatar": {
|
||||
"%(oneUser)s megváltoztatta a profilképét": "one",
|
||||
"%(oneUser)s %(count)s alkalommal megváltoztatta a profilképét": "other"
|
||||
},
|
||||
"changed_avatar_multiple": {
|
||||
"%(severalUsers)s megváltoztatta a profilképét": "one",
|
||||
"%(severalUsers)s %(count)s alkalommal megváltoztatta a profilképét": "other"
|
||||
},
|
||||
"changed_name": {
|
||||
"%(oneUser)s %(count)s alkalommal megváltoztatta a nevét": "other",
|
||||
"%(oneUser)s megváltoztatta a nevét": "one"
|
||||
},
|
||||
"changed_name_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal megváltoztatta a nevét": "other",
|
||||
"%(severalUsers)s megváltoztatta a nevét": "one"
|
||||
},
|
||||
"format": "%(nameList)s %(transitionList)s",
|
||||
"hidden_event": {
|
||||
"%(oneUser)s rejtett üzenetet küldött": "one",
|
||||
"%(oneUser)s %(count)s rejtett üzenetet küldött": "other"
|
||||
},
|
||||
"hidden_event_multiple": {
|
||||
"%(severalUsers)s rejtett üzenetet küldött": "one",
|
||||
"%(severalUsers)s %(count)s rejtett üzenetet küldött": "other"
|
||||
},
|
||||
"invite_withdrawn": {
|
||||
"%(oneUser)s meghívóit %(count)s alkalommal vonták vissza": "other",
|
||||
"%(oneUser)s meghívóit visszavonták": "one"
|
||||
},
|
||||
"invite_withdrawn_multiple": {
|
||||
"%(severalUsers)s meghívóit %(count)s alkalommal visszavonták": "other",
|
||||
"%(severalUsers)s visszavonták a meghívásukat": "one"
|
||||
},
|
||||
"invited": {
|
||||
"%(count)s alkalommal lett meghívva": "other",
|
||||
"meg lett hívva": "one"
|
||||
},
|
||||
"invited_multiple": {
|
||||
"%(count)s alkalommal lett meghívva": "other",
|
||||
"meg lett hívva": "one"
|
||||
},
|
||||
"joined": {
|
||||
"%(oneUser)s %(count)s alkalommal csatlakozott": "other",
|
||||
"%(oneUser)s csatlakozott": "one"
|
||||
},
|
||||
"joined_and_left": {
|
||||
"%(oneUser)s %(count)s alkalommal csatlakozott és távozott": "other",
|
||||
"%(oneUser)s csatlakozott és távozott": "one"
|
||||
},
|
||||
"joined_and_left_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal csatlakozott és távozott": "other",
|
||||
"%(severalUsers)s csatlakozott és távozott": "one"
|
||||
},
|
||||
"joined_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal csatlakozott": "other",
|
||||
"%(severalUsers)s csatlakozott": "one"
|
||||
},
|
||||
"kicked": {
|
||||
"eltávolítva": "one",
|
||||
"%(count)s alkalommal lett eltávolítva": "other"
|
||||
},
|
||||
"kicked_multiple": {
|
||||
"eltávolítva": "one",
|
||||
"%(count)s alkalommal lett eltávolítva": "other"
|
||||
},
|
||||
"left": {
|
||||
"%(oneUser)s %(count)s alkalommal távozott": "other",
|
||||
"%(oneUser)s távozott": "one"
|
||||
},
|
||||
"left_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal távozott": "other",
|
||||
"%(severalUsers)s távozott": "one"
|
||||
},
|
||||
"no_change": {
|
||||
"%(oneUser)s %(count)s alkalommal nem változtatott semmit": "other",
|
||||
"%(oneUser)snem változtatott semmit": "one"
|
||||
},
|
||||
"no_change_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal nem változtattak semmit": "other",
|
||||
"%(severalUsers)s nem változtattak semmit": "one"
|
||||
},
|
||||
"pinned_events": {
|
||||
"one": "%(oneUser)s megváltoztatta a szoba <a>kitűzött üzeneteit</a>",
|
||||
"other": "%(oneUser)s %(count)s alkalommal megváltoztatta a szoba <a>kitűzött üzeneteit</a>"
|
||||
|
|
@ -3763,46 +3484,6 @@
|
|||
"pinned_events_multiple": {
|
||||
"one": "%(severalUsers)s megváltoztatta a szoba <a>kitűzött üzeneteit</a>",
|
||||
"other": "%(severalUsers)s %(count)s alkalommal megváltoztatta a szoba <a>kitűzött üzeneteit</a>"
|
||||
},
|
||||
"redacted": {
|
||||
"%(oneUser)s üzenetet törölt": "one",
|
||||
"%(oneUser)s %(count)s üzenetet törölt": "other"
|
||||
},
|
||||
"redacted_multiple": {
|
||||
"%(severalUsers)s üzenetet törölt": "one",
|
||||
"%(severalUsers)s %(count)s üzenetet törölt": "other"
|
||||
},
|
||||
"rejected_invite": {
|
||||
"%(oneUser)s %(count)s alkalommal elutasította a meghívóit": "other",
|
||||
"%(oneUser)s elutasította a meghívóit": "one"
|
||||
},
|
||||
"rejected_invite_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal elutasította a meghívóit": "other",
|
||||
"%(severalUsers)s elutasította a meghívóit": "one"
|
||||
},
|
||||
"rejoined": {
|
||||
"%(oneUser)s %(count)s alkalommal távozott és újra csatlakozott": "other",
|
||||
"%(oneUser)s távozott és újra csatlakozott": "one"
|
||||
},
|
||||
"rejoined_multiple": {
|
||||
"%(severalUsers)s %(count)s alkalommal távozott és újra csatlakozott": "other",
|
||||
"%(severalUsers)s távozott és újra csatlakozott": "one"
|
||||
},
|
||||
"server_acls": {
|
||||
"%(oneUser)s megváltoztatta a kiszolgáló ACL-jeit": "one",
|
||||
"%(oneUser)s %(count)s alkalommal megváltoztatta a kiszolgáló ACL-jeit": "other"
|
||||
},
|
||||
"server_acls_multiple": {
|
||||
"%(severalUsers)s megváltoztatta a kiszolgáló ACL-jeit": "one",
|
||||
"%(severalUsers)s %(count)s alkalommal megváltoztatta a kiszolgáló ACL-jeit": "other"
|
||||
},
|
||||
"unbanned": {
|
||||
"%(count)s alkalommal lett visszaengedve": "other",
|
||||
"vissza lett engedve": "one"
|
||||
},
|
||||
"unbanned_multiple": {
|
||||
"%(count)s alkalommal lett visszaengedve": "other",
|
||||
"vissza lett engedve": "one"
|
||||
}
|
||||
},
|
||||
"thread_info_basic": "Az üzenetszálból",
|
||||
|
|
@ -3816,15 +3497,9 @@
|
|||
},
|
||||
"undecryptable_tooltip": "Ezt az üzenetet nem lehet visszafejteni",
|
||||
"url_preview": {
|
||||
"close": "Előnézet bezárása",
|
||||
"show_n_more": {
|
||||
"%(count)s további előnézet megjelenítése": "other"
|
||||
}
|
||||
"close": "Előnézet bezárása"
|
||||
}
|
||||
},
|
||||
"truncated_list_n_more": {
|
||||
"És még %(count)s...": "other"
|
||||
},
|
||||
"unsupported_browser": {
|
||||
"description": "Ha folytatja, előfordulhat, hogy egyes funkciók nem működnek, és fennáll annak a kockázata, hogy a jövőben elveszítheti adatait. Frissítse böngészőjét ennek a használatához: %(brand)s.",
|
||||
"title": "%(brand)s nem támogatja ezt a böngészőt"
|
||||
|
|
@ -3865,11 +3540,7 @@
|
|||
"not_image": "A kiválasztott fájl nem érvényes képfájl.",
|
||||
"title": "Fájlok feltöltése",
|
||||
"title_progress": "Fájlok feltöltése (%(current)s / %(total)s)",
|
||||
"upload_all_button": "Összes feltöltése",
|
||||
"upload_n_others_button": {
|
||||
"%(count)s másik fájlt feltöltése": "other",
|
||||
"%(count)s másik fájl feltöltése": "one"
|
||||
}
|
||||
"upload_all_button": "Összes feltöltése"
|
||||
},
|
||||
"user_info": {
|
||||
"admin_tools_section": "Adminisztrációs eszközök",
|
||||
|
|
@ -3907,13 +3578,6 @@
|
|||
"kick_space_warning": "Továbbra is hozzáférhetnek olyan helyekhez, ahol Ön nem adminisztrátor.",
|
||||
"promote_warning": "Nem fogja tudni visszavonni ezt a változtatást, mert a felhasználót a sajátjával azonos szintre emeli.",
|
||||
"redact": {
|
||||
"confirm_button": {
|
||||
"%(count)s db üzenet törlése": "other",
|
||||
"1 üzenet törlése": "one"
|
||||
},
|
||||
"confirm_description_1": {
|
||||
"%(count)s üzenetet készül törölni az alábbi felhasználótól: %(user)s. A művelet mindenki számára visszavonhatatlanul eltávolítja ezeket a beszélgetésekből. Biztos, hogy folytatja?": "other"
|
||||
},
|
||||
"confirm_description_2": "Ez sok üzenet esetén eltarthat egy darabig. Közben ne frissítse a klienst.",
|
||||
"confirm_keep_state_explainer": "Törölje a kijelölést ha a rendszerüzeneteket is törölni szeretné ettől a felhasználótól (például tagságváltozás, profilváltozás…)",
|
||||
"confirm_keep_state_label": "Rendszerüzenetek megtartása",
|
||||
|
|
@ -4004,9 +3668,6 @@
|
|||
"msisdn_lookup_failed": "A telefonszámot nem sikerült megtalálni",
|
||||
"msisdn_lookup_failed_description": "Hiba történt a telefonszám megkeresése során",
|
||||
"msisdn_transfer_failed": "A hívás átadása nem lehetséges",
|
||||
"n_people_joined": {
|
||||
"%(count)s személy belépett": "other"
|
||||
},
|
||||
"no_audio_input_description": "Nem található mikrofon. Ellenőrizze a beállításokat és próbálja újra.",
|
||||
"no_audio_input_title": "Nem található mikrofon",
|
||||
"no_media_perms_description": "Lehet, hogy kézileg kell engedélyeznie a(z) %(brand)s számára, hogy hozzáférjen a mikrofonjához és webkamerájához",
|
||||
|
|
|
|||
|
|
@ -100,9 +100,7 @@
|
|||
"ok": "Լավ",
|
||||
"open": "Բաց(ել)",
|
||||
"open_menu": "Բացել ընտրացանկը",
|
||||
"pause": "Դադար",
|
||||
"pin": "Քորոց",
|
||||
"play": "Միացնել",
|
||||
"proceed": "Շարունակել",
|
||||
"quote": "Մեջբերում",
|
||||
"react": "Արձագանքել",
|
||||
|
|
@ -1850,7 +1848,6 @@
|
|||
"other": "%(count)s ամրացված հաղորդագրություններ"
|
||||
},
|
||||
"limits": {
|
||||
"one": "",
|
||||
"other": "Դուք կարող եք ամրացնել միայն մինչև%(count)s վիջեթներ"
|
||||
},
|
||||
"menu": "Բացել մենյուն",
|
||||
|
|
@ -3299,24 +3296,10 @@
|
|||
"no_rooms_with_unread_threads": "Դուք դեռ չունեք սենյակներ, որտեղ կան չկարդացած թեմաներ։"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "մոտ մեկ օր առաջ",
|
||||
"about_hour_ago": "մոտ մեկ ժամ առաջ",
|
||||
"about_minute_ago": "մոտ մեկ րոպե առաջ",
|
||||
"date_at_time": "%(date)s ժամը %(time)s",
|
||||
"few_seconds_ago": "մի քանի վայրկյան առաջ",
|
||||
"hours_minutes_seconds_left": "Մնաց %(hours)sժ %(minutes)sր %(seconds)sվ",
|
||||
"in_about_day": "մոտ մեկ օր անց",
|
||||
"in_about_hour": "մոտ մեկ ժամ անց",
|
||||
"in_about_minute": "մոտ մեկ րոպե անց",
|
||||
"in_few_seconds": "մի քանի վայրկյան անց",
|
||||
"in_n_days": "%(num)s օր անց",
|
||||
"in_n_hours": "%(num)s ժամ անց",
|
||||
"in_n_minutes": "%(num)s րոպեներ անց",
|
||||
"left": "%(timeRemaining)s մնաց",
|
||||
"minutes_seconds_left": "Մնաց %(minutes)sր %(seconds)sվ",
|
||||
"n_days_ago": "%(num)s օր առաջ",
|
||||
"n_hours_ago": "%(num)s ժամ առաջ",
|
||||
"n_minutes_ago": "%(num)s րոպե առաջ",
|
||||
"seconds_left": "Մնաց %(seconds)sվ",
|
||||
"short_days": "%(value)sօր",
|
||||
"short_days_hours_minutes_seconds": "%(days)sօր %(hours)sժ %(minutes)sր %(seconds)sվ",
|
||||
|
|
@ -3371,11 +3354,9 @@
|
|||
"unable_to_find": "Փորձեցինք բեռնել այս սենյակի ժամանակագրության որոշակի կետ, բայց չկարողացանք գտնել այն։"
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Աուդիո նվագարկիչ",
|
||||
"error_downloading_audio": "Աուդիո ներբեռնման սխալ",
|
||||
"error_processing_audio": "Ձայնային հաղորդագրության մշակման սխալ",
|
||||
"error_processing_voice_message": "Ձայնային հաղորդագրության մշակման սխալ",
|
||||
"unnamed_audio": "Անանուն աուդիո"
|
||||
"error_processing_voice_message": "Ձայնային հաղորդագրության մշակման սխալ"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Դիտել կենդանի գտնվելու վայրը"
|
||||
|
|
@ -3783,7 +3764,6 @@
|
|||
}
|
||||
},
|
||||
"truncated_list_n_more": {
|
||||
"one": "",
|
||||
"other": "Եվ ևս %(հաշվարկ)s..."
|
||||
},
|
||||
"unsupported_browser": {
|
||||
|
|
|
|||
|
|
@ -99,9 +99,7 @@
|
|||
"ok": "Oke",
|
||||
"open": "Buka",
|
||||
"open_menu": "Buka menu",
|
||||
"pause": "Jeda",
|
||||
"pin": "Sematkan",
|
||||
"play": "Mainkan",
|
||||
"proceed": "Lanjut",
|
||||
"quote": "Kutip",
|
||||
"react": "Bereaksi",
|
||||
|
|
@ -3359,24 +3357,10 @@
|
|||
"no_rooms_with_unread_threads": "Anda belum memiliki ruangan dengan utas yang belum dibaca."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "1 hari yang lalu",
|
||||
"about_hour_ago": "1 jam yang lalu",
|
||||
"about_minute_ago": "1 menit yang lalu",
|
||||
"date_at_time": "%(date)s pada %(time)s",
|
||||
"few_seconds_ago": "beberapa detik yang lalu",
|
||||
"hours_minutes_seconds_left": "Sisa %(hours)sj %(minutes)sm %(seconds)sd",
|
||||
"in_about_day": "1 hari dari sekarang",
|
||||
"in_about_hour": "1 jam dari sekarang",
|
||||
"in_about_minute": "1 menit dari sekarang",
|
||||
"in_few_seconds": "beberapa detik dari sekarang",
|
||||
"in_n_days": "%(num)s hari dari sekarang",
|
||||
"in_n_hours": "%(num)s jam dari sekarang",
|
||||
"in_n_minutes": "%(num)s dari sekarang",
|
||||
"left": "%(timeRemaining)sd lagi",
|
||||
"minutes_seconds_left": "Sisa %(minutes)sm %(seconds)sd",
|
||||
"n_days_ago": "%(num)s hari yang lalu",
|
||||
"n_hours_ago": "%(num)s jam yang lalu",
|
||||
"n_minutes_ago": "%(num)s menit yang lalu",
|
||||
"seconds_left": "%(seconds)sd lagi",
|
||||
"short_days": "%(value)sh",
|
||||
"short_days_hours_minutes_seconds": "%(days)sh %(hours)sj %(minutes)sm %(seconds)sd",
|
||||
|
|
@ -3431,11 +3415,9 @@
|
|||
"unable_to_find": "Mencoba memuat titik spesifik di lini masa ruangan ini, tetapi tidak dapat menemukannya."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "Pemutar audio",
|
||||
"error_downloading_audio": "Terjadi kesalahan mengunduh audio",
|
||||
"error_processing_audio": "Terjadi kesalahan mengolah pesan suara",
|
||||
"error_processing_voice_message": "Terjadi kesalahan mengolah pesan suara",
|
||||
"unnamed_audio": "Audio tidak dinamai"
|
||||
"error_processing_voice_message": "Terjadi kesalahan mengolah pesan suara"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Tampilkan lokasi langsung"
|
||||
|
|
|
|||
|
|
@ -79,9 +79,7 @@
|
|||
"no": "Nei",
|
||||
"ok": "Í lagi",
|
||||
"open": "Opna",
|
||||
"pause": "Bið",
|
||||
"pin": "Pinni",
|
||||
"play": "Spila",
|
||||
"quote": "Tilvitnun",
|
||||
"react": "Bregðast við",
|
||||
"refresh": "Endurlesa",
|
||||
|
|
@ -2301,24 +2299,10 @@
|
|||
"show_thread_filter": "Sýna:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "fyrir um degi síðan",
|
||||
"about_hour_ago": "fyrir um klukkustund síðan",
|
||||
"about_minute_ago": "fyrir um það bil mínútu síðan",
|
||||
"date_at_time": "%(date)s kl. %(time)s",
|
||||
"few_seconds_ago": "fyrir örfáum sekúndum síðan",
|
||||
"hours_minutes_seconds_left": "%(hours)sk %(minutes)sm %(seconds)ss eftir",
|
||||
"in_about_day": "eftir um það bil einn dag",
|
||||
"in_about_hour": "eftir um það bil klukkustund",
|
||||
"in_about_minute": "eftir um það bil mínútu",
|
||||
"in_few_seconds": "eftir nokkrar sekúndur",
|
||||
"in_n_days": "eftir %(num)s daga",
|
||||
"in_n_hours": "eftir %(num)s klukkustundir",
|
||||
"in_n_minutes": "eftir %(num)s mínútur",
|
||||
"left": "%(timeRemaining)s eftir",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss eftir",
|
||||
"n_days_ago": "fyrir %(num)s dögum síðan",
|
||||
"n_hours_ago": "fyrir %(num)s klukkustundum síðan",
|
||||
"n_minutes_ago": "fyrir %(num)s mínútum síðan",
|
||||
"seconds_left": "%(seconds)ssek eftir",
|
||||
"short_days_hours_minutes_seconds": "%(days)sd %(hours)sk %(minutes)sm %(seconds)ss",
|
||||
"short_hours": "%(value)sklst",
|
||||
|
|
@ -2357,8 +2341,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Villa við að sækja hljóð",
|
||||
"error_processing_audio": "Villa við meðhöndlun hljóðskilaboða",
|
||||
"error_processing_voice_message": "Villa við meðhöndlun talskilaboða",
|
||||
"unnamed_audio": "Nafnlaust hljóð"
|
||||
"error_processing_voice_message": "Villa við meðhöndlun talskilaboða"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Skoða staðsetningu í rauntíma"
|
||||
|
|
|
|||
|
|
@ -86,9 +86,7 @@
|
|||
"no": "No",
|
||||
"ok": "OK",
|
||||
"open": "Apri",
|
||||
"pause": "Pausa",
|
||||
"pin": "Spillo",
|
||||
"play": "Riproduci",
|
||||
"proceed": "Procedi",
|
||||
"quote": "Cita",
|
||||
"react": "Reagisci",
|
||||
|
|
@ -2837,24 +2835,10 @@
|
|||
"header": "Attività delle conversazioni"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "circa un giorno fa",
|
||||
"about_hour_ago": "circa un'ora fa",
|
||||
"about_minute_ago": "circa un minuto fa",
|
||||
"date_at_time": "%(date)s alle %(time)s",
|
||||
"few_seconds_ago": "pochi secondi fa",
|
||||
"hours_minutes_seconds_left": "%(hours)so %(minutes)sm %(seconds)ss rimasti",
|
||||
"in_about_day": "circa un giorno da adesso",
|
||||
"in_about_hour": "circa un'ora da adesso",
|
||||
"in_about_minute": "circa un minuto da adesso",
|
||||
"in_few_seconds": "pochi secondi da adesso",
|
||||
"in_n_days": "%(num)s giorni da adesso",
|
||||
"in_n_hours": "%(num)s ore da adesso",
|
||||
"in_n_minutes": "%(num)s minuti da adesso",
|
||||
"left": "%(timeRemaining)s rimasti",
|
||||
"minutes_seconds_left": "%(minutes)sm %(seconds)ss rimasti",
|
||||
"n_days_ago": "%(num)s giorni fa",
|
||||
"n_hours_ago": "%(num)s ore fa",
|
||||
"n_minutes_ago": "%(num)s minuti fa",
|
||||
"seconds_left": "%(seconds)ss rimanenti",
|
||||
"short_days": "%(value)sg",
|
||||
"short_days_hours_minutes_seconds": "%(days)sg %(hours)so %(minutes)sm %(seconds)ss",
|
||||
|
|
@ -2899,8 +2883,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "Errore di scaricamento dell'audio",
|
||||
"error_processing_audio": "Errore elaborazione messaggio audio",
|
||||
"error_processing_voice_message": "Errore di elaborazione del vocale",
|
||||
"unnamed_audio": "Audio senza nome"
|
||||
"error_processing_voice_message": "Errore di elaborazione del vocale"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "Vedi posizione in tempo reale"
|
||||
|
|
|
|||
|
|
@ -78,9 +78,7 @@
|
|||
"next": "次へ",
|
||||
"no": "いいえ",
|
||||
"open": "開く",
|
||||
"pause": "一時停止",
|
||||
"pin": "ピン",
|
||||
"play": "再生",
|
||||
"quote": "引用",
|
||||
"react": "リアクション",
|
||||
"refresh": "再読み込み",
|
||||
|
|
@ -2582,24 +2580,10 @@
|
|||
"show_thread_filter": "表示:"
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "約1日前",
|
||||
"about_hour_ago": "約1時間前",
|
||||
"about_minute_ago": "約1分前",
|
||||
"date_at_time": "%(date)s %(time)s",
|
||||
"few_seconds_ago": "数秒前",
|
||||
"hours_minutes_seconds_left": "残り%(hours)s時間%(minutes)s分%(seconds)s秒",
|
||||
"in_about_day": "今から約1日前",
|
||||
"in_about_hour": "今から約1時間前",
|
||||
"in_about_minute": "今から約1分前",
|
||||
"in_few_seconds": "今から数秒前",
|
||||
"in_n_days": "今から%(num)s日前",
|
||||
"in_n_hours": "今から%(num)s時間前",
|
||||
"in_n_minutes": "今から%(num)s分前",
|
||||
"left": "残り%(timeRemaining)s",
|
||||
"minutes_seconds_left": "残り%(minutes)s分%(seconds)s秒",
|
||||
"n_days_ago": "%(num)s日前",
|
||||
"n_hours_ago": "%(num)s時間前",
|
||||
"n_minutes_ago": "%(num)s分前",
|
||||
"seconds_left": "残り%(seconds)s秒",
|
||||
"short_days": "%(value)s日",
|
||||
"short_days_hours_minutes_seconds": "%(days)s日%(hours)s時%(minutes)s分%(seconds)s秒",
|
||||
|
|
@ -2643,8 +2627,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "音声をダウンロードする際にエラーが発生しました",
|
||||
"error_processing_audio": "音声メッセージを処理する際にエラーが発生しました",
|
||||
"error_processing_voice_message": "音声メッセージを処理する際にエラーが発生しました",
|
||||
"unnamed_audio": "名前のない音声"
|
||||
"error_processing_voice_message": "音声メッセージを処理する際にエラーが発生しました"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "位置情報(ライブ)を表示"
|
||||
|
|
|
|||
|
|
@ -67,9 +67,7 @@
|
|||
"next": "შემდეგი",
|
||||
"no": "არა",
|
||||
"ok": "OK",
|
||||
"pause": "პაუზა",
|
||||
"pin": "$",
|
||||
"play": "დაკვრა",
|
||||
"proceed": "განაგრძეთ",
|
||||
"quote": "ციტირება",
|
||||
"react": "რეაგირება",
|
||||
|
|
@ -2194,24 +2192,10 @@
|
|||
},
|
||||
"thread_view_back_action_label": "თემაში დაბრუნება",
|
||||
"time": {
|
||||
"about_day_ago": "დაახლოებით ერთი დღის წინ",
|
||||
"about_hour_ago": "დაახლოებით ერთი საათის წინ",
|
||||
"about_minute_ago": "დაახლოებით ერთი წუთის წინ",
|
||||
"date_at_time": "%(date)s ზე %(time)s",
|
||||
"few_seconds_ago": "რამდენიმე წამის წინ",
|
||||
"hours_minutes_seconds_left": "%(hours)sს %(minutes)sწთ %(seconds)sწმ დარჩა",
|
||||
"in_about_day": "დაახლოებით ერთი დღის შემდეგ",
|
||||
"in_about_hour": "დაახლოებით ერთი საათის შემდეგ",
|
||||
"in_about_minute": "დაახლოებით ერთი წუთის შემდეგ",
|
||||
"in_few_seconds": "რამდენიმე წამის შემდეგ",
|
||||
"in_n_days": "%(num)sდღეებიდან",
|
||||
"in_n_hours": "%(num)sსაათის შემდეგ",
|
||||
"in_n_minutes": "%(num)sწუთის შემდეგ",
|
||||
"left": "%(timeRemaining)sდატოვა",
|
||||
"minutes_seconds_left": "%(minutes)sწთ %(seconds)sწმ დარჩა",
|
||||
"n_days_ago": "%(num)sდღის წინ",
|
||||
"n_hours_ago": "%(num)sსაათის წინ",
|
||||
"n_minutes_ago": "%(num)sწუთის წინ",
|
||||
"seconds_left": "%(seconds)sწმ დარჩა",
|
||||
"short_days": "%(value)sდ",
|
||||
"short_days_hours_minutes_seconds": "%(days)sდ%(hours)s თ%(minutes)s მ%(seconds)s ს",
|
||||
|
|
@ -2255,8 +2239,7 @@
|
|||
"m.audio": {
|
||||
"error_downloading_audio": "შეცდომა აუდიოს ჩამოტვირთვისას",
|
||||
"error_processing_audio": "შეცდომა აუდიო შეტყობინების დამუშავებისას",
|
||||
"error_processing_voice_message": "შეცდომა ხმოვანი შეტყობინების დამუშავებისას",
|
||||
"unnamed_audio": "უსახელო აუდიო"
|
||||
"error_processing_voice_message": "შეცდომა ხმოვანი შეტყობინების დამუშავებისას"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": ""
|
||||
|
|
|
|||
|
|
@ -3,14 +3,6 @@
|
|||
"emoji_picker": "이모지 선택",
|
||||
"jump_first_invite": "첫 초대로 건너뜁니다.",
|
||||
"message_composer": "메세지 작성자",
|
||||
"n_unread_messages": {
|
||||
"%(count)s개의 읽지 않은 메시지.": "other",
|
||||
"1개의 읽지 않은 메시지.": "one"
|
||||
},
|
||||
"n_unread_messages_mentions": {
|
||||
"언급을 포함한 %(count)s개의 읽지 않은 메시지.": "other",
|
||||
"1개의 읽지 않은 언급.": "one"
|
||||
},
|
||||
"recent_rooms": "최근 방",
|
||||
"room_messsage_not_sent": "%(roomName)s에 미발송 메시지가 있는 방을 엽니다.",
|
||||
"room_n_unread_invite": "공개 방 %(roomName)s에 초대 되었습니다.",
|
||||
|
|
@ -98,9 +90,7 @@
|
|||
"ok": "네",
|
||||
"open": "열기",
|
||||
"open_menu": "메뉴 열기",
|
||||
"pause": "일시중지",
|
||||
"pin": "핀",
|
||||
"play": "재생",
|
||||
"proceed": "진행",
|
||||
"quote": "인용",
|
||||
"react": "리액션",
|
||||
|
|
@ -468,10 +458,6 @@
|
|||
"advanced": "고급",
|
||||
"all_chats": "모든 채팅",
|
||||
"analytics": "정보 분석",
|
||||
"and_n_others": {
|
||||
"외 한 명...": "one",
|
||||
"외 %(count)s명...": "other"
|
||||
},
|
||||
"appearance": "모습",
|
||||
"application": "애플리케이션",
|
||||
"are_you_sure": "확신합니까?",
|
||||
|
|
@ -1417,10 +1403,6 @@
|
|||
"inviting_user_and_n_others": {
|
||||
"other": "%(user)s 및 다른 %(count)s명 초대 중"
|
||||
},
|
||||
"items_and_n_others": {
|
||||
"<Items/>님 외 한 명": "one",
|
||||
"<Items/>님 외 %(count)s명": "other"
|
||||
},
|
||||
"keyboard": {
|
||||
"activate_button": "선택한 버튼 활성화",
|
||||
"alt": "Alt",
|
||||
|
|
@ -2105,9 +2087,6 @@
|
|||
"some_messages_not_sent": "일부 메시지가 전송되지 않았습니다"
|
||||
},
|
||||
"unknown_status_code_for_timeline_jump": "알 수 없는 상태 코드",
|
||||
"unread_notifications_predecessor": {
|
||||
"이 방의 이전 버전에서 읽지 않은 %(count)s개의 알림이 있습니다.": "one"
|
||||
},
|
||||
"upgrade_error_description": "서버가 선택한 방 버전을 지원하는지 확인한 뒤에 다시 시도해주세요.",
|
||||
"upgrade_error_title": "방 업그레이드 오류",
|
||||
"upgrade_warning_bar": "이 방을 업그레이드하면 현재 방의 인스턴스는 문을 닫고 같은 이름의 업그레이드된 방을 만듭니다.",
|
||||
|
|
@ -2115,9 +2094,6 @@
|
|||
"upgrade_warning_bar_unstable": "이 방은 방 버전 <roomVersion />에서 실행 중이고, 이 홈서버가 <i>불안정</i>으로 표시됩니다.",
|
||||
"upgrade_warning_bar_upgraded": "이 방은 이미 업그레이드됬습니다.",
|
||||
"upload": {
|
||||
"uploading_multiple_file": {
|
||||
"%(filename)s 외 %(count)s개를 올리는 중": "other"
|
||||
},
|
||||
"uploading_single_file": "%(filename)s을(를) 올리는 중"
|
||||
},
|
||||
"video_room": "이 채팅방은 영상채팅방입니다",
|
||||
|
|
@ -2186,9 +2162,6 @@
|
|||
},
|
||||
"room_options": "채팅방 옵션",
|
||||
"show_less": "간단히 표시",
|
||||
"show_n_more": {
|
||||
"%(count)s개 더 보기": "other"
|
||||
},
|
||||
"show_previews": "메시지 미리 보기 표시",
|
||||
"sort": "정렬",
|
||||
"sort_by": "정렬 기준",
|
||||
|
|
@ -3330,24 +3303,10 @@
|
|||
"no_rooms_with_unread_threads": "아직 읽지 않은 스레드가 있는 방이 없습니다."
|
||||
},
|
||||
"time": {
|
||||
"about_day_ago": "약 1일 전",
|
||||
"about_hour_ago": "약 1 시간 전",
|
||||
"about_minute_ago": "약 1분 전",
|
||||
"date_at_time": "%(date)s, %(time)s",
|
||||
"few_seconds_ago": "몇 초 전",
|
||||
"hours_minutes_seconds_left": "남은 시간: %(hours)s시간 %(minutes)s분 %(seconds)s초",
|
||||
"in_about_day": "하루 정도 후",
|
||||
"in_about_hour": "지금부터 한 시간 정도 후에",
|
||||
"in_about_minute": "지금부터 약 1분 후",
|
||||
"in_few_seconds": "몇 초 후",
|
||||
"in_n_days": "지금부터 %(num)s 일 후에",
|
||||
"in_n_hours": "지금부터 %(num)s 시간 후",
|
||||
"in_n_minutes": "지금부터 %(num)s분 후",
|
||||
"left": "%(timeRemaining)s 남음",
|
||||
"minutes_seconds_left": "남은 시간: %(minutes)s분 %(seconds)s초",
|
||||
"n_days_ago": "%(num)s일 전",
|
||||
"n_hours_ago": "%(num)s 시간 전",
|
||||
"n_minutes_ago": "%(num)s분 전",
|
||||
"seconds_left": "남은 시간: %(seconds)s초",
|
||||
"short_days": "%(value)s일",
|
||||
"short_days_hours_minutes_seconds": "%(days)s일 %(hours)s시간 %(minutes)s분 %(seconds)s초",
|
||||
|
|
@ -3402,11 +3361,9 @@
|
|||
"unable_to_find": "이 방의 타임라인에서 특정 시점을 불러오려고 했지만, 찾을 수 없었습니다."
|
||||
},
|
||||
"m.audio": {
|
||||
"audio_player": "오디오 플레이어",
|
||||
"error_downloading_audio": "오디오 다운로드 중 오류 발생",
|
||||
"error_processing_audio": "오디오 메시지 처리 중 오류 발생",
|
||||
"error_processing_voice_message": "음성 메시지 처리 중 오류 발생",
|
||||
"unnamed_audio": "이름 없는 오디오"
|
||||
"error_processing_voice_message": "음성 메시지 처리 중 오류 발생"
|
||||
},
|
||||
"m.beacon_info": {
|
||||
"view_live_location": "실시간 위치 보기"
|
||||
|
|
@ -3654,28 +3611,12 @@
|
|||
"send_state_sending": "메시지를 보내는 중…",
|
||||
"send_state_sent": "귀하의 메시지가 전송되었습니다",
|
||||
"summary": {
|
||||
"banned": {
|
||||
"님이 %(count)s번 출입 금지 당했습니다": "other",
|
||||
"님이 출입 금지 당했습니다": "one"
|
||||
},
|
||||
"banned_multiple": {
|
||||
"이 %(count)s번 출입 금지 당했습니다": "other",
|
||||
"이 출입 금지 당했습니다": "one"
|
||||
},
|
||||
"changed_avatar": {
|
||||
"other": "%(oneUser)s님이 프로필 사진을 %(count)s회 변경했습니다"
|
||||
},
|
||||
"changed_avatar_multiple": {
|
||||
"other": "%(severalUsers)s님이 프로필 사진을 %(count)s회 변경했습니다"
|
||||
},
|
||||
"changed_name": {
|
||||
"%(oneUser)s님이 이름을 %(count)s번 바꿨습니다": "other",
|
||||
"%(oneUser)s님이 이름을 바꿨습니다": "one"
|
||||
},
|
||||
"changed_name_multiple": {
|
||||
"%(severalUsers)s이 이름을 %(count)s번 바꿨습니다": "other",
|
||||
"%(severalUsers)s이 이름을 바꿨습니다": "one"
|
||||
},
|
||||
"format": "%(nameList)s %(transitionList)s",
|
||||
"hidden_event": {
|
||||
"other": "%(oneUser)s님이 숨겨진 메시지 %(count)s개를 보냈습니다"
|
||||
|
|
@ -3683,60 +3624,12 @@
|
|||
"hidden_event_multiple": {
|
||||
"other": "%(severalUsers)s님이 숨겨진 메시지 %(count)s개를 보냈습니다"
|
||||
},
|
||||
"invite_withdrawn": {
|
||||
"%(oneUser)s님이 초대를 %(count)s번 취소했습니다": "other",
|
||||
"%(oneUser)s님이 초대를 취소했습니다": "one"
|
||||
},
|
||||
"invite_withdrawn_multiple": {
|
||||
"%(severalUsers)s이 초대를 %(count)s번 취소했습니다": "other",
|
||||
"%(severalUsers)s이 초대를 취소했습니다": "one"
|
||||
},
|
||||
"invited": {
|
||||
"님이 초대받았습니다": "one",
|
||||
"님이 %(count)s번 초대받았습니다": "other"
|
||||
},
|
||||
"invited_multiple": {
|
||||
"%(count)s번 초대했습니다": "other",
|
||||
"초대했습니다": "one"
|
||||
},
|
||||
"joined": {
|
||||
"%(oneUser)s님이 %(count)s번 참여했습니다": "other",
|
||||
"%(oneUser)s님이 참여했습니다": "one"
|
||||
},
|
||||
"joined_and_left": {
|
||||
"%(oneUser)s님이 %(count)s번 참여하고 떠났습니다": "other",
|
||||
"%(oneUser)s님이 참여하고 떠났습니다": "one"
|
||||
},
|
||||
"joined_and_left_multiple": {
|
||||
"%(severalUsers)s님이 %(count)s번 참여하고 떠났습니다": "other",
|
||||
"%(severalUsers)s님이 참여하고 떠났습니다": "one"
|
||||
},
|
||||
"joined_multiple": {
|
||||
"%(severalUsers)s님이 참여했습니다": "one",
|
||||
"%(severalUsers)s이 %(count)s번 참여했습니다": "other"
|
||||
},
|
||||
"kicked": {
|
||||
"other": "%(count)s회 제거됨"
|
||||
},
|
||||
"kicked_multiple": {
|
||||
"other": "%(count)s회 제거됨"
|
||||
},
|
||||
"left": {
|
||||
"%(oneUser)s님이 %(count)s번 떠났습니다": "other",
|
||||
"%(oneUser)s님이 떠났습니다": "one"
|
||||
},
|
||||
"left_multiple": {
|
||||
"%(severalUsers)s이 %(count)s번 떠났습니다": "other",
|
||||
"%(severalUsers)s이 떠났습니다": "one"
|
||||
},
|
||||
"no_change": {
|
||||
"%(oneUser)s님이 %(count)s번 변경 사항을 되돌렸습니다": "other",
|
||||
"%(oneUser)s님이 변경 사항을 되돌렸습니다": "one"
|
||||
},
|
||||
"no_change_multiple": {
|
||||
"%(severalUsers)s이 %(count)s번 변경 사항을 되돌렸습니다": "other",
|
||||
"%(severalUsers)s이 변경 사항을 되돌렸습니다": "one"
|
||||
},
|
||||
"pinned_events": {
|
||||
"other": "%(oneUser)s님이 이 채팅방의 <a>고정된 메시지</a>를 %(count)s회 변경했습니다"
|
||||
},
|
||||
|
|
@ -3749,22 +3642,6 @@
|
|||
"redacted_multiple": {
|
||||
"other": "%(severalUsers)s님이 메시지 %(count)s개를 삭제했습니다"
|
||||
},
|
||||
"rejected_invite": {
|
||||
"%(oneUser)s님이 초대를 %(count)s번 거절했습니다": "other",
|
||||
"%(oneUser)s님이 초대를 거절했습니다": "one"
|
||||
},
|
||||
"rejected_invite_multiple": {
|
||||
"%(severalUsers)s이 초대를 거절했습니다": "one",
|
||||
"%(severalUsers)s이 초대를 %(count)s번 거절했습니다": "other"
|
||||
},
|
||||
"rejoined": {
|
||||
"%(oneUser)s님이 %(count)s번 떠나고 다시 참여했습니다": "other",
|
||||
"%(oneUser)s님이 떠나고 다시 참여했습니다": "one"
|
||||
},
|
||||
"rejoined_multiple": {
|
||||
"%(severalUsers)s님이 떠나고 다시 참여했습니다": "one",
|
||||
"%(severalUsers)s님이 %(count)s번 떠나고 다시 참여했습니다": "other"
|
||||
},
|
||||
"server_acls": {
|
||||
"other": "%(oneUser)s님이 서버 ACL을 %(count)s회 변경했습니다."
|
||||
},
|
||||
|
|
@ -3780,10 +3657,6 @@
|
|||
},
|
||||
"thread_info_basic": "한 스레드에서",
|
||||
"typing_indicator": {
|
||||
"more_users": {
|
||||
"%(names)s 외 %(count)s명이 적고 있습니다 …": "other",
|
||||
"%(names)s 외 한 명이 적고 있습니다 …": "one"
|
||||
},
|
||||
"one_user": "%(displayName)s님이 적고 있습니다 …",
|
||||
"two_users": "%(names)s님과 %(lastPerson)s님이 적고 있습니다 …"
|
||||
},
|
||||
|
|
@ -3795,9 +3668,6 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"truncated_list_n_more": {
|
||||
"%(count)s개 더...": "other"
|
||||
},
|
||||
"unsupported_browser": {
|
||||
"description": "계속 진행할 경우 일부 기능이 작동하지 않을 수 있으며, 향후 데이터 손실 위험이 있습니다. %(brand)s 을 계속 사용하려면 브라우저를 업데이트하십시오.",
|
||||
"title": "%(brand)s 이 브라우저를 지원하지 않습니다"
|
||||
|
|
@ -3838,10 +3708,7 @@
|
|||
"not_image": "선택하신 파일은 유효한 이미지 파일이 아닙니다.",
|
||||
"title": "파일 업로드",
|
||||
"title_progress": "파일 업로드 (총 %(total)s개 중 %(current)s개)",
|
||||
"upload_all_button": "전부 업로드",
|
||||
"upload_n_others_button": {
|
||||
"%(count)s개의 다른 파일 업로드": "one"
|
||||
}
|
||||
"upload_all_button": "전부 업로드"
|
||||
},
|
||||
"user_info": {
|
||||
"admin_tools_section": "관리자 도구",
|
||||
|
|
@ -3879,10 +3746,6 @@
|
|||
"kick_space_warning": "관리자가 아닌 항목에는 여전히 접근할 수 있습니다.",
|
||||
"promote_warning": "사용자를 자신과 같은 권한 등급으로 올리는 것은 취소할 수 없습니다.",
|
||||
"redact": {
|
||||
"confirm_button": {
|
||||
"%(count)s개의 메시지 삭제": "other",
|
||||
"1개의 메시지 삭제": "one"
|
||||
},
|
||||
"confirm_description_1": {
|
||||
"other": "%(user)s님이 작성한 %(count)s개의 메시지를 삭제하려고 합니다. 이 작업은 되돌릴 수 없으며, 대화에 참여한 모든 사용자에게서 해당 메시지가 영구적으로 삭제됩니다. 계속하시겠습니까?"
|
||||
},
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue