Merge branch 'develop' of https://github.com/vector-im/riot-web into rxl881/visualCue

pull/5573/head
Richard Lewis 2017-11-10 16:22:33 +00:00
commit 83373bcf6e
125 changed files with 15083 additions and 1379 deletions

View File

@ -1,3 +1,162 @@
Changes in [0.12.7](https://github.com/vector-im/riot-web/releases/tag/v0.12.7) (2017-10-16)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.7-rc.3...v0.12.7)
* Released versions of react-sdk & js-sdk
Changes in [0.12.7-rc.3](https://github.com/vector-im/riot-web/releases/tag/v0.12.7-rc.3) (2017-10-13)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.7-rc.2...v0.12.7-rc.3)
* Hide the join group button
[\#5275](https://github.com/vector-im/riot-web/pull/5275)
Changes in [0.12.7-rc.2](https://github.com/vector-im/riot-web/releases/tag/v0.12.7-rc.2) (2017-10-13)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.7-rc.1...v0.12.7-rc.2)
Changes in [0.12.7-rc.1](https://github.com/vector-im/riot-web/releases/tag/v0.12.7-rc.1) (2017-10-13)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.6...v0.12.7-rc.1)
* switch to new logos, and use import rather than VAR
[\#5203](https://github.com/vector-im/riot-web/pull/5203)
* Clarify what an integrations server is
[\#5266](https://github.com/vector-im/riot-web/pull/5266)
* Update from Weblate.
[\#5269](https://github.com/vector-im/riot-web/pull/5269)
* Remove trailing comma in JSON
[\#5167](https://github.com/vector-im/riot-web/pull/5167)
* Added default_federate property
[\#3849](https://github.com/vector-im/riot-web/pull/3849)
* CSS for greying out login form
[\#5197](https://github.com/vector-im/riot-web/pull/5197)
* Fix bug that made sub list placeholders not show for ILAG etc.
[\#5164](https://github.com/vector-im/riot-web/pull/5164)
* Factor out EditableItemList component from AliasSettings
[\#5161](https://github.com/vector-im/riot-web/pull/5161)
* Mark and remove some translations
[\#5110](https://github.com/vector-im/riot-web/pull/5110)
* CSS for "remove" button on GroupRoomTile
[\#5141](https://github.com/vector-im/riot-web/pull/5141)
* Create basic icon for the GroupRoomList tab and adding rooms to groups
[\#5140](https://github.com/vector-im/riot-web/pull/5140)
* Add button to get to MyGroups
[\#5131](https://github.com/vector-im/riot-web/pull/5131)
* Remove `key` prop pass-thru on HeaderButton
[\#5137](https://github.com/vector-im/riot-web/pull/5137)
* Implement "Add room to group" feature
[\#5125](https://github.com/vector-im/riot-web/pull/5125)
* Add Jitsi screensharing support in electron app
[\#4967](https://github.com/vector-im/riot-web/pull/4967)
* Refactor right panel header buttons
[\#5117](https://github.com/vector-im/riot-web/pull/5117)
* CSS for publicity status & toggle button
[\#5104](https://github.com/vector-im/riot-web/pull/5104)
* CSS for "X" in top right of features users/rooms
[\#5103](https://github.com/vector-im/riot-web/pull/5103)
* Include Finnish translation
[\#5051](https://github.com/vector-im/riot-web/pull/5051)
* Redesign membership section of GroupView
[\#5096](https://github.com/vector-im/riot-web/pull/5096)
* Make --config accept globs
[\#5090](https://github.com/vector-im/riot-web/pull/5090)
* CSS for GroupView: Add a User
[\#5093](https://github.com/vector-im/riot-web/pull/5093)
* T3chguy/devtools 1
[\#5074](https://github.com/vector-im/riot-web/pull/5074)
* Alter opacity for flair
[\#5085](https://github.com/vector-im/riot-web/pull/5085)
* Fix ugly integ button
[\#5082](https://github.com/vector-im/riot-web/pull/5082)
* Group Membership UI
[\#4830](https://github.com/vector-im/riot-web/pull/4830)
Changes in [0.12.6](https://github.com/vector-im/riot-web/releases/tag/v0.12.6) (2017-09-21)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.5...v0.12.6)
* Use matrix-js-sdk v0.8.4 to fix build
Changes in [0.12.5](https://github.com/vector-im/riot-web/releases/tag/v0.12.5) (2017-09-21)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.4...v0.12.5)
* Use react-sdk v0.10.5 to fix build
Changes in [0.12.4](https://github.com/vector-im/riot-web/releases/tag/v0.12.4) (2017-09-20)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.4-rc.1...v0.12.4)
* No changes
Changes in [0.12.4-rc.1](https://github.com/vector-im/riot-web/releases/tag/v0.12.4-rc.1) (2017-09-19)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.3...v0.12.4-rc.1)
* Fix test for new behaviour of 'joining' flag
[\#5053](https://github.com/vector-im/riot-web/pull/5053)
* fix really dumb blunder/typo preventing system from going to sleep.
[\#5080](https://github.com/vector-im/riot-web/pull/5080)
* T3chguy/devtools
[\#4735](https://github.com/vector-im/riot-web/pull/4735)
* CSS for unignore button in UserSettings
[\#5042](https://github.com/vector-im/riot-web/pull/5042)
* Fix alias on home page for identity room
[\#5044](https://github.com/vector-im/riot-web/pull/5044)
* generic contextual menu for tooltip/responses
[\#4989](https://github.com/vector-im/riot-web/pull/4989)
* Update from Weblate.
[\#5018](https://github.com/vector-im/riot-web/pull/5018)
* Avoid re-rendering RoomList on room switch
[\#5015](https://github.com/vector-im/riot-web/pull/5015)
* Fix menu on change keyboard language issue #4345
[\#4623](https://github.com/vector-im/riot-web/pull/4623)
* Make isInvite default to false
[\#4999](https://github.com/vector-im/riot-web/pull/4999)
* Revert "Implement sticky date separators"
[\#4991](https://github.com/vector-im/riot-web/pull/4991)
* Implement sticky date separators
[\#4939](https://github.com/vector-im/riot-web/pull/4939)
Changes in [0.12.3](https://github.com/vector-im/riot-web/releases/tag/v0.12.3) (2017-09-06)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.3-rc.3...v0.12.3)
* No changes
Changes in [0.12.3-rc.3](https://github.com/vector-im/riot-web/releases/tag/v0.12.3-rc.3) (2017-09-05)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.3-rc.2...v0.12.3-rc.3)
* Fix plurals in translations
[\#4971](https://github.com/vector-im/riot-web/pull/4971)
* Update from Weblate.
[\#4968](https://github.com/vector-im/riot-web/pull/4968)
Changes in [0.12.3-rc.2](https://github.com/vector-im/riot-web/releases/tag/v0.12.3-rc.2) (2017-09-05)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.3-rc.1...v0.12.3-rc.2)
* New react-sdk version to pull in new translations and fix some translation bugs.
Changes in [0.12.3-rc.1](https://github.com/vector-im/riot-web/releases/tag/v0.12.3-rc.1) (2017-09-01)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.2...v0.12.3-rc.1)
* Fix overflowing login/register buttons on some languages issue #4804
[\#4858](https://github.com/vector-im/riot-web/pull/4858)
* Update vector-im to riot-im on Login
[\#4943](https://github.com/vector-im/riot-web/pull/4943)
* lets let people know that the bug report actually sent properly :)
[\#4910](https://github.com/vector-im/riot-web/pull/4910)
* another s/vector/riot/ in README
[\#4934](https://github.com/vector-im/riot-web/pull/4934)
* fix two room list regressions
[\#4907](https://github.com/vector-im/riot-web/pull/4907)
Changes in [0.12.2](https://github.com/vector-im/riot-web/releases/tag/v0.12.2) (2017-08-24)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.1...v0.12.2)

View File

@ -16,7 +16,7 @@ released version of Riot:
1. Download the latest version from https://github.com/vector-im/riot-web/releases
1. Untar the tarball on your web server
1. Move (or symlink) the vector-x.x.x directory to an appropriate name
1. Move (or symlink) the riot-x.x.x directory to an appropriate name
1. If desired, copy `config.sample.json` to `config.json` and edit it
as desired. See below for details.
1. Enter the URL into your browser and log into Riot!
@ -115,7 +115,9 @@ You can configure the app by copying `config.sample.json` to
addresses) to matrix IDs: see http://matrix.org/docs/spec/identity_service/unstable.html
for more details. Currently the only public matrix identity servers are https://matrix.org
and https://vector.im. In future identity servers will be decentralised.
1. `integrations_ui_url`: URL to the web interface for the integrations server.
1. `integrations_ui_url`: URL to the web interface for the integrations server. The integrations
server is not Riot and normally not your Home Server either. The integration server settings
may be left blank to disable integrations.
1. `integrations_rest_url`: URL to the REST interface for the integrations server.
1. `roomDirectory`: config for the public room directory. This section is optional.
1. `roomDirectory.servers`: List of other Home Servers' directories to include in the drop

View File

@ -5,7 +5,11 @@
"integrations_ui_url": "https://scalar.vector.im/",
"integrations_rest_url": "https://scalar.vector.im/api",
"bug_report_endpoint_url": "https://riot.im/bugreports/submit",
"enableLabs": true,
"features": {
"feature_groups": "labs",
"feature_pinning": "labs"
},
"default_federate": true,
"roomDirectory": {
"servers": [
"matrix.org"

View File

@ -6,11 +6,32 @@
- Be able to understand English
- Be able to understand the language you want to translate riot-web into
## Translating strings vs. marking strings for translation
Translating strings are done with the `_t()` function found in matrix-react-sdk/lib/languageHandler.js. It is recommended to call this function wherever you introduce a string constant which should be translated. However, translating can not be performed until after the translation system has been initialized. Thus, sometimes translation must be performed at a different location in the source code than where the string is introduced. This breaks some tooling and makes it difficult to find translatable strings. Therefore, there is the alternative `_td()` function which is used to mark strings for translation, without actually performing the translation (which must still be performed separately, and after the translation system has been initialized).
Basically, whenever a translatable string is introduced, you should call either `_t()` immediately OR `_td()` and later `_t()`.
Example:
```
// Module-level constant
const COLORS = {
'#f8481c': _td('reddish orange'), // Can't call _t() here yet
'#fc2647': _td('pinky red') // Use _td() instead so the text is picked up for translation anyway
}
// Function that is called some time after i18n has been loaded
function getColorName(hex) {
return _t(COLORS[hex]); // Perform actual translation here
}
```
## Adding new strings
1. Check if the import ``import { _t } from 'matrix-react-sdk/lib/languageHandler';`` is present. If not add it to the other import statements.
2. Add ``_t()`` to your string. (Don't forget curly braces when you assign an expression to JSX attributes in the render method)
3. Add the String to the ``en_EN.json`` file in ``src/i18n/strings`` (respect which repository you are on).
1. Check if the import ``import { _t } from 'matrix-react-sdk/lib/languageHandler';`` is present. If not add it to the other import statements. Also import `_td` if needed.
1. Add ``_t()`` to your string. (Don't forget curly braces when you assign an expression to JSX attributes in the render method). If the string is introduced at a point before the translation system has not yet been initialized, use `_td()` instead, and call `_t()` at the appropriate time.
1. Run `npm run i18n` to update ``src/i18n/strings/en_EN.json`` (if it fails because it can't find the script, your dev environment predates the script, so reinstall/link react-sdk with `npm link ../matrix-react-sdk`). If it segfaults, you may be on Node 6, so try a newer version of node.
1. If you added a string with a plural, you can add other English plural variants to ``src/i18n/strings/en_EN.json`` (remeber to edit the one in the same project as the source file containing your new translation).
## Adding variables inside a string.
@ -21,6 +42,8 @@
## Things to know/Style Guides
- Do not use it inside ``getDefaultProps`` at the point where ``getDefaultProps`` is initialized the translations aren't loaded yet and it causes missing translations.
- If using translated strings as constants, translated strings can't be in constants loaded at class-load time since the translations won't be loaded.
- Do not use `_t()` inside ``getDefaultProps``: the translations aren't loaded when `getDefaultProps` is called, leading to missing translations. Use `_td()` to indicate that `_t()` will be called on the string later.
- If using translated strings as constants, translated strings can't be in constants loaded at class-load time since the translations won't be loaded. Mark the strings using `_td()` instead and perform the actual translation later.
- If a string is presented in the UI with punctuation like a full stop, include this in the translation strings, since punctuation varies between languages too.
- Avoid "translation in parts", i.e. concatenating translated strings or using translated strings in variable substitutions. Context is important for translations, and translating partial strings this way is simply not always possible.
- Concatenating strings often also introduces an implicit assumption about word order (e.g. that the subject of the sentence comes first), which is incorrect for many languages.

View File

@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "src/electron-main.js",
"version": "0.12.2",
"version": "0.13.0-rc.1",
"description": "A feature-rich client for Matrix.org",
"author": "Vector Creations Ltd.",
"dependencies": {

View File

@ -0,0 +1,34 @@
-----BEGIN CERTIFICATE-----
MIIF0jCCBLqgAwIBAgIRAISYBqZi3VvCUeSfHXF+cbwwDQYJKoZIhvcNAQELBQAw
gZExCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO
BgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVkMTcwNQYD
VQQDEy5DT01PRE8gUlNBIEV4dGVuZGVkIFZhbGlkYXRpb24gQ29kZSBTaWduaW5n
IENBMB4XDTE3MDgyMzAwMDAwMFoXDTIwMDgyMjIzNTk1OVowgdgxETAPBgNVBAUT
CDEwODczNjYxMRMwEQYLKwYBBAGCNzwCAQMTAkdCMR0wGwYDVQQPExRQcml2YXRl
IE9yZ2FuaXphdGlvbjELMAkGA1UEBhMCR0IxETAPBgNVBBEMCFdDMVIgNEFHMQ8w
DQYDVQQIDAZMb25kb24xDzANBgNVBAcMBkxvbmRvbjEbMBkGA1UECQwSMjYgUmVk
IExpb24gU3F1YXJlMRcwFQYDVQQKDA5OZXcgVmVjdG9yIEx0ZDEXMBUGA1UEAwwO
TmV3IFZlY3RvciBMdGQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7
X0HP3oM/SVr6PboD03ndtYTONZDcJ/GJ3EyYi6UNrcbKjuDHwPktx9hjAhNjcVkG
lmuTEPluPj9DbvjaTrers0cQsAS1vJ0RHjLfA93Flg1ys9Q6OThUMw77FtFPtiJU
z5cSYzfFAhn/4dv7BcgGptn+Mv/8CaTu+RUZJUgoSlRWcT1TREmxkzWotbblqsHO
zjDmUg20tL5/qpt6BSWsNespf5udKQFXMtqkczBcLvBLmql0vurVcQy8BibB+Q89
QKwRzwLgaIa7O8WEssFcW8uJe9s0SNtUy8ehbuoSxpA/DbHFwsiDbNA78vp7HrqM
qY6t6OIgLtDYBFCfe/btAgMBAAGjggHaMIIB1jAfBgNVHSMEGDAWgBTfj/MgDOnK
pgTYW1g3Kj2rRtyDSTAdBgNVHQ4EFgQUH+mDOdRkF3bYDxCWEaGB4lxiCxcwDgYD
VR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwEwYDVR0lBAwwCgYIKwYBBQUHAwMw
EQYJYIZIAYb4QgEBBAQDAgQQMEYGA1UdIAQ/MD0wOwYMKwYBBAGyMQECAQYBMCsw
KQYIKwYBBQUHAgEWHWh0dHBzOi8vc2VjdXJlLmNvbW9kby5jb20vQ1BTMFUGA1Ud
HwROMEwwSqBIoEaGRGh0dHA6Ly9jcmwuY29tb2RvY2EuY29tL0NPTU9ET1JTQUV4
dGVuZGVkVmFsaWRhdGlvbkNvZGVTaWduaW5nQ0EuY3JsMIGGBggrBgEFBQcBAQR6
MHgwUAYIKwYBBQUHMAKGRGh0dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET1JT
QUV4dGVuZGVkVmFsaWRhdGlvbkNvZGVTaWduaW5nQ0EuY3J0MCQGCCsGAQUFBzAB
hhhodHRwOi8vb2NzcC5jb21vZG9jYS5jb20wJgYDVR0RBB8wHaAbBggrBgEFBQcI
A6APMA0MC0dCLTEwODczNjYxMA0GCSqGSIb3DQEBCwUAA4IBAQBJ2aH4aixh0aiz
4WKlK+LMVLHpQ2POE3FZYNpAW7o1q2YDGEADXdGrygPE9NCGNBXKo0CAemCYNWfX
Ov/jdoiMfeqW3vrZ66oEy8OqbvJSwK1xmomWuYw3wYPWcPVG+YbWYD2CGdQu8jTz
fzAJCpvAuY3Wji3fQjiecAC7JCSB4fBHa0ALJOmiSqKQUUpkXs5kW7O0lPBnHzNF
2tQGltXMSIrq1QfFtcreMyKlwDOxPIh360dv5aHhaeSRDRKxq7uq5ikQF2gjKx4k
ieg2HRbAW6fVPpFr4zRS5umpeZV3i06i11VQQPS/mA/OBEXyaqzx4mr6B7U6ptrp
jMqiUv2w
-----END CERTIFICATE-----

View File

@ -7,7 +7,6 @@
"integrations_rest_url": "https://scalar.vector.im/api",
"bug_report_endpoint_url": "https://riot.im/bugreports/submit",
"welcomeUserId": "@riot-bot:matrix.org",
"enableLabs": true,
"roomDirectory": {
"servers": [
"matrix.org"

View File

@ -84,7 +84,7 @@ let powerSaveBlockerId;
electron.ipcMain.on('app_onAction', function(ev, payload) {
switch (payload.action) {
case 'call_state':
if (powerSaveBlockerId && powerSaveBlockerId.isStarted(powerSaveBlockerId)) {
if (powerSaveBlockerId && electron.powerSaveBlocker.isStarted(powerSaveBlockerId)) {
if (payload.state === 'ended') {
electron.powerSaveBlocker.stop(powerSaveBlockerId);
}

View File

@ -19,7 +19,7 @@ const {app, shell, Menu} = require('electron');
// Menu template from http://electron.atom.io/docs/api/menu/, edited
const template = [
{
label: 'Edit',
label: '&Edit',
submenu: [
{ role: 'undo' },
{ role: 'redo' },
@ -33,7 +33,7 @@ const template = [
],
},
{
label: 'View',
label: '&View',
submenu: [
{ type: 'separator' },
{ role: 'resetzoom' },
@ -45,6 +45,7 @@ const template = [
],
},
{
label: '&Window',
role: 'window',
submenu: [
{ role: 'minimize' },
@ -52,6 +53,7 @@ const template = [
],
},
{
label: '&Help',
role: 'help',
submenu: [
{
@ -122,7 +124,7 @@ if (process.platform === 'darwin') {
];
} else {
template.unshift({
label: 'File',
label: '&File',
submenu: [
// For some reason, 'about' does not seem to work on windows.
/*{

9512
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "electron_app/src/electron-main.js",
"version": "0.12.2",
"version": "0.12.7",
"description": "A feature-rich client for Matrix.org",
"author": "Vector Creations Ltd.",
"repository": {
@ -28,6 +28,8 @@
"scripts": {
"reskindex": "reskindex -h src/header",
"reskindex:watch": "reskindex -h src/header -w",
"i18n": "matrix-gen-i18n",
"prunei18n": "matrix-prune-i18n",
"build:res": "node scripts/copy-res.js",
"build:modernizr": "modernizr -c .modernizr.json -d src/vector/modernizr.js",
"build:compile": "npm run reskindex && babel --source-maps -d lib src",
@ -47,7 +49,7 @@
"lint": "eslint src/",
"lintall": "eslint src/ test/",
"clean": "rimraf lib webapp electron_app/dist",
"prepublish": "npm run build:compile",
"prepublish": "npm run clean && npm run build:compile",
"test": "karma start --single-run=true --autoWatch=false --browsers ChromeHeadless",
"test-multi": "karma start"
},
@ -66,10 +68,11 @@
"gfm.css": "^1.1.1",
"highlight.js": "^9.0.0",
"linkifyjs": "^2.1.3",
"matrix-js-sdk": "0.8.2",
"matrix-react-sdk": "0.10.2",
"matrix-js-sdk": "0.9.0-rc.1",
"matrix-react-sdk": "0.11.0-rc.1",
"modernizr": "^3.1.0",
"pako": "^1.0.5",
"prop-types": "^15.5.10",
"react": "^15.6.0",
"react-dnd": "^2.1.4",
"react-dnd-html5-backend": "^2.1.2",
@ -109,7 +112,7 @@
"eslint-config-google": "^0.7.1",
"eslint-plugin-babel": "^4.1.1",
"eslint-plugin-flowtype": "^2.30.0",
"eslint-plugin-react": "^6.9.0",
"eslint-plugin-react": "^7.4.0",
"expect": "^1.16.0",
"fs-extra": "^0.30.0",
"html-webpack-plugin": "^2.24.0",
@ -129,7 +132,7 @@
"minimist": "^1.2.0",
"mkdirp": "^0.5.1",
"mocha": "^2.4.5",
"parallelshell": "^1.2.0",
"parallelshell": "^3.0.2",
"postcss-extend": "^1.0.5",
"postcss-import": "^9.0.0",
"postcss-loader": "^1.2.2",
@ -151,7 +154,7 @@
"build": {
"appId": "im.riot.app",
"category": "Network",
"electronVersion": "1.7.5",
"electronVersion": "1.7.9",
"//asar=false": "https://github.com/electron-userland/electron-builder/issues/675",
"asar": false,
"dereference": true,

View File

@ -249,7 +249,7 @@
<span class="mx_HomePage_desc">_t("Implementing VoIP services with Matrix")</span>
</div>
<div class="mx_HomePage_room">
<a href="#/room/#identity:matrix.org">
<a href="#/room/#matrix-identity:matrix.org">
<img class="mx_HomePage_icon" src="home/rooms/identity.jpg">
<span class="mx_HomePage_name">Matrix Identity</span>
</a>

View File

@ -17,6 +17,7 @@ const INCLUDE_LANGS = [
{'value': 'eo', 'label': 'Esperanto'},
{'value': 'es', 'label': 'Español'},
{'value': 'eu', 'label': 'Euskal'},
{'value': 'fi', 'label': 'Suomi'},
{'value': 'fr', 'label': 'Français'},
{'value': 'hu', 'label': 'Magyar'},
{'value': 'ko', 'label': '한국어'},
@ -156,15 +157,23 @@ function genLangFile(lang, dest) {
const reactSdkFile = 'node_modules/matrix-react-sdk/src/i18n/strings/' + lang + '.json';
const riotWebFile = 'src/i18n/strings/' + lang + '.json';
const translations = {};
let translations = {};
[reactSdkFile, riotWebFile].forEach(function(f) {
if (fs.existsSync(f)) {
Object.assign(
translations,
JSON.parse(fs.readFileSync(f).toString())
);
try {
Object.assign(
translations,
JSON.parse(fs.readFileSync(f).toString())
);
} catch (e) {
console.error("Failed: "+f, e);
throw e;
}
}
});
translations = weblateToCounterpart(translations)
fs.writeFileSync(dest + lang + '.json', JSON.stringify(translations, null, 4));
if (verbose) {
console.log("Generated language file: " + lang);
@ -193,5 +202,39 @@ function genLangList() {
}
}
/**
* Convert translation key from weblate format
* (which only supports a single level) to counterpart
* which requires object values for 'count' translations.
*
* eg.
* "there are %(count)s badgers|one": "a badger",
* "there are %(count)s badgers|other": "%(count)s badgers"
* becomes
* "there are %(count)s badgers": {
* "one": "a badger",
* "other": "%(count)s badgers"
* }
*/
function weblateToCounterpart(inTrs) {
const outTrs = {};
for (const key of Object.keys(inTrs)) {
const keyParts = key.split('|', 2);
if (keyParts.length === 2) {
let obj = outTrs[keyParts[0]];
if (obj === undefined) {
obj = {};
outTrs[keyParts[0]] = obj;
}
obj[keyParts[1]] = inTrs[key];
} else {
outTrs[key] = inTrs[key];
}
}
return outTrs;
}
genLangList();
next(0);

View File

@ -13,6 +13,8 @@ import os.path
import subprocess
import sys
import tarfile
import shutil
import glob
try:
# python3
@ -48,11 +50,12 @@ def move_bundles(source, dest):
for f in os.listdir(source):
dst = os.path.join(dest, f)
if os.path.exists(dst):
raise DeployException(
"Not deploying. The bundle includes '%s' which we have previously deployed."
print (
"Skipping bundle. The bundle includes '%s' which we have previously deployed."
% f
)
renames[os.path.join(source, f)] = dst
else:
renames[os.path.join(source, f)] = dst
for (src, dst) in renames.iteritems():
print ("Move %s -> %s" % (src, dst))
@ -64,7 +67,7 @@ class Deployer:
self.bundles_path = None
self.should_clean = False
# filename -> symlink path e.g 'config.localhost.json' => '../localhost/config.json'
self.config_locations = {}
self.symlink_paths = {}
self.verify_signature = True
def deploy(self, tarball, extract_path):
@ -96,20 +99,20 @@ class Deployer:
print ("Extracted into: %s" % extracted_dir)
if self.config_locations:
for config_filename, config_loc in self.config_locations.iteritems():
if self.symlink_paths:
for link_path, file_path in self.symlink_paths.iteritems():
create_relative_symlink(
target=config_loc,
linkname=os.path.join(extracted_dir, config_filename)
target=file_path,
linkname=os.path.join(extracted_dir, link_path)
)
if self.bundles_path:
extracted_bundles = os.path.join(extracted_dir, 'bundles')
move_bundles(source=extracted_bundles, dest=self.bundles_path)
# replace the (hopefully now empty) extracted_bundles dir with a
# symlink to the common dir.
os.rmdir(extracted_bundles)
# replace the extracted_bundles dir (which may not be empty if some
# bundles were skipped) with a symlink to the common dir.
shutil.rmtree(extracted_bundles)
create_relative_symlink(
target=self.bundles_path,
linkname=extracted_bundles,
@ -163,9 +166,10 @@ if __name__ == "__main__":
)
)
parser.add_argument(
"--config", nargs='?', default='./config.json', help=(
"Write a symlink at config.json in the extracted tarball to this \
location. (Default: '%(default)s')"
"--include", nargs='*', default='./config*.json', help=(
"Symlink these files into the root of the deployed tarball. \
Useful for config files and home pages. Supports glob syntax. \
(Default: '%(default)s')"
)
)
parser.add_argument(
@ -180,8 +184,8 @@ if __name__ == "__main__":
deployer.packages_path = args.packages_dir
deployer.bundles_path = args.bundles_dir
deployer.should_clean = args.clean
deployer.config_locations = {
"config.json": args.config,
}
for include in args.include:
deployer.symlink_paths.update({ os.path.basename(pth): pth for pth in glob.iglob(include) })
deployer.deploy(args.tarball, args.extract_path)

View File

@ -94,17 +94,20 @@ distdir="$builddir/electron_app/dist"
pubdir="$projdir/electron_app/pub"
rm -r "$pubdir" || true
mkdir -p "$pubdir"
rm -r "$projdir/electron_app/dist" || true
mkdir -p "$projdir/electron_app/dist/unsigned/"
# Install packages: what the user downloads the first time,
# (DMGs for mac, exe installer for windows)
mkdir -p "$pubdir/install/macos"
cp $distdir/mac/*.dmg "$pubdir/install/macos/"
# Windows installers go to the dist dir because they need signing
mkdir -p "$pubdir/install/win32/ia32/"
cp $distdir/win-ia32/*.exe "$pubdir/install/win32/ia32/"
cp $distdir/win-ia32/*.exe "$projdir/electron_app/dist/unsigned/"
mkdir -p "$pubdir/install/win32/x64/"
cp $distdir/win/*.exe "$pubdir/install/win32/x64/"
cp $distdir/win/*.exe "$projdir/electron_app/dist/unsigned/"
# Packages for auto-update
mkdir -p "$pubdir/update/macos"
@ -120,11 +123,11 @@ cp $distdir/win/*.nupkg "$pubdir/update/win32/x64/"
cp $distdir/win/RELEASES "$pubdir/update/win32/x64/"
# Move the debs to the main project dir's dist folder
rm -r "$projdir/electron_app/dist" || true
mkdir -p "$projdir/electron_app/dist"
cp $distdir/*.deb "$projdir/electron_app/dist/"
rm -rf "$builddir"
echo "Riot Desktop is ready to go in $pubdir: this directory can be hosted on your web server."
echo "Unsigned Windows installers have been placed in electron_app/dist/unsigned/ - sign them,"
echo "or just copy them to "$pubdir/install/win32/\<arch\>/""
echo "Once you've done this, $pubdir can be hosted on your web server."
echo "deb archives are in electron_app/dist/ - these should be added into your debian repository"

View File

@ -15,6 +15,7 @@ import json, requests, tarfile, argparse, os, errno
import time
import traceback
from urlparse import urljoin
import glob
from flask import Flask, jsonify, request, abort
@ -188,15 +189,12 @@ if __name__ == "__main__":
)
)
def _raise(ex):
raise ex
# --config config.json=../../config.json --config config.localhost.json=./localhost.json
# --include ../../config.json ./localhost.json homepages/*
parser.add_argument(
"--config", action="append", dest="configs",
type=lambda kv: kv.split("=", 1) if "=" in kv else _raise(Exception("Missing =")), help=(
"A list of configs to symlink into the extracted tarball. \
For example, --config config.json=../config.json config2.json=../test/config.json"
"--include", nargs='*', default='./config*.json', help=(
"Symlink these files into the root of the deployed tarball. \
Useful for config files and home pages. Supports glob syntax. \
(Default: '%(default)s')"
)
)
parser.add_argument(
@ -220,7 +218,9 @@ if __name__ == "__main__":
deployer = Deployer()
deployer.bundles_path = args.bundles_dir
deployer.should_clean = args.clean
deployer.config_locations = dict(args.configs) if args.configs else {}
for include in args.include:
deployer.symlink_paths.update({ os.path.basename(pth): pth for pth in glob.iglob(include) })
# we don't pgp-sign jenkins artifacts; instead we rely on HTTPS access to
@ -234,13 +234,13 @@ if __name__ == "__main__":
deploy_tarball(args.tarball_uri, build_dir)
else:
print(
"Listening on port %s. Extracting to %s%s. Symlinking to %s. Jenkins URL: %s. Config locations: %s" %
"Listening on port %s. Extracting to %s%s. Symlinking to %s. Jenkins URL: %s. Include files: %s" %
(args.port,
arg_extract_path,
" (clean after)" if deployer.should_clean else "",
arg_symlink,
arg_jenkins_url,
deployer.config_locations,
deployer.symlink_paths,
)
)
app.run(host="0.0.0.0", port=args.port, debug=True)

View File

@ -19,9 +19,9 @@ import React from 'react';
import ReactDOM from 'react-dom';
import sdk from 'matrix-react-sdk';
import dis from 'matrix-react-sdk/lib/dispatcher';
import AccessibleButton from 'matrix-react-sdk/lib/components/views/elements/AccessibleButton';
import Velocity from 'velocity-vector';
import 'velocity-vector/velocity.ui';
import UserSettingsStore from 'matrix-react-sdk/lib/UserSettingsStore';
const CALLOUT_ANIM_DURATION = 1000;
@ -167,8 +167,12 @@ module.exports = React.createClass({
const StartChatButton = sdk.getComponent('elements.StartChatButton');
const RoomDirectoryButton = sdk.getComponent('elements.RoomDirectoryButton');
const CreateRoomButton = sdk.getComponent('elements.CreateRoomButton');
const GroupsButton = sdk.getComponent('elements.GroupsButton');
const SettingsButton = sdk.getComponent('elements.SettingsButton');
const groupsButton = UserSettingsStore.isFeatureEnabled('feature_groups') ?
<GroupsButton tooltip={true} /> : null;
return (
<div className="mx_BottomLeftMenu">
<div className="mx_BottomLeftMenu_options">
@ -182,6 +186,7 @@ module.exports = React.createClass({
<div ref={this._collectCreateRoomButton}>
<CreateRoomButton tooltip={true} />
</div>
{ groupsButton }
<span className="mx_BottomLeftMenu_settings">
<SettingsButton tooltip={true} />
</span>

View File

@ -19,6 +19,7 @@ limitations under the License.
import React from 'react';
import { DragDropContext } from 'react-dnd';
import HTML5Backend from 'react-dnd-html5-backend';
import classNames from 'classnames';
import KeyCode from 'matrix-react-sdk/lib/KeyCode';
import sdk from 'matrix-react-sdk';
import dis from 'matrix-react-sdk/lib/dispatcher';
@ -30,13 +31,14 @@ import VectorConferenceHandler from '../../VectorConferenceHandler';
var LeftPanel = React.createClass({
displayName: 'LeftPanel',
// NB. If you add props, don't forget to update
// shouldComponentUpdate!
propTypes: {
collapsed: React.PropTypes.bool.isRequired,
},
getInitialState: function() {
return {
showCallElement: null,
searchFilter: '',
};
},
@ -45,26 +47,25 @@ var LeftPanel = React.createClass({
this.focusedElement = null;
},
componentDidMount: function() {
this.dispatcherRef = dis.register(this.onAction);
},
componentWillReceiveProps: function(newProps) {
this._recheckCallElement(newProps.selectedRoom);
},
componentWillUnmount: function() {
dis.unregister(this.dispatcherRef);
},
onAction: function(payload) {
switch (payload.action) {
// listen for call state changes to prod the render method, which
// may hide the global CallView if the call it is tracking is dead
case 'call_state':
this._recheckCallElement(this.props.selectedRoom);
break;
shouldComponentUpdate: function(nextProps, nextState) {
// MatrixChat will update whenever the user switches
// rooms, but propagating this change all the way down
// the react tree is quite slow, so we cut this off
// here. The RoomTiles listen for the room change
// events themselves to know when to update.
// We just need to update if any of these things change.
if (
this.props.collapsed !== nextProps.collapsed ||
this.props.disabled !== nextProps.disabled
) {
return true;
}
if (this.state.searchFilter !== nextState.searchFilter) {
return true;
}
return false;
},
_onFocus: function(ev) {
@ -152,74 +153,43 @@ var LeftPanel = React.createClass({
}
},
_recheckCallElement: function(selectedRoomId) {
// if we aren't viewing a room with an ongoing call, but there is an
// active call, show the call element - we need to do this to make
// audio/video not crap out
var activeCall = CallHandler.getAnyActiveCall();
var callForRoom = CallHandler.getCallForRoom(selectedRoomId);
var showCall = (activeCall && activeCall.call_state === 'connected' && !callForRoom);
this.setState({
showCallElement: showCall
});
},
onHideClick: function() {
dis.dispatch({
action: 'hide_left_panel',
});
},
onCallViewClick: function() {
var call = CallHandler.getAnyActiveCall();
if (call) {
dis.dispatch({
action: 'view_room',
room_id: call.groupRoomId || call.roomId,
});
}
},
onSearch: function(term) {
this.setState({ searchFilter: term });
},
render: function() {
var RoomList = sdk.getComponent('rooms.RoomList');
var BottomLeftMenu = sdk.getComponent('structures.BottomLeftMenu');
const RoomList = sdk.getComponent('rooms.RoomList');
const BottomLeftMenu = sdk.getComponent('structures.BottomLeftMenu');
const CallPreview = sdk.getComponent('voip.CallPreview');
var topBox;
let topBox;
if (MatrixClientPeg.get().isGuest()) {
var LoginBox = sdk.getComponent('structures.LoginBox');
const LoginBox = sdk.getComponent('structures.LoginBox');
topBox = <LoginBox collapsed={ this.props.collapsed }/>;
}
else {
var SearchBox = sdk.getComponent('structures.SearchBox');
} else {
const SearchBox = sdk.getComponent('structures.SearchBox');
topBox = <SearchBox collapsed={ this.props.collapsed } onSearch={ this.onSearch } />;
}
var classes = "mx_LeftPanel mx_fadable";
if (this.props.collapsed) {
classes += " collapsed";
}
var callPreview;
if (this.state.showCallElement && !this.props.collapsed) {
var CallView = sdk.getComponent('voip.CallView');
callPreview = (
<CallView
className="mx_LeftPanel_callView" showVoice={true} onClick={this.onCallViewClick}
ConferenceHandler={VectorConferenceHandler} />
);
}
let classes = classNames(
"mx_LeftPanel", "mx_fadable",
{
"collapsed": this.props.collapsed,
"mx_fadable_faded": this.props.disabled,
}
);
return (
<aside className={classes} style={{ opacity: this.props.opacity }}
onKeyDown={ this._onKeyDown } onFocus={ this._onFocus } onBlur={ this._onBlur }>
<aside className={classes} onKeyDown={ this._onKeyDown } onFocus={ this._onFocus } onBlur={ this._onBlur }>
{ topBox }
{ callPreview }
<CallPreview ConferenceHandler={VectorConferenceHandler} />
<RoomList
selectedRoom={this.props.selectedRoom}
collapsed={this.props.collapsed}
searchFilter={this.state.searchFilter}
ConferenceHandler={VectorConferenceHandler} />

View File

@ -84,7 +84,7 @@ module.exports = React.createClass({
var self = this;
return (
<div className="mx_SearchBox">
<div className="mx_SearchBox mx_LoginBox">
{ loginButton }
{ toggleCollapse }
</div>

View File

@ -1,5 +1,7 @@
/*
Copyright 2015, 2016 OpenMarket Ltd
Copyright 2017 Vector Creations Ltd
Copyright 2017 New Vector Ltd
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@ -14,67 +16,134 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
'use strict';
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import { _t } from 'matrix-react-sdk/lib/languageHandler';
import sdk from 'matrix-react-sdk';
import Matrix from "matrix-js-sdk";
import dis from 'matrix-react-sdk/lib/dispatcher';
import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg';
import { MatrixClient } from 'matrix-js-sdk';
import Analytics from 'matrix-react-sdk/lib/Analytics';
import rate_limited_func from 'matrix-react-sdk/lib/ratelimitedfunc';
import Modal from 'matrix-react-sdk/lib/Modal';
import AccessibleButton from 'matrix-react-sdk/lib/components/views/elements/AccessibleButton';
import { showGroupInviteDialog, showGroupAddRoomDialog } from 'matrix-react-sdk/lib/GroupAddressPicker';
import GroupStoreCache from 'matrix-react-sdk/lib/stores/GroupStoreCache';
class HeaderButton extends React.Component {
constructor() {
super();
this.onClick = this.onClick.bind(this);
}
onClick(ev) {
Analytics.trackEvent(...this.props.analytics);
dis.dispatch({
action: 'view_right_panel_phase',
phase: this.props.clickPhase,
});
}
render() {
const TintableSvg = sdk.getComponent("elements.TintableSvg");
const AccessibleButton = sdk.getComponent("elements.AccessibleButton");
return <AccessibleButton className="mx_RightPanel_headerButton" onClick={this.onClick} >
<div className="mx_RightPanel_headerButton_badge">
{ this.props.badge ? this.props.badge : <span>&nbsp;</span> }
</div>
<TintableSvg src={this.props.iconSrc} width="25" height="25"/>
{ this.props.isHighlighted ? <div className="mx_RightPanel_headerButton_highlight"></div> : <div/> }
</AccessibleButton>;
}
}
HeaderButton.propTypes = {
// Whether this button is highlighted
isHighlighted: PropTypes.bool.isRequired,
// The phase to swap to when the button is clicked
clickPhase: PropTypes.string.isRequired,
// The source file of the icon to display
iconSrc: PropTypes.string.isRequired,
// The badge to display above the icon
badge: PropTypes.node,
// The parameters to track the click event
analytics: PropTypes.arrayOf(PropTypes.string).isRequired,
};
module.exports = React.createClass({
displayName: 'RightPanel',
propTypes: {
// TODO: This should not be a prop, it should be received from the RoomViewStore
// TODO: We're trying to move away from these being props, but we need to know
// whether we should be displaying a room or group member list
roomId: React.PropTypes.string, // if showing panels for a given room, this is set
groupId: React.PropTypes.string, // if showing panels for a given group, this is set
collapsed: React.PropTypes.bool, // currently unused property to request for a minimized view of the panel
},
contextTypes: {
matrixClient: PropTypes.instanceOf(MatrixClient),
},
Phase: {
MemberList: 'MemberList',
RoomMemberList: 'RoomMemberList',
GroupMemberList: 'GroupMemberList',
GroupRoomList: 'GroupRoomList',
GroupRoomInfo: 'GroupRoomInfo',
FilePanel: 'FilePanel',
NotificationPanel: 'NotificationPanel',
MemberInfo: 'MemberInfo',
RoomMemberInfo: 'RoomMemberInfo',
GroupMemberInfo: 'GroupMemberInfo',
},
componentWillMount: function() {
this.dispatcherRef = dis.register(this.onAction);
var cli = MatrixClientPeg.get();
const cli = this.context.matrixClient;
cli.on("RoomState.members", this.onRoomStateMember);
this._initGroupStore(this.props.groupId);
},
componentWillUnmount: function() {
dis.unregister(this.dispatcherRef);
if (MatrixClientPeg.get()) {
MatrixClientPeg.get().removeListener("RoomState.members", this.onRoomStateMember);
if (this.context.matrixClient) {
this.context.matrixClient.removeListener("RoomState.members", this.onRoomStateMember);
}
this._unregisterGroupStore();
},
getInitialState: function() {
return {
phase: this.Phase.MemberList
};
phase: this.props.groupId ? this.Phase.GroupMemberList : this.Phase.RoomMemberList,
isUserPrivilegedInGroup: null,
}
},
onMemberListButtonClick: function() {
Analytics.trackEvent('Right Panel', 'Member List Button', 'click');
this.setState({ phase: this.Phase.MemberList });
componentWillReceiveProps(newProps) {
if (newProps.groupId !== this.props.groupId) {
this._unregisterGroupStore();
this._initGroupStore(newProps.groupId);
}
},
onFileListButtonClick: function() {
Analytics.trackEvent('Right Panel', 'File List Button', 'click');
this.setState({ phase: this.Phase.FilePanel });
_initGroupStore(groupId) {
if (!groupId) return;
this._groupStore = GroupStoreCache.getGroupStore(
this.context.matrixClient, groupId,
);
this._groupStore.registerListener(this.onGroupStoreUpdated);
},
onNotificationListButtonClick: function() {
Analytics.trackEvent('Right Panel', 'Notification List Button', 'click');
this.setState({ phase: this.Phase.NotificationPanel });
_unregisterGroupStore() {
if (this._groupStore) {
this._groupStore.unregisterListener(this.onGroupStoreUpdated);
}
},
onGroupStoreUpdated: function(){
this.setState({
isUserPrivilegedInGroup: this._groupStore.isUserPrivileged(),
});
},
onCollapseClick: function() {
@ -84,24 +153,32 @@ module.exports = React.createClass({
},
onInviteButtonClick: function() {
if (MatrixClientPeg.get().isGuest()) {
if (this.context.matrixClient.isGuest()) {
dis.dispatch({action: 'view_set_mxid'});
return;
}
// call ChatInviteDialog
dis.dispatch({
action: 'view_invite',
roomId: this.props.roomId,
});
if (this.state.phase === this.Phase.GroupMemberList) {
showGroupInviteDialog(this.props.groupId);
} else if (this.state.phase === this.Phase.GroupRoomList) {
showGroupAddRoomDialog(this.props.groupId).then(() => {
this.forceUpdate();
});
} else {
// call AddressPickerDialog
dis.dispatch({
action: 'view_invite',
roomId: this.props.roomId,
});
}
},
onRoomStateMember: function(ev, state, member) {
// redraw the badge on the membership list
if (this.state.phase == this.Phase.MemberList && member.roomId === this.props.roomId) {
if (this.state.phase == this.Phase.RoomMemberList && member.roomId === this.props.roomId) {
this._delayedUpdate();
}
else if (this.state.phase === this.Phase.MemberInfo && member.roomId === this.props.roomId &&
else if (this.state.phase === this.Phase.RoomMemberInfo && member.roomId === this.props.roomId &&
member.userId === this.state.member.userId) {
// refresh the member info (e.g. new power level)
this._delayedUpdate();
@ -119,62 +196,81 @@ module.exports = React.createClass({
});
if (payload.member) {
this.setState({
phase: this.Phase.MemberInfo,
phase: this.Phase.RoomMemberInfo,
member: payload.member,
});
} else {
if (this.props.roomId) {
this.setState({
phase: this.Phase.RoomMemberList,
});
} else if (this.props.groupId) {
this.setState({
phase: this.Phase.GroupMemberList,
member: payload.member,
});
}
}
else {
this.setState({
phase: this.Phase.MemberList
});
}
}
else if (payload.action === "view_room") {
if (this.state.phase === this.Phase.MemberInfo) {
this.setState({
phase: this.Phase.MemberList
});
}
} else if (payload.action === "view_group") {
this.setState({
phase: this.Phase.GroupMemberList,
member: null,
});
} else if (payload.action === "view_group_room") {
this.setState({
phase: this.Phase.GroupRoomInfo,
groupRoomId: payload.groupRoomId,
});
} else if (payload.action === "view_group_room_list") {
this.setState({
phase: this.Phase.GroupRoomList,
});
} else if (payload.action === "view_group_user") {
this.setState({
phase: this.Phase.GroupMemberInfo,
member: payload.member,
});
} else if (payload.action === "view_room") {
this.setState({
phase: this.Phase.RoomMemberList,
});
} else if (payload.action === "view_right_panel_phase") {
this.setState({
phase: payload.phase,
});
}
},
render: function() {
var MemberList = sdk.getComponent('rooms.MemberList');
var NotificationPanel = sdk.getComponent('structures.NotificationPanel');
var FilePanel = sdk.getComponent('structures.FilePanel');
var TintableSvg = sdk.getComponent("elements.TintableSvg");
var buttonGroup;
var inviteGroup;
var panel;
const MemberList = sdk.getComponent('rooms.MemberList');
const MemberInfo = sdk.getComponent('rooms.MemberInfo');
const NotificationPanel = sdk.getComponent('structures.NotificationPanel');
const FilePanel = sdk.getComponent('structures.FilePanel');
var filesHighlight;
var membersHighlight;
var notificationsHighlight;
if (!this.props.collapsed) {
if (this.state.phase == this.Phase.MemberList || this.state.phase === this.Phase.MemberInfo) {
membersHighlight = <div className="mx_RightPanel_headerButton_highlight"></div>;
}
else if (this.state.phase == this.Phase.FilePanel) {
filesHighlight = <div className="mx_RightPanel_headerButton_highlight"></div>;
}
else if (this.state.phase == this.Phase.NotificationPanel) {
notificationsHighlight = <div className="mx_RightPanel_headerButton_highlight"></div>;
}
}
const GroupMemberList = sdk.getComponent('groups.GroupMemberList');
const GroupMemberInfo = sdk.getComponent('groups.GroupMemberInfo');
const GroupRoomList = sdk.getComponent('groups.GroupRoomList');
const GroupRoomInfo = sdk.getComponent('groups.GroupRoomInfo');
var membersBadge;
if ((this.state.phase == this.Phase.MemberList || this.state.phase === this.Phase.MemberInfo) && this.props.roomId) {
var cli = MatrixClientPeg.get();
var room = cli.getRoom(this.props.roomId);
var user_is_in_room;
const TintableSvg = sdk.getComponent("elements.TintableSvg");
let inviteGroup;
let membersBadge;
if ((this.state.phase == this.Phase.RoomMemberList || this.state.phase === this.Phase.RoomMemberInfo)
&& this.props.roomId
) {
const cli = this.context.matrixClient;
const room = cli.getRoom(this.props.roomId);
let userIsInRoom;
if (room) {
membersBadge = room.getJoinedMembers().length;
user_is_in_room = room.hasMembershipState(
MatrixClientPeg.get().credentials.userId, 'join'
userIsInRoom = room.hasMembershipState(
this.context.matrixClient.credentials.userId, 'join',
);
}
if (user_is_in_room) {
if (userIsInRoom) {
inviteGroup =
<AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } >
<div className="mx_RightPanel_icon" >
@ -183,51 +279,85 @@ module.exports = React.createClass({
<div className="mx_RightPanel_message">{ _t('Invite to this room') }</div>
</AccessibleButton>;
}
}
const isPhaseGroup = [
this.Phase.GroupMemberInfo,
this.Phase.GroupMemberList
].includes(this.state.phase);
let headerButtons = [];
if (this.props.roomId) {
buttonGroup =
<div className="mx_RightPanel_headerButtonGroup">
<AccessibleButton className="mx_RightPanel_headerButton"
title={ _t('Members') } onClick={ this.onMemberListButtonClick }>
<div className="mx_RightPanel_headerButton_badge">{ membersBadge ? membersBadge : <span>&nbsp;</span>}</div>
<TintableSvg src="img/icons-people.svg" width="25" height="25"/>
{ membersHighlight }
</AccessibleButton>
<AccessibleButton
className="mx_RightPanel_headerButton mx_RightPanel_filebutton"
title={ _t('Files') } onClick={ this.onFileListButtonClick }>
<div className="mx_RightPanel_headerButton_badge">&nbsp;</div>
<TintableSvg src="img/icons-files.svg" width="25" height="25"/>
{ filesHighlight }
</AccessibleButton>
<AccessibleButton
className="mx_RightPanel_headerButton mx_RightPanel_notificationbutton"
title={ _t('Notifications') } onClick={ this.onNotificationListButtonClick }>
<div className="mx_RightPanel_headerButton_badge">&nbsp;</div>
<TintableSvg src="img/icons-notifications.svg" width="25" height="25"/>
{ notificationsHighlight }
</AccessibleButton>
<div className="mx_RightPanel_headerButton mx_RightPanel_collapsebutton" title={ _t("Hide panel") } onClick={ this.onCollapseClick }>
<TintableSvg src="img/minimise.svg" width="10" height="16"/>
</div>
</div>;
headerButtons = [
<HeaderButton key="_membersButton" title={_t('Members')} iconSrc="img/icons-people.svg"
isHighlighted={[this.Phase.RoomMemberList, this.Phase.RoomMemberInfo].includes(this.state.phase)}
clickPhase={this.Phase.RoomMemberList}
badge={membersBadge}
analytics={['Right Panel', 'Member List Button', 'click']}
/>,
<HeaderButton key="_filesButton" title={_t('Files')} iconSrc="img/icons-files.svg"
isHighlighted={this.state.phase === this.Phase.FilePanel}
clickPhase={this.Phase.FilePanel}
analytics={['Right Panel', 'File List Button', 'click']}
/>,
<HeaderButton key="_notifsButton" title={_t('Notifications')} iconSrc="img/icons-notifications.svg"
isHighlighted={this.state.phase === this.Phase.NotificationPanel}
clickPhase={this.Phase.NotificationPanel}
analytics={['Right Panel', 'Notification List Button', 'click']}
/>,
];
} else if (this.props.groupId) {
headerButtons = [
<HeaderButton key="_groupMembersButton" title={_t('Members')} iconSrc="img/icons-people.svg"
isHighlighted={isPhaseGroup}
clickPhase={this.Phase.GroupMemberList}
analytics={['Right Panel', 'Group Member List Button', 'click']}
/>,
<HeaderButton key="_roomsButton" title={_t('Rooms')} iconSrc="img/icons-room.svg"
isHighlighted={[this.Phase.GroupRoomList, this.Phase.GroupRoomInfo].includes(this.state.phase)}
clickPhase={this.Phase.GroupRoomList}
analytics={['Right Panel', 'Group Room List Button', 'click']}
/>,
];
}
if (this.props.roomId || this.props.groupId) {
// Hiding the right panel hides it completely and relies on an 'expand' button
// being put in the RoomHeader or GroupView header, so only show the minimise
// button on these 2 screens or you won't be able to re-expand the panel.
headerButtons.push(
<div className="mx_RightPanel_headerButton mx_RightPanel_collapsebutton" key="_minimizeButton"
title={ _t("Hide panel") } onClick={ this.onCollapseClick }
>
<TintableSvg src="img/minimise.svg" width="10" height="16"/>
</div>,
);
}
let panel = <div />;
if (!this.props.collapsed) {
if(this.props.roomId && this.state.phase == this.Phase.MemberList) {
panel = <MemberList roomId={this.props.roomId} key={this.props.roomId} />
}
else if(this.state.phase == this.Phase.MemberInfo) {
var MemberInfo = sdk.getComponent('rooms.MemberInfo');
panel = <MemberInfo member={this.state.member} key={this.props.roomId || this.state.member.userId} />
}
else if (this.state.phase == this.Phase.NotificationPanel) {
panel = <NotificationPanel />
}
else if (this.state.phase == this.Phase.FilePanel) {
panel = <FilePanel roomId={this.props.roomId} />
if (this.props.roomId && this.state.phase == this.Phase.RoomMemberList) {
panel = <MemberList roomId={this.props.roomId} key={this.props.roomId} />;
} else if (this.props.groupId && this.state.phase == this.Phase.GroupMemberList) {
panel = <GroupMemberList groupId={this.props.groupId} key={this.props.groupId} />;
} else if (this.state.phase === this.Phase.GroupRoomList) {
panel = <GroupRoomList groupId={this.props.groupId} key={this.props.groupId} />;
} else if (this.state.phase == this.Phase.RoomMemberInfo) {
panel = <MemberInfo member={this.state.member} key={this.props.roomId || this.state.member.userId} />;
} else if (this.state.phase == this.Phase.GroupMemberInfo) {
panel = <GroupMemberInfo
groupMember={this.state.member}
groupId={this.props.groupId}
key={this.state.member.user_id} />;
} else if (this.state.phase == this.Phase.GroupRoomInfo) {
panel = <GroupRoomInfo
groupRoomId={this.state.groupRoomId}
groupId={this.props.groupId}
key={this.state.groupRoomId} />;
} else if (this.state.phase == this.Phase.NotificationPanel) {
panel = <NotificationPanel />;
} else if (this.state.phase == this.Phase.FilePanel) {
panel = <FilePanel roomId={this.props.roomId} />;
}
}
@ -235,15 +365,38 @@ module.exports = React.createClass({
panel = <div className="mx_RightPanel_blank"></div>;
}
var classes = "mx_RightPanel mx_fadable";
if (this.props.collapsed) {
classes += " collapsed";
if (this.props.groupId && this.state.isUserPrivilegedInGroup) {
inviteGroup = isPhaseGroup ? (
<AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } >
<div className="mx_RightPanel_icon" >
<TintableSvg src="img/icon-invite-people.svg" width="35" height="35" />
</div>
<div className="mx_RightPanel_message">{ _t('Invite to this community') }</div>
</AccessibleButton>
) : (
<AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } >
<div className="mx_RightPanel_icon" >
<TintableSvg src="img/icons-room-add.svg" width="35" height="35" />
</div>
<div className="mx_RightPanel_message">{ _t('Add rooms to this community') }</div>
</AccessibleButton>
);
}
let classes = classNames(
"mx_RightPanel", "mx_fadable",
{
"collapsed": this.props.collapsed,
"mx_fadable_faded": this.props.disabled,
}
);
return (
<aside className={classes} style={{ opacity: this.props.opacity }}>
<aside className={classes}>
<div className="mx_RightPanel_header">
{ buttonGroup }
<div className="mx_RightPanel_headerButtonGroup">
{headerButtons}
</div>
</div>
{ panel }
<div className="mx_RightPanel_footer">
@ -251,5 +404,5 @@ module.exports = React.createClass({
</div>
</aside>
);
}
},
});

View File

@ -89,17 +89,17 @@ module.exports = React.createClass({
});
// dis.dispatch({
// action: 'ui_opacity',
// sideOpacity: 0.3,
// middleOpacity: 0.3,
// action: 'panel_disable',
// sideDisabled: true,
// middleDisabled: true,
// });
},
componentWillUnmount: function() {
// dis.dispatch({
// action: 'ui_opacity',
// sideOpacity: 1.0,
// middleOpacity: 1.0,
// action: 'panel_disable',
// sideDisabled: false,
// middleDisabled: false,
// });
if (this.filterTimeout) {
clearTimeout(this.filterTimeout);
@ -409,7 +409,7 @@ module.exports = React.createClass({
perms = null;
if (guestRead || guestJoin) {
perms = <div className="mx_RoomDirectory_perms">{guestRead} {guestJoin}</div>;
perms = <div className="mx_RoomDirectory_perms">{guestRead}{guestJoin}</div>;
}
var topic = rooms[i].topic || '';

View File

@ -75,8 +75,8 @@ var RoomSubList = React.createClass({
order: React.PropTypes.string.isRequired,
// undefined if no room is selected (eg we are showing settings)
selectedRoom: React.PropTypes.string,
// passed through to RoomTile and used to highlight room with `!` regardless of notifications count
isInvite: React.PropTypes.bool,
startAsHidden: React.PropTypes.bool,
showSpinner: React.PropTypes.bool, // true to show a spinner if 0 elements when expanded
@ -88,6 +88,7 @@ var RoomSubList = React.createClass({
searchFilter: React.PropTypes.string,
emptyContent: React.PropTypes.node, // content shown if the list is empty
headerItems: React.PropTypes.node, // content shown in the sublist header
extraTiles: React.PropTypes.arrayOf(React.PropTypes.node), // extra elements added beneath tiles
},
getInitialState: function() {
@ -101,7 +102,9 @@ var RoomSubList = React.createClass({
getDefaultProps: function() {
return {
onHeaderClick: function() {}, // NOP
onShowMoreRooms: function() {} // NOP
onShowMoreRooms: function() {}, // NOP
extraTiles: [],
isInvite: false,
};
},
@ -243,10 +246,14 @@ var RoomSubList = React.createClass({
roomNotificationCount: function(truncateAt) {
var self = this;
if (this.props.isInvite) {
return [0, true];
}
return this.props.list.reduce(function(result, room, index) {
if (truncateAt === undefined || index >= truncateAt) {
var roomNotifState = RoomNotifs.getRoomNotifsState(room.roomId);
var highlight = room.getUnreadNotificationCount('highlight') > 0 || self.props.label === 'Invites';
var highlight = room.getUnreadNotificationCount('highlight') > 0;
var notificationCount = room.getUnreadNotificationCount();
const notifBadges = notificationCount > 0 && self._shouldShowNotifBadge(roomNotifState);
@ -366,7 +373,6 @@ var RoomSubList = React.createClass({
var self = this;
var DNDRoomTile = sdk.getComponent("rooms.DNDRoomTile");
return this.state.sortedList.map(function(room) {
var selected = room.roomId == self.props.selectedRoom;
// XXX: is it evil to pass in self as a prop to RoomTile?
return (
<DNDRoomTile
@ -374,10 +380,9 @@ var RoomSubList = React.createClass({
roomSubList={ self }
key={ room.roomId }
collapsed={ self.props.collapsed || false}
selected={ selected }
unread={ Unread.doesRoomHaveUnreadMessages(room) }
highlight={ room.getUnreadNotificationCount('highlight') > 0 || self.props.label === 'Invites' }
isInvite={ self.props.label === 'Invites' }
highlight={ room.getUnreadNotificationCount('highlight') > 0 || self.props.isInvite }
isInvite={ self.props.isInvite }
refreshSubList={ self._updateSubListCount }
incomingCall={ null }
onClick={ self.onRoomTileClick }
@ -393,7 +398,8 @@ var RoomSubList = React.createClass({
var subListNotifCount = subListNotifications[0];
var subListNotifHighlight = subListNotifications[1];
var roomCount = this.props.list.length > 0 ? this.props.list.length : '';
var totalTiles = this.props.list.length + (this.props.extraTiles || []).length;
var roomCount = totalTiles > 0 ? totalTiles : '';
var chevronClasses = classNames({
'mx_RoomSubList_chevron': true,
@ -409,6 +415,9 @@ var RoomSubList = React.createClass({
var badge;
if (subListNotifCount > 0) {
badge = <div className={badgeClasses}>{ FormattingUtils.formatCount(subListNotifCount) }</div>;
} else if (this.props.isInvite) {
// no notifications but highlight anyway because this is an invite badge
badge = <div className={badgeClasses}>!</div>;
}
// When collapsed, allow a long hover on the header to show user
@ -532,13 +541,14 @@ var RoomSubList = React.createClass({
var label = this.props.collapsed ? null : this.props.label;
let content;
if (this.state.sortedList.length == 0 && !this.props.searchFilter) {
if (this.state.sortedList.length === 0 && !this.props.searchFilter && this.props.extraTiles.length === 0) {
content = this.props.emptyContent;
} else {
content = this.makeRoomTiles();
content.push(...this.props.extraTiles);
}
if (this.state.sortedList.length > 0 || this.props.editable) {
if (this.state.sortedList.length > 0 || this.props.extraTiles.length > 0 || this.props.editable) {
var subList;
var classes = "mx_RoomSubList";

View File

@ -0,0 +1,30 @@
/*
Copyright 2017 Michael Telatynski <7t3chguy@gmail.com>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
'use strict';
import React from 'react';
import PropTypes from 'prop-types';
export default class GenericTextContextMenu extends React.Component {
static PropTypes = {
message: PropTypes.string.isRequired,
};
render() {
return <div>{ this.props.message }</div>;
}
}

View File

@ -43,26 +43,40 @@ module.exports = React.createClass({
getInitialState: function() {
return {
canRedact: false,
canPin: false,
};
},
componentWillMount: function() {
MatrixClientPeg.get().on('RoomMember.powerLevel', this._checkCanRedact);
this._checkCanRedact();
MatrixClientPeg.get().on('RoomMember.powerLevel', this._checkPermissions);
this._checkPermissions();
},
componentWillUnmount: function() {
const cli = MatrixClientPeg.get();
if (cli) {
cli.removeListener('RoomMember.powerLevel', this._checkCanRedact);
cli.removeListener('RoomMember.powerLevel', this._checkPermissions);
}
},
_checkCanRedact: function() {
_checkPermissions: function() {
const cli = MatrixClientPeg.get();
const room = cli.getRoom(this.props.mxEvent.getRoomId());
const canRedact = room.currentState.maySendRedactionForEvent(this.props.mxEvent, cli.credentials.userId);
this.setState({canRedact});
let canPin = room.currentState.mayClientSendStateEvent('m.room.pinned_events', cli);
// HACK: Intentionally say we can't pin if the user doesn't want to use the functionality
if (!UserSettingsStore.isFeatureEnabled("feature_pinning")) canPin = false;
this.setState({canRedact, canPin});
},
_isPinned: function() {
const room = MatrixClientPeg.get().getRoom(this.props.mxEvent.getRoomId());
const pinnedEvent = room.currentState.getStateEvents('m.room.pinned_events', '');
if (!pinnedEvent) return false;
return pinnedEvent.getContent().pinned.includes(this.props.mxEvent.getId());
},
onResendClick: function() {
@ -122,6 +136,28 @@ module.exports = React.createClass({
this.closeMenu();
},
onPinClick: function() {
MatrixClientPeg.get().getStateEvent(this.props.mxEvent.getRoomId(), 'm.room.pinned_events', '')
.catch(e => {
// Intercept the Event Not Found error and fall through the promise chain with no event.
if (e.errcode === "M_NOT_FOUND") return null;
throw e;
})
.then(event => {
const eventIds = (event ? event.pinned : []) || [];
if (!eventIds.includes(this.props.mxEvent.getId())) {
// Not pinned - add
eventIds.push(this.props.mxEvent.getId());
} else {
// Pinned - remove
eventIds.splice(eventIds.indexOf(this.props.mxEvent.getId()), 1);
}
MatrixClientPeg.get().sendStateEvent(this.props.mxEvent.getRoomId(), 'm.room.pinned_events', {pinned: eventIds}, '');
});
this.closeMenu();
},
closeMenu: function() {
if (this.props.onFinished) this.props.onFinished();
},
@ -147,6 +183,7 @@ module.exports = React.createClass({
let redactButton;
let cancelButton;
let forwardButton;
let pinButton;
let viewSourceButton;
let viewClearSourceButton;
let unhidePreviewButton;
@ -186,6 +223,14 @@ module.exports = React.createClass({
{ _t('Forward Message') }
</div>
);
if (this.state.canPin) {
pinButton = (
<div className="mx_MessageContextMenu_field" onClick={this.onPinClick}>
{this._isPinned() ? _t('Unpin Message') : _t('Pin Message')}
</div>
);
}
}
}
@ -246,6 +291,7 @@ module.exports = React.createClass({
{redactButton}
{cancelButton}
{forwardButton}
{pinButton}
{viewSourceButton}
{viewClearSourceButton}
{unhidePreviewButton}

View File

@ -21,7 +21,7 @@ import Promise from 'bluebird';
import React from 'react';
import classNames from 'classnames';
import sdk from 'matrix-react-sdk';
import { _t } from 'matrix-react-sdk/lib/languageHandler';
import { _t, _td } from 'matrix-react-sdk/lib/languageHandler';
import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg';
import dis from 'matrix-react-sdk/lib/dispatcher';
import DMRoomMap from 'matrix-react-sdk/lib/utils/DMRoomMap';
@ -185,7 +185,7 @@ module.exports = React.createClass({
MatrixClientPeg.get().forget(this.props.room.roomId).done(function() {
dis.dispatch({ action: 'view_next_room' });
}, function(err) {
var errCode = err.errcode || "unknown error code";
var errCode = err.errcode || _td("unknown error code");
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
Modal.createTrackedDialog('Failed to forget room', '', ErrorDialog, {
title: _t('Failed to forget room %(errCode)s', {errCode: errCode}),

View File

@ -17,6 +17,7 @@ limitations under the License.
import React from 'react';
import sdk from 'matrix-react-sdk';
import SdkConfig from 'matrix-react-sdk/lib/SdkConfig';
import Modal from 'matrix-react-sdk/lib/Modal';
import { _t } from 'matrix-react-sdk/lib/languageHandler';
export default class BugReportDialog extends React.Component {
@ -64,8 +65,13 @@ export default class BugReportDialog extends React.Component {
progressCallback: this._sendProgressCallback,
}).then(() => {
if (!this._unmounted) {
this.setState({ busy: false, progress: null });
this.props.onFinished(false);
const QuestionDialog = sdk.getComponent("dialogs.QuestionDialog");
Modal.createTrackedDialog('Bug report sent', '', QuestionDialog, {
title: _t('Bug report sent'),
description: _t('Thank you!'),
hasCancelButton: false,
});
}
}, (err) => {
if (!this._unmounted) {

View File

@ -0,0 +1,594 @@
/*
Copyright 2017 Michael Telatynski <7t3chguy@gmail.com>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
import React from 'react';
import PropTypes from 'prop-types';
import sdk from 'matrix-react-sdk';
import { _t } from 'matrix-react-sdk/lib/languageHandler';
import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg';
class DevtoolsComponent extends React.Component {
static contextTypes = {
roomId: PropTypes.string.isRequired,
};
}
class GenericEditor extends DevtoolsComponent {
// static propTypes = {onBack: PropTypes.func.isRequired};
constructor(props, context) {
super(props, context);
this._onChange = this._onChange.bind(this);
this.onBack = this.onBack.bind(this);
}
onBack() {
if (this.state.message) {
this.setState({ message: null });
} else {
this.props.onBack();
}
}
_onChange(e) {
this.setState({[e.target.id]: e.target.type === 'checkbox' ? e.target.checked : e.target.value});
}
_buttons() {
return <div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
{ !this.state.message && <button onClick={this._send}>{ _t('Send') }</button> }
</div>;
}
textInput(id, label) {
return <div className="mx_DevTools_inputRow">
<div className="mx_DevTools_inputLabelCell">
<label htmlFor={id}>{ label }</label>
</div>
<div className="mx_DevTools_inputCell">
<input id={id} onChange={this._onChange} value={this.state[id]} size="32" />
</div>
</div>;
}
}
class SendCustomEvent extends GenericEditor {
static getLabel() { return _t('Send Custom Event'); }
static propTypes = {
onBack: PropTypes.func.isRequired,
forceStateEvent: PropTypes.bool,
inputs: PropTypes.object,
};
constructor(props, context) {
super(props, context);
this._send = this._send.bind(this);
const {eventType, stateKey, evContent} = Object.assign({
eventType: '',
stateKey: '',
evContent: '{\n\n}',
}, this.props.inputs);
this.state = {
isStateEvent: Boolean(this.props.forceStateEvent),
eventType,
stateKey,
evContent,
};
}
send(content) {
const cli = MatrixClientPeg.get();
if (this.state.isStateEvent) {
return cli.sendStateEvent(this.context.roomId, this.state.eventType, content, this.state.stateKey);
} else {
return cli.sendEvent(this.context.roomId, this.state.eventType, content);
}
}
async _send() {
if (this.state.eventType === '') {
this.setState({ message: _t('You must specify an event type!') });
return;
}
let message;
try {
const content = JSON.parse(this.state.evContent);
await this.send(content);
message = _t('Event sent!');
} catch (e) {
message = _t('Failed to send custom event.') + ' (' + e.toString() + ')';
}
this.setState({ message });
}
render() {
if (this.state.message) {
return <div>
<div className="mx_Dialog_content">
{ this.state.message }
</div>
{ this._buttons() }
</div>;
}
return <div>
<div className="mx_Dialog_content">
{ this.textInput('eventType', _t('Event Type')) }
{ this.state.isStateEvent && this.textInput('stateKey', _t('State Key')) }
<br />
<div className="mx_UserSettings_profileLabelCell">
<label htmlFor="evContent"> { _t('Event Content') } </label>
</div>
<div>
<textarea id="evContent" onChange={this._onChange} value={this.state.evContent} className="mx_TextInputDialog_input" cols="63" rows="5" />
</div>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
{ !this.state.message && <button onClick={this._send}>{ _t('Send') }</button> }
{ !this.state.message && !this.props.forceStateEvent && <div style={{float: "right"}}>
<input id="isStateEvent" className="mx_DevTools_tgl mx_DevTools_tgl-flip" type="checkbox" onChange={this._onChange} checked={this.state.isStateEvent} />
<label className="mx_DevTools_tgl-btn" data-tg-off="Event" data-tg-on="State Event" htmlFor="isStateEvent" />
</div> }
</div>
</div>;
}
}
class SendAccountData extends GenericEditor {
static getLabel() { return _t('Send Account Data'); }
static propTypes = {
isRoomAccountData: PropTypes.bool,
forceMode: PropTypes.bool,
inputs: PropTypes.object,
};
constructor(props, context) {
super(props, context);
this._send = this._send.bind(this);
const {eventType, evContent} = Object.assign({
eventType: '',
evContent: '{\n\n}',
}, this.props.inputs);
this.state = {
isRoomAccountData: Boolean(this.props.isRoomAccountData),
eventType,
evContent,
};
}
send(content) {
const cli = MatrixClientPeg.get();
if (this.state.isRoomAccountData) {
return cli.setRoomAccountData(this.context.roomId, this.state.eventType, content);
}
return cli.setAccountData(this.state.eventType, content);
}
async _send() {
if (this.state.eventType === '') {
this.setState({ message: _t('You must specify an event type!') });
return;
}
let message;
try {
const content = JSON.parse(this.state.evContent);
await this.send(content);
message = _t('Event sent!');
} catch (e) {
message = _t('Failed to send custom event.') + ' (' + e.toString() + ')';
}
this.setState({ message });
}
render() {
if (this.state.message) {
return <div>
<div className="mx_Dialog_content">
{ this.state.message }
</div>
{ this._buttons() }
</div>;
}
return <div>
<div className="mx_Dialog_content">
{ this.textInput('eventType', _t('Event Type')) }
<br />
<div className="mx_UserSettings_profileLabelCell">
<label htmlFor="evContent"> { _t('Event Content') } </label>
</div>
<div>
<textarea id="evContent" onChange={this._onChange} value={this.state.evContent} className="mx_TextInputDialog_input" cols="63" rows="5" />
</div>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
{ !this.state.message && <button onClick={this._send}>{ _t('Send') }</button> }
{ !this.state.message && <div style={{float: "right"}}>
<input id="isRoomAccountData" className="mx_DevTools_tgl mx_DevTools_tgl-flip" type="checkbox" onChange={this._onChange} checked={this.state.isRoomAccountData} disabled={this.props.forceMode} />
<label className="mx_DevTools_tgl-btn" data-tg-off="Account Data" data-tg-on="Room Data" htmlFor="isRoomAccountData" />
</div> }
</div>
</div>;
}
}
class FilteredList extends React.Component {
static propTypes = {
children: PropTypes.any,
};
constructor(props, context) {
super(props, context);
this.onQuery = this.onQuery.bind(this);
this.state = {
query: '',
};
}
onQuery(ev) {
this.setState({ query: ev.target.value });
}
filterChildren() {
if (this.state.query) {
const lowerQuery = this.state.query.toLowerCase();
return this.props.children.filter((child) => child.key.toLowerCase().includes(lowerQuery));
}
return this.props.children;
}
render() {
return <div>
<input size="64"
onChange={this.onQuery}
value={this.state.query}
placeholder={_t('Filter results')}
className="mx_TextInputDialog_input mx_DevTools_RoomStateExplorer_query" />
{ this.filterChildren() }
</div>;
}
}
class RoomStateExplorer extends DevtoolsComponent {
static getLabel() { return _t('Explore Room State'); }
static propTypes = {
onBack: PropTypes.func.isRequired,
};
constructor(props, context) {
super(props, context);
const room = MatrixClientPeg.get().getRoom(this.context.roomId);
this.roomStateEvents = room.currentState.events;
this.onBack = this.onBack.bind(this);
this.editEv = this.editEv.bind(this);
this.state = {
eventType: null,
event: null,
editing: false,
};
}
browseEventType(eventType) {
return () => {
this.setState({ eventType });
};
}
onViewSourceClick(event) {
return () => {
this.setState({ event });
};
}
onBack() {
if (this.state.editing) {
this.setState({ editing: false });
} else if (this.state.event) {
this.setState({ event: null });
} else if (this.state.eventType) {
this.setState({ eventType: null });
} else {
this.props.onBack();
}
}
editEv() {
this.setState({ editing: true });
}
render() {
if (this.state.event) {
if (this.state.editing) {
return <SendCustomEvent forceStateEvent={true} onBack={this.onBack} inputs={{
eventType: this.state.event.getType(),
evContent: JSON.stringify(this.state.event.getContent(), null, '\t'),
stateKey: this.state.event.getStateKey(),
}} />;
}
return <div className="mx_ViewSource">
<div className="mx_Dialog_content">
<pre>{ JSON.stringify(this.state.event.event, null, 2) }</pre>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
<button onClick={this.editEv}>{ _t('Edit') }</button>
</div>
</div>;
}
const rows = [];
const classes = 'mx_DevTools_RoomStateExplorer_button';
if (this.state.eventType === null) {
Object.keys(this.roomStateEvents).forEach((evType) => {
const stateGroup = this.roomStateEvents[evType];
const stateKeys = Object.keys(stateGroup);
let onClickFn;
if (stateKeys.length > 1) {
onClickFn = this.browseEventType(evType);
} else if (stateKeys.length === 1) {
onClickFn = this.onViewSourceClick(stateGroup[stateKeys[0]]);
}
rows.push(<button className={classes} key={evType} onClick={onClickFn}>
{ evType }
</button>);
});
} else {
const evType = this.state.eventType;
const stateGroup = this.roomStateEvents[evType];
Object.keys(stateGroup).forEach((stateKey) => {
const ev = stateGroup[stateKey];
rows.push(<button className={classes} key={stateKey} onClick={this.onViewSourceClick(ev)}>
{ stateKey }
</button>);
});
}
return <div>
<div className="mx_Dialog_content">
<FilteredList>
{ rows }
</FilteredList>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
</div>
</div>;
}
}
class AccountDataExplorer extends DevtoolsComponent {
static getLabel() { return _t('Explore Account Data'); }
static propTypes = {
onBack: PropTypes.func.isRequired,
};
constructor(props, context) {
super(props, context);
this.onBack = this.onBack.bind(this);
this.editEv = this.editEv.bind(this);
this._onChange = this._onChange.bind(this);
this.state = {
isRoomAccountData: false,
event: null,
editing: false,
};
}
getData() {
const cli = MatrixClientPeg.get();
if (this.state.isRoomAccountData) {
return cli.getRoom(this.context.roomId).accountData;
}
return cli.store.accountData;
}
onViewSourceClick(event) {
return () => {
this.setState({ event });
};
}
onBack() {
if (this.state.editing) {
this.setState({ editing: false });
} else if (this.state.event) {
this.setState({ event: null });
} else {
this.props.onBack();
}
}
_onChange(e) {
this.setState({[e.target.id]: e.target.type === 'checkbox' ? e.target.checked : e.target.value});
}
editEv() {
this.setState({ editing: true });
}
render() {
if (this.state.event) {
if (this.state.editing) {
return <SendAccountData isRoomAccountData={this.state.isRoomAccountData} onBack={this.onBack} inputs={{
eventType: this.state.event.getType(),
evContent: JSON.stringify(this.state.event.getContent(), null, '\t'),
}} forceMode={true} />;
}
return <div className="mx_ViewSource">
<div className="mx_Dialog_content">
<pre>{ JSON.stringify(this.state.event.event, null, 2) }</pre>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
<button onClick={this.editEv}>{ _t('Edit') }</button>
</div>
</div>;
}
const rows = [];
const classes = 'mx_DevTools_RoomStateExplorer_button';
const data = this.getData();
Object.keys(data).forEach((evType) => {
const ev = data[evType];
rows.push(<button className={classes} key={evType} onClick={this.onViewSourceClick(ev)}>
{ evType }
</button>);
});
return <div>
<div className="mx_Dialog_content">
<FilteredList>
{ rows }
</FilteredList>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
{ !this.state.message && <div style={{float: "right"}}>
<input id="isRoomAccountData" className="mx_DevTools_tgl mx_DevTools_tgl-flip" type="checkbox" onChange={this._onChange} checked={this.state.isRoomAccountData} />
<label className="mx_DevTools_tgl-btn" data-tg-off="Account Data" data-tg-on="Room Data" htmlFor="isRoomAccountData" />
</div> }
</div>
</div>;
}
}
const Entries = [
SendCustomEvent,
RoomStateExplorer,
SendAccountData,
AccountDataExplorer,
];
export default class DevtoolsDialog extends React.Component {
static childContextTypes = {
roomId: PropTypes.string.isRequired,
// client: PropTypes.instanceOf(MatixClient),
};
static propTypes = {
roomId: PropTypes.string.isRequired,
onFinished: PropTypes.func.isRequired,
};
constructor(props, context) {
super(props, context);
this.onBack = this.onBack.bind(this);
this.onCancel = this.onCancel.bind(this);
this.state = {
mode: null,
};
}
componentWillUnmount() {
this._unmounted = true;
}
getChildContext() {
return { roomId: this.props.roomId };
}
_setMode(mode) {
return () => {
this.setState({ mode });
};
}
onBack() {
if (this.prevMode) {
this.setState({ mode: this.prevMode });
this.prevMode = null;
} else {
this.setState({ mode: null });
}
}
onCancel() {
this.props.onFinished(false);
}
render() {
let body;
if (this.state.mode) {
body = <div>
<div className="mx_DevTools_label_left">{ this.state.mode.getLabel() }</div>
<div className="mx_DevTools_label_right">Room ID: { this.props.roomId }</div>
<div className="mx_DevTools_label_bottom" />
<this.state.mode onBack={this.onBack} />
</div>;
} else {
const classes = "mx_DevTools_RoomStateExplorer_button";
body = <div>
<div>
<div className="mx_DevTools_label_left">{ _t('Toolbox') }</div>
<div className="mx_DevTools_label_right">Room ID: { this.props.roomId }</div>
<div className="mx_DevTools_label_bottom" />
<div className="mx_Dialog_content">
{ Entries.map((Entry) => {
const label = Entry.getLabel();
const onClick = this._setMode(Entry);
return <button className={classes} key={label} onClick={onClick}>{ label }</button>;
}) }
</div>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onCancel}>{ _t('Cancel') }</button>
</div>
</div>;
}
const BaseDialog = sdk.getComponent('views.dialogs.BaseDialog');
return (
<BaseDialog className="mx_QuestionDialog" onFinished={this.props.onFinished} title={_t('Developer Tools')}>
{ body }
</BaseDialog>
);
}
}

View File

@ -150,7 +150,21 @@ export default class NetworkDropdown extends React.Component {
if (this.props.protocols) {
for (const proto of Object.keys(this.props.protocols)) {
if (!this.props.protocols[proto].instances) continue;
for (const instance of this.props.protocols[proto].instances) {
const sortedInstances = this.props.protocols[proto].instances;
sortedInstances.sort(function(x, y) {
const a = x.desc
const b = y.desc
if (a < b) {
return -1;
} else if (a > b) {
return 1;
} else {
return 0;
}
});
for (const instance of sortedInstances) {
if (!instance.instance_id) continue;
options.push(this._makeMenuOption(server, instance, false));
}

View File

@ -150,8 +150,16 @@ module.exports = React.createClass({
var eventMeta;
if(showEventMeta) {
// Figure out the sender, defaulting to mxid
let sender = this.props.mxEvent.getSender();
const room = MatrixClientPeg.get().getRoom(this.props.mxEvent.getRoomId());
if (room) {
const member = room.getMember(sender);
if (member) sender = member.name;
}
eventMeta = (<div className="mx_ImageView_metadata">
{ _t('Uploaded on %(date)s by %(user)s', {date: DateUtils.formatDate(new Date(this.props.mxEvent.getTs())), user: this.props.mxEvent.getSender()}) }
{ _t('Uploaded on %(date)s by %(user)s', {date: DateUtils.formatDate(new Date(this.props.mxEvent.getTs())), user: sender}) }
</div>);
}

View File

@ -0,0 +1,33 @@
/*
Copyright 2017 New Vector Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
const React = require('react');
module.exports = React.createClass({
displayName: 'InlineSpinner',
render: function() {
var w = this.props.w || 16;
var h = this.props.h || 16;
var imgClass = this.props.imgClassName || "";
return (
<div className="mx_InlineSpinner">
<img src="img/spinner.gif" width={w} height={h} className={imgClass}/>
</div>
);
}
});

View File

@ -1,5 +1,6 @@
/*
Copyright 2015, 2016 OpenMarket Ltd
Copyright 2017 New Vector Ltd
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@ -31,7 +32,13 @@ module.exports = React.createClass({
{ _t('Custom Server Options') }
</div>
<div className="mx_Dialog_content">
<span dangerouslySetInnerHTML={{__html: sanitizeHtml(_t('customServer_text'))}} />
<span dangerouslySetInnerHTML={{__html: sanitizeHtml(_t(
"You can use the custom server options to sign into other Matrix "+
"servers by specifying a different Home server URL.<br/>This allows "+
"you to use Riot with an existing Matrix account on a different home "+
"server.<br/><br/>You can also set a custom identity server but you won't "+
"be able to invite users by email address, or be invited by email address yourself.",
))}} />
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.props.onFinished} autoFocus={true}>

View File

@ -30,7 +30,7 @@ module.exports = React.createClass({
<div className="mx_Login_links">
<a href="https://medium.com/@RiotChat">blog</a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="https://twitter.com/@RiotChat">twitter</a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="https://github.com/vector-im/vector-web">github</a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="https://github.com/vector-im/riot-web">github</a>&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="https://matrix.org">{ _t('powered by Matrix') }</a>
</div>
);

View File

@ -16,10 +16,11 @@ limitations under the License.
'use strict';
var React = require('react');
import React from 'react';
import PropTypes from 'prop-types';
const i = [1, 2, 3, 4, 5][Math.floor(Math.random() * 5)];
const DEFAULT_LOGO_URI = "img/logos/riot-logo-" + i + ".svg";
const DEFAULT_LOGO_URI = "img/logos/riot-im-logo-" + i + ".svg";
module.exports = React.createClass({
displayName: 'VectorLoginHeader',
@ -27,7 +28,7 @@ module.exports = React.createClass({
replaces: 'LoginHeader',
},
propTypes: {
icon: React.PropTypes.string,
icon: PropTypes.string,
},
render: function() {

View File

@ -19,13 +19,16 @@ limitations under the License.
var React = require('react');
var ReactDOM = require('react-dom');
var dis = require('matrix-react-sdk/lib/dispatcher');
import classNames from 'classnames';
module.exports = React.createClass({
displayName: 'RoomTooltip',
propTypes: {
// Alllow the tooltip to be styled by the parent element
// Class applied to the element used to position the tooltip
className: React.PropTypes.string.isRequired,
// Class applied to the tooltip itself
tooltipClassName: React.PropTypes.string,
// The tooltip is derived from either the room name or a label
room: React.PropTypes.object,
label: React.PropTypes.string,
@ -69,8 +72,12 @@ module.exports = React.createClass({
style.left = 6 + parent.getBoundingClientRect().right + window.pageXOffset;
style.display = "block";
const tooltipClasses = classNames(
"mx_RoomTooltip", this.props.tooltipClassName,
);
var tooltip = (
<div className="mx_RoomTooltip" style={style} >
<div className={tooltipClasses} style={style} >
<div className="mx_RoomTooltip_chevron"></div>
{ label }
</div>

View File

@ -14,16 +14,19 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
'use strict';
var React = require('react');
import { _t, _tJsx } from 'matrix-react-sdk/lib/languageHandler';
import React from 'react';
import Promise from 'bluebird';
var sdk = require('matrix-react-sdk');
var MatrixClientPeg = require('matrix-react-sdk/lib/MatrixClientPeg');
var UserSettingsStore = require('matrix-react-sdk/lib/UserSettingsStore');
var Modal = require('matrix-react-sdk/lib/Modal');
var notifications = require('../../../notifications');
import sdk from 'matrix-react-sdk';
import { _t, _tJsx } from 'matrix-react-sdk/lib/languageHandler';
import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg';
import UserSettingsStore from 'matrix-react-sdk/lib/UserSettingsStore';
import Modal from 'matrix-react-sdk/lib/Modal';
import {
NotificationUtils,
VectorPushRulesDefinitions,
PushRuleVectorState,
ContentRules
} from '../../../notifications';
// TODO: this "view" component still has far too much application logic in it,
// which should be factored out to other files.
@ -31,17 +34,13 @@ var notifications = require('../../../notifications');
// TODO: this component also does a lot of direct poking into this.state, which
// is VERY NAUGHTY.
var NotificationUtils = notifications.NotificationUtils;
var VectorPushRulesDefinitions = notifications.VectorPushRulesDefinitions;
var PushRuleVectorState = notifications.PushRuleVectorState;
var ContentRules = notifications.ContentRules;
/**
* Rules that Vector used to set in order to override the actions of default rules.
* These are used to port peoples existing overrides to match the current API.
* These can be removed and forgotten once everyone has moved to the new client.
*/
var LEGACY_RULES = {
const LEGACY_RULES = {
"im.vector.rule.contains_display_name": ".m.rule.contains_display_name",
"im.vector.rule.room_one_to_one": ".m.rule.room_one_to_one",
"im.vector.rule.room_message": ".m.rule.message",
@ -51,7 +50,7 @@ var LEGACY_RULES = {
};
function portLegacyActions(actions) {
var decoded = NotificationUtils.decodeActions(actions);
const decoded = NotificationUtils.decodeActions(actions);
if (decoded !== null) {
return NotificationUtils.encodeActions(decoded);
} else {
@ -62,7 +61,7 @@ function portLegacyActions(actions) {
}
module.exports = React.createClass({
displayName: 'Notififications',
displayName: 'Notifications',
phases: {
LOADING: "LOADING", // The component is loading or sending data to the hs
@ -102,7 +101,7 @@ module.exports = React.createClass({
},
onEnableNotificationsChange: function(event) {
var self = this;
const self = this;
this.setState({
phase: this.phases.LOADING
});
@ -116,21 +115,26 @@ module.exports = React.createClass({
UserSettingsStore.setEnableNotifications(event.target.checked);
},
onEnableDesktopNotificationBodyChange: function(event) {
UserSettingsStore.setEnableNotificationBody(event.target.checked);
this.forceUpdate();
},
onEnableEmailNotificationsChange: function(address, event) {
var emailPusherPromise;
let emailPusherPromise;
if (event.target.checked) {
var data = {}
const data = {}
data['brand'] = this.props.brand || 'Riot';
emailPusherPromise = UserSettingsStore.addEmailPusher(address, data);
} else {
var emailPusher = UserSettingsStore.getEmailPusher(this.state.pushers, address);
const emailPusher = UserSettingsStore.getEmailPusher(this.state.pushers, address);
emailPusher.kind = null;
emailPusherPromise = MatrixClientPeg.get().setPusher(emailPusher);
}
emailPusherPromise.done(() => {
this._refreshFromServer();
}, (error) => {
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
const ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
Modal.createTrackedDialog('Error saving email notification preferences', '', ErrorDialog, {
title: _t('Error saving email notification preferences'),
description: _t('An error occurred whilst saving your email notification preferences.'),
@ -140,14 +144,14 @@ module.exports = React.createClass({
onNotifStateButtonClicked: function(event) {
// FIXME: use .bind() rather than className metadata here surely
var vectorRuleId = event.target.className.split("-")[0];
var newPushRuleVectorState = event.target.className.split("-")[1];
const vectorRuleId = event.target.className.split("-")[0];
const newPushRuleVectorState = event.target.className.split("-")[1];
if ("_keywords" === vectorRuleId) {
this._setKeywordsPushRuleVectorState(newPushRuleVectorState)
}
else {
var rule = this.getRule(vectorRuleId);
const rule = this.getRule(vectorRuleId);
if (rule) {
this._setPushRuleVectorState(rule, newPushRuleVectorState);
}
@ -155,12 +159,12 @@ module.exports = React.createClass({
},
onKeywordsClicked: function(event) {
var self = this;
const self = this;
// Compute the keywords list to display
var keywords = [];
for (var i in this.state.vectorContentRules.rules) {
var rule = this.state.vectorContentRules.rules[i];
let keywords = [];
for (let i in this.state.vectorContentRules.rules) {
const rule = this.state.vectorContentRules.rules[i];
keywords.push(rule.pattern);
}
if (keywords.length) {
@ -174,7 +178,7 @@ module.exports = React.createClass({
keywords = "";
}
var TextInputDialog = sdk.getComponent("dialogs.TextInputDialog");
const TextInputDialog = sdk.getComponent("dialogs.TextInputDialog");
Modal.createTrackedDialog('Keywords Dialog', '', TextInputDialog, {
title: _t('Keywords'),
description: _t('Enter keywords separated by a comma:'),
@ -183,8 +187,8 @@ module.exports = React.createClass({
onFinished: function onFinished(should_leave, newValue) {
if (should_leave && newValue !== keywords) {
var newKeywords = newValue.split(',');
for (var i in newKeywords) {
let newKeywords = newValue.split(',');
for (let i in newKeywords) {
newKeywords[i] = newKeywords[i].trim();
}
@ -203,8 +207,8 @@ module.exports = React.createClass({
},
getRule: function(vectorRuleId) {
for (var i in this.state.vectorPushRules) {
var rule = this.state.vectorPushRules[i];
for (let i in this.state.vectorPushRules) {
const rule = this.state.vectorPushRules[i];
if (rule.vectorRuleId === vectorRuleId) {
return rule;
}
@ -218,13 +222,13 @@ module.exports = React.createClass({
phase: this.phases.LOADING
});
var self = this;
var cli = MatrixClientPeg.get();
var deferreds = [];
var ruleDefinition = VectorPushRulesDefinitions[rule.vectorRuleId];
const self = this;
const cli = MatrixClientPeg.get();
const deferreds = [];
const ruleDefinition = VectorPushRulesDefinitions[rule.vectorRuleId];
if (rule.rule) {
var actions = ruleDefinition.vectorStateToActions[newPushRuleVectorState];
const actions = ruleDefinition.vectorStateToActions[newPushRuleVectorState];
if (!actions) {
// The new state corresponds to disabling the rule.
@ -239,7 +243,7 @@ module.exports = React.createClass({
Promise.all(deferreds).done(function() {
self._refreshFromServer();
}, function(error) {
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
const ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
console.error("Failed to change settings: " + error);
Modal.createTrackedDialog('Failed to change settings', '', ErrorDialog, {
title: _t('Failed to change settings'),
@ -257,19 +261,19 @@ module.exports = React.createClass({
return;
}
var self = this;
var cli = MatrixClientPeg.get();
const self = this;
const cli = MatrixClientPeg.get();
this.setState({
phase: this.phases.LOADING
});
// Update all rules in self.state.vectorContentRules
var deferreds = [];
for (var i in this.state.vectorContentRules.rules) {
var rule = this.state.vectorContentRules.rules[i];
const deferreds = [];
for (let i in this.state.vectorContentRules.rules) {
const rule = this.state.vectorContentRules.rules[i];
var enabled, actions;
let enabled, actions;
switch (newPushRuleVectorState) {
case PushRuleVectorState.ON:
if (rule.actions.length !== 1) {
@ -309,7 +313,7 @@ module.exports = React.createClass({
Promise.all(deferreds).done(function(resps) {
self._refreshFromServer();
}, function(error) {
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
const ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
console.error("Can't update user notification settings: " + error);
Modal.createTrackedDialog('Can\'t update user notifcation settings', '', ErrorDialog, {
title: _t('Can\'t update user notification settings'),
@ -324,14 +328,14 @@ module.exports = React.createClass({
phase: this.phases.LOADING
});
var self = this;
var cli = MatrixClientPeg.get();
var removeDeferreds = [];
const self = this;
const cli = MatrixClientPeg.get();
const removeDeferreds = [];
// Remove per-word push rules of keywords that are no more in the list
var vectorContentRulesPatterns = [];
for (var i in self.state.vectorContentRules.rules) {
var rule = self.state.vectorContentRules.rules[i];
const vectorContentRulesPatterns = [];
for (let i in self.state.vectorContentRules.rules) {
const rule = self.state.vectorContentRules.rules[i];
vectorContentRulesPatterns.push(rule.pattern);
@ -342,16 +346,16 @@ module.exports = React.createClass({
// If the keyword is part of `externalContentRules`, remove the rule
// before recreating it in the right Vector path
for (var i in self.state.externalContentRules) {
var rule = self.state.externalContentRules[i];
for (let i in self.state.externalContentRules) {
const rule = self.state.externalContentRules[i];
if (newKeywords.indexOf(rule.pattern) >= 0) {
removeDeferreds.push(cli.deletePushRule('global', rule.kind, rule.rule_id));
}
}
var onError = function(error) {
var ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
const onError = function(error) {
const ErrorDialog = sdk.getComponent("dialogs.ErrorDialog");
console.error("Failed to update keywords: " + error);
Modal.createTrackedDialog('Failed to update keywords', '', ErrorDialog, {
title: _t('Failed to update keywords'),
@ -362,9 +366,9 @@ module.exports = React.createClass({
// Then, add the new ones
Promise.all(removeDeferreds).done(function(resps) {
var deferreds = [];
const deferreds = [];
var pushRuleVectorStateKind = self.state.vectorContentRules.vectorState;
let pushRuleVectorStateKind = self.state.vectorContentRules.vectorState;
if (pushRuleVectorStateKind === PushRuleVectorState.OFF) {
// When the current global keywords rule is OFF, we need to look at
// the flavor of rules in 'vectorContentRules' to apply the same actions
@ -379,8 +383,8 @@ module.exports = React.createClass({
}
}
for (var i in newKeywords) {
var keyword = newKeywords[i];
for (let i in newKeywords) {
const keyword = newKeywords[i];
if (vectorContentRulesPatterns.indexOf(keyword) < 0) {
if (self.state.vectorContentRules.vectorState !== PushRuleVectorState.OFF) {
@ -407,31 +411,31 @@ module.exports = React.createClass({
// Create a push rule but disabled
_addDisabledPushRule: function(scope, kind, ruleId, body) {
var cli = MatrixClientPeg.get();
return cli.addPushRule(scope, kind, ruleId, body).then(function() {
return cli.setPushRuleEnabled(scope, kind, ruleId, false);
});
const cli = MatrixClientPeg.get();
return cli.addPushRule(scope, kind, ruleId, body).then(() =>
cli.setPushRuleEnabled(scope, kind, ruleId, false)
);
},
// Check if any legacy im.vector rules need to be ported to the new API
// for overriding the actions of default rules.
_portRulesToNewAPI: function(rulesets) {
var self = this;
var needsUpdate = [];
var cli = MatrixClientPeg.get();
const self = this;
const needsUpdate = [];
const cli = MatrixClientPeg.get();
for (var kind in rulesets.global) {
var ruleset = rulesets.global[kind];
for (var i = 0; i < ruleset.length; ++i) {
var rule = ruleset[i];
for (let kind in rulesets.global) {
const ruleset = rulesets.global[kind];
for (let i = 0; i < ruleset.length; ++i) {
const rule = ruleset[i];
if (rule.rule_id in LEGACY_RULES) {
console.log("Porting legacy rule", rule);
needsUpdate.push( function(kind, rule) {
return cli.setPushRuleActions(
'global', kind, LEGACY_RULES[rule.rule_id], portLegacyActions(rule.actions)
).then( function() {
return cli.deletePushRule('global', kind, rule.rule_id);
}).catch( (e) => {
).then(() =>
cli.deletePushRule('global', kind, rule.rule_id)
).catch( (e) => {
console.warn(`Error when porting legacy rule: ${e}`);
});
}(kind, rule));
@ -442,9 +446,9 @@ module.exports = React.createClass({
if (needsUpdate.length > 0) {
// If some of the rules need to be ported then wait for the porting
// to happen and then fetch the rules again.
return Promise.all(needsUpdate).then( function() {
return cli.getPushRules();
});
return Promise.all(needsUpdate).then(() =>
cli.getPushRules()
);
} else {
// Otherwise return the rules that we already have.
return rulesets;
@ -452,15 +456,14 @@ module.exports = React.createClass({
},
_refreshFromServer: function() {
var self = this;
var pushRulesPromise = MatrixClientPeg.get().getPushRules().then(self._portRulesToNewAPI).then(function(rulesets) {
//console.log("resolving pushRulesPromise");
const self = this;
const pushRulesPromise = MatrixClientPeg.get().getPushRules().then(self._portRulesToNewAPI).then(function(rulesets) {
/// XXX seriously? wtf is this?
MatrixClientPeg.get().pushRules = rulesets;
// Get homeserver default rules and triage them by categories
var rule_categories = {
const rule_categories = {
// The master rule (all notifications disabling)
'.m.rule.master': 'master',
@ -478,12 +481,12 @@ module.exports = React.createClass({
};
// HS default rules
var defaultRules = {master: [], vector: {}, others: []};
const defaultRules = {master: [], vector: {}, others: []};
for (var kind in rulesets.global) {
for (var i = 0; i < Object.keys(rulesets.global[kind]).length; ++i) {
var r = rulesets.global[kind][i];
var cat = rule_categories[r.rule_id];
for (let kind in rulesets.global) {
for (let i = 0; i < Object.keys(rulesets.global[kind]).length; ++i) {
const r = rulesets.global[kind][i];
const cat = rule_categories[r.rule_id];
r.kind = kind;
if (r.rule_id[0] === '.') {
@ -506,7 +509,7 @@ module.exports = React.createClass({
}
// parse the keyword rules into our state
var contentRules = ContentRules.parseContentRules(rulesets);
const contentRules = ContentRules.parseContentRules(rulesets);
self.state.vectorContentRules = {
vectorState: contentRules.vectorState,
rules: contentRules.rules,
@ -517,7 +520,7 @@ module.exports = React.createClass({
self.state.vectorPushRules = [];
self.state.externalPushRules = [];
var vectorRuleIds = [
const vectorRuleIds = [
'.m.rule.contains_display_name',
'.m.rule.contains_user_name',
'_keywords',
@ -528,8 +531,8 @@ module.exports = React.createClass({
'.m.rule.call',
'.m.rule.suppress_notices'
];
for (var i in vectorRuleIds) {
var vectorRuleId = vectorRuleIds[i];
for (let i in vectorRuleIds) {
const vectorRuleId = vectorRuleIds[i];
if (vectorRuleId === '_keywords') {
// keywords needs a special handling
@ -541,9 +544,8 @@ module.exports = React.createClass({
<span>
{ _tJsx('Messages containing <span>keywords</span>',
/<span>(.*?)<\/span>/,
(sub) => {
return <span className="mx_UserNotifSettings_keywords" onClick={ self.onKeywordsClicked }>{sub}</span>;
}
(sub) =>
<span className="mx_UserNotifSettings_keywords" onClick={ self.onKeywordsClicked }>{sub}</span>
)}
</span>
),
@ -551,10 +553,10 @@ module.exports = React.createClass({
});
}
else {
var ruleDefinition = VectorPushRulesDefinitions[vectorRuleId];
var rule = defaultRules.vector[vectorRuleId];
const ruleDefinition = VectorPushRulesDefinitions[vectorRuleId];
const rule = defaultRules.vector[vectorRuleId];
var vectorState = ruleDefinition.ruleToVectorState(rule);
const vectorState = ruleDefinition.ruleToVectorState(rule);
//console.log("Refreshing vectorPushRules for " + vectorRuleId +", "+ ruleDefinition.description +", " + rule +", " + vectorState);
@ -574,14 +576,14 @@ module.exports = React.createClass({
}
// Build the rules not managed by Vector UI
var otherRulesDescriptions = {
const otherRulesDescriptions = {
'.m.rule.message': _t('Notify for all other messages/rooms'),
'.m.rule.fallback': _t('Notify me for anything else'),
};
for (var i in defaultRules.others) {
var rule = defaultRules.others[i];
var ruleDescription = otherRulesDescriptions[rule.rule_id];
for (let i in defaultRules.others) {
const rule = defaultRules.others[i];
const ruleDescription = otherRulesDescriptions[rule.rule_id];
// Show enabled default rules that was modified by the user
if (ruleDescription && rule.enabled && !rule.default) {
@ -591,8 +593,7 @@ module.exports = React.createClass({
}
});
var pushersPromise = MatrixClientPeg.get().getPushers().then(function(resp) {
//console.log("resolving pushersPromise");
const pushersPromise = MatrixClientPeg.get().getPushers().then(function(resp) {
self.setState({pushers: resp.pushers});
});
@ -618,7 +619,7 @@ module.exports = React.createClass({
},
_updatePushRuleActions: function(rule, actions, enabled) {
var cli = MatrixClientPeg.get();
const cli = MatrixClientPeg.get();
return cli.setPushRuleActions(
'global', rule.kind, rule.rule_id, actions
@ -664,9 +665,9 @@ module.exports = React.createClass({
},
renderNotifRulesTableRows: function() {
var rows = [];
for (var i in this.state.vectorPushRules) {
var rule = this.state.vectorPushRules[i];
const rows = [];
for (let i in this.state.vectorPushRules) {
const rule = this.state.vectorPushRules[i];
//console.log("rendering: " + rule.description + ", " + rule.vectorRuleId + ", " + rule.vectorState);
rows.push(this.renderNotifRulesTableRow(rule.description, rule.vectorRuleId, rule.vectorState));
}
@ -692,30 +693,32 @@ module.exports = React.createClass({
},
render: function() {
var self = this;
var spinner;
const self = this;
let spinner;
if (this.state.phase === this.phases.LOADING) {
var Loader = sdk.getComponent("elements.Spinner");
const Loader = sdk.getComponent("elements.Spinner");
spinner = <Loader />;
}
let masterPushRuleDiv;
if (this.state.masterPushRule) {
var masterPushRuleDiv = (
masterPushRuleDiv = (
<div className="mx_UserNotifSettings_tableRow">
<div className="mx_UserNotifSettings_inputCell">
<input id="enableNotifications"
ref="enableNotifications"
type="checkbox"
checked={ !this.state.masterPushRule.enabled }
onChange={ this.onEnableNotificationsChange } />
</div>
<div className="mx_UserNotifSettings_labelCell">
<label htmlFor="enableNotifications">
{ _t('Enable notifications for this account') }
</label>
</div>
<div className="mx_UserNotifSettings_inputCell">
<input id="enableNotifications"
ref="enableNotifications"
type="checkbox"
checked={ !this.state.masterPushRule.enabled }
onChange={ this.onEnableNotificationsChange }
/>
</div>
<div className="mx_UserNotifSettings_labelCell">
<label htmlFor="enableNotifications">
{ _t('Enable notifications for this account') }
</label>
</div>
</div>
);
}
@ -743,29 +746,29 @@ module.exports = React.createClass({
// This only supports the first email address in your profile for now
emailNotificationsRow = this.emailNotificationsRow(
emailThreepids[0].address,
_t('Enable email notifications') + ' (' + emailThreepids[0].address + ')'
`${_t('Enable email notifications')} (${emailThreepids[0].address})`
);
}
// Build external push rules
var externalRules = [];
for (var i in this.state.externalPushRules) {
var rule = this.state.externalPushRules[i];
const externalRules = [];
for (let i in this.state.externalPushRules) {
const rule = this.state.externalPushRules[i];
externalRules.push(<li>{ _t(rule.description) }</li>);
}
// Show keywords not displayed by the vector UI as a single external push rule
var externalKeyWords = [];
for (var i in this.state.externalContentRules) {
var rule = this.state.externalContentRules[i];
externalKeyWords.push(rule.pattern);
let externalKeywords = [];
for (let i in this.state.externalContentRules) {
const rule = this.state.externalContentRules[i];
externalKeywords.push(rule.pattern);
}
if (externalKeyWords.length) {
externalKeyWords = externalKeyWords.join(", ");
externalRules.push(<li>{ _t('Notifications on the following keywords follow rules which cant be displayed here:') } { externalKeyWords }</li>);
if (externalKeywords.length) {
externalKeywords = externalKeywords.join(", ");
externalRules.push(<li>{ _t('Notifications on the following keywords follow rules which cant be displayed here:') } { externalKeywords }</li>);
}
var devicesSection;
let devicesSection;
if (this.state.pushers === undefined) {
devicesSection = <div className="error">{ _t('Unable to fetch notification target list') }</div>
} else if (this.state.pushers.length == 0) {
@ -773,8 +776,8 @@ module.exports = React.createClass({
} else {
// TODO: It would be great to be able to delete pushers from here too,
// and this wouldn't be hard to add.
var rows = [];
for (var i = 0; i < this.state.pushers.length; ++i) {
const rows = [];
for (let i = 0; i < this.state.pushers.length; ++i) {
rows.push(<tr key={ i }>
<td>{this.state.pushers[i].app_display_name}</td>
<td>{this.state.pushers[i].device_display_name}</td>
@ -793,7 +796,7 @@ module.exports = React.createClass({
</div>);
}
var advancedSettings;
let advancedSettings;
if (externalRules.length) {
advancedSettings = (
<div>
@ -831,6 +834,21 @@ module.exports = React.createClass({
</div>
</div>
<div className="mx_UserNotifSettings_tableRow">
<div className="mx_UserNotifSettings_inputCell">
<input id="enableDesktopNotificationBody"
ref="enableDesktopNotificationBody"
type="checkbox"
checked={ UserSettingsStore.getEnableNotificationBody() }
onChange={ this.onEnableDesktopNotificationBodyChange } />
</div>
<div className="mx_UserNotifSettings_labelCell">
<label htmlFor="enableDesktopNotificationBody">
{ _t('Show message in desktop notification') }
</label>
</div>
</div>
<div className="mx_UserNotifSettings_tableRow">
<div className="mx_UserNotifSettings_inputCell">
<input id="enableDesktopAudioNotifications"

View File

@ -20,11 +20,10 @@
"Collapse panel": "طي الجدول",
"Collecting app version information": "إستعادة معلومات النسخة للتطبيق",
"Collecting logs": "إستعادة السجلات",
"Create new room": "إنشاء غرفة جديدة",
"Couldn't find a matching Matrix room": "لا يمكن إيجاد غرفة مايتركس متطابقة",
"Custom Server Options": "إعدادات السيرفر خاصة",
"delete the alias.": "إلغاء المُعرف.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "إلغاء مُعرف الغرفة %(alias) وحذف %(name) من الدليل؟",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "إلغاء مُعرف الغرفة %(alias)s وحذف %(name)s من الدليل؟",
"Describe your problem here.": "صِف مشكلتك هنا.",
"Direct Chat": "دردشة مباشرة",
"Directory": "دليل",

View File

@ -7,7 +7,6 @@
"Cancel Sending": "Адмяніць адпраўку",
"Can't update user notification settings": "Немагчыма абнавіць налады апавяшчэнняў карыстальніка",
"Close": "Зачыніць",
"Create new room": "Стварыць новы пакой",
"Couldn't find a matching Matrix room": "Не атрымалася знайсці адпаведны пакой Matrix",
"Custom Server Options": "Карыстальніцкія параметры сервера",
"delete the alias.": "выдаліць псеўданім.",
@ -16,7 +15,6 @@
"Directory": "Каталог",
"Dismiss": "Aдхіліць",
"Download this file": "Спампаваць гэты файл",
"Drop here %(toAction)s": "Перацягнуць сюды %(toAction)s",
"Enable audible notifications in web client": "Ўключыць гукавыя апавяшчэнні ў вэб-кліенце",
"Enable desktop notifications": "Ўключыць апавяшчэнні на працоўным стале",
"Enable email notifications": "Ўключыць паведамлення па электроннай пошце",
@ -26,14 +24,12 @@
"Error": "Памылка",
"Error saving email notification preferences": "Памылка захавання налад апавяшчэнняў па электроннай пошце",
"#example": "#прыклад",
"Failed to": "Не атрымалася",
"Failed to add tag %(tagName)s to room": "Не атрымалася дадаць %(tagName)s ў пакоі",
"Failed to change settings": "Не атрымалася змяніць налады",
"Failed to forget room %(errCode)s": "Не атрымалася забыць пакой %(errCode)s",
"Failed to update keywords": "Не атрымалася абнавіць ключавыя словы",
"Failed to get protocol list from Home Server": "Не ўдалося атрымаць спіс пратаколаў ад хатняга сервера",
"Failed to get public room list": "Не ўдалося атрымаць спіс агульных пакояў",
"Failed to join the room": "Не ўдалося далучыцца да пакоя",
"Failed to remove tag %(tagName)s from room": "Не ўдалося выдаліць %(tagName)s з пакоя",
"Failed to set direct chat tag": "Не ўдалося ўсталяваць тэг прамога чата",
"Failed to set Direct Message status of room": "Не ўдалося ўсталяваць статут прамога паведамлення пакою",
@ -42,9 +38,7 @@
"Files": "Файлы",
"Filter room names": "Фільтр iмёнаў пакояў",
"Forget": "Забыць",
" from room": " з пакоя",
"Guests can join": "Госці могуць далучыцца",
"Guest users can't invite users. Please register to invite.": осцi не могуць запрашаць карыстальнікаў. Калі ласка, зарэгіструйцеся, каб запрасiць.",
"Invite to this room": "Запрасіць у гэты пакой",
"Keywords": "Ключавыя словы",
"Leave": "Пакінуць",
@ -63,10 +57,8 @@
"On": "Уключыць",
"Operation failed": "Не атрымалася выканаць аперацыю",
"Permalink": "Пастаянная спасылка",
"Please Register": "Калі ласка, зарэгіструйцеся",
"powered by Matrix": "працуе на Matrix",
"Quote": "Цытата",
"Redact": "Адрэдагаваць",
"Reject": "Адхіліць",
"Remove %(name)s from the directory?": "Выдаліць %(name)s з каталога?",
"Remove": "Выдалiць",
@ -74,15 +66,10 @@
"Remove from Directory": "Выдалiць з каталога",
"Resend": "Паўторна",
"Riot does not know how to join a room on this network": "Riot не ведае, як увайсці ў пакой у гэтай сетке",
"Room directory": "Каталог пакояў",
"Room not found": "Пакой не знойдзены",
"Search for a room": "Пошук па пакоі",
"Settings": "Налады",
"Source URL": "URL-адрас крыніцы",
"Start chat": "Пачаць чат",
"The Home Server may be too old to support third party networks": "Хатні сервер можа быць занадта стары для падтрымкі іншых сетак",
"There are advanced notifications which are not shown here": "Ёсць пашыраныя апавяшчэння, якія не паказаныя тут",
"The server may be unavailable or overloaded": "Сервер можа быць недаступны ці перагружаны",
"This room is inaccessible to guests. You may be able to join if you register.": "Гэты пакой недаступны для гасцей. Вы можаце далучыцца, калі вы зарэгіструецеся.",
" to room": " ў пакоі"
"The server may be unavailable or overloaded": "Сервер можа быць недаступны ці перагружаны"
}

113
src/i18n/strings/ca.json Normal file
View File

@ -0,0 +1,113 @@
{
"A new version of Riot is available.": "Hi ha una nova versió del Riot disponible.",
"All messages": "Tots els missatges",
"Cancel": "Cancel·la",
"Close": "Tanca",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s a %(osName)s",
"Failed to change password. Is your password correct?": "Hi ha hagut un error al canviar la vostra contrasenya. És correcte la vostra contrasenya?",
"Continue": "Continua",
"All Rooms": "Totes les sales",
"Couldn't find a matching Matrix room": "No s'ha pogut trobar una sala de Matrix que coincideixi",
"Failed to add tag %(tagName)s to room": "No s'ha pogut afegir l'etiqueta %(tagName)s a la sala",
"Failed to forget room %(errCode)s": "No s'ha pogut oblidar la sala %(errCode)s",
"Failed to get public room list": "No s'ha pogut obtenir el llistat de sales públiques",
"Failed to remove tag %(tagName)s from room": "No s'ha pogut esborrar l'etiqueta %(tagName)s de la sala",
"Filter room names": "Filtra els noms de les sales",
"Couldn't load home page": "No s'ha pogut carregar la pàgina d'inici",
"All messages (loud)": "Tots els missatges (sorollós)",
"Mentions only": "Només mencions",
"Mute": "Silenciat",
"Direct Chat": "Xat directe",
"Directory": "Directori",
"Failed to set direct chat tag": "No s'ha pogut establir l'etiqueta del xat directe",
"Invite to this room": "Convida a aquesta sala",
"No rooms to show": "No hi ha sales a mostrar",
"Riot does not know how to join a room on this network": "El Riot no sap com unir-se a una sala en aquesta xarxa",
"Room not found": "No s'ha trobat la sala",
"Unnamed room": "Sala sense nom",
"#example": "#exemple",
"Failed to change settings": "No s'han pogut modificar els paràmetres",
"Enable audible notifications in web client": "Habilita les notificacions d'àudio al client web",
"Enable desktop notifications": "Habilita les notificacions d'escriptori",
"Enable email notifications": "Habilita les notificacions per correu electrònic",
"Enable notifications for this account": "Habilita les notificacions per aquest compte",
"Low Priority": "Baixa prioritat",
"Members": "Membres",
"Changelog": "Registre de canvis",
"Describe your problem here.": "Descriu aquí el teu problema.",
"Download this file": "Descarrega aquest fitxer",
"Enable them now": "Habilita-ho ara",
"Error": "Error",
"Favourite": "Favorit",
"Files": "Fitxers",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "També funcionen el <a href=\"http://apple.com/safari\">Safari</a> i l'<a href=\"http://opera.com\">Opera</a>.",
"Add an email address above to configure email notifications": "Afegiu una adreça de correu electrònic més amunt per configurar les notificacions",
"Advanced notification settings": "Paràmetres avançats de notificacions",
"All notifications are currently disabled for all targets.": "Actualment totes les notificacions estan inhabilitades per a tots els objectius.",
"An error occurred whilst saving your email notification preferences.": "Hi ha hagut un error al desar les vostres preferències de notificació per correu electrònic.",
"Bug report sent": "S'ha enviat l'informe d'error",
"Call invitation": "Invitació a la trucada",
"Can't update user notification settings": "No es poden actualitzar els paràmetres de notificació de l'usuari",
"Collecting app version information": "Recol·lectant la informació de la versió de l'aplicació",
"Collecting logs": "Recol·lectant els registres",
"Custom Server Options": "Opcions de servidor personalitzat",
"Dismiss": "Omet",
"Enter keywords separated by a comma:": "Introdueix paraules clau separades per una coma:",
"Login": "Inicia sessió",
"Leave": "Abandona",
"Messages containing <span>keywords</span>": "Missatges que contenen <span>paraules clau</span>",
"Messages containing my user name": "Missatges que contenen el meu nom d'usuari",
"Messages in group chats": "Missatges a xats de grup",
"Messages containing my display name": "Missatges que contenen el meu nom",
"Messages in one-to-one chats": "Missatges en xats un a un",
"Messages sent by bot": "Missatges enviats pel bot",
"more": "més",
"Noisy": "Sorollós",
"Notification targets": "Objectius de notificació",
"Notifications": "Notificacions",
"Notify me for anything else": "Notifica'm per qualsevol altra cosa",
"Notify for all other messages/rooms": "Notifica per a tots els altres missatges/sales",
"Off": "Apagat",
"On": "Engegat",
"Permalink": "Enllaç permanent",
"Remove": "Elimina",
"remove %(name)s from the directory.": "elimina %(name)s del directori.",
"Remove from Directory": "Elimina del directori",
"Report a bug": "Informa d'una errada",
"Resend": "Reenvia",
"Search…": "Cerca…",
"Send": "Envia",
"Source URL": "URL origen",
"The server may be unavailable or overloaded": "El servidor pot no estar disponible o sobrecarregat",
"This Room": "Aquesta sala",
"Unavailable": "No disponible",
"Unknown device": "Dispositiu desconegut",
"unknown error code": "codi d'error desconegut",
"What's New": "Novetats",
"What's new?": "Què hi ha de nou?",
"Waiting for response from server": "Esperant una resposta del servidor",
"You cannot delete this image. (%(code)s)": "No podeu eliminar aquesta imatge. (%(code)s)",
"You cannot delete this message. (%(code)s)": "No podeu eliminar aquest missatge. (%(code)s)",
"You are not receiving desktop notifications": "No esteu rebent notificacions d'escriptori",
"Thank you!": "Gràcies!",
"Sunday": "Diumenge",
"Monday": "Dilluns",
"Tuesday": "Dimarts",
"Wednesday": "Dimecres",
"Thursday": "Dijous",
"Friday": "Divendres",
"Saturday": "Dissabte",
"Today": "Avui",
"Yesterday": "Ahir",
"OK": "D'acord",
"Warning": "Advertència",
"Checking for an update...": "Comprovant si hi ha actualitzacions...",
"No update available.": "No hi ha cap actualització disponible.",
"Downloading update...": "Descarregant l'actualització...",
"Welcome to Riot.im": "Benvingut a Riot.im",
"Chat with Riot Bot": "Conversa amb el Bot de Riot",
"Back": "Enrere",
"Cancel Sending": "Cancel·la l'enviament",
"Collapse panel": "Col·lapsa el tauler",
"Developer Tools": "Eines de desenvolupador"
}

View File

@ -4,10 +4,6 @@
"A new version of Riot is available.": "Je dostupná nová verze Riotu.",
"Notifications": "Upozornění",
"Search": "Hledání",
"Settings": "Nastavení",
"Create new room": "Založit novou místnost",
"Room directory": "Adresář místností",
"Start chat": "Začít chat",
"All Rooms": "Všechny místnosti",
"Files": "Soubory",
"Filter room names": "Filtrovat místnosti dle názvu",
@ -30,14 +26,12 @@
"Error": "Chyba",
"Failed to change settings": "Nepodařilo se změnit nastavení",
"Failed to get public room list": "Nepodařilo se získat seznam veřejných místností",
"Failed to join the room": "Nepodařilo se vstoupit do místnosti",
"Favourite": "V oblíbených",
"Guests can join": "Hosté mohou vstoupit",
"Guest users can't invite users. Please register to invite.": "Hosté nemohou zvát uživatele. Zaregistrujte se a budete moci zvát.",
"Hide panel": "Skrýt panel",
"I understand the risks and wish to continue": "Rozumím rizikům a přeji si pokračovat",
"Keywords": "Klíčová slova",
"Leave": "Opustit",
"Leave": "Odejít",
"Loading bug report module": "Nahrává se modul nahlašování chyb",
"Low Priority": "Nízká priorita",
"Mentions only": "Pouze zmínky",
@ -47,7 +41,181 @@
"Messages in group chats": "Zprávy ve skupinových chatech",
"Messages sent by bot": "Zprávy poslané robotem",
"more": "více",
"Mute": "Ztit",
"Mute": "Ztlumit",
"All messages (loud)": "Všechny zprávy (hlasitě)",
"Couldn't load home page": "Nepodařilo se nahrát úvodní stránku"
"Couldn't load home page": "Nepodařilo se nahrát úvodní stránku",
"All notifications are currently disabled for all targets.": "Veškeré notifikace jsou aktuálně pro všechny cíle vypnuty.",
"Cancel Sending": "Zrušit odesílání",
"Can't update user notification settings": "Nelze aktualizovat uživatelské nastavení upozornění",
"delete the alias.": "smazat alias.",
"Set Password": "Nastavit heslo",
"You have successfully set a password and an email address!": "Úspěšně jste si nastavili heslo a e-mailovou adresu!",
"Remember, you can always set an email address in user settings if you change your mind.": "Vězte, že kdybyste si to rozmysleli, e-mailovou adresu můžete kdykoliv doplnit v uživatelském nastavení.",
"Continue": "Pokračovat",
"Please set a password!": "Prosím nastavte si heslo!",
"You have successfully set a password!": "Úspěšně jste si nastavili heslo!",
"Failed to change password. Is your password correct?": "Nepodařilo se změnit heslo. Zadáváte své heslo správně?",
"No update available.": "Není dostupná žádná aktualizace.",
"Downloading update...": "Stahování aktualizace...",
"Welcome to Riot.im": "Vítá vás Riot.im",
"Enable desktop notifications": "Zapnout upozornění na ploše",
"Enable email notifications": "Zapnout upozornění přes e-mail",
"Enable notifications for this account": "Zapnout upozornění na tomto účtu",
"#example": "#příklad",
"Off": "Vypnout",
"On": "Zapnout",
"Operation failed": "Operace se nezdařila",
"Remove %(name)s from the directory?": "Odebrat %(name)s z adresáře?",
"Remove": "Odebrat",
"remove %(name)s from the directory.": "odebrat %(name)s z adresáře.",
"Remove from Directory": "Odebrat z adresáře",
"Report a bug": "Nahlásit chybu",
"Resend": "Poslat znovu",
"Room not found": "Místnost nenalezena",
"Search for a room": "Hledat místnost",
"Send": "Odeslat",
"Send logs": "Odeslat záznamy",
"Source URL": "Zdrojová URL",
"The server may be unavailable or overloaded": "Server může být nedostupný nebo přetížený",
"Unable to join network": "Nelze se připojit k síti",
"Unable to look up room ID from server": "Nelze získat ID místnosti ze serveru",
"Unavailable": "Nedostupné",
"Unknown device": "Neznámé zařízení",
"unknown error code": "neznámý kód chyby",
"Unnamed room": "Nepojmenovaná místnost",
"Update": "Aktualizace",
"What's New": "Co je nového",
"What's new?": "Co je nového?",
"Waiting for response from server": "Čekám na odezvu ze serveru",
"You cannot delete this image. (%(code)s)": "Tento obrázek nemůžete smazat. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Tuto zprávu nemůžete smazat. (%(code)s)",
"You are not receiving desktop notifications": "Nedostáváte upozornění na desktopu",
"Sunday": "Neděle",
"Monday": "Pondělí",
"Tuesday": "Úterý",
"Wednesday": "Středa",
"Thursday": "Čtvrtek",
"Friday": "Pátek",
"Saturday": "Sobota",
"Today": "Dnes",
"Yesterday": "Včera",
"OK": "OK",
"Warning": "Varování",
"Checking for an update...": "Kontrola aktualizací...",
"An error occurred whilst saving your email notification preferences.": "Při ukládání nastavení e-mailových upozornění nastala chyba.",
"Collecting app version information": "Sbírání informací o verzi aplikace",
"Collecting logs": "Sbírání logů",
"Couldn't find a matching Matrix room": "Odpovídající Matrix místost nenalezena",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Smazat alias místnosti %(alias)s a odstranit %(name)s z adresáře?",
"Enable audible notifications in web client": "Povolit zvuková upozornění ve webové aplikaci",
"Enable them now": "Povolit nyní",
"Enter keywords separated by a comma:": "Vložte klíčová slova oddělená čárkou:",
"Error saving email notification preferences": "Chyba při ukládání nastavení e-mailových upozornění",
"Failed to add tag %(tagName)s to room": "Nepodařilo se přidat štítek %(tagName)s k místnosti",
"Failed to forget room %(errCode)s": "Nepodařilo se zapomenout místnost %(errCode)s",
"Failed to update keywords": "Nepodařilo se aktualizovat klíčová slova",
"Failed to get protocol list from Home Server": "Z domovského serveru se nepodařilo získat seznam protokolů",
"Failed to remove tag %(tagName)s from room": "Nepodařilo se odstranit štítek %(tagName)s z místnosti",
"Failed to send report: ": "Nepodařilo se odeslat hlášení: ",
"Forget": "Zapomenout",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Kvůli diagnostice budou spolu s tímto hlášením o chybě odeslány i záznamy z klienta. Chcete-li odeslat pouze text výše, prosím odškrtněte:",
"No rooms to show": "Žádné místnosti k zobrazení",
"Notify for all other messages/rooms": "Upozorni na všechny ostatní zprávy/místnosti",
"Notify me for anything else": "Upozorni mě na cokoliv jiného",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Prosím popište chybu. Co jste dělal/a? Co jste čekal/a, že se stane? Co se stalo?",
"Please describe the bug and/or send logs.": "Prosím popište chybu a/nebo pošlete záznamy.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Prosím nainstalujte si <a href=\"https://www.google.com/chrome\">Chrome</a> nebo <a href=\"https://getfirefox.com\">Firefox</a> pro nejlepší zážitek.",
"Quote": "Citace",
"Reject": "Odmítnout",
"Riot does not know how to join a room on this network": "Riot neví, jak vstoupit do místosti na této síti",
"Riot is not supported on mobile web. Install the app?": "Riot není podporovaný na mobilním webu. Nainstalovat aplikaci?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot používá mnoho pokročilých funkcí, z nichž některé jsou ve vašem současném prohlížeči nedostupné nebo experimentální.",
"Sorry, your browser is <b>not</b> able to run Riot.": "Omlouváme se, váš prohlížeč <b>není</b> schopný spustit Riot.",
"There are advanced notifications which are not shown here": "Jsou k dispozici pokročilá upozornění, která zde nejsou zobrazena",
"Unhide Preview": "Zobrazit náhled",
"Uploaded on %(date)s by %(user)s": "Nahráno %(date)s uživatelem %(user)s",
"Uploading report": "Nahrávám hlášení",
"View Decrypted Source": "Zobrazit dešifrovaný zdroj",
"When I'm invited to a room": "Pokud jsem pozván do místnosti",
"World readable": "Světu čitelné",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Snad jste je nastavili v jiném klientu než Riot. V Riotu je nemůžete upravit, ale přesto platí",
"Error encountered (%(errorDetail)s).": "Nastala chyba (%(errorDetail)s).",
"You need to be using HTTPS to place a screen-sharing call.": "Pro uskutečnění hovoru se sdílením obrazovky musíte používat HTTPS.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Vzhled a chování aplikace může být ve vašem aktuální prohlížeči nesprávné a některé nebo všechny funkce mohou být chybné. Chcete-li i přes to pokračovat, nebudeme vám bránit, ale se všemi problémy, na které narazíte, si musíte poradit sami!",
"Search the room directory": "Prohledat adresář místností",
"Chat with Riot Bot": "Chatujte s Riot Botem",
"Get started with some tips from Riot Bot!": "Začněte s radami od Riot Bota!",
"General discussion about Matrix and Riot": "Obecná diskuse o Matrixu a Riotu",
"Discussion of all things Matrix!": "Diskuse o všem okolo Matrixu!",
"Matrix technical discussions": "Technické diskuse o Matrixu",
"Running Matrix services": "Provozování Matrix služeb",
"Community-run support for Synapse": "Komunitou řízená podpora pro Synapse",
"Announcements about Synapse releases": "Oznámení o vydáních Synapse",
"Support for those using and running matrix-appservice-irc": "Podpora pro používání matrix-appservice-irc",
"Building services on Matrix": "Stavění služeb na Matrixu",
"Add an email address above to configure email notifications": "Abyste mohli nastavovat e-mailová upozornění, musíte uvést svoji e-mailovou adresu v kolonce výše",
"Call invitation": "Pozvánka k hovoru",
"Collapse panel": "Sbalit panel",
"Dismiss": "Zahodit",
"Expand panel": "Rozbalit panel",
"Failed to set direct chat tag": "Nepodařilo se nastavit štítek přímého chatu",
"Failed to set Direct Message status of room": "Nepodařilo se přiřadit místnosti status Přímé zprávy",
"powered by Matrix": "poháněno Matrixem",
"Riot Desktop on %(platformName)s": "Riot Desktop na %(platformName)s",
"The Home Server may be too old to support third party networks": "Tento domovský server může být příliš zastaralý na to, aby podporoval sítě třetích stran",
"Admin support for Dendrite": "Správcovská podpora pro Dendrite",
"Support for those using the Matrix spec": "Podpora pro uživatele Matrix specifikace",
"Design and implementation of E2E in Matrix": "Návrh a implementace E2E v Matrixu",
"Implementing VR services with Matrix": "Implementace VR služeb v Matrixu",
"Implementing VoIP services with Matrix": "Implementace VoIP služeb v Matrixu",
"Support for those using, running and writing other bridges": "Podpora pro ty, kteří používají, provozují nebo vyvíjejí ostatní můstky",
"Contributing code to Matrix and Riot": "Přispívaní kódem do Matrixu a Riotu",
"Dev chat for the Riot/Web dev team": "Chat vývojového týmu Riot/Web",
"Dev chat for the Dendrite dev team": "Chat vývojového týmu Dendrite",
"Co-ordination for Riot/Web translators": "Součinnost překladatelů Riot/Web",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "V Matrixu je spousta samostatných, nebo s jinými sítěmi (Slack, IRC, Gitter aj.) propojených místností. Prohlédněte si jejich adresář!",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s přes %(browserName)s na %(osName)s",
"customServer_text": "Ve vlastních serverových volbách se můžete přihlásit na ostatní Matrix servery, a to tak, že určíte URL jiného domovského serveru.<br/>To znamená, že můžete používat Riot s již existujícím Matrix účtem na jiném domovském serveru.<br/><br/>Taky můžete nastavit vlastní server identity, pak ale nebudete moci zvát ostatní nebo naopak být ostatními zván prostřednictvím e-mailové adresy.",
"Custom Server Options": "Vlastní serverové volby",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralizovaný, šifrovaný chat a spolupráce na platformě [matrix]",
"Riot/Web &amp; Desktop chat": "Riot/Web a Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS a matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android a matrix-android-sdk chat",
"To return to your account in future you need to <u>set a password</u>": "Abyste se mohli ke svému účtu v budoucnu vrátit, musíte si <u>nastavit heslo</u>",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Toto vám umožní vrátit se po odhlášení ke svému účtu a používat jej na ostatních zařízeních.",
"You can now return to your account after signing out, and sign in on other devices.": "Nyní se můžete ke svému účtu vrátit i po odhlášení a používat jej na ostatních zařízeních.",
"Fetching third party location failed": "Nepodařilo se zjistit umístění třetí strany",
"Messages in one-to-one chats": "Zprávy v individuálních chatech",
"Notification targets": "Cíle upozornění",
"Notifications on the following keywords follow rules which cant be displayed here:": "Upozornění na následující klíčová slova se řídí pravidly, která zde nelze zobrazit:",
"Unable to fetch notification target list": "Nepodařilo se získat seznam cílů upozornění",
"Discussion of the Identity Service API": "Diskuze o API služby identity",
"Noisy": "Hlučný",
"Bug report sent": "Hlášení o chybě bylo odesláno",
"Thank you!": "Děkujeme vám!",
"Back": "Zpět",
"Event Type": "Typ události",
"Event Content": "Obsah události",
"Developer Tools": "Nástroje pro vývojáře",
"Filter results": "Filtrovat výsledky",
"You must specify an event type!": "Musíte určit typ události!",
"Event sent!": "Událost odeslána!",
"Failed to send custom event.": "Nepodařilo se odeslat vlastní událost.",
"Send Custom Event": "Odeslat vlastní událost",
"Show message in desktop notification": "Zobrazovat zprávu v upozornění na ploše",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Přes vlastní serverové volby se můžete přihlásit k dalším Matrix serverům tak, že zadáte jinou adresu domovského serveru.<br/>Díky tomu můžete v Riotu používat Matrix účet z jiného domovského serveru.<br/><br/>Můžete nastavit i vlastní server identity, ale pak už nebudete moci zvát ani být zván/a skrze e-mailovou adresu.",
"Edit": "Upravit",
"Pin Message": "Připíchnout zprávu",
"Register": "Zaregistrovat",
"Rooms": "Místnosti",
"Invite to this community": "Pozvat do této komunity",
"Add rooms to this community": "Přidat místnosti do této komunity",
"State Key": "Stavový klíč",
"Send Custom State Event": "Poslat vlastní stavovou událost",
"Explore Room State": "Prohlížet stav místnosti",
"Unpin Message": "Odepnout zprávu",
"Toolbox": "Sada nástrojů",
"Send Account Data": "Poslat data o účtu",
"Explore Account Data": "Prozkoumat data o účtu"
}

View File

@ -2,17 +2,13 @@
"Add an email address above to configure email notifications": "Tilføj en emailadresse ovenfor for at konfigurere e-mail-underretninger",
"All notifications are currently disabled for all targets.": "Alle meddelelser er for øjeblikket deaktiveret for alle mål.",
"An error occurred whilst saving your email notification preferences.": "Der opstod en fejl under opbevaring af dine e-mail-underretningsindstillinger.",
"and remove": "Og fjern",
"Can't update user notification settings": "Kan ikke opdatere brugermeddelelsesindstillinger",
"Create new room": "Opret nyt rum",
"Couldn't find a matching Matrix room": "Kunne ikke finde et matchende Matrix-rum",
"Custom Server Options": "Brugerdefinerede serverindstillinger",
"delete the alias.": "Slet aliaset.",
"Delete the room alias": "Slet room alias",
"Direct Chat": "Personligt Chat",
"Directory": "Rum fortegnelse",
"Dismiss": "Afskedige",
"Drop here to": "Drop her til",
"Enable audible notifications in web client": "Aktivér hørbare underretninger i webklienten",
"Enable desktop notifications": "Aktivér desktop meddelelser",
"Enable email notifications": "Aktivér e-mail-underretninger",
@ -22,24 +18,17 @@
"Error": "Fejl",
"Error saving email notification preferences": "Fejl ved at gemme e-mail-underretningsindstillinger",
"#example": "#eksempel",
"Failed to": "Var ikke i stand til at",
"Failed to add tag ": "Kunne ikke tilføje tag ",
"Failed to change settings": "Kunne ikke ændre indstillinger",
"Failed to update keywords": "Kunne ikke opdatere søgeord",
"Failed to get protocol list from Home Server": "Kunne ikke få protokolliste fra Home Server",
"Failed to get public room list": "Kunne ikke få offentlig rumliste",
"Failed to join the room": "Kunne ikke komme ind i rumet",
"Failed to remove tag ": "Kunne ikke fjerne tag ",
"Failed to set Direct Message status of room": "Kunne ikke indstille direkte beskedstatus for rumet",
"Favourite": "Favorit",
"Fetching third party location failed": "Hentning af tredjeparts placering mislykkedes",
"Files": "Filer",
"Filter room names": "Filtrer rumnavne",
"Forget": "Glem",
"from the directory": "fra fortegnelsen",
" from room": " fra rum",
"Guests can join": "Gæster kan deltage",
"Guest users can't invite users. Please register to invite.": "Gæstebrugere kan ikke invitere brugere. Tilmeld dig venligst for at invitere.",
"Invite to this room": "Inviter til dette rum",
"Keywords": "Søgeord",
"Leave": "Forlade",
@ -55,23 +44,16 @@
"Off": "Slukket",
"On": "Tændt",
"Operation failed": "Operation mislykkedes",
"Please Register": "Vær venlig at registrere",
"powered by Matrix": "Drevet af Matrix",
"Reject": "Afvise",
"Remove": "Fjerne",
"remove": "fjerner",
"Remove from Directory": "Fjern fra fortegnelse",
"Riot does not know how to join a room on this network": "Riot ved ikke, hvordan man kan deltage i et rum på dette netværk",
"Room directory": "Rum fortegnelse",
"Room not found": "Rumet ikke fundet",
"Search for a room": "Søg efter et rum",
"Settings": "Indstillinger",
"Start chat": "Begyndt chat",
"The Home Server may be too old to support third party networks": "Hjemmeserveren kan være for gammel til at understøtte tredjepartsnetværk",
"There are advanced notifications which are not shown here": "Der er avancerede meddelelser, som ikke vises her",
"The server may be unavailable or overloaded": "Serveren kan være utilgængelig eller overbelastet",
"This room is inaccessible to guests. You may be able to join if you register.": "Dette rum er utilgængeligt for gæster. Du kan være i stand til at deltage, hvis du registrerer dig.",
" to room": " til rum",
"Unable to fetch notification target list": "Kan ikke hente meddelelsesmålliste",
"Unable to join network": "Kan ikke deltage i netværket",
"Unable to look up room ID from server": "Kunne ikke slå op på rum-id fra server",

View File

@ -1,59 +1,43 @@
{
"Please Register": "Bitte registrieren",
"Guest users can't invite users. Please register to invite.": "Gäste können keine Nutzer einladen. Bitte registriere dich, um Nutzer einzuladen.",
"Members": "Mitglieder",
"Files": "Dateien",
"Notifications": "Benachrichtigungen",
"Invite to this room": "In diesen Raum einladen",
"Filter room names": "Raum-Namen filtern",
"Start chat": "Chat starten",
"Room directory": "Raum-Verzeichnis",
"Create new room": "Neuen Raum erstellen",
"Settings": "Einstellungen",
"powered by Matrix": "betrieben mit Matrix",
"Custom Server Options": "Erweiterte Server-Optionen",
"Custom Server Options": "Benutzerdefinierte Server-Optionen",
"Dismiss": "Ablehnen",
"Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server",
"The Home Server may be too old to support third party networks": "Der Home-Server ist eventuell zu alt, um Drittanbieter-Netzwerke zu unterstützen",
"Directory": "Raum-Verzeichnis",
"#example:": "#beispiel:",
"Search for a room": "Nach einem Raum suchen",
"No rooms to show": "Keine Räume gefunden",
"World readable": "Alle können mitlesen",
"No rooms to show": "Keine anzeigbaren Räume",
"World readable": "Lesbar für alle",
"Guests can join": "Gäste können beitreten",
"You are not receiving desktop notifications": "Du erhältst keine Desktop-Benachrichtigungen",
"Enable them now": "Aktiviere diese jetzt",
"Add an email address above to configure email notifications": "Füge oben eine E-Mail-Adresse hinzu, um die E-Mail-Benachrichtigungseinstellungen zu konfigurieren",
"All notifications are currently disabled for all targets.": "Im Moment sind alle Benachrichtigungen für alle Ziele deaktiviert.",
"All notifications are currently disabled for all targets.": "Aktuell sind alle Benachrichtigungen für alle Ziele deaktiviert.",
"An error occurred whilst saving your email notification preferences.": "Beim Speichern deiner E-Mail-Benachrichtigungseinstellungen ist ein Fehler aufgetreten.",
"and remove": "und entfernen",
"Can't update user notification settings": "Benachrichtigungs-Einstellungen des Benutzers konnten nicht aktualisiert werden",
"Couldn't find a matching Matrix room": "Konnte keinen entsprechenden Matrix-Raum finden",
"delete the alias.": "Lösche den Alias.",
"Delete the room alias": "Lösche den Raum Alias",
"Direct Chat": "Direkt-Chat",
"Drop here to": "Hier ablegen",
"Enable audible notifications in web client": "Audio-Benachrichtigungen im Web-Client aktivieren",
"Enable desktop notifications": "Desktop-Benachrichtigungen aktivieren",
"Enable email notifications": "E-Mail-Benachrichtigungen aktivieren",
"Enable notifications for this account": "Benachrichtigungen für dieses Konto aktivieren",
"Enable notifications for this account": "Benachrichtigungen für dieses Benutzerkonto aktivieren",
"Enter keywords separated by a comma:": "Schlüsselwörter kommagetrennt eingeben:",
"Error": "Fehler",
"Error saving email notification preferences": "Fehler beim Speichern der E-Mail-Benachrichtigungseinstellungen",
"#example": "#Beispiel",
"Failed to": "Konnte nicht",
"Failed to add tag ": "Konnte Tag nicht hinzufügen ",
"Failed to change settings": "Einstellungen konnten nicht geändert werden",
"Failed to update keywords": "Schlüsselwörter konnten nicht aktualisiert werden",
"Failed to get public room list": "Die Liste der öffentlichen Räume konnte nicht geladen werden",
"Failed to join the room": "Fehler beim Betreten des Raumes",
"Failed to remove tag ": "Konnte Tag nicht entfernen ",
"Failed to set Direct Message status of room": "Konnte den direkten Benachrichtigungsstatus nicht setzen",
"Favourite": "Favorit",
"Fetching third party location failed": "Das Abrufen des Drittanbieterstandorts ist fehlgeschlagen",
"Forget": "Entfernen",
"from the directory": "aus dem Verzeichnis",
" from room": " aus dem Raum",
"Keywords": "Schlüsselwörter",
"Leave": "Verlassen",
"Low Priority": "Niedrige Priorität",
@ -64,13 +48,11 @@
"Operation failed": "Aktion fehlgeschlagen",
"Reject": "Ablehnen",
"Remove": "Entfernen",
"remove": "Entferner",
"Remove from Directory": "Aus dem Raum-Verzeichnis entfernen",
"Riot does not know how to join a room on this network": "Riot weiß nicht, wie es einem Raum auf diesem Netzwerk beitreten soll",
"Room not found": "Raum nicht gefunden",
"There are advanced notifications which are not shown here": "Es existieren erweiterte Benachrichtigungen, welche hier nicht angezeigt werden",
"The server may be unavailable or overloaded": "Der Server ist vermutlich nicht erreichbar oder überlastet",
"This room is inaccessible to guests. You may be able to join if you register.": "Dieser Raum kann nicht von Gästen betreten werden. Bitte zunächst registrieren und dann erneut versuchen.",
"Unable to fetch notification target list": "Liste der Benachrichtigungsempfänger konnte nicht abgerufen werden",
"Unable to join network": "Es ist nicht möglich, dem Netzwerk beizutreten",
"unknown error code": "Unbekannter Fehlercode",
@ -79,8 +61,6 @@
"Off": "Aus",
"On": "An",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Du hast sie eventuell auf einem anderen Matrix-Client und nicht in Riot konfiguriert. Sie können in Riot nicht verändert werden, gelten aber trotzdem",
" to room": " an Raum",
"Drop here %(toAction)s": "Hierher ziehen: %(toAction)s",
"All messages": "Alle Nachrichten",
"All messages (loud)": "Alle Nachrichten (laut)",
"Cancel Sending": "Senden abbrechen",
@ -94,15 +74,14 @@
"Mentions only": "Nur, wenn du erwähnt wirst",
"Mute": "Stummschalten",
"Permalink": "Permanenter Link",
"Quote": "Zitat",
"Redact": "Löschen",
"Quote": "Zitieren",
"Remove %(name)s from the directory?": "Soll der Raum %(name)s aus dem Verzeichnis entfernt werden?",
"remove %(name)s from the directory.": "entferne %(name)s aus dem Verzeichnis.",
"Resend": "Erneut senden",
"Source URL": "Quell-URL",
"Unable to look up room ID from server": "Es ist nicht möglich, die Raum-ID auf dem Server nachzuschlagen",
"Unhide Preview": "Vorschau wieder anzeigen",
"Uploaded on %(date)s by %(user)s": "Hochgeladen am %(date)s von %(user)s",
"Uploaded on %(date)s by %(user)s": "Hochgeladen: %(date)s von %(user)s",
"View Decrypted Source": "Entschlüsselten Quellcode ansehen",
"View Source": "Quellcode ansehen",
"You cannot delete this image. (%(code)s)": "Das Bild kann nicht gelöscht werden. (%(code)s)",
@ -116,7 +95,6 @@
"Sunday": "Sonntag",
"Monday": "Montag",
"Yesterday": "Gestern",
"Welcome page": "Willkommensseite",
"Advanced notification settings": "Erweiterte Benachrichtigungs-Einstellungen",
"Call invitation": "Anruf-Einladung",
"Messages containing my display name": "Nachrichten, die meinen Anzeigenamen enthalten",
@ -147,16 +125,16 @@
"Failed to send report: ": "Senden des Reports fehlgeschlagen: ",
"Forward Message": "Nachricht weiterleiten",
"Hide panel": "Panel verbergen",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Um Probleme zu diagnostizieren werden mit diesem Fehlerbericht Protokolle von diesem Client gesendet. Wenn du nur obigen text senden willst, deselektiere folgendes:",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Zur Diagnose von Softwareproblemen werden mit diesem Fehlerbericht auch Log-Dateien übermittelt. Wenn nur der oben eingegebene Text übermittelt werden soll, bitte die nachfolgende Auswahl entsprechend abwählen:",
"Loading bug report module": "Lade Fehlerbericht-Modul",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Bitte den Fehler (vorzugsweise auf Englisch) beschreiben. Was hast du gemacht? Was sollte passieren? Was ist tatsächlich passiert?",
"Please describe the bug and/or send logs.": "Bitte beschreibe den Fehler und/oder sende Protokolle.",
"Report a bug": "Einen Fehler melden",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Bitte den Softwarefehler (vorzugsweise auf Englisch) beschreiben. Was hast du gemacht? Was sollte passieren? Was ist tatsächlich passiert?",
"Please describe the bug and/or send logs.": "Bitte den Fehler beschreiben und/oder Log-Dateien übermitteln.",
"Report a bug": "Einen Softwarefehler melden",
"Riot Desktop on %(platformName)s": "Riot Desktop auf %(platformName)s",
"Riot is not supported on mobile web. Install the app?": "Riot wird im mobilen Web nicht unterstützt. App installieren?",
"Search": "Suchen",
"Search…": "Suchen…",
"Send": "Sende",
"Send": "Senden",
"Send logs": "Logdateien übermitteln",
"This Room": "In diesem Raum",
"Unavailable": "Nicht verfügbar",
@ -166,7 +144,6 @@
"What's New": "Was ist neu",
"What's new?": "Was ist neu?",
"Waiting for response from server": "Auf Antwort vom Server warten",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Du verwendest Riot als Gast. <a>Registriere</a> oder <a>melde dich an</a> um Zugang zu mehr Räumen und Funktionen zu bekommen!",
"You need to be using HTTPS to place a screen-sharing call.": "Du musst HTTPS nutzen um einen Anruf mit Bildschirmfreigabe durchzuführen.",
"OK": "OK",
"Login": "Anmeldung",
@ -175,14 +152,13 @@
"Search the room directory": "Raum-Verzeichnis durchsuchen",
"Chat with Riot Bot": "Mit dem Riot-Bot chatten",
"Get started with some tips from Riot Bot!": "Lass Dir vom Riot-Bot eine Einführung geben!",
"General discussion about Matrix": "Allgemeine Diskussion über Matrix",
"Discussion of all things Matrix!": "\"Diskussion über alle Dinge\"-Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop-Chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot-iOS &amp; \"matrix-ios-sdk\"-Chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot-Android &amp; matrix-android-sdk-Chat",
"Matrix technical discussions": "Technische Diskussion über Matrix",
"Running Matrix services": "Matrix-Dienste betreiben",
"Community-run support for Synapse": "Synapse-Support von der Community",
"Community-run support for Synapse": "Support für Synapse von der Community",
"Admin support for Dendrite": "Admin-Unterstützung für Dendrite",
"Announcements about Synapse releases": "Ankündigungen über Synapse-Versionen",
"Support for those using and running matrix-appservice-irc": "Unterstützung für die, die \"matrix-appservice-irc\" betreiben und nutzen",
@ -199,9 +175,9 @@
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Im Matrix-Netzwerk existieren bereits jetzt zahlreiche Räume, die entweder mit bekannten Netzwerken wie Slack, IRC, Gitter, usw. verknüpft sind oder auch komplett eigenständig betrieben werden. Einen genauen Überblick erhältst du im Raum-Verzeichnis!",
"Failed to change password. Is your password correct?": "Passwortänderung fehlgeschlagen. Ist dein Passwort richtig?",
"You have successfully set a password!": "Du hast erfolgreich ein Passwort gesetzt!",
"You can now return to your account after signing out, and sign in on other devices.": "Du kannst nun zu deinem Konto zurückkehren nach dem du dich an anderen Geräten ab- und angemeldet hast.",
"You can now return to your account after signing out, and sign in on other devices.": "Du kannst nun zu deinem Benutzerkonto zurückkehren, nachdem du dich abgemeldet hast. Anschließend kannst du dich an anderen Geräten anmelden.",
"Continue": "Fortfahren",
"Please set a password!": "Bitte ein Passwort einrichten!",
"Please set a password!": "Bitte setze ein Passwort!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Dies erlaubt dir, dich wieder an deinem Konto anzumelden, nachdem du dich abgemeldet hast.",
"Dev chat for the Dendrite dev team": "Entwickler-Chat für das Dendrite-Entwickler-Team",
"General discussion about Matrix and Riot": "Allgemeine Diskussion über Matrix und Riot",
@ -215,5 +191,31 @@
"Error encountered (%(errorDetail)s).": "Es ist ein Fehler aufgetreten (%(errorDetail)s).",
"No update available.": "Kein Update verfügbar.",
"Downloading update...": "Update wird heruntergeladen...",
"Couldn't load home page": "Startseite konnte nicht geladen werden"
"Couldn't load home page": "Startseite konnte nicht geladen werden",
"Bug report sent": "Fehlerbericht wurde gesendet",
"Thank you!": "Danke!",
"Back": "Zurück",
"Developer Tools": "Entwicklerwerkzeuge",
"Failed to send custom event.": "Senden des benutzerdefinierten Events fehlgeschlagen.",
"Send Custom Event": "Benutzerdefiniertes Event senden",
"Send Custom State Event": "Benutzerdefiniertes Status-Event senden",
"Explore Room State": "Raum-Status erkunden",
"Event sent!": "Event gesendet!",
"Event Type": "Event-Typ",
"Event Content": "Event-Inhalt",
"State Key": "Status-Schlüssel",
"Filter results": "Ergebnisse filtern",
"You must specify an event type!": "Du musst einen Event-Typ spezifizieren!",
"Show message in desktop notification": "Nachricht in der Desktop-Benachrichtigung anzeigen",
"Pin Message": "Nachricht anheften",
"Unpin Message": "Nachricht nicht mehr anheften",
"Add rooms to this community": "Räume zu dieser Community hinzufügen",
"Edit": "Editieren",
"Register": "Registrieren",
"Rooms": "Räume",
"Invite to this community": "In diese Community einladen",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Die benutzerdefinierten Server-Einstellungen kannst du verwenden, um dich auf anderen Matrix-Servern anzumelden, indem du eine abweichende Heimserver-URL eingibst.<br/>Somit ist es möglich, Riot mit einem bereits bestehendem Matrix-Benutzerkonto auf einem anderen Heimserver zu verwenden.<br/><br/>Außerdem kannst du einen benutzerdefinierten Identitätsserver eingeben. Allerdings kannst du in diesem Fall Benutzer nicht mehr per E-Mail-Adresse einladen und auch selbst nicht mehr per E-Mail-Adresse eingeladen werden.",
"Toolbox": "Werkzeugkasten",
"Explore Account Data": "Daten des Benutzerkontos erkunden",
"Send Account Data": "Sende Benutzerkonto-Daten"
}

View File

@ -12,7 +12,6 @@
"Changelog": "Αλλαγές",
"Close": "Κλείσιμο",
"Collapse panel": "Ελαχιστοποίηση καρτέλας",
"Create new room": "Δημιουργία νέου δωματίου",
"Custom Server Options": "Προσαρμοσμένες ρυθμίσεις διακομιστή",
"Describe your problem here.": "Περιγράψτε το πρόβλημα σας εδώ.",
"Direct Chat": "Απευθείας συνομιλία",
@ -36,14 +35,11 @@
"Dismiss": "Απόρριψη",
"Failed to add tag %(tagName)s to room": "Δεν ήταν δυνατή η προσθήκη της ετικέτας %(tagName)s στο δωμάτιο",
"Failed to change settings": "Δεν ήταν δυνατή η αλλαγή των ρυθμίσεων",
"Failed to join the room": "Δεν ήταν δυνατή η σύνδεση στο δωμάτιο",
"Favourite": "Αγαπημένο",
"Files": "Αρχεία",
"Filter room names": "Φιλτράρισμα δωματίων",
"Forward Message": "Προώθηση",
" from room": " από το δωμάτιο",
"Guests can join": "Επισκέπτες μπορούν να συνδεθούν",
"Guest users can't invite users. Please register to invite.": "Οι επισκέπτες δεν έχουν τη δυνατότητα να προσκαλέσουν άλλους χρήστες. Παρακαλούμε εγγραφείτε πρώτα.",
"Hide panel": "Απόκρυψη καρτέλας",
"I understand the risks and wish to continue": "Κατανοώ του κινδύνους και επιθυμώ να συνεχίσω",
"Invite to this room": "Πρόσκληση σε αυτό το δωμάτιο",
@ -66,20 +62,15 @@
"Notify me for anything else": "Ειδοποίηση για οτιδήποτε άλλο",
"Operation failed": "Η λειτουργία απέτυχε",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Παρακαλούμε περιγράψτε το σφάλμα. Τι κάνατε; Τι περιμένατε να συμβεί; Τι έγινε τελικά;",
"Please Register": "Παρακαλούμε εγγραφείτε",
"Redact": "Ανάκληση",
"Reject": "Απόρριψη",
"Remove": "Αφαίρεση",
"Remove from Directory": "Αφαίρεση από το ευρετήριο",
"Resend": "Αποστολή ξανά",
"Riot Desktop on %(platformName)s": "Riot Desktop σε %(platformName)s",
"Room directory": "Ευρετήριο",
"Room not found": "Το δωμάτιο δεν βρέθηκε",
"Search": "Αναζήτηση",
"Search…": "Αναζήτηση…",
"Send": "Αποστολή",
"Settings": "Ρυθμίσεις",
"Start chat": "Έναρξη συνομιλίας",
"This Room": "Στο δωμάτιο",
"Unavailable": "Μη διαθέσιμο",
"Unknown device": "Άγνωστη συσκευή",
@ -99,7 +90,6 @@
"Search for a room": "Αναζήτηση δωματίου",
"Sorry, your browser is <b>not</b> able to run Riot.": "Λυπούμαστε, αλλά ο περιηγητές σας <b>δεν</b> υποστηρίζεται από το Riot.",
"There are advanced notifications which are not shown here": "Υπάρχουν προχωρημένες ειδοποιήσεις οι οποίες δεν εμφανίζονται εδώ",
"This room is inaccessible to guests. You may be able to join if you register.": "Το δωμάτιο δεν είναι προσβάσιμο σε επισκέπτες. Πιθανόν να μπορέσετε να συνδεθείτε εάν εγγραφείτε.",
"Unable to join network": "Δεν είναι δυνατή η σύνδεση στο δίκτυο",
"unknown error code": "άγνωστος κωδικός σφάλματος",
"Unnamed room": "Ανώνυμο δωμάτιο",
@ -123,12 +113,10 @@
"Yesterday": "Χθές",
"OK": "Εντάξει",
"You need to be using HTTPS to place a screen-sharing call.": "Απαιτείται η χρήση HTTPS για το διαμοιρασμό της επιφάνειας εργασίας μέσω κλήσης.",
"Welcome page": "Αρχική σελίδα",
"Forget": "Παράλειψη",
"Riot is not supported on mobile web. Install the app?": "Το Riot δεν υποστηρίζεται από περιηγητές κινητών. Θέλετε να εγκαταστήσετε την εφαρμογή;",
"Unhide Preview": "Προεπισκόπηση",
"Waiting for response from server": "Αναμονή απάντησης από τον διακομιστή",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Χρησιμοποιείτε το Riot ως επισκέπτης. <a>Εγγραφείτε</a> ή <a>συνδεθείτε</a> για να αποκτήσετε πρόσβαση σε περισσότερα δωμάτια και χαρακτηριστικά!",
"Collecting logs": "Συγκέντρωση πληροφοριών",
"Enable them now": "Ενεργοποίηση",
"Failed to forget room %(errCode)s": "Δεν ήταν δυνατή η διαγραφή του δωματίου (%(errCode)s)",
@ -142,15 +130,12 @@
"Send logs": "Αποστολή πληροφοριών",
"Source URL": "Πηγαίο URL",
"The server may be unavailable or overloaded": "Ο διακομιστής είναι μη διαθέσιμος ή υπερφορτωμένος",
" to room": " στο δωμάτιο",
"Unable to fetch notification target list": "Δεν ήταν δυνατή η εύρεση στόχων για τις ειδοποιήσεις",
"Unable to look up room ID from server": "Δεν είναι δυνατή η εύρεση του ID για το δωμάτιο",
"View Decrypted Source": "Προβολή του αποκρυπτογραφημένου κώδικα",
"View Source": "Προβολή κώδικα",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Ισως να έχετε κάνει τις ρυθμίσεις σε άλλη εφαρμογή εκτός του Riot. Δεν μπορείτε να τις αλλάξετε μέσω του Riot αλλά ισχύουν κανονικά",
"Couldn't find a matching Matrix room": "Δεν βρέθηκε κάποιο δωμάτιο",
"Drop here %(toAction)s": "Αποθέστε εδώ %(toAction)s",
"Failed to": "Απέτυχε να",
"Failed to get public room list": "Δεν ήταν δυνατή η λήψη της λίστας με τα δημόσια δωμάτια",
"Failed to set direct chat tag": "Δεν ήταν δυνατός ο χαρακτηρισμός της συνομιλίας ως 1-προς-1",
"powered by Matrix": "βασισμένο στο πρωτόκολλο Matrix",

View File

@ -1,209 +1,219 @@
{
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.",
"A new version of Riot is available.": "A new version of Riot is available.",
"Add an email address above to configure email notifications": "Add an email address above to configure email notifications",
"Advanced notification settings": "Advanced notification settings",
"All messages": "All messages",
"All messages (loud)": "All messages (loud)",
"All Rooms": "All Rooms",
"All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.",
"An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.",
"Call invitation": "Call invitation",
"Cancel": "Cancel",
"Cancel Sending": "Cancel Sending",
"Can't update user notification settings": "Can't update user notification settings",
"Changelog": "Changelog",
"Close": "Close",
"Collapse panel": "Collapse panel",
"Collecting app version information": "Collecting app version information",
"Collecting logs": "Collecting logs",
"Create new room": "Create new room",
"Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room",
"Custom Server Options": "Custom Server Options",
"customServer_text": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.",
"delete the alias.": "delete the alias.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Delete the room alias %(alias)s and remove %(name)s from the directory?",
"Describe your problem here.": "Describe your problem here.",
"Direct Chat": "Direct Chat",
"Directory": "Directory",
"Dismiss": "Dismiss",
"Download this file": "Download this file",
"Drop here %(toAction)s": "Drop here %(toAction)s",
"Enable audible notifications in web client": "Enable audible notifications in web client",
"Enable desktop notifications": "Enable desktop notifications",
"Enable email notifications": "Enable email notifications",
"Enable notifications for this account": "Enable notifications for this account",
"Enable them now": "Enable them now",
"Enter keywords separated by a comma:": "Enter keywords separated by a comma:",
"Error": "Error",
"Error saving email notification preferences": "Error saving email notification preferences",
"#example": "#example",
"Expand panel": "Expand panel",
"Failed to": "Failed to",
"Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room",
"Failed to change settings": "Failed to change settings",
"Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s",
"Failed to update keywords": "Failed to update keywords",
"Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server",
"Failed to get public room list": "Failed to get public room list",
"Failed to join the room": "Failed to join the room",
"Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room",
"Failed to send report: ": "Failed to send report: ",
"Failed to set direct chat tag": "Failed to set direct chat tag",
"Failed to set Direct Message status of room": "Failed to set Direct Message status of room",
"Favourite": "Favourite",
"Fetching third party location failed": "Fetching third party location failed",
"Files": "Files",
"Filter room names": "Filter room names",
"Forget": "Forget",
"Forward Message": "Forward Message",
" from room": " from room",
"Guests can join": "Guests can join",
"Guest users can't invite users. Please register to invite.": "Guest users can't invite users. Please register to invite.",
"Hide panel": "Hide panel",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"I understand the risks and wish to continue": "I understand the risks and wish to continue",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:",
"Invite to this room": "Invite to this room",
"Keywords": "Keywords",
"Leave": "Leave",
"Login": "Login",
"Loading bug report module": "Loading bug report module",
"Low Priority": "Low Priority",
"Members": "Members",
"Mentions only": "Mentions only",
"Messages containing my display name": "Messages containing my display name",
"Messages containing <span>keywords</span>": "Messages containing <span>keywords</span>",
"Messages containing my user name": "Messages containing my user name",
"Messages in group chats": "Messages in group chats",
"Messages in one-to-one chats": "Messages in one-to-one chats",
"Messages sent by bot": "Messages sent by bot",
"more": "more",
"Mute": "Mute",
"No rooms to show": "No rooms to show",
"Noisy": "Noisy",
"Notification targets": "Notification targets",
"Notifications": "Notifications",
"Notifications on the following keywords follow rules which cant be displayed here:": "Notifications on the following keywords follow rules which cant be displayed here:",
"Notify for all other messages/rooms": "Notify for all other messages/rooms",
"Notify me for anything else": "Notify me for anything else",
"Off": "Off",
"On": "On",
"Operation failed": "Operation failed",
"Permalink": "Permalink",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?",
"Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.",
"Please Register": "Please Register",
"powered by Matrix": "powered by Matrix",
"Quote": "Quote",
"Reject": "Reject",
"Remove %(name)s from the directory?": "Remove %(name)s from the directory?",
"Remove": "Remove",
"remove %(name)s from the directory.": "remove %(name)s from the directory.",
"Remove from Directory": "Remove from Directory",
"Report a bug": "Report a bug",
"Resend": "Resend",
"Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s",
"Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network",
"Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.",
"Room directory": "Room directory",
"Room not found": "Room not found",
"Search": "Search",
"Search…": "Search…",
"Search for a room": "Search for a room",
"Send": "Send",
"Send logs": "Send logs",
"Settings": "Settings",
"Source URL": "Source URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.",
"Start chat": "Start chat",
"The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks",
"There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here",
"The server may be unavailable or overloaded": "The server may be unavailable or overloaded",
"This Room": "This Room",
"This room is inaccessible to guests. You may be able to join if you register.": "This room is inaccessible to guests. You may be able to join if you register.",
" to room": " to room",
"Unable to fetch notification target list": "Unable to fetch notification target list",
"Unable to join network": "Unable to join network",
"Unable to look up room ID from server": "Unable to look up room ID from server",
"Unavailable": "Unavailable",
"Unhide Preview": "Unhide Preview",
"Unknown device": "Unknown device",
"unknown error code": "unknown error code",
"Unnamed room": "Unnamed room",
"Update": "Update",
"Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s",
"Uploading report": "Uploading report",
"View Decrypted Source": "View Decrypted Source",
"View Source": "View Source",
"What's New": "What's New",
"What's new?": "What's new?",
"Waiting for response from server": "Waiting for response from server",
"When I'm invited to a room": "When I'm invited to a room",
"World readable": "World readable",
"You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)",
"You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)",
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply",
"Sunday": "Sunday",
"Monday": "Monday",
"Tuesday": "Tuesday",
"Wednesday": "Wednesday",
"Thursday": "Thursday",
"Friday": "Friday",
"Saturday": "Saturday",
"Today": "Today",
"Yesterday": "Yesterday",
"OK": "OK",
"Warning": "Warning",
"Checking for an update...": "Checking for an update...",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"No update available.": "No update available.",
"Downloading update...": "Downloading update...",
"You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.",
"Welcome page": "Welcome page",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!",
"Welcome to Riot.im": "Welcome to Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralised, encrypted chat &amp; collaboration powered by [matrix]",
"Search the room directory": "Search the room directory",
"Chat with Riot Bot": "Chat with Riot Bot",
"Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!",
"General discussion about Matrix and Riot": "General discussion about Matrix and Riot",
"Discussion of all things Matrix!": "Discussion of all things Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"Matrix technical discussions": "Matrix technical discussions",
"Running Matrix services": "Running Matrix services",
"Community-run support for Synapse": "Community-run support for Synapse",
"Admin support for Dendrite": "Admin support for Dendrite",
"Announcements about Synapse releases": "Announcements about Synapse releases",
"Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc",
"Building services on Matrix": "Building services on Matrix",
"Support for those using the Matrix spec": "Support for those using the Matrix spec",
"Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix",
"Implementing VR services with Matrix": "Implementing VR services with Matrix",
"Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix",
"Discussion of the Identity Service API": "Discussion of the Identity Service API",
"Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges",
"Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot",
"Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team",
"Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team",
"Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!",
"Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?",
"You have successfully set a password!": "You have successfully set a password!",
"You can now return to your account after signing out, and sign in on other devices.": "You can now return to your account after signing out, and sign in on other devices.",
"Continue": "Continue",
"Please set a password!": "Please set a password!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "This will allow you to return to your account after signing out, and sign in on other devices.",
"You have successfully set a password and an email address!": "You have successfully set a password and an email address!",
"Remember, you can always set an email address in user settings if you change your mind.": "Remember, you can always set an email address in user settings if you change your mind.",
"To return to your account in future you need to <u>set a password</u>": "To return to your account in future you need to <u>set a password</u>",
"Set Password": "Set Password",
"Couldn't load home page": "Couldn't load home page"
"Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?",
"Collecting app version information": "Collecting app version information",
"Collecting logs": "Collecting logs",
"Uploading report": "Uploading report",
"Waiting for response from server": "Waiting for response from server",
"Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s",
"Unknown device": "Unknown device",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s",
"You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.",
"Messages containing my display name": "Messages containing my display name",
"Messages containing my user name": "Messages containing my user name",
"Messages in one-to-one chats": "Messages in one-to-one chats",
"Messages in group chats": "Messages in group chats",
"When I'm invited to a room": "When I'm invited to a room",
"Call invitation": "Call invitation",
"Messages sent by bot": "Messages sent by bot",
"Error saving email notification preferences": "Error saving email notification preferences",
"An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.",
"Keywords": "Keywords",
"Enter keywords separated by a comma:": "Enter keywords separated by a comma:",
"OK": "OK",
"Failed to change settings": "Failed to change settings",
"Operation failed": "Operation failed",
"Can't update user notification settings": "Can't update user notification settings",
"Failed to update keywords": "Failed to update keywords",
"Messages containing <span>keywords</span>": "Messages containing <span>keywords</span>",
"Notify for all other messages/rooms": "Notify for all other messages/rooms",
"Notify me for anything else": "Notify me for anything else",
"Enable notifications for this account": "Enable notifications for this account",
"All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.",
"Add an email address above to configure email notifications": "Add an email address above to configure email notifications",
"Enable email notifications": "Enable email notifications",
"Notifications on the following keywords follow rules which cant be displayed here:": "Notifications on the following keywords follow rules which cant be displayed here:",
"Unable to fetch notification target list": "Unable to fetch notification target list",
"Notification targets": "Notification targets",
"Advanced notification settings": "Advanced notification settings",
"There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply",
"Enable desktop notifications": "Enable desktop notifications",
"Show message in desktop notification": "Show message in desktop notification",
"Enable audible notifications in web client": "Enable audible notifications in web client",
"Off": "Off",
"On": "On",
"Noisy": "Noisy",
"Failed to set direct chat tag": "Failed to set direct chat tag",
"Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room",
"Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room",
"Search…": "Search…",
"Search": "Search",
"This Room": "This Room",
"All Rooms": "All Rooms",
"Sunday": "Sunday",
"Monday": "Monday",
"Tuesday": "Tuesday",
"Wednesday": "Wednesday",
"Thursday": "Thursday",
"Friday": "Friday",
"Saturday": "Saturday",
"Today": "Today",
"Yesterday": "Yesterday",
"Custom Server Options": "Custom Server Options",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.",
"Dismiss": "Dismiss",
"powered by Matrix": "powered by Matrix",
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
"Enable them now": "Enable them now",
"What's New": "What's New",
"Update": "Update",
"What's new?": "What's new?",
"A new version of Riot is available.": "A new version of Riot is available.",
"To return to your account in future you need to <u>set a password</u>": "To return to your account in future you need to <u>set a password</u>",
"Toolbox": "Toolbox",
"Set Password": "Set Password",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"Checking for an update...": "Checking for an update...",
"No update available.": "No update available.",
"Downloading update...": "Downloading update...",
"Warning": "Warning",
"Error": "Error",
"You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)",
"Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s",
"Remove": "Remove",
"Close": "Close",
"Download this file": "Download this file",
"Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.",
"Loading bug report module": "Loading bug report module",
"Bug report sent": "Bug report sent",
"Thank you!": "Thank you!",
"Failed to send report: ": "Failed to send report: ",
"Cancel": "Cancel",
"Report a bug": "Report a bug",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?",
"Describe your problem here.": "Describe your problem here.",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:",
"Send logs": "Send logs",
"Send": "Send",
"Unavailable": "Unavailable",
"Changelog": "Changelog",
"Back": "Back",
"You must specify an event type!": "You must specify an event type!",
"Event sent!": "Event sent!",
"Failed to send custom event.": "Failed to send custom event.",
"Event Type": "Event Type",
"Event Content": "Event Content",
"State Key": "State Key",
"Edit": "Edit",
"Filter results": "Filter results",
"Send Custom Event": "Send Custom Event",
"Send Account Data": "Send Account Data",
"Explore Account Data": "Explore Account Data",
"Explore Room State": "Explore Room State",
"Developer Tools": "Developer Tools",
"You have successfully set a password!": "You have successfully set a password!",
"You have successfully set a password and an email address!": "You have successfully set a password and an email address!",
"You can now return to your account after signing out, and sign in on other devices.": "You can now return to your account after signing out, and sign in on other devices.",
"Remember, you can always set an email address in user settings if you change your mind.": "Remember, you can always set an email address in user settings if you change your mind.",
"Continue": "Continue",
"Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"Please set a password!": "Please set a password!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "This will allow you to return to your account after signing out, and sign in on other devices.",
"You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)",
"Resend": "Resend",
"Cancel Sending": "Cancel Sending",
"Forward Message": "Forward Message",
"Unpin Message": "Unpin Message",
"Pin Message": "Pin Message",
"View Source": "View Source",
"View Decrypted Source": "View Decrypted Source",
"Unhide Preview": "Unhide Preview",
"Permalink": "Permalink",
"Quote": "Quote",
"Source URL": "Source URL",
"Failed to set Direct Message status of room": "Failed to set Direct Message status of room",
"unknown error code": "unknown error code",
"Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s",
"All messages (loud)": "All messages (loud)",
"All messages": "All messages",
"Mentions only": "Mentions only",
"Mute": "Mute",
"Leave": "Leave",
"Forget": "Forget",
"Reject": "Reject",
"Favourite": "Favourite",
"Low Priority": "Low Priority",
"Direct Chat": "Direct Chat",
"Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!",
"I understand the risks and wish to continue": "I understand the risks and wish to continue",
"Couldn't load home page": "Couldn't load home page",
"Login": "Login",
"Register": "Register",
"Invite to this room": "Invite to this room",
"Members": "Members",
"Files": "Files",
"Notifications": "Notifications",
"Rooms": "Rooms",
"Hide panel": "Hide panel",
"Invite to this community": "Invite to this community",
"Add rooms to this community": "Add rooms to this community",
"Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server",
"The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks",
"Failed to get public room list": "Failed to get public room list",
"The server may be unavailable or overloaded": "The server may be unavailable or overloaded",
"Unnamed room": "Unnamed room",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Delete the room alias %(alias)s and remove %(name)s from the directory?",
"Remove %(name)s from the directory?": "Remove %(name)s from the directory?",
"Remove from Directory": "Remove from Directory",
"remove %(name)s from the directory.": "remove %(name)s from the directory.",
"delete the alias.": "delete the alias.",
"Unable to join network": "Unable to join network",
"Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network",
"Room not found": "Room not found",
"Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room",
"Fetching third party location failed": "Fetching third party location failed",
"Unable to look up room ID from server": "Unable to look up room ID from server",
"World readable": "World readable",
"Guests can join": "Guests can join",
"Directory": "Directory",
"No rooms to show": "No rooms to show",
"Search for a room": "Search for a room",
"#example": "#example",
"more": "more",
"Expand panel": "Expand panel",
"Collapse panel": "Collapse panel",
"Filter room names": "Filter room names",
"Welcome to Riot.im": "Welcome to Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralised, encrypted chat &amp; collaboration powered by [matrix]",
"Search the room directory": "Search the room directory",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!",
"Chat with Riot Bot": "Chat with Riot Bot",
"Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!",
"General discussion about Matrix and Riot": "General discussion about Matrix and Riot",
"Discussion of all things Matrix!": "Discussion of all things Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"Matrix technical discussions": "Matrix technical discussions",
"Running Matrix services": "Running Matrix services",
"Community-run support for Synapse": "Community-run support for Synapse",
"Admin support for Dendrite": "Admin support for Dendrite",
"Announcements about Synapse releases": "Announcements about Synapse releases",
"Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc",
"Building services on Matrix": "Building services on Matrix",
"Support for those using the Matrix spec": "Support for those using the Matrix spec",
"Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix",
"Implementing VR services with Matrix": "Implementing VR services with Matrix",
"Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix",
"Discussion of the Identity Service API": "Discussion of the Identity Service API",
"Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges",
"Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot",
"Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team",
"Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team",
"Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators"
}

View File

@ -18,7 +18,6 @@
"Collapse panel": "Collapse panel",
"Collecting app version information": "Collecting app version information",
"Collecting logs": "Collecting logs",
"Create new room": "Create new room",
"Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room",
"Custom Server Options": "Custom Server Options",
"customServer_text": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.",
@ -29,7 +28,6 @@
"Directory": "Directory",
"Dismiss": "Dismiss",
"Download this file": "Download this file",
"Drop here %(toAction)s": "Drop here %(toAction)s",
"Enable audible notifications in web client": "Enable audible notifications in web client",
"Enable desktop notifications": "Enable desktop notifications",
"Enable email notifications": "Enable email notifications",
@ -40,14 +38,12 @@
"Error saving email notification preferences": "Error saving email notification preferences",
"#example": "#example",
"Expand panel": "Expand panel",
"Failed to": "Failed to",
"Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room",
"Failed to change settings": "Failed to change settings",
"Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s",
"Failed to update keywords": "Failed to update keywords",
"Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server",
"Failed to get public room list": "Failed to get public room list",
"Failed to join the room": "Failed to join the room",
"Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room",
"Failed to send report: ": "Failed to send report: ",
"Failed to set direct chat tag": "Failed to set direct chat tag",
@ -58,9 +54,7 @@
"Filter room names": "Filter room names",
"Forget": "Forget",
"Forward Message": "Forward Message",
" from room": " from room",
"Guests can join": "Guests can join",
"Guest users can't invite users. Please register to invite.": "Guest users can't invite users. Please register to invite.",
"Hide panel": "Hide panel",
"I understand the risks and wish to continue": "I understand the risks and wish to continue",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please uncheck:",
@ -93,7 +87,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?",
"Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.",
"Please Register": "Please Register",
"powered by Matrix": "powered by Matrix",
"Quote": "Quote",
"Reject": "Reject",
@ -107,23 +100,18 @@
"Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network",
"Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.",
"Room directory": "Room directory",
"Room not found": "Room not found",
"Search": "Search",
"Search…": "Search…",
"Search for a room": "Search for a room",
"Send": "Send",
"Send logs": "Send logs",
"Settings": "Settings",
"Source URL": "Source URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.",
"Start chat": "Start chat",
"The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks",
"There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here",
"The server may be unavailable or overloaded": "The server may be unavailable or overloaded",
"This Room": "This Room",
"This room is inaccessible to guests. You may be able to join if you register.": "This room is inaccessible to guests. You may be able to join if you register.",
" to room": " to room",
"Unable to fetch notification target list": "Unable to fetch notification target list",
"Unable to join network": "Unable to join network",
"Unable to look up room ID from server": "Unable to look up room ID from server",
@ -145,7 +133,6 @@
"You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)",
"You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)",
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply",
"Sunday": "Sunday",
"Monday": "Monday",
@ -158,7 +145,6 @@
"Yesterday": "Yesterday",
"OK": "OK",
"You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.",
"Welcome page": "Welcome page",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!",
"Login": "Login",
"Continue": "Continue",
@ -199,6 +185,8 @@
"You have successfully set a password and an email address!": "You have successfully set a password and an email address!",
"Remember, you can always set an email address in user settings if you change your mind.": "Remember, you can always set an email address in user settings if you change your mind.",
"Warning": "Warning",
"Pin Message": "Pin Message",
"Unpin Message": "Unpin Message",
"Checking for an update...": "Checking for an update...",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"No update available.": "No update available.",

View File

@ -4,7 +4,6 @@
"All messages (loud)": "Ĉiuj mesaĝoj (lauta)",
"All Rooms": "Ĉiuj babilejoj",
"Cancel": "Nuligi",
"Create new room": "Krei novan babilejon",
"delete the alias.": "Forviŝi la kromnomon.",
"Describe your problem here.": "Priskribi vian problemon ĉi tie.",
"Direct Chat": "Rekta babilejo",
@ -14,9 +13,7 @@
"#example": "#ekzemplo",
"Files": "Dosieroj",
"Forget": "Forgesi",
" from room": " el babilejo",
"Guests can join": "Gastoj povas aliĝi",
"Guest users can't invite users. Please register to invite.": "Gasta uzantoj ne povas inviti uzantojn. Bonvolu registri por inviti.",
"I understand the risks and wish to continue": "Mi komprenas la riskonj kaj volas daŭrigi",
"Invite to this room": "Inviti en ĉi tiun babilejon",
"Keywords": "Ŝlosilvortoj",
@ -29,18 +26,15 @@
"Mute": "Silentigi",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Bonvolu priskribi la cimon. Kion vi faris? Kion vi atendis okazi? Kion fakte okazis?",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Bonvolu instali <a href=\"https://www.google.com/chrome\">\"Chrome\"</a> aŭ <a href=\"https://getfirefox.com\">\"Firefox\"</a> por la plej bona sperto.",
"Please Register": "Bonvolu registri",
"powered by Matrix": "funkciigata de \"Matrix\"",
"Quote": "Citu",
"Reject": "Malakcepti",
"Resend": "Resendi",
"Room directory": "Babileja dosierujo",
"Room not found": "Babilejo ne trovita",
"Search": "Serĉi",
"Search…": "Serĉi…",
"Search for a room": "Serĉi babilejon",
"Send": "Sendi",
"Start chat": "Komenci babiladon",
"This Room": "Ĉi tiu Babilejo",
"Add an email address above to configure email notifications": "Aldonu retadreson supre por agordi retpoŝtajn sciigojn",
"Advanced notification settings": "Agordoj de sciigoj specialaj",
@ -67,14 +61,12 @@
"Error": "Eraro",
"Error saving email notification preferences": "Eraro konservante agordojn pri retpoŝtaj sciigoj",
"Expand panel": "Pli grandigi panelon",
"Failed to": "Malsukcesis",
"Failed to add tag %(tagName)s to room": "Malsukcesis aldoni etikedon %(tagName)s al la ejo",
"Failed to change settings": "Malsukcesis ŝanĝi la agordojn",
"Failed to forget room %(errCode)s": "Malsukcesis forgesi la ejon %(errCode)s",
"Failed to update keywords": "Malsukcesis ĝisdatigi la ŝlosilvortojn",
"Failed to get protocol list from Home Server": "Malsukcesis obteni la liston de protokoloj por la servilo Home",
"Failed to get public room list": "Malsukcesis obteni la liston de publikaj ejoj",
"Failed to join the room": "Malsukcesis aliĝi al la ejo",
"Failed to remove tag %(tagName)s from room": "Malsukcesis forigi la etikedon %(tagName)s el la ejo",
"Failed to send report: ": "Malsukcesis sendi raporton: ",
"Failed to set direct chat tag": "Malsukcesis agordi la etikedon de rekta babilejo",
@ -102,7 +94,6 @@
"Operation failed": "La operacio malsukcesis",
"Permalink": "Konstanta ligilo",
"Please describe the bug and/or send logs.": "Bonvolu priskribi la cimon kaj/aŭ sendi protokolojn.",
"Redact": "Redakti",
"Remove %(name)s from the directory?": "Forigi %(name)s el la dosierujo?",
"Remove": "Forigi",
"remove %(name)s from the directory.": "forigi %(name)s el la dosierujo.",
@ -113,14 +104,11 @@
"Riot is not supported on mobile web. Install the app?": "Riot ne estas subtenita je mobile web. Instali la aplikaĵon?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uzas multajn specialajn trajtojn, kelkaj ne estas disponeblaj aŭ estas eksperimentaj en via nuna retumilo.",
"Send logs": "Sendi protokolojn",
"Settings": "Agordoj",
"Source URL": "Fonta URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Pardonu, via retumilo <b>ne kapablas</b> funkciigi Riot.",
"The Home Server may be too old to support third party networks": "La servilo Home povas esti tro malnova por subteni retoj de ekstera liveranto",
"There are advanced notifications which are not shown here": "Estas specialaj sciigoj kiuj ne estas montritaj ĉi tie",
"The server may be unavailable or overloaded": "La servilo povas esti maldisponebla aŭ tro ŝarĝita",
"This room is inaccessible to guests. You may be able to join if you register.": "Ci tiu ejo estas neenirebla por gastoj. Vi povus aliĝi se vi registriĝas.",
" to room": " al ejo",
"Unable to fetch notification target list": "Ne eblis obteni la liston de celoj por sciigoj",
"Unable to join network": "Ne eblis kuniĝi kun la reto",
"Unable to look up room ID from server": "Ne eblis trovi la identigon el la servilo",
@ -142,7 +130,6 @@
"You cannot delete this image. (%(code)s)": "Vi ne povas forviŝi tiun ĉi bildon. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Vi ne povas forviŝi tiun ĉi mesaĝon. (%(code)s)",
"You are not receiving desktop notifications": "Vi ne estas ricevante sciigojn labortablan",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Vi uzas Riot kiel gasto. <a>Registriĝu</a> aŭ <a>ensalutu</a> por atingi pli da ejoj kaj funkcioj!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Vi eble agordis ilin en kliento kiu ne estis Riot. Vi ne povas agordi ilin en Riot sed ili ankoraŭ validas",
"Sunday": "Dimanĉo",
"Monday": "Lundo",
@ -155,7 +142,6 @@
"Yesterday": "Hieraŭ",
"OK": "Bone",
"You need to be using HTTPS to place a screen-sharing call.": "Vi devas uzi HTTPS por starigi ekranan vokon.",
"Welcome page": "Paĝo de bonveno",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Kun via nuna retumilo, la aspekto kaj funkciado de la aplikaĵo povas esti tute malĝusta, kaj kelkaj aŭ ĉiu funkcioj eble ne funkcios. Se vi volas provi ĉiuokaze vi rajtas daŭrigi, sed ne estos subteno se vi trafas problemojn!",
"Welcome to Riot.im": "Bonvenon al Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Malcentra, ĉifrita babilejo &amp; kunlaboro povigita de [matrix]",
@ -195,7 +181,6 @@
"Remember, you can always set an email address in user settings if you change your mind.": "Memoru, vi ĉiam povas agordi retpoŝtadreson en via uzanta agordo se vi decidas ŝanĝi ĝin poste.",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s per %(browserName)s je %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> kaj <a href=\"http://opera.com\">Opera</a> ankaŭ funkcias.",
"Drop here %(toAction)s": "Forlasi ĉi tie %(toAction)s",
"Favourite": "Plej ŝatata",
"Fetching third party location failed": "Venigado de ekstere liverita loko malsukcesis",
"Filter room names": "Filtri nomojn de ejoj",

View File

@ -5,18 +5,16 @@
"An error occurred whilst saving your email notification preferences.": "Se ha producido un error al guardar las preferencias de notificación por email.",
"Call invitation": "Invitación a la llamada",
"Cancel Sending": "Cancelar envío",
"Can't update user notification settings": "No se puede actualizar la configuración de notificación de usuario",
"Can't update user notification settings": "No se puede actualizar la configuración de notificaciones del usuario",
"Close": "Cerrar",
"Create new room": "Crear nueva sala",
"Couldn't find a matching Matrix room": "No se encontró una sala Matrix que coincidiera",
"Custom Server Options": "Opciones de Servidor Personalizado",
"customServer_text": "Puedes utilizar las opciones de servidor personalizadas para iniciar sesión en otros servidores Matrix especificando una URL de Home server distinta.<br/>Esto te permite usar Riot con una cuenta Matrix existente en un Home server distinto.<br/><br/>También puedes configurar un servidor de identidad personalizado, pero no podrás invitar usuarios por dirección de email, ni ser invitado por email por ti mismo.",
"customServer_text": "Puedes utilizar las opciones de servidor personalizadas para iniciar sesión en otros servidores Matrix especificando una URL de Home server distinta.<br/>Esto te permite usar Riot con una cuenta Matrix existente en un Home server distinto.<br/><br/>También puedes configurar un servidor de identidad personalizado, pero no podrás ni invitar usuarios ni ser invitado a través de tu dirección de correo electrónico.",
"delete the alias.": "borrar el alias.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "¿Borrar la sala alias %(alias)s y retirar %(name)s del directorio?",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "¿Borrar el alias de la sala %(alias)s y eliminar %(name)s del directorio?",
"Direct Chat": "Conversación directa",
"Directory": "Directorio",
"Download this file": "Descargar este archivo",
"Drop here %(toAction)s": "Suelta aquí %(toAction)s",
"Enable audible notifications in web client": "Habilitar notificaciones audibles en el cliente web",
"Enable desktop notifications": "Habilitar notificaciones de escritorio",
"Enable email notifications": "Habilitar notificaciones por email",
@ -30,9 +28,8 @@
"Failed to change settings": "Error al cambiar la configuración",
"Failed to forget room %(errCode)s": "Falló al olvidar la sala %(errCode)s",
"Failed to update keywords": "Error al actualizar las palabras clave",
"Failed to get protocol list from Home Server": "Error al obtener la lista de protocolos de Home Server",
"Failed to get protocol list from Home Server": "Error al obtener la lista de protocolos desde el Home Server",
"Failed to get public room list": "No se pudo obtener la lista de salas públicas",
"Failed to join the room": "Falló al unirse a la sala",
"Failed to remove tag %(tagName)s from room": "Error al eliminar la etiqueta %(tagName)s de la sala",
"Failed to set direct chat tag": "Error al establecer la etiqueta de chat directo",
"Failed to set Direct Message status of room": "No se pudo establecer el estado de Mensaje Directo de la sala",
@ -41,16 +38,14 @@
"Files": "Archivos",
"Filter room names": "Filtrar los nombres de las salas",
"Forget": "Olvidar",
" from room": " de la sala",
"Guests can join": "Los invitados se pueden unir",
"Guest users can't invite users. Please register to invite.": "Los usuarios invitados no pueden invitar usuarios. Por favor, regístrate para poder invitar.",
"Invite to this room": "Invitar a esta sala",
"Keywords": "Palabras clave",
"Leave": "Salir",
"Low Priority": "Baja Prioridad",
"Members": "Miembros",
"Mentions only": "Sólo menciones",
"Messages containing my display name": "Mensajes que contienen mi nombre para mostrar",
"Messages containing my display name": "Mensajes que contienen mi nombre",
"Messages containing my user name": "Mensajes que contienen mi nombre de usuario",
"Messages in group chats": "Mensajes en chats de grupo",
"Messages in one-to-one chats": "Mensajes en chats uno a uno",
@ -67,9 +62,7 @@
"On": "Encendido",
"Operation failed": "Falló la operación",
"Permalink": "Enlace permanente",
"Please Register": "Por favor, regístrese",
"Quote": "Citar",
"Redact": "Redactar",
"Reject": "Rechazar",
"Remove %(name)s from the directory?": "¿Retirar %(name)s del directorio?",
"Remove": "Eliminar",
@ -77,17 +70,12 @@
"Remove from Directory": "Retirar del Directorio",
"Resend": "Reenviar",
"Riot does not know how to join a room on this network": "Riot no sabe cómo unirse a una sala en esta red",
"Room directory": "Directorio de salas",
"Room not found": "Sala no encontrada",
"Search for a room": "Buscar sala",
"Settings": "Configuración",
"Source URL": "URL de origen",
"Start chat": "Comenzar chat",
"The Home Server may be too old to support third party networks": "El Home Server puede ser demasiado antiguo para soportar redes de terceros",
"There are advanced notifications which are not shown here": "Hay notificaciones avanzadas que no se muestran aquí",
"The server may be unavailable or overloaded": "El servidor puede estar no disponible o sobrecargado",
"This room is inaccessible to guests. You may be able to join if you register.": "Esta sala es inaccesible para los invitados. Puedes unirse si te registras.",
" to room": " a la sala",
"Unable to fetch notification target list": "No se puede obtener la lista de objetivos de notificación",
"Unable to join network": "No se puede unir a la red",
"Unable to look up room ID from server": "No se puede buscar el ID de la sala desde el servidor",
@ -112,7 +100,6 @@
"Saturday": "Sábado",
"Today": "Hoy",
"Yesterday": "Ayer",
"Welcome page": "Página de bienvenida",
"Continue": "Continuar",
"Search": "Búsqueda",
"OK": "Correcto",
@ -125,54 +112,52 @@
"Hide panel": "Ocultar panel",
"(HTTP status %(httpStatus)s)": "(estado HTTP %(httpStatus)s)",
"I understand the risks and wish to continue": "Entiendo los riesgos y deseo continuar",
"Changelog": "Bitácora de cambios",
"Changelog": "Registro de cambios",
"Collapse panel": "Colapsar panel",
"Remember, you can always set an email address in user settings if you change your mind.": "Recuerde que, si es necesario, puede establecer una dirección de email en las preferencias de usuario.",
"All Rooms": "Todas las salas",
"Expand panel": "Expandir panel",
"Failed to": "Falló",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Para diagnosticar los problemas, las trazas de este cliente serán enviadas adjuntas a este informe de defecto. Si quisiera enviar el texto anterior solamente, entonces desmarque:",
"Login": "Abrir sesión",
"Report a bug": "Informe un defecto",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Para diagnosticar los problemas, los registros de este cliente serán enviados adjuntos a este informe de fallo. Si quisiera enviar el texto anterior solamente, entonces desmarque:",
"Login": "Iniciar sesión",
"Report a bug": "Informe de un fallo",
"Search…": "Buscar…",
"Send": "Enviar",
"Send logs": "Enviar trazas",
"Send logs": "Enviar registros",
"Sorry, your browser is <b>not</b> able to run Riot.": "¡Lo sentimos! Su navegador <b>no puede</b> ejecutar Riot.",
"This Room": "Esta sala",
"Unavailable": "No disponible",
"Unknown device": "Dispositivo desconocido",
"Update": "Actualizar",
"Uploading report": "Enviando informe",
"What's New": "Lo que hay de nuevo",
"What's New": "Novedades",
"What's new?": "¿Qué hay de nuevo?",
"Waiting for response from server": "Esperando una respuesta del servidor",
"You have successfully set a password and an email address!": "¡Ha establecido exitosamente la contraseña y la dirección de email!",
"You have successfully set a password!": "¡Ha establecido exitosamente una contraseña!",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s en %(osName)s",
"All messages (loud)": "Todos los mensajes (ruidoso)",
"All notifications are currently disabled for all targets.": "Las notificaciones estan desactivadas en todos los objetivos.",
"All notifications are currently disabled for all targets.": "Las notificaciones estan desactivadas para todos los objetivos.",
"Collecting app version information": "Recolectando información de la versión de la aplicación",
"Collecting logs": "Recolectando registros",
"Dismiss": "Omitir",
"Failed to send report: ": "Error al enviar reporte: ",
"Failed to send report: ": "Error al enviar informe: ",
"Loading bug report module": "Cargando módulo de reporte de errores",
"Messages containing <span>keywords</span>": "Mensajes que contienen <span>palabras clave</span>",
"Notify for all other messages/rooms": "Notificar para todos los demás mensajes/salas",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Por favor describa el error. Qué acción ejecutó? Cuál era el resultado que esperaba? Que pasó realmente?",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Por favor describa el error. ¿Qué acción ejecutó? ¿Cuál era el resultado que esperaba? ¿Que pasó realmente?",
"Please describe the bug and/or send logs.": "Por favor describa el error y/o envíe los registros.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Por favor instale <a href=\"https://www.google.com/chrome\">Google Chrome</a> o <a href=\"https://getfirefox.com\">Mozilla Firefox</a> para una mejor experiencia.",
"powered by Matrix": "con el poder de Matrix",
"Riot Desktop on %(platformName)s": "Riot Desktop en %(platformName)s",
"Riot is not supported on mobile web. Install the app?": "Riot no está soportado en navegadores Web móviles. Quieres instalar la aplicación?",
"Riot is not supported on mobile web. Install the app?": "Riot no está soportado en navegadores Web móviles. ¿Quieres instalar la aplicación?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot usa muchas características avanzadas del navegador, algunas de las cuales no están disponibles en su navegador actual.",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Está usando Riot como invitado. ¡<a>Regístrese</a> o <a>inicie sesión</a> para acceder más salas y características!",
"You need to be using HTTPS to place a screen-sharing call.": "Debes usar HTTPS para hacer una llamada con pantalla compartida.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "En su navegador actual, la apariencia de la aplicación puede ser completamente incorrecta, y algunas de las características podrían no funcionar. Si aún desea probarlo puede continuar, pero ¡no podremos ofrecer soporte por cualquier problema que pudiese tener!",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "En su navegador actual, la apariencia y comportamiento de la aplicación puede ser completamente incorrecta, y algunas de las características podrían no funcionar. Si aún desea probarlo puede continuar, pero ¡no podremos ofrecer soporte por cualquier problema que pudiese tener!",
"Welcome to Riot.im": "Bienvenido a Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Conversaciones &amp; colaboración cifradas y descentralizadas con el poder de [matrix]",
"Search the room directory": "Buscar en el directorio de salas",
"Chat with Riot Bot": "Conversar con el Bot de Riot",
"Get started with some tips from Riot Bot!": "¡Comenzar con algunos tips de Riot Bot!",
"Get started with some tips from Riot Bot!": "¡Comenzar con algunos consejos de Riot Bot!",
"General discussion about Matrix and Riot": "Discusión general sobre Matrix y Riot",
"Discussion of all things Matrix!": "¡Discusión sobre todas las cosas de Matrix!",
"Riot/Web &amp; Desktop chat": "Conversaciones de Riot/Web &amp; Desktop",
@ -206,5 +191,7 @@
"To return to your account in future you need to <u>set a password</u>": "Para regresar a su cuenta en el futuro Ud. debe <u>establecer una contraseña</u>",
"Set Password": "Establezca la contraseña",
"Error encountered (%(errorDetail)s).": "Error encontrado (%(errorDetail)s).",
"Couldn't load home page": "No se puede cargar la página principal"
"Couldn't load home page": "No se puede cargar la página principal",
"Bug report sent": "Informe de fallo enviado",
"Thank you!": "¡Gracias!"
}

View File

@ -18,7 +18,6 @@
"Collapse panel": "Tolestu panela",
"Collecting app version information": "Aplikazioaren bertsio-informazioa biltzen",
"Collecting logs": "Egunkariak biltzen",
"Create new room": "Sortu gela berria",
"Couldn't find a matching Matrix room": "Ezin izan da bat datorren Matrix gela bat aurkitu",
"Custom Server Options": "Zerbitzari pertsonalizatuaren aukerak",
"customServer_text": "Zerbitzari pertsonalizatuaren aukerak erabili ditzakezu beste hasiera zerbitzari baten URLa jarrita beste Matrix zerbitzarietan saioa hasteko.<br/>Honek oraingo Matrix kontuarekin Riot beste hasiera zerbitzari batean erabiltzea ahalbidetzen dizu.<br/><br/>Identitate zerbitzari pertsonalizatu bat jar dezakezu ere baina ezin izango dituzu erabiltzaileak bere e-mail helbidea erabilita gonbidatu, edo besteek zu gonbidatu zure e-mail helbidea erabilita.",
@ -29,7 +28,6 @@
"Directory": "Direktorioa",
"Dismiss": "Baztertu",
"Download this file": "Deskargatu fitxategi hau",
"Drop here %(toAction)s": "Jaregin hona %(toAction)s",
"Enable audible notifications in web client": "Gaitu jakinarazpen entzungarriak web bezeroan",
"Enable desktop notifications": "Gaitu mahaigaineko jakinarazpenak",
"Enable email notifications": "Gaitu e-mail bidezko jakinarazpenak",
@ -40,14 +38,12 @@
"Error saving email notification preferences": "Errorea e-mail jakinarazpenen hobespenak gordetzean",
"#example": "#adibidea",
"Expand panel": "Hedatu panela",
"Failed to": "Huts egin du",
"Failed to add tag %(tagName)s to room": "Huts egin du %(tagName)s etiketa gelara gehitzean",
"Failed to change settings": "Huts egin du ezarpenak aldatzean",
"Failed to forget room %(errCode)s": "Huts egin du %(errCode)s gela ahaztean",
"Failed to update keywords": "Huts egin du hitz gakoak eguneratzean",
"Failed to get protocol list from Home Server": "Huts egin du protokoloen zerrenda hasiera zerbitzaritik jasotzean",
"Failed to get public room list": "Huts egin du gela publikoen zerrenda jasotzean",
"Failed to join the room": "Huts egin du gelara elkartzean",
"Failed to remove tag %(tagName)s from room": "Huts egin du %(tagName)s etiketa gelatik kentzean",
"Failed to send report: ": "Huts egin du txostena bidaltzean: ",
"Failed to set direct chat tag": "Huts egin du txat zuzeneko etiketa jartzean",
@ -58,9 +54,7 @@
"Filter room names": "Iragazi gelen izenak",
"Forget": "Ahaztu",
"Forward Message": "Birbidali mezua",
" from room": " gelatik",
"Guests can join": "Bisitariak elkartu daitezke",
"Guest users can't invite users. Please register to invite.": "Bisitariek ezin dituzte erabiltzaileak gonbidatu. Erregistratu gonbidatzeko.",
"Hide panel": "Ezkutatu panela",
"(HTTP status %(httpStatus)s)": "(HTTP egoera %(httpStatus)s)",
"I understand the risks and wish to continue": "Arriskua ulertzen dut eta jarraitu nahi dut",
@ -94,7 +88,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Deskribatu akatsa. Zer egin duzu? Zer gertatuko zela uste zenuen? Zer gertatu da?",
"Please describe the bug and/or send logs.": "Deskribatu akatsa eta/edo bidali egunkariak.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Instalatu <a href=\"https://www.google.com/chrome\">Chrome</a> edo <a href=\"https://getfirefox.com\">Firefox</a> esperientzia on baterako.",
"Please Register": "Erregistratu",
"powered by Matrix": "Matrix mamian",
"Quote": "Aipua",
"Reject": "Baztertu",
@ -108,23 +101,18 @@
"Riot does not know how to join a room on this network": "Riotek ez daki nola elkartu gela batetara sare honetan",
"Riot is not supported on mobile web. Install the app?": "Riotek ez du euskarririk mugikorrentzako webean. Instalatu aplikazioa?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riotek nabigatzaileen ezaugarri aurreratu ugari erabiltzen ditu, hauetako batzuk ez daude erabilgarri edo esperimentalak dira zure oraingo nabigatzailean.",
"Room directory": "Gelen direktorioa",
"Room not found": "Ez da gela aurkitu",
"Search": "Bilatu",
"Search…": "Bilatu…",
"Search for a room": "Bilatu gela bat",
"Send": "Bidali",
"Send logs": "Bidali egunkariak",
"Settings": "Ezarpenak",
"Source URL": "Iturriaren URLa",
"Sorry, your browser is <b>not</b> able to run Riot.": "Zure nabigatzaileak <b>ez</b> du Riot erabiltzeko gaitasunik.",
"Start chat": "Hasi txata",
"The Home Server may be too old to support third party networks": "Hasiera zerbitzaria zaharregia izan daiteke hirugarrengoen sarean onartzeko",
"There are advanced notifications which are not shown here": "Hemen erakusten ez diren jakinarazpen aurreratuak daude",
"The server may be unavailable or overloaded": "Zerbitzaria eskuraezin edo gainezka egon daiteke",
"This Room": "Gela hau",
"This room is inaccessible to guests. You may be able to join if you register.": "Bisitariak ezin dira gela honetara sartu. Erregistratuz gero agian elkartu ahal izango zara.",
" to room": " gelara",
"Unable to fetch notification target list": "Ezin izan da jakinarazpen helburuen zerrenda eskuratu",
"Unable to join network": "Ezin izan da sarera elkartu",
"Unable to look up room ID from server": "Ezin izan da gelaren IDa zerbitzarian bilatu",
@ -146,7 +134,6 @@
"You cannot delete this image. (%(code)s)": "Ezin duzu irudi hau ezabatu. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Ezin duzu mezu hau ezabatu. (%(code)s)",
"You are not receiving desktop notifications": "Ez dituzu mahaigaineko jakinarazpenak jasotzen",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Bisitari bezala sartu zara. <a>Erregistratu</a> edo <a>hasi saioa</a> Gela eta ezaugarri gehiago atzitzeko!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Agian Riot ez beste bezero batean konfiguratu dituzu. Ezin dituzu Riot bidez doitu, baina aplikagarriak dira",
"Sunday": "Igandea",
"Monday": "Astelehena",
@ -164,7 +151,6 @@
"No update available.": "Ez dago eguneraketarik eskuragarri.",
"Downloading update...": "Eguneraketa deskargatzen...",
"You need to be using HTTPS to place a screen-sharing call.": "HTTPS erabili behar duzu sekretuak partekatzeko dei bat ezartzeko.",
"Welcome page": "Ongi etorri orria",
"Welcome to Riot.im": "Ongi etorri Riot.im mezularitzara",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Deszentralizatutako eta zifratutako txat eta elkarlana [matrix] sareari esker",
"Search the room directory": "Bilatu gelen direktorioa",
@ -205,5 +191,7 @@
"Set Password": "Ezarri pasahitza",
"Couldn't load home page": "Ezin izan da hasiera orria kargatu",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Arazoak diagnostikatzeko, bezero honen egunkariak bidaliko dira arazte-txosten honekin. Testua besterik ez baduzu bidali nahi, desmarkatu:",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Zure oraingo nabigatzailearekin aplikazioaren itxura eta portaera guztiz okerra izan daiteke, eta funtzio batzuk ez dira ibiliko. Hala ere aurrera jarraitu dezakezu saiatu nahi baduzu, baina zure erantzukizunaren menpe geratzen dira aurkitu ditzakezun arazoak!"
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Zure oraingo nabigatzailearekin aplikazioaren itxura eta portaera guztiz okerra izan daiteke, eta funtzio batzuk ez dira ibiliko. Hala ere aurrera jarraitu dezakezu saiatu nahi baduzu, baina zure erantzukizunaren menpe geratzen dira aurkitu ditzakezun arazoak!",
"Bug report sent": "Arazte-txostena bidali da",
"Thank you!": "Eskerrik asko!"
}

View File

@ -7,7 +7,6 @@
"Changelog": "تغییراتِ به‌وجودآمده",
"Close": "بستن",
"Collecting app version information": "درحال جمع‌آوری اطلاعات نسخه‌ی برنامه",
"Create new room": "ساخت گپ‌گاه جدید",
"Couldn't find a matching Matrix room": "گپ‌گاه مورد نظر در ماتریکس یافت نشد",
"Direct Chat": "چت مستقیم",
"Directory": "فهرست گپ‌گاه‌ها",
@ -21,23 +20,19 @@
"Error saving email notification preferences": "خطا در ذخیره‌سازی ترجیحات آگاهسازی با ایمیل",
"#example": "#نمونه",
"Expand panel": "پنل را بگشا",
"Failed to": "موفقیت‌آمیز نبود",
"Failed to add tag %(tagName)s to room": "در افزودن تگ %(tagName)s موفقیت‌آمیز نبود",
"Failed to change settings": "تغییر تنظیمات موفقیت‌آمیز نبود",
"Failed to forget room %(errCode)s": "فراموش کردن گپ‌گاه %(errCode)s موفقیت‌آمیز نبود",
"Failed to update keywords": "به‌روزرسانی کلیدواژه‌ها موفقیت‌آمیز نبود",
"Failed to get protocol list from Home Server": "دریافت لیست پروتکل‌ها از کارگزار مبدا موفقیت‌آمیز نبود",
"Failed to get public room list": "گرفتن لیست گپ‌گاه‌های عمومی موفقیت‌آمیز نبود",
"Failed to join the room": "خطا در پیوستن به این گپ",
"Failed to remove tag %(tagName)s from room": "خطا در حذف کلیدواژه‌ی %(tagName)s از گپ",
"Failed to send report: ": "فرستادن گزارش موفقیت‌آمیز نبود: ",
"Favourite": "علاقه‌مندی‌ها",
"Files": "فایل‌ها",
"Forget": "فراموش کن",
"Forward Message": "هدایت پیام",
" from room": " از گپ‌گاه",
"Guests can join": "میهمان‌ها می‌توانند بپیوندند",
"Guest users can't invite users. Please register to invite.": "میهمان‌ها نمی‌توانند کسی را دعوت کنند. برای دعوت کردن عضو شوید.",
"Hide panel": "پنل را پنهان کن",
"I understand the risks and wish to continue": "از خطرات این کار آگاهم و مایلم که ادامه بدهم",
"Invite to this room": "دعوت به این گپ",
@ -81,7 +76,6 @@
"On": "روشن",
"Operation failed": "عملیات شکست خورد",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "لطفا برای بهترین تجربه‌ی کاربری از<a href=\"https://www.google.com/chrome\">کروم</a> یا <a href=\"https://getfirefox.com\">فایرفاکس</a> استفاده کنید",
"Please Register": "لطفا ثبت‌نام کنید",
"powered by Matrix": "قدرت‌یافته از ماتریکس",
"Quote": "گفتآورد",
"Reject": "پس زدن",
@ -94,21 +88,16 @@
"Riot Desktop on %(platformName)s": "رایوت دسکتاپ بر %(platformName)s",
"Riot does not know how to join a room on this network": "رایوت از چگونگی ورود به یک گپ در این شبکه اطلاعی ندارد",
"Riot is not supported on mobile web. Install the app?": "رایوت در موبایل‌ها پشتیبانی نمیشود؛ تمایلی دارید که اپ را نصب کنید؟",
"Room directory": "فهرست گپ‌ها",
"Room not found": "گپ یافت نشد",
"Search": "جستجو",
"Search…": "جستجو…",
"Search for a room": "جستجوی برای یک گپ",
"Send": "ارسال",
"Send logs": "ارسال گزارش‌ها",
"Settings": "تنظیمات",
"Sorry, your browser is <b>not</b> able to run Riot.": "متاسفانه مرورگر شما <b>نمی‌تواند</b> رایوت را اجرا کند.",
"Start chat": "شروع چت",
"There are advanced notifications which are not shown here": "آگاه‌سازی‌های پیشرفته‌ای هستند که در اینجا نشان داده نشده‌اند",
"The server may be unavailable or overloaded": "این سرور ممکن است ناموجود یا بسیار شلوغ باشد",
"This Room": "این گپ",
" to room": " به گپ",
"This room is inaccessible to guests. You may be able to join if you register.": "این گپ برای میهمان‌ها قابل دسترسی نیست. ممکن است پس از ثبت‌نام بتوانید عضو شوید.",
"Unable to join network": "خطا در ورود به شبکه",
"Unavailable": "غیرقابل‌دسترسی",
"Unknown device": "دستگاه ناشناخته",
@ -142,7 +131,6 @@
"OK": "باشه",
"Warning": "هشدار",
"No update available.": "هیچ به روزرسانی جدیدی موجود نیست.",
"Welcome page": "صفحه‌ی خوش‌آمدگویی",
"Welcome to Riot.im": "به Riot.im خوش‌آمدید",
"Chat with Riot Bot": "با رایوت‌بات چت کنید",
"Get started with some tips from Riot Bot!": "با کمی راهنمایی از رایوت‌بات شروع کنید!",
@ -175,7 +163,6 @@
"Waiting for response from server": "در انتظار پاسخی از سمت سرور",
"When I'm invited to a room": "وقتی من به گپی دعوت میشوم",
"You are not receiving desktop notifications": "شما آگاه‌سازی‌های دسکتاپ را دریافت نمی‌کنید",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "شما به عنوان میهمان در نزد ما هستید. <a>ثبت‌نام کنید</a> یا <a>وارد شوید</a> تا به قابلیت‌ها و گپ‌های بیشتری دسترسی داشته باشید!",
"Checking for an update...": "درحال بررسی به‌روزرسانی‌ها...",
"Error encountered (%(errorDetail)s).": "خطای رخ داده (%(errorDetail)s).",
"You need to be using HTTPS to place a screen-sharing call.": "شما باید از ارتباط امن HTTPS برای به‌راه‌اندازی یک چتِ شامل به اشتراک‌گذاری صفحه‌ی کامیپوتر استفاده کنید.",
@ -193,7 +180,6 @@
"Discussion of the Identity Service API": "بحث درمورد API سرویس هویت",
"You have successfully set a password!": "شما با موفقیت رمزتان را انتخاب کردید!",
"Collapse panel": "پنل را ببند",
"Drop here %(toAction)s": "به اینجا بیندازید %(toAction)s",
"Failed to set Direct Message status of room": "تنظیم حالت پیام مستقیم برای گپ موفقیت‌آمیز نبود",
"Fetching third party location failed": "تطبیق اطلاعات از منابع‌ دسته سوم با شکست مواجه شد",
"Messages containing my display name": "پیام‌های حاوی نمای‌نامِ من",

View File

@ -1,3 +1,209 @@
{
"Sunday": "Sunnuntai"
"Sunday": "Sunnuntai",
"A new version of Riot is available.": "Uusi Riot-versio on saatavilla.",
"Add an email address above to configure email notifications": "Lisää sähköpostiosoite yllä saadaksesi ilmoituksia sähköpostiisi",
"Advanced notification settings": "Lisäasetukset ilmoituksille",
"All messages": "Kaikki viestit",
"All messages (loud)": "Kaikki viestit (äänekkäästi)",
"All Rooms": "Kaikki huoneet",
"All notifications are currently disabled for all targets.": "Kaikki ilmoitukset on kytketty pois kaikilta kohteilta.",
"An error occurred whilst saving your email notification preferences.": "Sähköposti-ilmoitusasetuksia tallettaessa tapahtui virhe.",
"Call invitation": "Puhelukutsu",
"Cancel": "Peruuta",
"Cancel Sending": "Peruuta lähetys",
"Can't update user notification settings": "Käyttäjän ilmoitusasetusten päivittäminen epäonnistui",
"Changelog": "Muutosloki",
"Close": "Sulje",
"Couldn't find a matching Matrix room": "Vastaavaa Matrix-huonetta ei löytynyt",
"delete the alias.": "poista alias.",
"Describe your problem here.": "Kuvaa ongelmasi tähän.",
"Direct Chat": "Suora viestittely",
"Directory": "Hakemisto",
"Dismiss": "Hylkää",
"Download this file": "Lataa tiedosto",
"Error": "Virhe",
"#example": "#esimerkki",
"Favourite": "Suosikki",
"Files": "Tiedostot",
"Forget": "Unohda",
"I understand the risks and wish to continue": "Ymmärrän riskit ja haluan jatkaa",
"Invite to this room": "Kutsu tähän huoneeseen",
"Keywords": "Avainsanat",
"Leave": "Poistu",
"Login": "Kirjaudu sisään",
"Low Priority": "Matala prioriteetti",
"Members": "Jäsenet",
"Mentions only": "Vain maininnat",
"more": "lisää",
"Mute": "Vaimenna",
"No rooms to show": "Ei huoneita näytettäväksi",
"Noisy": "Äänekäs",
"Notifications": "Ilmoitukset",
"Off": "Pois päältä",
"On": "Päällä",
"Operation failed": "Toiminto epäonnistui",
"Permalink": "Pysyvä linkki",
"Quote": "Lainaa",
"Reject": "Hylkää",
"Remove": "Poista",
"Report a bug": "Ilmoita ongelmasta",
"Resend": "Lähetä uudelleen",
"Room not found": "Huonetta ei löytynyt",
"Search": "Haku",
"Search…": "Haku…",
"Search for a room": "Hae huonetta",
"Send": "Lähetä",
"Send logs": "Lähetä lokit",
"Source URL": "Lähde URL",
"This Room": "Tämä huone",
"Unable to join network": "Verkkoon liittyminen epäonnistui",
"Unavailable": "Ei saatavilla",
"Unknown device": "Tuntematon laite",
"unknown error code": "tuntematon virhekoodi",
"Unnamed room": "Nimeämätön huone",
"Update": "Päivitä",
"View Source": "Näytä lähde",
"Waiting for response from server": "Odotetaan palvelimen vastausta",
"Monday": "Maanantai",
"Tuesday": "Tiistai",
"Wednesday": "Keskiviikko",
"Thursday": "Torstai",
"Friday": "Perjantai",
"Saturday": "Lauantai",
"Today": "Tänään",
"Yesterday": "Eilen",
"OK": "Selvä",
"Warning": "Varoitus",
"Checking for an update...": "Tarkistetaan päivityksen saatavuutta...",
"No update available.": "Ei päivityksiä saatavilla.",
"Downloading update...": "Ladataan päivitystä...",
"Welcome to Riot.im": "Tervetuloa Riot.im:ään",
"Search the room directory": "Hae huonehakemistosta",
"Continue": "Jatka",
"Set Password": "Aseta salasana",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> ja <a href=\"http://opera.com\">Opera</a> toimivat myös.",
"Collapse panel": "Piilota paneeli",
"Collecting app version information": "Kerätään sovelluksen versiotietoja",
"Collecting logs": "Kerätään lokitietoja",
"Custom Server Options": "Omat palvelinasetukset",
"customServer_text": "Voit käyttää palvelinasetuksia muille Matrix-palvelimille kirjautumiseen asettamalla oman kotipalvelinosoitteen.<br/>Näin voit käyttää Riotia toisella kotipalvelimella sijaitsevan Matrix-käyttäjän kanssa. <br/><br/>Voit myös asettaa oman tunnistautumispalvelimen, mutta sinua ei voi kutsua etkä voi kutsua muita sähköpostiosoitteella.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Poista huonetunnus %(alias)s ja poista %(name)s hakemistosta?",
"Enable them now": "Ota käyttöön nyt",
"Enter keywords separated by a comma:": "Anna avainsanat eroteltuna pilkuin:",
"Expand panel": "Avaa paneeli",
"Error saving email notification preferences": "Virhe tallennettaessa sähköposti-ilmoitusasetuksia",
"Failed to change settings": "Asetusten muuttaminen epäonnistui",
"Failed to forget room %(errCode)s": "Huoneen unohtaminen epäonnistui %(errCode)s",
"Failed to update keywords": "Avainsanojen päivittäminen epäonnistui",
"Enable audible notifications in web client": "Ota käyttöön äänelliset ilmoitukset webasiakasohjelmassa",
"Enable desktop notifications": "Ota käyttöön työpöytäilmoitukset",
"Enable email notifications": "Ota käyttöön sähköposti-ilmoitukset",
"Enable notifications for this account": "Ota käyttöön ilmoitukset tälle tilille",
"Failed to add tag %(tagName)s to room": "Tagin %(tagName)s lisäämineen huoneelle ei onnistunut",
"Failed to get protocol list from Home Server": "Protokollalistan hakeminen Kotipalvelimelta ei onnistunut",
"Failed to get public room list": "Julkisten huoneiden listan hakeminen epäonnistui",
"Failed to remove tag %(tagName)s from room": "Tagin %(tagName)s poistaminen huoneelta epäonnistui",
"Failed to send report: ": "Raportin lähettäminen epäonnistui: ",
"Failed to set direct chat tag": "Suoran viestittelyn tagin asettaminen epäonnistui",
"Fetching third party location failed": "Kolmannen osapuolen paikan haku epäonnistui",
"Filter room names": "Suodata huoneiden nimet",
"Forward Message": "Edelleenlähetä viesti",
"Guests can join": "Vieraat voivat liittyä",
"Hide panel": "Piilota paneeli",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Diagnoosin helpottamiseksi lokitietoja tältä laitteelta lähetetään tämän bugiraportin mukana. Poista ruksi jos haluat lätettää vain ylläolevan tekstin:",
"Loading bug report module": "Ladataan bugiraportointimoduuli",
"Messages containing my display name": "Näyttönimeni sisältävät viestit",
"Messages containing <span>keywords</span>": "<span>Avainsanoja</span> sisältävät viestit",
"Messages containing my user name": "Käyttäjänimeni sisältävät viestit",
"Messages in group chats": "Viestit ryhmäkeskusteluissa",
"Messages in one-to-one chats": "Viestit henkilökohtaisissa keskusteluissa",
"Messages sent by bot": "Bottien lähettämät viestit",
"Notification targets": "Ilmoituksen kohteet",
"Notifications on the following keywords follow rules which cant be displayed here:": "Seuraaviin avainsanoihin liittyvät ilmoitukset seuraavat sääntöjä joita ei voida näyttää tässä:",
"Notify me for anything else": "Ilmoita minulle kaikesta muusta",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Ole hyvä ja kuvaile virhe. Mitä teit? Mitä oletit tapahtuvan? Mitä itse asiassa tapahtui?",
"Please describe the bug and/or send logs.": "Ole hyvä ja kuvaile virhe sekä/tai lähetä lokitiedot.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Ole hyvä ja asenna <a href=\"https://www.google.com/chrome\">Chrome</a> tai <a href=\"https://getfirefox.com\">Firefox</a> parhaan kokemuksen saavuttamiseksi.",
"Remove %(name)s from the directory?": "Poista %(name)s hakemistosta?",
"remove %(name)s from the directory.": "poista %(name)s hakemistosta.",
"Remove from Directory": "Poista hakemistosta",
"Riot Desktop on %(platformName)s": "Riot Desktop järjestelmällä %(platformName)s",
"Riot does not know how to join a room on this network": "Riot ei tiedä miten liittya huoneeseen tässä verkossa",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot käyttää monia selainominaisuuksia, joista osa selaimesi ei tue tai ne ovat kokeellisia.",
"Sorry, your browser is <b>not</b> able to run Riot.": "Valitettavasti Riot <b>ei</b> toimi selaimessasi.",
"The Home Server may be too old to support third party networks": "Kotipalvelin saattaa olla liian vanha tukeakseen kolmannen osapuolen verkkoja",
"The server may be unavailable or overloaded": "Palvelin saattaa olla saavuttamaton tai ylikuormitettu",
"Unable to fetch notification target list": "Ilmoituskohdelistan haku epäonnistui",
"Unable to look up room ID from server": "Huone-ID:n haku palvelimelta epäonnistui",
"Unhide Preview": "Näytä ennakkokatselu",
"Uploaded on %(date)s by %(user)s": "Ladattu %(date)s käyttäjän %(user)s toimesta",
"Uploading report": "Ladataan raportti",
"View Decrypted Source": "Näytä purettu lähdekoodi",
"What's New": "Mikä on uutta",
"What's new?": "Mikä on uutta?",
"When I'm invited to a room": "Kun minut kutsutaan huoneeseen",
"World readable": "Kaikkien luettavissa",
"You cannot delete this image. (%(code)s)": "Et voi poistaa tätä kuvaa. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Et voi poistaa tätä viestiä. (%(code)s)",
"You are not receiving desktop notifications": "Et vastaanota työpöytäilmoituksia",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Olet saattanut muuttaa niitä toisessa asiakasohjelmassa kuin Riot. Et voi muuttaa niitä Riotissa mutta ne pätevät kuitenkin",
"You need to be using HTTPS to place a screen-sharing call.": "Sinun täytyy käyttää HTTPS:ää voidaaksesi soittaa ruudunjakopuhelun.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Nykyisellä selaimellasi ohjelman ulkonäkö voi olla aivan virheellinen, ja jotkut ominaisuudet eivät saata toimia. Voit jatkaa jos haluat kokeilla mutta et voi odottaa saavasi apua mahdollisesti ilmeneviin ongelmiin!",
"Chat with Riot Bot": "Keskustele Riot-botin kanssa",
"Get started with some tips from Riot Bot!": "Pääse käyntiin Riot-botin vinkkien avulla!",
"General discussion about Matrix and Riot": "Yleistä Matrix- ja Riot-keskustelua",
"Discussion of all things Matrix!": "Keskustelu kaikesta Matrixiin liittyvästä!",
"Riot/Web &amp; Desktop chat": "Riot/Web & Työpöytä-keskustelu",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk -keskustelu",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk -keskustelu",
"Matrix technical discussions": "Matrix tekniset keskustelut",
"Running Matrix services": "Matrix-palvelujen ylläpito",
"Community-run support for Synapse": "Yhteisön tarjoama Synapse-tuki",
"Admin support for Dendrite": "Dendrite ylläpitotuki",
"Announcements about Synapse releases": "Ilmoitukset uusista Synapse-julkaisuista",
"Error encountered (%(errorDetail)s).": "Virhe: %(errorDetail)s.",
"Support for those using and running matrix-appservice-irc": "Tuki niille jotka käyttävät ja ajavat matrix-appservice-irc",
"Building services on Matrix": "Palvelujen rakentaminen Matrixin avulla",
"Support for those using the Matrix spec": "Tuki Matrix-spesifikaation käyttäjille",
"Implementing VR services with Matrix": "VR-palvelujen implementointi Matrixin avulla",
"Implementing VoIP services with Matrix": "VoIP-palvelujen implementointi Matrixin avulla",
"Discussion of the Identity Service API": "Keskustelu Identity Service rajapinnasta",
"Support for those using, running and writing other bridges": "Tuki niille jotka käyttävät, ajavat ja ohjelmoivat muita siltoja",
"Dev chat for the Riot/Web dev team": "Kehittäjäkeskustelu Riot/Web kehitystiimille",
"Dev chat for the Dendrite dev team": "Kehittäjäkeskustelu Dendrite kehitystiimille",
"Co-ordination for Riot/Web translators": "Riot/Web kääntäjien koordinointi",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Matrixissa on jo olemassa monia huoneita jotka on linkitetty olemassa oleviin verkkoihin (Slack, IRC, Gitter, jne) tai itsenäisiin. Tutustu hakemistoon!",
"Failed to change password. Is your password correct?": "Salasanan muuttaminen epäonnistui. Onko salasanasi oikein?",
"You have successfully set a password!": "Olet onnistuneesti asettanut salasanan!",
"You can now return to your account after signing out, and sign in on other devices.": "Voit nyt palata tilillesi kirjauduttua ulos, sekä kirjautua muilla laitteilla.",
"Please set a password!": "Ole hyvä ja aseta salasana!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Tämä mahdollistaa sinut palamaan tilillesi uloskirjautumisen jälkeen sekä kirjautumaan muilla laitteilla.",
"You have successfully set a password and an email address!": "Olet onnistuneesti asettanut salasanan ja sähköpostiosoitteen!",
"Remember, you can always set an email address in user settings if you change your mind.": "Muista että voit aina asettaa sähköpostiosoitteen käyttäjäasetuksista jos muutat mielesi.",
"To return to your account in future you need to <u>set a password</u>": "Voidaksesi tulevaisuudessa palata tilillesi sinut pitää <u>asettaa salasana</u>",
"Couldn't load home page": "Kotisivun lataus epäonnistui",
"Bug report sent": "Virheraportti lähetetty",
"Failed to set Direct Message status of room": "Huoneen suoran viestittelyn tilan asettaminen epäonnistui",
"(HTTP status %(httpStatus)s)": "(HTTP tila %(httpStatus)s)",
"Notify for all other messages/rooms": "Ilmoita kaikista muista viesteistä/huoneista",
"powered by Matrix": "Matrix-pohjainen",
"Riot is not supported on mobile web. Install the app?": "Riot ei tue mobiiliselaimia. Asenna sovellus?",
"Thank you!": "Kiitos!",
"Design and implementation of E2E in Matrix": "Matrix päästä-päähän salauksen suunnittelu ja implementointi",
"Contributing code to Matrix and Riot": "Osallistu Matrix ja Riot kehitykseen",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s selaimella %(browserName)s käyttöjärjestelmällä %(osName)s",
"There are advanced notifications which are not shown here": "On kehittyneitä ilmoituksia joita ei näytetä tässä",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Matrix-pohjainen hajautettu, salattu viestittely ja yhteistyö",
"Back": "Palaa",
"Developer Tools": "Kehitystyökalut",
"Failed to send custom event.": "Kustomoidun tapahtuman lähettäminen epäonnistui.",
"Filter results": "Suodata tuloksia",
"Send Custom Event": "Lähetä kustomoitu tapahtuma",
"Send Custom State Event": "Lähetä kustomoitu tilatapahtuma",
"Explore Room State": "Tutki huoneen tilaa",
"You must specify an event type!": "Sinun on määritettävä tapahtuman tyyppi!",
"Event sent!": "Tapahtuma lähetetty!",
"Event Type": "Tapahtuman tyyppi",
"Event Content": "Tapahtuman sisältö",
"State Key": "Tila-avain"
}

View File

@ -3,11 +3,10 @@
"All messages": "Tous les messages",
"All messages (loud)": "Tous les messages (fort)",
"All notifications are currently disabled for all targets.": "Toutes les notifications sont désactivées pour tous les appareils.",
"An error occurred whilst saving your email notification preferences.": "Une erreur est survenue lors de la sauvegarde de vos préférences de notifications par e-mail.",
"An error occurred whilst saving your email notification preferences.": "Une erreur est survenue lors de la sauvegarde de vos préférences de notification par e-mail.",
"Cancel Sending": "Annuler l'envoi",
"Can't update user notification settings": "Impossible de mettre à jour les notifications utilisateur",
"Can't update user notification settings": "Impossible de mettre à jour les paramètres de notification de l'utilisateur",
"Close": "Fermer",
"Create new room": "Créer un nouveau salon",
"Couldn't find a matching Matrix room": "Impossible de trouver un salon Matrix correspondant",
"Custom Server Options": "Options de serveur personnalisées",
"delete the alias.": "supprimer l'alias.",
@ -16,38 +15,31 @@
"Directory": "Répertoire",
"Dismiss": "Ignorer",
"Download this file": "Télécharger ce fichier",
"Drop here %(toAction)s": "Déposer ici %(toAction)s",
"Enable audible notifications in web client": "Activer les notifications sonores pour le client web",
"Enable desktop notifications": "Activer les notifications de bureau",
"Enable email notifications": "Activer les notifications par e-mail",
"Enable notifications for this account": "Activer les notifications pour ce compte",
"Enable them now": "Les activer maintenant",
"Enter keywords separated by a comma:": "Entrez les mots clés séparés par une virgule :",
"Enter keywords separated by a comma:": "Entrez les mots-clés séparés par une virgule :",
"Error": "Erreur",
"Error saving email notification preferences": "Erreur lors de la sauvegarde des notifications par e-mail",
"Error saving email notification preferences": "Erreur lors de la sauvegarde des préférences de notification par e-mail",
"#example": "#exemple",
"Failed to": "Échec pour",
"Failed to add tag %(tagName)s to room": "Échec lors de l'ajout de létiquette %(tagName)s au salon",
"Failed to change settings": "Échec de la mise à jour des paramètres",
"Failed to forget room %(errCode)s": "Échec lors de l'oubli du salon %(errCode)s",
"Failed to update keywords": "Échec dans la mise à jour des mots-clés",
"Failed to get protocol list from Home Server": "Échec lors de la récupération de la liste sur le serveur",
"Failed to get public room list": "Échec lors de la récupération de la liste des salons publics",
"Failed to join the room": "Échec de l'adhésion au salon",
"Failed to remove tag %(tagName)s from room": "Échec dans la suppression de létiquette %(tagName)s du salon",
"Failed to set direct chat tag": "Échec dans l'attribution d'une étiquette dans la discussion directe",
"Favourite": "Favoris",
"Operation failed": "L'opération a échoué",
"Please Register": "Veuillez vous inscrire",
"powered by Matrix": "propulsé par Matrix",
"Quote": "Citer",
"Redact": "Rédiger",
"Reject": "Rejeter",
"Remove %(name)s from the directory?": "Supprimer %(name)s du répertoire ?",
"Remove": "Supprimer",
"Resend": "Renvoyer",
"Settings": "Paramètres",
"Start chat": "Démarrer une discussion",
"unknown error code": "Code erreur inconnu",
"View Source": "Voir la source",
"You cannot delete this image. (%(code)s)": "Vous ne pouvez pas supprimer cette image. (%(code)s)",
@ -62,33 +54,29 @@
"Saturday": "Samedi",
"Today": "Aujourd'hui",
"Yesterday": "Hier",
"Welcome page": "Page d'accueil",
"Call invitation": "Appel entrant",
"Failed to set Direct Message status of room": "Échec du changement de l'état du salon en Discussion Directe",
"Failed to set Direct Message status of room": "Échec du réglage de l'état du salon en Discussion directe",
"Fetching third party location failed": "Échec de la récupération de la localisation tierce",
"Files": "Fichiers",
"Filter room names": "Filtrer les salons par nom",
"Forget": "Oublier",
" from room": " du salon",
"Guest users can't invite users. Please register to invite.": "Les visiteurs ne peuvent démarrer une discussion. Merci de vous inscrire pour pouvoir démarrer une discussion.",
"Invite to this room": "Inviter dans ce salon",
"Keywords": "Mots-clés",
"Leave": "Quitter",
"Low Priority": "Priorité basse",
"Low Priority": "Priorité basse",
"Members": "Membres",
"Mentions only": "Seulement les mentions",
"Messages containing my display name": "Messages contenant mon nom",
"Messages containing my display name": "Messages contenant mon nom affiché",
"Messages containing my user name": "Message contenant mon nom d'utilisateur",
"Messages in group chats": "Messages dans les conversations de groupe",
"Messages in group chats": "Messages dans les discussions de groupe",
"Messages in one-to-one chats": "Messages dans les discussions directes",
"Messages sent by bot": "Messages envoyés par des robots",
"more": "plus",
"Mute": "Couper le son",
"Mute": "Mettre en sourdine",
"No rooms to show": "Aucun salon à afficher",
"Noisy": "Activer le son",
"Noisy": "Bruyant",
"Notification targets": "Appareils recevant les notifications",
"Notifications": "Notifications",
"Notifications on the following keywords follow rules which cant be displayed here": "Les mots-clés suivants suivent des règles de notification qui ne peuvent être affichées ici",
"Notify for all other messages/rooms": "Me notifier pour tous les autres messages/salons",
"Notify me for anything else": "Me notifier pour tout le reste",
"Off": "Désactivé",
@ -97,35 +85,32 @@
"remove %(name)s from the directory.": "supprimer %(name)s du répertoire.",
"Remove from Directory": "Supprimer du répertoire",
"Riot does not know how to join a room on this network": "Riot ne peut pas joindre un salon sur ce réseau",
"Room directory": "Répertoire des salons",
"Room not found": "Salon non trouvé",
"Search for a room": "Rechercher un salon",
"Source URL": "URL source",
"The Home Server may be too old to support third party networks": "Le homeserver semble trop ancien pour supporter des réseaux tiers",
"Source URL": "URL de la source",
"The Home Server may be too old to support third party networks": "Le serveur d'accueil semble trop ancien pour supporter des réseaux tiers",
"There are advanced notifications which are not shown here": "Il existe une configuration avancée des notifications qui ne peut être affichée ici",
"The server may be unavailable or overloaded": "Le serveur est indisponible ou surchargé",
"This room is inaccessible to guests. You may be able to join if you register.": "Ce salon n'est pas ouvert aux visiteurs. Vous pourrez peut-être le rejoindre si vous vous inscrivez.",
"Unable to fetch notification target list": "Impossible de récupérer la liste des appareils recevant les notifications",
"Unable to join network": "Impossible de rejoindre le réseau",
"Unable to look up room ID from server": "Impossible de récupérer l'ID du salon sur le serveur",
"Unhide Preview": "Dévoiler l'aperçu",
"Unnamed room": "Salon anonyme",
"Unnamed room": "Salon sans nom",
"Uploaded on %(date)s by %(user)s": "Téléchargé le %(date)s par %(user)s",
"View Decrypted Source": "Voir la source déchiffrée",
"When I'm invited to a room": "Quand je suis invité dans un salon",
"World readable": "Visible par tout le monde",
"World readable": "Lisible publiquement",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Vous les avez probablement configurées dans un autre client que Riot. Vous ne pouvez pas les configurer dans Riot mais elles s'appliquent quand même",
"Guests can join": "Ouvert aux visiteurs",
" to room": " au salon",
"Guests can join": "Les invités peuvent rejoindre le salon",
"Advanced notification settings": "Paramètres de notification avancés",
"customServer_text": "Vous pouvez utiliser l'option de serveur personnalisé pour vous connectez à d'autres serveurs Matrix, en spécifiant une adresse de homerserver différente.<br/>Cela permet d'utiliser Riot avec un compte existant sur un homeserver différent.<br/><br/>Vous pouvez aussi indiquer un serveur d'identité personnel mais vous ne pourrez plus inviter des utilisateurs par e-mail, ou être invité par e-mail.",
"customServer_text": "Vous pouvez utiliser les options de serveur personnalisées pour vous connecter à d'autres serveurs Matrix, en spécifiant une adresse de serveur d'accueil différente.<br/>Cela permet d'utiliser Riot avec un compte Matrix existant sur un serveur d'accueil différent.<br/><br/>Vous pouvez aussi indiquer un serveur d'identité personnalisé mais vous ne pourrez pas inviter d'utilisateurs par e-mail ou être invité par e-mail.",
"Notifications on the following keywords follow rules which cant be displayed here:": "Les notifications pour les mots-clés suivant répondent à des critères qui ne peuvent pas être affichés ici :",
"Collapse panel": "Cacher le panneau",
"Expand panel": "Dévoiler le panneau",
"I understand the risks and wish to continue": "Je comprends les risques et souhaite continuer",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utilise de nombreuses fonctionnalités avancées du navigateur, certaines ne sont pas disponibles ou expérimentales dans votre navigateur actuel.",
"Sorry, your browser is <b>not</b> able to run Riot.": "Désolé, Riot n'est <b>pas</b> supporté par votre navigateur.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Depuis votre navigateur actuel, le visuel et le ressenti de l'application pourraient être complètement incorrects, et certaines fonctionnalités pourraient ne pas être supportées. Vous pouvez continuer malgré tout, mais vous n'aurez pas de support si vous rencontrez des problèmes !",
"Sorry, your browser is <b>not</b> able to run Riot.": "Désolé, Riot <b>n'</b>est <b>pas</b> supporté par votre navigateur.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Depuis votre navigateur actuel, le visuel et le ressenti de l'application pourraient être complètement erronés, et certaines fonctionnalités pourraient ne pas être supportées. Vous pouvez continuer malgré tout, mais vous n'aurez aucune aide si vous rencontrez des problèmes !",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Veuillez installer <a href=\"https://www.google.com/chrome\">Chrome</a> ou <a href=\"https://getfirefox.com\">Firefox</a> pour une expérience optimale.",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> et <a href=\"http://opera.com\">Opera</a> fonctionnent aussi.",
"Messages containing <span>keywords</span>": "Messages contenant des <span>mots-clés</span>",
@ -133,51 +118,50 @@
"A new version of Riot is available.": "Une nouvelle version de Riot est disponible.",
"All Rooms": "Tous les salons",
"Cancel": "Annuler",
"Changelog": "Journal des modif",
"Collecting app version information": "Récupération des info de version de lapplication",
"Collecting logs": "Récupération des traces",
"Changelog": "Journal des modifications",
"Collecting app version information": "Récupération des informations de version de lapplication",
"Collecting logs": "Récupération des journaux",
"Describe your problem here.": "Décrivez votre problème ici.",
"Failed to send report: ": "Échec de lenvoi du rapport : ",
"Forward Message": "Transférer le message",
"Hide panel": "Cacher le panneau",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Afin de diagnostiquer le problème, les traces de ce client vont être envoyées avec ce rapport derreur. Si vous préférez seulement envoyer le texte ci-dessus, décochez la case :",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Afin de diagnostiquer les problèmes, les journaux de ce client vont être envoyés avec ce rapport derreur. Si vous préférez n'envoyer que le texte ci-dessus, décochez la case :",
"Loading bug report module": "Chargement du module de rapport derreur",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Veuillez décrire le problème. Quavez-vous fait ? Quel comportement vous attendiez vous à voir ? Que sest-il effectivement passé ?",
"Please describe the bug and/or send logs.": "Veuillez décrire le problème et/ou envoyer les traces.",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Veuillez décrire l'erreur. Qu'avez-vous fait ? Quel était le comportement attendu ? Que s'est-il réellement passé ?",
"Please describe the bug and/or send logs.": "Veuillez décrire le problème et/ou envoyer les journaux.",
"Report a bug": "Signaler un problème",
"Riot Desktop on %(platformName)s": "Version bureau de Riot sur %(platformName)s",
"Riot is not supported on mobile web. Install the app?": "Riot Web nest pas supporté sur mobile. Installer lapplication ?",
"Riot is not supported on mobile web. Install the app?": "Riot nest pas supporté sur les appareils mobiles. Installer lapplication ?",
"Search": "Rechercher",
"Search…": "Rechercher…",
"Send": "Envoyer",
"Send logs": "Envoyer les traces",
"Send logs": "Envoyer les journaux",
"This Room": "Ce salon",
"Unavailable": "Indisponible",
"Unknown device": "Appareil inconnu",
"Update": "Mettre à jour",
"Uploading report": "Téléchargement du rapport",
"Uploading report": "Envoi du rapport",
"What's New": "Nouveautés",
"What's new?": "Nouveautés ?",
"Waiting for response from server": "En attente dune réponse du serveur",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Vous utilisez Riot en tant que visiteur. <a>Inscrivez-vous</a> ou <a>identifiez-vous</a> pour accéder à plus de salons et de fonctionnalités !",
"You need to be using HTTPS to place a screen-sharing call.": "Vous devez utiliser HTTPS pour effectuer un appel en partage décran.",
"OK": "OK",
"Failed to change password. Is your password correct?": "Échec du changement de mot de passe. Votre mot de passe est-il correct ?",
"You have successfully set a password!": "Vous avez paramétré un mot de passe avec succès !",
"You have successfully set a password!": "Vous avez défini un mot de passe avec succès !",
"Continue": "Continuer",
"Please set a password!": "Veuillez définir un mot de passe !",
"You can now return to your account after signing out, and sign in on other devices.": "Vous pouvez maintenant revenir sur votre compte après vous être déconnecté, et vous identifier sur d'autres appareils.",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Cela vous permettra de retourner sur votre compte après vous être déconnecté, et de vous identifier sur d'autres appareils.",
"Welcome to Riot.im": "Bienvenue sur Riot.im",
"(HTTP status %(httpStatus)s)": "(statut HTTP %(httpStatus)s)",
"Login": "S'identifier",
"(HTTP status %(httpStatus)s)": "(état HTTP %(httpStatus)s)",
"Login": "Connexion",
"Chat with Riot Bot": "Discussion avec Riot Bot",
"Search the room directory": "Rechercher dans le répertoire de salons",
"Get started with some tips from Riot Bot!": "Démarrer avec quelques astuces de Riot Bot !",
"Riot/Android &amp; matrix-android-sdk chat": "Discussions Riot/Android &amp; matrix-android-sdk",
"Riot/iOS &amp; matrix-ios-sdk chat": "Discussions Riot/iOS &amp; matrix-ios-sdk",
"Riot/Android &amp; matrix-android-sdk chat": "Discussions sur Riot/Android &amp; matrix-android-sdk",
"Riot/iOS &amp; matrix-ios-sdk chat": "Discussions sur Riot/iOS &amp; matrix-ios-sdk",
"General discussion about Matrix and Riot": "Discussion générale sur Matrix et Riot",
"Riot/Web &amp; Desktop chat": "Discussions Riot/Web &amp; Desktop",
"Riot/Web &amp; Desktop chat": "Discussions sur Riot/Web &amp; Bureau",
"Running Matrix services": "Exécution de services Matrix",
"Admin support for Dendrite": "Support admin pour Dendrite",
"Announcements about Synapse releases": "Communiqués sur les nouvelles versions de Synapse",
@ -185,27 +169,53 @@
"Community-run support for Synapse": "Support communautaire sur Synapse",
"Support for those using and running matrix-appservice-irc": "Support pour ceux qui utilisent et exécutent matrix-appservice-irc",
"Building services on Matrix": "Développement de services sur Matrix",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Discussion &amp; collaboration décentralisées et chiffrées propulsé par [matrix]",
"Discussion of all things Matrix!": "Discussion de tous les sujets Matrix !",
"Support for those using the Matrix spec": "Support pour les utilisateurs de la spec Matrix",
"Design and implementation of E2E in Matrix": "Définition et implémentation du chiffrement de bout-en-bout dans Matrix",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Discussion &amp; collaboration décentralisées et chiffrées, propulsées par [matrix]",
"Discussion of all things Matrix!": "Discussion sur tout ce qui concerne Matrix !",
"Support for those using the Matrix spec": "Support pour les utilisateurs de la spécification de Matrix",
"Design and implementation of E2E in Matrix": "Définition et implémentation du chiffrement de bout en bout dans Matrix",
"Implementing VR services with Matrix": "Implémentation de services de réalité virtuelle avec Matrix",
"Implementing VoIP services with Matrix": "Implémentation de services de voix sur IP avec Matrix",
"Discussion of the Identity Service API": "Discussion sur lAPI du Service Identité",
"Support for those using, running and writing other bridges": "Support pour les utilisateurs, administrateurs et développeurs de passerelles",
"Contributing code to Matrix and Riot": "Contribuer à Matrix et Riot",
"Dev chat for the Riot/Web dev team": "Forum pour les discussions sur les développements de Riot/Web",
"Dev chat for the Dendrite dev team": "Forum pour les discussion sur les développements de Dendrite",
"Support for those using, running and writing other bridges": "Support pour les utilisateurs, administrateurs et développeurs d'autres passerelles",
"Contributing code to Matrix and Riot": "Contribuer du code à Matrix et Riot",
"Dev chat for the Riot/Web dev team": "Discussions de l'équipe de développeurs de Riot/Web",
"Dev chat for the Dendrite dev team": "Discussion pour l'équipe de développeurs de Dendrite",
"Co-ordination for Riot/Web translators": "Coordination des traducteurs de Riot/Web",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Beaucoup de salons existent déjà dans Matrix, liés à des réseaux existants (Slack, IRC, Gitter, etc.) ou indépendants. Jetez un œil au répertoire !",
"You have successfully set a password and an email address!": "Vous avez configuré un mot de passe et une adresse e-mail avec succès !",
"Remember, you can always set an email address in user settings if you change your mind.": "Souvenez-vous que vous pourrez toujours définir une adresse e-mail dans la configuration utilisateur si vous changez davis.",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "De nombreux salons existent déjà dans Matrix, liés à des réseaux existants (Slack, IRC, Gitter etc) ou indépendants. Jetez un œil au répertoire !",
"You have successfully set a password and an email address!": "Vous avez défini un mot de passe et une adresse e-mail avec succès !",
"Remember, you can always set an email address in user settings if you change your mind.": "Souvenez-vous que vous pourrez toujours définir une adresse e-mail dans les paramètres de l'utilisateur si vous changez davis.",
"Warning": "Attention",
"Checking for an update...": "Recherche d'une mise à jour...",
"Checking for an update...": "Recherche de mise à jour...",
"Error encountered (%(errorDetail)s).": "Erreur rencontrée (%(errorDetail)s).",
"No update available.": "Aucune mise à jour disponible.",
"Downloading update...": "Mise à jour en cours de téléchargement...",
"To return to your account in future you need to <u>set a password</u>": "Pour pouvoir accéder à votre compte dans le futur, vous devez <u>enregistrer un mot de passe</u>",
"Set Password": "Enregistrer un mot de passe",
"Couldn't load home page": "Impossible de charger la page d'accueil"
"To return to your account in future you need to <u>set a password</u>": "Pour pouvoir retrouver votre compte dans le futur, vous devez <u>définir un mot de passe</u>",
"Set Password": "Définir un mot de passe",
"Couldn't load home page": "Impossible de charger la page d'accueil",
"Bug report sent": "Rapport d'erreur envoyé",
"Thank you!": "Merci !",
"Back": "Retour",
"Developer Tools": "Outils de développement",
"Filter results": "Filtrer les résultats",
"You must specify an event type!": "Vous devez spécifier un type d'événement !",
"Event sent!": "Événement envoyé !",
"Event Type": "Type d'événement",
"Event Content": "Contenu de l'événement",
"Failed to send custom event.": "Échec de l'envoi de l'événement personnalisé.",
"Send Custom Event": "Envoyer l'événement personnalisé",
"Send Custom State Event": "Envoyer l'événement d'état personnalisé",
"Explore Room State": "Parcourir l'état du salon",
"State Key": "Clé d'état",
"Unpin Message": "Dépingler le message",
"Add rooms to this community": "Ajouter des salons à cette communauté",
"Show message in desktop notification": "Afficher le message dans les notifications de bureau",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Vous pouvez utiliser les options de serveur personnalisé pour vous connecter à d'autres serveurs Matrix en précisant un serveur d'accueil différent.<br/>Cela vous permet d'utiliser Riot avec un compte Matrix existant sur un autre serveur d'accueil.<br/><br/>Vous pouvez aussi renseigner un serveur d'identité personnalisé mais vous ne pourrez pas inviter d'utilisateurs avec leur adresse e-mail, ou être invité avec votre adresse e-mail.",
"Edit": "Modifier",
"Pin Message": "Épingler le message",
"Register": "S'inscrire",
"Rooms": "Salons",
"Invite to this community": "Inviter à cette communauté",
"Toolbox": "Boîte à outils",
"Send Account Data": "Envoyer les données du compte",
"Explore Account Data": "Explorer les données du compte"
}

221
src/i18n/strings/gl.json Normal file
View File

@ -0,0 +1,221 @@
{
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s vía %(browserName)s en %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> e <a href=\"http://opera.com\">Opera</a> tamén serven.",
"A new version of Riot is available.": "Está dispoñible unha nova versión de Riot.",
"Add an email address above to configure email notifications": "Engada un enderezo de correo electrónico para configurar as notificacións",
"Advanced notification settings": "Axustes avanzados de notificación",
"All messages": "Todas as mensaxes",
"All messages (loud)": "Todas as mensaxes (alto)",
"All Rooms": "Todas as Salas",
"All notifications are currently disabled for all targets.": "Todas as notificacións están deshabilitadas para todos os destinos.",
"An error occurred whilst saving your email notification preferences.": "Algo fallou mentras se gardaban as súas preferencias de notificaicón.",
"Back": "Atrás",
"Bug report sent": "Enviado o informe de fallo",
"Call invitation": "Convite de chamada",
"Cancel": "Cancelar",
"Cancel Sending": "Cancelar o envío",
"Can't update user notification settings": "Non se poden actualizar os axutes de notificación",
"Changelog": "Rexistro de cambios",
"Close": "Pechar",
"Collapse panel": "Agochar panel",
"Collecting app version information": "Obtendo información sobre a versión da app",
"Collecting logs": "Obtendo rexistros",
"Couldn't find a matching Matrix room": "Non coincide con ningunha sala de Matrix",
"Custom Server Options": "Axustes do servidor personalizado",
"customServer_text": "Pode utilizar os axustes do servidor personalizado para conectarse a outros servidores Matrix indicando un URL de Inicio do servidor.<br/>Esto permítelle utilizar Riot con unha conta existente de Matrix nun servidor diferente.<br/><br/>Tamén pode establecer un servidor personalizado de identidade mais non poderá invitar a usuarias a través de enderezos de correo ou ser vostede invitada do mesmo xeito.",
"delete the alias.": "borrar alcume.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Eliminar o alcume da sala %(alias)s e borrar %(name)s do directorio?",
"Describe your problem here.": "Describa aquí o seu problema.",
"Developer Tools": "Ferramentas para desenvolver",
"Direct Chat": "Chat directo",
"Directory": "Directorio",
"Dismiss": "Desbotar",
"Download this file": "Descargue este ficheiro",
"Enable audible notifications in web client": "Habilitar notificacións audibles no cliente web",
"Enable desktop notifications": "Habilitar notificacións de escritorio",
"Enable email notifications": "Habilitar notificacións de correo",
"Enable notifications for this account": "Habilitar notificacións para esta conta",
"Enable them now": "Habilitalas agora",
"Enter keywords separated by a comma:": "Introduza palabras chave separadas por vírgulas:",
"Error": "Fallo",
"Error saving email notification preferences": "Fallo ao cargar os axustes de notificacións",
"#example": "#exemplo",
"Expand panel": "Expandir panel",
"Failed to add tag %(tagName)s to room": "Fallou ao engadir a etiqueta %(tagName)s a sala",
"Failed to change settings": "Fallo ao cambiar os axustes",
"Failed to forget room %(errCode)s": "Fallou ao esquecer a sala %(errCode)s",
"Failed to update keywords": "Fallo ao actualizar as palabras chave",
"Failed to get protocol list from Home Server": "Fallo ao obter a lista de protocolo desde o servidor",
"Failed to get public room list": "Fallo ao obter a lista de salas públicas",
"Failed to remove tag %(tagName)s from room": "Fallo ao eliminar etiqueta %(tagName)s da sala",
"Failed to send custom event.": "Fallo ao enviar evento personalizado.",
"Failed to send report: ": "Fallo no envío do informe: ",
"Failed to set direct chat tag": "Fallo ao establecer etiqueta do chat directo",
"Failed to set Direct Message status of room": "Fallo ao establecer o estado Mensaxe Directa da sala",
"Favourite": "Favorito",
"Fetching third party location failed": "Fallo ao obter a localización de terceiros",
"Files": "Ficheiros",
"Filter results": "Filtrar resultados",
"Filter room names": "Filtrar nomes de sala",
"Forget": "Esquecer",
"Forward Message": "Reenviar mensaxe",
"Guests can join": "Convidadas pódense unir",
"Hide panel": "Agochar panel",
"(HTTP status %(httpStatus)s)": "(Estado HTTP %(httpStatus)s)",
"I understand the risks and wish to continue": "Entendos os riscos e desexo continuar",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Para poder diagnosticar o problema, os rexistros de este cliente enviaranse neste informe de fallo. Si prefire enviar só o texto superior, desmarque:",
"Invite to this room": "Convidar a esta sala",
"Keywords": "Palabras chave",
"Leave": "Saír",
"Login": "Conectar",
"Loading bug report module": "Cargando o módulo de informe de fallos",
"Low Priority": "Baixa prioridade",
"Members": "Membresía",
"Mentions only": "Só mencións",
"Messages containing my display name": "Mensaxes que conteñen o meu nome público",
"Messages containing <span>keywords</span>": "Mensaxes que conteñen <span>palabras chave</span>",
"Messages containing my user name": "Mensaxes que conteñen o meu nome de usuaria",
"Messages in group chats": "Mensaxes en grupos de chat",
"Messages in one-to-one chats": "Mensaxes en chats un-a-un",
"Messages sent by bot": "Mensaxes enviadas por bot",
"more": "máis",
"Mute": "Calar",
"No rooms to show": "Non hai salas que mostrar",
"Noisy": "Ruidoso",
"Notification targets": "Obxetivos das notificacións",
"Notifications": "Notificacións",
"Notifications on the following keywords follow rules which cant be displayed here:": "Notificacións das reglas de seguimento das seguintes palabras que non se mostrarán aquí:",
"Notify for all other messages/rooms": "Notificar para todas as outras mensaxes/salas",
"Notify me for anything else": "Notificarme todo o demáis",
"Off": "Off",
"On": "On",
"Operation failed": "Fallou a operación",
"Permalink": "Ligazón permanente",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Por favor describa a incidencia. Que estaba a facer? Que tiña que pasar? Que aconteceu en realidade?",
"Please describe the bug and/or send logs.": "Por favor describa a incidencia e/ou envíe o informe.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Por favor instale <a href=\"https://www.google.com/chrome\">Chrome</a> ou <a href=\"https://getfirefox.com\">Firefox</a> para ter a mellor experiencia de uso.",
"powered by Matrix": "funcionando grazas a Matrix",
"Quote": "Cita",
"Reject": "Rexeitar",
"Remove %(name)s from the directory?": "Eliminar %(name)s do directorio?",
"Remove": "Eliminar",
"remove %(name)s from the directory.": "eliminar %(name)s do directorio.",
"Remove from Directory": "Eliminar do directorio",
"Report a bug": "Informar de un fallo",
"Resend": "Voltar a enviar",
"Riot Desktop on %(platformName)s": "Riot Desktop en %(platformName)s",
"Riot does not know how to join a room on this network": "Riot non sabe cómo conectar con unha sala en esta rede",
"Riot is not supported on mobile web. Install the app?": "Riot no se pode executar na web móbil. Instalar a app?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utiliza características avanzadas do navegador, algunhas das cales non están dispoñibles ou son experimentales no seu navegador actual.",
"Room not found": "Non se atopou a sala",
"Search": "Buscar",
"Search…": "Buscar…",
"Search for a room": "Buscar unha sala",
"Send": "Enviar",
"Send logs": "Enviar informes",
"Send Custom Event": "Enviar evento personalizado",
"Send Custom State Event": "Enviar evento de estado personalizado",
"Explore Room State": "Explorar estado da sala",
"Source URL": "URL fonte",
"Sorry, your browser is <b>not</b> able to run Riot.": "Desculpe, o seu navegador <b>non pode</b> executar Riot.",
"The Home Server may be too old to support third party networks": "O servidor de inicio podería ser demasiando antigo como para aceptar redes de terceiros",
"There are advanced notifications which are not shown here": "Existen notificacións avanzadas que non se mostran aquí",
"The server may be unavailable or overloaded": "O servidor podería non estar dispoñible ou sobrecargado",
"This Room": "Esta sala",
"Unable to fetch notification target list": "Non se puido procesar a lista de obxetivo de notificacións",
"Unable to join network": "Non se puido conectar a rede",
"Unable to look up room ID from server": "Non se puido atopar o ID da sala do servidor",
"Unavailable": "Non dispoñible",
"Unhide Preview": "Desagochar a vista previsa",
"Unknown device": "Dispositivo descoñecido",
"unknown error code": "código de erro descoñecido",
"Unnamed room": "Sala sen nome",
"Update": "Actualizar",
"Uploaded on %(date)s by %(user)s": "Subido a %(date)s por %(user)s",
"Uploading report": "Informe da subida",
"View Decrypted Source": "Ver a fonte descifrada",
"View Source": "Ver fonte",
"What's New": "Qué hai de novo",
"What's new?": "Qué hai de novo?",
"Waiting for response from server": "Agardando pola resposta do servidor",
"When I'm invited to a room": "Cando son convidado a unha sala",
"World readable": "Visible por todo o mundo",
"You cannot delete this image. (%(code)s)": "Non pode eliminar esta imaxe. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Non pode eliminar esta mensaxe. (%(code)s)",
"You are not receiving desktop notifications": "Non está a recibir notificacións de escritorio",
"You must specify an event type!": "Debe indicar un tipo de evento!",
"Thank you!": "Grazas!",
"Sunday": "Domingo",
"Monday": "Luns",
"Tuesday": "Martes",
"Wednesday": "Mércores",
"Thursday": "Xoves",
"Friday": "Venres",
"Saturday": "Sábado",
"Today": "Hoxe",
"Yesterday": "Onte",
"OK": "OK",
"Warning": "Aviso",
"Checking for an update...": "Comprobando as actualizacións...",
"Error encountered (%(errorDetail)s).": "Houbo un erro (%(errorDetail)s).",
"Event sent!": "Evento enviado!",
"Event Type": "Tipo de evento",
"Event Content": "Contido do evento",
"State Key": "Chave do estado",
"No update available.": "Sen actualizacións.",
"Downloading update...": "Descargando actualización...",
"You need to be using HTTPS to place a screen-sharing call.": "Precisa utilizar HTTPS para establecer unha chamada de pantalla compartida.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Co seu navegador actual a apareciencia e uso do aplicativo poderían estar totalmente falseadas, e algunhas características poderían non funcionar. Se quere pode continuar, pero debe ser consciente de que poden haber fallos!",
"Welcome to Riot.im": "Benvida a Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Chat &amp; colaboración descentralizados e cifrados grazas a [matrix]",
"Search the room directory": "Buscar no directorio de salas",
"Chat with Riot Bot": "Chat co Bot de Riot",
"Get started with some tips from Riot Bot!": "Iníciese con algúns consellos do Bot de Riot!",
"General discussion about Matrix and Riot": "Discusión xeral sobre Matrix e Riot",
"Discussion of all things Matrix!": "Conversa sobre to o relativo a Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; chat de Escritorio",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; chat matrix-ios-sdk",
"Matrix technical discussions": "Discusións técnicas sobre Matrix",
"Running Matrix services": "Servizos correndo sobre Matrix",
"Community-run support for Synapse": "Axuda da comunidade para Synapse",
"Admin support for Dendrite": "Axuda administrador para Dendrite",
"Announcements about Synapse releases": "Anuncios sobre lanzamentos de Synapse",
"Support for those using and running matrix-appservice-irc": "Axuda para quen usa matrix-appservice-irc",
"Building services on Matrix": "Deseñando servizos sobre Matrix",
"Support for those using the Matrix spec": "Axuda para quen usa a especificación Matrix",
"Design and implementation of E2E in Matrix": "Deseño e implementación de E2E en Matrix",
"Implementing VR services with Matrix": "Implementando servizos de RV con Matrix",
"Implementing VoIP services with Matrix": "Implementación de servizos VoIP con Matrix",
"Discussion of the Identity Service API": "Conversa sobre a Identity Service API",
"Support for those using, running and writing other bridges": "Axuda para que utiliza, executa e desenvolve outras pontes",
"Contributing code to Matrix and Riot": "Contribuíndo ao código en Matrix e Riot",
"Dev chat for the Riot/Web dev team": "Chat para o equipo de desenvolvemento do Riot/Web",
"Dev chat for the Dendrite dev team": "Chat para o equipo de desenvolvemento de Dendrite",
"Co-ordination for Riot/Web translators": "Coordinación para tradutores de Riot/Web",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Xa existen multitude de salas en Matrix, ligadas a redes existentes (Slack, IRC, Gitter etc) ou independentes. Busque no directorio!",
"Failed to change password. Is your password correct?": "Non se mudou o contrasinal. É correcto o contrasinal introducido?",
"You have successfully set a password!": "Mudou con éxito o seu contrasinal!",
"You can now return to your account after signing out, and sign in on other devices.": "Pode voltar a súa contra tras desconectarse, e conectarse en outros dispositivos.",
"Continue": "Continuar",
"Please set a password!": "Por favor estableza un contrasinal!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Esto permitiralle voltar a súa conta tras desconectarse, e conectarse en outros dispositivos.",
"You have successfully set a password and an email address!": "Estableceu correctamente un contrasinal e enderezo de correo!",
"Remember, you can always set an email address in user settings if you change your mind.": "Lembre, sempre poderá poñer un enderezo de correo nos axustes de usuario si cambia de idea.",
"To return to your account in future you need to <u>set a password</u>": "Para voltar a súa conta no futuro debe <u>establecer un contrasinal>/u>",
"Set Password": "Establecer contrasinal",
"Couldn't load home page": "Non se cargou a páxina de inicio",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Pode que os configurase nun cliente diferente de Riot. Non pode establecelos desde Riot pero aínda así aplicaranse",
"Riot/Android &amp; matrix-android-sdk chat": "Chat para Riot/Android &amp; matrix-android-sdk",
"Show message in desktop notification": "Mostrar mensaxe nas notificacións de escritorio",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Vostede pode utilizar as opcións de servidor personalizado para conectarse a outros servidores Matrix indicando o enderezo URL do Servidor.</br>Esto permítelle utilizar Riot con unha conta Matrix existente en outro servidor.<br/><br/>Tamén pode indicar un servidor de identidade pero non poderá convidar a usarias polo seu enderezo de correo electrónico, o ser convidada vostede por correo electrónico.",
"Toolbox": "Ferramentas",
"Edit": "Editar",
"Send Account Data": "Enviar datos da conta",
"Explore Account Data": "Explorar datos da conta",
"Unpin Message": "Non fixar mensaxe",
"Pin Message": "Fixar mensaxe",
"Register": "Rexistrar",
"Rooms": "Salas",
"Invite to this community": "Convidar a esta comunidade",
"Add rooms to this community": "Engadir salas a esta comunidade"
}

View File

@ -16,7 +16,6 @@
"Collapse panel": "סגור פאנל",
"Collecting app version information": "אוסף מידע על גרסת האפליקציה",
"Collecting logs": "אוסף לוגים",
"Create new room": "צור חדר חדש",
"Couldn't find a matching Matrix room": "לא נמצא חדר כזה ב Matrix",
"Custom Server Options": "הגדרות שרת מותאמות אישית",
"customServer_text": "אפשר להשתמש בהגדרות שרת מותאמות אישית בכדי להתחבר לשרתים אחרים באמצעות בחירת כתובת שרת בית שונה.<br/>זה יאפשר לך להשתמש ב Riot עם חשבון קיים ב Matrix אבל אל מול שרת בית שונה. <br/><br/>כמו כן אפשר להגדיר זהות מותאמת אישית אבל אז לא תהיה אפשרות להזמין משתמשים באמצעות כתובת אימייל, או להזמין את עצמך באמצעות כתובת האימייל.",
@ -37,14 +36,12 @@
"Error saving email notification preferences": "שגיאה בעת שמירת הגדרות התראה באמצעות הדואר האלקטרוני",
"#example": "#דוגמא",
"Expand panel": "הרחב פנאל",
"Failed to": "נכשל ב",
"Failed to add tag %(tagName)s to room": "נכשל בעת הוספת תג %(tagName)s לחדר",
"Failed to change settings": "נכשל בעת שינוי הגדרות",
"Failed to forget room %(errCode)s": "נכשל בעת בקשה לשכוח חדר %(errCode)s",
"Failed to update keywords": "נכשל עדכון מילים",
"Failed to get protocol list from Home Server": "נכשל בעת נסיון קבלת רשימת פרוטוקולים משרת הבית",
"Failed to get public room list": "נכשלה קבלת רשימת חדרים ציבוריים",
"Failed to join the room": "הצטרפות לחדר נכשלה",
"Failed to remove tag %(tagName)s from room": "נכשל בעת נסיון הסרת תג %(tagName)s מהחדר",
"Failed to send report: ": "נכשל בעת שליחת דו\"ח: ",
"Failed to set direct chat tag": "נכשל בעת סימון תג לשיחה ישירה",
@ -55,9 +52,7 @@
"Filter room names": "מיין לפי שמות חדרים",
"Forget": "שכח",
"Forward Message": "העבר הודעה",
" from room": " מחדר",
"Guests can join": "אורחים יכולים להצטרף",
"Guest users can't invite users. Please register to invite.": "משתמש אורח לא יכול להזמין משתמשים אחרים. נא להרשם בכדי להזמין.",
"Hide panel": "הסתר פנאל",
"I understand the risks and wish to continue": "אני מבין את הסיכונים אבל מבקש להמשיך",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "בכדי לנתח את הבעיות, ישלח דוח עם פרטי הבעיה. אם ברצונך רק לשלוח את שנאמר למעלה, נא הסר את הסימון:",
@ -90,7 +85,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "נא תאר את הבאג. מה עשית? מה ציפית שיקרה? מה קרה בפועל?",
"Please describe the bug and/or send logs.": "נא תאר את הבאג ו/או שלח את הלוגים.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "נא התקן <a href=\"https://www.google.com/chrome\"> כרום</a> או <a href=\"https://getfirefox.com\"> פיירפוקס</a> לשימוש מייטבי.",
"Please Register": "נא להרשם",
"powered by Matrix": "מופעל ע\"י Matrix",
"Quote": "ציטוט",
"Reject": "דחה",
@ -104,23 +98,18 @@
"Riot does not know how to join a room on this network": "Riot אינו יודע כיצד להצטרף לחדר ברשת זו",
"Riot is not supported on mobile web. Install the app?": "Riot לא נתמך באמצעות דפדפן במכשיר הסלולארי. האם ברצונך להתקין את האפליקציה?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot משתמש במספר רב של אפשרויות מתקדמות בדפדפן, חלק מהן לא זמינות או בשלבי נסיון בדפדפן שבשימושך כרגע.",
"Room directory": "רשימת חדרים",
"Room not found": "חדר לא נמצא",
"Search": "חפש",
"Search…": "חפש…",
"Search for a room": "חפש חדר",
"Send": "שלח",
"Send logs": "שלח לוגים",
"Settings": "הגדרות",
"Source URL": "כתובת אתר המקור",
"Sorry, your browser is <b>not</b> able to run Riot.": "מצטערים, הדפדפן שלך הוא <b> אינו</b> יכול להריץ את Riot.",
"Start chat": "התחל שיחה",
"The Home Server may be too old to support third party networks": "שרת הבית ישן ואינו יכול לתמוך ברשתות צד שלישי",
"There are advanced notifications which are not shown here": "ישנן התראות מתקדמות אשר אינן מוצגות כאן",
"The server may be unavailable or overloaded": "השרת אינו זמין או עמוס",
"This Room": "החדר הזה",
"This room is inaccessible to guests. You may be able to join if you register.": "החדר אינו זמין לאורחים. יש באפשרותך להצטרף רק אחרי רישום.",
" to room": " אל חדר",
"Unable to fetch notification target list": "לא ניתן לאחזר רשימת יעדי התראה",
"Unable to join network": "לא ניתן להצטרף לרשת",
"Unable to look up room ID from server": "לא ניתן לאתר מזהה חדר על השרת",
@ -142,7 +131,6 @@
"You cannot delete this image. (%(code)s)": "אי אפשר למחוק את התמונה. (%(code)s)",
"You cannot delete this message. (%(code)s)": "לא ניתן למחוק הודעה זו. (%(code)s)",
"You are not receiving desktop notifications": "אתה לא מקבל התראות משולחן העבודה",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "אתה משתמש ב Riot כאורח. <a>הרשם</a> או <a> התחבר</a> בכדי לגשת לחדרים נוספים!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "יתכן כי בצעת את ההגדרות בצד לקוח ולא ב Riot. לא תוכל לווסת אותם ב Riot אבל הם עדיין תקפים",
"Sunday": "ראשון",
"Monday": "שני",
@ -155,7 +143,6 @@
"Yesterday": "אתמול",
"OK": "בסדר",
"You need to be using HTTPS to place a screen-sharing call.": "עליך להשתמש ב HTTPS בכדי לבצע שיחה משותפת.",
"Welcome page": "מסך פתיחה",
"Welcome to Riot.im": "ברוכים הבאים ל Riot.im",
"Search the room directory": "חפש ברשימת החדרים",
"Chat with Riot Bot": "שיחה עם Riot בוט",
@ -191,9 +178,7 @@
"This will allow you to return to your account after signing out, and sign in on other devices.": "זה יאפשר לך לחזור לחשבונך אחרי התנתקות ולהתחבר באמצעות התקנים אחרים.",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s באמצעות הדפדפן %(browserName)s על גבי %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\"> ספארי</a> ו <a href=\"http://opera.com\"> אופרה</a> עובדים גם כן.",
"Drop here %(toAction)s": "זרוק כאן %(toAction)s",
"Notifications on the following keywords follow rules which cant be displayed here:": "התראה על מילות המפתח הבאות עוקבת אחר החוקים שאינם יכולים להיות מוצגים כאן:",
"Redact": "אדום",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "באמצעות הדפדפן הנוכחי שלך המראה של האפליקציה יכול להיות שגוי לחלוטין וחלק מהאפשרויות לא תתפקדנה. אם תרצה לנסות בכל זאת תוכל אבל אז הסיכון חל עליך!",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "צ'ט מוצפן &amp; ושת\"פ נעשה ע\"י ה [matrix]"
}

View File

@ -9,7 +9,6 @@
"Cancel Sending": "Küldés megszakítása",
"Can't update user notification settings": "Nem sikerül frissíteni az értesítési beállításokat",
"Close": "Bezár",
"Create new room": "Új szoba létrehozása",
"Couldn't find a matching Matrix room": "Nem található a keresett Matrix szoba",
"Custom Server Options": "Egyedi szerver beállítások",
"delete the alias.": "becenév törlése.",
@ -18,7 +17,6 @@
"Directory": "Könyvtár",
"Dismiss": "Eltűntet",
"Download this file": "Fájl letöltése",
"Drop here %(toAction)s": "%(toAction)s -t húzd ide",
"Enable audible notifications in web client": "Hallható értesítések engedélyezése a webes kliensben",
"Enable desktop notifications": "Asztali értesítések engedélyezése",
"Enable email notifications": "E-mail értesítések engedélyezése",
@ -28,14 +26,12 @@
"Error": "Hiba",
"Error saving email notification preferences": "Hiba e-mail értesítés beállításának mentésénél",
"#example": "#példa",
"Failed to": "Nem lehet",
"Failed to add tag %(tagName)s to room": "Nem lehet a címkét hozzáadni a szobához: %(tagName)s",
"Failed to change settings": "Nem lehet a beállítást megváltoztatni",
"Failed to forget room %(errCode)s": "Nem lehet eltávolítani a szobát: %(errCode)s",
"Failed to update keywords": "Nem lehet a kulcsszavakat frissíteni",
"Failed to get protocol list from Home Server": "Nem lehet a protokoll listát lekérni a Saját szerverről",
"Failed to get public room list": "Nem lehet lekérdezni a nyílt szobák listáját",
"Failed to join the room": "Nem lehet csatlakozni a szobához",
"Failed to remove tag %(tagName)s from room": "Nem lehet törölni a(z) %(tagName)s címkét a szobáról",
"Failed to set direct chat tag": "Nem lehet a címkét beállítani a közvetlen beszélgetéshez",
"Failed to set Direct Message status of room": "Nem lehet beállítani a Közvetlen beszélgetés státuszt a szobához",
@ -44,9 +40,7 @@
"Files": "Fájlok",
"Filter room names": "Szoba nevek szűrése",
"Forget": "Elfelejt",
" from room": " szobából",
"Guests can join": "Vendégek csatlakozhatnak",
"Guest users can't invite users. Please register to invite.": "Vendég felhasználó nem küldhet meghívót. Kérlek regisztrálj meghívó küldéshez.",
"Guests can join": "Vendégek is csatlakozhatnak",
"Invite to this room": "Meghívás a szobába",
"Keywords": "Kulcsszavak",
"Leave": "Elhagy",
@ -60,7 +54,7 @@
"Messages sent by bot": "Botok által küldött üzenetek",
"more": "további",
"Mute": "Elnémít",
"No rooms to show": "Nincs megjeleníthető szoba",
"No rooms to show": "Nincsenek megjelenítendő szobák",
"Noisy": "Hangos",
"Notification targets": "Értesítések célpontja",
"Notifications": "Értesítések",
@ -77,10 +71,8 @@
"Operation failed": "Művelet sikertelen",
"Permalink": "Állandó hivatkozás",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "A legjobb élmény érdekében telepíts <a href=\"https://www.google.com/chrome\">Chrome</a>ot vagy <a href=\"https://getfirefox.com\">Firefox</a>ot.",
"Please Register": "Regisztrálj",
"powered by Matrix": "Matrixon alapul",
"Quote": "Idézet",
"Redact": "Szerkeszt",
"Reject": "Elutasít",
"Remove %(name)s from the directory?": "Törlöd a %(name)s szobát a listából?",
"Remove": "Törlés",
@ -89,29 +81,24 @@
"Resend": "Újraküld",
"Riot does not know how to join a room on this network": "Riot nem tudja, hogy csatlakozzon ehhez a szobához ezen a hálózaton",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot sok haladó képességét használja a böngészőnek amik közül lehet, hogy nem mind érhető el a most használt böngészőben vagy még csak kísérleti jellegű.",
"Room directory": "Szobák listája",
"Room not found": "A szoba nem található",
"Search for a room": "Szoba keresése",
"Settings": "Beállítások",
"Source URL": "Forrás URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Elnézést, a böngésződ <b>nem</b> képes futtatni a Riotot.",
"Start chat": "Csevegés indítása",
"The Home Server may be too old to support third party networks": "A Saját szerver lehet, hogy túl régi ahhoz, hogy más hálózatokhoz tudjon kapcsolódni",
"There are advanced notifications which are not shown here": "Vannak haladó értesítések amik itt nincsenek megjelenítve",
"The server may be unavailable or overloaded": "A szerver nem érhető el vagy túl van terhelve",
"This room is inaccessible to guests. You may be able to join if you register.": "A szoba vendégek számára elérhetetlen. Csak regisztráció után tudsz csatlakozni.",
" to room": " szobába",
"Unable to fetch notification target list": "Nem sikerült letölteni az értesítési célok listáját",
"Unable to join network": "Nem sikerült kapcsolódni a hálózathoz",
"Unable to look up room ID from server": "Nem lehet lekérdezni a szoba ID-ját a szervertől",
"Unhide Preview": "Előkép felfedése",
"unknown error code": "ismeretlen hiba kód",
"Unnamed room": "Név nélküli szoba",
"Unnamed room": "Névtelen szoba",
"Uploaded on %(date)s by %(user)s": "Feltöltés: %(date)s, %(user)s",
"View Decrypted Source": "Visszafejtett forrás megjelenítése",
"View Source": "Forrás megjelenítése",
"When I'm invited to a room": "Amikor meghívtak a szobába",
"World readable": "Mindenki olvashatja",
"World readable": "Nyilvános",
"You cannot delete this image. (%(code)s)": "Nem törölheted ezt a képet. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Nem törölheted ezt az üzenetet. (%(code)s)",
"You are not receiving desktop notifications": "Nem fogadsz asztali értesítéseket",
@ -125,11 +112,10 @@
"Saturday": "Szombat",
"Today": "Ma",
"Yesterday": "Tegnap",
"Welcome page": "Üdvözlő oldal",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "A jelenlegi bőngésződdel teljesen hibás lehet az alkalmazás kinézete és bizonyos funkciók, ha nem az összes, nem fog működni. Ha mindenképpen ki akarod próbálni, folytathatod de egyedül vagy minden felbukkanó problémával!",
"Messages containing <span>keywords</span>": "Az üzenet <span>kulcsszavakat</span> tartalmaz",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s alkalmazás %(browserName)s böngészőn %(osName)s rendszeren",
"A new version of Riot is available.": "Új verzió érhető el a Riot-ból.",
"A new version of Riot is available.": "Elérhető egy új Riot verzió.",
"All Rooms": "Minden szobában",
"Cancel": "Mégse",
"Changelog": "Változások",
@ -156,7 +142,6 @@
"What's New": "Mik az újdonságok",
"What's new?": "Mik az újdonságok?",
"Waiting for response from server": "Válasz várása a szervertől",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Vendégként használod a Riot-ot. <a>Regisztrálj</a> vagy <a>jelentkezz be</a> további szobák és lehetőségek eléréséhez!",
"OK": "Rendben",
"You need to be using HTTPS to place a screen-sharing call.": "HTTPS-t kell használnod hogy képernyőmegosztásos hívást kezdeményezz.",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "A problémák diagnosztizálása érdekében erről a kliensről a hibajelentésben naplók lesznek elküldve. Ha csak az alábbi szöveget szeretnéd elküldeni akkor ezt ne jelöld meg:",
@ -206,5 +191,31 @@
"Error encountered (%(errorDetail)s).": "Hiba történt (%(errorDetail)s).",
"No update available.": "Frissítés nem érthető el.",
"Downloading update...": "Frissítés letöltése...",
"Couldn't load home page": "Kezdőképernyő betöltése sikertelen"
"Couldn't load home page": "Kezdőképernyő betöltése sikertelen",
"Bug report sent": "Hibajelentés elküldve",
"Thank you!": "Köszönjük!",
"Back": "Vissza",
"Developer Tools": "Fejlesztői eszközök",
"Failed to send custom event.": "Egyéni esemény elküldése nem sikerült.",
"Send Custom Event": "Egyéni esemény elküldése",
"Send Custom State Event": "Egyéni állapot esemény küldése",
"Explore Room State": "Szoba állapot felfedezése",
"Event sent!": "Esemény elküldve!",
"Event Type": "Esemény típusa",
"Event Content": "Esemény tartalma",
"State Key": "Állapot kulcs",
"Filter results": "Találatok szűrése",
"You must specify an event type!": "Meg kell határoznod az esemény típusát!",
"Show message in desktop notification": "Üzenetek megmutatása az asztali értesítésekben",
"Pin Message": "Üzenet kitűzése",
"Unpin Message": "Üzenet levétele",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Bejelentkezhetsz más Matrix szerverbe ha használhatod a saját szerver opciót és megadod egy másik szerver URL-jét.<br/>Ezzel egy másik szerveren egy már meglévő fiókot tudsz használni.<br/><br/>Beállíthatsz egyedi azonosító szervert de akkor nem tudsz másokat e-mail cím alapján meghívni és téged sem tudnak.",
"Edit": "Szerkeszt",
"Register": "Regisztrál",
"Rooms": "Szobák",
"Invite to this community": "Meghívás ebbe a közösségbe",
"Add rooms to this community": "Szobák hozzáadása ehhez a közösséghez",
"Toolbox": "Szerszámok",
"Send Account Data": "Fiók adatok küldése",
"Explore Account Data": "Fiók adatok böngészése"
}

View File

@ -18,7 +18,6 @@
"Collapse panel": "Lipat panel",
"Collecting app version information": "Mengumpukan informasi versi aplikasi",
"Collecting logs": "Mengumpulkan catatan",
"Create new room": "Buat ruang baru",
"Couldn't find a matching Matrix room": "Tidak dapat menemukan ruang Matrix yang sesuai",
"Custom Server Options": "Pilihan Server Khusus",
"customServer_text": "Anda dapat menggunakan opsi server khusus untuk masuk ke server Matrix lain dengan menyebutkan URL server Home.<br/>Hal ini memperbolehkan Anda untuk menggunakan Riot dengan akun Matrix yang sudah ada di server Home yang berbeda.<br/><br/>Anda juga bisa mengatur server identitas khusus tapi Anda tidak akan dapat mengundang pengguna melalui alamat email, atau diundang dengan alamat email Anda.",
@ -29,7 +28,6 @@
"Directory": "Direktori",
"Dismiss": "Abaikan",
"Download this file": "Unduh file ini",
"Drop here %(toAction)s": "Letakkan di sini %(toAction)s",
"Enable audible notifications in web client": "Aktifkan notifikasi suara di klien web",
"Enable desktop notifications": "Aktifkan notifikasi desktop",
"Enable email notifications": "Aktifkan notifikasi email",
@ -40,14 +38,12 @@
"Error saving email notification preferences": "Terjadi kesalahan saat menyimpan pilihan notifikasi email",
"#example": "#contoh",
"Expand panel": "Luaskan panel",
"Failed to": "Gagal untuk",
"Failed to add tag %(tagName)s to room": "Gagal menambahkan tag %(tagName)s ke ruang",
"Failed to change settings": "Gagal mengubah pengaturan",
"Failed to forget room %(errCode)s": "Gagal melupakan ruang %(errCode)s",
"Failed to update keywords": "Gagal memperbarui kata kunci",
"Failed to get protocol list from Home Server": "Gagal mendapatkan daftar protokol dari Server Home",
"Failed to get public room list": "Gagal mendapatkan daftar ruang publik",
"Failed to join the room": "Gagal gabung ke ruang",
"Failed to remove tag %(tagName)s from room": "Gagal menghapus tag %(tagName)s dari ruang",
"Failed to send report: ": "Gagal mengirim laporan: ",
"Failed to set direct chat tag": "Gagal mengatur tag obrolan langsung",
@ -58,9 +54,7 @@
"Filter room names": "Saring nama ruang",
"Forget": "Lupakan",
"Forward Message": "Teruskan Pesan",
" from room": " dari ruang",
"Guests can join": "Tamu dapat gabung",
"Guest users can't invite users. Please register to invite.": "Pengunjung tamu tidak dapat mengundang pengguna. Harap registrasi untuk mengundang.",
"Hide panel": "Sembunyikan panel",
"(HTTP status %(httpStatus)s)": "(status HTTP %(httpStatus)s)",
"I understand the risks and wish to continue": "Saya mengerti resikonya dan berharap untuk melanjutkan",
@ -95,7 +89,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Harap jelaskan bug. Apa yang Anda lakukan? Apa yang Anda harap terjadi? Apa yang sebenarnya terjadi?",
"Please describe the bug and/or send logs.": "Harap jelaskan bug dan/atau kirim catatan.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Harap install <a href=\"https://www.google.com/chrome\">Chrome</a> atau <a href=\"https://getfirefox.com\">Firefox</a> untuk pengalaman terbaik.",
"Please Register": "Mohon registrasi",
"powered by Matrix": "didukung oleh Matrix",
"Quote": "Kutip",
"Reject": "Tolak",
@ -109,23 +102,18 @@
"Riot does not know how to join a room on this network": "Riot tidak tau bagaimana gabung ruang di jaringan ini",
"Riot is not supported on mobile web. Install the app?": "Riot tidak mendukung web seluler. Install aplikasi?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot menggunakan banyak fitur terdepan dari browser, dimana tidak tersedia atau dalam fase eksperimen di browser Anda.",
"Room directory": "Direktori ruang",
"Room not found": "Ruang tidak ditemukan",
"Search": "Cari",
"Search…": "Cari…",
"Search for a room": "Cari ruang obrolan",
"Send": "Kirim",
"Send logs": "Kirim catatan",
"Settings": "Pengaturan",
"Source URL": "URL sumber",
"Sorry, your browser is <b>not</b> able to run Riot.": "Maaf, browser Anda <b>tidak</b> dapat menjalankan Riot.",
"Start chat": "Mulai obrolan",
"The Home Server may be too old to support third party networks": "Server Home mungkin terlalu kuno untuk mendukung jaringan pihak ketiga",
"There are advanced notifications which are not shown here": "Ada notifikasi lanjutan yang tidak ditampilkan di sini",
"The server may be unavailable or overloaded": "Server mungkin tidak tersedia atau kelebihan muatan",
"This Room": "Ruang ini",
"This room is inaccessible to guests. You may be able to join if you register.": "Ruang ini tidak dapat diakses oleh tamu. Anda mungkin dapat bergabung jika melakukan registrasi.",
" to room": " ke ruang",
"Unable to fetch notification target list": "Tidak dapat mengambil daftar notifikasi target",
"Unable to join network": "Tidak dapat bergabung di jaringan",
"Unable to look up room ID from server": "Tidak dapat mencari ID ruang dari server",
@ -147,7 +135,6 @@
"You cannot delete this image. (%(code)s)": "Anda tidak dapat menghapus gambar ini. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Anda tidak dapat menghapus pesan ini. (%(code)s)",
"You are not receiving desktop notifications": "Anda tidak menerima notifikasi desktop",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Anda menggunakan Riot sebagai tamu. <a>Registrasi</a> atau <a>masuk</a> untuk mengakses banyak ruang dan fitur lainnya!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Anda mungkin sudah konfigurasi di klien selain Riot. Anda tidak dapat setel di Riot tetap berlaku",
"Sunday": "Minggu",
"Monday": "Senin",
@ -165,7 +152,6 @@
"No update available.": "Tidak ada pembaruan.",
"Downloading update...": "Unduh pembaruan...",
"You need to be using HTTPS to place a screen-sharing call.": "Anda perlu menggunakan HTTPS untuk melakukan panggilan berbagi-layar.",
"Welcome page": "Halaman selamat datang",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Dengan browser ini, tampilan dari aplikasi mungkin tidak sesuai, dan beberapa atau bahkan semua fitur mungkin tidak berjalan. Jika Anda ingin tetap mencobanya, Anda bisa melanjutkan, tapi Anda tanggung sendiri jika muncul masalah yang terjadi!",
"Welcome to Riot.im": "Selamat datang di Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Obrolan terenkripsi, terdesentralisasi &amp; kolaborasi didukung oleh [matrix]",

View File

@ -16,7 +16,6 @@
"Collapse panel": "Riduci pannello",
"Collecting app version information": "Raccolta di informazioni sulla versione dell'applicazione",
"Collecting logs": "Sto recuperando i log",
"Create new room": "Crea una nuova stanza",
"Couldn't find a matching Matrix room": "Impossibile trovare una stanza Matrix corrispondente",
"Custom Server Options": "Opzioni Server Personalizzate",
"customServer_text": "Puoi utilizzare un server personale per accedere su altri server Matrix specificando un diverso indirizzo URL per il server Home.<br/>Questo ti permetterà di usare Riot con un account Matrix già esistente su un altro server.<br/><br/>Puoi anche specificare un diverso server di identità ma non sarai in grado di invitare utenti, o di essere invitato tramite indirizzo email.",
@ -37,13 +36,11 @@
"Error saving email notification preferences": "Errore nel salvataggio delle preferenze di notifica email",
"#example": "#esempio",
"Expand panel": "Espandi il pannello",
"Failed to": "Impossibile",
"Failed to add tag %(tagName)s to room": "Impossibile aggiungere l'etichetta %(tagName)s alla stanza",
"Failed to change settings": "Impossibile modificare le impostazioni",
"Failed to update keywords": "Impossibile aggiornare le parole chiave",
"Failed to get protocol list from Home Server": "Impossibile ottenere la lista di protocolli dal server Home",
"Failed to get public room list": "Impossibile ottenere la lista delle stanze pubbliche",
"Failed to join the room": "Impossibile entrare nella stanza",
"Failed to remove tag %(tagName)s from room": "Impossibile rimuovere l'etichetta %(tagName)s dalla stanza",
"Failed to send report: ": "Impossibile inviare il resoconto: ",
"Failed to set direct chat tag": "Impossibile impostare l'etichetta di chat diretta",
@ -53,9 +50,7 @@
"Filter room names": "Filtra i nomi delle stanze",
"Forget": "Dimentica",
"Forward Message": "Inoltra messaggio",
" from room": " dalla stanza",
"Guests can join": "Gli ospiti sono ammessi",
"Guest users can't invite users. Please register to invite.": "Gli ospiti non possono invitare gli utenti. Registrati per invitare.",
"Hide panel": "Nascondi pannello",
"I understand the risks and wish to continue": "Sono consapevole dei rischi e vorrei continuare",
"Invite to this room": "Invita in questa stanza",
@ -90,17 +85,16 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Per favore descrivi l'errore. Cosa hai fatto? Cosa ti aspettavi accadesse? Cos'è successo invece?",
"Please describe the bug and/or send logs.": "Per favore descrivi l'errore e/o invia i log.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Per favore installa<a href=\"https://www.google.com/chrome\">Chrome</a> o <a href=\"https://getfirefox.com\">Firefox</a> per un'esperienza migliore.",
"Please Register": "Per favore registrati",
"powered by Matrix": "offerto da Matrix",
"Quote": "Cita",
"Reject": "Rifiuta",
"Remove %(name)s from the directory?": "Rimuovere %(name) dalla lista?",
"Remove %(name)s from the directory?": "Rimuovere %(name)s dalla lista?",
"Remove": "Rimuovi",
"remove %(name)s from the directory.": "rimuovi %(name) dalla lista.",
"remove %(name)s from the directory.": "rimuovi %(name)s dalla lista.",
"Remove from Directory": "Rimuovi dalla lista",
"Report a bug": "Segnala un errore",
"Resend": "Reinvia",
"Riot Desktop on %(platformName)s": "Riot Desktop su %(platformName)",
"Riot Desktop on %(platformName)s": "Riot Desktop su %(platformName)s",
"Riot does not know how to join a room on this network": "Riot non sa come entrare nella stanza su questa rete",
"Riot is not supported on mobile web. Install the app?": "Riot non è supportato sul web mobile. Vuoi installare l'applicazione?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utilizza molte funzioni avanzate del browser, alcune delle quali non sono disponibili o sono sperimentali nel tuo browser attuale.",
@ -110,20 +104,15 @@
"Search for a room": "Cerca una stanza",
"Send": "Invia",
"Send logs": "Invia i log",
"Settings": "Impostazioni",
"Source URL": "URL d'origine",
"Sorry, your browser is <b>not</b> able to run Riot.": "Spiacenti, ma il tuo browser <b>non</b> è in grado di utilizzare Riot.",
"Start chat": "Inizia una chat",
"Messages containing <span>keywords</span>": "Messaggi contenenti <span>parole chiave</span>",
"Notification targets": "Obiettivi di notifica",
"Notifications on the following keywords follow rules which cant be displayed here:": "Le notifiche alle seguenti parole chiave seguono regole che non possono essere mostrate qui:",
"Room directory": "Lista delle stanze",
"The Home Server may be too old to support third party networks": "Il server Home potrebbe essere troppo vecchio per supportare reti di terze parti",
"There are advanced notifications which are not shown here": "Ci sono notifiche avanzate che non sono mostrate qui",
"The server may be unavailable or overloaded": "Il server potrebbe essere non disponibile o sovraccarico",
"This Room": "Questa stanza",
"This room is inaccessible to guests. You may be able to join if you register.": "Questa stanza è inaccessibile agli ospiti. Potresti unirti se ti registri.",
" to room": " alla stanza",
"Unable to join network": "Impossibile collegarsi alla rete",
"Unable to look up room ID from server": "Impossibile consultare l'ID stanza dal server",
"Unavailable": "Non disponibile",
@ -143,7 +132,6 @@
"You cannot delete this image. (%(code)s)": "Non puoi eliminare quest'immagine. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Non puoi eliminare questo messaggio. (%(code)s)",
"You are not receiving desktop notifications": "Non stai ricevendo le notifiche sul desktop",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Stai usando Riot come ospite.<a>Registrati</a> o <a>accedi</a> per ottenere più stanze e funzionalità!",
"World readable": "Leggibile da tutti",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Potresti averli configurati in un client diverso da Riot. Non puoi cambiarli in Riot ma sono comunque applicati",
"Sunday": "Domenica",
@ -162,7 +150,6 @@
"No update available.": "Nessun aggiornamento disponibile.",
"Downloading update...": "Scaricamento aggiornamento...",
"You need to be using HTTPS to place a screen-sharing call.": "Devi usare HTTPS per utilizzare una chiamata con condivisione schermo.",
"Welcome page": "Pagina di benvenuto",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Con il tuo attuale browser, l'aspetto e la sensazione generale dell'applicazione potrebbero essere completamente sbagliati e alcune delle funzionalità potrebbero non funzionare. Se vuoi provare comunque puoi continuare, ma non riceverai aiuto per qualsiasi problema tu possa riscontrare!",
"Welcome to Riot.im": "Benvenuto/a su Riot.im",
"Search the room directory": "Cerca nella lista delle stanze",
@ -185,9 +172,8 @@
"Implementing VR services with Matrix": "Implementazione servizi VR con Matrix",
"Implementing VoIP services with Matrix": "Implementazione servizi VoIP con Matrix",
"Discussion of the Identity Service API": "Discussione sull'Identity Service API",
"Drop here %(toAction)s": "Rilascia qui %(toAction)s",
"Support for those using, running and writing other bridges": "Supporto per chi usa, amministra e scrive altri bridge",
"Contributing code to Matrix and Riot": "Contributi alla programmazione di Matrix e Riot",
"Contributing code to Matrix and Riot": "Contributi al codice di Matrix e Riot",
"Co-ordination for Riot/Web translators": "Coordinamento per i traduttori di Riot/Web",
"Failed to change password. Is your password correct?": "Modifica password fallita. La tua password è corretta?",
"You have successfully set a password!": "Hai impostato una password con successo!",
@ -201,9 +187,25 @@
"Set Password": "Imposta Password",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s su %(osName)s",
"Unable to fetch notification target list": "Impossibile ottenere la lista di obiettivi notifiche",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Chat &amp; collaborazioni decentralizzate e criptate, offerte da [matrix]",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Chat &amp; collaborazione decentralizzata e criptata offerta da [matrix]",
"Discussion of all things Matrix!": "Discussione su tutto quanto riguardi Matrix!",
"Dev chat for the Riot/Web dev team": "Chat per gli sviluppatori di Riot/Web",
"Dev chat for the Dendrite dev team": "Chat per gli sviluppatori di Dendrite",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Esistono già molte stanze in Matrix, collegate a reti già esistenti (Slack, IRC, Gitter ecc) o indipendenti. Dai un'occhiata all'elenco!"
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Esistono già molte stanze in Matrix, collegate a reti già esistenti (Slack, IRC, Gitter ecc) o indipendenti. Dai un'occhiata all'elenco!",
"Thank you!": "Grazie!",
"Bug report sent": "Rapporto inviato",
"Back": "Indietro",
"Developer Tools": "Strumenti per Sviluppatori",
"Failed to send custom event.": "Impossibile inviare evento personalizzato.",
"Filter results": "Filtra risultati",
"Send Custom Event": "Invia Evento Personalizzato",
"Send Custom State Event": "Invia Evento di Stato Personalizzato",
"Explore Room State": "Esplora Stato Stanza",
"You must specify an event type!": "Devi specificare un tipo di evento!",
"Event sent!": "Evento inviato!",
"Event Type": "Tipo di Evento",
"Event Content": "Contenuto dell'Evento",
"State Key": "Chiave dello Stato",
"Show message in desktop notification": "Mostra i messaggi nelle notifiche desktop",
"Edit": "Modifica"
}

View File

@ -3,7 +3,6 @@
"All messages (loud)": "全ての発言(通知音あり)",
"Cancel": "取消",
"Close": "閉じる",
"Create new room": "新しい部屋を作成",
"Direct Chat": "対話",
"Favourite": "お気に入り",
"Hide panel": "右欄を非表示",
@ -16,14 +15,11 @@
"Report a bug": "バグを報告",
"Resend": "再送信",
"Riot is not supported on mobile web. Install the app?": "Riotはスマートフォンでの表示に対応していません。できればアプリをインストールして頂けませんでしょうか?",
"Room directory": "公開部屋一覧",
"Room not found": "部屋が見つかりません",
"Search": "検索",
"Search…": "検索…",
"Send": "送信",
"Settings": "設定",
"Sorry, your browser is <b>not</b> able to run Riot.": "申し訳ありません。あなたのブラウザではRiotは<b>動作できません</b>。",
"Start chat": "対話開始",
"This Room": "この部屋",
"Waiting for response from server": "サーバからの応答を待っています",
"You cannot delete this message. (%(code)s)": "あなたはこの発言を削除できません (%(code)s)",
@ -53,7 +49,6 @@
"Enable notifications for this account": "このアカウントで通知を行う",
"Failed to change settings": "設定の変更に失敗しました",
"Failed to get public room list": "公開部屋一覧の取得に失敗しました",
"Failed to join the room": "部屋への参加に失敗しました",
"Filter room names": "部屋名検索",
"Forget": "忘れる",
"Leave": "退室",

View File

@ -16,7 +16,6 @@
"Collapse panel": "패널 접기",
"Collecting app version information": "앱 버전 정보를 수집하는 중",
"Collecting logs": "로그 수집 중",
"Create new room": "새 방 만들기",
"Couldn't find a matching Matrix room": "일치하는 매트릭스 방을 찾을 수 없어요",
"Custom Server Options": "사용자 지정 서버 설정",
"delete the alias.": "가명을 지울게요.",
@ -34,7 +33,6 @@
"Expand panel": "확장 패널",
"Forget": "잊기",
"Hide panel": "패널 숨기기",
"Guest users can't invite users. Please register to invite.": "손님은 사용자를 초대할 수 없어요. 초대하려면 계정을 등록해주세요.",
"I understand the risks and wish to continue": "위험할 수 있는 걸 알고 계속하기를 바라요",
"Invite to this room": "이 방에 초대하기",
"Leave": "떠나기",
@ -51,10 +49,8 @@
"On": "켜기",
"Permalink": "고유주소",
"Please describe the bug and/or send logs.": "오류를 적어주시거나 로그를 보내주세요.",
"Please Register": "계정을 등록해주세요",
"powered by Matrix": "매트릭스의 지원을 받고 있어요",
"Quote": "인용하기",
"Redact": "지우기",
"Reject": "거절하기",
"Remove %(name)s from the directory?": "목록에서 %(name)s을 지우시겠어요?",
"Remove": "지우기",
@ -64,17 +60,14 @@
"Resend": "다시 보내기",
"Riot Desktop on %(platformName)s": "%(platformName)s에서 라이엇 컴퓨터판",
"Riot is not supported on mobile web. Install the app?": "라이엇은 모바일 사이트를 지원하지 않아요. 앱을 설치하시겠어요?",
"Room directory": "방 목록",
"Room not found": "방을 찾지 못했어요",
"Search": "찾기",
"Search…": "찾기…",
"Search for a room": "방에서 찾기",
"Send": "보내기",
"Send logs": "로그 보내기",
"Settings": "설정",
"Source URL": "출처 URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "죄송해요. 브라우저에서 라이엇을 켤 수가 <b>없어요</b>.",
"Start chat": "이야기하기",
"This Room": "방",
"Unavailable": "이용할 수 없음",
"Unknown device": "알 수 없는 장치",
@ -98,7 +91,6 @@
"Today": "오늘",
"Yesterday": "어제",
"OK": "알았어요",
"Welcome page": "환영 화면",
"Welcome to Riot.im": "라이엇에 오신 걸 환영해요",
"Chat with Riot Bot": "Riot 봇과 이야기하기",
"You have successfully set a password!": "비밀번호를 설정했어요!",
@ -108,18 +100,15 @@
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">사파리</a>와 <a href=\"http://opera.com\">오페라</a>에서도 작동해요.",
"customServer_text": "사용자 지정 서버 설정에서 다른 홈 서버 URL을 지정해 다른 매트릭스 서버에 로그인할 수 있어요.<br/>이를 통해 라이엇과 다른 홈 서버의 기존 매트릭스 계정을 함께 쓸 수 있죠.<br/><br/>사용자 지정 ID 서버를 설정할 수도 있지만 이메일 주소로 사용자를 초대하거나 초대받을 수는 없답니다.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "방 가명 %(alias)s 을 지우고 목록에서 %(name)s를 지우시겠어요?",
"Drop here %(toAction)s": "여기에 놓아주세요 %(toAction)s",
"Enable audible notifications in web client": "웹 클라이언트에서 알림 소리 켜기",
"Enable them now": "지금 켜기",
"Enter keywords separated by a comma:": "키워드를 쉼표로 구분해 입력해주세요:",
"Failed to": "실패했어요",
"Failed to add tag %(tagName)s to room": "방에 %(tagName)s로 지정하지 못했어요",
"Failed to change settings": "설정을 바꾸지 못했어요",
"Failed to forget room %(errCode)s": "방 %(errCode)s를 잊지 못했어요",
"Failed to update keywords": "키워드를 갱신하지 못했어요",
"Failed to get protocol list from Home Server": "홈 서버에서 프로토콜 목록을 얻지 못했어요",
"Failed to get public room list": "공개한 방 목록을 얻지 못했어요",
"Failed to join the room": "방에 들어가지 못했어요",
"Failed to remove tag %(tagName)s from room": "방에서 %(tagName)s 지정을 지우지 못했어요",
"Failed to send report: ": "보고를 보내지 못했어요: ",
"Failed to set direct chat tag": "직접 이야기 지정을 설정하지 못했어요",
@ -129,7 +118,6 @@
"Files": "파일",
"Filter room names": "방 이름 거르기",
"Forward Message": "메시지 전달",
" from room": " 방에서",
"Guests can join": "손님이 들어올 수 있어요",
"(HTTP status %(httpStatus)s)": "(HTTP 상태 %(httpStatus)s)",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "문제를 진단하기 위해서, 이 클라이언트의 로그를 오류 보고서와 같이 보낼 거에요. 위 내용만 보내시려면, 체크를 해제하세요:",
@ -153,8 +141,6 @@
"The Home Server may be too old to support third party networks": "타사 네트워크를 지원하기에는 홈 서버가 너무 오래된 걸 수 있어요",
"There are advanced notifications which are not shown here": "여기 보이지 않는 고급 알림이 있어요",
"The server may be unavailable or overloaded": "서버를 쓸 수 없거나 과부하일 수 있어요",
"This room is inaccessible to guests. You may be able to join if you register.": "이 방은 손님이 들어가실 수 없어요. 계정을 등록하시면 들어가실 수 있을 거에요.",
" to room": " 방에서",
"Unable to fetch notification target list": "알림 대상 목록을 불러올 수 없어요",
"Unable to join network": "네트워크에 들어갈 수 없어요",
"Unable to look up room ID from server": "서버에서 방 ID를 찾아볼 수 없어요",
@ -197,7 +183,6 @@
"This will allow you to return to your account after signing out, and sign in on other devices.": "이런 식으로 로그아웃한 뒤 계정으로 돌아가, 다른 장치에서 로그인하실 수 있어요.",
"You have successfully set a password and an email address!": "비밀번호와 이메일 주소를 설정했어요!",
"Remember, you can always set an email address in user settings if you change your mind.": "잊지마세요, 마음이 바뀌면 언제라도 사용자 설정에서 이메일 주소를 바꾸실 수 있다는 걸요.",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "손님으로 라이엇에 들어오셨네요. <a>계정을 등록하거나</a> <a>로그인하시고</a> 더 많은 방과 기능을 즐기세요!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "라이엇이 아닌 다른 클라이언트에서 구성하셨을 수도 있어요. 라이엇에서 조정할 수는 없지만 여전히 적용되있을 거에요",
"To return to your account in future you need to <u>set a password</u>": "나중에 계정으로 돌아가려면 <u>비밀번호 설정</u>을 해야만 해요",
"Set Password": "비밀번호 설정",

View File

@ -18,7 +18,6 @@
"Collapse panel": "Aizvērt apgabalu",
"Collecting app version information": "Tiek apkopota programmas versijas informācija",
"Collecting logs": "Tiek apkopoti logfaili",
"Create new room": "Izveidot jaunu istabu",
"Couldn't find a matching Matrix room": "Nav iespējams noteikt atbilstošo Matrix istabu",
"Custom Server Options": "Īpaši servera uzstādījumi",
"customServer_text": "Tu vari izmantot īpašus servera uzstādījumus, lai pierakstītos citos Matrix serveros, norādot atšķirīgu servera URL adresi.<br/>Tas atļaus Tev izmantot Riot ar jau eksistējošu Matrix kontu citā serverī.<br/><br/>Tu vari norādīt arī īpašu identitātes serveri, bet tad nevarēsi uzaicināt lietotājus pēc epasta adreses,kā arī pēc tās tikt uzaicināts/a.",
@ -30,7 +29,6 @@
"Directory": "Katalogs",
"Dismiss": "Noņemt",
"Download this file": "Lejupielādēt šo failu",
"Drop here %(toAction)s": "Ievelc šeit %(toAction)s",
"Enable audible notifications in web client": "Iespējot skaņas paziņojumus web klienta programmā",
"Enable desktop notifications": "Iespējot darbvirsmas notifikāciju paziņojumus",
"Enable email notifications": "Iespējot epasta notifikāciju paziņojumus",
@ -41,14 +39,12 @@
"Error saving email notification preferences": "Kļūda saglabājot epasta notifikāciju paziņojumu uzstādījumus",
"#example": "#piemērs",
"Expand panel": "Izvērst apgabalu",
"Failed to": "Neizdevās",
"Failed to add tag %(tagName)s to room": "Neizdevās pievienot birku %(tagName)s istabai",
"Failed to change settings": "Neizdevās mainīt uzstādījumus",
"Failed to forget room %(errCode)s": "Neizdevās \"aizmirst\" istabu %(errCode)s",
"Failed to update keywords": "Neizdevās atjaunot atslēgvārdus",
"Failed to get protocol list from Home Server": "Neizdevās iegūt protokolu sarakstu no mājas servera",
"Failed to get public room list": "Neizdevās iegūt publisko istabu sarakstu",
"Failed to join the room": "Neizdevās pievienoties istabai",
"Failed to remove tag %(tagName)s from room": "Neizdevās dzēst istabas birku %(tagName)s",
"Failed to send report: ": "Neizdevās nosūtīt atskaiti: ",
"Failed to set direct chat tag": "Neizdevās uzstādīt birku tiešajam čatam",
@ -59,10 +55,8 @@
"Notifications": "Paziņojumi",
"OK": "LABI",
"Operation failed": "Darbība neizdevās",
"Please Register": "Lūdzu reģistrējies",
"Remove": "Dzēst",
"Search": "Meklēt",
"Settings": "Iestatījumi",
"unknown error code": "nezināms kļūdas kods",
"Monday": "Pirmdiena",
"Tuesday": "Otrdiena",
@ -71,9 +65,6 @@
"Friday": "Piektdiena",
"Saturday": "Sestdiena",
"Sunday": "Svētdiena",
"Welcome page": "\"Laipni lūdzam\" lapa",
"Room directory": "Istabu katalogs",
"Start chat": "Uzsākt čatu",
"powered by Matrix": "spēcināts ar Matrix",
"Failed to set Direct Message status of room": "Neizdevās iestatīt istabas tiešo ziņu statusu",
"Fetching third party location failed": "Neizdevās iegūt trešās puses atrašanās vietu",
@ -81,9 +72,7 @@
"Filter room names": "Filtrēt pēc istabu nosaukuma",
"Forget": "\"Aizmirst\"",
"Forward Message": "Pārsūtīt ziņu",
" from room": " no istabas",
"Guests can join": "Viesi var pievienoties",
"Guest users can't invite users. Please register to invite.": "Viesi nevar uzaicināt lietotājus. Lūdzu reģistrējies, lai uzaicinātu.",
"Hide panel": "Slēpt apgabalu",
"(HTTP status %(httpStatus)s)": "(HTTP statuss %(httpStatus)s)",
"I understand the risks and wish to continue": "Es saprotu riskus un vēlos turpināt",
@ -137,8 +126,6 @@
"There are advanced notifications which are not shown here": "Ir īpašie notifikāciju paziņojumi, kuri šeit nav redzami",
"The server may be unavailable or overloaded": "Serveris var nebūt pieejams vai ir pārslogots",
"This Room": "Šī istaba",
"This room is inaccessible to guests. You may be able to join if you register.": "Šī istaba viesiem nav pieejama. Tu varētu tai pievienoties, ja reģistrēsies.",
" to room": " uz istabu",
"Unable to fetch notification target list": "Nav iespējams iegūt notifikāciju paziņojumu mērķu sarakstu",
"Unable to join network": "Nav iespējams pievienoties tīmeklim",
"Unable to look up room ID from server": "Nav iespējams iegūt istabas ID no servera",
@ -159,7 +146,6 @@
"You cannot delete this image. (%(code)s)": "Tu nevari dzēst šo attēlu. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Tu nevari dzēst šo ziņu. (%(code)s)",
"You are not receiving desktop notifications": "Tu nesaņem darbvirsmas notifikāciju paziņojumus",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Tu šeit atrodies kā viesis. <a>Reģistrējies</a> vai <a>pieraksties</a>, lai piekļūtu visām istabām un iespējām!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Tu, iespējams, konfigurēji tās kādā citā klientā, nevis Riot. Tu nevari pielāgot tos Riot, bet tie joprojām ir spēkā",
"Today": "Šodien",
"Yesterday": "Vakar",

View File

@ -18,7 +18,6 @@
"Collapse panel": "പാനല്‍ കൊളാപ്സ് ചെയ്യുക",
"Collecting app version information": "ആപ്പ് പതിപ്പു വിവരങ്ങള്‍ ശേഖരിക്കുന്നു",
"Collecting logs": "നാള്‍വഴി ശേഖരിക്കുന്നു",
"Create new room": "പുതിയ റൂം സൃഷ്ടിക്കുക",
"Couldn't find a matching Matrix room": "ആവശ്യപ്പെട്ട മാട്രിക്സ് റൂം കണ്ടെത്താനായില്ല",
"Custom Server Options": "കസ്റ്റം സെര്‍വര്‍ ഓപ്ഷനുകള്‍",
"delete the alias.": "ഏലിയാസ് നീക്കം ചെയ്യുക.",
@ -28,7 +27,6 @@
"Directory": "ഡയറക്ടറി",
"Dismiss": "ഒഴിവാക്കുക",
"Download this file": "ഈ ഫയല്‍ ഡൌണ്‍ലോഡ് ചെയ്യുക",
"Drop here %(toAction)s": "ഇവിടെ നിക്ഷേപിക്കുക %(toAction)s",
"Enable audible notifications in web client": "വെബ് പതിപ്പിലെ അറിയിപ്പുകള്‍ കേള്‍ക്കാവുന്നതാക്കുക",
"Enable desktop notifications": "ഡെസ്ക്ടോപ്പ് നോട്ടിഫിക്കേഷനുകള്‍ ഇനേബിള്‍ ചെയ്യുക",
"Enable email notifications": "ഇമെയില്‍ നോട്ടിഫിക്കേഷനുകള്‍ ഇനേബിള്‍ ചെയ്യുക",
@ -39,14 +37,12 @@
"Error saving email notification preferences": "ഇമെയില്‍ നോട്ടിഫിക്കേഷന്‍ സജ്ജീകരണങ്ങള്‍ സൂക്ഷിക്കവേ എറര്‍ നേരിട്ടു",
"#example": "#ഉദാഹരണം",
"Expand panel": "പാനല്‍ വലുതാക്കുക",
"Failed to": "സാധിച്ചില്ല",
"Failed to add tag %(tagName)s to room": "റൂമിന് %(tagName)s എന്ന ടാഗ് ആഡ് ചെയ്യുവാന്‍ സാധിച്ചില്ല",
"Failed to change settings": "സജ്ജീകരണങ്ങള്‍ മാറ്റുന്നവാന്‍ സാധിച്ചില്ല",
"Failed to forget room %(errCode)s": "%(errCode)s റൂം ഫോര്‍ഗെറ്റ് ചെയ്യുവാന്‍ സാധിച്ചില്ല",
"Failed to update keywords": "കീവേഡുകള്‍ പുതുക്കുവാന്‍ സാധിച്ചില്ല",
"Failed to get protocol list from Home Server": "ഹോം സെര്‍വറില്‍ നിന്ന് പ്രോട്ടോക്കോള്‍ ലിസ്റ്റ് നേടാന്‍ സാധിച്ചില്ല",
"Failed to get public room list": "പബ്ലിക്ക് റൂം ലിസ്റ്റ് നേടാന്‍ സാധിച്ചില്ല",
"Failed to join the room": "റൂമില്‍ അംഗമാകുവാന്‍ സാധിച്ചില്ല",
"Failed to remove tag %(tagName)s from room": "റൂമില്‍ നിന്നും %(tagName)s ടാഗ് നീക്കം ചെയ്യുവാന്‍ സാധിച്ചില്ല",
"Failed to send report: ": "റിപ്പോര്‍ട്ട് അയക്കുവാന്‍ സാധിച്ചില്ല : ",
"Failed to set direct chat tag": "ഡയറക്റ്റ് ചാറ്റ് ടാഗ് സെറ്റ് ചെയ്യാനായില്ല",
@ -57,9 +53,7 @@
"Filter room names": "റൂം പേരുകള്‍ ഫില്‍ട്ടര്‍ ചെയ്യുക",
"Forget": "മറക്കുക",
"Forward Message": "സന്ദേശം ഫോര്‍വേഡ് ചെയ്യുക",
" from room": " റൂമില്‍ നിന്നും",
"Guests can join": "അതിഥികള്‍ക്കും പ്രവേശിക്കാം",
"Guest users can't invite users. Please register to invite.": "അതിഥികളായ അംഗങ്ങള്‍ക്ക് പുതിയ അംഗങ്ങളെ ക്ഷണിക്കാനാകില്ല. അതിന് ദയവായി രെജിസ്റ്റര്‍ ചെയ്യുക.",
"Hide panel": "പാനല്‍ ഒളിപ്പിക്കുക",
"(HTTP status %(httpStatus)s)": "(HTTP സ്റ്റാറ്റസ് %(httpStatus)s)",
"I understand the risks and wish to continue": "കുഴപ്പമാകാന്‍ സാധ്യതയുണ്ടെന്നെനിയ്ക്കു് മനസ്സിലായി, എന്നാലും മുന്നോട്ട് പോകുക",
@ -89,7 +83,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "ബഗ് വിശദീകരിക്കുക. എന്ത് ചെയ്തപ്പോഴാണ് വന്നത് ? എന്തായിരുന്നു പ്രതീക്ഷിച്ചിരുന്നത് ? ശരിക്കും എന്താണ് സംഭവിച്ചത് ?",
"Please describe the bug and/or send logs.": "ബഗ് വിശദീകരിക്കുക , കൂടെ / അല്ലെങ്കില്‍ നാള്‍വഴികളും അയക്കുക.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "ഏറ്റവും മികച്ച ഉപയോഗത്തിനായി <a href=\"https://www.google.com/chrome\">ഗൂഗിള്‍ ക്രോം</a>ബ്രൌസറോ അല്ലെങ്കില്‍ <a href=\"https://getfirefox.com\">ഫയര്‍ഫോക്സ്</a> ബ്രൌസറോ ഇന്‍സ്റ്റാള്‍ ചെയ്യൂ.",
"Please Register": "ദയവായി റെജിസ്റ്റർ ചെയ്യുക",
"powered by Matrix": "മാട്രിക്സില്‍ പ്രവര്‍ത്തിക്കുന്നു",
"Quote": "ഉദ്ധരിക്കുക",
"Reject": "നിരസിക്കുക",
@ -102,23 +95,18 @@
"Riot does not know how to join a room on this network": "ഈ നെറ്റ്‍വര്‍ക്കിലെ ഒരു റൂമില്‍ എങ്ങനെ അംഗമാകാമെന്ന് റയട്ടിന് അറിയില്ല",
"Riot is not supported on mobile web. Install the app?": "മൊബൈലില്‍ റയട്ട് വെബ് പിന്തുണ ഇല്ല. ആപ്പ് ഇന്‍സ്റ്റാള്‍ ചെയ്യാം ?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "റയട്ട് നൂതന ബ്രൌസര്‍ ഫീച്ചറുകള്‍ ഉപയോഗിക്കുന്നു. നിങ്ങളുടെ ബ്രൌസറില്‍ അവയില്‍ പലതും ഇല്ല / പൂര്‍ണ്ണമല്ല .",
"Room directory": "റൂം ഡയറക്ടറി",
"Room not found": "റൂം കണ്ടെത്താനായില്ല",
"Search": "തിരയുക",
"Search…": "തിരയുക…",
"Search for a room": "ഒരു റൂം തിരയുക",
"Send": "അയയ്ക്കുക",
"Send logs": "നാള്‍വഴി അയയ്ക്കുക",
"Settings": "സജ്ജീകരണങ്ങള്‍",
"Source URL": "സോഴ്സ് യു ആര്‍ എല്‍",
"Sorry, your browser is <b>not</b> able to run Riot.": "ക്ഷമിക്കണം, നിങ്ങളുടെ ബ്രൌസര്‍ റയട്ട് പ്രവര്‍ത്തിപ്പിക്കാന്‍ <b>പര്യാപ്തമല്ല</b>.",
"Start chat": "ചാറ്റ് തുടങ്ങുക",
"The Home Server may be too old to support third party networks": "തേഡ് പാര്‍ട്ടി നെറ്റ്‍വര്‍ക്കുകളെ പിന്തുണക്കാത്ത വളരെ പഴയ ഹോം സെര്‍വര്‍ ആയേക്കാം",
"There are advanced notifications which are not shown here": "ഇവിടെ കാണിക്കാത്ത നൂതന നോട്ടിഫിക്കേഷനുകള്‍ ഉണ്ട്",
"The server may be unavailable or overloaded": "സെര്‍വര്‍ ലഭ്യമല്ല അല്ലെങ്കില്‍ ഓവര്‍ലോഡഡ് ആണ്",
"This Room": "ഈ മുറി",
"This room is inaccessible to guests. You may be able to join if you register.": "ഈ റൂം അതിഥികള്‍ക്ക് അപ്രാപ്യമാണ്. അംഗമാകാന്‍ റെജിസ്റ്റര്‍ ചെയ്യൂ.",
" to room": " റൂമിലേക്ക്",
"Unable to fetch notification target list": "നോട്ടിഫിക്കേഷന്‍ ടാര്‍ഗെറ്റ് ലിസ്റ്റ് നേടാനായില്ല",
"Unable to join network": "നെറ്റ്‍വര്‍ക്കില്‍ ജോയിന്‍ ചെയ്യാന്‍ കഴിയില്ല",
"Unable to look up room ID from server": "സെര്‍വറില്‍ നിന്നും റൂം ഐഡി കണ്ടെത്താനായില്ല",
@ -139,7 +127,6 @@
"You cannot delete this image. (%(code)s)": "നിങ്ങള്‍ക്ക് ഈ ചിത്രം നീക്കം ചെയ്യാനാകില്ല. (%(code)s)",
"You cannot delete this message. (%(code)s)": "നിങ്ങള്‍ക്ക് ഈ സന്ദേശം നീക്കം ചെയ്യാനാകില്ല. (%(code)s)",
"You are not receiving desktop notifications": "നിങ്ങള്‍ക്ക് ഇപ്പോള്‍ ഡെസ്ക്ടോപ്പ് നോട്ടിഫിക്കേഷനുകള്‍ ലഭിക്കുന്നില്ല",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "നിങ്ങള്‍ റയട്ട് ചെയ്യുന്നത് അതിഥി ആയാണ്. കൂടുതല്‍ റൂമുകള്‍ക്കും ഫീച്ചറുകള്‍ക്കും <a>റെജിസ്റ്റര്‍</a> ചെയ്യുകയോ <a>സൈന്‍ ഇന്‍</a> ചെയ്യുകയോ ചെയ്യുക !",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "ഇവ റയട്ടല്ലാതെ മറ്റൊരു ക്ലയന്റില്‍ വച്ച് കോണ്‍ഫിഗര്‍ ചെയ്തതാകാം. റയട്ടില്‍ അവ ലഭിക്കില്ല, എങ്കിലും അവ നിലവിലുണ്ട്",
"Sunday": "ഞായര്‍",
"Monday": "തിങ്കള്‍",
@ -153,11 +140,10 @@
"OK": "ശരി",
"Warning": "മുന്നറിയിപ്പ്",
"Checking for an update...": "അപ്ഡേറ്റ് ഉണ്ടോ എന്ന് തിരയുന്നു...",
"Error encountered (%(errorDetail)s).": "എറര്‍ നേരിട്ടു (%errorDetail)s).",
"Error encountered (%(errorDetail)s).": "എറര്‍ നേരിട്ടു (%(errorDetail)s).",
"No update available.": "അപ്ഡേറ്റുകള്‍ ലഭ്യമല്ല.",
"Downloading update...": "അപ്ഡേറ്റ് ഡൌണ്‍ലോഡ് ചെയ്യുന്നു...",
"You need to be using HTTPS to place a screen-sharing call.": "സ്ക്രീന്‍ ഷെയറിങ്ങ് കോള്‍ നടത്തണമെങ്കില്‍ https ഉപയോഗിക്കണം.",
"Welcome page": "സ്വാഗതം",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "നിങ്ങളുടെ ഇപ്പോളത്തെ ബ്രൌസര്‍ റയട്ട് പ്രവര്‍ത്തിപ്പിക്കാന്‍ പൂര്‍ണമായും പര്യാപത്മല്ല. പല ഫീച്ചറുകളും പ്രവര്‍ത്തിക്കാതെയിരിക്കാം. ഈ ബ്രൌസര്‍ തന്നെ ഉപയോഗിക്കണമെങ്കില്‍ മുന്നോട്ട് പോകാം. പക്ഷേ നിങ്ങള്‍ നേരിടുന്ന പ്രശ്നങ്ങള്‍ നിങ്ങളുടെ ഉത്തരവാദിത്തത്തില്‍ ആയിരിക്കും!",
"Welcome to Riot.im": "റയട്ടിലേക്ക് സ്വാഗതം",
"Search the room directory": "റൂം ഡയറക്റ്ററിയില്‍ പരതുക",
@ -204,5 +190,7 @@
"Implementing VR services with Matrix": "മട്രിക്സ് ഉപയോഗിച്ചു വി.അർ. സർവീസുകൾ നടപ്പിലാക്കുന്നു",
"Implementing VoIP services with Matrix": "മേട്രിക്സിന്മേൽ VoIP സർവീസുകൾ നടപ്പിലാക്കുന്നു",
"Discussion of the Identity Service API": "ഐഡൻടിറ്റി സർവീസ് എപിഐ യെ പറ്റിയുള്ള ചർച്ച",
"Notifications on the following keywords follow rules which cant be displayed here:": "ഈ പറയുന്ന കീവേർഡുകളെ പറ്റിയുള്ള അറിയിപ്പുകൾ പിൻതുടരുന്ന നിയമങ്ങൾ ഇവിടെ കാണിക്കുവാൻ സാധ്യമല്ല:"
"Notifications on the following keywords follow rules which cant be displayed here:": "ഈ പറയുന്ന കീവേർഡുകളെ പറ്റിയുള്ള അറിയിപ്പുകൾ പിൻതുടരുന്ന നിയമങ്ങൾ ഇവിടെ കാണിക്കുവാൻ സാധ്യമല്ല:",
"Back": "തിരികെ",
"Bug report sent": "ബഗ് റിപ്പോർട്ട് അയയ്ക്കുക"
}

View File

@ -8,7 +8,6 @@
"Cancel Sending": "Avbryt sending",
"Can't update user notification settings": "Kan ikke oppdatere brukervarsel innstillinger",
"Close": "Lukk",
"Create new room": "Opprett nytt rom",
"Couldn't find a matching Matrix room": "Kunne ikke finne et samsvarende Matrix rom",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> og <a href=\"http://opera.com\">Opera</a> fungerer også.",
"Call invitation": "Anropsinvitasjon",
@ -20,7 +19,6 @@
"Direct Chat": "Direkte Chat",
"Directory": "Katalog",
"Download this file": "Last ned filen",
"Drop here %(toAction)s": "Dra hit %(toAction)s",
"Enable audible notifications in web client": "Aktiver lyd-varsel i webklient",
"Enable desktop notifications": "Aktiver skrivebordsvarsler",
"Enable email notifications": "Aktiver e-postvarsler",
@ -31,14 +29,12 @@
"Error saving email notification preferences": "Feil ved lagring av e-postvarselinnstillinger",
"#example": "#eksempel",
"Expand panel": "Utvid panel",
"Failed to": "Feilet å",
"Failed to add tag %(tagName)s to room": "Kunne ikke legge til tagg %(tagName)s til rom",
"Failed to change settings": "Kunne ikke endre innstillingene",
"Failed to forget room %(errCode)s": "Kunne ikke glemme rommet %(errCode)s",
"Failed to update keywords": "Kunne ikke oppdatere nøkkelord",
"Failed to get protocol list from Home Server": "Kunne ikke hente protokolliste fra Hjemme-Server",
"Failed to get public room list": "Kunne ikke hente offentlig romliste",
"Failed to join the room": "Kunne ikke bli med på rommet",
"Failed to remove tag %(tagName)s from room": "Kunne ikke fjerne tagg %(tagName)s fra rommet",
"Failed to set direct chat tag": "Kunne ikke angi direkte chat-tagg",
"Failed to set Direct Message status of room": "Kunne ikke angi status for direkte melding i rommet",
@ -47,9 +43,7 @@
"Files": "Filer",
"Filter room names": "Filtrer romnavn",
"Forget": "Glem",
" from room": " fra rommet",
"Guests can join": "Gjester kan bli med",
"Guest users can't invite users. Please register to invite.": "Gjester kan ikke invitere brukere. Vennligst registrer deg for å invitere.",
"I understand the risks and wish to continue": "Jeg forstår risikoen og ønsker å fortsette",
"Invite to this room": "Inviter til dette rommet",
"Keywords": "Nøkkelord",
@ -73,10 +67,8 @@
"On": "På",
"Permalink": "Permanent lenke",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Vennligst installer <a href=\"https://www.google.com/chrome\">Chrome</a> eller <a href=\"https://getfirefox.com\">Firefox</a> for den beste opplevelsen.",
"Please Register": "Vennligst registrer deg",
"powered by Matrix": "benytter seg av Matrix",
"Quote": "Sitat",
"Redact": "Maskere",
"Reject": "Avvis",
"Remove %(name)s from the directory?": "Fjern %(name)s fra katalogen?",
"Remove": "Fjern",
@ -85,18 +77,13 @@
"Resend": "Send på nytt",
"Riot does not know how to join a room on this network": "Riot vet ikke hvordan man kan komme inn på et rom på dette nettverket",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot benytter mange avanserte nettleserfunksjoner, og noen av disse er ikke tilgjengelige eller er eksperimentelle på din nåværende nettleser.",
"Room directory": "Rom katalog",
"Room not found": "Rommet ble ikke funnet",
"Search for a room": "Søk etter et rom",
"Settings": "Innstillinger",
"Source URL": "Kilde URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Beklager, din nettleser er <b>ikke</b> i stand til å kjøre Riot.",
"Start chat": "Start chat",
"The Home Server may be too old to support third party networks": "Hjemme-serveren kan være for gammel til å støtte tredjeparts-nettverk",
"There are advanced notifications which are not shown here": "Det er avanserte varsler som ikke vises her",
"The server may be unavailable or overloaded": "Serveren kan være utilgjengelig eller overbelastet",
"This room is inaccessible to guests. You may be able to join if you register.": "Dette rommet er ikke tilgjengelig for gjester. Du kan kanskje komme inn om du registrerer deg.",
" to room": " til rom",
"Unable to fetch notification target list": "Kunne ikke hente varsel-mål liste",
"Unable to join network": "Kunne ikke bli med i nettverket",
"Unable to look up room ID from server": "Kunne ikke slå opp rom-ID fra serveren",
@ -107,7 +94,7 @@
"View Decrypted Source": "Vis dekryptert kilde",
"View Source": "Vis kilde",
"When I'm invited to a room": "Når jeg blir invitert til et rom",
"World readable": "Verden lesbar",
"World readable": "Lesbar for alle",
"You cannot delete this image. (%(code)s)": "Du kan ikke slette dette bildet. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Du kan ikke slette denne meldingen. (%(code)s)",
"You are not receiving desktop notifications": "Du mottar ikke skrivebords varsler",
@ -120,6 +107,5 @@
"Friday": "Fredag",
"Saturday": "Lørdag",
"Today": "I dag",
"Yesterday": "I går",
"Welcome page": "Velkomst side"
"Yesterday": "I går"
}

1
src/i18n/strings/ne.json Normal file
View File

@ -0,0 +1 @@
{}

View File

@ -9,7 +9,6 @@
"Cancel Sending": "Versturen annuleren",
"Can't update user notification settings": "Het is niet gelukt om de meldingsinstellingen van de gebruiker bij te werken",
"Close": "Sluiten",
"Create new room": "Een nieuwe kamer maken",
"Couldn't find a matching Matrix room": "Het is niet gelukt om een bijbehorende Matrix-kamer te vinden",
"Custom Server Options": "Aangepaste serverinstellingen",
"customServer_text": "U kunt de aangepaste serverinstellingen gebruiken om in te loggen bij andere Matrix-servers door een andere homeserver-URL in te voeren.<br/>Dit maakt het mogelijk om Riot te gebruiken met een bestaand Matrix-account op een andere homeserver.<br/><br/>U kunt ook een aangepaste identiteitsserver instellen, maar het is dan niet mogelijk om gebruikers uit te nodigen met behulp van een e-mailadres of zelf uitgenodigd te worden met een e-mailadres.",
@ -28,14 +27,12 @@
"Error": "Fout",
"Error saving email notification preferences": "Fout bij het opslaan van de meldingsvoorkeuren voor e-mail",
"#example": "#voorbeeld",
"Failed to": "Mislukt om",
"Failed to add tag %(tagName)s to room": "Mislukt om de label %(tagName)s aan de kamer toe te voegen",
"Failed to change settings": "Instellingen wijzigen mislukt",
"Failed to forget room %(errCode)s": "Ruimte vergeten mislukt %(errCode)s",
"Failed to update keywords": "Trefwoorden bijwerken mislukt",
"Failed to get protocol list from Home Server": "Protocollijst ophalen van de homeserver mislukt",
"Failed to get public room list": "Lijst met publieke kamers ophalen mislukt",
"Failed to join the room": "Kamer binnengaan mislukt",
"Failed to remove tag %(tagName)s from room": "Label %(tagName)s van de kamer verwijderen mislukt",
"Failed to set direct chat tag": "Het is mislukt om het privéchatlabel weg te halen",
"Favourite": "Favoriet",
@ -43,9 +40,7 @@
"Files": "Bestanden",
"Filter room names": "Filter kamernamen",
"Forget": "Vergeten",
" from room": " van kamer",
"Guests can join": "Gasten kunnen deelnemen",
"Guest users can't invite users. Please register to invite.": "Gasten kunnen geen gebruikers uitnodigen. Om anderen uit te nodigen zult u zich moeten registreren.",
"Invite to this room": "Uitnodigen voor deze kamer",
"Keywords": "Trefwoorden",
"Leave": "Verlaten",
@ -70,7 +65,6 @@
"On": "Aan",
"Operation failed": "Actie mislukt",
"Permalink": "Permanente link",
"Please Register": "Registreer Alstublieft",
"powered by Matrix": "mogelijk gemaakt door Matrix",
"Quote": "Citeer",
"Reject": "Afwijzen",
@ -80,17 +74,12 @@
"Remove from Directory": "Uit de kamerlijst verwijderen",
"Resend": "Opnieuw verzenden",
"Riot does not know how to join a room on this network": "Riot weet niet hoe het moet deelnemen in een kamer op dit netwerk",
"Room directory": "Kamerlijst",
"Room not found": "De kamer is niet gevonden",
"Search for a room": "Een kamer opzoeken",
"Settings": "Instellingen",
"Source URL": "Bron-URL",
"Start chat": "Gesprek starten",
"The Home Server may be too old to support third party networks": "De home server is misschien te oud om netwerken van derde partijen te ondersteunen",
"The Home Server may be too old to support third party networks": "De thuisserver is misschien te oud om netwerken van derde partijen te ondersteunen",
"There are advanced notifications which are not shown here": "Er zijn geavanceerde notificaties die hier niet getoond worden",
"The server may be unavailable or overloaded": "De server is misschien niet beschikbaar of overbelast",
"This room is inaccessible to guests. You may be able to join if you register.": "Deze kamer is niet toegankelijk voor gasten. Je zou misschien kunnen deelnemen als je geregistreerd bent.",
" to room": " naar kamer",
"Unable to fetch notification target list": "Het is mislukt om de lijst van notificatiedoelen op te halen",
"Unable to join network": "Het is mislukt om toe te treden tot dit netwerk",
"Unable to look up room ID from server": "Het is mislukt om de kamer-ID op te halen van de server",
@ -115,10 +104,7 @@
"Saturday": "Zaterdag",
"Today": "Vandaag",
"Yesterday": "Gisteren",
"Welcome page": "Welkomstpagina",
"Drop here %(toAction)s": "%(toAction)s hier naartoe verplaatsen",
"Failed to set Direct Message status of room": "Het is mislukt om de directe-berichtenstatus van de kamer in te stellen",
"Redact": "Redigeren",
"A new version of Riot is available.": "Er is een nieuwe versie van Riot beschikbaar.",
"All Rooms": "Alle kamers",
"Cancel": "Annuleren",
@ -154,7 +140,6 @@
"What's New": "Wat is er nieuw",
"What's new?": "Wat is er nieuw?",
"Waiting for response from server": "Wachten op antwoord van de server",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "U gebruikt Riot als gast. <a>Registreren</a> of <a>aanmelden</a> om voor meer kamers en functies!",
"OK": "OK",
"You need to be using HTTPS to place a screen-sharing call.": "U moet HTTPS gebruiken om een oproep met schermdelen te kunnen starten.",
"Welcome to Riot.im": "Welkom bij Riot.im",
@ -196,15 +181,29 @@
"Discussion of the Identity Service API": "Discussie over de Identity Service API",
"Support for those using, running and writing other bridges": "Ondersteuning voor het gebruiken, draaien en ontwikkelen aan andere bruggen",
"Dev chat for the Riot/Web dev team": "Dev-chat voor het Riot/Web ontwikkelteam",
"Dev chat for the Dendrite dev team": "Dev-chat voor het Dendrite ontwikkelteam",
"Dev chat for the Dendrite dev team": "Dev-chat voor het Dendrite-ontwikkelteam",
"You have successfully set a password and an email address!": "Het instellen van een wachtwoord en e-mailadres is geslaagd!",
"Remember, you can always set an email address in user settings if you change your mind.": "Onthoud dat u altijd een e-mailadres in kan stellen in de gebruikersinstellingen als u zich bedenkt.",
"Warning": "Waarschuwing",
"Checking for an update...": "Aan het kijken voor een update...",
"Error encountered (%(errorDetail)s).": "Fout ondervonden (%errorDetail)s).",
"Error encountered (%(errorDetail)s).": "Fout ondervonden (%(errorDetail)s).",
"No update available.": "Geen update beschikbaar.",
"Downloading update...": "Update aan het downloaden...",
"To return to your account in future you need to <u>set a password</u>": "Om in de toekomst naar je account terug te gaan moet je <u>een wachtwoord instellen</u>",
"Set Password": "Wachtwoord instellen",
"Couldn't load home page": "Kon de home pagina niet laden"
"Couldn't load home page": "Kon de home pagina niet laden",
"Bug report sent": "Bug report verzonden",
"Thank you!": "Bedankt!",
"Back": "Terug",
"Failed to send custom event.": "Aangepast Event verzenden mislukt.",
"Send Custom Event": "Verzend aangepast evenement",
"Send Custom State Event": "Verzend aangepast State Event",
"Developer Tools": "Ontwikkelaarsgereedschap",
"Filter results": "Resultaten filteren",
"Explore Room State": "Verken Ruimtetoestand",
"You must specify an event type!": "Je moet een event-type specificeren!",
"Event sent!": "Event verstuurd!",
"Event Type": "Event-type",
"Event Content": "Event-inhoud",
"State Key": "Toestandssleutel"
}

View File

@ -17,26 +17,21 @@
"Close": "Zamknij",
"Collecting app version information": "Zbieranie informacji o wersji aplikacji",
"Collecting logs": "Zbieranie dzienników",
"Create new room": "Utwórz nowy pokój",
"Couldn't find a matching Matrix room": "Nie można znaleźć pasującego pokoju Matrix",
"Custom Server Options": "Niestandardowe opcje serwera",
"delete the alias.": "usunąć alias.",
"Describe your problem here.": "Opisz swój problem tutaj.",
"Directory": "Księga adresowa",
"Download this file": "Pobierz plik",
"Welcome page": "Strona powitalna",
"Riot is not supported on mobile web. Install the app?": "Riot nie jest obsługiwany przez przeglądarki mobilne. Zainstaluj aplikację?",
"Room directory": "Spis pokojów",
"Search": "Szukaj",
"Search…": "Szukaj…",
"Search for a room": "Szukaj pokoju",
"Send": "Wyślij",
"Settings": "Ustawienia",
"Collapse panel": "Ukryj panel",
"customServer_text": "Możesz używać opcji serwera niestandardowego do logowania się na inne serwery Matrix, określając inny adres URL serwera domowego.<br/>Pozwala to na wykorzystanie Riot z istniejącym kontem Matrix na innym serwerze domowym.<br/><br/>Można również ustawić niestandardowy serwer tożsamości, ale nie będzie można zapraszać użytkowników adresem e-mail, ani być zaproszonym przez adres e-mailowy.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Usuń alias %(alias)s i usuń %(name)s z katalogu?",
"Dismiss": "Zdymisjonować",
"Drop here %(toAction)s": "Upuść tutaj %(toAction)s",
"Dismiss": "Zamknij",
"Enable audible notifications in web client": "Włącz dźwiękowe powiadomienia w kliencie internetowym",
"Enable email notifications": "Włącz powiadomienia e-mailowe",
"Enable notifications for this account": "Włącz powiadomienia na tym koncie",
@ -46,14 +41,12 @@
"Error saving email notification preferences": "Wystąpił błąd podczas zapisywania ustawień powiadomień e-mailowych",
"#example": "#przykład",
"Expand panel": "Rozwiń panel",
"Failed to": "Nie udało się",
"Failed to add tag %(tagName)s to room": "Nie można dodać tagu %(tagName)s do pokoju",
"Failed to change settings": "Nie udało się zmienić ustawień",
"Failed to forget room %(errCode)s": "Nie mogłem zapomnieć o pokoju %(errCode)s",
"Failed to update keywords": "Nie udało się zaktualizować słów kluczowych",
"Failed to get protocol list from Home Server": "Nie można pobrać listy protokołów z serwera domowego",
"Failed to get public room list": "Nie udało się uzyskać publicznej listy pokojowej",
"Failed to join the room": "Nie udało się dołączyć do pokoju",
"Failed to remove tag %(tagName)s from room": "Nie udało się usunąć tagu %(tagName)s z pokoju",
"Failed to send report: ": "Nie udało się wysłać raportu: ",
"Favourite": "Ulubiony",
@ -61,7 +54,6 @@
"Filter room names": "Filtruj nazwy pokojów",
"Forget": "Zapomnij",
"Forward Message": "Przekaż wiadomość",
" from room": " z pokoju",
"Guests can join": "Goście mogą dołączyć",
"Hide panel": "Ukryj panel",
"I understand the risks and wish to continue": "Rozumiem ryzyko i chęć kontynuować",
@ -76,7 +68,6 @@
"Messages sent by bot": "Wiadomości wysłane przez bota",
"more": "więcej",
"Enable desktop notifications": "Włącz powiadomienia",
"Guest users can't invite users. Please register to invite.": "Gość nie ma uprawnień dow wysyłania zaproszeń. Proszę się zarejestrować.",
"(HTTP status %(httpStatus)s)": "(status HTTP %(httpStatus)s)",
"Leave": "Opuść",
"Login": "Logowanie",
@ -94,7 +85,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Proszę opisz problem (w miarę możliwości po angielsku). Co doprowadziło do błędu? Jakie było Twoje oczekiwanie, a co stało się zamiast tego?",
"Please describe the bug and/or send logs.": "Proszę opisz błąd i/lub wyślij logi.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Zainstaluj proszę <a href=\"https://www.google.com/chrome\">Chrome</a> lub <a href=\"https://getfirefox.com\">Firefox</a>.",
"Please Register": "Proszę się zarejestrować",
"Quote": "Cytat",
"Remove %(name)s from the directory?": "Usunąć %(name)s z katalogu?",
"Remove from Directory": "Usuń z katalogu",
@ -106,9 +96,7 @@
"Room not found": "Pokój nie znaleziony",
"Send logs": "Wyślij logi",
"Sorry, your browser is <b>not</b> able to run Riot.": "Przepraszamy, Twoja przeglądarka <b>nie jest w stanie</b> uruchomić Riot.",
"Start chat": "Rozpocznij rozmowę",
"powered by Matrix": "napędzany przez Matrix",
"Redact": "Zredaguj",
"Reject": "Odrzuć",
"Remove": "Usuń",
"remove %(name)s from the directory.": "usuń %(name)s z katalogu.",
@ -116,7 +104,6 @@
"There are advanced notifications which are not shown here": "Masz zaawansowane powiadomienia, nie pokazane tutaj",
"The server may be unavailable or overloaded": "Serwer jest nieosiągalny lub jest przeciążony",
"This Room": "Ten pokój",
"This room is inaccessible to guests. You may be able to join if you register.": "Ten pokój jest niedostępny dla gości. Możliwe, że będziesz mógł dołączyć po rejestracji.",
"Unable to join network": "Nie można dołączyć do sieci",
"Unable to look up room ID from server": "Nie można wyszukać ID pokoju na serwerze",
"Unavailable": "Niedostępny",
@ -135,7 +122,6 @@
"Off": "Wyłącz",
"On": "Włącz",
"Source URL": "Źródłowy URL",
" to room": " do pokoju",
"Unable to fetch notification target list": "Nie można pobrać listy docelowej dla powiadomień",
"View Decrypted Source": "Pokaż zdeszyfrowane źródło",
"View Source": "Pokaż źródło",
@ -147,7 +133,6 @@
"You cannot delete this image. (%(code)s)": "Nie możesz usunąć tego obrazka. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Nie możesz usunąć tej wiadomości. (%(code)s)",
"You are not receiving desktop notifications": "Nie otrzymujesz powiadomień na pulpit",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "You are Rioting jako gość. <a>Zarejestruj się</a> albo <a>zaloguj się</a> aby uzyskać dostęp do pokojów lub dodatkowych możliwości!",
"Sunday": "Niedziela",
"Monday": "Poniedziałek",
"Tuesday": "Wtorek",
@ -205,5 +190,29 @@
"Warning": "Ostrzeżenie",
"Error encountered (%(errorDetail)s).": "Wystąpił błąd (%(errorDetail)s).",
"Downloading update...": "Pobieranie aktualizacji...",
"Checking for an update...": "Sprawdzanie aktualizacji..."
"Checking for an update...": "Sprawdzanie aktualizacji...",
"Couldn't load home page": "Nie można załadować strony startowej",
"Bug report sent": "Raport błędu wysłany",
"Thank you!": "Dziękujemy!",
"Back": "Powrót",
"Developer Tools": "Narzędzia programistyczne",
"Failed to send custom event.": "Wysyłanie niestandardowego wydarzenia nie powiodło się.",
"Filter results": "Filtruj wyniki",
"Send Custom Event": "Wyślij niestandardowe wydarzenie",
"Send Custom State Event": "Wyślij wydarzenie o niestandardowym stanie",
"Explore Room State": "Przeglądaj stan pokoju",
"You must specify an event type!": "Musisz określić typ wydarzenia!",
"Event sent!": "Wydarzenie wysłane!",
"Event Type": "Typ wydarzenia",
"Event Content": "Zawartość wydarzenia",
"State Key": "Klucz stanu",
"Toolbox": "Przybornik",
"Edit": "Edycja",
"Show message in desktop notification": "Pokaż wiadomość w notyfikacji na pulpicie",
"Unpin Message": "Odepnij Wiadomość",
"Pin Message": "Przypnij Wiadomość",
"Register": "Rejestracja",
"Rooms": "Pokoje",
"Invite to this community": "Zaproś do tej społeczności",
"Add rooms to this community": "Dodaj pokoje do tej społeczności"
}

View File

@ -7,7 +7,6 @@
"Cancel Sending": "Cancelar o envio",
"Can't update user notification settings": "Não é possível atualizar as preferências de notificação",
"Close": "Fechar",
"Create new room": "Criar nova sala",
"Couldn't find a matching Matrix room": "Não foi possível encontrar uma sala correspondente no servidor Matrix",
"Custom Server Options": "Opções para Servidor Personalizado",
"delete the alias.": "apagar o apelido da sala.",
@ -16,7 +15,6 @@
"Directory": "Diretório",
"Dismiss": "Descartar",
"Download this file": "Transferir este ficheiro",
"Drop here %(toAction)s": "Arraste aqui para %(toAction)s",
"Enable audible notifications in web client": "Ativar notificações de áudio no cliente web",
"Enable desktop notifications": "Ativar notificações no desktop",
"Enable email notifications": "Ativar notificações por e-mail",
@ -25,16 +23,12 @@
"Enter keywords separated by a comma:": "Insira palavras-chave separadas por vírgula:",
"Error": "Erro",
"Error saving email notification preferences": "Erro ao guardar as preferências de notificação por e-mail",
"#example:": "#exemplo",
"Failed to": "Falha ao",
"Failed to add tag %(tagName)s to room": "Falha ao adicionar %(tagName)s à sala",
"Failed to change settings": "Falha ao alterar as configurações",
"Failed to forget room %(errCode)s": "Falha ao esquecer a sala %(errCode)s",
"Failed to update keywords": "Falha ao atualizar as palavras-chave",
"Failed to get protocol list from Home Server": "Falha ao obter a lista de protocolos do servidor padrão",
"Failed to get public room list": "Falha ao obter a lista de salas públicas",
"Failed to join the room": "Falha ao entrar na sala",
"Failed to remove tag %(tag)s from room": "Falha ao remover a palavra-chave %(tag)s da sala",
"Failed to set direct chat tag": "Falha ao definir conversa como pessoal",
"Failed to set Direct Message status of room": "Falha em definir a mensagem de status da sala",
"Favourite": "Favorito",
@ -43,9 +37,7 @@
"Filter room names": "Filtrar salas por título",
"Forget": "Esquecer",
"Forward Message": "Encaminhar",
" from room": " da sala",
"Guests can join": "Convidados podem entrar",
"Guest users can't invite users. Please register to invite.": "Utilizadores convidados não podem convidar utilizadores. Por favor registe-se para convidar.",
"Invite to this room": "Convidar para esta sala",
"Keywords": "Palavras-chave",
"Leave": "Sair",
@ -70,10 +62,8 @@
"On": "Ativado",
"Operation failed": "A operação falhou",
"Permalink": "Link permanente",
"Please Register": "Por favor registe-se",
"powered by Matrix": "rodando a partir do Matrix",
"Quote": "Citar",
"Redact": "Remover",
"Reject": "Rejeitar",
"Remove": "Remover",
"Remove %(name)s from the directory?": "Remover %(name)s da lista pública de salas?",
@ -81,17 +71,12 @@
"Remove from Directory": "Remover da lista pública de salas",
"Resend": "Reenviar",
"Riot does not know how to join a room on this network": "O Riot não sabe como entrar numa sala nesta rede",
"Room directory": "Lista de salas públicas",
"Room not found": "Sala não encontrada",
"Search for a room": "Pesquisar por uma sala",
"Settings": "Configurações",
"Source URL": "URL fonte",
"Start chat": "Iniciar conversa",
"The Home Server may be too old to support third party networks": "O servidor pode ser muito antigo para suportar redes de terceiros",
"There are advanced notifications which are not shown here": "Existem notificações avançadas que não são exibidas aqui",
"The server may be unavailable or overloaded": "O servidor pode estar inacessível ou sobrecarregado",
"This room is inaccessible to guests. You may be able to join if you register.": "Esta sala é inacessível para convidados. Poderá conseguir entrar caso se registe.",
" to room": " para sala",
"Unable to fetch notification target list": "Não foi possível obter a lista de alvos de notificação",
"Unable to join network": "Não foi possível juntar-se à rede",
"Unable to look up room ID from server": "Não foi possível obter a identificação da sala do servidor",
@ -99,7 +84,7 @@
"unknown error code": "código de erro desconhecido",
"Unnamed room": "Sala sem nome",
"Uploaded on %(date)s by %(user)s": "Enviada em %(date)s por %(user)s",
"View Decrypted Source": "Ver a fonte decifrada",
"View Decrypted Source": "Ver a fonte desencriptada",
"View Source": "Ver a fonte",
"When I'm invited to a room": "Quando sou convidado para uma sala",
"World readable": "Público",
@ -118,7 +103,6 @@
"Yesterday": "Ontem",
"#example": "#exemplo",
"Failed to remove tag %(tagName)s from room": "Não foi possível remover a marcação %(tagName)s desta sala",
"Welcome page": "Página de boas-vindas",
"Advanced notification settings": "Configurações avançadas de notificação",
"customServer_text": "Pode usar as opções de servidor personalizado para entrar noutros servidores Matrix especificando para isso um URL de outro Servidor de Base.<br/> Isto permite que use o Riot com uma conta Matrix que exista noutro Servidor de Base.<br/> <br/> Também pode configurar um servidor de Identidade personalizado mas não poderá convidar utilizadores através do endereço de e-mail, ou ser convidado pelo seu endereço de e-mail.",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> e <a href=\"http://opera.com\">Opera</a> também funcionam.",
@ -160,7 +144,66 @@
"What's New": "Novidades",
"What's new?": "O que há de novo?",
"Waiting for response from server": "À espera de resposta do servidor",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Está a usar o Riot como convidado. <a>Registe-se</a> ou <a>faça login</a> para aceder a mais salas e funcionalidades!",
"OK": "Ok",
"You need to be using HTTPS to place a screen-sharing call.": "Necessita de estar a usar HTTPS para poder iniciar uma chamada com partilha de ecrã."
"You need to be using HTTPS to place a screen-sharing call.": "Necessita de estar a usar HTTPS para poder iniciar uma chamada com partilha de ecrã.",
"No update available.": "Nenhuma atualização disponível.",
"Welcome to Riot.im": "Bem-vindo ao Riot.im",
"Login": "Entrar",
"Warning": "Aviso",
"Checking for an update...": "A procurar uma atualização...",
"Error encountered (%(errorDetail)s).": "Erro encontrado (%(errorDetail)s).",
"Downloading update...": "A transferir atualização...",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Chat descentralizado, encriptado &amp; colaborativo alimentado por [matrix]",
"Back": "Voltar",
"Bug report sent": "Relatório de erros enviado",
"Developer Tools": "Ferramentas de desenvolvedor",
"Failed to send custom event.": "Falha ao enviar evento personalizado.",
"(HTTP status %(httpStatus)s)": "(Estado HTTP %(httpStatus)s)",
"Send Custom Event": "Enviar evento personalizado",
"Send Custom State Event": "Enviar evento personalizado de estado",
"Explore Room State": "Explorar estado da sala",
"Thank you!": "Obrigado!",
"Event sent!": "Evento enviado!",
"Event Type": "Tipo de evento",
"Event Content": "Conteúdo do evento",
"State Key": "Chave de estado",
"Search the room directory": "Procurar o diretório de salas",
"Chat with Riot Bot": "Falar com o Bot do Riot",
"Get started with some tips from Riot Bot!": "Comece com algumas dicas do Bot do Riot",
"General discussion about Matrix and Riot": "Discussão geral acerca do Matrix e do Riot",
"Discussion of all things Matrix!": "Discussão de tudo o que envolva o Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"Matrix technical discussions": "Discussões técnicas do Matrix",
"Running Matrix services": "Correr serviços do Matrix",
"Community-run support for Synapse": "Suporte da comunidade para o Synapse",
"Admin support for Dendrite": "Suporte de administração para o Dendrite",
"Announcements about Synapse releases": "Anúncios acerca de lançamentos do Synapse",
"Support for those using and running matrix-appservice-irc": "Suporte para aqueles a correr e a utilizar o matrix-appservice-irc",
"Building services on Matrix": "Construir serviços no Matrix",
"Support for those using the Matrix spec": "Suporte para os utilizadores da especificação do Matrix",
"Design and implementation of E2E in Matrix": "Design e implementação de encriptação ponto-a-ponto (E2E) no Matrix",
"Implementing VR services with Matrix": "Implementar serviços de realidade virtual (VR) com o Matrix",
"Implementing VoIP services with Matrix": "Implementar serviços VoIP com o Matrix",
"Discussion of the Identity Service API": "Discussão da API do serviço de identidade",
"Support for those using, running and writing other bridges": "Suporte para aqueles a usar, correr e desenvolver outras pontes (bridges)",
"Contributing code to Matrix and Riot": "Contribuir código para o Matrix e para o Riot",
"Dev chat for the Riot/Web dev team": "Conversa de desenvolvimento para a equipa do Riot/Web",
"Dev chat for the Dendrite dev team": "Conversa de desenvolvimento para a equipa do Dendrite",
"Co-ordination for Riot/Web translators": "Coordenação para a equipa de tradutores do Riot/Web",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Já existem muitas salas no Matrix, ligadas a redes já existentes (Slack, IRC, Gitter, etc) ou independentes. Dê uma vista de olhos no diretório!",
"Failed to change password. Is your password correct?": "Falha ao alterar a palavra-passe. A sua palavra-passe está correta?",
"You have successfully set a password!": "Palavra-passe definida com sucesso!",
"You can now return to your account after signing out, and sign in on other devices.": "Pode agora voltar à sua conta no fim de terminar sessão, e iniciar sessão noutros dispositivos.",
"Continue": "Continuar",
"Please set a password!": "Por favor, defina uma palavra-passe!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Isto irá permitir-lhe voltar à sua conta depois de terminar sessão, assim como iniciar sessão noutros dispositivos.",
"You have successfully set a password and an email address!": "Palavra passe e endereço de e-mail definidos com sucesso!",
"Remember, you can always set an email address in user settings if you change your mind.": "Lembre-se, pode sempre definir um endereço de e-mail nas definições de utilizador se mudar de ideias.",
"To return to your account in future you need to <u>set a password</u>": "Para voltar à sua conta no futuro, necessita de <u>definir uma palavra-passe</u>",
"Set Password": "Definir palavra-passe",
"Couldn't load home page": "Não foi possível carregar a página inicial",
"Filter results": "Filtrar resultados",
"You must specify an event type!": "Tem que especificar um tipo de evento!"
}

View File

@ -7,7 +7,6 @@
"Cancel Sending": "Cancelar o envio",
"Can't update user notification settings": "Não é possível atualizar as preferências de notificação",
"Close": "Fechar",
"Create new room": "Criar nova sala",
"Couldn't find a matching Matrix room": "Não foi possível encontrar uma sala correspondente no servidor Matrix",
"Custom Server Options": "Opções para Servidor Personalizado",
"delete the alias.": "apagar o apelido da sala.",
@ -16,7 +15,6 @@
"Directory": "Diretório",
"Dismiss": "Descartar",
"Download this file": "Baixar este arquivo",
"Drop here %(toAction)s": "Arraste aqui %(toAction)s",
"Enable audible notifications in web client": "Ativar notificações de áudio no cliente web",
"Enable desktop notifications": "Ativar notificações no desktop",
"Enable email notifications": "Ativar notificações por email",
@ -25,16 +23,12 @@
"Enter keywords separated by a comma:": "Coloque cada palavras-chave separada por vírgula:",
"Error": "Erro",
"Error saving email notification preferences": "Erro ao salvar as preferências de notificação por email",
"#example:": "#exemplo",
"Failed to": "Falha ao",
"Failed to add tag %(tagName)s to room": "Falha ao adicionar %(tagName)s à sala",
"Failed to change settings": "Falhou ao mudar as preferências",
"Failed to forget room %(errCode)s": "Falhou ao esquecer a sala %(errCode)s",
"Failed to update keywords": "Falhou ao alterar as palavras-chave",
"Failed to update keywords": "Falha ao alterar as palavras-chave",
"Failed to get protocol list from Home Server": "Falha em acessar a lista de protocolos do servidor padrão",
"Failed to get public room list": "Falha ao acessar a lista pública de salas",
"Failed to join the room": "Falhou ao entrar na sala",
"Failed to remove tag %(tag)s from room": "Falha ao remover a palavra-chave %(tag)s da sala",
"Failed to set direct chat tag": "Falha ao definir conversa como pessoal",
"Failed to set Direct Message status of room": "Falha em definir a mensagem de status da sala",
"Favourite": "Favorito",
@ -43,9 +37,7 @@
"Filter room names": "Filtrar salas por título",
"Forget": "Esquecer",
"Forward Message": "Encaminhar",
" from room": " da sala",
"Guests can join": "Convidados podem entrar",
"Guest users can't invite users. Please register to invite.": "Usuários convidados não podem convidar outros usuários. Por gentileza se registre para enviar convites.",
"Invite to this room": "Convidar para esta sala",
"Keywords": "Palavras-chave",
"Leave": "Sair",
@ -70,10 +62,8 @@
"On": "Ativado",
"Operation failed": "A operação falhou",
"Permalink": "Link permanente",
"Please Register": "Por favor, cadastre-se",
"powered by Matrix": "rodando a partir do Matrix",
"Quote": "Citar",
"Redact": "Remover",
"Reject": "Rejeitar",
"Remove": "Remover",
"Remove %(name)s from the directory?": "Remover %(name)s da lista pública de salas?",
@ -81,21 +71,16 @@
"Remove from Directory": "Remover da lista pública de salas",
"Resend": "Reenviar",
"Riot does not know how to join a room on this network": "O sistema não sabe como entrar na sala desta rede",
"Room directory": "Lista pública de salas",
"Room not found": "Sala não encontrada",
"Search for a room": "Procurar por uma sala",
"Settings": "Configurações",
"Source URL": "URL fonte",
"Start chat": "Iniciar conversa pessoal",
"The Home Server may be too old to support third party networks": "O servidor pode ser muito antigo para suportar redes de terceiros",
"There are advanced notifications which are not shown here": "Existem opções avançadas que não são exibidas aqui",
"The server may be unavailable or overloaded": "O servidor pode estar inacessível ou sobrecarregado",
"This room is inaccessible to guests. You may be able to join if you register.": "Esta sala é inacessível para convidados. Você poderá entrar caso se registre.",
" to room": " para sala",
"Unable to fetch notification target list": "Não foi possível obter a lista de alvos de notificação",
"Unable to join network": "Não foi possível conectar na rede",
"Unable to look up room ID from server": "Não foi possível buscar identificação da sala no servidor",
"Unhide Preview": "Mostrar a pré-visualização novamente",
"Unhide Preview": "Mostrar a pré-visualização",
"unknown error code": "código de erro desconhecido",
"Unnamed room": "Sala sem nome",
"Uploaded on %(date)s by %(user)s": "Enviada em %(date)s por %(user)s",
@ -118,7 +103,6 @@
"Yesterday": "Ontem",
"#example": "#exemplo",
"Failed to remove tag %(tagName)s from room": "Não foi possível remover a marcação %(tagName)s desta sala",
"Welcome page": "Página de boas vindas",
"Advanced notification settings": "Configurações avançadas de notificação",
"customServer_text": "Você pode usar as opções de servidor personalizado para entrar em outros servidores Matrix, especificando uma URL de outro Servidor de Base.<br/> Isso permite que você use Riot com uma conta Matrix que exista em outro Servidor de Base.<br/> <br/> Você também pode configurar um servidor de Identidade personalizado, mas neste caso não poderá convidar usuárias(os) pelo endereço de e-mail, ou ser convidado(a) pelo seu endereço de e-mail.",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> e <a href=\"http://opera.com\">Opera</a> funcionam também.",
@ -160,12 +144,10 @@
"What's New": "Novidades",
"What's new?": "O que há de novidades?",
"Waiting for response from server": "Esperando por resposta do servidor",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Você está usando o Riot como visitante. <a>Registre-se</a> ou <a>faça login</a> para acessar mais salas e funcionalidades!",
"OK": "Ok",
"You need to be using HTTPS to place a screen-sharing call.": "Você precisa estar usando HTTPS para poder iniciar uma chamada com compartilhamento de tela.",
"Login": "Fazer login",
"Welcome to Riot.im": "Seja bem-vinda(o) a Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by": "Colaboração descentralizada e criptografada impulsada por",
"Search the room directory": "Buscar na lista pública de salas",
"Chat with Riot Bot": "Conversar com o Bot do Riot",
"Get started with some tips from Riot Bot!": "Comece com algumas dicas do Bot do Riot!",
@ -209,5 +191,19 @@
"Error encountered (%(errorDetail)s).": "Erro encontrado (%(errorDetail)s).",
"No update available.": "Não há atualizações disponíveis.",
"Downloading update...": "Baixando atualização...",
"Couldn't load home page": "Não foi possível carregar a página inicial"
"Couldn't load home page": "Não foi possível carregar a página inicial",
"Back": "Voltar",
"Bug report sent": "Relatório do bug enviado",
"Developer Tools": "Ferramentas do desenvolvedor",
"Failed to send custom event.": "Falha ao enviar evento personalizado.",
"Filter results": "Filtrar resultados",
"Send Custom Event": "Enviar Evento Customizado",
"Send Custom State Event": "Enviar Evento de Estado Personalizado",
"Explore Room State": "Explorar Estado da Sala",
"You must specify an event type!": "Você precisa especificar um tipo do evento!",
"Thank you!": "Obrigado!",
"Event sent!": "Evento enviado!",
"Event Type": "Tipo do Evento",
"Event Content": "Conteúdo do Evento",
"State Key": "Chave do Estado"
}

View File

@ -1,52 +1,41 @@
{
"Add an email address above to configure email notifications": "Добавьте email адрес для оповещений",
"All notifications are currently disabled for all targets.": "Все оповещения для всех устройств отключены.",
"An error occurred whilst saving your email notification preferences.": "Возникла ошибка при сохранении настроек оповещения по электронной почте.",
"and remove": "и удалить",
"An error occurred whilst saving your email notification preferences.": "Возникла ошибка при сохранении настроек оповещения по email.",
"Can't update user notification settings": "Не удается обновить пользовательские настройки оповещения",
"Create new room": "Создать новую комнату",
"Couldn't find a matching Matrix room": "Не удалось найти подходящую комнату Matrix",
"Custom Server Options": "Настраиваемые параметры сервера",
"delete the alias.": "удалить псевдоним.",
"Delete the room alias": "Удалить привязку комнаты",
"Direct Chat": "Прямой чат",
"Directory": "Каталог",
"Dismiss": "Отказ",
"Drop here to": "Перетащите сюда",
"Enable audible notifications in web client": "Включить звуковые уведомления в веб клиенте",
"Enable audible notifications in web client": "Включить звуковые уведомления в веб-клиенте",
"Enable desktop notifications": "Включить оповещения на рабочем столе",
"Enable email notifications": "Включить уведомления по электронной почте",
"Enable email notifications": "Включить уведомления по email",
"Enable notifications for this account": "Включить уведомления для этой учетной записи",
"Enable them now": "Включить сейчас",
"Enter keywords separated by a comma:": "Введите ключевые слова, разделенные запятой:",
"Error": "Ошибка",
"Error saving email notification preferences": "Ошибка при сохранении настроек уведомлений по электронной почте",
"Error saving email notification preferences": "Ошибка при сохранении настроек уведомлений по email",
"#example": "#пример",
"Failed to": "Не удалось",
"Failed to add tag ": "Не удалось добавить тег ",
"Failed to change settings": "Не удалось изменить настройки",
"Failed to update keywords": "Не удалось обновить ключевые слова",
"Failed to get protocol list from Home Server": "Не удалось получить список протоколов с домашнего сервера",
"Failed to get public room list": "Не удалось получить список общедоступных комнат",
"Failed to join the room": "Не удалось присоединиться к комнате",
"Failed to remove tag ": "Не удалось удалить тег ",
"Failed to set Direct Message status of room": "Не удалось установить статус прямого сообщения в комнате",
"Favourite": "Избранное",
"Fetching third party location failed": "Не удалось извлечь местоположение третьей стороны",
"Files": "Файлы",
"Filter room names": "Фильтр по названию комнат",
"Forget": "Забыть",
"from the directory": "из каталога",
" from room": " из комнаты",
"Guests can join": "Гости могут присоединиться",
"Guest users can't invite users. Please register to invite.": "Гости не могут приглашать пользователей. Пожалуйста, зарегистрируйтесь, чтобы отправить приглашение.",
"Invite to this room": "Пригласить в эту комнату",
"Invite to this room": "Пригласить в комнату",
"Keywords": "Ключевые слова",
"Leave": "Покинуть",
"Low Priority": "Низкий приоритет",
"Members": "Участники",
"No rooms to show": "Нет комнат для отображения",
"Noisy": "Громко",
"Noisy": "Со звуком",
"Notification targets": "Цели уведомления",
"Notifications": "Уведомления",
"Notifications on the following keywords follow rules which cant be displayed here:": "Уведомления по следующим ключевым словам соответствуют правилам, которые нельзя отобразить здесь:",
@ -55,23 +44,16 @@
"Off": "Выключить",
"On": "Включить",
"Operation failed": "Сбой операции",
"Please Register": "Пожалуйста, зарегистрируйтесь",
"powered by Matrix": "Основано на Matrix",
"Reject": "Отклонить",
"Remove": "Удалить",
"remove": "удалить",
"Remove from Directory": "Удалить из каталога",
"Riot does not know how to join a room on this network": "Riot не знает, как присоединиться к комнате, принадлежащей к этой сети",
"Room directory": "Каталог комнат",
"Room not found": "Комната не найдена",
"Search for a room": "Поиск комнаты",
"Settings": "Настройки",
"Start chat": "Начать чат",
"The Home Server may be too old to support third party networks": "Домашний сервер может быть слишком старым для поддержки сетей сторонних производителей",
"There are advanced notifications which are not shown here": "Существуют дополнительные уведомления, которые не показаны здесь",
"The server may be unavailable or overloaded": "Сервер, вероятно, недоступен или перегружен",
"This room is inaccessible to guests. You may be able to join if you register.": "Эта комната недоступна для гостей. Возможно, вы сможете присоединиться, если выполните регистрацию.",
" to room": " к комнате",
"Unable to fetch notification target list": "Не удалось получить список целей уведомления",
"Unable to join network": "Не удается подключиться к сети",
"Unable to look up room ID from server": "Не удалось найти ID комнаты на сервере",
@ -81,11 +63,10 @@
"You are not receiving desktop notifications": "Вы не получаете уведомления на рабочем столе",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Возможно вы настроили их не в Riot, а в другом Matrix-клиенте. Настроить их в Riot не удастся, но они будут в нем применяться",
"All messages": "Все сообщения",
"All messages (loud)": "Все сообщения (громко)",
"All messages (loud)": "Все сообщения (со звуком)",
"Cancel Sending": "Отменить отправку",
"Close": "Закрыть",
"Download this file": "Скачать этот файл",
"Drop here %(toAction)s": "Перетащить сюда: %(toAction)s",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Удалить псевдоним комнаты %(alias)s и удалить %(name)s из каталога?",
"Failed to add tag %(tagName)s to room": "Не удалось добавить тег %(tagName)s в комнату",
"Failed to forget room %(errCode)s": "Не удалось удалить комнату %(errCode)s",
@ -106,16 +87,14 @@
"Saturday": "Суббота",
"Today": "Сегодня",
"Yesterday": "Вчера",
"Mentions only": "Только если были упомянуты",
"Mentions only": "Только при упоминаниях",
"Mute": "Беззвучный",
"Permalink": "Постоянная ссылка",
"Quote": "Цитата",
"Redact": "Удалить",
"Remove %(name)s from the directory?": "Удалить %(name)s из каталога?",
"remove %(name)s from the directory.": "удалить %(name)s из каталога.",
"Resend": "Переотправить",
"Source URL": "Исходный URL-адрес",
"Welcome page": "Страница приветствия",
"Advanced notification settings": "Дополнительные параметры уведомлений",
"Call invitation": "Пригласительный звонок",
"customServer_text": "Вы можете использовать настраиваемые параметры сервера для входа на другие серверы Matrix, указав другой URL-адрес домашнего сервера.<br/>Это позволяет использовать это приложение с существующей учетной записью Matrix на другом домашнем сервере.<br/><br/>Вы также можете установить другой сервер идентификации, но это, как правило, будет препятствовать взаимодействию с пользователями на основе адреса электронной почты.",
@ -141,10 +120,10 @@
"Forward Message": "Переслать сообщение",
"Hide panel": "Скрыть панель",
"I understand the risks and wish to continue": "Я понимаю риски и желаю продолжить",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Чтобы диагностировать проблемы, логи этого клиента будут отправлены вместе с этим сообщением об ошибке. Если вы предпочитаете отправить только текст выше, пожалуйста, отключите:",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "Чтобы диагностировать проблемы, журналы работы этого клиента будут отправлены вместе с сообщением об ошибке. Если вы предпочитаете отправить только текст выше, пожалуйста, снимите отметку:",
"Loading bug report module": "Загрузка модуля Отчет об ошибках",
"Messages containing <span>keywords</span>": "Сообщения, содержащие определенные <span>ключевые слова</span>",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Опишите ошибку. Что вы сделали? Чего вы ожидали? Что на самом деле произошло?",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Пожалуйста, опишите ошибку. Что сделали? Чего ожидали? Что на самом деле произошло?",
"Please describe the bug and/or send logs.": "Опишите ошибку и/или отправьте журналы.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Для получения наилучшего опыта при работе с Riot, пожалуйста, установите <a href=\"https://www.google.com/chrome\">Chrome</a> или <a href=\"https://getfirefox.com\">Firefox</a>.",
"Report a bug": "Сообщить об ошибке",
@ -154,7 +133,7 @@
"Search": "Поиск",
"Search…": "Поиск.…",
"Send": "Отослать",
"Send logs": "Отправить журналы",
"Send logs": "Отправка журналов",
"Sorry, your browser is <b>not</b> able to run Riot.": "К сожалению, ваш браузер <b>не способен</b> запустить Riot.",
"This Room": "Эта комната",
"Unavailable": "Недоступен",
@ -164,7 +143,6 @@
"What's New": "Что нового",
"What's new?": "Что нового?",
"Waiting for response from server": "Ожидание ответа от сервера",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Вы используете Riot как гость. <a>Зарегистрируйтесь</a> или <a>войдите</a> для получения доступа к большему количеству комнат и функций!",
"OK": "OK",
"You need to be using HTTPS to place a screen-sharing call.": "Требуется использование HTTPS для совместного использования рабочего стола.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "В текущем браузере внешний вид приложения может быть полностью неверным, а некоторые или все функции могут не работать. Если вы хотите попробовать в любом случае, то можете продолжить, но с теми проблемами, с которыми вы можете столкнуться вам придется разбираться самостоятельно!",
@ -203,9 +181,9 @@
"Dev chat for the Riot/Web dev team": "Чат с командой разработчиков Riot/Web",
"Dev chat for the Dendrite dev team": "Чат с командой разработчиков Dendrite",
"Co-ordination for Riot/Web translators": "Координация для переводчиков Riot/Web",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Это позволит вам вернуться к учетной записи после выхода из системы и войти на другие устройства.",
"You have successfully set a password and an email address!": "Вы успешно установили пароль и адрес электронной почты!",
"Remember, you can always set an email address in user settings if you change your mind.": "Помните, что вы всегда сможете задать адрес электронной почты в настройках пользователя, если передумаете.",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Это позволит вам вернуться к учетной записи после выхода из системы и войти на других устройствах.",
"You have successfully set a password and an email address!": "Вы успешно установили пароль и адрес email!",
"Remember, you can always set an email address in user settings if you change your mind.": "Помните, что вы всегда сможете задать адрес email в настройках пользователя, если передумаете.",
"Set Password": "Задать пароль",
"To return to your account in future you need to <u>set a password</u>": "Чтобы вернуться к учетной записи в будущем, необходимо <u>задать пароль</u>",
"Warning": "Предупреждение",
@ -213,5 +191,31 @@
"Error encountered (%(errorDetail)s).": "Обнаружена ошибка (%(errorDetail)s).",
"No update available.": "Нет доступных обновлений.",
"Downloading update...": "Загрузка обновления...",
"Couldn't load home page": "Не удалось загрузить домашнюю страницу"
"Couldn't load home page": "Не удалось загрузить домашнюю страницу",
"Bug report sent": "Отчет об ошибке отправлен",
"Thank you!": "Спасибо!",
"Back": "Назад",
"Developer Tools": "Инструменты разработчика",
"Failed to send custom event.": "Не удалось отправить индивидуальное мероприятие.",
"Send Custom Event": "Отправить индивидуальное мероприятие",
"Send Custom State Event": "Отправить статус индивидуального мероприятия",
"Explore Room State": "Просмотр статуса комнаты",
"Event sent!": "Мероприятие отправлено!",
"Event Type": "Тип мероприятия",
"Event Content": "Содержание мероприятия",
"State Key": "Ключ состояния",
"Filter results": "Фильтрация результатов",
"You must specify an event type!": "Необходимо указать тип мероприятия!",
"Show message in desktop notification": "Показывать сообщение в уведомлении на рабочем столе",
"Pin Message": "Закрепить сообщение",
"Unpin Message": "Открепить сообщение",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Вы можете использовать пользовательские параметры сервера для входа на другие сервера Matrix, указав другой URL-адрес домашнего сервера.<br/>Это позволяет использовать Riot с существующей учетной записью Matrix на другом домашнем сервере.<br/><br/>Кроме того, можно установить пользовательский сервер идентификации, однако вы не сможете ни пригласить других пользователей, ни быть приглашенным, используя адрес электронной почты, .",
"Edit": "Редактировать",
"Register": "Регистрация",
"Rooms": "Комнаты",
"Invite to this community": "Пригласить в это сообщество",
"Add rooms to this community": "Добавить комнаты в это сообщество",
"Toolbox": "Панель инструментов",
"Send Account Data": "Отправить данные аккаунта",
"Explore Account Data": "Просмотр данных аккаунта"
}

219
src/i18n/strings/sk.json Normal file
View File

@ -0,0 +1,219 @@
{
"Riot is not supported on mobile web. Install the app?": "Riot nie je podporovaný na mobilných zariadeniach. Želáte si nainštalovať aplikáciu?",
"Collecting app version information": "Získavajú sa informácie o verzii aplikácii",
"Collecting logs": "Získavajú sa záznamy",
"Uploading report": "Prebieha odovzdanie hlásenia",
"Waiting for response from server": "Čakanie na odpoveď zo servera",
"Riot Desktop on %(platformName)s": "Riot Desktop pre %(platformName)s",
"Unknown device": "Neznáme zariadenie",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s cez %(browserName)s pre %(osName)s",
"You need to be using HTTPS to place a screen-sharing call.": "Ak si želáte spustiť zdieľanie obrazovky, musíte byť pripojení cez protokol HTTPS.",
"Messages containing my display name": "Správy obsahujúce moje zobrazované meno",
"Messages containing my user name": "Správy obsahujúce moje používateľské meno",
"Messages in one-to-one chats": "Správy v priamych konverzáciách",
"Messages in group chats": "Správy v skupinových konverzáciách",
"When I'm invited to a room": "Pozvania vstúpiť do miestnosti",
"Call invitation": "Audio / Video hovory",
"Messages sent by bot": "Správy odosielané robotmi",
"Error saving email notification preferences": "Chyba pri ukladaní nastavení oznamovania emailom",
"An error occurred whilst saving your email notification preferences.": "Počas ukladania vašich nastavení oznamovania emailom sa vyskytla chyba.",
"Keywords": "Kľúčové slová",
"Enter keywords separated by a comma:": "Zadajte kľúčové slová oddelené čiarkou:",
"OK": "OK",
"Failed to change settings": "Nepodarilo sa zmeniť nastavenia",
"Operation failed": "Operácia zlyhala",
"Can't update user notification settings": "Nie je možné aktualizovať používateľské nastavenia oznamovania",
"Failed to update keywords": "Nepodarilo sa aktualizovať kľúčové slová",
"Messages containing <span>keywords</span>": "Správy obsahujúce <span>kľúčové slová</span>",
"Notify for all other messages/rooms": "oznamovať všetky ostatné správy / miestnosti",
"Notify me for anything else": "Oznamovať mi všetko ostatné",
"Enable notifications for this account": "Povoliť oznámenia pre tento účet",
"All notifications are currently disabled for all targets.": "Momentálne sú zakázané všetky oznámenia pre všetky ciele.",
"Add an email address above to configure email notifications": "Ak si chcete nastaviť oznamovanie emailom, pridajte si emailovú adresu vyššie",
"Enable email notifications": "Povoliť oznamovanie emailom",
"Notifications on the following keywords follow rules which cant be displayed here:": "Oznámenia nasledujúcich kľúčových slov sa riadia pravidlami, ktoré nie je možné zobraziť na tomto mieste:",
"Unable to fetch notification target list": "Nie je možné získať zoznam cieľov oznámení",
"Notification targets": "Ciele oznámení",
"Advanced notification settings": "Pokročilé nastavenia oznámení",
"There are advanced notifications which are not shown here": "Niektoré pokročilé oznámenia nemôžu byť zobrazené",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Tieto nastavenia oznámení sa použijú aj napriek tomu, že ich nemôžete meniť cez Riot. Pravdepodobne ste si ich nastavili v inej aplikácii",
"Enable desktop notifications": "Povoliť oznámenia na pracovnej ploche",
"Show message in desktop notification": "Zobraziť text správy v oznámení na pracovnej ploche",
"Enable audible notifications in web client": "Povoliť zvukové oznámenia vo webovom klientovi",
"Off": "Zakázané",
"On": "Povolené",
"Noisy": "Hlučné",
"Failed to set direct chat tag": "Nepodarilo sa nastaviť značku priama konverzácia",
"Failed to remove tag %(tagName)s from room": "Nepodarilo sa odstrániť značku %(tagName)s pre túto miestnosť",
"Failed to add tag %(tagName)s to room": "Nepodarilo sa pridať značku %(tagName)s pre túto miestnosť",
"Search…": "Hľadať…",
"Search": "Vyhľadávanie",
"This Room": "V tejto miestnosti",
"All Rooms": "Vo všetkych miestnostiach",
"Sunday": "Nedeľa",
"Monday": "Pondelok",
"Tuesday": "Utorok",
"Wednesday": "Streda",
"Thursday": "Štvrtok",
"Friday": "Piatok",
"Saturday": "Sobota",
"Today": "Dnes",
"Yesterday": "Včera",
"Custom Server Options": "Vlastné možnosti servera",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "Vlastné nastavenia servera môžete použiť na pripojenie k iným serverom Matrix a to zadaním URL adresy domovského servera.<br/>Umožní vám to použiť Riot s už existujúcim Matrix účtom na akomkoľvek domovskom servery.<br/><br>Môžete tiež nastaviť vlastný server totožností, no ak tak urobíte, nebudete môcť do konverzácií pozývať používateľov zadaním ich emailovej adresy, ani ostatní nebudú môcť pozvať vás zadaním vašej emailovej adresy.",
"Dismiss": "Zamietnuť",
"powered by Matrix": "poháňa Matrix",
"You are not receiving desktop notifications": "Nedostávate oznámenia na pracovnej ploche",
"Enable them now": "Povolte si ich teraz",
"What's New": "Čo Je Nové",
"Update": "Aktualizovať",
"What's new?": "Čo je nové?",
"A new version of Riot is available.": "Dostupná je nová verzia Riot.",
"To return to your account in future you need to <u>set a password</u>": "Aby ste sa v budúcnosti mohli vrátiť k vašemu účtu mali by ste si teraz <u>nastaviť heslo</u>",
"Toolbox": "Nástroje",
"Set Password": "Nastaviť Heslo",
"Error encountered (%(errorDetail)s).": "Vyskytla sa chyba (%(errorDetail)s).",
"Checking for an update...": "Kontrola dostupnosti aktualizácie...",
"No update available.": "K dispozícii nie je žiadna aktualizácia.",
"Downloading update...": "Sťahovanie aktualizácie...",
"Warning": "Upozornenie",
"Error": "Chyba",
"You cannot delete this image. (%(code)s)": "Nemôžete vymazať tento obrázok. (%(code)s)",
"Uploaded on %(date)s by %(user)s": "Nahral používateľ %(user)s dňa %(date)s",
"Remove": "Odstrániť",
"Close": "Zatvoriť",
"Download this file": "Stiahnuť tento súbor",
"Please describe the bug and/or send logs.": "Prosím, popíšte problém a / alebo pošlite záznamy.",
"Loading bug report module": "Načítanie modulu hlásenia chýb",
"Bug report sent": "Hlásenie chyby odoslané",
"Thank you!": "Ďakujeme!",
"Failed to send report: ": "Nepodarilo sa odoslať hlásenie: ",
"Cancel": "Zrušiť",
"Report a bug": "Ohlásiť chybu",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Prosím, Napíšte text hlásenia. Čo ste práve robili? Čo ste očakávali? Čo sa v skutočnosti udialo?",
"Describe your problem here.": "Tu popíšte váš problém.",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "S cieľom lepšej diagnostiky problému sa spolu s vašim hlásením odošlú záznami o činnosti programu Riot. Ak si želáte odoslať len text hlásenia, odškrtnite nasledujúce pole:",
"Send logs": "Zahrnúť záznamy",
"Send": "Poslať",
"Unavailable": "Nedostupné",
"Changelog": "Zoznam zmien",
"Back": "Naspäť",
"You must specify an event type!": "Musíte nastaviť typ udalosti!",
"Event sent!": "Udalosť odoslaná!",
"Failed to send custom event.": "Odoslanie vlastnej udalosti zlyhalo.",
"Event Type": "Typ Udalosti",
"Event Content": "Obsah Udalosti",
"State Key": "State Key",
"Edit": "Upraviť",
"Filter results": "Filtrovať výsledky",
"Send Custom Event": "Odoslať vlastnú udalosť",
"Send Account Data": "Odoslať Údaje Účtu",
"Explore Account Data": "Preskúmať Údaje účtu",
"Explore Room State": "Preskúmať Stav Miestnosti",
"Developer Tools": "Vývojárske Nástroje",
"You have successfully set a password!": "Ǔspešne ste si nastavili heslo!",
"You have successfully set a password and an email address!": "Úspešne si si nastavili heslo aj emailovú adresu!",
"You can now return to your account after signing out, and sign in on other devices.": "Odteraz sa budete k svojmu účtu vedieť vrátiť aj po odhlásení, alebo tiež prihlásiť na iných zariadeniach.",
"Remember, you can always set an email address in user settings if you change your mind.": "Všimnite si, Emailovú adresu môžete pridať aj neskôr v časti nastavenia, ak zmeníte svoj názor.",
"Continue": "Pokračovať",
"Failed to change password. Is your password correct?": "Nepodarilo sa zmeniť heslo. Zadali ste správne heslo?",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"Please set a password!": "Prosím, nastavte si heslo!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Toto vám v budúcnosti umožní vrátiť sa k vašemu účtu aj po odhlásení, alebo tiež prihlásiť sa na iných zariadeniach.",
"You cannot delete this message. (%(code)s)": "Nemôžete vymazať túto správu. (%(code)s)",
"Resend": "Poslať znovu",
"Cancel Sending": "Zrušiť odosielanie",
"Forward Message": "Preposlať správu",
"Unpin Message": "Zrušiť pripnutie správy",
"Pin Message": "Pripnúť správu",
"View Source": "Zobraziť zdroj",
"View Decrypted Source": "Zobraziť dešifrovaný zdroj",
"Unhide Preview": "Zobraziť náhľad",
"Permalink": "Trvalý odkaz",
"Quote": "Citovať",
"Source URL": "Pôvodná URL",
"Failed to set Direct Message status of room": "Nepodarilo sa nastaviť stav miestnosti priama konverzácia",
"unknown error code": "neznámy kód chyby",
"Failed to forget room %(errCode)s": "Nepodarilo sa zabudnuť miestnosť %(errCode)s",
"All messages (loud)": "Všetky správy (hlučné)",
"All messages": "Všetky správy",
"Mentions only": "Len zmienky",
"Mute": "Umlčať",
"Leave": "Opustiť",
"Forget": "Zabudnuť",
"Reject": "Odmietnuť",
"Favourite": "Obľúbená",
"Low Priority": "Nízka priorita",
"Direct Chat": "Priama konverzácia",
"Sorry, your browser is <b>not</b> able to run Riot.": "Prepáčte, vo vašom prehliadači <b>nie je</b> možné spustiť Riot.",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot sa spolieha na mnohé pokročilé vlastnosti prehliadača internetu, a niektoré z nich sú vo vašom prehliadači experimentálne alebo nie sú k dispozícii vôbec.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Prosím, nainštalujte si <a href=\"https://www.google.com/chrome\">Chrome</a> alebo <a href=\"https://getfirefox.com\">Firefox</a> , aby bol váš zážitok pri používaní Riot čo možno najlepší.",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> a <a href=\"http://opera.com\">Opera</a> tiež fungujú spoľahlivo.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Vo vašom súčasnom prehliadači nemusí Riot vizerať ani fungovať správne a niektoré alebo všetky vlastnosti môžu chýbať. Ak to chcete vyskúšať, môžete pokračovať, no pri riešení problémov s tým spojených si budete musieť poradiť na vlastnú päsť!",
"I understand the risks and wish to continue": "Rozumiem rizikám a želám si pokračovať",
"Couldn't load home page": "Nie je možné načítať domovskú stránku",
"Login": "Prihlásiť",
"Register": "Registrovať",
"Invite to this room": "Pozvať do tejto miestnosti",
"Members": "Členovia",
"Files": "Súbory",
"Notifications": "Oznámenia",
"Rooms": "Miestnosti",
"Hide panel": "Skryť panel",
"Invite to this community": "Pozvať do tejto komunity",
"Add rooms to this community": "Pridať miestnosti do tejto komunity",
"Failed to get protocol list from Home Server": "Nepodarilo sa získať zoznam protokolov z domovského servera",
"The Home Server may be too old to support third party networks": "Domovský server môže byť natoľko zastaralý, že nepodporuje siete tretíh strán",
"Failed to get public room list": "Nepodarilo sa získať zoznam verejných miestností",
"The server may be unavailable or overloaded": "Server môže byť nedostupný alebo preťažený",
"Unnamed room": "Nepomenovaná miestnosť",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Vymazať alias %(alias)s a odstrániť miestnosť %(name)s z adresára?",
"Remove %(name)s from the directory?": "Odstrániť miestnosť %(name)s z adresára?",
"Remove from Directory": "Odstrániť z adresára",
"remove %(name)s from the directory.": "odstrániť %(name)s z adresára.",
"delete the alias.": "vymazať alias.",
"Unable to join network": "Nie je možné sa pripojiť k sieti",
"Riot does not know how to join a room on this network": "Riot nedokáže vstúpiť do miestnosti na tejto sieti",
"Room not found": "Miestnosť nenájdená",
"Couldn't find a matching Matrix room": "Nie je možné nájsť zodpovedajúcu Matrix miestnosť",
"Fetching third party location failed": "Nepodarilo sa získať umiestnenie tretej strany",
"Unable to look up room ID from server": "Nie je možné vyhľadať ID miestnosti na servery",
"World readable": "Viditeľná pre všetkých",
"Guests can join": "Pripojiť sa môžu aj hostia",
"Directory": "Adresár",
"No rooms to show": "Žiadne miestnosti na zobrazenie",
"Search for a room": "Vyhľadať miestnosť",
"#example": "#príklad",
"more": "viac",
"Expand panel": "Rozbaliť panel",
"Collapse panel": "Zbaliť panel",
"Filter room names": "Filtrovať názvy miestností",
"Welcome to Riot.im": "Víta vás Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralizovaný, šifrovaný chat a spolupráca na platforme [matrix]",
"Search the room directory": "Prehľadať adresár miestností",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Na Matrixe je k dispozícii množstvo nezávislých diskusných miestností a tiež miestnosti prepojené z iných sietí (Slack, IRC, Gitter atď). Pozrite si adresár!",
"Chat with Riot Bot": "Konverzácia s Riot Bot",
"Get started with some tips from Riot Bot!": "Začnite zopár tipmi v diskusii s Riot Bot!",
"General discussion about Matrix and Riot": "Všeobecná diskusia o Matrix a Riot",
"Discussion of all things Matrix!": "Diskusia o všetkom okolo Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"Matrix technical discussions": "Technické diskusie o Matrix",
"Running Matrix services": "Prevádzka služieb postavených na Matrix",
"Community-run support for Synapse": "Komunitná podpora pre Synapse",
"Admin support for Dendrite": "Administrátorská podpora pre Dendrite",
"Announcements about Synapse releases": "Oznamy o verziách Synapse",
"Support for those using and running matrix-appservice-irc": "Podpora pre používateľov a prevádzkovateľov matrix-appservice-irc",
"Building services on Matrix": "Stavba služieb na Matrix",
"Support for those using the Matrix spec": "Podpora pre konzumentov špecifikácie Matrix",
"Design and implementation of E2E in Matrix": "Návrh a implementácia E2E pre Matrix",
"Implementing VR services with Matrix": "Implementácia služieb VR s Matrix",
"Implementing VoIP services with Matrix": "Implementácia VoIP služieb s Matrix",
"Discussion of the Identity Service API": "Diskusia o API služby totožností",
"Support for those using, running and writing other bridges": "Podpora pre používateľov, prevádzkovateľov a tvorcov premostení do ďalších sietí",
"Contributing code to Matrix and Riot": "Prispievanie kódu projektom Matrix a Riot",
"Dev chat for the Riot/Web dev team": "Diskusia pre tím vývojárov Riot/Web",
"Dev chat for the Dendrite dev team": "Diskusia pre tím vývojárov Dendrite",
"Co-ordination for Riot/Web translators": "Koordinácia prekladov Riot/Web"
}

View File

@ -9,7 +9,6 @@
"Cancel Sending": "Avbryt sändning",
"Can't update user notification settings": "Kan inte uppdatera aviseringsinställningarna",
"Close": "Stäng",
"Create new room": "Nytt rum",
"Couldn't find a matching Matrix room": "Kunde inte hitta ett matchande Matrix-rum",
"Custom Server Options": "Egna serverinställningar",
"customServer_text": "Du kan använda serverinställningarna för att logga in i en annan Matrix-server genom att specifiera en URL till en annan hemserver.<br/>Så här kan du använda Riot med ett existerande Matrix-konto på en annan hemserver.<br/><br/>Du kan också specifiera en egen identitetsserver, men du kommer inte att kunna bjuda in andra via epostadress, eller bli inbjuden via epostadress.",
@ -18,7 +17,6 @@
"Directory": "Katalog",
"Dismiss": "Avvisa",
"Download this file": "Ladda ner filen",
"Drop here %(toAction)s": "Dra hit för att %(toAction)s",
"Enable audible notifications in web client": "Sätt på högljudda aviseringar i webbklienten",
"Enable desktop notifications": "Sätt på skrivbordsaviseringar",
"Enable email notifications": "Sätt på epostaviseringar",
@ -27,14 +25,12 @@
"Enter keywords separated by a comma:": "Skriv in nyckelord, separerade med kommatecken:",
"Error": "Fel",
"Error saving email notification preferences": "Ett fel uppstod då epostaviseringsinställningarna sparades",
"Failed to": "Det gick inte att",
"Failed to add tag %(tagName)s to room": "Det gick inte att lägga till \"%(tagName)s\" till rummet",
"Failed to change settings": "Det gick inte att spara inställningarna",
"Failed to forget room %(errCode)s": "Det gick inte att glömma bort rummet %(errCode)s",
"Failed to update keywords": "Det gick inte att uppdatera nyckelorden",
"Failed to get protocol list from Home Server": "Det gick inte att hämta protokollistan från hemservern",
"Failed to get public room list": "Det gick inte att hämta listan över offentliga rum",
"Failed to join the room": "Det gick inte att gå med i rummet",
"Failed to remove tag %(tagName)s from room": "Det gick inte att radera taggen %(tagName)s från rummet",
"Failed to set direct chat tag": "Det gick inte att markera rummet som direkt chatt",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s på %(osName)s",
@ -53,9 +49,7 @@
"Filter room names": "Filtrera rumsnamn",
"Forget": "Glöm bort",
"Forward Message": "Vidarebefordra meddelande",
" from room": " från rum",
"Guests can join": "Gäster kan bli medlem i rummet",
"Guest users can't invite users. Please register to invite.": "Gäster kan inte skicka inbjudningar. Registrera dig för att bjuda in andra.",
"Hide panel": "Göm panel",
"I understand the risks and wish to continue": "Jag förstår riskerna och vill fortsätta",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "För att diagnostisera problem kommer loggar från den här klienten att sändas med rapporten. Om du bara vill sända texten ovan, kryssa av rutan:",
@ -82,14 +76,12 @@
"Notify me for anything else": "Avisera för allt annat",
"Off": "Av",
"On": "På",
"Permalink": "Permalink",
"Permalink": "Permanent länk",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Beskriv buggen. Vad gjorde du? Vad förväntade du dig att ska hända? Vad hände?",
"Please describe the bug and/or send logs.": "Beskriv buggen och/eller sänd loggar.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Installera <a href=\"https://www.google.com/chrome\">Chrome</a> eller <a href=\"https://getfirefox.com\">Firefox</a> för den bästa upplevelsen.",
"Please Register": "Registrera dig",
"powered by Matrix": "drivs av Matrix",
"Quote": "Citera",
"Redact": "Dra tillbaka",
"Reject": "Avvisa",
"Remove %(name)s from the directory?": "Ta bort %(name)s från katalogen?",
"Remove": "Ta bort",
@ -101,23 +93,18 @@
"Riot does not know how to join a room on this network": "Riot kan inte gå med i ett rum på det här nätverket",
"Riot is not supported on mobile web. Install the app?": "Riot stöds inte på mobil-webb. Installera appen?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot använder flera avancerade webbläsaregenskaper, av vilka alla inte stöds eller är experimentella i din nuvarande webbläsare.",
"Room directory": "Rumskatalog",
"Room not found": "Rummet hittades inte",
"Search": "Sök",
"Search…": "Sök…",
"Search for a room": "Sök efter rum",
"Send": "Sänd",
"Send logs": "Sänd loggar",
"Settings": "Inställningar",
"Source URL": "Käll-URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Beklagar, din webbläsare kan <b>inte</b> köra Riot.",
"Start chat": "Starta chatt",
"The Home Server may be too old to support third party networks": "Hemservern kan vara för gammal för stöda tredje parters nätverk",
"There are advanced notifications which are not shown here": "Det finns avancerade aviseringar som inte visas här",
"The server may be unavailable or overloaded": "Servern kan vara överbelastad eller inte tillgänglig",
"This Room": "Det här rummet",
"This room is inaccessible to guests. You may be able to join if you register.": "Det här rummet är inte tillgängligt till gäster. Du kan möjligtvis gå med i rummet om du registrerar dig.",
" to room": " till rum",
"Unable to fetch notification target list": "Det gick inte att hämta aviseringsmållistan",
"Unable to join network": "Det gick inte att ansluta till nätverket",
"Unable to look up room ID from server": "Det gick inte att hämta rums-ID:t från servern",
@ -139,7 +126,6 @@
"You cannot delete this image. (%(code)s)": "Du kan inte radera den här bilden. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Du kan inte radera det här meddelandet. (%(code)s)",
"You are not receiving desktop notifications": "Du får inte skrivbordsaviseringar",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Du använder Riot som en gäst. <a>Registrera dig</a> eller <a>logga in</a> för att få tillgång till flera rum och egenskaper!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Du kan ha konfigurerat dem i en annan klient än Riot. Du kan inte ändra dem i Riot men de tillämpas ändå",
"Sunday": "söndag",
"Monday": "måndag",
@ -153,12 +139,62 @@
"OK": "OK",
"You need to be using HTTPS to place a screen-sharing call.": "Du måste använda HTTPS för att dela din skärm.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Med din nuvarande webbläsare kan appens utseende vara helt fel, och vissa eller alla egenskaper kommer nödvändigtvis inte att fungera. Om du ändå vill försöka så kan du fortsätta, men gör det på egen risk!",
"Welcome page": "Välkomstsida",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Radera rumsadressen %(alias)s och ta bort %(name)s från katalogen?",
"Collecting logs": "Samlar in loggar",
"Collecting app version information": "Samlar in appversionsinformation",
"Notifications on the following keywords follow rules which cant be displayed here:": "Aviseringar för följande nyckelord följer regler som inte kan visas här:",
"Continue": "Fortsätt",
"Failed to change password. Is your password correct?": "Det gick inte att byta lösenord. Är lösenordet rätt?",
"Operation failed": "Handlingen misslyckades"
"Operation failed": "Handlingen misslyckades",
"#example": "#exempel",
"Fetching third party location failed": "Det gick inte att hämta platsdata från tredje part",
"Login": "Logga in",
"Warning": "Varning",
"Downloading update...": "Laddar ned uppdatering...",
"Welcome to Riot.im": "Välkommen till Riot.im",
"Chat with Riot Bot": "Chatta med Riot Bot",
"Get started with some tips from Riot Bot!": "Kom igång med några tips från Riot Bot!",
"General discussion about Matrix and Riot": "Allmän diskussion om Matrix och Riot",
"Discussion of all things Matrix!": "Diskussion om allt gällande Matrix!",
"Matrix technical discussions": "Teknisk diskussion om Matrix",
"Running Matrix services": "Driva Matrix-tjänster",
"Community-run support for Synapse": "Gemenskapsdriven användarhjälp för Synapse",
"Announcements about Synapse releases": "Meddelanden om Synapse-versioner",
"Support for those using and running matrix-appservice-irc": "Hjälp för de som använder och driver matrix-appservice-irc",
"Support for those using the Matrix spec": "Hjälp för de som använder Matrix specifikation",
"Design and implementation of E2E in Matrix": "Design och implementation av E2E i Matrix",
"Implementing VR services with Matrix": "Implementation av VR-tjänster med Matrix",
"Implementing VoIP services with Matrix": "Implementation av VoIP-tjänster med Matrix",
"Discussion of the Identity Service API": "Diskussion om Identity Service API:n",
"Support for those using, running and writing other bridges": "Hjälp för de som använder, driver och utvecklar andra bryggor",
"Contributing code to Matrix and Riot": "Bidra med kod till Matrix och Riot",
"Dev chat for the Riot/Web dev team": "Chatt för utvecklare av Riot/Web",
"Dev chat for the Dendrite dev team": "Chatt för utvecklare av Dendrite",
"Co-ordination for Riot/Web translators": "Koordination för översättare av Riot/Web",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Många rum finns redan i Matrix, länkade till andra nätverk (Slack, IRC, Gitter etc.) eller fristående. Kolla in katalogen!",
"You have successfully set a password!": "Du har valt ett nytt lösenord!",
"You can now return to your account after signing out, and sign in on other devices.": "Du kan nu återgå till ditt konto efter att ha loggat ut och logga in på andra enheter.",
"Please set a password!": "Vänligen välj ett lösenord!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "Detta kommer tillåta dig att återgå till ditt konto efter att ha loggat ut, och logga in på andra enheter.",
"You have successfully set a password and an email address!": "Du har framgångsrikt valt ett lösenord och en e-postadress!",
"Remember, you can always set an email address in user settings if you change your mind.": "Kom ihåg att du alltid kan välja en e-postadress i dina användarinställningar om du ändrar dig.",
"To return to your account in future you need to <u>set a password</u>": "För att återgå till ditt konto i framtiden måste du <u>välja ett lösenord</u>",
"Set Password": "Välj lösenord",
"Couldn't load home page": "Kunde inte ladda startsidan",
"(HTTP status %(httpStatus)s)": "(HTTP-status %(httpStatus)s)",
"Checking for an update...": "Letar efter uppdateringar...",
"Error encountered (%(errorDetail)s).": "Fel påträffat (%(errorDetail)s).",
"No update available.": "Ingen uppdatering tillgänglig.",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentraliserad, krypterad chatt &amp; samarbete möjliggjort med [matrix]",
"Search the room directory": "Sök i rumskatalogen",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop-chatt",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk-chatt",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk-chatt",
"Admin support for Dendrite": "Hjälp för administratörer av Dendrite",
"Building services on Matrix": "Bygga tjänster med Matrix",
"Bug report sent": "Buggraporten skickades",
"Thank you!": "Tack!",
"Back": "Tillbaka",
"Filter results": "Filtrera resultaten",
"Explore Room State": "Utforska rumläget"
}

View File

@ -1,54 +1,49 @@
{
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a>மற்றும்<a href=\"http://opera.com\">Opera</a>விலும் செயல்படும்.",
"A new version of Riot is available.": "Riot-ன் புதிய பதிப்பு உள்ளது.",
"Add an email address above to configure email notifications": "மின்னஞ்சல் அறிவிப்புகளை ஏற்றபடி மாற்ற ஒரு மின்னஞ்சல் முகவரியை மேலே இணைக்கவும்",
"Advanced notification settings": "மேம்பட்ட அறிவிப்பிற்க்கான அமைப்புகள்",
"Add an email address above to configure email notifications": "மின்னஞ்சல் மூலம் அறிவிப்புகளை பெற உங்கள் மின்னஞ்சல் முகவரியை மேலே இணைக்கவும்",
"Advanced notification settings": "மேம்பட்ட அறிவிப்பிற்கான அமைப்புகள்",
"All messages": "அனைத்து செய்திகள்",
"All messages (loud)": "அனைத்து செய்திகள் (உரக்க)",
"All Rooms": "அனைத்து அறைகள்",
"All notifications are currently disabled for all targets.": "அனைத்து இலக்குகளுக்கான அனைத்து அறிவுப்புகளும் தற்காலிகமாக முடக்கப்பட்டுள்ளது.",
"An error occurred whilst saving your email notification preferences.": "உங்கள் மின்னஞ்சல் அறிவிப்பு விருப்பங்களை சேமிக்கும்பொழுது தவறு ஏற்ப்பட்டது.",
"Cancel": "நீக்கு",
"Cancel Sending": "அனுப்புதலை நீக்கு",
"All notifications are currently disabled for all targets.": "அனைத்து இலக்குகளுக்கான அனைத்து அறிவுப்புகளும் தற்போது முடக்கி வைக்கப்பட்டுள்ளது.",
"An error occurred whilst saving your email notification preferences.": "உங்கள் மின்னஞ்சல் அறிவிப்பு விருப்பங்களை சேமிப்பதில் ஏதோ பிழை ஏற்பட்டுள்ளது.",
"Cancel": "ரத்து",
"Cancel Sending": "அனுப்புதலை ரத்து செய்",
"Changelog": "மாற்றப்பதிவு",
"Close": "மூடு",
"Collapse panel": "பலகத்தை மாற்றியமை",
"Collapse panel": "பலகத்தை மாற்ற",
"Collecting app version information": "செயலியின் பதிப்பு தகவல்கள் சேகரிக்கப்படுகிறது",
"Collecting logs": "பதிவுகள் சேகரிக்கப்படுகிறது",
"Create new room": "புதிய அறையை உருவாக்கு",
"%(appName)s via %(browserName)s on %(osName)s": "%(osName)s -ல் %(browserName)s -ன் வழியாக %(appName)s",
"Call invitation": "தொடர்பு கொள்ள அழைப்பு",
"Call invitation": "அழைப்பிற்கான விண்ணப்பம்",
"Can't update user notification settings": "பயனர் அறிவிப்பு அமைப்புகளை மாற்ற முடியவில்லை",
"Couldn't find a matching Matrix room": "பொருத்தமான Matrix அறை கண்டுபிடிக்கப்படவில்லை",
"Couldn't find a matching Matrix room": "பொருத்தமான Matrix அறை கிடைக்கவில்லை",
"Custom Server Options": "விருப்பிற்கேற்ற வழங்கி இடப்புகள்",
"delete the alias.": "மாற்றை அழி.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "அறை மாற்று %(alias)s -ஐ அழித்து, %(name)s -ஐ அடைவிலிருந்து நீக்க தயாரா?",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "அறை மாற்று %(alias)s -ஐ அழித்து, %(name)s -ஐ அடைவிலிருந்து நீக்க வேண்டுமா?",
"Describe your problem here.": "உங்கள் பிரச்சனையை இங்கு விவரிக்கவும்.",
"Direct Chat": "நேரடி அரட்டை",
"Directory": "அடைவு",
"Dismiss": "நீக்கு",
"Download this file": "இந்த கோப்பைத் தரவிறக்கு",
"Drop here %(toAction)s": "%(toAction)s -ஐ இங்கு விடு",
"Enable audible notifications in web client": "இணைய வாங்கியில் கேட்கக்கூடிய அறிவிப்புகளை ஏதுவாக்கு",
"Enable audible notifications in web client": "இணைய வாங்கியில் ஒலி அறிவிப்புகளை ஏதுவாக்கு",
"Enable desktop notifications": "திரை அறிவிப்புகளை ஏதுவாக்கு",
"Enable email notifications": "மின்னஞ்சல் அறிவிப்புகளை ஏதுவாக்கு",
"Enable notifications for this account": "இந்த கணக்கிற்க்கான அறிவிப்புகளை ஏதுவாக்கு",
"Enable notifications for this account": "இந்த கணக்கிற்கான அறிவிப்புகளை ஏதுவாக்கு",
"Enable them now": "இப்போது அவற்றை ஏதுவாக்கு",
"Error": "தவறு",
"Error": "கோளாறு",
"Expand panel": "பலகத்தை விரிவாக்கு",
"Failed to": "ல் தோல்வி",
"Failed to add tag %(tagName)s to room": "%(tagName)s எனும் குறிச்சொல்லை அறையில் சேர்ப்பதில் தோல்வி",
"Failed to change settings": "அமைப்புகள் மாற்றத்தில் தோல்வி",
"Failed to forget room %(errCode)s": "அறை மறப்பதில் தோல்வி %(errCode)s",
"Failed to forget room %(errCode)s": "அறையை மறப்பதில் தோல்வி %(errCode)s",
"Failed to update keywords": "முக்கிய வார்த்தைகளை புதுப்பித்தலில் தோல்வி",
"Failed to get public room list": "பொது அறைப் பட்டியலைப் பெறுவதில் தோல்வி",
"Failed to join the room": "அறையில் சேர்வதில் தோல்வி",
"Failed to get public room list": "பொது அறைப் பட்டியலை பெறுவதில் தோல்வி",
"Failed to send report: ": "அறிக்கை அனுப்புதலில் தோல்வி ",
"Favourite": "விருப்பமான",
"Files": "கோப்புகள்",
"Filter room names": "அறை பெயர்களை வடிகட்டு",
"Forget": "மற",
" from room": " அறையில் இருந்து",
"Guests can join": "விருந்தினர்கள் சேரலாம்",
"Hide panel": "பலகத்தை மறை",
"Invite to this room": "இந்த அறைக்கு அழை",
@ -57,5 +52,121 @@
"Login": "உள்நுழை",
"Low Priority": "குறைந்த முன்னுரிமை",
"Members": "உறுப்பினர்கள்",
"Mentions only": "குறிப்பிடுகள் மட்டும்"
"Mentions only": "குறிப்பிடுகள் மட்டும்",
"#example": "#உதாரணமாக",
"Enter keywords separated by a comma:": "ஒரு comma மூலம் முக்கிய வார்த்தைகளை உள்ளிடவும்:",
"Error saving email notification preferences": "மின்னஞ்சல் அறிவிப்பு விருப்பங்களை சேமிப்பதில் கோளாறு",
"Failed to get protocol list from Home Server": "முகப்பு சேவையகத்திலிருந்து நெறிமுறை பட்டியலைப் பெறுவதில் தோல்வி",
"Failed to remove tag %(tagName)s from room": "அறையில் இருந்து குறிச்சொல் %(tagName)s களை அகற்றுவது தோல்வியடைந்தது",
"Failed to set direct chat tag": "நேரடி அரட்டை குறியை அமைப்பதில் தோல்வி",
"Failed to set Direct Message status of room": "அறையின் நேரடி செய்தி நிலையை அமைக்க தவறிவிட்டது",
"Fetching third party location failed": "மூன்றாம் இடத்தில் உள்ள இடம் தோல்வி",
"Forward Message": "முன்னோடி செய்தி",
"(HTTP status %(httpStatus)s)": "(HTTP நிலைகள் %(httpStatus)s)",
"customServer_text": "நீங்கள் மற்ற Matrix வழங்கிகள் உள்நுழைய உங்கள் விருப்பமான வழங்கி இடப்புகளை உபயோகப்படுத்தலாம்.<br/>இது மற்ற வழங்கியில் உங்கள் Matrix கணக்கிணை Riot மூலம் பயன்படுத்த உதவும்.<br/><br/>நீங்கள் மற்ற அடையாள வழங்கியையும் பயன்படுத்தலாம், ஆனால் நீங்கள் மற்ற பயனர்களை மின்னஞ்சல் மூலம் அழைக்கவோ, நீங்கள் அழைக்கப்படவோ இயலாது.",
"I understand the risks and wish to continue": "நான் அபாயங்களைப் புரிந்துகொண்டு தொடர விரும்புகிறேன்",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "சிக்கல்களைக் கண்டறியும் பொருட்டு, இந்த கிளையிலிருந்து வரும் பதிவுகள் இந்த பிழை அறிக்கையுடன் அனுப்பப்படும். மேலே உள்ள உரையை மட்டுமே அனுப்ப விரும்பினால், தயவுசெய்து தட்டச்சு செய்க:",
"Loading bug report module": "பிழை அறிக்கை தொகுதி ஏற்றுகிறது",
"Messages containing my display name": "என் காட்சி பெயர் கொண்ட செய்திகள்",
"more": "அதிகம்",
"Mute": "முடக்கு",
"No rooms to show": "காண்பிக்க எந்த அறையும் இல்லை",
"Messages containing <span>keywords</span>": "<span>முக்கிய</span> கொண்ட செய்திகள்",
"Messages containing my user name": "என் பயனர் பெயர் கொண்ட செய்திகள்",
"Messages in group chats": "குழு அரட்டைகளில் உள்ள செய்திகள்",
"Messages in one-to-one chats": "ஒரு-க்கு-ஒரு அரட்டைகளில் உள்ள செய்திகள்",
"Messages sent by bot": "bot மூலம் அனுப்பிய செய்திகள்",
"Noisy": "சத்தம்",
"Notification targets": "அறிவிப்பு இலக்குகள்",
"Notifications": "அறிவிப்புகள்",
"Notifications on the following keywords follow rules which cant be displayed here:": "பின்வரும் முக்கிய வார்த்தைகளில் அறிவிப்புகள் இங்கே காட்டப்பட முடியாத விதிகள் பின்பற்றப்படுகின்றன:",
"Notify for all other messages/rooms": "மற்ற எல்லா செய்திகளுக்கும் அறைகளுக்கும் தெரிவிக்கவும்",
"Notify me for anything else": "வேறு எதையும் எனக்கு தெரிவி",
"Off": "அமை",
"On": "மீது",
"Operation failed": "செயல்பாடு தோல்வியுற்றது",
"Permalink": "நிரந்தரத் தொடுப்பு",
"powered by Matrix": "Matrix-ஆல் ஆனது",
"Quote": "மேற்கோள்",
"Reject": "நிராகரி",
"Remove %(name)s from the directory?": "அடைவிலிருந்து %(name)s-ஐ நீக்கலாமா?",
"Remove": "நீக்கு",
"remove %(name)s from the directory.": "அடைவிலிருந்து %(name)s-ஐ நீக்கு.",
"Remove from Directory": "அடைவிலிருந்து நீக்கு",
"Report a bug": "வழுவைத் தெரியப்படுத்து",
"Resend": "மீண்டும் அனுப்பு",
"Riot is not supported on mobile web. Install the app?": "கைபேசி உலாவியில் Riot இயங்காது. செயலியை நிறுவ வேண்டுமா?",
"Room not found": "அறை காணவில்லை",
"Search": "தேடு",
"Search…": "தேடு…",
"Search for a room": "அறையைத் தேடு",
"Send": "அனுப்பு",
"Send logs": "பதிவுகளை அனுப்பு",
"Source URL": "மூல முகவரி",
"This Room": "இந்த அறை",
"Unable to join network": "முனையங்களில் சேர இயலவில்லை",
"Unavailable": "இல்லை",
"Unknown device": "தெரியாத கருவி",
"unknown error code": "தெரியாத பிழை குறி",
"Unnamed room": "பெயரிடப்படாத அறை",
"Update": "புதுப்பி",
"Uploaded on %(date)s by %(user)s": "%(date)s அன்று %(user)s ஆல் பதிவேற்றப்பட்டது",
"Uploading report": "அறிக்கை பதிவேற்றப்படுகிறது",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "வழுவைப் பற்றி விளக்கவும். நீங்கள் என்ன செய்தீர்கள்? என்ன நடக்க வேண்டி எதிர்ப்பார்த்தீர்கள்? என்ன நடந்தது?",
"Please describe the bug and/or send logs.": "வழுவைப் பற்றி விளக்கவும் மேலும்/அல்லது பதிவுகளை அனுப்பவும்.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "சிறந்த அனுபவத்திற்க்கு <a href=\"https://www.google.com/chrome\">Chrome</a>அல்லது<a href=\"https://getfirefox.com\">Firefox</a>ஐ பயன்படுத்தவும்.",
"Riot Desktop on %(platformName)s": "%(platformName)s ற்க்கான Riot",
"Riot does not know how to join a room on this network": "இந்த வலையமைப்பில் உள்ள அறையில் எப்படி சேர்வதென்று Riotற்க்கு தெரியவில்லை",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot பல மேம்பட்ட உலாவி வசதிகளைப் பயன்படுத்துகிறது, அதில் சிலவற்றைக் காணவில்லை அல்லது உங்கள் உலாவியில் பரிசோதனைக்காக உள்ளது.",
"There are advanced notifications which are not shown here": "இங்கு காண்பிக்கப்படாத மேம்பட்ட அறிவிப்புகள் உள்ளது",
"The server may be unavailable or overloaded": "வழங்கி அளவுமீறிய சுமையில் உள்ளது அல்லது செயல்பாட்டில் இல்லை",
"Unable to fetch notification target list": "அறிவிப்பு பட்டியலை பெற முடியவில்லை",
"Unable to look up room ID from server": "வழங்கியிலிருந்து அறை ID யை காண முடியவில்லை",
"Unhide Preview": "முன்னோட்டத்தைக் காண்பி",
"View Decrypted Source": "மறையீடு நீக்கப்பட்ட மூலத்தைக் காண்பி",
"View Source": "மூலத்தைக் காட்டு",
"What's New": "புதிதாக வந்தவை",
"What's new?": "புதிதாக என்ன?",
"Waiting for response from server": "வழங்கியின் பதிலுக்காக காத்திருக்கிறது",
"When I'm invited to a room": "நான் அறைக்கு அழைக்கப்பட்ட போது",
"World readable": "உலகமே படிக்கும்படி",
"You cannot delete this image. (%(code)s)": "இந்த படத்தை நீங்கள் அழிக்க முடியாது. (%(code)s)",
"You cannot delete this message. (%(code)s)": "இந்த செய்தியை நீங்கள் அழிக்க முடியாது. (%(code)s)",
"You are not receiving desktop notifications": "திரை அறிவிப்புகளை நீங்கள் பெறவில்லை",
"Bug report sent": "வழு அறிக்கை அனுப்பப்பட்டது",
"You need to be using HTTPS to place a screen-sharing call.": "நீங்கள் திரைபகிர்வு அழைப்பை மேற்க்கொள்ள HTTPS-ஐ பயன்படுத்த வேண்டும்.",
"OK": "சரி",
"Show message in desktop notification": "திரை அறிவிப்புகளில் செய்தியை காண்பிக்கவும்",
"Sunday": "ஞாயிறு",
"Monday": "திங்கள்",
"Tuesday": "செவ்வாய்",
"Wednesday": "புதன்",
"Thursday": "வியாழன்",
"Friday": "வெள்ளி",
"Saturday": "சனி",
"Today": "இன்று",
"Yesterday": "நேற்று",
"No update available.": "எந்த புதுப்பிப்பும் இல்லை.",
"Warning": "எச்சரிக்கை",
"Thank you!": "உங்களுக்கு நன்றி",
"Back": "பின்",
"Event sent!": "நிகழ்வு அனுப்பப்பட்டது",
"Event Type": "நிகழ்வு வகை",
"Event Content": "நிகழ்வு உள்ளடக்கம்",
"Edit": "தொகு",
"You have successfully set a password!": "நீங்கள் வெற்றிகரமாக கடவுச்சொல்லை அமைத்துவிட்டீர்கள்",
"You have successfully set a password and an email address!": "நீங்கள் வெற்றிகரமாக கடவுச்சொல் மற்றும் மின்னஞ்சல் முகவரியை அமைத்துவிட்டீர்கள்",
"Continue": "தொடரவும்",
"Please set a password!": "தயவு செய்து கடவுச்சொல்லை அமைக்கவும்",
"Couldn't load home page": "முதற்பக்கத்தை நிரலேற்ற முடியவில்லை",
"Register": "பதிவு செய்",
"Rooms": "அறைகள்",
"Add rooms to this community": "அறைகளை இந்த சமூகத்தில் சேர்க்கவும்",
"Welcome to Riot.im": "Riot.im -ற்க்கு வரவேற்க்கிறோம்",
"Search the room directory": "அறை அடைவில் தேடவும்",
"Chat with Riot Bot": "Riot இயங்கியிடம் உரையாடவும்",
"Matrix technical discussions": "Matrix தொழில்நுட்ப விவாதங்கள்",
"Running Matrix services": "இருப்பிலிருக்கும் Matrix சேவைகள்",
"Building services on Matrix": "Matrix- ல் சேவைகளைக் கட்டமைக்க",
"Contributing code to Matrix and Riot": "Matrix மற்றும் Riot -ற்க்கு நிரல் பங்களிக்க"
}

View File

@ -10,7 +10,7 @@
"Thursday": "గురువారం",
"Saturday": "శనివారం",
"Sunday": "ఆదివారం",
"Failed to forget room %(errCode)s": "గది %(errCode) లు మర్చిపోవడంలో విఫలమైంది",
"Failed to forget room %(errCode)s": "గది మర్చిపోవడం విఫలమైంది %(errCode)s",
"unknown error code": "తెలియని కోడ్ లోపం",
"A new version of Riot is available.": "కొత్త రిమోట్ వివరణము అందుబాటులో ఉంది.",
"Add an email address above to configure email notifications": "ఇమెయిల్ ప్రకటనలను రూపశిల్పం చేయడానికి ఎగువ ఇమెయిల్ చిరునామాను జోడించండి",
@ -18,14 +18,13 @@
"All messages": "అన్ని సందేశాలు",
"All messages (loud)": "అన్ని సందేశాలు (గట్టిగ)",
"All Rooms": "అన్ని గదులు",
"Call invitation": "కాల్ ఆహ్వానం",
"Cancel Sending": "రద్దు చేయడాన్ని రద్దు చేయండి",
"Can't update user notification settings": "వినియోగదారు తాఖీదు అమరిక నవీకరించలేరు",
"Changelog": "నమోదు మార్చండి",
"Call invitation": "మాట్లాడడానికి ఆహ్వానం",
"Cancel Sending": "పంపడాన్ని ఆపేయండి",
"Can't update user notification settings": "వినియోగదారు ప్రకటన ప్రాదాన్యాలు నవీకరించదడానేకి రాదు",
"Changelog": "మార్పు వివరణ",
"Collapse panel": "ప్యానెల్ కుదించు",
"Collecting app version information": "అనువర్తన సంస్కరణ సమాచారాన్ని సేకరించడం",
"Collecting logs": "నమోదు సేకరించడం",
"Create new room": "క్రొత్త గది సృష్టించండి",
"Couldn't find a matching Matrix room": "సరిపోలిక మ్యాట్రిక్స్ గదిని కనుగొనలేకపోయాము",
"Custom Server Options": "మలచిన సేవిక ఎంపికలు",
"delete the alias.": "అలియాస్ తొలగించండి.",
@ -34,7 +33,6 @@
"Directory": "వివరం",
"Dismiss": "రద్దుచేసే",
"Download this file": "ఈ దస్త్రం దిగుమతి చేయండి",
"Drop here %(toAction)s": "ఇక్కడ వదలండి %(toAction)s",
"Enable audible notifications in web client": "వెబ్ బంట్రౌతు వినిపించే నోటిఫికేషన్లను ప్రారంభించండి",
"Enable desktop notifications": "రంగస్థల తాఖీదు ప్రారంభించండి",
"Enable email notifications": "ఇమెయిల్ ప్రకటనలను ప్రారంభించండి",
@ -45,13 +43,11 @@
"Error saving email notification preferences": "ఇమెయిల్ ప్రకటనలను ప్రాధాన్యతలను దాచు చేయడంలో లోపం",
"#example": "#ఉదాహరణ",
"Expand panel": "ప్యానెల్ను విస్తరింపజేయండి",
"Failed to": "విఫలమైంది",
"Failed to add tag %(tagName)s to room": "%(tagName)s ను బొందు జోడించడంలో విఫలమైంది",
"Failed to change settings": "అమరిక మార్చడం విఫలమైంది",
"Failed to update keywords": "కీలక పదాలను నవీకరించడంలో విఫలమైంది",
"Failed to get protocol list from Home Server": "హోమ్ సర్వర్ నుండి ప్రోటోకాల్ జాబితాను పొందడం విఫలమైంది",
"Failed to get public room list": "ప్రజా గది జాబితాను పొందడం విఫలమైంది",
"Failed to join the room": "గదిలో చేరడం విఫలమైంది",
"Failed to remove tag %(tagName)s from room": "గది నుండి బొందు %(tagName)s తొలగించడంలో విఫలమైంది",
"Failed to send report: ": "నివేదికను పంపడంలో విఫలమైంది: ",
"Failed to set direct chat tag": "ప్రత్యక్ష మాటామంతి బొందు సెట్ చేయడంలో విఫలమైంది",
@ -62,9 +58,7 @@
"Filter room names": "గది పేర్లను ఫిల్టర్ చేయండి",
"Forget": "మర్చిపో",
"Forward Message": "సందేశాన్ని మునుముందుకు చేయండి",
" from room": " గది నుండి",
"Guests can join": "అతిథులు చేరవచ్చు",
"Guest users can't invite users. Please register to invite.": "అతిథి వినియోగదారులు వినియోగదారులను ఆహ్వానించలేరు. దయచేసి ఆహ్వానించడానికి నమోదు చేయండి.",
"Hide panel": "ప్యానెల్ను దాచు",
"(HTTP status %(httpStatus)s)": "(HTTP స్థితి %(httpStatus)s)",
"I understand the risks and wish to continue": "నేను నష్టాలను అర్థం చేసుకుంటాను మరియు కొనసాగించాలని కోరుకుంటున్నాను",
@ -87,42 +81,41 @@
"No rooms to show": "చూపించడానికి గదులు లేవు",
"Noisy": "శబ్దం",
"Notification targets": "తాఖీదు లక్ష్యాలు",
"Notifications": "తాఖీదు",
"Notifications": "ప్రకటనలు",
"Notify for all other messages/rooms": "అన్ని ఇతర సందేశాలు / గదులు కోసం తెలియజేయండి",
"Off": "ఆపు",
"On": "వేయుము",
"Operation failed": "కార్యం విఫలమైంది",
"Reject": "తిరస్కరించు",
"Remove %(name)s from the directory?": "వివరము %(name)s నుండి తొలిగించు?",
"Remove %(name)s from the directory?": "వివరము నుండి %(name)s తొలిగించు?",
"Remove": "తొలగించు",
"remove %(name)s from the directory.": "వివరము %(name)s నుండి తొలిగించు.",
"remove %(name)s from the directory.": "వివరము నుండి %(name)s ను తొలిగించు.",
"Remove from Directory": "`వివరము నుండి తొలిగించు",
"Report a bug": "లోపమును నివేదించు",
"Resend": "మళ్ళి పంపుము",
"Riot Desktop on %(platformName)s": "రియట్ రంగస్థలం లో %(platformName)s",
"Room directory": "గది వివరము",
"Room not found": "గది కనుగొనబడలేదు",
"Search": "శోధన",
"Search…": "శోధన…",
"Search for a room": "గది కోసం శోధించండి",
"Send": "పంపండి",
"Send logs": "నమోదును పంపు",
"Settings": "అమరికలు",
"Source URL": "మూల URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "క్షమించండి, మీ బ్రౌజర్ <b>రియట్ని అమలు చేయలేరు</b>.",
"Today": "ఈ రోజు",
"Yesterday": "నిన్న",
"Warning": "హెచ్చరిక",
"Checking for an update...": "నవీకరణ కోసం తనిఖీ చేస్తోంది ...",
"Checking for an update...": "నవీకరణ కోసం చూస్తోంది...",
"Error encountered (%(errorDetail)s).": "లోపం సంభవించింది (%(errorDetail)s).",
"No update available.": "ఏ నవీకరణ అందుబాటులో లేదు.",
"Downloading update...": "నవీకరణను దిగుమతి చేస్తోంది...",
"Welcome page": "స్వాగత పేజీ",
"Welcome to Riot.im": "రిమోట్.ఇం కి స్వగతం",
"Search the room directory": "గది వివరాన్ని శోధించండి",
"Chat with Riot Bot": "రియోట్ బొట్తో మాటామంతి చేయండి",
"Please set a password!": "దయచేసి మీ రహస్యపదాన్నీ అమర్చండి!",
"Set Password": "రహస్యపదాన్నీ అమర్చండి",
"Couldn't load home page": "హోమ్ పేజీని లోడ్ చేయలేకపోయాము",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">సఫరి</a>ఇంక<a href=\"http://opera.com\">ఒపెర</a>కుద పని చెసతయి."
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">సఫరి</a>ఇంక<a href=\"http://opera.com\">ఒపెర</a>కుద పని చెసతయి.",
"All notifications are currently disabled for all targets.": "ప్రస్తుతానికి అన్ని చోట్లనుంచి అన్ని ప్రకటనలు ఆగి వున్నాయి.",
"An error occurred whilst saving your email notification preferences.": "మీ ఇమెయిల్ ప్రకటన ప్రాధాన్యాలు బద్రపరిచేతప్పుడు ఎదో తప్పు జరిగింది."
}

View File

@ -7,7 +7,6 @@
"#example": "#example",
"Files": "ไฟล์",
"Forward Message": "ส่งต่อข้อความ",
" from room": " จากห้อง",
"Low Priority": "ความสำคัญต่ำ",
"Members": "สมาชิก",
"more": "เพิ่มเติม",
@ -21,7 +20,6 @@
"All Rooms": "ทุกห้อง",
"Cancel Sending": "ยกเลิกการส่ง",
"Changelog": "บันทึกการเปลี่ยนแปลง",
"Create new room": "สร้างห้องใหม่",
"Describe your problem here.": "อธิบายปัญหาที่นี่",
"Download this file": "ดาวน์โหลดไฟล์นี้",
"Dismiss": "ไม่สนใจ",
@ -35,8 +33,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "กรุณาอธิบายจุดบกพร่อง คุณทำอะไร? ควรจะเกิดอะไรขึ้น? แล้วอะไรคือสิ่งที่เกิดขึ้นจริง?",
"Please describe the bug and/or send logs.": "กรุณาอธิบายจุดบกพร่อง และ/หรือ ส่งล็อก",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "กรุณาติดตั้ง <a href=\"https://www.google.com/chrome\">Chrome</a> หรือ <a href=\"https://getfirefox.com\">Firefox</a> เพื่อประสบการณ์ที่ดีที่สุด",
"Please Register": "กรุณาลงทะเบียน",
"Redact": "ลบ",
"Reject": "ปฏิเสธ",
"Remove": "ลบ",
"Messages containing <span>keywords</span>": "ข้อความที่มี<span>คีย์เวิร์ด</span>",
@ -47,10 +43,8 @@
"Search for a room": "ค้นหาห้อง",
"Send": "ส่ง",
"Send logs": "ส่งล็อก",
"Settings": "การตั้งค่า",
"Sorry, your browser is <b>not</b> able to run Riot.": "ขออภัย เบราว์เซอร์ของคุณ<b>ไม่</b>สามารถ run Riot ได้",
"This Room": "ห้องนี้",
" to room": " ไปยังห้อง",
"Unavailable": "ไม่มี",
"Unknown device": "อุปกรณ์ที่ไม่รู้จัก",
"unknown error code": "รหัสข้อผิดพลาดที่ไม่รู้จัก",
@ -77,15 +71,12 @@
"Collapse panel": "ซ่อนหน้าต่าง",
"Collecting app version information": "กำลังรวบรวมข้อมูลเวอร์ชันแอป",
"OK": "ตกลง",
"Welcome page": "หน้าต้อนรับ",
"You need to be using HTTPS to place a screen-sharing call.": "คุณต้องใช้ HTTPS เพื่อเริ่มติดต่อแบบแบ่งปันหน้าจอ",
"You are not receiving desktop notifications": "การแจ้งเตือนบนเดสก์ทอปถูกปิดอยู่",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "คุณกำลังใช้ Riot ในฐานะแขก <a>ลงทะเบียน</a>หรือ<a>เข้าสู่ระบบ</a>เพื่อเข้าถึงห้องและคุณสมบัติอื่น ๆ เพิ่มเติม!",
"Waiting for response from server": "กำลังรอการตอบสนองจากเซิร์ฟเวอร์",
"View Decrypted Source": "ดูซอร์สที่ถอดรหัสแล้ว",
"Unnamed room": "ห้องที่ไม่มีชื่อ",
"Source URL": "URL ต้นฉบับ",
"Start chat": "เริ่มแชท",
"Riot Desktop on %(platformName)s": "Riot เดสก์ทอปบน %(platformName)s",
"Riot is not supported on mobile web. Install the app?": "Riot ไม่รองรับเว็บบนอุปกรณ์พกพา ติดตั้งแอป?",
"Riot does not know how to join a room on this network": "Riot ไม่รู้วิธีเข้าร่วมห้องในเครือข่ายนี้",
@ -101,7 +92,6 @@
"Enter keywords separated by a comma:": "กรอกคีย์เวิร์ดทั้งหมด คั่นด้วยเครื่องหมายจุลภาค:",
"Expand panel": "ขยายหน้าต่าง",
"Failed to update keywords": "การอัปเดตคีย์เวิร์ดล้มเหลว",
"Failed to join the room": "การเข้าร่วมห้องล้มเหลว",
"Failed to remove tag %(tagName)s from room": "การลบแท็ก %(tagName)s จากห้องล้มเหลว",
"Failed to send report: ": "การส่งรายงานล้มเหลว: ",
"Filter room names": "กรองชื่อห้อง",
@ -125,9 +115,7 @@
"remove %(name)s from the directory.": "ถอด %(name)s ออกจากไดเรกทอรี",
"Remove from Directory": "ถอดออกจากไดเรกทอรี",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot ใช้คุณสมบัติขั้นสูงในเบราว์เซอร์หลายประการ คุณสมบัติบางอย่างอาจยังไม่พร้อมใช้งานหรืออยู่ในขั้นทดลองในเบราว์เซอร์ปัจจุบันของคุณ",
"Room directory": "ไดเรกทอรีห้อง",
"There are advanced notifications which are not shown here": "มีการแจ้งเตือนขั้นสูงที่ไม่ได้แสดงที่นี่",
"This room is inaccessible to guests. You may be able to join if you register.": "แขกไม่มีสิทธิ์เข้าถึงห้องนี้ หากคุณลงทะเบียนคุณอาจเข้าร่วมได้",
"Unable to join network": "ไม่สามารถเข้าร่วมเครือข่ายได้",
"Unable to look up room ID from server": "ไม่สามารถหา ID ห้องจากเซิร์ฟเวอร์ได้",
"Unhide Preview": "แสดงตัวอย่าง",
@ -140,7 +128,6 @@
"Couldn't find a matching Matrix room": "ไม่พบห้อง Matrix ที่ตรงกับคำค้นหา",
"customServer_text": "คุณสามารถกำหนดเซิร์ฟเวอร์บ้านเองได้โดยใส่ URL ของเซิร์ฟเวอร์นั้น เพื่อเข้าสู่ระบบของเซิร์ฟเวอร์ Matrix อื่น<br/>ทั้งนี่เพื่อให้คุณสามารถใช้ Riot กับบัญชี Matrix ที่มีอยู่แล้วบนเซิร์ฟเวอร์บ้านอื่น ๆ ได้<br/><br/>คุณอาจเลือกเซิร์ฟเวอร์ระบุตัวตนเองด้วยก็ได้ แต่คุณจะไม่สามารถเชิญผู้ใช้อื่นด้วยที่อยู่อีเมล หรือรับคำเชิญจากผู้ใช้อื่นทางที่อยู่อีเมลได้",
"delete the alias.": "ลบนามแฝง",
"Drop here %(toAction)s": "ปล่อยที่นี่%(toAction)s",
"Error saving email notification preferences": "การบันทึกการตั้งค่าการแจ้งเตือนทางอีเมลผิดพลาด",
"Failed to add tag %(tagName)s to room": "การเพิ่มแท็ก %(tagName)s ของห้องนี้ล้มเหลว",
"Failed to change settings": "การแก้ไขการตั้งค่าล้มเหลว",
@ -149,9 +136,7 @@
"Failed to set direct chat tag": "การติดแท็กแชทตรงล้มเหลว",
"Failed to set Direct Message status of room": "การตั้งสถานะข้อความตรงของห้องล้มเหลว",
"Favourite": "รายการโปรด",
"Failed to": "ล้มเหลวในการ",
"Fetching third party location failed": "การเรียกข้อมูลตำแหน่งจากบุคคลที่สามล้มเหลว",
"Guest users can't invite users. Please register to invite.": "แขกไม่สามารถเชิญผู้ใช้ได้ กรุณาลงทะเบียนเพื่อเชิญผู้อื่น",
"The Home Server may be too old to support third party networks": "เซิร์ฟเวอร์บ้านอาจเก่าเกินกว่าจะรองรับเครือข่ายของบุคคลที่สาม",
"The server may be unavailable or overloaded": "เซิร์ฟเวอร์อาจไม่พร้อมใช้งานหรือทำงานหนักเกินไป",
"Unable to fetch notification target list": "ไม่สามารถรับรายชื่ออุปกรณ์แจ้งเตือน",
@ -166,7 +151,6 @@
"Search the room directory": "ค้นหาในไดเรกทอรีห้อง",
"Chat with Riot Bot": "แชทกับบอท Riot",
"Get started with some tips from Riot Bot!": "มาเริ่มกันด้วยเคล็ดลับเล็กน้อยจากบอท Riot!",
"General discussion about Matrix": "พูดคุยเรื่องทั่วไปเกี่ยวกับ Matrix",
"Discussion of all things Matrix!": "พูดคุยทุกเรื่อง เรื่อง Matrix!",
"Riot/Web &amp; Desktop chat": "แชทเกี่ยวกับ Riot บนเว็บและเดสก์ทอป",
"Riot/iOS &amp; matrix-ios-sdk chat": "แชทเกี่ยวกับ Riot บน iOS และ matrix-ios-sdk",

View File

@ -18,7 +18,6 @@
"Collapse panel": "Katlanır panel",
"Collecting app version information": "Uygulama sürümü bilgileri toplanıyor",
"Collecting logs": "Kayıtlar toplanıyor",
"Create new room": "Yeni Oda Oluştur",
"Couldn't find a matching Matrix room": "Eşleşen bir Matrix odası bulunamadı",
"Custom Server Options": "Özel Sunucu Seçenekleri",
"customServer_text": "Farklı bir Ana Sunucu URL'si belirleyerek başka bir Matrix sunucusunda oturum açmak için Özel Sunucu Seçeneklerini kullanabilirsiniz. <br/> Bu , Riot'u mevcut Matrix hesabı ile farklı bir Ana Sunucuda kullanmanıza olanak tanır.<br/> <br/> Ayrıca Özel Kimlik Sunucu'da ayarlayabilirsiniz ama kullanıcıları e-posta adresleriyle veya kendi e-posta adresinizle davet edemezsiniz.",
@ -29,7 +28,6 @@
"Directory": "Dizin",
"Dismiss": "Uzaklaştır",
"Download this file": "Bu dosyayı indir",
"Drop here %(toAction)s": "%(toAction)s'ı buraya bırak",
"Enable audible notifications in web client": "Web istemcisinde sesli bildirimleri etkinleştir",
"Enable desktop notifications": "Masaüstü bildirimlerini etkinleştir",
"Enable email notifications": "E-posta bildirimlerini etkinleştir",
@ -40,14 +38,12 @@
"Error saving email notification preferences": "E-posta bildirim tercihlerini kaydetme hatası",
"#example": "örnek",
"Expand panel": "Genişletme paneli",
"Failed to": "Başaramadı",
"Failed to add tag %(tagName)s to room": "%(tagName)s etiketi odaya eklenemedi",
"Failed to change settings": "Ayarlar değiştirilemedi",
"Failed to forget room %(errCode)s": "Oda unutulması başarısız oldu %(errCode)s",
"Failed to update keywords": "Anahtar kelimeler güncellenemedi",
"Failed to get protocol list from Home Server": "Ana Sunucu'dan protokol listesi alınamadı",
"Failed to get public room list": "Genel odalar listesi alınamadı",
"Failed to join the room": "Odaya girme başarısız oldu",
"Failed to remove tag %(tagName)s from room": "Odadan %(tagName)s etiketi kaldırılamadı",
"Failed to send report: ": "Rapor gönderilemedi: ",
"Failed to set direct chat tag": "Direkt sohbet etiketi ayarlanamadı",
@ -58,9 +54,7 @@
"Filter room names": "Oda isimlerini filtrele",
"Forget": "Unut",
"Forward Message": "Mesajı İlet",
" from room": " Odadan",
"Guests can join": "Misafirler katılabilirler",
"Guest users can't invite users. Please register to invite.": "Misafir kullanıcılar kullanıcıları davet edemezler . Davet etmek için lütfen kayıt olun.",
"Hide panel": "Paneli gizle",
"(HTTP status %(httpStatus)s)": "(HTTP durumu %(httpStatus)s)",
"I understand the risks and wish to continue": "Riskleri anlıyorum ve devam etmek istiyorum",
@ -95,10 +89,8 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Lütfen hatayı tanımlayın. Ne yaptınız ? Ne gerçekleşmesini beklediniz ? Ne gerçekleşti ?",
"Please describe the bug and/or send logs.": "Lütfen hatayı tanımlayın ve/veya kayıtları gönderin.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Lütfen <a href=\"https://www.google.com/chrome\"> Chrome </a> ya da <a href=\"https://getfirefox.com\"> Firefox </a> 'u en iyi deneyim için yükleyin.",
"Please Register": "Lütfen Kaydolun",
"powered by Matrix": "Matrix tarafından desteklenmektedir",
"Quote": "Alıntı",
"Redact": "Yazıya Dökme",
"Reject": "Reddet",
"Remove %(name)s from the directory?": "%(name)s'i dizinden kaldırılsın mı ?",
"Remove": "Kaldır",
@ -110,23 +102,18 @@
"Riot does not know how to join a room on this network": "Riot bu ağdaki bir odaya nasıl gireceğini bilmiyor",
"Riot is not supported on mobile web. Install the app?": "Riot mobil web'de desteklenmiyor . Uygulamayı yükle ?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot geçerli tarayıcınızda mevcut olmayan veya denemelik olan birçok gelişmiş tarayıcı özelliği kullanıyor.",
"Room directory": "Oda Rehberi",
"Room not found": "Oda bulunamadı",
"Search": "Ara",
"Search…": "Arama…",
"Search for a room": "Oda ara",
"Send": "Gönder",
"Send logs": "Kayıtları gönder",
"Settings": "Ayarlar",
"Source URL": "Kaynak URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Üzgünüz , tarayıcınız Riot'u <b> çalıştıramıyor </b>.",
"Start chat": "Sohbet Başlat",
"The Home Server may be too old to support third party networks": "Ana Sunucu 3. parti ağları desteklemek için çok eski olabilir",
"There are advanced notifications which are not shown here": "Burada gösterilmeyen gelişmiş bildirimler var",
"The server may be unavailable or overloaded": "Sunucu kullanılamıyor veya aşırı yüklenmiş olabilir",
"This Room": "Bu Oda",
"This room is inaccessible to guests. You may be able to join if you register.": "Bu odaya misafirler tarafından erişilemez . Kaydolursanız katılabilirsiniz.",
" to room": " odasına",
"Unable to fetch notification target list": "Bildirim hedef listesi çekilemedi",
"Unable to join network": "Ağa bağlanılamıyor",
"Unable to look up room ID from server": "Sunucudan oda ID'si aranamadı",
@ -148,7 +135,6 @@
"You cannot delete this image. (%(code)s)": "Bu resmi silemezsiniz. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Bu mesajı silemezsiniz (%(code)s)",
"You are not receiving desktop notifications": "Masaüstü bildirimleri almıyorsunuz",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Konuk olarak Riotluyorsunuz. Daha fazla odaya ve özelliğe erişmek için <a> Kayıt Ol </a> ya da <a> Oturum Aç </a> !",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Onları Riot dışında bir istemciden yapılandırmış olabilirsiniz . Onları Riot içersinide ayarlayamazsınız ama hala geçerlidirler",
"Sunday": "Pazar",
"Monday": "Pazartesi",
@ -161,7 +147,6 @@
"Yesterday": "Dün",
"OK": "Tamam",
"You need to be using HTTPS to place a screen-sharing call.": "Ekran paylaşımlı arama yapmak için HTTPS kullanıyor olmalısınız.",
"Welcome page": "Karşılama sayfası",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Geçerli tarayıcınız ile birlikte , uygulamanın görünüş ve kullanım hissi tamamen hatalı olabilir ve bazı ya da tüm özellikler çalışmayabilir. Yine de denemek isterseniz devam edebilirsiniz ancak karşılaşabileceğiniz sorunlar karşısında kendi başınasınız !",
"Welcome to Riot.im": "Riot.im'e Hoş Geldiniz",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Dağıtık , şifreli sohbet &amp; işbirliği ile Matrix tarafından desteklenmektedir",

View File

@ -13,7 +13,6 @@
"Collapse panel": "Згорнути панель",
"Collecting app version information": "Збір інформації про версію застосунка",
"Collecting logs": "Збір журналів",
"Create new room": "Створити нову кімнату",
"Couldn't find a matching Matrix room": "Неможливо знайти відповідну кімнату",
"Custom Server Options": "Нетипові параметри сервера",
"customServer_text": "Ви можете скористатись нетиповими параметрами сервера щоб увійти в інші сервери Matrix, зазначивши посилання на окремий Домашній сервер<br/>Це дозволяє вам використовувати Riot із вже існуючою обліковкою Matrix на іншому Домашньому сервері.<br/><br/>Ви також можете зазначити нетиповий сервер ідентифікації, але ви не матимете змоги ані запрошувати користувачів за е-поштою, ані бути запрошеними за е-поштою самі.",
@ -38,14 +37,12 @@
"Error saving email notification preferences": "Помилка при збереженні параметрів сповіщень е-поштою",
"#example": "#зразок",
"Expand panel": "Розгорнути панель",
"Failed to": "Не вдалось",
"Failed to add tag %(tagName)s to room": "Не вдалось додати до кімнати мітку %(tagName)s",
"Failed to change settings": "Не вдалось змінити налаштування",
"Failed to forget room %(errCode)s": "Не вдалось забути кімнату %(errCode)s",
"Failed to forget room %(errCode)s": "Не вдалось видалити кімнату %(errCode)s",
"Failed to update keywords": "Не вдалось оновити ключові слова",
"Failed to get protocol list from Home Server": "Не вдалось отримати перелік протоколів з Домашнього серверу",
"Failed to get public room list": "Не вдалось отримати перелік прилюдних кімнат",
"Failed to join the room": "Не вдалося приєднатись до кімнати",
"Failed to remove tag %(tagName)s from room": "Не вдалося прибрати з кімнати мітку %(tagName)s",
"Failed to send report: ": "Не вдалося надіслати звіт: ",
"Failed to set direct chat tag": "Не вдалося встановити мітку прямого чату",
@ -55,9 +52,7 @@
"Filter room names": "Відфільтрувати назви кімнат",
"Forget": "Забути",
"Forward Message": "Переслати повідомлення",
" from room": " з кімнати",
"Guests can join": "Гості можуть приєднуватися",
"Guest users can't invite users. Please register to invite.": "Гості не можуть запрошувати користувачів. Зареєструйтесь, будь ласка, для видачі запрошень.",
"Hide panel": "Сховати панель",
"(HTTP status %(httpStatus)s)": "(статус HTTP %(httpStatus)s)",
"I understand the risks and wish to continue": "Я ознайомлений з ризиками і хочу продовжити",
@ -87,10 +82,8 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Опишіть, будь ласка, ваду. Що ви зробили? На що ви очікували? Що трапилось натомість?",
"Please describe the bug and/or send logs.": "Опишіть, будь ласка, ваду та/або надішліть журнали.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Для більшої зручності у використанні встановіть, будь ласка, <a href=\"https://www.google.com/chrome\">Chrome</a> або <a href=\"https://getfirefox.com\">Firefox</a>.",
"Please Register": "Зареєструйтеся, будь ласка",
"powered by Matrix": "працює на Matrix",
"Quote": "Цитувати",
"Redact": "Видалити",
"Reject": "Відмовитись",
"Remove %(name)s from the directory?": "Прибрати %(name)s з каталогу?",
"Remove": "Прибрати",
@ -100,27 +93,21 @@
"Resend": "Перенадіслати",
"Riot Desktop on %(platformName)s": "Riot Desktop на %(platformName)s",
"Call invitation": "Запрошення до виклику",
"Drop here %(toAction)s": "Кидайте сюди %(toAction)s",
"Riot does not know how to join a room on this network": "Riot не знає як приєднатись до кімнати у цій мережі",
"Riot is not supported on mobile web. Install the app?": "Riot не працює через оглядач на мобільних пристроях. Встановити застосунок?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot використовує багато новітніх функцій, деякі з яких не доступні або є експериментальними у вашому оглядачі.",
"Room directory": "Каталог кімнат",
"Room not found": "Кімнату не знайдено",
"Search": "Пошук",
"Search…": "Пошук…",
"Search for a room": "Пошук кімнати",
"Send": "Надіслати",
"Send logs": "Надіслати журнали",
"Settings": "Налаштування",
"Source URL": "Джерельне посилання",
"Sorry, your browser is <b>not</b> able to run Riot.": "Вибачте, ваш оглядач <b>не</b> спроможний запустити Riot.",
"Start chat": "Почати розмову",
"The Home Server may be too old to support third party networks": "Домашній сервер може бути застарим для підтримки сторонніх мереж",
"There are advanced notifications which are not shown here": "Є додаткові сповіщення, що не показуються тут",
"The server may be unavailable or overloaded": "Сервер може бути недосяжним або перевантаженим",
"This Room": "Ця кімната",
"This room is inaccessible to guests. You may be able to join if you register.": "Ця кімната є недосяжною для гостей. Напевно ви матимете змогу приєднатись, якщо зареєструєтесь.",
" to room": " до кімнати",
"Unable to fetch notification target list": "Неможливо отримати перелік цілей сповіщення",
"Unable to join network": "Неможливо приєднатись до мережі",
"Unable to look up room ID from server": "Неможливо знайти ID кімнати на сервері",
@ -140,7 +127,6 @@
"You cannot delete this image. (%(code)s)": "Ви не можете видалити це зображення. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Ви не можете видалити це повідомлення. (%(code)s)",
"You are not receiving desktop notifications": "Ви не отримуєте сповіщення на стільниці",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Ви Riot'уєте як гість. <a>Зареєструйтеся</a> або <a>увійдіть</a> щоб мати ширший доступ до кімнат та функцій!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Можливо, ви налаштували їх не у Riot, а у іншому застосунку. Ви не можете регулювати їх у Riot, але вони все ще мають силу",
"Sunday": "Неділя",
"Monday": "Понеділок",
@ -153,7 +139,6 @@
"Yesterday": "Вчора",
"OK": "Гаразд",
"You need to be using HTTPS to place a screen-sharing call.": "Ви маєте використовувати HTTPS щоб зробити виклик із поширенням екрану.",
"Welcome page": "Ласкаво просимо",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "У вашому оглядачі вигляд застосунку може бути повністю іншим, а деякі або навіть усі функції можуть не працювати. Якщо ви наполягаєте, то можете продовжити користування, але ви маєте впоратись з усіма можливими проблемами власноруч!",
"Welcome to Riot.im": "Ласкаво просимо до Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Децентралізований, шифрований чат та засіб для співробітництва, що працює на [matrix]",
@ -205,6 +190,31 @@
"Checking for an update...": "Перевірка оновлень…",
"Error encountered (%(errorDetail)s).": "Трапилась помилка (%(errorDetail)s).",
"No update available.": "Оновлення відсутні.",
"Downloading update...": "Звантажується оновлення…",
"Couldn't load home page": "Не вдалось завантажити домівку"
"Downloading update...": "Звантаженя оновлення…",
"Couldn't load home page": "Не вдалось завантажити домівку",
"Back": "Назад",
"Bug report sent": "Звіт про помилки відправлений",
"Developer Tools": "Інструменти розробника",
"Failed to send custom event.": "Не вдалося відправити приватний захід.",
"Filter results": "Фільтр результатів",
"Send Custom Event": "Відправити приватний захід",
"Send Custom State Event": "Відправити статус приватного заходу",
"Explore Room State": "Перегляд статуса кімнати",
"You must specify an event type!": "Необхідно вказати тип захода!",
"Thank you!": "Дякую!",
"Event sent!": "Захід відправлено!",
"Event Type": "Тип західу",
"Event Content": "Зміст заходу",
"State Key": "Ключ стану",
"Show message in desktop notification": "Показати повідомлення в сповіщення на робочому столі",
"Edit": "Редактувати",
"Unpin Message": "Відкріпити повідомлення",
"Pin Message": "Прикріпити повідомлення",
"Register": "Зарегіструватись",
"Rooms": "Кімнати",
"Invite to this community": "Запросити в це суспільство",
"Add rooms to this community": "Добавити кімнати в це суспільство",
"Toolbox": "Панель інструментів",
"Send Account Data": "Відправити данні аккаунта",
"Explore Account Data": "Продивитись данні аккаунта"
}

View File

@ -21,7 +21,6 @@
"Changelog": "变更日志",
"Collecting app version information": "正在收集应用版本信息",
"Collecting logs": "正在收集日志",
"Create new room": "创建新聊天室",
"Couldn't find a matching Matrix room": "未找到符合的 Matrix 聊天室",
"Custom Server Options": "自定义服务器选项",
"customServer_text": "你可以通过指定自定义服务器选项中的其他主服务器的 URL 来登录其他 Matrix 服务器。<br/>该选项允许你在 Riot 上使用其他主服务器上的帐号。<br/><br/>你也可以自定义身份验证服务器,但你将不能通过邮件邀请其他用户,同样的,你也不能通过邮件被其他用户邀请。",
@ -33,7 +32,6 @@
"Download this file": "下载该文件",
"Collapse panel": "折叠面板",
"Direct Chat": "私聊",
"Drop here %(toAction)s": "拖拽到这里 %(toAction)s",
"Enable audible notifications in web client": "在网页客户端启用音频通知",
"Enable desktop notifications": "启用桌面通知",
"Enable email notifications": "启用电子邮件通知",
@ -44,14 +42,12 @@
"Error saving email notification preferences": "保存电子邮件通知的首选项时出错",
"#example": "#例子",
"Expand panel": "展开面板",
"Failed to": "失败于",
"Failed to add tag %(tagName)s to room": "无法为聊天室新增标签 %(tagName)s",
"Failed to change settings": "变更设置失败",
"Failed to forget room %(errCode)s": "无法忘记聊天室 %(errCode)s",
"Failed to update keywords": "无法更新关键字",
"Failed to get protocol list from Home Server": "无法从主服务器取得协议列表",
"Failed to get public room list": "无法取得公开的聊天室列表",
"Failed to join the room": "无法加入此聊天室",
"Failed to remove tag %(tagName)s from room": "移除聊天室标签 %(tagName)s 失败",
"Failed to send report: ": "无法发送报告: ",
"Failed to set direct chat tag": "无法设定私聊标签",
@ -62,9 +58,7 @@
"Filter room names": "过滤聊天室名称",
"Forget": "忘记",
"Forward Message": "转发消息",
" from room": " 来自聊天室",
"Guests can join": "访客可以加入",
"Guest users can't invite users. Please register to invite.": "访客不能邀请用户,请先注册再邀请。",
"Hide panel": "隐藏面板",
"(HTTP status %(httpStatus)s)": "(HTTP 状态 %(httpStatus)s)",
"I understand the risks and wish to continue": "我了解这些风险并愿意继续",
@ -96,7 +90,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "请描述这个 bug您做了什么动作预期会发生的状况以及实际发生的",
"Please describe the bug and/or send logs.": "请描述这个 bug 和/或发送日志。",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "请安装 <a href=\"https://www.google.com/chrome\">Chrome</a> 或 <a href=\"https://getfirefox.com\">Firefox</a> 来得到最佳体验。",
"Please Register": "请注册",
"powered by Matrix": "由 Matrix 提供",
"Quote": "引述",
"Reject": "拒绝",
@ -110,23 +103,18 @@
"Riot does not know how to join a room on this network": "Riot 不知道如何在此网络中加入聊天室",
"Riot is not supported on mobile web. Install the app?": "Riot 不支持浏览器网页,要安装 app 吗?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot 使用了许多先进的浏览器功能,有些在你目前所用的浏览器上无法使用或仅为实验性的功能。",
"Room directory": "聊天室目录",
"Room not found": "找不到聊天室",
"Search": "搜索",
"Search…": "搜索…",
"Search for a room": "搜索聊天室",
"Send": "发送",
"Send logs": "发送日志",
"Settings": "设置",
"Source URL": "源网址",
"Sorry, your browser is <b>not</b> able to run Riot.": "抱歉,您的浏览器 <b>无法</b> 运行 Riot.",
"Start chat": "开始聊天",
"The Home Server may be too old to support third party networks": "主服务器可能太老旧无法支持第三方网络",
"There are advanced notifications which are not shown here": "更多的通知并没有在此显示出来",
"The server may be unavailable or overloaded": "服务器可能无法使用或超过负载",
"This Room": "此聊天室",
"This room is inaccessible to guests. You may be able to join if you register.": "此聊天室不对访客开放,要加入须注册。",
" to room": " 到聊天室",
"Unable to fetch notification target list": "无法获取通知目标列表",
"Unable to join network": "无法加入网络",
"Unable to look up room ID from server": "无法在服务器上找到聊天室 ID",
@ -139,7 +127,7 @@
"Uploaded on %(date)s by %(user)s": "由 %(user)s 在 %(date)s 上传",
"Uploading report": "上传报告",
"View Decrypted Source": "查看解密的来源",
"View Source": "查看源",
"View Source": "查看",
"What's New": "新鲜事",
"What's new?": "有什么新闻?",
"Waiting for response from server": "正在等待来自服务器的回应",
@ -148,7 +136,6 @@
"You cannot delete this image. (%(code)s)": "您不能删除这个图片。(%(code)s)",
"You cannot delete this message. (%(code)s)": "您不能删除此消息。(%(code)s)",
"You are not receiving desktop notifications": "您将不会收到桌面通知",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "您目前以访客身份使用 Riot <a>注册</a> 或 <a>登录</a> 来加入更多聊天室和特性!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "您也许不曾在其他 Riot 之外的客户端设置它们。在 Riot 下你无法调整他们但仍然可用",
"Sunday": "星期日",
"Monday": "星期一",
@ -165,7 +152,6 @@
"No update available.": "没有可用更新。",
"Downloading update...": "正在下载更新…",
"You need to be using HTTPS to place a screen-sharing call.": "你需要使用 HTTPS 来放置屏幕分享通话。",
"Welcome page": "欢迎页面",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "您目前的浏览器,应用程序的外观和感觉完全不正确,有些或全部功能可能无法使用。如果您仍想继续尝试,可以继续,但请自行负担其后果!",
"Welcome to Riot.im": "欢迎来到 Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "去中心化,加密聊天 &amp; 由 [matrix] 提供",
@ -205,5 +191,17 @@
"Remember, you can always set an email address in user settings if you change your mind.": "请记住,如果您改变想法,您永远可以在用户设置中设置电子邮件。",
"To return to your account in future you need to <u>set a password</u>": "要在未来回到您的账号,您需要 <u>设置密码</u>",
"Set Password": "设置密码",
"Couldn't load home page": "不能加载首页"
"Couldn't load home page": "不能加载首页",
"Bug report sent": "发送DEBUG报告",
"Thank you!": "谢谢!",
"Developer Tools": "开发者工具",
"Failed to send custom event.": "发送自定义事件失败。",
"Filter results": "过滤结果",
"Send Custom Event": "发送自定义事件",
"Send Custom State Event": "发送自定义状态事件",
"You must specify an event type!": "你必须制定一个事件类型!",
"Event sent!": "事件已发出!",
"Event Type": "事件类型",
"Event Content": "事件内容",
"State Key": "状态密钥"
}

View File

@ -1,12 +1,9 @@
{
"Direct Chat": "私人聊天",
"Drop here %(toAction)s": "拖曳到這裡 %(toAction)s",
"Error": "錯誤",
"Failed to forget room %(errCode)s": "無法忘記聊天室 %(errCode)s",
"Failed to join the room": "無法加入此聊天室",
"Favourite": "我的最愛",
"Search": "搜尋",
"Settings": "設定",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s 透過 %(browserName)s 在 %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> 與 <a href=\"http://opera.com\">Opera</a> 也能使用。",
"Advanced notification settings": "進階通知設定",
@ -21,7 +18,6 @@
"Close": "關閉",
"Collapse panel": "摺疊面板",
"Collecting logs": "收集記錄",
"Create new room": "建立新聊天室",
"Couldn't find a matching Matrix room": "不能找到符合 Matrix 的聊天室",
"Custom Server Options": "自訂伺服器選項",
"delete the alias.": "刪除別名。",
@ -35,7 +31,6 @@
"Enable them now": "現在啟用它們",
"#example": "#範例",
"Expand panel": "展開面板",
"Failed to": "失敗於",
"Failed to change settings": "變更設定失敗",
"Failed to update keywords": "無法更新關鍵字",
"Members": "成員",
@ -58,17 +53,13 @@
"Quote": "引述",
"Remove": "移除",
"Resend": "重新傳送",
"Room directory": "聊天室目錄",
"Room not found": "找不到聊天室",
"Search…": "搜尋…",
"Search for a room": "搜尋聊天室",
"Send": "傳送",
"Send logs": "傳送記錄",
"Source URL": "來源網址",
"Start chat": "開始聊天",
"This Room": "這個聊天室",
"This room is inaccessible to guests. You may be able to join if you register.": "這個聊天室不對訪客開放,要加入須先註冊。",
" to room": " 到聊天室",
"Unable to join network": "無法加入網路",
"Unable to look up room ID from server": "無法從伺服器找到聊天室 ID",
"Unavailable": "無法取得",
@ -97,7 +88,6 @@
"Yesterday": "昨天",
"OK": "確定",
"You need to be using HTTPS to place a screen-sharing call.": "你需要使用 HTTPS 來放置螢幕分享的通話。",
"Welcome page": "歡迎頁面",
"A new version of Riot is available.": "Riot 釋出了新版本。",
"Add an email address above to configure email notifications": "在上面新增電子郵件以設定電子郵件通知",
"All notifications are currently disabled for all targets.": "目前所有的通知功能已停用。",
@ -119,9 +109,7 @@
"Filter room names": "過濾聊天室名稱",
"Forget": "忘記",
"Forward Message": "轉寄訊息",
" from room": " 來自聊天室",
"Guests can join": "訪客可以加入",
"Guest users can't invite users. Please register to invite.": "訪客不能邀請使用者,請先註冊再邀請。",
"Hide panel": "隱藏面板",
"I understand the risks and wish to continue": "我了解這些風險並願意繼續",
"Invite to this room": "邀請加入這個聊天室",
@ -133,8 +121,6 @@
"Notify me for anything else": "所有消息都通知我",
"Permalink": "永久連結",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "諘安裝 <a href=\"https://www.google.com/chrome\">Chrome</a> 或 <a href=\"https://getfirefox.com\">Firefox</a> 來取得最佳體驗。",
"Please Register": "請註冊",
"Redact": "纂輯\t",
"Reject": "拒絕",
"Remove %(name)s from the directory?": "自目錄中移除 %(name)s",
"remove %(name)s from the directory.": "自目錄中移除 %(name)s。",
@ -158,7 +144,6 @@
"World readable": "公開可讀",
"You cannot delete this image. (%(code)s)": "你不能刪除這個圖片。(%(code)s)",
"You are not receiving desktop notifications": "你將不會收到桌面通知",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "你目前以訪客身份使用 Riot <a>註冊</a> 或 <a>登入</a> 來使用更多聊天室和功能!",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "你也許不曾在其它 Riot 之外的客戶端設定它們。在 Riot 底下你無法調整它們但其仍然可用",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "您目前的瀏覽器,其應用程式的外觀和感覺可能完全不正確,有些或全部功能可以無法使用。如果您仍想要繼續嘗試,可以繼續,但必須自行承擔後果!",
"(HTTP status %(httpStatus)s)": "(HTTP 狀態 %(httpStatus)s)",
@ -206,5 +191,31 @@
"Remember, you can always set an email address in user settings if you change your mind.": "記住,如果您改變心意了,您永遠可以在使用者設定中設定電子郵件地址。",
"To return to your account in future you need to <u>set a password</u>": "要在未來回到您的帳號,您需要 <u>設定密碼</u>",
"Set Password": "設定密碼",
"Couldn't load home page": "無法載入首頁"
"Couldn't load home page": "無法載入首頁",
"Bug report sent": "已傳送臭蟲回報",
"Thank you!": "感謝您!",
"Back": "返回",
"Developer Tools": "開發者工具",
"Failed to send custom event.": "傳送自訂式件失敗。",
"Send Custom Event": "傳送自訂事件",
"Send Custom State Event": "傳送自訂狀態事件",
"Explore Room State": "探索聊天室狀態",
"Event sent!": "事件已傳送!",
"Event Type": "事件類型",
"Event Content": "事件內容",
"State Key": "狀態金鑰",
"Filter results": "過濾結果",
"You must specify an event type!": "您必須指定事件類型!",
"Show message in desktop notification": "在桌面通知中顯示訊息",
"Pin Message": "釘選訊息",
"Unpin Message": "取消釘選訊息",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "您可以使用自訂的伺服器選項,並指定不同的家伺服器 URL 來登入其他的 Matrix 伺服器。<br/>這讓您可以在不同的伺服器上以既有的 Matrix 帳號使用 Riot。<br/><br/>您也可以設定一個自訂的識別伺服器,但您可能無法透過電子郵件地址來邀請使用者,或是讓別人透過電子郵件邀請您。",
"Edit": "編輯",
"Register": "註冊",
"Rooms": "聊天室",
"Invite to this community": "邀請至此社群",
"Add rooms to this community": "新增聊天室到此社群",
"Toolbox": "工具箱",
"Send Account Data": "傳送帳號資料",
"Explore Account Data": "探索帳號資料"
}

View File

@ -16,6 +16,8 @@ limitations under the License.
'use strict';
import { _td } from 'matrix-react-sdk/lib/languageHandler';
var StandardActions = require('./StandardActions');
var PushRuleVectorState = require('./PushRuleVectorState');
@ -65,7 +67,7 @@ module.exports = {
// Messages containing user's display name
".m.rule.contains_display_name": new VectorPushRuleDefinition({
kind: "override",
description: "Messages containing my display name", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("Messages containing my display name"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: { // The actions for each vector state, or null to disable the rule.
on: StandardActions.ACTION_NOTIFY,
loud: StandardActions.ACTION_HIGHLIGHT_DEFAULT_SOUND,
@ -76,7 +78,7 @@ module.exports = {
// Messages containing user's username (localpart/MXID)
".m.rule.contains_user_name": new VectorPushRuleDefinition({
kind: "override",
description: "Messages containing my user name", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("Messages containing my user name"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: { // The actions for each vector state, or null to disable the rule.
on: StandardActions.ACTION_NOTIFY,
loud: StandardActions.ACTION_HIGHLIGHT_DEFAULT_SOUND,
@ -87,7 +89,7 @@ module.exports = {
// Messages just sent to the user in a 1:1 room
".m.rule.room_one_to_one": new VectorPushRuleDefinition({
kind: "underride",
description: "Messages in one-to-one chats", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("Messages in one-to-one chats"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: {
on: StandardActions.ACTION_NOTIFY,
loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND,
@ -100,7 +102,7 @@ module.exports = {
// By opposition, all other room messages are from group chat rooms.
".m.rule.message": new VectorPushRuleDefinition({
kind: "underride",
description: "Messages in group chats", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("Messages in group chats"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: {
on: StandardActions.ACTION_NOTIFY,
loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND,
@ -111,7 +113,7 @@ module.exports = {
// Invitation for the user
".m.rule.invite_for_me": new VectorPushRuleDefinition({
kind: "underride",
description: "When I'm invited to a room", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("When I'm invited to a room"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: {
on: StandardActions.ACTION_NOTIFY,
loud: StandardActions.ACTION_NOTIFY_DEFAULT_SOUND,
@ -122,7 +124,7 @@ module.exports = {
// Incoming call
".m.rule.call": new VectorPushRuleDefinition({
kind: "underride",
description: "Call invitation", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("Call invitation"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: {
on: StandardActions.ACTION_NOTIFY,
loud: StandardActions.ACTION_NOTIFY_RING_SOUND,
@ -133,7 +135,7 @@ module.exports = {
// Notifications from bots
".m.rule.suppress_notices": new VectorPushRuleDefinition({
kind: "override",
description: "Messages sent by bot", // passed through _t() translation in src/components/views/settings/Notifications.js
description: _td("Messages sent by bot"), // passed through _t() translation in src/components/views/settings/Notifications.js
vectorStateToActions: {
// .m.rule.suppress_notices is a "negative" rule, we have to invert its enabled value for vector UI
on: StandardActions.ACTION_DISABLED,

View File

@ -38,8 +38,8 @@ body {
-webkit-font-smoothing: subpixel-antialiased;
}
div.error {
color: red;
div.error, div.warning {
color: $warning-color;
}
h2 {
@ -87,6 +87,11 @@ textarea {
transition: opacity 0.2s ease-in-out;
}
.mx_fadable.mx_fadable_faded {
opacity: 0.3;
pointer-events: none;
}
/* XXX: critical hack to GeminiScrollbar to allow them to work in FF 42 and Chrome 48.
Stop the scrollbar view from pushing out the container's overall sizing, which causes
flexbox to adapt to the new size and cause the view to keep growing.

View File

@ -20,7 +20,10 @@
@import "./matrix-react-sdk/views/dialogs/_ChatInviteDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_ConfirmUserActionDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_CreateGroupDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_CreateRoomDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_EncryptedEventDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_GroupAddressPicker.scss";
@import "./matrix-react-sdk/views/dialogs/_QuestionDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_SetMxIdDialog.scss";
@import "./matrix-react-sdk/views/dialogs/_UnknownDeviceDialog.scss";
@import "./matrix-react-sdk/views/elements/_AccessibleButton.scss";
@ -28,10 +31,13 @@
@import "./matrix-react-sdk/views/elements/_AddressTile.scss";
@import "./matrix-react-sdk/views/elements/_DirectorySearchBox.scss";
@import "./matrix-react-sdk/views/elements/_Dropdown.scss";
@import "./matrix-react-sdk/views/elements/_EditableItemList.scss";
@import "./matrix-react-sdk/views/elements/_MemberEventListSummary.scss";
@import "./matrix-react-sdk/views/elements/_ProgressBar.scss";
@import "./matrix-react-sdk/views/elements/_RichText.scss";
@import "./matrix-react-sdk/views/elements/_RoleButton.scss";
@import "./matrix-react-sdk/views/elements/_ToolTipButton.scss";
@import "./matrix-react-sdk/views/groups/_GroupRoomList.scss";
@import "./matrix-react-sdk/views/login/_InteractiveAuthEntryComponents.scss";
@import "./matrix-react-sdk/views/login/_ServerConfig.scss";
@import "./matrix-react-sdk/views/messages/_MEmoteBody.scss";
@ -50,6 +56,8 @@
@import "./matrix-react-sdk/views/rooms/_MemberInfo.scss";
@import "./matrix-react-sdk/views/rooms/_MemberList.scss";
@import "./matrix-react-sdk/views/rooms/_MessageComposer.scss";
@import "./matrix-react-sdk/views/rooms/_PinnedEventTile.scss";
@import "./matrix-react-sdk/views/rooms/_PinnedEventsPanel.scss";
@import "./matrix-react-sdk/views/rooms/_PresenceLabel.scss";
@import "./matrix-react-sdk/views/rooms/_RoomHeader.scss";
@import "./matrix-react-sdk/views/rooms/_RoomList.scss";
@ -74,10 +82,12 @@
@import "./vector-web/views/context_menus/_MessageContextMenu.scss";
@import "./vector-web/views/context_menus/_RoomTileContextMenu.scss";
@import "./vector-web/views/dialogs/_ChangelogDialog.scss";
@import "./vector-web/views/dialogs/_DevtoolsDialog.scss";
@import "./vector-web/views/dialogs/_SetEmailDialog.scss";
@import "./vector-web/views/dialogs/_SetPasswordDialog.scss";
@import "./vector-web/views/directory/_NetworkDropdown.scss";
@import "./vector-web/views/elements/_ImageView.scss";
@import "./vector-web/views/elements/_InlineSpinner.scss";
@import "./vector-web/views/elements/_Spinner.scss";
@import "./vector-web/views/globals/_MatrixToolbar.scss";
@import "./vector-web/views/messages/_DateSeparator.scss";

View File

@ -17,6 +17,11 @@ limitations under the License.
.mx_GroupView {
max-width: 960px;
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
flex-direction: column;
overflow: hidden;
}
.mx_GroupView_error {
@ -25,15 +30,15 @@ limitations under the License.
.mx_GroupView_header {
max-width: 960px;
margin: auto;
height: 70px;
min-height: 70px;
align-items: center;
display: flex;
margin-bottom: 20px;
padding-bottom: 10px;
}
.mx_GroupView_header_view {
border-bottom: 1px solid #e5e5e5;
border-bottom: 1px solid $primary-hairline-color;
padding-bottom: 0px;
}
.mx_GroupView_header_avatar, .mx_GroupView_header_info {
@ -51,6 +56,23 @@ limitations under the License.
pointer-events: none;
}
.mx_GroupView_editable {
border-bottom: 1px solid $strong-input-border-color ! important;
min-width: 150px;
cursor: text;
}
.mx_GroupView_editable:focus {
border-bottom: 1px solid $accent-color ! important;
outline: none;
box-shadow: none;
}
.mx_GroupView_header_isUserMember .mx_GroupView_header_name:hover div:not(.mx_GroupView_editable) {
color: $accent-color;
cursor: pointer;
}
.mx_GroupView_avatarPicker {
position: relative;
}
@ -70,8 +92,13 @@ limitations under the License.
flex: 1;
}
.mx_GroupView_saveButton, .mx_GroupView_cancelButton {
display: table-cell;
.mx_GroupView_header_rightCol {
display: flex;
align-items: center;
}
.mx_GroupView_textButton {
display: inline-block;
}
.mx_GroupView_header_groupid {
@ -95,10 +122,6 @@ limitations under the License.
border-bottom: 1px solid transparent;
}
.mx_GroupView_header_name input, .mx_GroupView_header_shortDesc input {
width: 400px;
}
.mx_GroupView_header_shortDesc {
vertical-align: bottom;
float: left;
@ -126,6 +149,102 @@ limitations under the License.
top: 5px;
}
.mx_GroupView_body {
flex-grow: 1;
}
.mx_GroupView_rooms {
flex-grow: 1;
display: flex;
flex-direction: column;
min-height: 200px;
user-select: none;
}
.mx_GroupView h3 {
text-transform: uppercase;
color: $h3-color;
font-weight: 600;
font-size: 13px;
margin-bottom: 10px;
}
.mx_GroupView_rooms_header .mx_AccessibleButton {
padding-left: 14px;
margin-bottom: 14px;
height: 24px;
}
.mx_GroupView_group {
border-top: 1px solid $primary-hairline-color;
}
.mx_GroupView_group_disabled {
opacity: 0.3;
pointer-events: none;
}
.mx_GroupView_rooms_header_addRow_button {
display: inline-block;
}
.mx_GroupView_rooms_header_addRow_button object {
pointer-events: none;
}
.mx_GroupView_rooms_header_addRow_label {
display: inline-block;
vertical-align: top;
line-height: 24px;
padding-left: 28px;
color: $accent-color;
}
.mx_GroupView_rooms .mx_RoomDetailList {
flex-grow: 1;
border-top: 1px solid $primary-hairline-color;
padding-top: 10px;
word-break: break-word;
}
.mx_GroupView .mx_RoomView_messageListWrapper {
justify-content: flex-start;
}
.mx_GroupView_membershipSection {
color: $greyed-fg-color;
margin-top: 10px;
}
.mx_GroupView_membershipSubSection {
justify-content: space-between;
display: flex;
}
.mx_GroupView_membershipSection_description {
/* To match textButton */
line-height: 34px;
}
.mx_GroupView_membershipSection_description .mx_BaseAvatar {
margin-right: 10px;
}
.mx_GroupView_membershipSection .mx_GroupView_textButton {
margin-right: 0px;
margin-top: 0px;
margin-left: 8px;
}
.mx_GroupView_memberSettings_toggle label {
cursor: pointer;
user-select: none;
}
.mx_GroupView_memberSettings input {
margin-right: 6px;
}
.mx_GroupView_featuredThings {
margin-top: 20px;
}
@ -142,16 +261,64 @@ limitations under the License.
margin-top: 10px;
}
.mx_GroupView_featuredThings_container {
display: flex;
}
.mx_GroupView_featuredThings_addButton,
.mx_GroupView_featuredThing {
cursor: pointer;
display: table-cell;
text-align: center;
width: 100px;
margin: 0px 20px;
}
.mx_GroupView_featuredThing {
position: relative;
}
.mx_GroupView_featuredThing .mx_GroupView_featuredThing_deleteButton {
position: absolute;
top: -7px;
right: 11px;
opacity: 0.4;
}
.mx_GroupView_featuredThing .mx_BaseAvatar {
/* To prevent misalignment with mx_TintableSvg (in addButton) */
vertical-align: initial;
}
.mx_GroupView_featuredThings_addButton object {
pointer-events: none;
}
.mx_GroupView_featuredThing_name {
word-wrap: break-word;
}
.mx_GroupView_uploadInput {
display: none;
}
.mx_GroupView_editLongDesc {
.mx_GroupView_body .gm-scroll-view > *{
margin: 11px 50px 0px 68px;
}
.mx_GroupView_groupDesc textarea {
width: 100%;
max-width: 100%;
height: 150px;
}
.mx_GroupView_groupDesc_placeholder {
background-color: $info-plinth-bg-color;
color: $info-plinth-fg-color;
border-radius: 10px;
text-align: center;
cursor: pointer;
padding: 100px 20px;
margin: 20px 0px;
}

View File

@ -14,6 +14,13 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_LoginBox {
min-height: 24px;
height: unset !important;
padding-top: 13px !important;
padding-bottom: 14px !important;
}
.mx_LoginBox_loginButton_wrapper {
text-align: center;
width: 100%;
@ -21,13 +28,13 @@ limitations under the License.
.mx_LoginBox_loginButton,
.mx_LoginBox_registerButton {
margin-top: -8px;
margin-top: 3px;
height: 40px;
border: 0px;
border-radius: 40px;
margin-left: 4px;
margin-right: 4px;
width: 80px;
min-width: 80px;
background-color: $accent-color;
color: $primary-bg-color;
@ -35,4 +42,6 @@ limitations under the License.
cursor: pointer;
font-size: 15px;
padding: 0 11px;
word-break: break-word;
}

View File

@ -14,31 +14,138 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_MyGroups_joinCreateBox {
display: table;
.mx_MyGroups {
max-width: 960px;
margin-left: auto;
margin-right: auto;
display: flex;
flex-direction: column;
}
.mx_MyGroups .mx_RoomHeader_simpleHeader {
margin-left: 0px;
}
.mx_MyGroups_header {
/* Keep mid-point of create button aligned with icon in page header */
margin-left: 2px;
display: flex;
flex-wrap: wrap;
}
.mx_MyGroups_headerCard {
flex: 1 0 50%;
margin-bottom: 30px;
min-width: 400px;
display: flex;
align-items: center;
}
.mx_MyGroups_createBox, .mx_MyGroups_joinBox {
display: table-cell;
width: 40%;
.mx_MyGroups_headerCard .mx_MyGroups_headerCard_button {
margin-right: 13px;
height: 50px;
}
.mx_MyGroups_joinCreateHeader {
font-weight: bold;
margin-bottom: 10px;
}
.mx_MyGroups_joinCreateButton {
float: left;
margin: 10px;
}
.mx_MyGroups_joinCreateButton object {
.mx_MyGroups_headerCard_button object {
/* Otherwise the SVG object absorbs clicks and the button doesn't work */
pointer-events: none;
}
.mx_MyGroups_content {
clear: left;
.mx_MyGroups_headerCard_header {
font-weight: bold;
margin-bottom: 10px;
}
.mx_MyGroups_headerCard_content {
padding-right: 15px;
}
/* Until the button is wired up */
.mx_MyGroups_joinBox {
visibility: hidden;
/* When joinBox wraps onto its own row, it should take up zero height so
that there isn't an awkward gap between MyGroups_createBox and
MyGroups_content.
*/
height: 0px;
margin: 0px;
}
.mx_MyGroups_content {
margin-left: 2px;
flex: 1 0 0;
display: flex;
flex-direction: column;
}
.mx_MyGroups_content h3 {
margin-bottom: 10px;
}
.mx_MyGroups_placeholder {
background-color: $info-plinth-bg-color;
color: $info-plinth-fg-color;
line-height: 400px;
border-radius: 10px;
text-align: center;
}
.mx_MyGroups_joinedGroups .gm-scroll-view {
border-top: 1px solid $primary-hairline-color;
overflow-x: hidden;
display: flex;
flex-direction: row;
flex-flow: wrap;
align-content: flex-start;
}
.mx_MyGroups_joinedGroups .gm-scroll-view .mx_GroupTile {
min-width: 300px;
max-width: 33%;
flex: 1 0 300px;
height: 75px;
margin: 10px 0px;
display: flex;
align-items: flex-start;
cursor: pointer;
}
.mx_GroupTile_profile {
margin-left: 10px;
display: flex;
flex-direction: column;
justify-content: center;
}
.mx_GroupTile_profile h3.mx_GroupTile_name,
.mx_GroupTile_profile .mx_GroupTile_groupId,
.mx_GroupTile_profile .mx_GroupTile_desc {
padding-right: 10px;
}
.mx_GroupTile_profile h3.mx_GroupTile_name {
margin: 0px;
font-size: 15px;
}
.mx_GroupTile_profile .mx_GroupTile_groupId {
font-size: 13px;
}
.mx_GroupTile_profile .mx_GroupTile_desc {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
font-size: 13px;
max-height: 36px;
overflow: hidden;
}
.mx_GroupTile_profile .mx_GroupTile_groupId {
opacity: 0.7;
}

View File

@ -150,6 +150,16 @@ limitations under the License.
display: block;
}
.mx_RoomStatusBar_isAlone {
height: 50px;
line-height: 50px;
color: $primary-fg-color;
opacity: 0.5;
overflow-y: hidden;
display: block;
}
.mx_MatrixChat_useCompactLayout {
.mx_RoomStatusBar {
min-height: 40px;

View File

@ -68,7 +68,7 @@ limitations under the License.
min-width: 0px;
max-width: 960px;
width: 100%;
margin: auto;
margin: 0px auto;
overflow: auto;
border-bottom: 1px solid $primary-hairline-color;
@ -80,17 +80,32 @@ limitations under the License.
max-width: 1920px ! important;
}
.mx_RoomView_topUnreadMessagesBar {
.mx_RoomView_body {
order: 3;
flex: 1 1 0;
flex-direction: column;
display: flex;
}
.mx_RoomView_body .mx_RoomView_topUnreadMessagesBar {
order: 1;
}
.mx_RoomView_body .mx_RoomView_messagePanel {
order: 2;
}
.mx_RoomView_body .mx_RoomView_statusArea {
order: 3;
}
.mx_RoomView_messagePanel {
.mx_RoomView_body .mx_MessageComposer {
order: 4;
}
flex: 1 1 0;
.mx_RoomView_messagePanel {
width: 100%;
overflow-y: auto;
}
@ -131,18 +146,6 @@ limitations under the License.
clear: both;
}
.mx_RoomView_invitePrompt {
order: 2;
min-width: 0px;
max-width: 960px;
width: 100%;
margin: auto;
margin-top: 12px;
margin-bottom: 12px;
}
li.mx_RoomView_myReadMarker_container {
height: 0px;
margin: 0px;
@ -160,8 +163,6 @@ hr.mx_RoomView_myReadMarker {
}
.mx_RoomView_statusArea {
order: 5;
width: 100%;
flex: 0 0 auto;
@ -236,8 +237,6 @@ hr.mx_RoomView_myReadMarker {
}
.mx_RoomView .mx_MessageComposer {
order: 6;
width: 100%;
flex: 0 0 auto;
margin-right: 2px;

View File

@ -80,6 +80,16 @@ limitations under the License.
cursor: pointer;
}
.mx_UserSettings_button.mx_UserSettings_buttonSmall {
height: 36px;
padding: 4px;
padding-left: 7px;
padding-right: 7px;
font-size: 12px;
margin-right: 5px;
line-height: 12px;
}
.mx_UserSettings_button.danger {
background-color: $warning-color;
}
@ -242,6 +252,16 @@ input.mx_UserSettings_phoneNumberField {
display: none;
}
.mx_UserSettings_avatarPicker_imgContainer {
display: inline-block;
}
.mx_UserSettings_avatarPicker_remove {
display: inline-block;
float: right;
margin-right: -15px;
}
.mx_UserSettings_advanced_spoiler,
.mx_UserSettings_link {
cursor: pointer;

View File

@ -67,6 +67,10 @@ limitations under the License.
margin-bottom: 14px;
}
.mx_Login_field_disabled {
opacity: 0.3;
}
.mx_Login_fieldLabel {
margin-top: -10px;
margin-left: 8px;
@ -87,6 +91,10 @@ limitations under the License.
color: $accent-fg-color;
}
.mx_Login_submit:disabled {
opacity: 0.3;
}
.mx_Login_label {
font-size: 13px;
opacity: 0.8;

View File

@ -14,6 +14,14 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_ChatInviteDialog {
/* XXX: padding-left is on mx_Dialog but padding-right has subsequently
* been added on other dialogs. Surely all our dialogs should have consistent
* right hand padding?
*/
padding-right: 58px;
}
/* Using a textarea for this element, to circumvent autofill */
.mx_ChatInviteDialog_input,
.mx_ChatInviteDialog_input:focus
@ -52,9 +60,8 @@ limitations under the License.
}
.mx_ChatInviteDialog_error {
position: absolute;
margin-top: 10px;
color: $warning-color;
line-height: 36px;
}
.mx_ChatInviteDialog_cancel {

View File

@ -33,3 +33,30 @@ limitations under the License.
background-color: $primary-bg-color;
}
.mx_CreateGroupDialog_input_hasPrefixAndSuffix {
border-radius: 0px;
}
.mx_CreateGroupDialog_input_group {
display: flex;
}
.mx_CreateGroupDialog_prefix,
.mx_CreateGroupDialog_suffix {
height: 35px;
padding: 0px 5px;
line-height: 37px;
background-color: $input-border-color;
border: 1px solid $input-border-color;
text-align: center;
}
.mx_CreateGroupDialog_prefix {
border-right: 0px;
border-radius: 3px 0px 0px 3px;
}
.mx_CreateGroupDialog_suffix {
border-left: 0px;
border-radius: 0px 3px 3px 0px;
}

View File

@ -0,0 +1,33 @@
/*
Copyright 2017 Michael Telatynski <7t3chguy@gmail.com>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_CreateRoomDialog_details_summary {
outline: none;
}
.mx_CreateRoomDialog_label {
text-align: left;
padding-bottom: 12px;
}
.mx_CreateRoomDialog_input {
font-size: 15px;
border-radius: 3px;
border: 1px solid $input-border-color;
padding: 9px;
color: $primary-fg-color;
background-color: $primary-bg-color;
}

View File

@ -0,0 +1,25 @@
/*
Copyright 2017 New Vector Ltd
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_GroupAddressPicker_checkboxContainer{
margin-top: 10px;
display: flex;
}
.mx_GroupAddressPicker_checkboxContainer input[type="checkbox"] {
/* Stop flex from shrinking the checkbox */
width: 20px;
}

View File

@ -0,0 +1,18 @@
/*
Copyright 2017 New Vector Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_QuestionDialog {
padding-right: 58px;
}

View File

@ -18,6 +18,10 @@ limitations under the License.
position: relative;
}
.mx_Dropdown_disabled {
opacity: 0.3;
}
.mx_Dropdown_input {
position: relative;
border-radius: 3px;

View File

@ -0,0 +1,62 @@
/*
Copyright 2017 New Vector Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_EditableItemList {
margin-top: 12px;
margin-bottom: 0px;
}
.mx_EditableItem {
display: flex;
margin-left: 56px;
}
.mx_EditableItem .mx_EditableItem_editable {
border: 0px;
border-bottom: 1px solid $strong-input-border-color;
padding: 0px;
min-width: 240px;
max-width: 400px;
margin-bottom: 16px;
}
.mx_EditableItem .mx_EditableItem_editable:focus {
border-bottom: 1px solid $accent-color;
outline: none;
box-shadow: none;
}
.mx_EditableItem .mx_EditableItem_editablePlaceholder {
color: $settings-grey-fg-color;
}
.mx_EditableItem .mx_EditableItem_addButton,
.mx_EditableItem .mx_EditableItem_removeButton {
padding-left: 0.5em;
position: relative;
cursor: pointer;
visibility: hidden;
}
.mx_EditableItem:hover .mx_EditableItem_addButton,
.mx_EditableItem:hover .mx_EditableItem_removeButton {
visibility: visible;
}
.mx_EditableItemList_label {
margin-bottom: 8px;
}

View File

@ -3,7 +3,8 @@
// --Matthew
.mx_UserPill,
.mx_RoomPill {
.mx_RoomPill,
.mx_AtRoomPill {
border-radius: 16px;
display: inline-block;
height: 20px;
@ -24,7 +25,9 @@
padding-right: 5px;
}
.mx_EventTile_highlight .mx_EventTile_content .markdown-body a.mx_UserPill_me {
.mx_EventTile_highlight .mx_EventTile_content .markdown-body a.mx_UserPill_me,
.mx_EventTile_content .mx_AtRoomPill,
.mx_MessageComposer_input .mx_AtRoomPill {
color: $accent-fg-color;
background-color: $mention-user-pill-bg-color;
padding-right: 5px;
@ -39,7 +42,8 @@
}
.mx_UserPill .mx_BaseAvatar,
.mx_RoomPill .mx_BaseAvatar {
.mx_RoomPill .mx_BaseAvatar,
.mx_AtRoomPill .mx_BaseAvatar {
position: relative;
left: -3px;
top: 2px;

View File

@ -0,0 +1,51 @@
/*
Copyright 2017 New Vector Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_ToolTipButton {
display: inline-block;
width: 11px;
height: 11px;
margin-left: 5px;
border: 2px solid $neutral-badge-color;
border-radius: 20px;
color: $neutral-badge-color;
transition: opacity 0.2s ease-in;
opacity: 0.6;
line-height: 11px;
text-align: center;
cursor: pointer;
}
.mx_ToolTipButton:hover {
opacity: 1.0;
}
.mx_ToolTipButton_container {
position: relative;
top: -18px;
left: 4px;
}
.mx_ToolTipButton_helpText {
width: 200px;
text-align: center;
line-height: 17px !important;
}

View File

@ -0,0 +1,21 @@
/*
Copyright 2017 New Vector Ltd
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_GroupRoomTile {
position: relative;
color: $primary-fg-color;
cursor: pointer;
}

View File

@ -14,9 +14,8 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_AppsDrawer {
margin-bottom: 3px;
}
// .mx_AppsDrawer {
// }
.mx_AppsContainer {
display: flex;
@ -51,11 +50,13 @@ limitations under the License.
.mx_AppTile {
max-width: 960px;
width: 50%;
margin: 0 5px 2px 0;
margin-right: 5px;
border: 1px solid $primary-hairline-color;
border-radius: 2px;
// height: 350px;
// display: inline-block;
}
.mx_AppTile:last-child {
margin-right: 1px;
}
.mx_AppTile_non_native {
@ -73,12 +74,16 @@ limitations under the License.
// display: inline-block;
}
.mx_AppTile, .mx_AppTileFullWidth {
margin-top: 3px;
}
.mx_AppTileMenuBar {
// height: 15px;
margin: 0;
padding: 2px 10px;
// background-color: $e2e-verified-color;
// border-bottom: 1px solid $primary-hairline-color;
border-bottom: 1px solid $primary-hairline-color;
font-size: 10px;
}
@ -120,8 +125,8 @@ limitations under the License.
display: block;
}
.mx_CloseAppWidget {
}
// .mx_CloseAppWidget {
// }
.mx_AppTileMenuBarWidgetPadding {
margin-right: 5px;
@ -239,3 +244,7 @@ form.mx_Custom_Widget_Form div {
align-items: center;
font-weight: bold;
}
.mx_AppLoading iframe {
display: none;
}

View File

@ -28,7 +28,8 @@ limitations under the License.
width: 26px;
}
.mx_EntityTile_avatar {
.mx_EntityTile_avatar,
.mx_GroupRoomTile_avatar {
display: table-cell;
padding-left: 3px;
padding-right: 12px;
@ -48,12 +49,15 @@ limitations under the License.
right: 6px;
}
.mx_EntityTile_name {
.mx_EntityTile_name,
.mx_GroupRoomTile_name {
display: table-cell;
vertical-align: middle;
overflow: hidden;
font-size: 14px;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 155px;
}
.mx_EntityTile_details {
@ -64,8 +68,6 @@ limitations under the License.
.mx_EntityTile_name_hover {
font-size: 13px;
overflow: hidden;
text-overflow: ellipsis;
}
.mx_EntityTile_chevron {

View File

@ -45,7 +45,6 @@ limitations under the License.
.mx_EventTile .mx_SenderProfile {
color: $primary-fg-color;
opacity: 0.5;
font-size: 14px;
display: block; /* anti-zalgo, with overflow hidden */
overflow-y: hidden;
@ -57,6 +56,22 @@ limitations under the License.
line-height: 22px;
}
.mx_EventTile .mx_SenderProfile .mx_SenderProfile_name,
.mx_EventTile .mx_SenderProfile .mx_SenderProfile_aux {
opacity: 0.5;
}
.mx_EventTile .mx_SenderProfile .mx_Flair {
opacity: 0.7;
margin-left: 5px;
}
.mx_EventTile .mx_SenderProfile .mx_Flair img {
vertical-align: -2px;
margin-right: 2px;
border-radius: 8px;
}
.mx_EventTile .mx_MessageTimestamp {
display: block;
visibility: hidden;

View File

@ -94,3 +94,19 @@ limitations under the License.
cursor: pointer;
}
.mx_MemberInfo label {
font-size: 13px;
}
.mx_MemberInfo label .mx_MemberInfo_label_text {
display: inline-block;
max-width: 180px;
vertical-align: text-top;
}
.mx_MemberInfo input[type="radio"] {
vertical-align: -2px;
margin-right: 5px;
margin-left: 8px;
}

View File

@ -14,7 +14,9 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_MemberList {
.mx_MemberList,
.mx_GroupMemberList,
.mx_GroupRoomList {
height: 100%;
margin-top: 12px;
@ -44,7 +46,9 @@ limitations under the License.
flex: 1 1 0px;
}
.mx_MemberList_query {
.mx_MemberList_query,
.mx_GroupMemberList_query,
.mx_GroupRoomList_query {
font-family: 'Open Sans', Arial, Helvetica, Sans-Serif;
border-radius: 3px;
border: 1px solid $input-border-color;
@ -57,13 +61,17 @@ limitations under the License.
width: 189px;
}
.mx_MemberList_query::-moz-placeholder {
.mx_MemberList_query::-moz-placeholder,
.mx_GroupMemberList_query::-moz-placeholder,
.mx_GroupRoomList_query::-moz-placeholder {
color: $primary-fg-color;
opacity: 0.5;
font-size: 14px;
}
.mx_MemberList_query::-webkit-input-placeholder {
.mx_MemberList_query::-webkit-input-placeholder,
.mx_GroupMemberList_query::-webkit-input-placeholder,
.mx_GroupRoomList_query::-webkit-input-placeholder {
color: $primary-fg-color;
opacity: 0.5;
font-size: 14px;
@ -84,6 +92,7 @@ limitations under the License.
}
*/
.mx_GroupMemberList_invited h2,
.mx_MemberList_invited h2 {
text-transform: uppercase;
color: $h3-color;

Some files were not shown because too many files have changed in this diff Show More