diff --git a/sources/CHANGELOG.md b/sources/CHANGELOG.md old mode 100644 new mode 100755 index e5ae13b..84d8500 --- a/sources/CHANGELOG.md +++ b/sources/CHANGELOG.md @@ -1,3 +1,119 @@ +# 1.5.6 + * Fix: Error on windows installations + +# 1.5.5 + * SECURITY: Also don't allow read files on directory traversal on minify paths + * NEW: padOptions can be set in settings.json now + * Fix: Add check for special characters in createPad API function + * Fix: Middle click on a link in firefox don't paste text anymore + * Fix: Made setPadRaw async to import larger etherpad files + * Fix: rtl + * Fix: Problem in older IEs + * Other: Update to express 4.x + * Other: Dropped support for node 0.8 + * Other: Update ejs to version 2.x + * Other: Moved sessionKey from settings.json to a new auto-generated SESSIONKEY.txt file + +# 1.5.4 + * SECURITY: Also don't allow read files on directory traversal on frontend tests path + +# 1.5.3 + * NEW: Accessibility support for Screen readers, includes new fonts and keyboard shortcuts + * NEW: API endpoint for Append Chat Message and Chat Backend Tests + * NEW: Error messages displayed on load are included in Default Pad Text (can be supressed) + * NEW: Content Collector can handle key values + * NEW: getAttributesOnPosition Method + * FIX: Firefox keeps attributes (bold etc) on cut/copy -> paste + * Fix: showControls=false now works + * Fix: Cut and Paste works... + * SECURITY: Don't allow read files on directory traversal + +# 1.5.2 + * NEW: Support for node version 0.12.x + * NEW: API endpoint saveRevision, getSavedRevisionCount and listSavedRevisions + * NEW: setting to allow load testing + * Fix: Rare scroll issue + * Fix: Handling of custom pad path + * Fix: Better error handling of imports and exports of type "etherpad" + * Fix: Walking caret in chrome + * Fix: Better handling for changeset problems + * SECURITY Fix: Information leak for etherpad exports (CVE-2015-2298) + +# 1.5.1 + * NEW: High resolution Icon + * NEW: Use HTTPS for plugins.json download + * NEW: Add 'last update' column + * NEW: Show users and chat at the same time + * NEW: Support io.js + * Fix: removeAttributeOnLine now works properly + * Fix: Plugin search and list + * Fix: Issue where unauthed request could cause error + * Fix: Privacy issue with .etherpad export + * Fix: Freeze deps to improve bisectability + * Fix: IE, everything. IE is so broken. + * Fix: Timeslider proxy + * Fix: All backend tests pass + * Fix: Better support for Export into HTML + * Fix: Timeslider stars + * Fix: Translation update + * Fix: Check filesystem if Abiword exists + * Fix: Docs formatting + * Fix: Move Save Revision notification to a gritter message + * Fix: UeberDB MySQL Timeout issue + * Fix: Indented +9 list items + * Fix: Don't paste on middle click of link + * SECURITY Fix: Issue where a malformed URL could cause EP to disclose installation location + +# 1.5.0 + * NEW: Lots of performance improvements for page load times + * NEW: Hook for adding CSS to Exports + * NEW: Allow shardable socket io + * NEW: Allow UI to show when attr/prop is applied (CSS) + * NEW: Various scripts + * NEW: Export full fidelity pads (including authors etc.) + * NEW: Various front end tests + * NEW: Backend tests + * NEW: switchPad hook to instantly switch between pads + * NEW: Various translations + * NEW: Icon sets instead of images to provide quality high DPI experience + * Fix: HTML Import blocking / hanging server + * Fix: Export Bullet / Numbered lists HTML + * Fix: Swagger deprecated warning + * Fix: Bad session from crashing server + * Fix: Allow relative settings path + * Fix: Stop attributes being improperly assigned between 2 lines + * Fix: Copy / Move Pad API race condition + * Fix: Save all user preferences + * Fix: Upgrade majority of dependency inc upgrade to SocketIO1+ + * Fix: Provide UI button to restore maximized chat window + * Fix: Timeslider UI Fix + * Fix: Remove Dokuwiki + * Fix: Remove long paths from windows build (stops error during extract) + * Fix: Various globals remvoed + * Fix: Move all scripts into bin/ + * Fix: Various CSS bugfixes for Mobile devices + * Fix: Overflow Toolbar + * Fix: Line Attribute management + +# 1.4.1 + * NEW: Translations + * NEW: userLeave Hook + * NEW: Script to reinsert all DB values of a Pad + * NEW: Allow for absolute settings paths + * NEW: API: Get Pad ID from read Only Pad ID + * NEW: Huge improvement on MySQL database read/write (InnoDB to MyISAM) + * NEW: Hook for Export File Name + * NEW: Preprocessor Hook for DOMLine attributes (allows plugins to wrap entire line contents) + * Fix: Exception on Plugin Search and fix for plugins not being fetched + * Fix: Font on innerdoc body can be arial on paste + * Fix: Fix Dropping of messages in handleMessage + * Fix: Don't use Abiword for HTML exports + * Fix: Color issues with user Icon + * Fix: Timeslider Button + * Fix: Session Deletion error + * Fix: Allow browser tabs to be cycled when focus is in editor + * Fix: Various Editor issues with Easysync potentially entering forever loop on bad changeset + # 1.4 * NEW: Disable toolbar items through settings.json * NEW: Internal stats/metrics engine diff --git a/sources/CONTRIBUTING.md b/sources/CONTRIBUTING.md old mode 100644 new mode 100755 index 0110151..b6e1c24 --- a/sources/CONTRIBUTING.md +++ b/sources/CONTRIBUTING.md @@ -1,6 +1,31 @@ # Developer Guidelines (Please talk to people on the mailing list before you change this page, see our section on [how to get in touch](https://github.com/ether/etherpad-lite#get-in-touch)) +## How to write a bug report + +* Please be polite, we all are humans and problems can occur. +* Please add as much information as possible, for example + * client os(s) and version(s) + * browser(s) and version(s), is the problem reproduceable on different clients + * special environments like firewalls or antivirus + * host os and version + * npm and nodejs version + * Logfiles if available + * steps to reproduce + * what you expected to happen + * what actually happened +* Please format logfiles and code examples with markdown see github Markdown help below the issue textarea for more information. + +If you send logfiles, please set the loglevel switch DEBUG in your settings.json file: + +``` +/* The log level we are using, can be: DEBUG, INFO, WARN, ERROR */ + "loglevel": "DEBUG", +``` + +The logfile location is defined in startup script or the log is directly shown in the commandline after you have started etherpad. + + ## Important note for pull requests **Pull requests should be issued against the develop branch**. We never pull directly into master. diff --git a/sources/LICENSE b/sources/LICENSE old mode 100644 new mode 100755 diff --git a/sources/Makefile b/sources/Makefile old mode 100644 new mode 100755 index b656d5d..25fbf8e --- a/sources/Makefile +++ b/sources/Makefile @@ -14,7 +14,7 @@ out/doc/assets/%: doc/assets/% out/doc/%.html: doc/%.md mkdir -p $(@D) - node tools/doc/generate.js --format=html --template=doc/template.html $< > $@ + node bin/doc/generate.js --format=html --template=doc/template.html $< > $@ ifeq ($(UNAME),Darwin) sed -i '' 's/__VERSION__/${VERSION}/' $@ else diff --git a/sources/README.md b/sources/README.md old mode 100644 new mode 100755 index c1acf46..12ea399 --- a/sources/README.md +++ b/sources/README.md @@ -11,7 +11,7 @@ that allows your web application to manage pads, users and groups. It is recomme There is also a [jQuery plugin](https://github.com/ether/etherpad-lite-jquery-plugin) that helps you to embed Pads into your website. -There's also a full-featured plugin framework, allowing you to easily add your own features. By default your Etherpad is rather sparce and because Etherpad takes a lot of it's inspiration from Wordpress plugins are really easy to install and update. Once you have Etherpad installed you should visit the plugin page and take control. +There's also a full-featured plugin framework, allowing you to easily add your own features. By default your Etherpad is rather sparse and because Etherpad takes a lot of it's inspiration from Wordpress plugins are really easy to install and update. Once you have Etherpad installed you should visit the plugin page and take control. Finally, Etherpad comes with translations into most languages! Users are automatically delivered the correct language for their local settings. @@ -22,7 +22,7 @@ Also, check out the **[FAQ](https://github.com/ether/etherpad-lite/wiki/FAQ)**, # Installation -Etherpad works with node v0.8 and v0.10, only. (We don't support v0.6) +Etherpad works with node v0.10+ and io.js. ## Windows @@ -46,15 +46,21 @@ Now, run `start.bat` and open in your browser. Update to the latest version with `git pull origin`, then run `bin\installOnWindows.bat`, again. +If cloning to a subdirectory within another project, you may need to do the following: + +1. Start the server manually (e.g. `node/node_modules/ep_etherpad-lite/node/server.js]`) +2. Edit the db `filename` in `settings.json` to the relative directory with the file (e.g. `application/lib/etherpad-lite/var/dirty.db`) +3. Add auto-generated files to the main project `.gitignore` + [Next steps](#next-steps). ## GNU/Linux and other UNIX-like systems You'll need gzip, git, curl, libssl develop libraries, python and gcc. -*For Debian/Ubuntu*: `apt-get install gzip git-core curl python libssl-dev pkg-config build-essential` -*For Fedora/CentOS*: `yum install gzip git-core curl python openssl-devel && yum groupinstall "Development Tools"` -*For FreeBSD*: `portinstall node, npm, git (optional)` +- *For Debian/Ubuntu*: `apt-get install gzip git curl python libssl-dev pkg-config build-essential` +- *For Fedora/CentOS*: `yum install gzip git curl python openssl-devel && yum groupinstall "Development Tools"` +- *For FreeBSD*: `portinstall node, npm, git (optional)` -Additionally, you'll need [node.js](http://nodejs.org) installed, Ideally the latest stable version, be careful of installing nodejs from apt. +Additionally, you'll need [node.js](http://nodejs.org) installed, Ideally the latest stable version, we recommend installing/compiling nodejs from source (avoiding apt). **As any user (we recommend creating a separate user called etherpad):** @@ -74,6 +80,10 @@ You can initially modify the settings in `settings.json`. (If you need to handle You should use a dedicated database such as "mysql", if you are planning on using etherpad-in a production environment, since the "dirtyDB" database driver is only for testing and/or development purposes. +## Plugins and themes + +Etherpad is very customizable through plugins. Instructions for installing themes and plugins can be found in [the plugin wiki article](https://github.com/ether/etherpad-lite/wiki/Available-Plugins). + ## Helpful resources The [wiki](https://github.com/ether/etherpad-lite/wiki) is your one-stop resource for Tutorials and How-to's, really check it out! Also, feel free to improve these wiki pages. @@ -82,7 +92,7 @@ Documentation can be found in `docs/`. # Development ## Things you should know -Read this [git guide](http://learn.github.com/p/index.html) and watch this [video on getting started with Etherpad Development](http://youtu.be/67-Q26YH97E). +Understand [git](https://training.github.com/) and watch this [video on getting started with Etherpad Development](http://youtu.be/67-Q26YH97E). If you're new to node.js, start with Ryan Dahl's [Introduction to Node.js](http://youtu.be/jo_B4LTHi3I). diff --git a/sources/bin/backendTests.sh b/sources/bin/backendTests.sh new file mode 100755 index 0000000..ec12775 --- /dev/null +++ b/sources/bin/backendTests.sh @@ -0,0 +1 @@ +src/node_modules/mocha/bin/mocha --timeout 5000 --reporter nyan tests/backend/specs/api diff --git a/sources/bin/buildForWindows.sh b/sources/bin/buildForWindows.sh index a1e2c75..a508cc2 100755 --- a/sources/bin/buildForWindows.sh +++ b/sources/bin/buildForWindows.sh @@ -1,6 +1,6 @@ #!/bin/sh -NODE_VERSION="0.8.4" +NODE_VERSION="0.12.2" #Move to the folder where ep-lite is installed cd `dirname $0` @@ -56,8 +56,8 @@ echo "remove git history to reduce folder size" rm -rf .git/objects echo "remove windows jsdom-nocontextify/test folder" -rm -rf /tmp/etherpad-lite-win/node_modules/ep_etherpad-lite/node_modules/jsdom-nocontextifiy/test/ -rm -rf /tmp/etherpad-lite-win/src/node_modules/jsdom-nocontextifiy/test/ +rm -rf /tmp/etherpad-lite-win/src/node_modules/wd/node_modules/request/node_modules/form-data/node_modules/combined-stream/test +rm -rf /tmp/etherpad-lite-win/src/node_modules/nodemailer/node_modules/mailcomposer/node_modules/mimelib/node_modules/encoding/node_modules/iconv-lite/encodings/tables echo "create the zip..." cd /tmp diff --git a/sources/bin/checkPad.js b/sources/bin/checkPad.js old mode 100644 new mode 100755 diff --git a/sources/bin/cleanRun.sh b/sources/bin/cleanRun.sh new file mode 100755 index 0000000..55bcf8a --- /dev/null +++ b/sources/bin/cleanRun.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +#Move to the folder where ep-lite is installed +cd `dirname $0` + +#Was this script started in the bin folder? if yes move out +if [ -d "../bin" ]; then + cd "../" +fi + +ignoreRoot=0 +for ARG in $* +do + if [ "$ARG" = "--root" ]; then + ignoreRoot=1 + fi +done + +#Stop the script if its started as root +if [ "$(id -u)" -eq 0 ] && [ $ignoreRoot -eq 0 ]; then + echo "You shouldn't start Etherpad as root!" + echo "Please type 'Etherpad rocks my socks' or supply the '--root' argument if you still want to start it as root" + read rocks + if [ ! $rocks = "Etherpad rocks my socks" ] + then + echo "Your input was incorrect" + exit 1 + fi +fi + +#Clean the current environment +rm -rf src/node_modules + +#Prepare the enviroment +bin/installDeps.sh $* || exit 1 + +#Move to the node folder and start +echo "Started Etherpad..." + +SCRIPTPATH=`pwd -P` +node $SCRIPTPATH/node_modules/ep_etherpad-lite/node/server.js $* diff --git a/sources/bin/convert.js b/sources/bin/convert.js old mode 100644 new mode 100755 diff --git a/sources/bin/convertSettings.json.template b/sources/bin/convertSettings.json.template old mode 100644 new mode 100755 diff --git a/sources/bin/deb-src/DEBIAN/control b/sources/bin/deb-src/DEBIAN/control old mode 100644 new mode 100755 diff --git a/sources/bin/deb-src/sysroot/etc/init/etherpad.conf b/sources/bin/deb-src/sysroot/etc/init/etherpad.conf old mode 100644 new mode 100755 diff --git a/sources/bin/deletePad.js b/sources/bin/deletePad.js old mode 100644 new mode 100755 diff --git a/sources/bin/dirty-db-cleaner.py b/sources/bin/dirty-db-cleaner.py new file mode 100755 index 0000000..8ed9c50 --- /dev/null +++ b/sources/bin/dirty-db-cleaner.py @@ -0,0 +1,45 @@ +#!/usr/bin/python -u +# +# Created by Bjarni R. Einarsson, placed in the public domain. Go wild! +# +import json +import os +import sys + +try: + dirtydb_input = sys.argv[1] + dirtydb_output = '%s.new' % dirtydb_input + assert(os.path.exists(dirtydb_input)) + assert(not os.path.exists(dirtydb_output)) +except: + print + print 'Usage: %s /path/to/dirty.db' % sys.argv[0] + print + print 'Note: Will create a file named dirty.db.new in the same folder,' + print ' please make sure permissions are OK and a file by that' + print ' name does not exist already. This script works by omitting' + print ' duplicate lines from the dirty.db file, keeping only the' + print ' last (latest) instance. No revision data should be lost,' + print ' but be careful, make backups. If it breaks you get to keep' + print ' both pieces!' + print + sys.exit(1) + +dirtydb = {} +lines = 0 +with open(dirtydb_input, 'r') as fd: + print 'Reading %s' % dirtydb_input + for line in fd: + lines += 1 + data = json.loads(line) + dirtydb[data['key']] = line + if lines % 10000 == 0: + sys.stderr.write('.') +print +print 'OK, found %d unique keys in %d lines' % (len(dirtydb), lines) + +with open(dirtydb_output, 'w') as fd: + for data in dirtydb.values(): + fd.write(data) + +print 'Wrote data to %s. All done!' % dirtydb_output diff --git a/sources/bin/doc/LICENSE b/sources/bin/doc/LICENSE new file mode 100755 index 0000000..e3d4e69 --- /dev/null +++ b/sources/bin/doc/LICENSE @@ -0,0 +1,18 @@ +Copyright Joyent, Inc. and other Node contributors. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. diff --git a/sources/bin/doc/README.md b/sources/bin/doc/README.md new file mode 100755 index 0000000..3646e46 --- /dev/null +++ b/sources/bin/doc/README.md @@ -0,0 +1,76 @@ +Here's how the node docs work. + +Each type of heading has a description block. + + + ## module + + Stability: 3 - Stable + + description and examples. + + ### module.property + + * Type + + description of the property. + + ### module.someFunction(x, y, [z=100]) + + * `x` {String} the description of the string + * `y` {Boolean} Should I stay or should I go? + * `z` {Number} How many zebras to bring. + + A description of the function. + + ### Event: 'blerg' + + * Argument: SomeClass object. + + Modules don't usually raise events on themselves. `cluster` is the + only exception. + + ## Class: SomeClass + + description of the class. + + ### Class Method: SomeClass.classMethod(anArg) + + * `anArg` {Object} Just an argument + * `field` {String} anArg can have this field. + * `field2` {Boolean} Another field. Default: `false`. + * Return: {Boolean} `true` if it worked. + + Description of the method for humans. + + ### someClass.nextSibling() + + * Return: {SomeClass object | null} The next someClass in line. + + ### someClass.someProperty + + * String + + The indication of what someProperty is. + + ### Event: 'grelb' + + * `isBlerg` {Boolean} + + This event is emitted on instances of SomeClass, not on the module itself. + + +* Modules have (description, Properties, Functions, Classes, Examples) +* Properties have (type, description) +* Functions have (list of arguments, description) +* Classes have (description, Properties, Methods, Events) +* Events have (list of arguments, description) +* Methods have (list of arguments, description) +* Properties have (type, description) + +# CLI usage + +Run the following from the etherpad-lite root directory: +```sh +$ node tools/doc/generate doc/index.md --format=html --template=doc/template.html > out.html +``` \ No newline at end of file diff --git a/sources/bin/doc/generate.js b/sources/bin/doc/generate.js new file mode 100755 index 0000000..8d52e10 --- /dev/null +++ b/sources/bin/doc/generate.js @@ -0,0 +1,120 @@ +#!/usr/bin/env node +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +var marked = require('marked'); +var fs = require('fs'); +var path = require('path'); + +// parse the args. +// Don't use nopt or whatever for this. It's simple enough. + +var args = process.argv.slice(2); +var format = 'json'; +var template = null; +var inputFile = null; + +args.forEach(function (arg) { + if (!arg.match(/^\-\-/)) { + inputFile = arg; + } else if (arg.match(/^\-\-format=/)) { + format = arg.replace(/^\-\-format=/, ''); + } else if (arg.match(/^\-\-template=/)) { + template = arg.replace(/^\-\-template=/, ''); + } +}) + + +if (!inputFile) { + throw new Error('No input file specified'); +} + + +console.error('Input file = %s', inputFile); +fs.readFile(inputFile, 'utf8', function(er, input) { + if (er) throw er; + // process the input for @include lines + processIncludes(inputFile, input, next); +}); + + +var includeExpr = /^@include\s+([A-Za-z0-9-_\/]+)(?:\.)?([a-zA-Z]*)$/gmi; +var includeData = {}; +function processIncludes(inputFile, input, cb) { + var includes = input.match(includeExpr); + if (includes === null) return cb(null, input); + var errState = null; + console.error(includes); + var incCount = includes.length; + if (incCount === 0) cb(null, input); + + includes.forEach(function(include) { + var fname = include.replace(/^@include\s+/, ''); + if (!fname.match(/\.md$/)) fname += '.md'; + + if (includeData.hasOwnProperty(fname)) { + input = input.split(include).join(includeData[fname]); + incCount--; + if (incCount === 0) { + return cb(null, input); + } + } + + var fullFname = path.resolve(path.dirname(inputFile), fname); + fs.readFile(fullFname, 'utf8', function(er, inc) { + if (errState) return; + if (er) return cb(errState = er); + processIncludes(fullFname, inc, function(er, inc) { + if (errState) return; + if (er) return cb(errState = er); + incCount--; + includeData[fname] = inc; + input = input.split(include).join(includeData[fname]); + if (incCount === 0) { + return cb(null, input); + } + }); + }); + }); +} + + +function next(er, input) { + if (er) throw er; + switch (format) { + case 'json': + require('./json.js')(input, inputFile, function(er, obj) { + console.log(JSON.stringify(obj, null, 2)); + if (er) throw er; + }); + break; + + case 'html': + require('./html.js')(input, inputFile, template, function(er, html) { + if (er) throw er; + console.log(html); + }); + break; + + default: + throw new Error('Invalid format: ' + format); + } +} diff --git a/sources/bin/doc/html.js b/sources/bin/doc/html.js new file mode 100755 index 0000000..700ab18 --- /dev/null +++ b/sources/bin/doc/html.js @@ -0,0 +1,173 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +var fs = require('fs'); +var marked = require('marked'); +var path = require('path'); + +module.exports = toHTML; + +function toHTML(input, filename, template, cb) { + var lexed = marked.lexer(input); + fs.readFile(template, 'utf8', function(er, template) { + if (er) return cb(er); + render(lexed, filename, template, cb); + }); +} + +function render(lexed, filename, template, cb) { + // get the section + var section = getSection(lexed); + + filename = path.basename(filename, '.md'); + + lexed = parseLists(lexed); + + // generate the table of contents. + // this mutates the lexed contents in-place. + buildToc(lexed, filename, function(er, toc) { + if (er) return cb(er); + + template = template.replace(/__FILENAME__/g, filename); + template = template.replace(/__SECTION__/g, section); + template = template.replace(/__TOC__/g, toc); + + // content has to be the last thing we do with + // the lexed tokens, because it's destructive. + content = marked.parser(lexed); + template = template.replace(/__CONTENT__/g, content); + + cb(null, template); + }); +} + + +// just update the list item text in-place. +// lists that come right after a heading are what we're after. +function parseLists(input) { + var state = null; + var depth = 0; + var output = []; + output.links = input.links; + input.forEach(function(tok) { + if (state === null) { + if (tok.type === 'heading') { + state = 'AFTERHEADING'; + } + output.push(tok); + return; + } + if (state === 'AFTERHEADING') { + if (tok.type === 'list_start') { + state = 'LIST'; + if (depth === 0) { + output.push({ type:'html', text: '
' }); + } + depth++; + output.push(tok); + return; + } + state = null; + output.push(tok); + return; + } + if (state === 'LIST') { + if (tok.type === 'list_start') { + depth++; + output.push(tok); + return; + } + if (tok.type === 'list_end') { + depth--; + if (depth === 0) { + state = null; + output.push({ type:'html', text: '
' }); + } + output.push(tok); + return; + } + if (tok.text) { + tok.text = parseListItem(tok.text); + } + } + output.push(tok); + }); + + return output; +} + + +function parseListItem(text) { + text = text.replace(/\{([^\}]+)\}/, '$1'); + //XXX maybe put more stuff here? + return text; +} + + +// section is just the first heading +function getSection(lexed) { + var section = ''; + for (var i = 0, l = lexed.length; i < l; i++) { + var tok = lexed[i]; + if (tok.type === 'heading') return tok.text; + } + return ''; +} + + +function buildToc(lexed, filename, cb) { + var indent = 0; + var toc = []; + var depth = 0; + lexed.forEach(function(tok) { + if (tok.type !== 'heading') return; + if (tok.depth - depth > 1) { + return cb(new Error('Inappropriate heading level\n' + + JSON.stringify(tok))); + } + + depth = tok.depth; + var id = getId(filename + '_' + tok.text.trim()); + toc.push(new Array((depth - 1) * 2 + 1).join(' ') + + '* ' + + tok.text + ''); + tok.text += '#'; + }); + + toc = marked.parse(toc.join('\n')); + cb(null, toc); +} + +var idCounters = {}; +function getId(text) { + text = text.toLowerCase(); + text = text.replace(/[^a-z0-9]+/g, '_'); + text = text.replace(/^_+|_+$/, ''); + text = text.replace(/^([^a-z])/, '_$1'); + if (idCounters.hasOwnProperty(text)) { + text += '_' + (++idCounters[text]); + } else { + idCounters[text] = 0; + } + return text; +} + diff --git a/sources/bin/doc/json.js b/sources/bin/doc/json.js new file mode 100755 index 0000000..2459bc2 --- /dev/null +++ b/sources/bin/doc/json.js @@ -0,0 +1,557 @@ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +module.exports = doJSON; + +// Take the lexed input, and return a JSON-encoded object +// A module looks like this: https://gist.github.com/1777387 + +var marked = require('marked'); + +function doJSON(input, filename, cb) { + var root = {source: filename}; + var stack = [root]; + var depth = 0; + var current = root; + var state = null; + var lexed = marked.lexer(input); + lexed.forEach(function (tok) { + var type = tok.type; + var text = tok.text; + + // + // This is for cases where the markdown semantic structure is lacking. + if (type === 'paragraph' || type === 'html') { + var metaExpr = /\n*/g; + text = text.replace(metaExpr, function(_0, k, v) { + current[k.trim()] = v.trim(); + return ''; + }); + text = text.trim(); + if (!text) return; + } + + if (type === 'heading' && + !text.trim().match(/^example/i)) { + if (tok.depth - depth > 1) { + return cb(new Error('Inappropriate heading level\n'+ + JSON.stringify(tok))); + } + + // Sometimes we have two headings with a single + // blob of description. Treat as a clone. + if (current && + state === 'AFTERHEADING' && + depth === tok.depth) { + var clone = current; + current = newSection(tok); + current.clone = clone; + // don't keep it around on the stack. + stack.pop(); + } else { + // if the level is greater than the current depth, + // then it's a child, so we should just leave the stack + // as it is. + // However, if it's a sibling or higher, then it implies + // the closure of the other sections that came before. + // root is always considered the level=0 section, + // and the lowest heading is 1, so this should always + // result in having a valid parent node. + var d = tok.depth; + while (d <= depth) { + finishSection(stack.pop(), stack[stack.length - 1]); + d++; + } + current = newSection(tok); + } + + depth = tok.depth; + stack.push(current); + state = 'AFTERHEADING'; + return; + } // heading + + // Immediately after a heading, we can expect the following + // + // { type: 'code', text: 'Stability: ...' }, + // + // a list: starting with list_start, ending with list_end, + // maybe containing other nested lists in each item. + // + // If one of these isnt' found, then anything that comes between + // here and the next heading should be parsed as the desc. + var stability + if (state === 'AFTERHEADING') { + if (type === 'code' && + (stability = text.match(/^Stability: ([0-5])(?:\s*-\s*)?(.*)$/))) { + current.stability = parseInt(stability[1], 10); + current.stabilityText = stability[2].trim(); + return; + } else if (type === 'list_start' && !tok.ordered) { + state = 'AFTERHEADING_LIST'; + current.list = current.list || []; + current.list.push(tok); + current.list.level = 1; + } else { + current.desc = current.desc || []; + if (!Array.isArray(current.desc)) { + current.shortDesc = current.desc; + current.desc = []; + } + current.desc.push(tok); + state = 'DESC'; + } + return; + } + + if (state === 'AFTERHEADING_LIST') { + current.list.push(tok); + if (type === 'list_start') { + current.list.level++; + } else if (type === 'list_end') { + current.list.level--; + } + if (current.list.level === 0) { + state = 'AFTERHEADING'; + processList(current); + } + return; + } + + current.desc = current.desc || []; + current.desc.push(tok); + + }); + + // finish any sections left open + while (root !== (current = stack.pop())) { + finishSection(current, stack[stack.length - 1]); + } + + return cb(null, root) +} + + +// go from something like this: +// [ { type: 'list_item_start' }, +// { type: 'text', +// text: '`settings` Object, Optional' }, +// { type: 'list_start', ordered: false }, +// { type: 'list_item_start' }, +// { type: 'text', +// text: 'exec: String, file path to worker file. Default: `__filename`' }, +// { type: 'list_item_end' }, +// { type: 'list_item_start' }, +// { type: 'text', +// text: 'args: Array, string arguments passed to worker.' }, +// { type: 'text', +// text: 'Default: `process.argv.slice(2)`' }, +// { type: 'list_item_end' }, +// { type: 'list_item_start' }, +// { type: 'text', +// text: 'silent: Boolean, whether or not to send output to parent\'s stdio.' }, +// { type: 'text', text: 'Default: `false`' }, +// { type: 'space' }, +// { type: 'list_item_end' }, +// { type: 'list_end' }, +// { type: 'list_item_end' }, +// { type: 'list_end' } ] +// to something like: +// [ { name: 'settings', +// type: 'object', +// optional: true, +// settings: +// [ { name: 'exec', +// type: 'string', +// desc: 'file path to worker file', +// default: '__filename' }, +// { name: 'args', +// type: 'array', +// default: 'process.argv.slice(2)', +// desc: 'string arguments passed to worker.' }, +// { name: 'silent', +// type: 'boolean', +// desc: 'whether or not to send output to parent\'s stdio.', +// default: 'false' } ] } ] + +function processList(section) { + var list = section.list; + var values = []; + var current; + var stack = []; + + // for now, *just* build the heirarchical list + list.forEach(function(tok) { + var type = tok.type; + if (type === 'space') return; + if (type === 'list_item_start') { + if (!current) { + var n = {}; + values.push(n); + current = n; + } else { + current.options = current.options || []; + stack.push(current); + var n = {}; + current.options.push(n); + current = n; + } + return; + } else if (type === 'list_item_end') { + if (!current) { + throw new Error('invalid list - end without current item\n' + + JSON.stringify(tok) + '\n' + + JSON.stringify(list)); + } + current = stack.pop(); + } else if (type === 'text') { + if (!current) { + throw new Error('invalid list - text without current item\n' + + JSON.stringify(tok) + '\n' + + JSON.stringify(list)); + } + current.textRaw = current.textRaw || ''; + current.textRaw += tok.text + ' '; + } + }); + + // shove the name in there for properties, since they are always + // just going to be the value etc. + if (section.type === 'property' && values[0]) { + values[0].textRaw = '`' + section.name + '` ' + values[0].textRaw; + } + + // now pull the actual values out of the text bits. + values.forEach(parseListItem); + + // Now figure out what this list actually means. + // depending on the section type, the list could be different things. + + switch (section.type) { + case 'ctor': + case 'classMethod': + case 'method': + // each item is an argument, unless the name is 'return', + // in which case it's the return value. + section.signatures = section.signatures || []; + var sig = {} + section.signatures.push(sig); + sig.params = values.filter(function(v) { + if (v.name === 'return') { + sig.return = v; + return false; + } + return true; + }); + parseSignature(section.textRaw, sig); + break; + + case 'property': + // there should be only one item, which is the value. + // copy the data up to the section. + var value = values[0] || {}; + delete value.name; + section.typeof = value.type; + delete value.type; + Object.keys(value).forEach(function(k) { + section[k] = value[k]; + }); + break; + + case 'event': + // event: each item is an argument. + section.params = values; + break; + } + + // section.listParsed = values; + delete section.list; +} + + +// textRaw = "someobject.someMethod(a, [b=100], [c])" +function parseSignature(text, sig) { + var params = text.match(paramExpr); + if (!params) return; + params = params[1]; + // the ] is irrelevant. [ indicates optionalness. + params = params.replace(/\]/g, ''); + params = params.split(/,/) + params.forEach(function(p, i, _) { + p = p.trim(); + if (!p) return; + var param = sig.params[i]; + var optional = false; + var def; + // [foo] -> optional + if (p.charAt(0) === '[') { + optional = true; + p = p.substr(1); + } + var eq = p.indexOf('='); + if (eq !== -1) { + def = p.substr(eq + 1); + p = p.substr(0, eq); + } + if (!param) { + param = sig.params[i] = { name: p }; + } + // at this point, the name should match. + if (p !== param.name) { + console.error('Warning: invalid param "%s"', p); + console.error(' > ' + JSON.stringify(param)); + console.error(' > ' + text); + } + if (optional) param.optional = true; + if (def !== undefined) param.default = def; + }); +} + + +function parseListItem(item) { + if (item.options) item.options.forEach(parseListItem); + if (!item.textRaw) return; + + // the goal here is to find the name, type, default, and optional. + // anything left over is 'desc' + var text = item.textRaw.trim(); + // text = text.replace(/^(Argument|Param)s?\s*:?\s*/i, ''); + + text = text.replace(/^, /, '').trim(); + var retExpr = /^returns?\s*:?\s*/i; + var ret = text.match(retExpr); + if (ret) { + item.name = 'return'; + text = text.replace(retExpr, ''); + } else { + var nameExpr = /^['`"]?([^'`": \{]+)['`"]?\s*:?\s*/; + var name = text.match(nameExpr); + if (name) { + item.name = name[1]; + text = text.replace(nameExpr, ''); + } + } + + text = text.trim(); + var defaultExpr = /\(default\s*[:=]?\s*['"`]?([^, '"`]*)['"`]?\)/i; + var def = text.match(defaultExpr); + if (def) { + item.default = def[1]; + text = text.replace(defaultExpr, ''); + } + + text = text.trim(); + var typeExpr = /^\{([^\}]+)\}/; + var type = text.match(typeExpr); + if (type) { + item.type = type[1]; + text = text.replace(typeExpr, ''); + } + + text = text.trim(); + var optExpr = /^Optional\.|(?:, )?Optional$/; + var optional = text.match(optExpr); + if (optional) { + item.optional = true; + text = text.replace(optExpr, ''); + } + + text = text.replace(/^\s*-\s*/, ''); + text = text.trim(); + if (text) item.desc = text; +} + + +function finishSection(section, parent) { + if (!section || !parent) { + throw new Error('Invalid finishSection call\n'+ + JSON.stringify(section) + '\n' + + JSON.stringify(parent)); + } + + if (!section.type) { + section.type = 'module'; + if (parent && (parent.type === 'misc')) { + section.type = 'misc'; + } + section.displayName = section.name; + section.name = section.name.toLowerCase() + .trim().replace(/\s+/g, '_'); + } + + if (section.desc && Array.isArray(section.desc)) { + section.desc.links = section.desc.links || []; + section.desc = marked.parser(section.desc); + } + + if (!section.list) section.list = []; + processList(section); + + // classes sometimes have various 'ctor' children + // which are actually just descriptions of a constructor + // class signature. + // Merge them into the parent. + if (section.type === 'class' && section.ctors) { + section.signatures = section.signatures || []; + var sigs = section.signatures; + section.ctors.forEach(function(ctor) { + ctor.signatures = ctor.signatures || [{}]; + ctor.signatures.forEach(function(sig) { + sig.desc = ctor.desc; + }); + sigs.push.apply(sigs, ctor.signatures); + }); + delete section.ctors; + } + + // properties are a bit special. + // their "type" is the type of object, not "property" + if (section.properties) { + section.properties.forEach(function (p) { + if (p.typeof) p.type = p.typeof; + else delete p.type; + delete p.typeof; + }); + } + + // handle clones + if (section.clone) { + var clone = section.clone; + delete section.clone; + delete clone.clone; + deepCopy(section, clone); + finishSection(clone, parent); + } + + var plur; + if (section.type.slice(-1) === 's') { + plur = section.type + 'es'; + } else if (section.type.slice(-1) === 'y') { + plur = section.type.replace(/y$/, 'ies'); + } else { + plur = section.type + 's'; + } + + // if the parent's type is 'misc', then it's just a random + // collection of stuff, like the "globals" section. + // Make the children top-level items. + if (section.type === 'misc') { + Object.keys(section).forEach(function(k) { + switch (k) { + case 'textRaw': + case 'name': + case 'type': + case 'desc': + case 'miscs': + return; + default: + if (parent.type === 'misc') { + return; + } + if (Array.isArray(k) && parent[k]) { + parent[k] = parent[k].concat(section[k]); + } else if (!parent[k]) { + parent[k] = section[k]; + } else { + // parent already has, and it's not an array. + return; + } + } + }); + } + + parent[plur] = parent[plur] || []; + parent[plur].push(section); +} + + +// Not a general purpose deep copy. +// But sufficient for these basic things. +function deepCopy(src, dest) { + Object.keys(src).filter(function(k) { + return !dest.hasOwnProperty(k); + }).forEach(function(k) { + dest[k] = deepCopy_(src[k]); + }); +} + +function deepCopy_(src) { + if (!src) return src; + if (Array.isArray(src)) { + var c = new Array(src.length); + src.forEach(function(v, i) { + c[i] = deepCopy_(v); + }); + return c; + } + if (typeof src === 'object') { + var c = {}; + Object.keys(src).forEach(function(k) { + c[k] = deepCopy_(src[k]); + }); + return c; + } + return src; +} + + +// these parse out the contents of an H# tag +var eventExpr = /^Event(?::|\s)+['"]?([^"']+).*$/i; +var classExpr = /^Class:\s*([^ ]+).*?$/i; +var propExpr = /^(?:property:?\s*)?[^\.]+\.([^ \.\(\)]+)\s*?$/i; +var braceExpr = /^(?:property:?\s*)?[^\.\[]+(\[[^\]]+\])\s*?$/i; +var classMethExpr = + /^class\s*method\s*:?[^\.]+\.([^ \.\(\)]+)\([^\)]*\)\s*?$/i; +var methExpr = + /^(?:method:?\s*)?(?:[^\.]+\.)?([^ \.\(\)]+)\([^\)]*\)\s*?$/i; +var newExpr = /^new ([A-Z][a-z]+)\([^\)]*\)\s*?$/; +var paramExpr = /\((.*)\);?$/; + +function newSection(tok) { + var section = {}; + // infer the type from the text. + var text = section.textRaw = tok.text; + if (text.match(eventExpr)) { + section.type = 'event'; + section.name = text.replace(eventExpr, '$1'); + } else if (text.match(classExpr)) { + section.type = 'class'; + section.name = text.replace(classExpr, '$1'); + } else if (text.match(braceExpr)) { + section.type = 'property'; + section.name = text.replace(braceExpr, '$1'); + } else if (text.match(propExpr)) { + section.type = 'property'; + section.name = text.replace(propExpr, '$1'); + } else if (text.match(classMethExpr)) { + section.type = 'classMethod'; + section.name = text.replace(classMethExpr, '$1'); + } else if (text.match(methExpr)) { + section.type = 'method'; + section.name = text.replace(methExpr, '$1'); + } else if (text.match(newExpr)) { + section.type = 'ctor'; + section.name = text.replace(newExpr, '$1'); + } else { + section.name = text; + } + return section; +} diff --git a/sources/bin/doc/package.json b/sources/bin/doc/package.json new file mode 100755 index 0000000..d87c934 --- /dev/null +++ b/sources/bin/doc/package.json @@ -0,0 +1,15 @@ +{ + "author": "Isaac Z. Schlueter (http://blog.izs.me/)", + "name": "node-doc-generator", + "description": "Internal tool for generating Node.js API docs", + "version": "0.0.0", + "engines": { + "node": ">=0.6.10" + }, + "dependencies": { + "marked": "~0.1.9" + }, + "devDependencies": {}, + "optionalDependencies": {}, + "bin": "./generate.js" +} diff --git a/sources/bin/extractPadData.js b/sources/bin/extractPadData.js old mode 100644 new mode 100755 diff --git a/sources/bin/importSqlFile.js b/sources/bin/importSqlFile.js old mode 100644 new mode 100755 diff --git a/sources/bin/installDeps.sh b/sources/bin/installDeps.sh index 84f2e22..f2a3aaf 100755 --- a/sources/bin/installDeps.sh +++ b/sources/bin/installDeps.sh @@ -10,43 +10,51 @@ fi #Is gnu-grep (ggrep) installed on SunOS (Solaris) if [ $(uname) = "SunOS" ]; then - hash ggrep > /dev/null 2>&1 || { + hash ggrep > /dev/null 2>&1 || { echo "Please install ggrep (pkg install gnu-grep)" >&2 - exit 1 + exit 1 } fi #Is curl installed? -hash curl > /dev/null 2>&1 || { +hash curl > /dev/null 2>&1 || { echo "Please install curl" >&2 - exit 1 + exit 1 } #Is node installed? -hash node > /dev/null 2>&1 || { +#not checking io.js, default installation creates a symbolic link to node +hash node > /dev/null 2>&1 || { echo "Please install node.js ( http://nodejs.org )" >&2 - exit 1 + exit 1 } #Is npm installed? -hash npm > /dev/null 2>&1 || { +hash npm > /dev/null 2>&1 || { echo "Please install npm ( http://npmjs.org )" >&2 - exit 1 + exit 1 } #check npm version NPM_VERSION=$(npm --version) -if [ ! $(echo $NPM_VERSION | cut -d "." -f 1) = "1" ]; then - echo "You're running a wrong version of npm, you're using $NPM_VERSION, we need 1.x" >&2 - exit 1 +NPM_MAIN_VERSION=$(echo $NPM_VERSION | cut -d "." -f 1) +if [ $(echo $NPM_MAIN_VERSION) = "0" ]; then + echo "You're running a wrong version of npm, you're using $NPM_VERSION, we need 1.x or higher" >&2 + exit 1 fi #check node version NODE_VERSION=$(node --version) NODE_V_MINOR=$(echo $NODE_VERSION | cut -d "." -f 1-2) -if [ ! $NODE_V_MINOR = "v0.8" ] && [ ! $NODE_V_MINOR = "v0.10" ] && [ ! $NODE_V_MINOR = "v0.11" ]; then - echo "You're running a wrong version of node, you're using $NODE_VERSION, we need v0.8.x, v0.10.x or v0.11.x" >&2 - exit 1 +#iojs version checking added +if hash iojs 2>/dev/null; then + IOJS_VERSION=$(iojs --version) +fi +if [ ! $NODE_V_MINOR = "v0.10" ] && [ ! $NODE_V_MINOR = "v0.11" ] && [ ! $NODE_V_MINOR = "v0.12" ]; then + if [ ! $IOJS_VERSION ]; then + echo "You're running a wrong version of node, or io.js is not installed. You're using $NODE_VERSION, we need v0.10.x, v0.11.x or v0.12.x" >&2 + exit 1 + fi fi #Get the name of the settings file @@ -70,9 +78,9 @@ echo "Ensure that all dependencies are up to date... If this is the first time [ -e ep_etherpad-lite ] || ln -s ../src ep_etherpad-lite cd ep_etherpad-lite npm install --loglevel warn -) || { +) || { rm -rf node_modules - exit 1 + exit 1 } echo "Ensure jQuery is downloaded and up to date..." @@ -80,9 +88,9 @@ DOWNLOAD_JQUERY="true" NEEDED_VERSION="1.9.1" if [ -f "src/static/js/jquery.js" ]; then if [ $(uname) = "SunOS" ]; then - VERSION=$(cat src/static/js/jquery.js | head -n 3 | ggrep -o "v[0-9]\.[0-9]\(\.[0-9]\)\?"); + VERSION=$(head -n 3 src/static/js/jquery.js | ggrep -o "v[0-9]\.[0-9]\(\.[0-9]\)\?") else - VERSION=$(cat src/static/js/jquery.js | head -n 3 | grep -o "v[0-9]\.[0-9]\(\.[0-9]\)\?"); + VERSION=$(head -n 3 src/static/js/jquery.js | grep -o "v[0-9]\.[0-9]\(\.[0-9]\)\?") fi if [ ${VERSION#v} = $NEEDED_VERSION ]; then @@ -95,17 +103,17 @@ if [ $DOWNLOAD_JQUERY = "true" ]; then fi #Remove all minified data to force node creating it new -echo "Clear minfified cache..." +echo "Clearing minified cache..." rm -f var/minified* -echo "ensure custom css/js files are created..." +echo "Ensure custom css/js files are created..." for f in "index" "pad" "timeslider" do if [ ! -f "src/static/custom/$f.js" ]; then cp "src/static/custom/js.template" "src/static/custom/$f.js" || exit 1 fi - + if [ ! -f "src/static/custom/$f.css" ]; then cp "src/static/custom/css.template" "src/static/custom/$f.css" || exit 1 fi diff --git a/sources/bin/installOnWindows.bat b/sources/bin/installOnWindows.bat old mode 100644 new mode 100755 index 8622306..9b9a42e --- a/sources/bin/installOnWindows.bat +++ b/sources/bin/installOnWindows.bat @@ -8,7 +8,7 @@ cmd /C node -e "" || ( echo "Please install node.js ( http://nodejs.org )" && ex echo _ echo Checking node version... -set check_version="if(['8','10'].indexOf(process.version.split('.')[1].toString()) === -1) { console.log('You are running a wrong version of Node. Etherpad requires v0.8.x or v0.10.x'); process.exit(1) }" +set check_version="if(['10','11','12'].indexOf(process.version.split('.')[1]) === -1 && process.version.split('.')[0] !== '1') { console.log('You are running a wrong version of Node. Etherpad requires v0.10+'); process.exit(1) }" cmd /C node -e %check_version% || exit /B 1 echo _ diff --git a/sources/bin/jshint.sh b/sources/bin/jshint.sh deleted file mode 100755 index 4dea739..0000000 --- a/sources/bin/jshint.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -if [ -d "../bin" ]; then - cd "../" -fi - -JSHINT=./node_modules/jshint/bin/hint - -$JSHINT ./node/ diff --git a/sources/bin/loadTesting/README b/sources/bin/loadTesting/README deleted file mode 100644 index c8ecd71..0000000 --- a/sources/bin/loadTesting/README +++ /dev/null @@ -1,79 +0,0 @@ -This is the new load testing file: https://bitbucket.org/rbraakman/etherpad-stresstest - -BELOW is the original load testing file. - -This load tester is extremely useful for testing how many dormant clients can connect to etherpad. - -TODO: -Emulate characters being typed into a pad - -HOW TO USE (from @mjd75) proper formatting at: https://github.com/ether/etherpad-lite/issues/360 - -Server 1: -Installed Node.js (etc), EtherPad and MySQL - -Server 2: -Installed Xvfb and PhantomJS - -I installed Xvfb following (roughly) this guide: http://blog.martin-lyness.com/archives/installing-xvfb-on-ubuntu-9-10-karmic-koala - - #sudo apt-get install xvfb - #sudo apt-get install xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic - -Launched two instances of Xvfb directly from the terminal: - - #Xvfb :0 -ac - #Xvfb :1 -ac - -I installed PhantomJS following this guide: http://code.google.com/p/phantomjs/wiki/Installation - - #sudo add-apt-repository ppa:jerome-etienne/neoip - #sudo apt-get update - #sudo apt-get install phantomjs - -I created a small JavaScript file for PhatomJS to use to control the browser instances: - -### BEGIN JAVASCRIPT ### - -var page = new WebPage(), - t, address; - -if (phantom.args.length === 0) { - console.log('Usage: loader.js '); - phantom.exit(); -} else { - t = Date.now(); - address = phantom.args[0]; - - var page = new WebPage(); - page.onResourceRequested = function (request) { - console.log('Request ' + JSON.stringify(request, undefined, 4)); - }; - page.onResourceReceived = function (response) { - console.log('Receive ' + JSON.stringify(response, undefined, 4)); - }; - page.open(address); - -} - -### END JAVASCRIPT ### - -And finally a launcher script that uses screen to run 400 instances of PhantomJS with the above script: - -### BEGIN SHELL SCRIPT ### - -#!/bin/bash - -# connect 200 instances to display :0 -for i in {1..200} -do - DISPLAY=:0 screen -d -m phantomjs loader.js http://ec2-50-17-168-xx.compute-1.amazonaws.com:9001/p/pad2 && sleep 2 -done - -# connect 200 instances to display :1 -for i in {1..200} -do - DISPLAY=:1 screen -d -m phantomjs loader.js http://ec2-50-17-168-xx.compute-1.amazonaws.com:9001/p/pad2 && sleep 2 -done - -### END SHELL SCRIPT ### diff --git a/sources/bin/loadTesting/launcher.sh b/sources/bin/loadTesting/launcher.sh deleted file mode 100755 index e940f8e..0000000 --- a/sources/bin/loadTesting/launcher.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -# connect 500 instances to display :0 -for i in {1..500} -do - echo $i - echo "Displaying Some shit" - DISPLAY=:0 screen -d -m /home/phantomjs/bin/phantomjs loader.js http://10.0.0.55:9001/p/pad2 && sleep 2 -done - -# connect 500 instances to display :1 -for i in {1..500} -do - echo $i - DISPLAY=:1 screen -d -m /home/phantomjs/bin/phantomjs loader.js http://10.0.0.55:9001/p/pad2 && sleep 2 -done diff --git a/sources/bin/loadTesting/loader.js b/sources/bin/loadTesting/loader.js deleted file mode 100644 index ddcd057..0000000 --- a/sources/bin/loadTesting/loader.js +++ /dev/null @@ -1,20 +0,0 @@ -var page = new WebPage(), - t, address; - -if (phantom.args.length === 0) { - console.log('Usage: loader.js '); - phantom.exit(); -} else { - t = Date.now(); - address = phantom.args[0]; - - var page = new WebPage(); - page.onResourceRequested = function (request) { - console.log('Request ' + JSON.stringify(request, undefined, 4)); - }; - page.onResourceReceived = function (response) { - console.log('Receive ' + JSON.stringify(response, undefined, 4)); - }; - page.open(address); - -} diff --git a/sources/bin/migrateDirtyDBtoMySQL.js b/sources/bin/migrateDirtyDBtoMySQL.js old mode 100644 new mode 100755 diff --git a/sources/bin/rebuildPad.js b/sources/bin/rebuildPad.js new file mode 100755 index 0000000..c838334 --- /dev/null +++ b/sources/bin/rebuildPad.js @@ -0,0 +1,120 @@ +/* + This is a repair tool. It rebuilds an old pad at a new pad location up to a + known "good" revision. +*/ + +if(process.argv.length != 4 && process.argv.length != 5) { + console.error("Use: node bin/repairPad.js $PADID $REV [$NEWPADID]"); + process.exit(1); +} + +var npm = require("../src/node_modules/npm"); +var async = require("../src/node_modules/async"); +var ueberDB = require("../src/node_modules/ueberDB"); + +var padId = process.argv[2]; +var newRevHead = process.argv[3]; +var newPadId = process.argv[4] || padId + "-rebuilt"; + +var db, oldPad, newPad, settings; +var AuthorManager, ChangeSet, Pad, PadManager; + +async.series([ + function(callback) { + npm.load({}, function(err) { + if(err) { + console.error("Could not load NPM: " + err) + process.exit(1); + } else { + callback(); + } + }) + }, + function(callback) { + // Get a handle into the database + db = require('../src/node/db/DB'); + db.init(callback); + }, function(callback) { + PadManager = require('../src/node/db/PadManager'); + Pad = require('../src/node/db/Pad').Pad; + // Get references to the original pad and to a newly created pad + // HACK: This is a standalone script, so we want to write everything + // out to the database immediately. The only problem with this is + // that a driver (like the mysql driver) can hardcode these values. + db.db.db.settings = {cache: 0, writeInterval: 0, json: true}; + // Validate the newPadId if specified and that a pad with that ID does + // not already exist to avoid overwriting it. + if (!PadManager.isValidPadId(newPadId)) { + console.error("Cannot create a pad with that id as it is invalid"); + process.exit(1); + } + PadManager.doesPadExists(newPadId, function(err, exists) { + if (exists) { + console.error("Cannot create a pad with that id as it already exists"); + process.exit(1); + } + }); + PadManager.getPad(padId, function(err, pad) { + oldPad = pad; + newPad = new Pad(newPadId); + callback(); + }); + }, function(callback) { + // Clone all Chat revisions + var chatHead = oldPad.chatHead; + for(var i = 0, curHeadNum = 0; i <= chatHead; i++) { + db.db.get("pad:" + padId + ":chat:" + i, function (err, chat) { + db.db.set("pad:" + newPadId + ":chat:" + curHeadNum++, chat); + console.log("Created: Chat Revision: pad:" + newPadId + ":chat:" + curHeadNum); + }); + } + callback(); + }, function(callback) { + // Rebuild Pad from revisions up to and including the new revision head + AuthorManager = require("../src/node/db/AuthorManager"); + Changeset = require("ep_etherpad-lite/static/js/Changeset"); + // Author attributes are derived from changesets, but there can also be + // non-author attributes with specific mappings that changesets depend on + // and, AFAICT, cannot be recreated any other way + newPad.pool.numToAttrib = oldPad.pool.numToAttrib; + for(var curRevNum = 0; curRevNum <= newRevHead; curRevNum++) { + db.db.get("pad:" + padId + ":revs:" + curRevNum, function(err, rev) { + var newRevNum = ++newPad.head; + var newRevId = "pad:" + newPad.id + ":revs:" + newRevNum; + db.db.set(newRevId, rev); + AuthorManager.addPad(rev.meta.author, newPad.id); + newPad.atext = Changeset.applyToAText(rev.changeset, newPad.atext, newPad.pool); + console.log("Created: Revision: pad:" + newPad.id + ":revs:" + newRevNum); + if (newRevNum == newRevHead) { + callback(); + } + }); + } + }, function(callback) { + // Add saved revisions up to the new revision head + console.log(newPad.head); + var newSavedRevisions = []; + for(var i in oldPad.savedRevisions) { + savedRev = oldPad.savedRevisions[i] + if (savedRev.revNum <= newRevHead) { + newSavedRevisions.push(savedRev); + console.log("Added: Saved Revision: " + savedRev.revNum); + } + } + newPad.savedRevisions = newSavedRevisions; + callback(); + }, function(callback) { + // Save the source pad + db.db.set("pad:"+newPadId, newPad, function(err) { + console.log("Created: Source Pad: pad:" + newPadId); + newPad.saveToDatabase(); + callback(); + }); + } +], function (err) { + if(err) throw err; + else { + console.info("finished"); + process.exit(0); + } +}); diff --git a/sources/bin/repairPad.js b/sources/bin/repairPad.js new file mode 100755 index 0000000..4a90812 --- /dev/null +++ b/sources/bin/repairPad.js @@ -0,0 +1,106 @@ +/* + This is a repair tool. It extracts all datas of a pad, removes and inserts them again. +*/ + +console.warn("WARNING: This script must not be used while etherpad is running!"); + +if(process.argv.length != 3) +{ + console.error("Use: node bin/repairPad.js $PADID"); + process.exit(1); +} +//get the padID +var padId = process.argv[2]; + +var db, padManager, pad, settings; +var neededDBValues = ["pad:"+padId]; + +var npm = require("../src/node_modules/npm"); +var async = require("../src/node_modules/async"); + +async.series([ + // load npm + function(callback) { + npm.load({}, function(er) { + if(er) + { + console.error("Could not load NPM: " + er) + process.exit(1); + } + else + { + callback(); + } + }) + }, + // load modules + function(callback) { + settings = require('../src/node/utils/Settings'); + db = require('../src/node/db/DB'); + callback(); + }, + //intallize the database + function (callback) + { + db.init(callback); + }, + //get the pad + function (callback) + { + padManager = require('../src/node/db/PadManager'); + + padManager.getPad(padId, function(err, _pad) + { + pad = _pad; + callback(err); + }); + }, + function (callback) + { + //add all authors + var authors = pad.getAllAuthors(); + for(var i=0;i" + context.lineContent + ""; + } +} + +function _analyzeLine(alineAttrs, apool) { + var header = null; + if (alineAttrs) { + var opIter = Changeset.opIterator(alineAttrs); + if (opIter.hasNext()) { + var op = opIter.next(); + header = Changeset.opAttributeValue(op, 'heading', apool); + } + } + return header; +} +``` + +## stylesForExport +Called from: src/node/utils/ExportHtml.js + +Things in context: + +1. padId - The Pad Id + +This hook will allow a plug-in developer to append Styles to the Exported HTML. + +Example: + +``` +exports.stylesForExport = function(hook, padId, cb){ + cb("body{font-size:13.37em !important}"); +} +``` + +## aceAttribClasses +Called from: src/static/js/linestylefilter.js + +Things in context: +1. Attributes - Object of Attributes + +This hook is called when attributes are investigated on a line. It is useful if you want to add another attribute type or property type to a pad. + +Example: + +``` +exports.aceAttribClasses = function(hook_name, attr, cb){ + attr.sub = 'tag:sub'; + cb(attr); +} +``` + +## exportFileName +Called from src/node/handler/ExportHandler.js + +Things in context: + +1. padId + +This hook will allow a plug-in developer to modify the file name of an exported pad. This is useful if you want to export a pad under another name and/or hide the padId under export. Note that the doctype or file extension cannot be modified for security reasons. + +Example: + +``` +exports.exportFileName = function(hook, padId, callback){ + callback("newFileName"+padId); +} +``` + +## exportHtmlAdditionalTags +Called from src/node/utils/ExportHtml.js + +Things in context: + +1. Pad object + +This hook will allow a plug-in developer to include more properties and attributes to support during HTML Export. An Array should be returned. + +Example: +``` +// Add the props to be supported in export +exports.exportHtmlAdditionalTags = function(hook, pad, cb){ + var padId = pad.id; + cb(["massive","jugs"]); +}; +``` + +## userLeave +Called from src/node/handler/PadMessageHandler.js + +This in context: + +1. session (including the pad id and author id) + +This hook gets called when an author leaves a pad. This is useful if you want to perform certain actions after a pad has been edited + +Example: + +``` +exports.userLeave = function(hook, session, callback) { + console.log('%s left pad %s', session.author, session.padId); +}; +``` diff --git a/sources/doc/api/http_api.md b/sources/doc/api/http_api.md old mode 100644 new mode 100755 index 2d6e790..59510a7 --- a/sources/doc/api/http_api.md +++ b/sources/doc/api/http_api.md @@ -61,7 +61,7 @@ Portal submits content into new blog post ## Usage ### API version -The latest version is `1.2.9` +The latest version is `1.2.12` The current version can be queried via /api. @@ -232,7 +232,7 @@ creates a new session. validUntil is an unix timestamp in seconds deletes a session *Example returns:* - * `{code: 1, message:"ok", data: null}` + * `{code: 0, message:"ok", data: null}` * `{code: 1, message:"sessionID does not exist", data: null}` #### getSessionInfo(sessionID) @@ -388,10 +388,12 @@ Group pads are normal pads, but with the name schema GROUPID$PADNAME. A security * API >= 1 creates a new (non-group) pad. Note that if you need to create a group Pad, you should call **createGroupPad**. +You get an error message if you use one of the following characters in the padID: "/", "?", "&" or "#". *Example returns:* * `{code: 0, message:"ok", data: null}` - * `{code: 1, message:"pad does already exist", data: null}` + * `{code: 1, message:"padID does already exist", data: null}` + * `{code: 1, message:"malformed padID: Remove special characters", data: null}` #### getRevisionsCount(padID) * API >= 1 @@ -402,6 +404,33 @@ returns the number of revisions of this pad * `{code: 0, message:"ok", data: {revisions: 56}}` * `{code: 1, message:"padID does not exist", data: null}` +#### getSavedRevisionsCount(padID) + * API >= 1.2.11 + +returns the number of saved revisions of this pad + +*Example returns:* + * `{code: 0, message:"ok", data: {savedRevisions: 42}}` + * `{code: 1, message:"padID does not exist", data: null}` + +#### listSavedRevisions(padID) + * API >= 1.2.11 + +returns the list of saved revisions of this pad + +*Example returns:* + * `{code: 0, message:"ok", data: {savedRevisions: [2, 42, 1337]}}` + * `{code: 1, message:"padID does not exist", data: null}` + +#### saveRevision(padID [, rev]) + * API >= 1.2.11 + +saves a revision + +*Example returns:* + * `{code: 0, message:"ok", data: null}` + * `{code: 1, message:"padID does not exist", data: null}` + #### padUsersCount(padID) * API >= 1 @@ -455,6 +484,15 @@ returns the read only link of a pad * `{code: 0, message:"ok", data: {readOnlyID: "r.s8oes9dhwrvt0zif"}}` * `{code: 1, message:"padID does not exist", data: null}` +#### getPadID(readOnlyID) + * API >= 1.2.10 + +returns the id of a pad which is assigned to the readOnlyID + +*Example returns:* + * `{code: 0, message:"ok", data: {padID: "p.s8oes9dhwrvt0zif"}}` + * `{code: 1, message:"padID does not exist", data: null}` + #### setPublicStatus(padID, publicStatus) * API >= 1 diff --git a/sources/doc/api/pluginfw.md b/sources/doc/api/pluginfw.md old mode 100644 new mode 100755 diff --git a/sources/doc/api/toolbar.md b/sources/doc/api/toolbar.md old mode 100644 new mode 100755 diff --git a/sources/doc/assets/style.css b/sources/doc/assets/style.css old mode 100644 new mode 100755 diff --git a/sources/doc/custom_static.md b/sources/doc/custom_static.md old mode 100644 new mode 100755 diff --git a/sources/doc/database.md b/sources/doc/database.md old mode 100644 new mode 100755 diff --git a/sources/doc/documentation.md b/sources/doc/documentation.md old mode 100644 new mode 100755 diff --git a/sources/doc/easysync/README.md b/sources/doc/easysync/README.md old mode 100644 new mode 100755 diff --git a/sources/doc/easysync/easysync-full-description.pdf b/sources/doc/easysync/easysync-full-description.pdf old mode 100644 new mode 100755 diff --git a/sources/doc/easysync/easysync-full-description.tex b/sources/doc/easysync/easysync-full-description.tex old mode 100644 new mode 100755 index a831da6..5ed9f29 --- a/sources/doc/easysync/easysync-full-description.tex +++ b/sources/doc/easysync/easysync-full-description.tex @@ -83,7 +83,7 @@ For any two changesets $A$, $B$ such that \begin{itemize} \item[] $A=(n_1\rightarrow n_2)[\cdots]$ -\item[] $A=(n_2\rightarrow n_3)[\cdots]$ +\item[] $B=(n_2\rightarrow n_3)[\cdots]$ \end{itemize} it is clear that there is a third changeset $C=(n_1\rightarrow n_3)[\cdots]$ such that applying $C$ to a document $X$ yeilds the same resulting document as does applying $A$ and then $B$. In this case, we write $AB=C$. @@ -97,14 +97,14 @@ It is impossible to compute $(XA)B$ because $B$ can only be applied to a documen This is where \emph{merging} comes in. Merging takes two changesets that apply to the same initial document (and that cannot be composed), and computes a single new changeset that presevers the intent of both changes. The merge of $A$ and $B$ is written as $m(A,B)$. For the Etherpad system to work, we require that $m(A,B)=m(B,A)$. -Aside from what we have said so far about merging, there aremany different implementations that will lead to a workable system. We have created one implementation for text that has the following constraints. +Aside from what we have said so far about merging, there are many different implementations that will lead to a workable system. We have created one implementation for text that has the following constraints. \section{Follows} \label{follows} When users $A$ and $B$ have the same document $X$ on their screen, and they proceed to make respective changesets $A$ and $B$, it is no use to compute $m(A,B)$, because $m(A,B)$ applies to document $X$, but the users are already looking at document $XA$ and $XB$. What we really want is to compute $B'$ and $A'$ such that $$XAB' = XBA' = Xm(A,B)$$ -``Following'' computes these $B'$ and $A'$ changesets. The definition of the ``follow'' function $f$ is such that $Af(A,B)=Bf(B,A)=m(A,B)=m(B,A)$. When we computer $f(A,B)$. +``Following'' computes these $B'$ and $A'$ changesets. The definition of the ``follow'' function $f$ is such that $Af(A,B)=Bf(B,A)=m(A,B)=m(B,A)$. When we compute $f(A,B)$ \begin{itemize} \item Insertions in $A$ become retained characters in $f(A,B)$ \item Insertions in $B$ become insertions in $f(A,B)$ diff --git a/sources/doc/easysync/easysync-notes.pdf b/sources/doc/easysync/easysync-notes.pdf old mode 100644 new mode 100755 diff --git a/sources/doc/easysync/easysync-notes.tex b/sources/doc/easysync/easysync-notes.tex old mode 100644 new mode 100755 diff --git a/sources/doc/easysync/easysync-notes.txt b/sources/doc/easysync/easysync-notes.txt old mode 100644 new mode 100755 diff --git a/sources/doc/index.md b/sources/doc/index.md old mode 100644 new mode 100755 diff --git a/sources/doc/localization.md b/sources/doc/localization.md old mode 100644 new mode 100755 diff --git a/sources/doc/plugins.md b/sources/doc/plugins.md old mode 100644 new mode 100755 diff --git a/sources/doc/stats.md b/sources/doc/stats.md old mode 100644 new mode 100755 diff --git a/sources/doc/template.html b/sources/doc/template.html old mode 100644 new mode 100755 diff --git a/sources/settings.json.template b/sources/settings.json.template old mode 100644 new mode 100755 index 38e8267..7d9c62c --- a/sources/settings.json.template +++ b/sources/settings.json.template @@ -15,10 +15,6 @@ "ip": "0.0.0.0", "port" : 9001, - // Session Key, used for reconnecting user sessions - // Set this to a secure string at least 10 characters long. Do not share this value. - "sessionKey" : "", - /* // Node native SSL support // this is disabled by default @@ -29,6 +25,7 @@ "ssl" : { "key" : "/path-to-your/epl-server.key", "cert" : "/path-to-your/epl-server.crt" + "ca": ["/path-to-your/epl-intermediate-cert1.crt", "/path-to-your/epl-intermediate-cert2.crt"] }, */ @@ -53,12 +50,33 @@ //the default text of a pad "defaultPadText" : "Welcome to Etherpad!\n\nThis pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!\n\nGet involved with Etherpad at http:\/\/etherpad.org\n", + + /* Default Pad behavior, users can override by changing */ + "padOptions": { + "noColors": false, + "showControls": true, + "showChat": true, + "showLineNumbers": true, + "useMonospaceFont": false, + "userName": false, + "userColor": false, + "rtl": false, + "alwaysShowChat": false, + "chatAndUsers": false, + "lang": "en-gb" + }, + /* Shoud we suppress errors from being visible in the default Pad Text? */ + "suppressErrorsInPadText" : false, + /* Users must have a session to access pads. This effectively allows only group pads to be accessed. */ "requireSession" : false, /* Users may edit pads but not create new ones. Pad creation is only via the API. This applies both to group pads and regular pads. */ "editOnly" : false, + + /* Users, who have a valid session, automatically get granted access to password protected pads */ + "sessionNoPassword" : false, /* if true, all css & js will be minified before sending to the client. This will improve the loading performance massivly, but makes it impossible to debug the javascript/css */ @@ -71,19 +89,22 @@ /* This is the path to the Abiword executable. Setting it to null, disables abiword. Abiword is needed to advanced import/export features of pads*/ "abiword" : null, + + /* Allow import of file types other than the supported types: txt, doc, docx, rtf, odt, html & htm */ + "allowUnknownFileEnds" : true, /* This setting is used if you require authentication of all users. Note: /admin always requires authentication. */ - "requireAuthentication": false, + "requireAuthentication" : false, /* Require authorization by a module, or a user with is_admin set, see below. */ - "requireAuthorization": false, + "requireAuthorization" : false, /*when you use NginX or another proxy/ load-balancer set this to true*/ - "trustProxy": false, + "trustProxy" : false, /* Privacy: disable IP logging */ - "disableIPlogging": false, + "disableIPlogging" : false, /* Users for basic authentication. is_admin = true gives access to /admin. If you do not uncomment this, /admin will not be available! */ @@ -102,6 +123,9 @@ // restrict socket.io transport methods "socketTransportProtocols" : ["xhr-polling", "jsonp-polling", "htmlfile"], + + // Allow Load Testing tools to hit the Etherpad Instance. Warning this will disable security on the instance. + "loadTest": false, /* The toolbar buttons configuration. "toolbar": { diff --git a/sources/src/README.md b/sources/src/README.md old mode 100644 new mode 100755 diff --git a/sources/src/ep.json b/sources/src/ep.json old mode 100644 new mode 100755 diff --git a/sources/src/etherpad_icon.svg b/sources/src/etherpad_icon.svg new file mode 100755 index 0000000..ebdcde9 --- /dev/null +++ b/sources/src/etherpad_icon.svg @@ -0,0 +1,92 @@ + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sources/src/locales/af.json b/sources/src/locales/af.json old mode 100644 new mode 100755 index 70a6b01..eb04e47 --- a/sources/src/locales/af.json +++ b/sources/src/locales/af.json @@ -1,65 +1,64 @@ { - "@metadata": { - "authors": [ - "Naudefj" - ] - }, - "index.newPad": "Nuwe pad", - "index.createOpenPad": "of skep/open 'n pad met die naam:", - "pad.toolbar.bold.title": "Vet (Ctrl-B)", - "pad.toolbar.italic.title": "Kursief (Ctrl-I)", - "pad.toolbar.underline.title": "Onderstreep (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Deurgehaal", - "pad.toolbar.ol.title": "Geordende lys", - "pad.toolbar.ul.title": "Ongeordende lys", - "pad.toolbar.indent.title": "Indenteer", - "pad.toolbar.unindent.title": "Verklein indentering", - "pad.toolbar.undo.title": "Ongedaan maak (Ctrl-Z)", - "pad.toolbar.redo.title": "Herdoen (Ctrl-Y)", - "pad.toolbar.settings.title": "Voorkeure", - "pad.colorpicker.save": "Stoor", - "pad.colorpicker.cancel": "Kanselleer", - "pad.loading": "Laai...", - "pad.settings.myView": "My oorsig", - "pad.settings.fontType.normal": "Normaal", - "pad.settings.fontType.monospaced": "Monospasie", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.userdup.advice": "Maak weer 'n verbinding as u die venster wil gebruik.", - "pad.modals.unauth": "Nie toegestaan", - "pad.modals.deleted": "Geskrap.", - "pad.share": "Deel die pad", - "pad.share.readonly": "Lees-alleen", - "pad.share.link": "Skakel", - "pad.share.emebdcode": "Inbed URL", - "pad.chat": "Klets", - "pad.chat.title": "Maak kletsblad vir die pad oop", - "timeslider.toolbar.returnbutton": "Terug na pad", - "timeslider.toolbar.authors": "Outeurs:", - "timeslider.toolbar.authorsList": "Geen outeurs", - "timeslider.exportCurrent": "Huidige weergawe eksporteer as:", - "timeslider.version": "Weergawe {{version}}", - "timeslider.saved": "Gestoor op {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januarie", - "timeslider.month.february": "Februarie", - "timeslider.month.march": "Maart", - "timeslider.month.april": "April", - "timeslider.month.may": "Mei", - "timeslider.month.june": "Junie", - "timeslider.month.july": "Julie", - "timeslider.month.august": "Augustus", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "Desember", - "pad.userlist.entername": "Verskaf u naam", - "pad.userlist.unnamed": "sonder naam", - "pad.userlist.guest": "Gas", - "pad.userlist.deny": "Keur af", - "pad.userlist.approve": "Keur goed", - "pad.impexp.importbutton": "Voer nou in", - "pad.impexp.importing": "Besig met invoer...", - "pad.impexp.importfailed": "Invoer het gefaal" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Naudefj" + ] + }, + "index.newPad": "Nuwe pad", + "index.createOpenPad": "of skep/open 'n pad met die naam:", + "pad.toolbar.bold.title": "Vet (Ctrl-B)", + "pad.toolbar.italic.title": "Kursief (Ctrl-I)", + "pad.toolbar.underline.title": "Onderstreep (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Deurgehaal", + "pad.toolbar.ol.title": "Geordende lys", + "pad.toolbar.ul.title": "Ongeordende lys", + "pad.toolbar.indent.title": "Indenteer", + "pad.toolbar.unindent.title": "Verklein indentering", + "pad.toolbar.undo.title": "Ongedaan maak (Ctrl-Z)", + "pad.toolbar.redo.title": "Herdoen (Ctrl-Y)", + "pad.toolbar.settings.title": "Voorkeure", + "pad.colorpicker.save": "Stoor", + "pad.colorpicker.cancel": "Kanselleer", + "pad.loading": "Laai...", + "pad.settings.myView": "My oorsig", + "pad.settings.fontType.normal": "Normaal", + "pad.settings.fontType.monospaced": "Monospasie", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportpdf": "PDF", + "pad.modals.userdup.advice": "Maak weer 'n verbinding as u die venster wil gebruik.", + "pad.modals.unauth": "Nie toegestaan", + "pad.modals.deleted": "Geskrap.", + "pad.share": "Deel die pad", + "pad.share.readonly": "Lees-alleen", + "pad.share.link": "Skakel", + "pad.share.emebdcode": "Inbed URL", + "pad.chat": "Klets", + "pad.chat.title": "Maak kletsblad vir die pad oop", + "timeslider.toolbar.returnbutton": "Terug na pad", + "timeslider.toolbar.authors": "Outeurs:", + "timeslider.toolbar.authorsList": "Geen outeurs", + "timeslider.exportCurrent": "Huidige weergawe eksporteer as:", + "timeslider.version": "Weergawe {{version}}", + "timeslider.saved": "Gestoor op {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januarie", + "timeslider.month.february": "Februarie", + "timeslider.month.march": "Maart", + "timeslider.month.april": "April", + "timeslider.month.may": "Mei", + "timeslider.month.june": "Junie", + "timeslider.month.july": "Julie", + "timeslider.month.august": "Augustus", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Desember", + "pad.userlist.entername": "Verskaf u naam", + "pad.userlist.unnamed": "sonder naam", + "pad.userlist.guest": "Gas", + "pad.userlist.deny": "Keur af", + "pad.userlist.approve": "Keur goed", + "pad.impexp.importbutton": "Voer nou in", + "pad.impexp.importing": "Besig met invoer...", + "pad.impexp.importfailed": "Invoer het gefaal" +} diff --git a/sources/src/locales/ar.json b/sources/src/locales/ar.json old mode 100644 new mode 100755 index 81c78f3..9d29b52 --- a/sources/src/locales/ar.json +++ b/sources/src/locales/ar.json @@ -1,105 +1,128 @@ { - "@metadata": { - "authors": [ - "Ali1", - "Tux-tn" - ] - }, - "index.newPad": "باد جديد", - "index.createOpenPad": "أو صنع/فتح باد بوضع إسمه:", - "pad.toolbar.bold.title": "سميك (Ctrl-B)", - "pad.toolbar.italic.title": "مائل (Ctrl-I)", - "pad.toolbar.underline.title": "تسطير (Ctrl-U)", - "pad.toolbar.strikethrough.title": "شطب", - "pad.toolbar.ol.title": "قائمة مرتبة", - "pad.toolbar.ul.title": "قائمة غير مرتبة", - "pad.toolbar.indent.title": "إزاحة", - "pad.toolbar.unindent.title": "حذف الإزاحة", - "pad.toolbar.undo.title": "فك (Ctrl-Z)", - "pad.toolbar.redo.title": "تكرار (Ctrl-Y)", - "pad.toolbar.import_export.title": "استيراد/تصدير من/إلى تنسيقات ملفات مختلفة", - "pad.toolbar.timeslider.title": "متصفح التاريخ", - "pad.toolbar.savedRevision.title": "حفظ المراجعة", - "pad.toolbar.settings.title": "الإعدادات", - "pad.toolbar.embed.title": "تبادل و تضمين هذا الباد", - "pad.toolbar.showusers.title": "عرض المستخدمين على هذا الباد", - "pad.colorpicker.save": "تسجيل", - "pad.colorpicker.cancel": "إلغاء", - "pad.loading": "جاري التحميل...", - "pad.passwordRequired": "تحتاج إلى كلمة مرور للوصول إلى هذا الباد", - "pad.permissionDenied": "ليس لديك إذن لدخول هذا الباد", - "pad.wrongPassword": "كانت كلمة المرور خاطئة", - "pad.settings.padSettings": "إعدادات الباد", - "pad.settings.myView": "رؤيتي", - "pad.settings.stickychat": "الدردشة دائما على الشاشة", - "pad.settings.colorcheck": "ألوان التأليف", - "pad.settings.linenocheck": "أرقام الأسطر", - "pad.settings.rtlcheck": "قراءة المحتويات من اليمين إلى اليسار؟", - "pad.settings.fontType": "نوع الخط:", - "pad.settings.fontType.normal": "عادي", - "pad.settings.fontType.monospaced": "ثابت العرض", - "pad.settings.globalView": "الرؤية الشاملة", - "pad.settings.language": "اللغة:", - "pad.importExport.import_export": "استيراد/تصدير", - "pad.importExport.import": "تحميل أي ملف نصي أو وثيقة", - "pad.importExport.importSuccessful": "ناجح!", - "pad.importExport.export": "تصدير الباد الحالي بصفة:", - "pad.importExport.exporthtml": "إتش تي إم إل", - "pad.importExport.exportplain": "نص عادي", - "pad.importExport.exportword": "مايكروسوفت وورد", - "pad.importExport.exportpdf": "صيغة المستندات المحمولة", - "pad.importExport.exportopen": "ODF (نسق المستند المفتوح)", - "pad.importExport.exportdokuwiki": "دوکوويكي", - "pad.modals.connected": "متصل.", - "pad.modals.reconnecting": "إعادة الاتصال ببادك", - "pad.modals.forcereconnect": "فرض إعادة الاتصال", - "pad.modals.userdup": "مفتوح في نافذة أخرى", - "pad.modals.userdup.explanation": "يبدو أن هذا الباد تم فتحه في أكثر من نافذة متصفح في هذا الحاسوب.", - "pad.modals.userdup.advice": "إعادة الاتصال لإستعمال هذه النافذة بدلاً من الاخرى.", - "pad.modals.unauth": "غير مخول", - "pad.modals.initsocketfail": "لا يمكن الوصول إلى الخادم", - "pad.modals.initsocketfail.explanation": "تعذر الاتصال بخادم المزامنة.", - "pad.modals.slowcommit.explanation": "الخادم لا يستجيب.", - "pad.modals.slowcommit.cause": "يمكن أن يكون هذا بسبب مشاكل في الاتصال بالشبكة.", - "pad.modals.deleted": "محذوف.", - "pad.modals.deleted.explanation": "تمت إزالة هذا الباد", - "pad.modals.disconnected": "لم تعد متّصل.", - "pad.modals.disconnected.explanation": "تم فقدان الإتصال بالخادم", - "pad.modals.disconnected.cause": "قد يكون الخادم غير متوفر. الرجاء إعلامنا إذا تكرر هذا.", - "pad.share.readonly": "للقراءة فقط", - "pad.share.link": "رابط", - "pad.share.emebdcode": "URL للتضمين", - "pad.chat": "دردشة", - "pad.chat.title": "فتح الدردشة لهذا الباد", - "pad.chat.loadmessages": "تحميل المزيد من الرسائل", - "timeslider.toolbar.returnbutton": "العودة إلى الباد", - "timeslider.toolbar.authors": "المؤلفون:", - "timeslider.toolbar.authorsList": "بدون مؤلفين", - "timeslider.toolbar.exportlink.title": "تصدير", - "timeslider.exportCurrent": "تصدير النسخة الحالية ك:", - "timeslider.version": "إصدار {{version}}", - "timeslider.saved": "محفوظ {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "يناير", - "timeslider.month.february": "فبراير", - "timeslider.month.march": "مارس", - "timeslider.month.april": "أبريل", - "timeslider.month.may": "مايو", - "timeslider.month.june": "يونيو", - "timeslider.month.july": "يوليو", - "timeslider.month.august": "أغسطس", - "timeslider.month.september": "سبتمبر", - "timeslider.month.october": "أكتوبر", - "timeslider.month.november": "نوفمبر", - "timeslider.month.december": "ديسمبر", - "pad.userlist.entername": "إدخل اسمك", - "pad.userlist.unnamed": "غير مسمى", - "pad.userlist.guest": "ضيف", - "pad.userlist.deny": "رفض", - "pad.userlist.approve": "موافقة", - "pad.impexp.importbutton": "الاستيراد الآن", - "pad.impexp.importing": "الاستيراد...", - "pad.impexp.uploadFailed": "فشل التحميل، الرجاء المحاولة مرة أخرى", - "pad.impexp.importfailed": "فشل الاستيراد", - "pad.impexp.copypaste": "الرجاء نسخ/لصق" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Ali1", + "Tux-tn", + "Alami", + "Meno25", + "Test Create account" + ] + }, + "index.newPad": "باد جديد", + "index.createOpenPad": "أو صنع/فتح باد بوضع إسمه:", + "pad.toolbar.bold.title": "سميك (Ctrl-B)", + "pad.toolbar.italic.title": "مائل (Ctrl-I)", + "pad.toolbar.underline.title": "تسطير (Ctrl-U)", + "pad.toolbar.strikethrough.title": "شطب (Ctrl+5)", + "pad.toolbar.ol.title": "قائمة مرتبة (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "قائمة غير مرتبة (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "إزاحة", + "pad.toolbar.unindent.title": "حذف الإزاحة", + "pad.toolbar.undo.title": "فك (Ctrl-Z)", + "pad.toolbar.redo.title": "تكرار (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "مسح ألوان التأليف (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "استيراد/تصدير من/إلى تنسيقات ملفات مختلفة", + "pad.toolbar.timeslider.title": "متصفح التاريخ", + "pad.toolbar.savedRevision.title": "حفظ المراجعة", + "pad.toolbar.settings.title": "الإعدادات", + "pad.toolbar.embed.title": "تبادل و تضمين هذا الباد", + "pad.toolbar.showusers.title": "عرض المستخدمين على هذا الباد", + "pad.colorpicker.save": "تسجيل", + "pad.colorpicker.cancel": "إلغاء", + "pad.loading": "جاري التحميل...", + "pad.noCookie": "الكوكيز غير متاحة. الرجاء السماح بتحميل الكوكيز على متصفحك!", + "pad.passwordRequired": "تحتاج إلى كلمة مرور للوصول إلى هذا الباد", + "pad.permissionDenied": "ليس لديك إذن لدخول هذا الباد", + "pad.wrongPassword": "كانت كلمة المرور خاطئة", + "pad.settings.padSettings": "إعدادات الباد", + "pad.settings.myView": "رؤيتي", + "pad.settings.stickychat": "الدردشة دائما على الشاشة", + "pad.settings.colorcheck": "ألوان التأليف", + "pad.settings.linenocheck": "أرقام الأسطر", + "pad.settings.rtlcheck": "قراءة المحتويات من اليمين إلى اليسار؟", + "pad.settings.fontType": "نوع الخط:", + "pad.settings.fontType.normal": "عادي", + "pad.settings.fontType.monospaced": "ثابت العرض", + "pad.settings.globalView": "الرؤية الشاملة", + "pad.settings.language": "اللغة:", + "pad.importExport.import_export": "استيراد/تصدير", + "pad.importExport.import": "تحميل أي ملف نصي أو وثيقة", + "pad.importExport.importSuccessful": "ناجح!", + "pad.importExport.export": "تصدير الباد الحالي بصفة:", + "pad.importExport.exportetherpad": "إيثرباد", + "pad.importExport.exporthtml": "إتش تي إم إل", + "pad.importExport.exportplain": "نص عادي", + "pad.importExport.exportword": "مايكروسوفت وورد", + "pad.importExport.exportpdf": "صيغة المستندات المحمولة", + "pad.importExport.exportopen": "ODF (نسق المستند المفتوح)", + "pad.importExport.abiword.innerHTML": "لايمكنك الاستيراد إلا من نص عادي أو من تنسيقات إتش تي إم إل. للحصول على المزيد من ميزات الاستيراد المتقدمة، يرجى تثبيت أبيورد .", + "pad.modals.connected": "متصل.", + "pad.modals.reconnecting": "إعادة الاتصال ببادك", + "pad.modals.forcereconnect": "فرض إعادة الاتصال", + "pad.modals.userdup": "مفتوح في نافذة أخرى", + "pad.modals.userdup.explanation": "يبدو أن هذا الباد تم فتحه في أكثر من نافذة متصفح في هذا الحاسوب.", + "pad.modals.userdup.advice": "إعادة الاتصال لإستعمال هذه النافذة بدلاً من الاخرى.", + "pad.modals.unauth": "غير مخول", + "pad.modals.unauth.explanation": "لقد تغيرت الأذونات الخاصة بك أثناء عرض هذه الصفحة. حاول إعادة الاتصال.", + "pad.modals.looping.explanation": "هناك مشاكل في الاتصال مع ملقم التزامن.", + "pad.modals.looping.cause": "ربما كنت متصلاً من خلال وكيل أو جدار حماية غير متوافق.", + "pad.modals.initsocketfail": "لا يمكن الوصول إلى الخادم", + "pad.modals.initsocketfail.explanation": "تعذر الاتصال بخادم المزامنة.", + "pad.modals.initsocketfail.cause": "وهذا على الأرجح بسبب مشكلة في المستعرض الخاص بك أو الاتصال بإنترنت.", + "pad.modals.slowcommit.explanation": "الخادم لا يستجيب.", + "pad.modals.slowcommit.cause": "يمكن أن يكون هذا بسبب مشاكل في الاتصال بالشبكة.", + "pad.modals.badChangeset.explanation": "لقد صنفت إحدى عمليات التحرير التي قمت بها كعملية غير مسموح بها من قبل ملقم التزامن.", + "pad.modals.badChangeset.cause": "يمكن أن يكون هذا بسبب تكوين ملقم خاطئ أو بسبب سلوك آخر غير متوقع. يرجى الاتصال بمسؤول الخدمة إذا كنت تعتقد بأن هناك خطأ ما. حاول إعادة الاتصال لمتابعة التحرير.", + "pad.modals.corruptPad.explanation": "الباد الذي تحاول الوصول إليه تالف.", + "pad.modals.corruptPad.cause": "قد يكون هذا بسبب تكوين ملقم خاطئ أو بسبب سلوك آخر غير متوقع. يرجى الاتصال بمسؤول الخدمة.", + "pad.modals.deleted": "محذوف.", + "pad.modals.deleted.explanation": "تمت إزالة هذا الباد", + "pad.modals.disconnected": "لم تعد متّصل.", + "pad.modals.disconnected.explanation": "تم فقدان الإتصال بالخادم", + "pad.modals.disconnected.cause": "قد يكون الخادم غير متوفر. يرجى إعلام مسؤول الخدمة إذا كان هذا لا يزال يحدث.", + "pad.share": "شارك هذه الباد", + "pad.share.readonly": "للقراءة فقط", + "pad.share.link": "رابط", + "pad.share.emebdcode": "URL للتضمين", + "pad.chat": "دردشة", + "pad.chat.title": "فتح الدردشة لهذا الباد", + "pad.chat.loadmessages": "تحميل المزيد من الرسائل", + "timeslider.pageTitle": "{{appTitle}} متصفح التاريخ", + "timeslider.toolbar.returnbutton": "العودة إلى الباد", + "timeslider.toolbar.authors": "المؤلفون:", + "timeslider.toolbar.authorsList": "بدون مؤلفين", + "timeslider.toolbar.exportlink.title": "تصدير", + "timeslider.exportCurrent": "تصدير النسخة الحالية ك:", + "timeslider.version": "إصدار {{version}}", + "timeslider.saved": "محفوظ {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "يناير", + "timeslider.month.february": "فبراير", + "timeslider.month.march": "مارس", + "timeslider.month.april": "أبريل", + "timeslider.month.may": "مايو", + "timeslider.month.june": "يونيو", + "timeslider.month.july": "يوليو", + "timeslider.month.august": "أغسطس", + "timeslider.month.september": "سبتمبر", + "timeslider.month.october": "أكتوبر", + "timeslider.month.november": "نوفمبر", + "timeslider.month.december": "ديسمبر", + "timeslider.unnamedauthors": "بدون اسم {{num}} {[plural(num) واحد: كاتب، آخر: مؤلف]}", + "pad.savedrevs.marked": "هذا التنقيح محدد الآن كمراجعة محفوظة", + "pad.userlist.entername": "أدخل اسمك", + "pad.userlist.unnamed": "غير مسمى", + "pad.userlist.guest": "ضيف", + "pad.userlist.deny": "رفض", + "pad.userlist.approve": "موافقة", + "pad.editbar.clearcolors": "مسح ألوان التأليف أو المستند بأكمله؟", + "pad.impexp.importbutton": "الاستيراد الآن", + "pad.impexp.importing": "الاستيراد...", + "pad.impexp.confirmimport": "استيراد ملف سيؤدي للكتابة فوق النص الحالي بالباد. هل أنت متأكد من أنك تريد المتابعة؟", + "pad.impexp.convertFailed": "لم نتمكن من استيراد هذا الملف. يرجى استخدام تنسيق مستند مختلف، أو النسخ واللصق يدوياً", + "pad.impexp.padHasData": "لا يمكننا استيراد هذا الملف لأن هذه اللوحة تم بالفعل تغييره, الرجاء استيراد لوحة جديد", + "pad.impexp.uploadFailed": "فشل التحميل، الرجاء المحاولة مرة أخرى", + "pad.impexp.importfailed": "فشل الاستيراد", + "pad.impexp.copypaste": "الرجاء نسخ/لصق", + "pad.impexp.exportdisabled": "تصدير التنسيق {{type}} معطل. يرجى الاتصال بمسؤول النظام الخاص بك للحصول على التفاصيل." +} diff --git a/sources/src/locales/ast.json b/sources/src/locales/ast.json old mode 100644 new mode 100755 index 28fa2d0..47c1ccc --- a/sources/src/locales/ast.json +++ b/sources/src/locales/ast.json @@ -1,122 +1,126 @@ { - "@metadata": { - "authors": [ - "Xuacu" - ] - }, - "index.newPad": "Nuevu bloc", - "index.createOpenPad": "o crear/abrir un bloc col nome:", - "pad.toolbar.bold.title": "Negrina (Ctrl-B)", - "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", - "pad.toolbar.underline.title": "Sorrayáu (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Tacháu", - "pad.toolbar.ol.title": "Llista ordenada", - "pad.toolbar.ul.title": "Llista ensin ordenar", - "pad.toolbar.indent.title": "Sangría", - "pad.toolbar.unindent.title": "Sangría inversa", - "pad.toolbar.undo.title": "Desfacer (Ctrl-Z)", - "pad.toolbar.redo.title": "Refacer (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Llimpiar los colores d'autoría", - "pad.toolbar.import_export.title": "Importar/Esportar ente distintos formatos de ficheru", - "pad.toolbar.timeslider.title": "Eslizador de tiempu", - "pad.toolbar.savedRevision.title": "Guardar revisión", - "pad.toolbar.settings.title": "Configuración", - "pad.toolbar.embed.title": "Compartir ya incrustar esti bloc", - "pad.toolbar.showusers.title": "Amosar los usuarios d'esti bloc", - "pad.colorpicker.save": "Guardar", - "pad.colorpicker.cancel": "Encaboxar", - "pad.loading": "Cargando...", - "pad.passwordRequired": "Necesites una contraseña pa entrar a esti bloc", - "pad.permissionDenied": "Nun tienes permisu pa entrar a esti bloc", - "pad.wrongPassword": "La contraseña era incorreuta", - "pad.settings.padSettings": "Configuración del bloc", - "pad.settings.myView": "la mio vista", - "pad.settings.stickychat": "Alderique en pantalla siempres", - "pad.settings.colorcheck": "Colores d'autoría", - "pad.settings.linenocheck": "Númberos de llinia", - "pad.settings.rtlcheck": "¿Lleer el conteníu de drecha a izquierda?", - "pad.settings.fontType": "Tipografía:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monoespaciada", - "pad.settings.globalView": "Vista global", - "pad.settings.language": "Llingua:", - "pad.importExport.import_export": "Importar/Esportar", - "pad.importExport.import": "Xubir cualquier ficheru o documentu de testu", - "pad.importExport.importSuccessful": "¡Correuto!", - "pad.importExport.export": "Esportar el bloc actual como:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Testu simple", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Sólo se pue importar dende los formatos de testu planu o html. Pa carauterístiques d'importación más avanzaes \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstala abiword\u003C/a\u003E.", - "pad.modals.connected": "Coneutáu.", - "pad.modals.reconnecting": "Reconeutando col to bloc...", - "pad.modals.forcereconnect": "Forzar la reconexón", - "pad.modals.userdup": "Abiertu n'otra ventana", - "pad.modals.userdup.explanation": "Esti bloc paez que ta abiertu en más d'una ventana del navegador d'esti ordenador.", - "pad.modals.userdup.advice": "Reconeutar pa usar esta ventana.", - "pad.modals.unauth": "Non autorizáu", - "pad.modals.unauth.explanation": "Los tos permisos camudaron mientres vies esta páxina. Intenta volver a coneutar.", - "pad.modals.looping.explanation": "Hai problemes de comunicación col sirvidor de sincronización.", - "pad.modals.looping.cause": "Pues tar coneutáu per un torgafueos o un proxy incompatibles.", - "pad.modals.initsocketfail": "Sirvidor incalcanzable.", - "pad.modals.initsocketfail.explanation": "Nun se pudo coneutar col sirvidor de sincronización.", - "pad.modals.initsocketfail.cause": "Probablemente ye por aciu d'un problema col navegador o cola to conexón a internet.", - "pad.modals.slowcommit.explanation": "El sirvidor nun respuende.", - "pad.modals.slowcommit.cause": "Pue ser por problemes de coneutividá de la rede.", - "pad.modals.badChangeset.explanation": "El sirvidor de sincronización clasificó como illegal una edición que fizo.", - "pad.modals.badChangeset.cause": "Esto podría dase por una mala configuración del sirvidor o por algún otru comportamientu inesperáu. Comuníquese col alministrador del serviciu si cree qu'esto ye un error. Intente volver a coneutar pa siguir editando.", - "pad.modals.corruptPad.explanation": "El bloc al qu'intenta entrar ta corrompíu.", - "pad.modals.corruptPad.cause": "Esto pue ser por una mala configuración del sirvidor o por algún otru comportamientu inesperáu. Comuníquese col alministrador del serviciu.", - "pad.modals.deleted": "Desaniciáu", - "pad.modals.deleted.explanation": "Esti bloc se desanició.", - "pad.modals.disconnected": "Te desconeutasti.", - "pad.modals.disconnected.explanation": "Perdióse la conexón col sirvidor", - "pad.modals.disconnected.cause": "El sirvidor podría nun tar disponible. Por favor, avise al alministrador del serviciu si sigue pasando esto.", - "pad.share": "Compartir esti bloc", - "pad.share.readonly": "Sólo llectura", - "pad.share.link": "Enllaz", - "pad.share.emebdcode": "Incrustar URL", - "pad.chat": "Chat", - "pad.chat.title": "Abrir el chat d'esti bloc.", - "pad.chat.loadmessages": "Cargar más mensaxes", - "timeslider.pageTitle": "Eslizador de tiempu de {{appTitle}}", - "timeslider.toolbar.returnbutton": "Tornar al bloc", - "timeslider.toolbar.authors": "Autores:", - "timeslider.toolbar.authorsList": "Nun hai autores", - "timeslider.toolbar.exportlink.title": "Esportar", - "timeslider.exportCurrent": "Esportar la versión actual como:", - "timeslider.version": "Versión {{version}}", - "timeslider.saved": "Guardáu el {{day}} de {{month}} de {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "de xineru", - "timeslider.month.february": "de febreru", - "timeslider.month.march": "de marzu", - "timeslider.month.april": "d'abril", - "timeslider.month.may": "de mayu", - "timeslider.month.june": "de xunu", - "timeslider.month.july": "de xunetu", - "timeslider.month.august": "d'agostu", - "timeslider.month.september": "de setiembre", - "timeslider.month.october": "d'ochobre", - "timeslider.month.november": "de payares", - "timeslider.month.december": "d'avientu", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anónimu, other: autores anónimos]}", - "pad.savedrevs.marked": "Esta revisión marcose como revisión guardada", - "pad.userlist.entername": "Escribi'l to nome", - "pad.userlist.unnamed": "ensin nome", - "pad.userlist.guest": "Invitáu", - "pad.userlist.deny": "Refugar", - "pad.userlist.approve": "Aprobar", - "pad.editbar.clearcolors": "¿Llimpiar los colores d'autoría nel documentu ensembre?", - "pad.impexp.importbutton": "Importar agora", - "pad.impexp.importing": "Importando...", - "pad.impexp.confirmimport": "La importación d'un ficheru sustituirá'l testu actual del bloc. ¿Seguro que quies siguir?", - "pad.impexp.convertFailed": "Nun pudimos importar esti ficheru. Por favor,usa otru formatu de ficheru diferente o copia y pega manualmente.", - "pad.impexp.uploadFailed": "Falló la carga del ficheru, intentalo otra vuelta", - "pad.impexp.importfailed": "Falló la importación", - "pad.impexp.copypaste": "Por favor, copia y apega", - "pad.impexp.exportdisabled": "La esportación en formatu {{type}} ta desactivada. Por favor, comunica col alministrador del sistema pa más detalles." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Xuacu" + ] + }, + "index.newPad": "Nuevu bloc", + "index.createOpenPad": "o crear/abrir un bloc col nome:", + "pad.toolbar.bold.title": "Negrina (Ctrl-B)", + "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", + "pad.toolbar.underline.title": "Sorrayáu (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Tacháu (Ctrl+5)", + "pad.toolbar.ol.title": "Llista ordenada (Ctrl+Mayús+N)", + "pad.toolbar.ul.title": "Llista desordenada (Ctrl+Mayús+L)", + "pad.toolbar.indent.title": "Sangría (TAB)", + "pad.toolbar.unindent.title": "Sangría inversa (Mayúsc+TAB)", + "pad.toolbar.undo.title": "Desfacer (Ctrl-Z)", + "pad.toolbar.redo.title": "Refacer (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Llimpiar los colores d'autoría (Ctrl+Mayús+C)", + "pad.toolbar.import_export.title": "Importar/Esportar ente distintos formatos de ficheru", + "pad.toolbar.timeslider.title": "Eslizador de tiempu", + "pad.toolbar.savedRevision.title": "Guardar revisión", + "pad.toolbar.settings.title": "Configuración", + "pad.toolbar.embed.title": "Compartir ya incrustar esti bloc", + "pad.toolbar.showusers.title": "Amosar los usuarios d'esti bloc", + "pad.colorpicker.save": "Guardar", + "pad.colorpicker.cancel": "Encaboxar", + "pad.loading": "Cargando...", + "pad.noCookie": "Nun pudo alcontrase la cookie. ¡Por favor, permite les cookies nel navegador!", + "pad.passwordRequired": "Necesites una contraseña pa entrar a esti bloc", + "pad.permissionDenied": "Nun tienes permisu pa entrar a esti bloc", + "pad.wrongPassword": "La contraseña era incorreuta", + "pad.settings.padSettings": "Configuración del bloc", + "pad.settings.myView": "la mio vista", + "pad.settings.stickychat": "Alderique en pantalla siempres", + "pad.settings.chatandusers": "Amosar la charra y los usuarios", + "pad.settings.colorcheck": "Colores d'autoría", + "pad.settings.linenocheck": "Númberos de llinia", + "pad.settings.rtlcheck": "¿Lleer el conteníu de drecha a izquierda?", + "pad.settings.fontType": "Tipografía:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monoespaciada", + "pad.settings.globalView": "Vista global", + "pad.settings.language": "Llingua:", + "pad.importExport.import_export": "Importar/Esportar", + "pad.importExport.import": "Xubir cualquier ficheru o documentu de testu", + "pad.importExport.importSuccessful": "¡Correuto!", + "pad.importExport.export": "Esportar el bloc actual como:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Testu simple", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Sólo se pue importar dende los formatos de testu planu o html. Pa carauterístiques d'importación más avanzaes instala abiword.", + "pad.modals.connected": "Coneutáu.", + "pad.modals.reconnecting": "Reconeutando col to bloc...", + "pad.modals.forcereconnect": "Forzar la reconexón", + "pad.modals.userdup": "Abiertu n'otra ventana", + "pad.modals.userdup.explanation": "Esti bloc paez que ta abiertu en más d'una ventana del navegador d'esti ordenador.", + "pad.modals.userdup.advice": "Reconeutar pa usar esta ventana.", + "pad.modals.unauth": "Non autorizáu", + "pad.modals.unauth.explanation": "Los tos permisos camudaron mientres vies esta páxina. Intenta volver a coneutar.", + "pad.modals.looping.explanation": "Hai problemes de comunicación col sirvidor de sincronización.", + "pad.modals.looping.cause": "Pues tar coneutáu per un torgafueos o un proxy incompatibles.", + "pad.modals.initsocketfail": "Sirvidor incalcanzable.", + "pad.modals.initsocketfail.explanation": "Nun se pudo coneutar col sirvidor de sincronización.", + "pad.modals.initsocketfail.cause": "Probablemente ye por aciu d'un problema col navegador o cola to conexón a internet.", + "pad.modals.slowcommit.explanation": "El sirvidor nun respuende.", + "pad.modals.slowcommit.cause": "Pue ser por problemes de coneutividá de la rede.", + "pad.modals.badChangeset.explanation": "El sirvidor de sincronización clasificó como illegal una edición que fizo.", + "pad.modals.badChangeset.cause": "Esto podría dase por una mala configuración del sirvidor o por algún otru comportamientu inesperáu. Comuníquese col alministrador del serviciu si cree qu'esto ye un error. Intente volver a coneutar pa siguir editando.", + "pad.modals.corruptPad.explanation": "El bloc al qu'intenta entrar ta corrompíu.", + "pad.modals.corruptPad.cause": "Esto pue ser por una mala configuración del sirvidor o por algún otru comportamientu inesperáu. Comuníquese col alministrador del serviciu.", + "pad.modals.deleted": "Desaniciáu", + "pad.modals.deleted.explanation": "Esti bloc se desanició.", + "pad.modals.disconnected": "Te desconeutasti.", + "pad.modals.disconnected.explanation": "Perdióse la conexón col sirvidor", + "pad.modals.disconnected.cause": "El sirvidor podría nun tar disponible. Por favor, avise al alministrador del serviciu si sigue pasando esto.", + "pad.share": "Compartir esti bloc", + "pad.share.readonly": "Sólo llectura", + "pad.share.link": "Enllaz", + "pad.share.emebdcode": "Incrustar URL", + "pad.chat": "Chat", + "pad.chat.title": "Abrir el chat d'esti bloc.", + "pad.chat.loadmessages": "Cargar más mensaxes", + "timeslider.pageTitle": "Eslizador de tiempu de {{appTitle}}", + "timeslider.toolbar.returnbutton": "Tornar al bloc", + "timeslider.toolbar.authors": "Autores:", + "timeslider.toolbar.authorsList": "Nun hai autores", + "timeslider.toolbar.exportlink.title": "Esportar", + "timeslider.exportCurrent": "Esportar la versión actual como:", + "timeslider.version": "Versión {{version}}", + "timeslider.saved": "Guardáu el {{day}} de {{month}} de {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "de xineru", + "timeslider.month.february": "de febreru", + "timeslider.month.march": "de marzu", + "timeslider.month.april": "d'abril", + "timeslider.month.may": "de mayu", + "timeslider.month.june": "de xunu", + "timeslider.month.july": "de xunetu", + "timeslider.month.august": "d'agostu", + "timeslider.month.september": "de setiembre", + "timeslider.month.october": "d'ochobre", + "timeslider.month.november": "de payares", + "timeslider.month.december": "d'avientu", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anónimu, other: autores anónimos]}", + "pad.savedrevs.marked": "Esta revisión marcose como revisión guardada", + "pad.savedrevs.timeslider": "Pues ver les revisiones guardaes visitando la llinia temporal", + "pad.userlist.entername": "Escribi'l to nome", + "pad.userlist.unnamed": "ensin nome", + "pad.userlist.guest": "Invitáu", + "pad.userlist.deny": "Refugar", + "pad.userlist.approve": "Aprobar", + "pad.editbar.clearcolors": "¿Llimpiar los colores d'autoría nel documentu ensembre?", + "pad.impexp.importbutton": "Importar agora", + "pad.impexp.importing": "Importando...", + "pad.impexp.confirmimport": "La importación d'un ficheru sustituirá'l testu actual del bloc. ¿Seguro que quies siguir?", + "pad.impexp.convertFailed": "Nun pudimos importar esti ficheru. Por favor,usa otru formatu de ficheru diferente o copia y pega manualmente.", + "pad.impexp.padHasData": "Nun pudimos importar esti ficheru porque esti bloc yá tuvo cambios; impórtalu a un bloc nuevu", + "pad.impexp.uploadFailed": "Falló la carga del ficheru, intentalo otra vuelta", + "pad.impexp.importfailed": "Falló la importación", + "pad.impexp.copypaste": "Por favor, copia y apega", + "pad.impexp.exportdisabled": "La esportación en formatu {{type}} ta desactivada. Por favor, comunica col alministrador del sistema pa más detalles." +} diff --git a/sources/src/locales/awa.json b/sources/src/locales/awa.json new file mode 100755 index 0000000..f8c0d50 --- /dev/null +++ b/sources/src/locales/awa.json @@ -0,0 +1,69 @@ +{ + "@metadata": { + "authors": [ + "1AnuraagPandey" + ] + }, + "index.newPad": "नयाँ प्याड", + "pad.toolbar.bold.title": "मोट (Ctrl-B)", + "pad.toolbar.italic.title": "तिरछा (Ctrl+I)", + "pad.toolbar.underline.title": "निम्न रेखाङ्कन (Ctrl-U)", + "pad.toolbar.indent.title": "इन्डेन्ट (TAB)", + "pad.toolbar.unindent.title": "आउटडेन्ट (Shift+TAB)", + "pad.toolbar.undo.title": "रद्द (Ctrl-Z)", + "pad.toolbar.redo.title": "पुन:लागु (Ctrl-Y)", + "pad.toolbar.timeslider.title": "टाइमस्लाइडर", + "pad.toolbar.savedRevision.title": "पुनरावलोकन संग्रह किहा जाय", + "pad.toolbar.settings.title": "सेटिङ्ग", + "pad.colorpicker.save": "सहेजा जाय", + "pad.colorpicker.cancel": "रद्द करा जाय", + "pad.loading": "लोड होत है...", + "pad.wrongPassword": "आप कय पासवर्ड गलत रहा", + "pad.settings.padSettings": "प्याड सेटिङ्ग", + "pad.settings.myView": "हमार दृष्य", + "pad.settings.colorcheck": "लेखकीय रङ्ग", + "pad.settings.linenocheck": "हरफ संख्या", + "pad.settings.fontType": "फन्ट प्रकार:", + "pad.settings.fontType.normal": "साधारण", + "pad.settings.fontType.monospaced": "मोनोस्पेस", + "pad.settings.globalView": "विश्वव्यापी दृष्य", + "pad.settings.language": "भाषा", + "pad.importExport.import_export": "आयात/निर्यात", + "pad.importExport.importSuccessful": "सफल!", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "सामान्य पाठ", + "pad.importExport.exportword": "माइक्रोसफ्ट वर्ड", + "pad.importExport.exportpdf": "पिडिएफ", + "pad.importExport.exportopen": "ओडिएफ(खुल्ला कागजात ढाँचा)", + "pad.modals.unauth": "अनाधिकृत", + "pad.modals.initsocketfail": "सर्भरमा पहुँच से बहरे है ।", + "pad.share.readonly": "पढय वाला खाली", + "pad.share.link": "लिङ्क", + "pad.share.emebdcode": "URL जोडा जाय", + "pad.chat": "बातचीत", + "timeslider.pageTitle": "{{appTitle}} समय रेखा", + "timeslider.toolbar.authors": "लेखक:", + "timeslider.toolbar.exportlink.title": "निर्यात", + "timeslider.version": "संस्करण {{version}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "जनवरी", + "timeslider.month.february": "फेब्रुअरी", + "timeslider.month.march": "मार्च", + "timeslider.month.april": "अप्रैल", + "timeslider.month.may": "मई", + "timeslider.month.june": "जून", + "timeslider.month.july": "जुलाई", + "timeslider.month.august": "अगस्त", + "timeslider.month.september": "सेप्टेम्बर", + "timeslider.month.october": "अक्टूबर", + "timeslider.month.november": "नोभेम्बर", + "timeslider.month.december": "डिसेम्बर", + "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) one: author, other: authors ]}", + "pad.userlist.unnamed": "बेनामी", + "pad.userlist.guest": "पहुना", + "pad.userlist.deny": "अस्वीकार", + "pad.userlist.approve": "स्वीकृत", + "pad.impexp.importing": "आयात होत है...", + "pad.impexp.importfailed": "आयात असफल रहा", + "pad.impexp.copypaste": "कृपया कपी पेस्ट कीन जाय" +} diff --git a/sources/src/locales/az.json b/sources/src/locales/az.json old mode 100644 new mode 100755 index 056e1a5..f5968ee --- a/sources/src/locales/az.json +++ b/sources/src/locales/az.json @@ -1,124 +1,126 @@ { - "@metadata": { - "authors": [ - "AZISS", - "Khan27", - "Mushviq Abdulla" - ] - }, - "index.newPad": "Yeni Pad", - "index.createOpenPad": "və ya Pad-ı adı ilə yarat/aç:", - "pad.toolbar.bold.title": "Qalın (Ctrl-B)", - "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", - "pad.toolbar.underline.title": "Altından xətt çəkmə (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Pozulma", - "pad.toolbar.ol.title": "Qaydaya salınmış siyahı", - "pad.toolbar.ul.title": "Qaydaya salınmamış siyahı", - "pad.toolbar.indent.title": "Abzas", - "pad.toolbar.unindent.title": "Çıxıntı", - "pad.toolbar.undo.title": "Geri Al (Ctrl-Z)", - "pad.toolbar.redo.title": "Qaytarmaq (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Müəlliflik Rənglərini Təmizlə", - "pad.toolbar.import_export.title": "Müxtəlif fayl formatların(a/dan) idxal/ixrac", - "pad.toolbar.timeslider.title": "Vaxt cədvəli", - "pad.toolbar.savedRevision.title": "Saxlanılan Düzəlişlər", - "pad.toolbar.settings.title": "Tənzimləmələr", - "pad.toolbar.embed.title": "Bu pad-ı yayımla", - "pad.toolbar.showusers.title": "Pad-da istifadəçiləri göstər", - "pad.colorpicker.save": "Saxla", - "pad.colorpicker.cancel": "İmtina", - "pad.loading": "Yüklənir...", - "pad.passwordRequired": "Bu pad-a daxil olmaq üçün parol lazımdır", - "pad.permissionDenied": "Bu pad-a daxil olmaq üçün icazəniz yoxdur", - "pad.wrongPassword": "Sizin parolunuz səhvdir", - "pad.settings.padSettings": "Pad Tənzimləmələri", - "pad.settings.myView": "Mənim Görüntüm", - "pad.settings.stickychat": "Söhbət həmişə ekranda", - "pad.settings.colorcheck": "Müəlliflik rəngləri", - "pad.settings.linenocheck": "Sətir nömrələri", - "pad.settings.rtlcheck": "Mühtəviyyat sağdan sola doğru oxunsunmu?", - "pad.settings.fontType": "Şriftin tipi:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monoboşluq", - "pad.settings.globalView": "Ümumi görünüş", - "pad.settings.language": "Dil:", - "pad.importExport.import_export": "İdxal/İxrac", - "pad.importExport.import": "Hər hansı bir mətn faylı və ya sənəd yüklə", - "pad.importExport.importSuccessful": "Uğurlu!", - "pad.importExport.export": "Hazırki pad-ı ixrac etmək kimi:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Adi mətn", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Açıq Sənəd Formatı)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Siz yalnız adi mətndən və ya HTML-dən idxal edə bilərsiniz. İdxalın daha mürəkkəb funksiyaları üçün, zəhmət olmasa, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003E AbiWord-i quraşdırın\u003C/a\u003E.", - "pad.modals.connected": "Bağlandı.", - "pad.modals.reconnecting": "Sizin pad yenidən qoşulur..", - "pad.modals.forcereconnect": "Məcbur təkrarən bağlan", - "pad.modals.userdup": "Başqa pəncərədə artıq açıqdır", - "pad.modals.userdup.explanation": "Sənəd, ola bilsin ki, bu kompyuterdə, brauzerin bir neçə pəncərəsində açılmışdır.", - "pad.modals.userdup.advice": "Bu pəncərədən istifadəylə yenidən qoşulun.", - "pad.modals.unauth": "İcazəli deyil", - "pad.modals.unauth.explanation": "Bu səhifəyə baxdığınız vaxt sizin icazəniz dəyişilib. Bərpa etmək üşün yenidən cəhd edin.", - "pad.modals.looping.explanation": "Sinxronlaşdırma serveri ilə kommunikasiya xətası var.", - "pad.modals.looping.cause": "Ola bilsin ki, siz uyğun olmayan fayrvol və ya proksi vasitəsi ilə qoşulmağa cəhd göstərirsiniz.", - "pad.modals.initsocketfail": "Server əlçatmazdır.", - "pad.modals.initsocketfail.explanation": "Sinxronlaşdırma serverinə qoşulma mümkünsüzdür.", - "pad.modals.initsocketfail.cause": "Ehtimal ki, bu problem sizin brauzerinizlə və ya internet-birləşmənizlə əlaqədərdir.", - "pad.modals.slowcommit.explanation": "Server cavab vermir.", - "pad.modals.slowcommit.cause": "Bu şəbəkə bağlantısında problemlər yarana bilər.", - "pad.modals.badChangeset.explanation": "Etdiyiniz bir redaktə sinxronizasiya serveri tərəfindən qeyri-leqal/qanundan kənar olaraq təsbit edildi.", - "pad.modals.badChangeset.cause": "Bu, yanlış server tərtibatı ya da başqa bir gözlənilməyən davranışlar nəticəsində ola bilər. Bu sizə bir xəta imiş kimi görünürsə lütfən servis nəzarətçisi ilə əlaqə yaradın. Redaktəyə davam etmək üçün yenidən qoşulmanı yoxlayın.", - "pad.modals.corruptPad.explanation": "Əldə etməyə çalışdığınız sənəd zədəlidir.", - "pad.modals.corruptPad.cause": "Bu, yanlış server tərtibatı ya da başqa bir gözlənilməyən davranışlardan əmələ gələ bilər. Lütfən servis nəzarətçisi ilə əlaqə yaradın.", - "pad.modals.deleted": "Silindi.", - "pad.modals.deleted.explanation": "Bu pad silindi.", - "pad.modals.disconnected": "Əlaqə kəsilib.", - "pad.modals.disconnected.explanation": "Serverə qoşulma itirilib", - "pad.modals.disconnected.cause": "Server istifadə olunmur. Əgər problem təkrarlanacaqsa, bizə bildirin.", - "pad.share": "Bu pad-ı yayımla", - "pad.share.readonly": "Yalnız oxuyun", - "pad.share.link": "Keçid", - "pad.share.emebdcode": "URL-ni yayımla", - "pad.chat": "Söhbət", - "pad.chat.title": "Bu pad üçün chat açın.", - "pad.chat.loadmessages": "Daha çox mesaj yüklə", - "timeslider.pageTitle": "{{appTitle}} Vaxt cədvəli", - "timeslider.toolbar.returnbutton": "Pad-a qayıt", - "timeslider.toolbar.authors": "Müəlliflər:", - "timeslider.toolbar.authorsList": "Müəllif yoxdur", - "timeslider.toolbar.exportlink.title": "İxrac", - "timeslider.exportCurrent": "Cari versiyanı ixrac etmək kimi:", - "timeslider.version": "Versiya {{version}}", - "timeslider.saved": "Saxlanıldı {{day}} {{month}}, {{year}}", - "timeslider.dateformat": "{{day}} {{month}}, {{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Yanvar", - "timeslider.month.february": "Fevral", - "timeslider.month.march": "Mart", - "timeslider.month.april": "Aprel", - "timeslider.month.may": "May", - "timeslider.month.june": "İyun", - "timeslider.month.july": "İyul", - "timeslider.month.august": "Avqust", - "timeslider.month.september": "Sentyabr", - "timeslider.month.october": "Oktyabr", - "timeslider.month.november": "Noyabr", - "timeslider.month.december": "Dekabr", - "timeslider.unnamedauthors": "{{num}} adsız müəlliflər", - "pad.savedrevs.marked": "Bu versiya indi yaddaşa saxlanmış kimi nişanlandı", - "pad.userlist.entername": "Adınızı daxil et", - "pad.userlist.unnamed": "adsız", - "pad.userlist.guest": "Qonaq", - "pad.userlist.deny": "İnkar etmək", - "pad.userlist.approve": "Təsdiqləmək", - "pad.editbar.clearcolors": "Bütün sənədlərdə müəlliflik rənglərini təmizlə?", - "pad.impexp.importbutton": "İndi idxal edin", - "pad.impexp.importing": "İdxal...", - "pad.impexp.confirmimport": "Faylın idxalı cari mətni yeniləyəcək. Siz əminsinizmi ki, davam etmək istəyirsiniz?", - "pad.impexp.convertFailed": "Biz bu fayl idxal etmək mümkün deyil idi. Xahiş olunur müxtəlif sənəddən istifadə edin və ya kopyalayıb yapışdırmaq yolundan istifadə edin", - "pad.impexp.uploadFailed": "Yükləmədə səhv, xahiş olunur yenə cəhd edin", - "pad.impexp.importfailed": "İdxal zamanı səhv", - "pad.impexp.copypaste": "Xahiş edirik kopyalayıb yapışdırın", - "pad.impexp.exportdisabled": "{{ type}} formatında ixrac söndürülmüşdür. Ətraflı informasiya üçün sistem administratoruna müraciət ediniz." -} \ No newline at end of file + "@metadata": { + "authors": [ + "AZISS", + "Khan27", + "Mushviq Abdulla", + "Wertuose" + ] + }, + "index.newPad": "Yeni lövhə", + "index.createOpenPad": "və ya lövhəni bu adla yarat/aç:", + "pad.toolbar.bold.title": "Qalın (Ctrl-B)", + "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", + "pad.toolbar.underline.title": "Altından xətt çəkmə (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Üstdən xətləmək (Ctrl+5)", + "pad.toolbar.ol.title": "Sıralanmış siyahı (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Sırasız siyahı (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Abzas (TAB)", + "pad.toolbar.unindent.title": "Çıxıntı (Shift+TAB)", + "pad.toolbar.undo.title": "Geri qaytar (Ctrl+Z)", + "pad.toolbar.redo.title": "Qaytar (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Müəlliflik Rənglərini Təmizlə", + "pad.toolbar.import_export.title": "Müxtəlif fayl formatların(a/dan) idxal/ixrac", + "pad.toolbar.timeslider.title": "Vaxt cədvəli", + "pad.toolbar.savedRevision.title": "Saxlanılan Düzəlişlər", + "pad.toolbar.settings.title": "Tənzimləmələr", + "pad.toolbar.embed.title": "Bu lövhəni paylaş və qur", + "pad.toolbar.showusers.title": "Lövhədəki istifadəçiləri göstər", + "pad.colorpicker.save": "Saxla", + "pad.colorpicker.cancel": "İmtina", + "pad.loading": "Yüklənir...", + "pad.passwordRequired": "Bu lövhəyə daxil olmaq üçün parol lazımdır", + "pad.permissionDenied": "Bu lövhəyə daxil olmaq üçün icazəniz yoxdur", + "pad.wrongPassword": "Sizin parolunuz səhvdir", + "pad.settings.padSettings": "Lövhə nizamlamaları", + "pad.settings.myView": "Mənim Görüntüm", + "pad.settings.stickychat": "Söhbət həmişə ekranda", + "pad.settings.colorcheck": "Müəlliflik rəngləri", + "pad.settings.linenocheck": "Sətir nömrələri", + "pad.settings.rtlcheck": "Mühtəviyyat sağdan sola doğru oxunsunmu?", + "pad.settings.fontType": "Şriftin tipi:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monoboşluq", + "pad.settings.globalView": "Ümumi görünüş", + "pad.settings.language": "Dil:", + "pad.importExport.import_export": "İdxal/İxrac", + "pad.importExport.import": "Hər hansı bir mətn faylı və ya sənəd yüklə", + "pad.importExport.importSuccessful": "Uğurlu!", + "pad.importExport.export": "Hazırkı lövhəni bu şəkildə ixrac et:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Adi mətn", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (açıq sənəd formatı)", + "pad.importExport.abiword.innerHTML": "Siz yalnız adi mətndən və ya HTML-dən idxal edə bilərsiniz. İdxalın daha mürəkkəb funksiyaları üçün, zəhmət olmasa, AbiWord-i quraşdırın.", + "pad.modals.connected": "Bağlandı.", + "pad.modals.reconnecting": "Sizin lövhə yenidən qoşulur..", + "pad.modals.forcereconnect": "Məcbur təkrarən bağlan", + "pad.modals.userdup": "Başqa pəncərədə artıq açıqdır", + "pad.modals.userdup.explanation": "Bu lövhə, ola bilsin ki, bu kompüterdəki brauzerin bir neçə pəncərəsində açılmışdır.", + "pad.modals.userdup.advice": "Bu pəncərəni istifadə etmək üçün yenidən qoşul.", + "pad.modals.unauth": "İcazəli deyil", + "pad.modals.unauth.explanation": "Bu səhifəyə baxdığınız vaxt sizin icazəniz dəyişilib. Bərpa etmək üşün yenidən cəhd edin.", + "pad.modals.looping.explanation": "Sinxronlaşdırma serveri ilə kommunikasiya xətası var.", + "pad.modals.looping.cause": "Ola bilsin ki, siz uyğun olmayan fayrvol və ya proksi vasitəsi ilə qoşulmağa cəhd göstərirsiniz.", + "pad.modals.initsocketfail": "Server əlçatmazdır.", + "pad.modals.initsocketfail.explanation": "Sinxronlaşdırma serverinə qoşulma mümkünsüzdür.", + "pad.modals.initsocketfail.cause": "Ehtimal ki, bu problem sizin brauzerinizlə və ya internet-birləşmənizlə əlaqədərdir.", + "pad.modals.slowcommit.explanation": "Server cavab vermir.", + "pad.modals.slowcommit.cause": "Bu şəbəkə bağlantısında problemlər yarana bilər.", + "pad.modals.badChangeset.explanation": "Etdiyiniz bir redaktə sinxronizasiya serveri tərəfindən qeyri-leqal/qanundan kənar olaraq təsbit edildi.", + "pad.modals.badChangeset.cause": "Bu, yanlış server tərtibatı ya da başqa bir gözlənilməyən davranışlar nəticəsində ola bilər. Bu sizə bir xəta imiş kimi görünürsə lütfən servis nəzarətçisi ilə əlaqə yaradın. Redaktəyə davam etmək üçün yenidən qoşulmanı yoxlayın.", + "pad.modals.corruptPad.explanation": "Daxil olmağa çalışdığınız lövhə zədəlidir.", + "pad.modals.corruptPad.cause": "Bu, yanlış server tərtibatı ya da başqa bir gözlənilməyən davranışlardan əmələ gələ bilər. Lütfən servis nəzarətçisi ilə əlaqə yaradın.", + "pad.modals.deleted": "Silindi.", + "pad.modals.deleted.explanation": "Bu lövhə silindi.", + "pad.modals.disconnected": "Əlaqə kəsilib.", + "pad.modals.disconnected.explanation": "Serverə qoşulma itirilib", + "pad.modals.disconnected.cause": "Server istifadə olunmur. Əgər problem təkrarlanacaqsa, bizə bildirin.", + "pad.share": "Bu lövhəni paylaş", + "pad.share.readonly": "Yalnız oxuyun", + "pad.share.link": "Keçid", + "pad.share.emebdcode": "URL-ni yayımla", + "pad.chat": "Söhbət", + "pad.chat.title": "Bu lövhə üçün çat açın.", + "pad.chat.loadmessages": "Daha çox mesaj yüklə", + "timeslider.pageTitle": "{{appTitle}} Vaxt cədvəli", + "timeslider.toolbar.returnbutton": "Lövhəyə qayıt", + "timeslider.toolbar.authors": "Müəlliflər:", + "timeslider.toolbar.authorsList": "Müəllif yoxdur", + "timeslider.toolbar.exportlink.title": "İxrac", + "timeslider.exportCurrent": "Cari versiyanı ixrac etmək kimi:", + "timeslider.version": "Versiya {{version}}", + "timeslider.saved": "Saxlanıldı {{day}} {{month}}, {{year}}", + "timeslider.dateformat": "{{day}} {{month}}, {{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Yanvar", + "timeslider.month.february": "Fevral", + "timeslider.month.march": "Mart", + "timeslider.month.april": "Aprel", + "timeslider.month.may": "May", + "timeslider.month.june": "İyun", + "timeslider.month.july": "İyul", + "timeslider.month.august": "Avqust", + "timeslider.month.september": "Sentyabr", + "timeslider.month.october": "Oktyabr", + "timeslider.month.november": "Noyabr", + "timeslider.month.december": "Dekabr", + "timeslider.unnamedauthors": "{{num}} adsız {[plural(num) one: müəllif, other: müəllif]}", + "pad.savedrevs.marked": "Bu versiya indi yaddaşa saxlanmış kimi nişanlandı", + "pad.userlist.entername": "Adınızı daxil edin", + "pad.userlist.unnamed": "adsız", + "pad.userlist.guest": "Qonaq", + "pad.userlist.deny": "İnkar etmək", + "pad.userlist.approve": "Təsdiqləmək", + "pad.editbar.clearcolors": "Bütün sənədlərdə müəllif rəngləri təmizlənsin?", + "pad.impexp.importbutton": "İndi idxal et", + "pad.impexp.importing": "İdxal...", + "pad.impexp.confirmimport": "Faylın idxalı lövhədəki cari mətni yeniləyəcək. Davam etmək istədiyinizə əminsinizmi?", + "pad.impexp.convertFailed": "Biz bu fayl idxal etmək mümkün deyil idi. Xahiş olunur müxtəlif sənəddən istifadə edin və ya kopyalayıb yapışdırmaq yolundan istifadə edin", + "pad.impexp.padHasData": "Biz bu faylı idxal edə bilmədik, çünki bu lövhədə düzəlişlər edilib, lütfən yeni lövhə idxal edin", + "pad.impexp.uploadFailed": "Yükləmədə səhv, xahiş olunur yenə cəhd edin", + "pad.impexp.importfailed": "İdxal zamanı səhv", + "pad.impexp.copypaste": "Xahiş edirik kopyalayıb yapışdırın", + "pad.impexp.exportdisabled": "{{ type}} formatında ixrac söndürülmüşdür. Ətraflı informasiya üçün sistem administratoruna müraciət ediniz." +} diff --git a/sources/src/locales/azb.json b/sources/src/locales/azb.json old mode 100644 new mode 100755 index 0dfa45e..799c5b6 --- a/sources/src/locales/azb.json +++ b/sources/src/locales/azb.json @@ -1,72 +1,88 @@ { - "@metadata": { - "authors": [ - "Amir a57", - "Mousa" - ] - }, - "index.newPad": "یئنی یادداشت دفترچه سی", - "index.createOpenPad": "یا دا ایجاد /بیر پد آدلا برابر آچماق:", - "pad.toolbar.bold.title": "بویوت", - "pad.toolbar.italic.title": "مورب", - "pad.toolbar.underline.title": "خطدین آلتی", - "pad.toolbar.strikethrough.title": "خط یئمیش", - "pad.toolbar.ol.title": "جوتدنمیش فهرست", - "pad.toolbar.ul.title": "جوتدنممیش فهرست", - "pad.toolbar.indent.title": "ایچری باتدیگی", - "pad.toolbar.unindent.title": "ائشیگه چیخدیگی", - "pad.toolbar.undo.title": "باطل ائتمک", - "pad.toolbar.redo.title": "یئنی دن", - "pad.toolbar.clearAuthorship.title": "یازیچی رنگ لری پوزماق", - "pad.toolbar.import_export.title": "آیری قالیب لردن /ایچری توکمه / ائشیگه توکمه", - "pad.toolbar.timeslider.title": "زمان اسلایدی", - "pad.toolbar.savedRevision.title": "ساخلانمیش نسخه لر", - "pad.toolbar.settings.title": "تنظیملر", - "pad.toolbar.embed.title": "بو یادداشت دفترچه سین یئرلتمک", - "pad.toolbar.showusers.title": "بو دفترچه یادداشت دا اولان کاربرلری گوستر", - "pad.colorpicker.save": "قئید ائت", - "pad.colorpicker.cancel": "لغو ائت", - "pad.loading": "یوکلنیر...", - "pad.settings.padSettings": "یادداشت دفترچه سینین تنظیملر", - "pad.settings.myView": "منیم گورنتوم", - "pad.settings.stickychat": "نمایش صفحه سینده همیشه چت اولسون", - "pad.settings.colorcheck": "یازیچی رنگ لری", - "pad.settings.linenocheck": "خطوط شماره سی", - "pad.settings.fontType": "قلم نوعی", - "pad.settings.fontType.normal": "نورمال", - "pad.settings.fontType.monospaced": "مونو اسپئیس", - "pad.settings.globalView": "سراسر گورونتو", - "pad.settings.language": "دیل:", - "pad.importExport.import_export": "ایچری توکمه /ائشیگه توکمه", - "pad.importExport.import": "سند یا دا متنی پرونده یوکله", - "pad.importExport.export": "بو یادداشت دفترچه سی عنوانا ایچری توکمه", - "pad.importExport.exporthtml": "اچ تی ام ال", - "pad.importExport.exportplain": "ساده متن", - "pad.importExport.exportword": "مایکروسافت وورد", - "pad.importExport.exportpdf": "پی دی اف", - "pad.importExport.exportopen": "او دی اف", - "pad.importExport.exportdokuwiki": "دوکو ویکی", - "pad.modals.connected": "متصل اولدی", - "pad.modals.reconnecting": "سیزین یادداشت دفترچه سینه یئنی دن متصیل اولدی", - "pad.modals.forcereconnect": "یئنی اتصال اوچون زورلاما", - "pad.modals.userdup.advice": "بو پئنجره دن ایستفاده ائتمک اوچون یئنی دن متصیل اول", - "pad.modals.unauth": "اولماز", - "pad.modals.unauth.explanation": "سیزین ال چتما مسئله سی بو صفحه نین گورونوش زمانیندا دییشیلیب دیر .\nسعی ائدین یئنی دن متصیل اولاسینیز", - "pad.modals.looping.explanation": "ارتیباطی موشکیل بیر ائتمه سرور ده وار دیر", - "pad.modals.looping.cause": "بلکه سیز دوز دئمیین بیر فایروال یادا پروکسی طریقی ایله متصیل اولوب سینیز", - "pad.modals.initsocketfail": "دسترسی اولمویان سرور دیر", - "pad.modals.initsocketfail.explanation": "بیرلشدیریلمه سرور لرینه متصیل اولا بیلمه دی", - "pad.modals.deleted": "سیلیندی.", - "pad.modals.deleted.explanation": "بو یادداشت دفترچه سی سیلینیب دیر.", - "pad.modals.disconnected": "سیزین اتصالینیز قطع اولوب دور.", - "pad.modals.disconnected.explanation": "سروره اتصال قطع اولوب دور.", - "pad.share.readonly": "اوخومالی فقط", - "pad.share.link": "باغلانتی", - "pad.share.emebdcode": "نشانی نی یئرلتمک", - "pad.chat": "چت", - "pad.chat.title": "بو یادداشت دفترچه نی چت اوچون آچ", - "timeslider.pageTitle": "{{appTitle}}زمان اسلایدری", - "timeslider.toolbar.returnbutton": "یادداشت دفترچه سینه قاییت", - "timeslider.toolbar.authors": "یازیچیلار", - "timeslider.toolbar.authorsList": "یازیچی سیز" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Amir a57", + "Mousa", + "Koroğlu" + ] + }, + "index.newPad": "یئنی یادداشت دفترچه سی", + "index.createOpenPad": "یا دا ایجاد /بیر پد آدلا برابر آچماق:", + "pad.toolbar.bold.title": "بویوت", + "pad.toolbar.italic.title": "مورب", + "pad.toolbar.underline.title": "خطدین آلتی", + "pad.toolbar.strikethrough.title": "خط یئمیش", + "pad.toolbar.ol.title": "جوتدنمیش فهرست", + "pad.toolbar.ul.title": "جوتدنممیش فهرست", + "pad.toolbar.indent.title": "ایچری باتدیگی", + "pad.toolbar.unindent.title": "ائشیگه چیخدیگی", + "pad.toolbar.undo.title": "باطل ائتمک", + "pad.toolbar.redo.title": "یئنی دن", + "pad.toolbar.clearAuthorship.title": "یازیچی رنگ لری پوزماق", + "pad.toolbar.import_export.title": "آیری قالیب لردن /ایچری توکمه / ائشیگه توکمه", + "pad.toolbar.timeslider.title": "زمان اسلایدی", + "pad.toolbar.savedRevision.title": "ساخلانمیش نسخه لر", + "pad.toolbar.settings.title": "تنظیملر", + "pad.toolbar.embed.title": "بو یادداشت دفترچه سین یئرلتمک", + "pad.toolbar.showusers.title": "بو دفترچه یادداشت دا اولان کاربرلری گوستر", + "pad.colorpicker.save": "قئید ائت", + "pad.colorpicker.cancel": "لغو ائت", + "pad.loading": "یوکلنیر...", + "pad.settings.padSettings": "یادداشت دفترچه سینین تنظیملر", + "pad.settings.myView": "منیم گورنتوم", + "pad.settings.stickychat": "نمایش صفحه سینده همیشه چت اولسون", + "pad.settings.colorcheck": "یازیچی رنگ لری", + "pad.settings.linenocheck": "خطوط شماره سی", + "pad.settings.fontType": "قلم نوعی", + "pad.settings.fontType.normal": "نورمال", + "pad.settings.fontType.monospaced": "مونو اسپئیس", + "pad.settings.globalView": "سراسر گورونتو", + "pad.settings.language": "دیل:", + "pad.importExport.import_export": "ایچری توکمه /ائشیگه توکمه", + "pad.importExport.import": "سند یا دا متنی پرونده یوکله", + "pad.importExport.export": "بو یادداشت دفترچه سی عنوانا ایچری توکمه", + "pad.importExport.exporthtml": "اچ تی ام ال", + "pad.importExport.exportplain": "ساده متن", + "pad.importExport.exportword": "مایکروسافت وورد", + "pad.importExport.exportpdf": "پی دی اف", + "pad.importExport.exportopen": "او دی اف", + "pad.modals.connected": "متصل اولدی", + "pad.modals.reconnecting": "سیزین یادداشت دفترچه سینه یئنی دن متصیل اولدی", + "pad.modals.forcereconnect": "یئنی اتصال اوچون زورلاما", + "pad.modals.userdup.advice": "بو پئنجره دن ایستفاده ائتمک اوچون یئنی دن متصیل اول", + "pad.modals.unauth": "اولماز", + "pad.modals.unauth.explanation": "سیزین ال چتما مسئله سی بو صفحه نین گورونوش زمانیندا دییشیلیب دیر .\nسعی ائدین یئنی دن متصیل اولاسینیز", + "pad.modals.looping.explanation": "ارتیباطی موشکیل بیر ائتمه سرور ده وار دیر", + "pad.modals.looping.cause": "بلکه سیز دوز دئمیین بیر فایروال یادا پروکسی طریقی ایله متصیل اولوب سینیز", + "pad.modals.initsocketfail": "دسترسی اولمویان سرور دیر", + "pad.modals.initsocketfail.explanation": "بیرلشدیریلمه سرور لرینه متصیل اولا بیلمه دی", + "pad.modals.deleted": "سیلیندی.", + "pad.modals.deleted.explanation": "بو یادداشت دفترچه سی سیلینیب دیر.", + "pad.modals.disconnected": "سیزین اتصالینیز قطع اولوب دور.", + "pad.modals.disconnected.explanation": "سروره اتصال قطع اولوب دور.", + "pad.share.readonly": "اوخومالی فقط", + "pad.share.link": "باغلانتی", + "pad.share.emebdcode": "نشانی نی یئرلتمک", + "pad.chat": "چت", + "pad.chat.title": "بو یادداشت دفترچه نی چت اوچون آچ", + "timeslider.pageTitle": "{{appTitle}}زمان اسلایدری", + "timeslider.toolbar.returnbutton": "یادداشت دفترچه سینه قاییت", + "timeslider.toolbar.authors": "یازیچیلار", + "timeslider.toolbar.authorsList": "یازیچی سیز", + "timeslider.month.january": "ژانویه", + "timeslider.month.february": "فوریه", + "timeslider.month.march": "مارس", + "timeslider.month.april": "آپریل", + "timeslider.month.may": "مای", + "timeslider.month.june": "ژوئن", + "timeslider.month.july": "جولای", + "timeslider.month.august": "آقوست", + "timeslider.month.september": "سپتامبر", + "timeslider.month.october": "اوْکتوبر", + "timeslider.month.november": "نوْوامبر", + "timeslider.month.december": "دسامبر", + "pad.userlist.unnamed": "آدسیز", + "pad.userlist.guest": "قوْناق", + "pad.userlist.deny": "دانماق", + "pad.userlist.approve": "اوْنایلا" +} diff --git a/sources/src/locales/bcc.json b/sources/src/locales/bcc.json new file mode 100755 index 0000000..7ae4200 --- /dev/null +++ b/sources/src/locales/bcc.json @@ -0,0 +1,121 @@ +{ + "@metadata": { + "authors": [ + "Baloch Afghanistan" + ] + }, + "index.newPad": "دفترچه یادداشت تازه", + "index.createOpenPad": "یا ایجاد/بازکردن یک دفترچه یادداشت با نام:", + "pad.toolbar.bold.title": "پررنگ (Ctrl-B)", + "pad.toolbar.italic.title": "کج (Ctrl-I)", + "pad.toolbar.underline.title": "زیرخط (Ctrl-U)", + "pad.toolbar.strikethrough.title": "خط خورده", + "pad.toolbar.ol.title": "فهرست مرتب شده", + "pad.toolbar.ul.title": "فهرست مرتب نشده", + "pad.toolbar.indent.title": "تورفتگی (TAB)", + "pad.toolbar.unindent.title": "بیرون رفتگی (Shift+TAB)", + "pad.toolbar.undo.title": "باطل‌کردن (Ctrl-Z)", + "pad.toolbar.redo.title": "از نو (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "پاک‌کردن رنگ‌های نویسندگی", + "pad.toolbar.import_export.title": "درون‌ریزی/برون‌ریزی از/به قالب‌های مختلف", + "pad.toolbar.timeslider.title": "لغزندهٔ زمان", + "pad.toolbar.savedRevision.title": "ذخیره‌سازی نسخه", + "pad.toolbar.settings.title": "تنظیمات", + "pad.toolbar.embed.title": "اشتراک و جاسازی این دفترچه یادداشت", + "pad.toolbar.showusers.title": "نمایش کاربران در این دفترچه یادداشت", + "pad.colorpicker.save": "زاپاس کورتین", + "pad.colorpicker.cancel": "کنسیل", + "pad.loading": "...بار بیت", + "pad.passwordRequired": "برای دسترسی به این دفترچه یادداشت نیاز به یک گذرواژه دارید", + "pad.permissionDenied": "شرمنده، شما را اجازت په دسترسی ای صفحه نیست.", + "pad.wrongPassword": "گذرواژه‌ی شما درست نیست", + "pad.settings.padSettings": "تنظیمات دفترچه یادداشت", + "pad.settings.myView": "نمای من", + "pad.settings.stickychat": "گفتگو همیشه روی صفحه نمایش باشد", + "pad.settings.colorcheck": "رنگ‌های نویسندگی", + "pad.settings.linenocheck": "شماره‌ی خطوط", + "pad.settings.rtlcheck": "خواندن محتوا از راست به چپ؟", + "pad.settings.fontType": "نوع قلم:", + "pad.settings.fontType.normal": "نرمال", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "نمای سراسری", + "pad.settings.language": "زبان:", + "pad.importExport.import_export": "درون‌ریزی/برون‌ریزی", + "pad.importExport.import": "بارگذاری پرونده‌ی متنی یا سند", + "pad.importExport.importSuccessful": "موفقیت آمیز بود!", + "pad.importExport.export": "برون‌ریزی این دفترچه یادداشت با قالب:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "سادگین متن", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (قالب سند باز)", + "pad.importExport.abiword.innerHTML": "شما تنها می‌توانید از قالب متن ساده یا اچ‌تی‌ام‌ال درون‌ریزی کنید. برای بیشتر شدن ویژگی‌های درون‌ریزی پیشرفته AbiWord را نصب کنید.", + "pad.modals.connected": "متصل شد.", + "pad.modals.reconnecting": "در حال اتصال دوباره به دفترچه یادداشت شما..", + "pad.modals.forcereconnect": "واداشتن به اتصال دوباره", + "pad.modals.userdup": "در پنجره‌ای دیگر باز شد", + "pad.modals.userdup.explanation": "گمان می‌رود این دفترچه یادداشت در بیش از یک پنجره‌ی مرورگر باز شده‌است.", + "pad.modals.userdup.advice": "برای استفاده از این پنجره دوباره وصل شوید.", + "pad.modals.unauth": "مجاز نیست", + "pad.modals.unauth.explanation": "دسترسی شما در حین مشاهده‌ی این برگه تغییر یافته‌است. دوباره متصل شوید.", + "pad.modals.looping.explanation": "مشکلاتی ارتباطی با سرور همگام‌سازی وجود دارد.", + "pad.modals.looping.cause": "شاید شما از طریق یک فایروال یا پروکسی ناسازگار متصل شده‌اید.", + "pad.modals.initsocketfail": "سرور در دسترس نیست.", + "pad.modals.initsocketfail.explanation": "نمی‌توان به سرور همگام سازی وصل شد.", + "pad.modals.initsocketfail.cause": "شاید این به خاطر مشکلی در مرورگر یا اتصال اینترنتی شما باشد.", + "pad.modals.slowcommit.explanation": "سرور پاسخ نمی‌دهد.", + "pad.modals.slowcommit.cause": "این می‌تواند به خاطر مشکلاتی در اتصال به شبکه باشد.", + "pad.modals.badChangeset.explanation": "ویرایشی که شما انجام داده‌اید توسط سرور همگام‌سازی نادرست طیقه‌بندی شده‌است.", + "pad.modals.badChangeset.cause": "این می‌تواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر می‌کنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.", + "pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.", + "pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.", + "pad.modals.deleted": "پاک کورتین", + "pad.modals.deleted.explanation": "این دفترچه یادداشت پاک شده‌است.", + "pad.modals.disconnected": "اتصال شما قطع شده‌است.", + "pad.modals.disconnected.explanation": "اتصال به سرور قطع شده‌است.", + "pad.modals.disconnected.cause": "ممکن است سرور در دسترس نباشد. اگر این مشکل باز هم رخ داد مدیر حدمت را آگاه کنید.", + "pad.share": "به اشتراک‌گذاری این دفترچه یادداشت", + "pad.share.readonly": "فقط خواندنی", + "pad.share.link": "پیوند", + "pad.share.emebdcode": "جاسازی نشانی", + "pad.chat": "گفتگو", + "pad.chat.title": "بازکردن گفتگو برای این دفترچه یادداشت", + "pad.chat.loadmessages": "بارگیری پیام‌های بیشتر", + "timeslider.pageTitle": "لغزندهٔ زمان {{appTitle}}", + "timeslider.toolbar.returnbutton": "بازگشت به دفترچه یادداشت", + "timeslider.toolbar.authors": "نویسوک:", + "timeslider.toolbar.authorsList": "بدون نویسنده", + "timeslider.toolbar.exportlink.title": "درگیزگ", + "timeslider.exportCurrent": "برون‌ریزی نگارش کنونی به عنوان:", + "timeslider.version": "نگارش {{version}}", + "timeslider.saved": "{{month}} {{day}}، {{year}} ذخیره شد", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "جنوری", + "timeslider.month.february": "پیبروری", + "timeslider.month.march": "مارچ", + "timeslider.month.april": "آپریل", + "timeslider.month.may": "می", + "timeslider.month.june": "جون", + "timeslider.month.july": "جولای", + "timeslider.month.august": "آگوست", + "timeslider.month.september": "سپٹامبر", + "timeslider.month.october": "اکتوبر", + "timeslider.month.november": "نوامبر", + "timeslider.month.december": "دسمبر", + "timeslider.unnamedauthors": "{{num}} نویسندهٔ بی‌نام", + "pad.savedrevs.marked": "این بازنویسی هم اکنون به عنوان ذخیره شده علامت‌گذاری شد", + "pad.userlist.entername": "وتی یوزرنامء بلک ات", + "pad.userlist.unnamed": "بدون نام", + "pad.userlist.guest": "مهمان", + "pad.userlist.deny": "رد کردن", + "pad.userlist.approve": "تایید", + "pad.editbar.clearcolors": "رنگ نویسندگی از همه‌ی سند پاک شود؟", + "pad.impexp.importbutton": "هم اکنون درون‌ریزی کن", + "pad.impexp.importing": "در حال درون‌ریزی...", + "pad.impexp.confirmimport": "با درون‌ریزی یک پرونده نوشتهٔ کنونی دفترچه پاک می‌شود. آیا می‌خواهید ادامه دهید؟", + "pad.impexp.convertFailed": "ما نمی‌توانیم این پرونده را درون‌ریزی کنیم. خواهشمندیم قالب دیگری برای سندتان انتخاب کرده یا بصورت دستی آنرا کپی کنید", + "pad.impexp.uploadFailed": "آپلود انجام نشد، دوباره تلاش کنید", + "pad.impexp.importfailed": "درون‌ریزی انجام نشد", + "pad.impexp.copypaste": "کپی پیست کنید", + "pad.impexp.exportdisabled": "برون‌ریزی با قالب {{type}} از کار افتاده است. برای جزئیات بیشتر با مدیر سیستمتان تماس بگیرید." +} diff --git a/sources/src/locales/be-tarask.json b/sources/src/locales/be-tarask.json old mode 100644 new mode 100755 index 2f7ea3c..3c78985 --- a/sources/src/locales/be-tarask.json +++ b/sources/src/locales/be-tarask.json @@ -1,62 +1,128 @@ { - "@metadata": { - "authors": [ - "Jim-by", - "Wizardist", - "Red Winged Duck" - ] - }, - "index.newPad": "Стварыць", - "index.createOpenPad": "ці тварыць/адкрыць дакумэнт з назвай:", - "pad.toolbar.bold.title": "Тоўсты (Ctrl-B)", - "pad.toolbar.italic.title": "Курсіў (Ctrl-I)", - "pad.toolbar.underline.title": "Падкрэсьліваньне (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Закрэсьліваньне", - "pad.toolbar.ol.title": "Упарадкаваны сьпіс", - "pad.toolbar.ul.title": "Неўпарадкаваны сьпіс", - "pad.toolbar.indent.title": "Водступ (TAB)", - "pad.toolbar.unindent.title": "Выступ", - "pad.toolbar.undo.title": "Скасаваць(Ctrl-Z)", - "pad.toolbar.redo.title": "Вярнуць (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Прыбраць колер дакумэнту", - "pad.toolbar.import_export.title": "Імпарт/Экспарт з выкарыстаньне розных фарматаў файлаў", - "pad.toolbar.timeslider.title": "Шкала часу", - "pad.toolbar.savedRevision.title": "Захаваць вэрсію", - "pad.toolbar.settings.title": "Налады", - "pad.toolbar.embed.title": "Убудаваць гэты дакумэнт", - "pad.toolbar.showusers.title": "Паказаць карыстальнікаў у гэтым дакумэнце", - "pad.colorpicker.save": "Захаваць", - "pad.colorpicker.cancel": "Скасаваць", - "pad.loading": "Загрузка...", - "pad.passwordRequired": "Для доступу да гэтага дакумэнта патрэбны пароль", - "pad.permissionDenied": "Вы ня маеце дазволу на доступ да гэтага дакумэнта", - "pad.wrongPassword": "Вы ўвялі няслушны пароль", - "pad.settings.padSettings": "Налады дакумэнта", - "pad.settings.myView": "Мой выгляд", - "pad.settings.stickychat": "Заўсёды паказваць чат", - "pad.settings.colorcheck": "Колеры аўтарства", - "pad.settings.linenocheck": "Нумары радкоў", - "pad.settings.rtlcheck": "Тэкст справа-налева", - "pad.settings.fontType": "Тып шрыфту:", - "pad.settings.fontType.normal": "Звычайны", - "pad.settings.fontType.monospaced": "Монашырынны", - "pad.settings.globalView": "Агульны выгляд", - "pad.settings.language": "Мова:", - "pad.importExport.import_export": "Імпарт/Экспарт", - "pad.importExport.import": "Загрузіжайце любыя тэкставыя файлы або дакумэнты", - "pad.importExport.importSuccessful": "Пасьпяхова!", - "pad.importExport.export": "Экспартаваць бягучы дакумэнт як:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Просты тэкст", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "Падлучыліся.", - "pad.modals.reconnecting": "Перападлучэньне да вашага дакумэнта...", - "pad.modals.forcereconnect": "Прымусовае перападлучэньне", - "pad.share": "Падзяліцца дакумэнтам", - "pad.share.readonly": "Толькі для чытаньня", - "pad.share.link": "Спасылка", - "pad.chat": "Чат" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Jim-by", + "Wizardist", + "Red Winged Duck" + ] + }, + "index.newPad": "Стварыць", + "index.createOpenPad": "ці тварыць/адкрыць дакумэнт з назвай:", + "pad.toolbar.bold.title": "Тоўсты (Ctrl-B)", + "pad.toolbar.italic.title": "Курсіў (Ctrl-I)", + "pad.toolbar.underline.title": "Падкрэсьліваньне (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Закрэсьліваньне (Ctrl+5)", + "pad.toolbar.ol.title": "Упарадкаваны сьпіс (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Неўпарадкаваны сьпіс (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Водступ (TAB)", + "pad.toolbar.unindent.title": "Выступ (Shift+TAB)", + "pad.toolbar.undo.title": "Скасаваць(Ctrl-Z)", + "pad.toolbar.redo.title": "Вярнуць (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Прыбраць колер дакумэнту (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Імпарт/Экспарт з выкарыстаньне розных фарматаў файлаў", + "pad.toolbar.timeslider.title": "Шкала часу", + "pad.toolbar.savedRevision.title": "Захаваць вэрсію", + "pad.toolbar.settings.title": "Налады", + "pad.toolbar.embed.title": "Падзяліцца і ўбудаваць гэты дакумэнт", + "pad.toolbar.showusers.title": "Паказаць карыстальнікаў у гэтым дакумэнце", + "pad.colorpicker.save": "Захаваць", + "pad.colorpicker.cancel": "Скасаваць", + "pad.loading": "Загрузка...", + "pad.noCookie": "Кукі ня знойдзеныя. Калі ласка, дазвольце кукі ў вашым браўзэры!", + "pad.passwordRequired": "Для доступу да гэтага дакумэнта патрэбны пароль", + "pad.permissionDenied": "Вы ня маеце дазволу на доступ да гэтага дакумэнта", + "pad.wrongPassword": "Вы ўвялі няслушны пароль", + "pad.settings.padSettings": "Налады дакумэнта", + "pad.settings.myView": "Мой выгляд", + "pad.settings.stickychat": "Заўсёды паказваць чат", + "pad.settings.chatandusers": "Паказаць чат і ўдзельнікаў", + "pad.settings.colorcheck": "Колеры аўтарства", + "pad.settings.linenocheck": "Нумары радкоў", + "pad.settings.rtlcheck": "Тэкст справа-налева", + "pad.settings.fontType": "Тып шрыфту:", + "pad.settings.fontType.normal": "Звычайны", + "pad.settings.fontType.monospaced": "Монашырынны", + "pad.settings.globalView": "Агульны выгляд", + "pad.settings.language": "Мова:", + "pad.importExport.import_export": "Імпарт/Экспарт", + "pad.importExport.import": "Загрузіжайце любыя тэкставыя файлы або дакумэнты", + "pad.importExport.importSuccessful": "Пасьпяхова!", + "pad.importExport.export": "Экспартаваць бягучы дакумэнт як:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Просты тэкст", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Вы можаце імпартаваць толькі з звычайнага тэксту або HTML. Дзеля больш пашыраных магчымасьцяў імпарту, калі ласка, усталюйце abiword.", + "pad.modals.connected": "Падлучыліся.", + "pad.modals.reconnecting": "Перападлучэньне да вашага дакумэнта...", + "pad.modals.forcereconnect": "Прымусовае перападлучэньне", + "pad.modals.userdup": "Адкрыта ў іншым акне", + "pad.modals.userdup.explanation": "Падобна, дакумэнт адкрыты больш чым у адным акне браўзэра на гэтым кампутары.", + "pad.modals.userdup.advice": "Паўторна падключыць з выкарыстаньнем гэтага акна.", + "pad.modals.unauth": "Не аўтарызаваны", + "pad.modals.unauth.explanation": "Вашыя правы былі зьмененыя ў часе прагляду гэтай старонкі. Паспрабуйце перападключыцца.", + "pad.modals.looping.explanation": "Праблемы далучэньня да сэрвэра сынхранізацыі.", + "pad.modals.looping.cause": "Магчыма, вы падключыліся празь несумяшчальны брандмаўэр або проксі.", + "pad.modals.initsocketfail": "Сэрвэр недаступны.", + "pad.modals.initsocketfail.explanation": "Не атрымалася падлучыцца да сэрвэра сынхранізацыі.", + "pad.modals.initsocketfail.cause": "Імаверна, гэта зьвязана з праблемамі з вашым браўзэрам або інтэрнэт-злучэньнем.", + "pad.modals.slowcommit.explanation": "Сэрвэр не адказвае.", + "pad.modals.slowcommit.cause": "Гэта можа быць выклікана праблемамі зь сеткавым падлучэньнем.", + "pad.modals.badChangeset.explanation": "Сэрвэр сынхранізацыі вызначыў зробленае вамі рэдагаваньне як недапушчальнае.", + "pad.modals.badChangeset.cause": "Гэта можа адбывацца празь няслушную канфігурацыю сэрвэра або празь іншыя нечаканыя дзеяньні. Калі ласка, скантактуйцеся з адміністратарам, калі вы лічыце, што гэта памылка. Паспрабуйце перападлучыцца, каб працягнуць рэдагаваньне.", + "pad.modals.corruptPad.explanation": "Дакумэнт, да якога вы спрабуеце атрымаць доступ, пашкоджаны.", + "pad.modals.corruptPad.cause": "Гэта можа быць выклікана няправільнай канфігурацыяй сэрвэру або іншымі нечаканымі дзеяньнямі. Калі ласка, скантактуйцеся з адміністратарам службы.", + "pad.modals.deleted": "Выдалены.", + "pad.modals.deleted.explanation": "Гэты дакумэнт быў выдалены.", + "pad.modals.disconnected": "Вы былі адключаныя.", + "pad.modals.disconnected.explanation": "Злучэньне з сэрвэрам было страчанае", + "pad.modals.disconnected.cause": "Магчыма, сэрвэр недаступны. Калі ласка, паведаміце адміністратару службы, калі праблема будзе паўтарацца.", + "pad.share": "Падзяліцца дакумэнтам", + "pad.share.readonly": "Толькі для чытаньня", + "pad.share.link": "Спасылка", + "pad.share.emebdcode": "Укласьці URL", + "pad.chat": "Чат", + "pad.chat.title": "Адкрыць чат для гэтага дакумэнту.", + "pad.chat.loadmessages": "Загрузіць болей паведамленьняў", + "timeslider.pageTitle": "Часавая шкала {{appTitle}}", + "timeslider.toolbar.returnbutton": "Вярнуцца да дакумэнту", + "timeslider.toolbar.authors": "Аўтары:", + "timeslider.toolbar.authorsList": "Няма аўтараў", + "timeslider.toolbar.exportlink.title": "Экспарт", + "timeslider.exportCurrent": "Экспартаваць актуальную вэрсію як:", + "timeslider.version": "Вэрсія {{version}}", + "timeslider.saved": "Захавана {{day}}.{{month}}.{{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "студзень", + "timeslider.month.february": "люты", + "timeslider.month.march": "сакавік", + "timeslider.month.april": "красавік", + "timeslider.month.may": "травень", + "timeslider.month.june": "чэрвень", + "timeslider.month.july": "ліпень", + "timeslider.month.august": "жнівень", + "timeslider.month.september": "верасень", + "timeslider.month.october": "кастрычнік", + "timeslider.month.november": "лістапад", + "timeslider.month.december": "сьнежань", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: безыменны аўтар, few: безыменныя аўтары, many: безыменных аўтараў, other: безыменных аўтараў ]}", + "pad.savedrevs.marked": "Гэтая вэрсія цяпер пазначаная як захаваная", + "pad.savedrevs.timeslider": "Вы можаце пабачыць захаваныя вэрсіі з дапамогай шкалы часу", + "pad.userlist.entername": "Увядзіце вашае імя", + "pad.userlist.unnamed": "безыменны", + "pad.userlist.guest": "Госьць", + "pad.userlist.deny": "Адхіліць", + "pad.userlist.approve": "Зацьвердзіць", + "pad.editbar.clearcolors": "Ачысьціць аўтарскія колеры ва ўсім дакумэнце?", + "pad.impexp.importbutton": "Імпартаваць зараз", + "pad.impexp.importing": "Імпартаваньне…", + "pad.impexp.confirmimport": "Імпарт файла перазапіша цяперашні тэкст дакумэнту. Вы ўпэўненыя, што хочаце працягваць?", + "pad.impexp.convertFailed": "Не атрымалася імпартаваць гэты файл. Калі ласка, выкарыстайце іншы фармат дакумэнту або скапіюйце ўручную.", + "pad.impexp.padHasData": "Мы не змаглі імпартаваць гэты файл, бо дакумэнт ужо мае зьмены, калі ласка, імпартуйце ў новы дакумэнт", + "pad.impexp.uploadFailed": "Загрузка не атрымалася, калі ласка, паспрабуйце яшчэ раз", + "pad.impexp.importfailed": "Памылка імпарту", + "pad.impexp.copypaste": "Калі ласка, скапіюйце і ўстаўце", + "pad.impexp.exportdisabled": "Экспарт у фармаце {{type}} адключаны. Калі ласка, зьвярніцеся да вашага сыстэмнага адміністратара па падрабязнасьці." +} diff --git a/sources/src/locales/bgn.json b/sources/src/locales/bgn.json new file mode 100755 index 0000000..00efbf3 --- /dev/null +++ b/sources/src/locales/bgn.json @@ -0,0 +1,75 @@ +{ + "@metadata": { + "authors": [ + "Baloch Afghanistan" + ] + }, + "index.newPad": "یاداشتی نوکین کتابچه", + "index.createOpenPad": "یا جوڑ\t کورتین/پاچ کورتین یک کتابچه ئی یاداشتی بی نام:", + "pad.toolbar.bold.title": "پررنگ (Ctrl-B)", + "pad.toolbar.italic.title": "چوّٹ (Ctrl-I)", + "pad.toolbar.underline.title": "جهلگ خط (Ctrl-U)", + "pad.toolbar.strikethrough.title": "خط وارته (Ctrl+5)", + "pad.toolbar.ol.title": "ترتیب بوتگین لر لیست (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "ترتیب نه بوتگین لر لیست (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "بیئتئ بوتگین (TAB)", + "pad.toolbar.unindent.title": "در آتگی (Shift+TAB)", + "pad.toolbar.undo.title": "باطل‌کورتین (Ctrl-Z)", + "pad.toolbar.redo.title": "شه نوک (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "نویسوکئ رنگانی پاک کورتین (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "بی تئ کورتین/دَر کورتین شه/بی رکم رکمین قالیبان", + "pad.toolbar.timeslider.title": "وختئ لَگوشوک", + "pad.toolbar.savedRevision.title": "نسخه ئی ذخیره کورتین", + "pad.toolbar.settings.title": "تنظیمات", + "pad.colorpicker.save": "ذخیره", + "pad.colorpicker.cancel": "کنسیل", + "pad.loading": "لودینگ...", + "pad.wrongPassword": "شمی پاسورد جووان نه اینت", + "pad.settings.padSettings": "یاداشتئ دفترچه ئی تنظیمات", + "pad.settings.myView": "نئ دیست", + "pad.settings.stickychat": "هبر موچین وختا بی دیستئ تاکدیمئ سرا بیئت", + "pad.settings.colorcheck": "نویسوکی رنگ ئان", + "pad.settings.linenocheck": "خط ئانی نمبر", + "pad.settings.rtlcheck": "محتوایی وانتین شه راست بی چپا؟", + "pad.settings.fontType": "قلم رکم:", + "pad.settings.fontType.normal": "ساددگ", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "سراسرین دیست یا نما", + "pad.settings.language": "زبان:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "ساده گین متن", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (پاچین سندئ قالب)", + "pad.importExport.abiword.innerHTML": "شما تا توانیت که شه ساده گین متنی ئین قالب یا اچ‌تی‌ام‌ال بی تئ کنیت . په گیشتیرین کارا ئییان پیشرفته ئین بی تئ کورتینا AbiWord نصب کنیت.", + "pad.modals.connected": "وصل بوت.", + "pad.modals.userdup": "نوکین دروازه گئ پاچ کورتین", + "pad.modals.unauth": "مجاز نه اینت", + "pad.modals.deleted.explanation": "ای یاداشتی دفترچه پاک بوته.", + "pad.share.readonly": "فقط وانتین", + "pad.share.link": "لینک", + "pad.chat": "چت وهبر", + "timeslider.toolbar.exportlink.title": "دَر کورتین", + "timeslider.month.january": "جنوری", + "timeslider.month.february": "فیبروری", + "timeslider.month.march": "مارچ", + "timeslider.month.april": "اپریل", + "timeslider.month.may": "می", + "timeslider.month.june": "جون", + "timeslider.month.july": "جولای", + "timeslider.month.august": "اگوست", + "timeslider.month.september": "سیپٹمبر", + "timeslider.month.october": "اکتوبر", + "timeslider.month.november": "نوامبر", + "timeslider.month.december": "ڈ\tسمبر", + "timeslider.unnamedauthors": "{{num}} بی نامین نویسوک", + "pad.userlist.entername": "وتئ ناما نیویشته بکنیت", + "pad.userlist.unnamed": "بی نام", + "pad.userlist.guest": "مهمان", + "pad.userlist.deny": "رد کورتین", + "pad.userlist.approve": "قبول کورتین", + "pad.impexp.importbutton": "انون بی تئ کن", + "pad.impexp.importing": "بی بی تئ کورتینی حالا...", + "pad.impexp.uploadFailed": "آپلود انجام نه بوت، پدا کوشش کن", + "pad.impexp.copypaste": "کپی پیست کَنیت" +} diff --git a/sources/src/locales/bn.json b/sources/src/locales/bn.json old mode 100644 new mode 100755 index 15b06f3..e8bb7ac --- a/sources/src/locales/bn.json +++ b/sources/src/locales/bn.json @@ -1,89 +1,96 @@ { - "@metadata": { - "authors": [ - "Bellayet", - "Nasir8891", - "Sankarshan" - ] - }, - "index.newPad": "নতুন প্যাড", - "index.createOpenPad": "অথবা নাম লিখে প্যাড খুলুন/তৈরী করুন:", - "pad.toolbar.bold.title": "গাড় করা (Ctrl-B)", - "pad.toolbar.italic.title": "বাঁকা করা (Ctrl-I)", - "pad.toolbar.underline.title": "আন্ডারলাইন (Ctrl-U)", - "pad.toolbar.ol.title": "সারিবদ্ধ তালিকা", - "pad.toolbar.indent.title": "প্রান্তিককরণ", - "pad.toolbar.unindent.title": "আউটডেন্ট", - "pad.toolbar.undo.title": "বাতিল করুন (Ctrl-Z)", - "pad.toolbar.redo.title": "পুনরায় করুন (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "কৃতি রং পরিষ্কার করুন", - "pad.toolbar.timeslider.title": "টাইমস্লাইডার", - "pad.toolbar.savedRevision.title": "সংস্করণ সংরক্ষণ করুন", - "pad.toolbar.settings.title": "সেটিং", - "pad.toolbar.embed.title": "এই প্যাড-টি এম্বেড করুন", - "pad.toolbar.showusers.title": "এই প্যাডের ব্যবহারকারীদের দেখান", - "pad.colorpicker.save": "সংরক্ষণ", - "pad.colorpicker.cancel": "বাতিল", - "pad.loading": "লোডিং...", - "pad.passwordRequired": "এই প্যাড-টি দেখার জন্য আপনাকে পাসওয়ার্ড ব্যবহার করতে হবে", - "pad.permissionDenied": "দুঃখিত, এ প্যাড-টি দেখার অধিকার আপনার নেই", - "pad.wrongPassword": "আপনার পাসওয়ার্ড সঠিক নয়", - "pad.settings.padSettings": "প্যাডের স্থাপন", - "pad.settings.myView": "আমার দৃশ্য", - "pad.settings.stickychat": "চ্যাট সক্রীনে প্রদর্শন করা হবে", - "pad.settings.colorcheck": "লেখকদের নিজস্ব নির্বাচিত রং", - "pad.settings.linenocheck": "লাইন নম্বর", - "pad.settings.fontType": "ফন্ট-এর প্রকার:", - "pad.settings.fontType.normal": "সাধারণ", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "সর্বব্যাপী দৃশ্য", - "pad.settings.language": "ভাষা:", - "pad.importExport.import_export": "ইম্পোরট/এক্সপোর্ট", - "pad.importExport.import": "কোন টেক্সট ফাইল বা ডকুমেন্ট আপলোড করুন", - "pad.importExport.importSuccessful": "সফল!", - "pad.importExport.export": "এই প্যাডটি এক্সপোর্ট করুন", - "pad.importExport.exporthtml": "এইচটিএমএল", - "pad.importExport.exportplain": "সাধারণ লেখা", - "pad.importExport.exportword": "মাইক্রোসফট ওয়ার্ড", - "pad.importExport.exportpdf": "পিডিএফ", - "pad.importExport.exportopen": "ওডিএফ (ওপেন ডকুমেন্ট ফরম্যাট)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "যোগাযোগ সফল", - "pad.modals.reconnecting": "আপনার প্যাডের সাথে সংযোগস্থাপন করা হচ্ছে..", - "pad.modals.forcereconnect": "পুনরায় সংযোগস্থাপনের চেষ্টা", - "pad.modals.userdup": "অন্য উইন্ডো-তে খোলা হয়েছে", - "pad.modals.unauth": "আপনার অধিকার নেই", - "pad.modals.initsocketfail": "সার্ভার-এর সাথে যোগাযোগ করতে অসক্ষম।", - "pad.modals.deleted": "অপসারিত।", - "pad.modals.deleted.explanation": "এই প্যাডটি অপসারণ করা হয়েছে।", - "pad.modals.disconnected.explanation": "সার্ভারের সাথে যোগাযোগ করা যাচ্ছে না", - "pad.share": "শেয়ার করুন", - "pad.share.link": "লিংক", - "pad.share.emebdcode": "ইউআরএল সংযোজন", - "pad.chat": "চ্যাট", - "pad.chat.title": "এই প্যাডের জন্য চ্যাট চালু করুন।", - "timeslider.toolbar.returnbutton": "প্যাডে ফিরে যাও", - "timeslider.toolbar.authors": "লেখকগণ:", - "timeslider.toolbar.authorsList": "কোনো লেখক নেই", - "timeslider.exportCurrent": "বর্তমান সংস্করণটি এক্সপোর্ট করুন:", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "জানুয়ারি", - "timeslider.month.february": "ফেব্রুয়ারি", - "timeslider.month.march": "মার্চ", - "timeslider.month.april": "এপ্রিল", - "timeslider.month.may": "মে", - "timeslider.month.june": "জুন", - "timeslider.month.july": "জুলাই", - "timeslider.month.august": "আগস্ট", - "timeslider.month.september": "সেপ্টেম্বর", - "timeslider.month.october": "অক্টোবর", - "timeslider.month.november": "নভেম্বর", - "timeslider.month.december": "ডিসেম্বর", - "pad.userlist.entername": "আপনার নাম", - "pad.userlist.unnamed": "কোন নাম নির্বাচন করা হয়নি", - "pad.userlist.guest": "অতিথি", - "pad.userlist.approve": "অনুমোদিত", - "pad.impexp.importbutton": "এখন ইম্পোর্ট করুন", - "pad.impexp.importing": "ইম্পোর্ট চলছে...", - "pad.impexp.importfailed": "ইম্পোর্ট অসক্ষম" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Bellayet", + "Nasir8891", + "Sankarshan", + "Aftab1995", + "Aftabuzzaman" + ] + }, + "index.newPad": "নতুন প্যাড", + "index.createOpenPad": "অথবা নাম লিখে প্যাড খুলুন/তৈরী করুন:", + "pad.toolbar.bold.title": "গাড় করা (Ctrl-B)", + "pad.toolbar.italic.title": "বাঁকা করা (Ctrl-I)", + "pad.toolbar.underline.title": "আন্ডারলাইন (Ctrl-U)", + "pad.toolbar.strikethrough.title": "স্ট্রাইক্থ্রু", + "pad.toolbar.ol.title": "সারিবদ্ধ তালিকা", + "pad.toolbar.indent.title": "প্রান্তিককরণ (TAB)", + "pad.toolbar.unindent.title": "আউটডেন্ট (Shift+TAB)", + "pad.toolbar.undo.title": "বাতিল করুন (Ctrl-Z)", + "pad.toolbar.redo.title": "পুনরায় করুন (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "কৃতি রং পরিষ্কার করুন (Ctrl+Shift+C)", + "pad.toolbar.timeslider.title": "টাইমস্লাইডার", + "pad.toolbar.savedRevision.title": "সংস্করণ সংরক্ষণ করুন", + "pad.toolbar.settings.title": "সেটিং", + "pad.toolbar.embed.title": "এই প্যাডটি শেয়ার ও এম্বেড করুন", + "pad.toolbar.showusers.title": "এই প্যাডের ব্যবহারকারীদের দেখান", + "pad.colorpicker.save": "সংরক্ষণ", + "pad.colorpicker.cancel": "বাতিল", + "pad.loading": "লোডিং...", + "pad.passwordRequired": "এই প্যাড-টি দেখার জন্য আপনাকে পাসওয়ার্ড ব্যবহার করতে হবে", + "pad.permissionDenied": "দুঃখিত, এ প্যাড-টি দেখার অধিকার আপনার নেই", + "pad.wrongPassword": "আপনার পাসওয়ার্ড সঠিক নয়", + "pad.settings.padSettings": "প্যাডের স্থাপন", + "pad.settings.myView": "আমার দৃশ্য", + "pad.settings.stickychat": "চ্যাট সক্রীনে প্রদর্শন করা হবে", + "pad.settings.colorcheck": "লেখকদের নিজস্ব নির্বাচিত রং", + "pad.settings.linenocheck": "লাইন নম্বর", + "pad.settings.fontType": "ফন্ট-এর প্রকার:", + "pad.settings.fontType.normal": "সাধারণ", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "সর্বব্যাপী দৃশ্য", + "pad.settings.language": "ভাষা:", + "pad.importExport.import_export": "আমদানি/রপ্তানি", + "pad.importExport.import": "কোন টেক্সট ফাইল বা ডকুমেন্ট আপলোড করুন", + "pad.importExport.importSuccessful": "সফল!", + "pad.importExport.export": "এই প্যাডটি রপ্তানি করুন:", + "pad.importExport.exporthtml": "এইচটিএমএল", + "pad.importExport.exportplain": "সাধারণ লেখা", + "pad.importExport.exportword": "মাইক্রোসফট ওয়ার্ড", + "pad.importExport.exportpdf": "পিডিএফ", + "pad.importExport.exportopen": "ওডিএফ (ওপেন ডকুমেন্ট ফরম্যাট)", + "pad.modals.connected": "যোগাযোগ সফল", + "pad.modals.reconnecting": "আপনার প্যাডের সাথে সংযোগস্থাপন করা হচ্ছে..", + "pad.modals.forcereconnect": "পুনরায় সংযোগস্থাপনের চেষ্টা", + "pad.modals.userdup": "অন্য উইন্ডো-তে খোলা হয়েছে", + "pad.modals.unauth": "আপনার অধিকার নেই", + "pad.modals.initsocketfail": "সার্ভার-এর সাথে যোগাযোগ করতে অসক্ষম।", + "pad.modals.deleted": "অপসারিত।", + "pad.modals.deleted.explanation": "এই প্যাডটি অপসারণ করা হয়েছে।", + "pad.modals.disconnected.explanation": "সার্ভারের সাথে যোগাযোগ করা যাচ্ছে না", + "pad.share": "শেয়ার করুন", + "pad.share.readonly": "শুধু পড়া", + "pad.share.link": "লিংক", + "pad.share.emebdcode": "ইউআরএল সংযোজন", + "pad.chat": "চ্যাট", + "pad.chat.title": "এই প্যাডের জন্য চ্যাট চালু করুন।", + "pad.chat.loadmessages": "আরও বার্তা লোড করুন", + "timeslider.toolbar.returnbutton": "প্যাডে ফিরে যাও", + "timeslider.toolbar.authors": "লেখকগণ:", + "timeslider.toolbar.authorsList": "কোনো লেখক নেই", + "timeslider.toolbar.exportlink.title": "রপ্তানি", + "timeslider.exportCurrent": "বর্তমান সংস্করণটি রপ্তানি করুন:", + "timeslider.version": "সংস্করণ {{version}}", + "timeslider.saved": "সংরক্ষিত হয় {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "জানুয়ারি", + "timeslider.month.february": "ফেব্রুয়ারি", + "timeslider.month.march": "মার্চ", + "timeslider.month.april": "এপ্রিল", + "timeslider.month.may": "মে", + "timeslider.month.june": "জুন", + "timeslider.month.july": "জুলাই", + "timeslider.month.august": "আগস্ট", + "timeslider.month.september": "সেপ্টেম্বর", + "timeslider.month.october": "অক্টোবর", + "timeslider.month.november": "নভেম্বর", + "timeslider.month.december": "ডিসেম্বর", + "pad.userlist.entername": "আপনার নাম", + "pad.userlist.unnamed": "কোন নাম নির্বাচন করা হয়নি", + "pad.userlist.guest": "অতিথি", + "pad.userlist.approve": "অনুমোদিত", + "pad.impexp.importbutton": "এখন আমদানি করুন", + "pad.impexp.importing": "আমদানি হচ্ছে...", + "pad.impexp.importfailed": "আমদানি ব্যর্থ" +} diff --git a/sources/src/locales/br.json b/sources/src/locales/br.json old mode 100644 new mode 100755 index ebfa006..310c97a --- a/sources/src/locales/br.json +++ b/sources/src/locales/br.json @@ -1,125 +1,129 @@ { - "@metadata": { - "authors": [ - "Fohanno", - "Fulup", - "Gwenn-Ael", - "Y-M D" - ] - }, - "index.newPad": "Pad nevez", - "index.createOpenPad": "pe krouiñ/digeriñ ur pad gant an anv :", - "pad.toolbar.bold.title": "Tev (Ctrl-B)", - "pad.toolbar.italic.title": "Italek (Ctrl-I)", - "pad.toolbar.underline.title": "Islinennañ (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Barrennet", - "pad.toolbar.ol.title": "Roll urzhiet", - "pad.toolbar.ul.title": "Roll en dizurzh", - "pad.toolbar.indent.title": "Endantañ (TAB)", - "pad.toolbar.unindent.title": "Diendantañ (Shift+TAB)", - "pad.toolbar.undo.title": "Dizober (Ktrl-Z)", - "pad.toolbar.redo.title": "Adober (Ktrl-Y)", - "pad.toolbar.clearAuthorship.title": "Diverkañ al livioù oc'h anaout an aozerien", - "pad.toolbar.import_export.title": "Enporzhiañ/Ezporzhiañ eus/war-zu ur furmad restr disheñvel", - "pad.toolbar.timeslider.title": "Istor dinamek", - "pad.toolbar.savedRevision.title": "Doareoù enrollet", - "pad.toolbar.settings.title": "Arventennoù", - "pad.toolbar.embed.title": "Rannañ hag enframmañ ar pad-mañ", - "pad.toolbar.showusers.title": "Diskwelet implijerien ar Pad", - "pad.colorpicker.save": "Enrollañ", - "pad.colorpicker.cancel": "Nullañ", - "pad.loading": "O kargañ...", - "pad.passwordRequired": "Ezhomm ho peus ur ger-tremen evit mont d'ar Pad-se", - "pad.permissionDenied": "\nN'oc'h ket aotreet da vont d'ar pad-mañ", - "pad.wrongPassword": "Fazius e oa ho ker-tremen", - "pad.settings.padSettings": "Arventennoù Pad", - "pad.settings.myView": "Ma diskwel", - "pad.settings.stickychat": "Diskwel ar flap bepred", - "pad.settings.colorcheck": "Livioù anaout", - "pad.settings.linenocheck": "Niverennoù linennoù", - "pad.settings.rtlcheck": "Lenn an danvez a-zehou da gleiz ?", - "pad.settings.fontType": "Seurt font :", - "pad.settings.fontType.normal": "Reizh", - "pad.settings.fontType.monospaced": "Monospas", - "pad.settings.globalView": "Gwel dre vras", - "pad.settings.language": "Yezh :", - "pad.importExport.import_export": "Enporzhiañ/Ezporzhiañ", - "pad.importExport.import": "Enkargañ un destenn pe ur restr", - "pad.importExport.importSuccessful": "Deuet eo ganeoc'h !", - "pad.importExport.export": "Ezporzhiañ ar pad bremañ evel :", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Testenn blaen", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Ne c'hallit ket emporzjiañ furmadoù testennoù kriz pe html. Evit arc'hwelioù enporzhiañ emdroetoc'h, staliit \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eabiword\u003C/a\u003E mar plij.", - "pad.modals.connected": "Kevreet.", - "pad.modals.reconnecting": "Adkevreañ war-zu ho pad...", - "pad.modals.forcereconnect": "Adkevreañ dre heg", - "pad.modals.userdup": "Digor en ur prenestr all", - "pad.modals.userdup.explanation": "Digor eo ho pad, war a seblant, e meur a brenestr eus ho merdeer en urzhiataer-mañ.", - "pad.modals.userdup.advice": "Kevreañ en ur implijout ar prenestr-mañ.", - "pad.modals.unauth": "N'eo ket aotreet", - "pad.modals.unauth.explanation": "Kemmet e vo hoc'h aotreoù pa vo diskwelet ar bajenn.-mañ Klaskit kevreañ en-dro.", - "pad.modals.looping.explanation": "Kudennoù kehentiñ zo gant ar servijer sinkronelekaat.", - "pad.modals.looping.cause": "Posupl eo e vefe gwarezet ho kevreadur gant ur maltouter diembreget pe ur servijer proksi", - "pad.modals.initsocketfail": "Ne c'haller ket tizhout ar servijer.", - "pad.modals.initsocketfail.explanation": "Ne c'haller ket kevreañ ouzh ar servijer sinkronelaat.", - "pad.modals.initsocketfail.cause": "Gallout a ra ar gudenn dont eus ho merdeer Web pe eus ho kevreadur Internet.", - "pad.modals.slowcommit.explanation": "Ne respont ket ar serveur.", - "pad.modals.slowcommit.cause": "Gallout a ra dont diwar kudennoù kevreañ gant ar rouedad.", - "pad.modals.badChangeset.explanation": "Graet ho peus ur c'hemm met rummet eo bet evel e-maez lezenn gant ar servijer sinkronelaat", - "pad.modals.badChangeset.cause": "Dont a ra marteze eus ur c'hefluniadur fall eus ar servijer pe eus un emzalc'h dic'hortoz all. Kit e darempred, mar plij, gant merour ar servijer, ma soñj deoc'h ez eo ur fazi. Klaskit kevreañ en-dro evit kenderc'hel da gemmañ.", - "pad.modals.corruptPad.explanation": "Breinet eo ar bloc'h emaoc'h o klask tizhout.", - "pad.modals.corruptPad.cause": "Dont a ra marteze eus ur c'hefluniadur fall eus ar servijer pe eus un emzalc'h dic'hortoz all. Kit e darempred, mar plij, gant merour ar servijer.", - "pad.modals.deleted": "Dilamet.", - "pad.modals.deleted.explanation": "Lamet eo bet ar pad-mañ.", - "pad.modals.disconnected": "Digevreet oc'h bet.", - "pad.modals.disconnected.explanation": "Kollet eo bet ar c'hevreadur gant ar servijer", - "pad.modals.disconnected.cause": "Dizimplijadus eo ar servijer marteze. Kelaouit ar servij merañ ma pad ar gudenn.", - "pad.share": "Rannañ ar pad-mañ.", - "pad.share.readonly": "Lenn hepken", - "pad.share.link": "Liamm", - "pad.share.emebdcode": "Enframmañ an URL", - "pad.chat": "Flap", - "pad.chat.title": "Digeriñ ar flap kevelet gant ar pad-mañ.", - "pad.chat.loadmessages": "Kargañ muioc'h a gemennadennoù", - "timeslider.pageTitle": "Istor dinamek eus {{appTitle}}", - "timeslider.toolbar.returnbutton": "Distreiñ d'ar pad-mañ.", - "timeslider.toolbar.authors": "Aozerien :", - "timeslider.toolbar.authorsList": "Aozer ebet", - "timeslider.toolbar.exportlink.title": "Ezporzhiañ", - "timeslider.exportCurrent": "Ezporzhiañ an doare bremañ evel :", - "timeslider.version": "Stumm {{version}}", - "timeslider.saved": "Enrollañ {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Genver", - "timeslider.month.february": "C'hwevrer", - "timeslider.month.march": "Meurzh", - "timeslider.month.april": "Ebrel", - "timeslider.month.may": "Mae", - "timeslider.month.june": "Mezheven", - "timeslider.month.july": "Gouere", - "timeslider.month.august": "Eost", - "timeslider.month.september": "Gwengolo", - "timeslider.month.october": "Here", - "timeslider.month.november": "Du", - "timeslider.month.december": "Kerzu", - "timeslider.unnamedauthors": "{{num}} dianav {[plural(num) one: aozer, other: aozerien ]}", - "pad.savedrevs.marked": "Merket eo an adweladenn-mañ evel adweladenn gwiriet", - "pad.userlist.entername": "Ebarzhit hoc'h anv", - "pad.userlist.unnamed": "dizanv", - "pad.userlist.guest": "Den pedet", - "pad.userlist.deny": "Nac'h", - "pad.userlist.approve": "Aprouiñ", - "pad.editbar.clearcolors": "Diverkañ al livioù stag ouzh an aozerien en teul a-bezh ?", - "pad.impexp.importbutton": "Enporzhiañ bremañ", - "pad.impexp.importing": "Oc'h enporzhiañ...", - "pad.impexp.confirmimport": "Ma vez enporzhiet ur restr e vo diverket ar pezh zo en teul a-vremañ. Ha sur oc'h e fell deoc'h mont betek penn ?", - "pad.impexp.convertFailed": "N'eus ket bet gallet enporzhiañ ar restr. Ober gant ur furmad teul all pe eilañ/pegañ gant an dorn.", - "pad.impexp.uploadFailed": "C'hwitet eo bet an enporzhiañ. Klaskit en-dro.", - "pad.impexp.importfailed": "C'hwitet eo an enporzhiadenn", - "pad.impexp.copypaste": "Eilit/pegit, mar plij", - "pad.impexp.exportdisabled": "Diweredekaet eo ezporzhiañ d'ar furmad {{type}}. Kit e darempred gant merour ar reizhiad evit gouzout hiroc'h." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Fohanno", + "Fulup", + "Gwenn-Ael", + "Y-M D" + ] + }, + "index.newPad": "Pad nevez", + "index.createOpenPad": "pe krouiñ/digeriñ ur pad gant an anv :", + "pad.toolbar.bold.title": "Tev (Ctrl-B)", + "pad.toolbar.italic.title": "Italek (Ctrl-I)", + "pad.toolbar.underline.title": "Islinennañ (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Barrennet(Ktrl+5)", + "pad.toolbar.ol.title": "Listenn urzhiet (Ktrl+Pennlizherenn+N)", + "pad.toolbar.ul.title": "Listenn en dizurzh (Ktrl+Pennlizherenn+L)", + "pad.toolbar.indent.title": "Endantañ (TAB)", + "pad.toolbar.unindent.title": "Diendantañ (Shift+TAB)", + "pad.toolbar.undo.title": "Dizober (Ktrl-Z)", + "pad.toolbar.redo.title": "Adober (Ktrl-Y)", + "pad.toolbar.clearAuthorship.title": "Diverkañ al livioù oc'h anaout an aozerien (Ktrl+Pennlizherenn+C)", + "pad.toolbar.import_export.title": "Enporzhiañ/Ezporzhiañ eus/war-zu ur furmad restr disheñvel", + "pad.toolbar.timeslider.title": "Istor dinamek", + "pad.toolbar.savedRevision.title": "Doareoù enrollet", + "pad.toolbar.settings.title": "Arventennoù", + "pad.toolbar.embed.title": "Rannañ hag enframmañ ar pad-mañ", + "pad.toolbar.showusers.title": "Diskwelet implijerien ar Pad", + "pad.colorpicker.save": "Enrollañ", + "pad.colorpicker.cancel": "Nullañ", + "pad.loading": "O kargañ...", + "pad.noCookie": "N'eus ket gallet kavout an toupin. Aotreit an toupinoù en ho merdeer, mar plij !", + "pad.passwordRequired": "Ezhomm ho peus ur ger-tremen evit mont d'ar Pad-se", + "pad.permissionDenied": "\nN'oc'h ket aotreet da vont d'ar pad-mañ", + "pad.wrongPassword": "Fazius e oa ho ker-tremen", + "pad.settings.padSettings": "Arventennoù Pad", + "pad.settings.myView": "Ma diskwel", + "pad.settings.stickychat": "Diskwel ar flap bepred", + "pad.settings.chatandusers": "Diskouez ar gaoz hag an implijerien", + "pad.settings.colorcheck": "Livioù anaout", + "pad.settings.linenocheck": "Niverennoù linennoù", + "pad.settings.rtlcheck": "Lenn an danvez a-zehou da gleiz ?", + "pad.settings.fontType": "Seurt font :", + "pad.settings.fontType.normal": "Reizh", + "pad.settings.fontType.monospaced": "Monospas", + "pad.settings.globalView": "Gwel dre vras", + "pad.settings.language": "Yezh :", + "pad.importExport.import_export": "Enporzhiañ/Ezporzhiañ", + "pad.importExport.import": "Enkargañ un destenn pe ur restr", + "pad.importExport.importSuccessful": "Deuet eo ganeoc'h !", + "pad.importExport.export": "Ezporzhiañ ar pad bremañ evel :", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Testenn blaen", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Ne c'hallit ket emporzjiañ furmadoù testennoù kriz pe html. Evit arc'hwelioù enporzhiañ emdroetoc'h, staliit abiword mar plij.", + "pad.modals.connected": "Kevreet.", + "pad.modals.reconnecting": "Adkevreañ war-zu ho pad...", + "pad.modals.forcereconnect": "Adkevreañ dre heg", + "pad.modals.userdup": "Digor en ur prenestr all", + "pad.modals.userdup.explanation": "Digor eo ho pad, war a seblant, e meur a brenestr eus ho merdeer en urzhiataer-mañ.", + "pad.modals.userdup.advice": "Kevreañ en ur implijout ar prenestr-mañ.", + "pad.modals.unauth": "N'eo ket aotreet", + "pad.modals.unauth.explanation": "Kemmet e vo hoc'h aotreoù pa vo diskwelet ar bajenn.-mañ Klaskit kevreañ en-dro.", + "pad.modals.looping.explanation": "Kudennoù kehentiñ zo gant ar servijer sinkronelekaat.", + "pad.modals.looping.cause": "Posupl eo e vefe gwarezet ho kevreadur gant ur maltouter diembreget pe ur servijer proksi", + "pad.modals.initsocketfail": "Ne c'haller ket tizhout ar servijer.", + "pad.modals.initsocketfail.explanation": "Ne c'haller ket kevreañ ouzh ar servijer sinkronelaat.", + "pad.modals.initsocketfail.cause": "Gallout a ra ar gudenn dont eus ho merdeer Web pe eus ho kevreadur Internet.", + "pad.modals.slowcommit.explanation": "Ne respont ket ar serveur.", + "pad.modals.slowcommit.cause": "Gallout a ra dont diwar kudennoù kevreañ gant ar rouedad.", + "pad.modals.badChangeset.explanation": "Graet ho peus ur c'hemm met rummet eo bet evel e-maez lezenn gant ar servijer sinkronelaat", + "pad.modals.badChangeset.cause": "Dont a ra marteze eus ur c'hefluniadur fall eus ar servijer pe eus un emzalc'h dic'hortoz all. Kit e darempred, mar plij, gant merour ar servijer, ma soñj deoc'h ez eo ur fazi. Klaskit kevreañ en-dro evit kenderc'hel da gemmañ.", + "pad.modals.corruptPad.explanation": "Breinet eo ar bloc'h emaoc'h o klask tizhout.", + "pad.modals.corruptPad.cause": "Dont a ra marteze eus ur c'hefluniadur fall eus ar servijer pe eus un emzalc'h dic'hortoz all. Kit e darempred, mar plij, gant merour ar servijer.", + "pad.modals.deleted": "Dilamet.", + "pad.modals.deleted.explanation": "Lamet eo bet ar pad-mañ.", + "pad.modals.disconnected": "Digevreet oc'h bet.", + "pad.modals.disconnected.explanation": "Kollet eo bet ar c'hevreadur gant ar servijer", + "pad.modals.disconnected.cause": "Dizimplijadus eo ar servijer marteze. Kelaouit ar servij merañ ma pad ar gudenn.", + "pad.share": "Rannañ ar pad-mañ.", + "pad.share.readonly": "Lenn hepken", + "pad.share.link": "Liamm", + "pad.share.emebdcode": "Enframmañ an URL", + "pad.chat": "Flap", + "pad.chat.title": "Digeriñ ar flap kevelet gant ar pad-mañ.", + "pad.chat.loadmessages": "Kargañ muioc'h a gemennadennoù", + "timeslider.pageTitle": "Istor dinamek eus {{appTitle}}", + "timeslider.toolbar.returnbutton": "Distreiñ d'ar pad-mañ.", + "timeslider.toolbar.authors": "Aozerien :", + "timeslider.toolbar.authorsList": "Aozer ebet", + "timeslider.toolbar.exportlink.title": "Ezporzhiañ", + "timeslider.exportCurrent": "Ezporzhiañ an doare bremañ evel :", + "timeslider.version": "Stumm {{version}}", + "timeslider.saved": "Enrollañ {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Genver", + "timeslider.month.february": "C'hwevrer", + "timeslider.month.march": "Meurzh", + "timeslider.month.april": "Ebrel", + "timeslider.month.may": "Mae", + "timeslider.month.june": "Mezheven", + "timeslider.month.july": "Gouere", + "timeslider.month.august": "Eost", + "timeslider.month.september": "Gwengolo", + "timeslider.month.october": "Here", + "timeslider.month.november": "Du", + "timeslider.month.december": "Kerzu", + "timeslider.unnamedauthors": "{{num}} dianav {[plural(num) one: aozer, other: aozerien ]}", + "pad.savedrevs.marked": "Merket eo an adweladenn-mañ evel adweladenn gwiriet", + "pad.savedrevs.timeslider": "Gallout a reot gwelet an adweladurioù enrollet en ur weladenniñ ar bignerez amzerel", + "pad.userlist.entername": "Ebarzhit hoc'h anv", + "pad.userlist.unnamed": "dizanv", + "pad.userlist.guest": "Den pedet", + "pad.userlist.deny": "Nac'h", + "pad.userlist.approve": "Aprouiñ", + "pad.editbar.clearcolors": "Diverkañ al livioù stag ouzh an aozerien en teul a-bezh ?", + "pad.impexp.importbutton": "Enporzhiañ bremañ", + "pad.impexp.importing": "Oc'h enporzhiañ...", + "pad.impexp.confirmimport": "Ma vez enporzhiet ur restr e vo diverket ar pezh zo en teul a-vremañ. Ha sur oc'h e fell deoc'h mont betek penn ?", + "pad.impexp.convertFailed": "N'eus ket bet gallet enporzhiañ ar restr. Ober gant ur furmad teul all pe eilañ/pegañ gant an dorn.", + "pad.impexp.padHasData": "N'hon eus ket gallet enporzhiañ ar restr-mañdre ma'z eus bet degaset kemmoù er bloc'h-se ; enporzhiit anezhi war-zu ur bloc'h nevez, mar plij.", + "pad.impexp.uploadFailed": "C'hwitet eo bet an enporzhiañ. Klaskit en-dro.", + "pad.impexp.importfailed": "C'hwitet eo an enporzhiadenn", + "pad.impexp.copypaste": "Eilit/pegit, mar plij", + "pad.impexp.exportdisabled": "Diweredekaet eo ezporzhiañ d'ar furmad {{type}}. Kit e darempred gant merour ar reizhiad evit gouzout hiroc'h." +} diff --git a/sources/src/locales/ca.json b/sources/src/locales/ca.json old mode 100644 new mode 100755 index 43f24c5..638b645 --- a/sources/src/locales/ca.json +++ b/sources/src/locales/ca.json @@ -1,125 +1,131 @@ { - "@metadata": { - "authors": [ - "Alvaro Vidal-Abarca", - "Pginer", - "Pitort", - "Toniher" - ] - }, - "index.newPad": "Nou pad", - "index.createOpenPad": "o crea/obre un pad amb el nom:", - "pad.toolbar.bold.title": "Negreta (Ctrl-B)", - "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", - "pad.toolbar.underline.title": "Subratllat (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Ratllat", - "pad.toolbar.ol.title": "Llista ordenada", - "pad.toolbar.ul.title": "Llista sense ordenar", - "pad.toolbar.indent.title": "Sagnat (TAB)", - "pad.toolbar.unindent.title": "Sagnat invers (Majúsc+TAB)", - "pad.toolbar.undo.title": "Desfés (Ctrl-Z)", - "pad.toolbar.redo.title": "Refés (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Neteja els colors d'autoria", - "pad.toolbar.import_export.title": "Importa/exporta a partir de diferents formats de fitxer", - "pad.toolbar.timeslider.title": "Línia temporal", - "pad.toolbar.savedRevision.title": "Desa la revisió", - "pad.toolbar.settings.title": "Configuració", - "pad.toolbar.embed.title": "Comparteix i incrusta aquest pad", - "pad.toolbar.showusers.title": "Mostra els usuaris d’aquest pad", - "pad.colorpicker.save": "Desa", - "pad.colorpicker.cancel": "Cancel·la", - "pad.loading": "S'està carregant...", - "pad.passwordRequired": "Us cal una contrasenya per a accedir a aquest pad", - "pad.permissionDenied": "No teniu permisos per a accedir a aquest pad", - "pad.wrongPassword": "La contrasenya és incorrecta", - "pad.settings.padSettings": "Paràmetres del pad", - "pad.settings.myView": "La meva vista", - "pad.settings.stickychat": "Xateja sempre a la pantalla", - "pad.settings.colorcheck": "Colors d'autoria", - "pad.settings.linenocheck": "Números de línia", - "pad.settings.rtlcheck": "Llegir el contingut de dreta a esquerra?", - "pad.settings.fontType": "Tipus de lletra:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "D'amplada fixa", - "pad.settings.globalView": "Vista global", - "pad.settings.language": "Llengua:", - "pad.importExport.import_export": "Importació/exportació", - "pad.importExport.import": "Puja qualsevol fitxer de text o document", - "pad.importExport.importSuccessful": "Hi ha hagut èxit!", - "pad.importExport.export": "Exporta el pad actual com a:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Text net", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Només podeu importar de text net o html. Per a opcions d'importació més avançades \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstal·leu l'Abiword\u003C/a\u003E.", - "pad.modals.connected": "Connectat.", - "pad.modals.reconnecting": "S'està tornant a connectar al vostre pad…", - "pad.modals.forcereconnect": "Força tornar a connectar", - "pad.modals.userdup": "Obert en una altra finestra", - "pad.modals.userdup.explanation": "Aquest pad sembla que està obert en més d'una finestra de navegador de l'ordinador.", - "pad.modals.userdup.advice": "Torneu a connectar-vos per a utilitzar aquesta finestra.", - "pad.modals.unauth": "No autoritzat", - "pad.modals.unauth.explanation": "Els vostres permisos han canviat mentre es visualitzava la pàgina. Proveu de reconnectar-vos.", - "pad.modals.looping.explanation": "Hi ha problemes de comunicació amb el servidor de sincronització.", - "pad.modals.looping.cause": "Potser us heu connectat a través d'un tallafocs o servidor intermediari incompatible.", - "pad.modals.initsocketfail": "El servidor no és accessible.", - "pad.modals.initsocketfail.explanation": "No s'ha pogut connectar amb el servidor de sincronització.", - "pad.modals.initsocketfail.cause": "Això és probablement a causa d'un problema amb el navegador o la connexió a Internet.", - "pad.modals.slowcommit.explanation": "El servidor no respon.", - "pad.modals.slowcommit.cause": "Això podria ser a causa de problemes amb la connectivitat de la xarxa.", - "pad.modals.badChangeset.explanation": "El servidor de sincronització ha classificat com a il·legat una edició que heu fet.", - "pad.modals.badChangeset.cause": "Això pot ser degut a una configuració errònia del servidor o a algun altre comportament inesperat. Si us plau, si considereu que això és un error, contacteu amb l'administrador del servei. Intenteu reconnectar-vos per tal de continuar editant.", - "pad.modals.corruptPad.explanation": "El pad al qual esteu intentant accedir està corrupte.", - "pad.modals.corruptPad.cause": "Això pot ser degut a una configuració errònia del servidor o a algun altre comportament inesperat. Si us plau, contacteu amb l'administrador del servei.", - "pad.modals.deleted": "Suprimit.", - "pad.modals.deleted.explanation": "S'ha suprimit el pad.", - "pad.modals.disconnected": "Heu estat desconnectat.", - "pad.modals.disconnected.explanation": "S'ha perdut la connexió amb el servidor", - "pad.modals.disconnected.cause": "El servidor sembla que no està disponible. Notifiqueu a l'administrador del servei si continua passant.", - "pad.share": "Comparteix el pad", - "pad.share.readonly": "Només de lectura", - "pad.share.link": "Enllaç", - "pad.share.emebdcode": "Incrusta l'URL", - "pad.chat": "Xat", - "pad.chat.title": "Obre el xat d'aquest pad.", - "pad.chat.loadmessages": "Carrega més missatges", - "timeslider.pageTitle": "Línia temporal — {{appTitle}}", - "timeslider.toolbar.returnbutton": "Torna al pad", - "timeslider.toolbar.authors": "Autors:", - "timeslider.toolbar.authorsList": "No hi ha autors", - "timeslider.toolbar.exportlink.title": "Exporta", - "timeslider.exportCurrent": "Exporta la versió actual com a:", - "timeslider.version": "Versió {{version}}", - "timeslider.saved": "Desat {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Gener", - "timeslider.month.february": "Febrer", - "timeslider.month.march": "Març", - "timeslider.month.april": "Abril", - "timeslider.month.may": "Maig", - "timeslider.month.june": "Juny", - "timeslider.month.july": "Juliol", - "timeslider.month.august": "Agost", - "timeslider.month.september": "Setembre", - "timeslider.month.october": "Octubre", - "timeslider.month.november": "Novembre", - "timeslider.month.december": "Desembre", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autors ]} sense nom", - "pad.savedrevs.marked": "Aquesta revisió està marcada ara com a revisió desada", - "pad.userlist.entername": "Introduïu el vostre nom", - "pad.userlist.unnamed": "sense nom", - "pad.userlist.guest": "Convidat", - "pad.userlist.deny": "Refusa", - "pad.userlist.approve": "Aprova", - "pad.editbar.clearcolors": "Voleu netejar els colors d'autor del document sencer?", - "pad.impexp.importbutton": "Importa ara", - "pad.impexp.importing": "Important...", - "pad.impexp.confirmimport": "En importar un fitxer se sobreescriurà el text actual del pad. Esteu segur que voleu continuar?", - "pad.impexp.convertFailed": "No és possible d'importar aquest fitxer. Si us plau, podeu provar d'utilitzar un format diferent o copiar i enganxar manualment.", - "pad.impexp.uploadFailed": "Ha fallat la càrrega. Torneu-ho a provar", - "pad.impexp.importfailed": "Ha fallat la importació", - "pad.impexp.copypaste": "Si us plau, copieu i enganxeu", - "pad.impexp.exportdisabled": "Està inhabilitada l'exportació com a {{type}}. Contacteu amb el vostre administrador de sistemes per a més informació." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Alvaro Vidal-Abarca", + "Pginer", + "Pitort", + "Toniher", + "Macofe", + "Joan manel" + ] + }, + "index.newPad": "Nou pad", + "index.createOpenPad": "o crea/obre un pad amb el nom:", + "pad.toolbar.bold.title": "Negreta (Ctrl-B)", + "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", + "pad.toolbar.underline.title": "Subratllat (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Ratllat (Ctrl+5)", + "pad.toolbar.ol.title": "Llista ordenada (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Llista sense ordenar (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Sagnat (TAB)", + "pad.toolbar.unindent.title": "Sagnat invers (Majúsc+TAB)", + "pad.toolbar.undo.title": "Desfés (Ctrl-Z)", + "pad.toolbar.redo.title": "Refés (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Neteja els colors d'autoria (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importa/exporta a partir de diferents formats de fitxer", + "pad.toolbar.timeslider.title": "Línia temporal", + "pad.toolbar.savedRevision.title": "Desa la revisió", + "pad.toolbar.settings.title": "Configuració", + "pad.toolbar.embed.title": "Comparteix i incrusta aquest pad", + "pad.toolbar.showusers.title": "Mostra els usuaris d’aquest pad", + "pad.colorpicker.save": "Desa", + "pad.colorpicker.cancel": "Cancel·la", + "pad.loading": "S'està carregant...", + "pad.noCookie": "No s'ha trobat la galeta. Permeteu les galetes en el navegador!", + "pad.passwordRequired": "Us cal una contrasenya per a accedir a aquest pad", + "pad.permissionDenied": "No teniu permisos per a accedir a aquest pad", + "pad.wrongPassword": "La contrasenya és incorrecta", + "pad.settings.padSettings": "Paràmetres del pad", + "pad.settings.myView": "La meva vista", + "pad.settings.stickychat": "Xateja sempre a la pantalla", + "pad.settings.chatandusers": "Mostra el xat i els usuaris", + "pad.settings.colorcheck": "Colors d'autoria", + "pad.settings.linenocheck": "Números de línia", + "pad.settings.rtlcheck": "Llegir el contingut de dreta a esquerra?", + "pad.settings.fontType": "Tipus de lletra:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "D'amplada fixa", + "pad.settings.globalView": "Vista global", + "pad.settings.language": "Llengua:", + "pad.importExport.import_export": "Importació/exportació", + "pad.importExport.import": "Puja qualsevol fitxer de text o document", + "pad.importExport.importSuccessful": "Hi ha hagut èxit!", + "pad.importExport.export": "Exporta el pad actual com a:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Text net", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Només podeu importar de text net o html. Per a opcions d'importació més avançades instal·leu l'Abiword.", + "pad.modals.connected": "Connectat.", + "pad.modals.reconnecting": "S'està tornant a connectar al vostre pad…", + "pad.modals.forcereconnect": "Força tornar a connectar", + "pad.modals.userdup": "Obert en una altra finestra", + "pad.modals.userdup.explanation": "Aquest pad sembla que està obert en més d'una finestra de navegador de l'ordinador.", + "pad.modals.userdup.advice": "Torneu a connectar-vos per a utilitzar aquesta finestra.", + "pad.modals.unauth": "No autoritzat", + "pad.modals.unauth.explanation": "Els vostres permisos han canviat mentre es visualitzava la pàgina. Proveu de reconnectar-vos.", + "pad.modals.looping.explanation": "Hi ha problemes de comunicació amb el servidor de sincronització.", + "pad.modals.looping.cause": "Potser us heu connectat a través d'un tallafocs o servidor intermediari incompatible.", + "pad.modals.initsocketfail": "El servidor no és accessible.", + "pad.modals.initsocketfail.explanation": "No s'ha pogut connectar amb el servidor de sincronització.", + "pad.modals.initsocketfail.cause": "Això és probablement a causa d'un problema amb el navegador o la connexió a Internet.", + "pad.modals.slowcommit.explanation": "El servidor no respon.", + "pad.modals.slowcommit.cause": "Això podria ser a causa de problemes amb la connectivitat de la xarxa.", + "pad.modals.badChangeset.explanation": "El servidor de sincronització ha classificat com a il·legat una edició que heu fet.", + "pad.modals.badChangeset.cause": "Això pot ser degut a una configuració errònia del servidor o a algun altre comportament inesperat. Si us plau, si considereu que això és un error, contacteu amb l'administrador del servei. Intenteu reconnectar-vos per tal de continuar editant.", + "pad.modals.corruptPad.explanation": "El pad al qual esteu intentant accedir està corrupte.", + "pad.modals.corruptPad.cause": "Això pot ser degut a una configuració errònia del servidor o a algun altre comportament inesperat. Si us plau, contacteu amb l'administrador del servei.", + "pad.modals.deleted": "Suprimit.", + "pad.modals.deleted.explanation": "S'ha suprimit el pad.", + "pad.modals.disconnected": "Heu estat desconnectat.", + "pad.modals.disconnected.explanation": "S'ha perdut la connexió amb el servidor", + "pad.modals.disconnected.cause": "El servidor sembla que no està disponible. Notifiqueu a l'administrador del servei si continua passant.", + "pad.share": "Comparteix el pad", + "pad.share.readonly": "Només de lectura", + "pad.share.link": "Enllaç", + "pad.share.emebdcode": "Incrusta l'URL", + "pad.chat": "Xat", + "pad.chat.title": "Obre el xat d'aquest pad.", + "pad.chat.loadmessages": "Carrega més missatges", + "timeslider.pageTitle": "Línia temporal — {{appTitle}}", + "timeslider.toolbar.returnbutton": "Torna al pad", + "timeslider.toolbar.authors": "Autors:", + "timeslider.toolbar.authorsList": "No hi ha autors", + "timeslider.toolbar.exportlink.title": "Exporta", + "timeslider.exportCurrent": "Exporta la versió actual com a:", + "timeslider.version": "Versió {{version}}", + "timeslider.saved": "Desat {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Gener", + "timeslider.month.february": "Febrer", + "timeslider.month.march": "Març", + "timeslider.month.april": "Abril", + "timeslider.month.may": "Maig", + "timeslider.month.june": "Juny", + "timeslider.month.july": "Juliol", + "timeslider.month.august": "Agost", + "timeslider.month.september": "Setembre", + "timeslider.month.october": "Octubre", + "timeslider.month.november": "Novembre", + "timeslider.month.december": "Desembre", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autors ]} sense nom", + "pad.savedrevs.marked": "Aquesta revisió està marcada ara com a revisió desada", + "pad.savedrevs.timeslider": "Les revisions que s'han desat les podeu veure amb la línia de temps", + "pad.userlist.entername": "Introduïu el vostre nom", + "pad.userlist.unnamed": "sense nom", + "pad.userlist.guest": "Convidat", + "pad.userlist.deny": "Refusa", + "pad.userlist.approve": "Aprova", + "pad.editbar.clearcolors": "Voleu netejar els colors d'autor del document sencer?", + "pad.impexp.importbutton": "Importa ara", + "pad.impexp.importing": "Important...", + "pad.impexp.confirmimport": "En importar un fitxer se sobreescriurà el text actual del pad. Esteu segur que voleu continuar?", + "pad.impexp.convertFailed": "No és possible d'importar aquest fitxer. Si us plau, podeu provar d'utilitzar un format diferent o copiar i enganxar manualment.", + "pad.impexp.padHasData": "No vam poder importar el fitxer perquè el pad ja tenia canvis. Importeu-lo a un nou pad", + "pad.impexp.uploadFailed": "Ha fallat la càrrega. Torneu-ho a provar", + "pad.impexp.importfailed": "Ha fallat la importació", + "pad.impexp.copypaste": "Si us plau, copieu i enganxeu", + "pad.impexp.exportdisabled": "Està inhabilitada l'exportació com a {{type}}. Contacteu amb el vostre administrador de sistemes per a més informació." +} diff --git a/sources/src/locales/cs.json b/sources/src/locales/cs.json old mode 100644 new mode 100755 index 4ff97ec..19552ff --- a/sources/src/locales/cs.json +++ b/sources/src/locales/cs.json @@ -1,126 +1,130 @@ { - "@metadata": { - "authors": [ - "Jakubt", - "Jezevec", - "Juandev", - "Leanes", - "Quinn" - ] - }, - "index.newPad": "Založ nový Pad", - "index.createOpenPad": "nebo vytvoř/otevři Pad s názvem:", - "pad.toolbar.bold.title": "Tučný text (Ctrl-B)", - "pad.toolbar.italic.title": "Kurzíva (Ctrl-I)", - "pad.toolbar.underline.title": "Podtržené písmo (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Přeskrtnuté písmo", - "pad.toolbar.ol.title": "Číslovaný seznam", - "pad.toolbar.ul.title": "Nečíslovaný seznam", - "pad.toolbar.indent.title": "Odsazení", - "pad.toolbar.unindent.title": "Předsazení", - "pad.toolbar.undo.title": "Zpět (Ctrl-Z)", - "pad.toolbar.redo.title": "Opakovat (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Vymazat barvy autorů", - "pad.toolbar.import_export.title": "Importovat/Exportovat z/do jiných formátů", - "pad.toolbar.timeslider.title": "Časová osa", - "pad.toolbar.savedRevision.title": "Uložit revizi", - "pad.toolbar.settings.title": "Nastavení", - "pad.toolbar.embed.title": "Sdílet a umístit tento Pad", - "pad.toolbar.showusers.title": "Zobrazit uživatele u tohoto Padu", - "pad.colorpicker.save": "Uložit", - "pad.colorpicker.cancel": "Zrušit", - "pad.loading": "Načítání...", - "pad.passwordRequired": "Pro přístup k tomuto Padu je třeba znát heslo", - "pad.permissionDenied": "Nemáte oprávnění pro přístup k tomuto Padu", - "pad.wrongPassword": "Nesprávné heslo", - "pad.settings.padSettings": "Nastavení Padu", - "pad.settings.myView": "Vlastní pohled", - "pad.settings.stickychat": "Chat vždy na obrazovce", - "pad.settings.colorcheck": "Barvy autorů", - "pad.settings.linenocheck": "Čísla řádků", - "pad.settings.rtlcheck": "Číst obsah zprava doleva?", - "pad.settings.fontType": "Typ písma:", - "pad.settings.fontType.normal": "Normální", - "pad.settings.fontType.monospaced": "Neproporční", - "pad.settings.globalView": "Globální pohled", - "pad.settings.language": "Jazyk:", - "pad.importExport.import_export": "Import/Export", - "pad.importExport.import": "Nahrát libovolný textový soubor nebo dokument", - "pad.importExport.importSuccessful": "Úspěšně!", - "pad.importExport.export": "Exportovat stávající Pad jako:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Prostý text", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Importovat můžeš pouze prostý text nebo HTML formátování. Pro pokročilejší funkce importu, prosím, nainstaluj „\u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eabiword\u003C/a\u003E“.", - "pad.modals.connected": "Připojeno.", - "pad.modals.reconnecting": "Znovupřipojování k Padu…", - "pad.modals.forcereconnect": "Vynutit znovupřipojení", - "pad.modals.userdup": "Otevřeno v jiném okně", - "pad.modals.userdup.explanation": "Zdá se, že tento Pad je na tomto počítači otevřen ve více než jednom okně.", - "pad.modals.userdup.advice": "Pro použití tohoto okna je třeba se znovu připojit.", - "pad.modals.unauth": "Nemáte autorizaci", - "pad.modals.unauth.explanation": "Vaše oprávnění se změnila, zatímco jste si prohlížel/a toto okno. Zkuste se znovu připojit.", - "pad.modals.looping.explanation": "Nastaly problémy při komunikaci se synchronizačním serverem.", - "pad.modals.looping.cause": "Možná jste připojeni přes nekompaktní firewall nebo proxy.", - "pad.modals.initsocketfail": "Server je nedostupný.", - "pad.modals.initsocketfail.explanation": "Nepodařilo se připojit k synchronizačnímu serveru.", - "pad.modals.initsocketfail.cause": "Toto je pravděpodobně způsobeno vaším prohlížečem nebo připojením k internetu.", - "pad.modals.slowcommit.explanation": "Server neodpovídá.", - "pad.modals.slowcommit.cause": "Může to být způsobeno problémy s internetovým připojením.", - "pad.modals.badChangeset.explanation": "Editace, kterou jste učinili byla vyhodnocena jako zakázaná syncronizací serveru.", - "pad.modals.badChangeset.cause": "To může být způsobeno špatnou konfigurací serveru, nebo jiným neočekávaným chováním. Kontaktujte prosím správce služby, pokud i myslíte, že se jedná o chybu. Zkuste se připojit znovu, pokud chcete pokračovat v psaní.", - "pad.modals.corruptPad.explanation": "Pad, ke kterému se snažíte připojit je poškozen.", - "pad.modals.corruptPad.cause": "To může být kvůli špatné konfiguraci serveru, nebo kvůli jinému neočekávanému chování. Kontaktujte prosím správce služby.", - "pad.modals.deleted": "Odstraněno.", - "pad.modals.deleted.explanation": "Tento Pad byl odebrán.", - "pad.modals.disconnected": "Byl jste odpojen.", - "pad.modals.disconnected.explanation": "Připojení k serveru bylo přerušeno", - "pad.modals.disconnected.cause": "Server může být nedostupný. Upozorněte administrátora služby, pokud se to bude opakovat.", - "pad.share": "Sdílet tento Pad", - "pad.share.readonly": "Jen pro čtení", - "pad.share.link": "Odkaz", - "pad.share.emebdcode": "Vložit URL", - "pad.chat": "Chat", - "pad.chat.title": "Otevřít chat tohoto Padu.", - "pad.chat.loadmessages": "Načíst více zpráv", - "timeslider.pageTitle": "Časová osa {{appTitle}}", - "timeslider.toolbar.returnbutton": "Návrat do Padu", - "timeslider.toolbar.authors": "Autoři:", - "timeslider.toolbar.authorsList": "Bez autorů", - "timeslider.toolbar.exportlink.title": "Exportovat", - "timeslider.exportCurrent": "Exportovat nynější verzi jako:", - "timeslider.version": "Verze {{version}}", - "timeslider.saved": "Uloženo {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}} {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "leden", - "timeslider.month.february": "únor", - "timeslider.month.march": "březen", - "timeslider.month.april": "duben", - "timeslider.month.may": "květen", - "timeslider.month.june": "červen", - "timeslider.month.july": "červenec", - "timeslider.month.august": "srpen", - "timeslider.month.september": "září", - "timeslider.month.october": "říjen", - "timeslider.month.november": "listopad", - "timeslider.month.december": "prosinec", - "timeslider.unnamedauthors": "{{num}} {[ plural(num) one: nejmenovaný Autor, few: nejmenovaní Autoři, other: nejmenovaných Autorů ]}", - "pad.savedrevs.marked": "Tato revize je nyní označena jako uložená", - "pad.userlist.entername": "Zadejte své jméno", - "pad.userlist.unnamed": "nejmenovaný", - "pad.userlist.guest": "Host", - "pad.userlist.deny": "Zakázat", - "pad.userlist.approve": "Povolit", - "pad.editbar.clearcolors": "Odstranit barvy autorů z celého dokumentu?", - "pad.impexp.importbutton": "Importovat", - "pad.impexp.importing": "Importování…", - "pad.impexp.confirmimport": "Import souboru přepíše aktuální text v padu. Opravdu chcete tuto akci provést?", - "pad.impexp.convertFailed": "Tento soubor nelze importovat. Použijte prosím jiný formát dokumentu nebo nakopírujte text ručně", - "pad.impexp.uploadFailed": "Nahrávání selhalo, zkuste to znovu", - "pad.impexp.importfailed": "Import selhal", - "pad.impexp.copypaste": "Vložte prosím kopii", - "pad.impexp.exportdisabled": "Export do formátu {{type}} je zakázán. Kontaktujte svého administrátora pro zjištění detailů." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Jakubt", + "Jezevec", + "Juandev", + "Leanes", + "Quinn" + ] + }, + "index.newPad": "Založ nový Pad", + "index.createOpenPad": "nebo vytvoř/otevři Pad s názvem:", + "pad.toolbar.bold.title": "Tučný text (Ctrl-B)", + "pad.toolbar.italic.title": "Kurzíva (Ctrl-I)", + "pad.toolbar.underline.title": "Podtržené písmo (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Přeškrtnuto (Ctrl+5)", + "pad.toolbar.ol.title": "Číslovaný seznam", + "pad.toolbar.ul.title": "Nečíslovaný seznam", + "pad.toolbar.indent.title": "Odsazení (TAB)", + "pad.toolbar.unindent.title": "Předsazení (Shift+TAB)", + "pad.toolbar.undo.title": "Zpět (Ctrl-Z)", + "pad.toolbar.redo.title": "Opakovat (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Vymazat barvy autorů", + "pad.toolbar.import_export.title": "Importovat/Exportovat z/do jiných formátů", + "pad.toolbar.timeslider.title": "Časová osa", + "pad.toolbar.savedRevision.title": "Uložit revizi", + "pad.toolbar.settings.title": "Nastavení", + "pad.toolbar.embed.title": "Sdílet a umístit tento Pad", + "pad.toolbar.showusers.title": "Zobrazit uživatele u tohoto Padu", + "pad.colorpicker.save": "Uložit", + "pad.colorpicker.cancel": "Zrušit", + "pad.loading": "Načítání...", + "pad.noCookie": "Nelze nalézt cookie. Povolte prosím cookie ve Vašem prohlížeči.", + "pad.passwordRequired": "Pro přístup k tomuto Padu je třeba znát heslo", + "pad.permissionDenied": "Nemáte oprávnění pro přístup k tomuto Padu", + "pad.wrongPassword": "Nesprávné heslo", + "pad.settings.padSettings": "Nastavení Padu", + "pad.settings.myView": "Vlastní pohled", + "pad.settings.stickychat": "Chat vždy na obrazovce", + "pad.settings.chatandusers": "Ukázat Chat a Uživatele", + "pad.settings.colorcheck": "Barvy autorů", + "pad.settings.linenocheck": "Čísla řádků", + "pad.settings.rtlcheck": "Číst obsah zprava doleva?", + "pad.settings.fontType": "Typ písma:", + "pad.settings.fontType.normal": "Normální", + "pad.settings.fontType.monospaced": "Neproporční", + "pad.settings.globalView": "Globální pohled", + "pad.settings.language": "Jazyk:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.import": "Nahrát libovolný textový soubor nebo dokument", + "pad.importExport.importSuccessful": "Úspěšně!", + "pad.importExport.export": "Exportovat stávající Pad jako:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Prostý text", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Importovat můžeš pouze prostý text nebo HTML formátování. Pro pokročilejší funkce importu, prosím, nainstaluj „abiword“.", + "pad.modals.connected": "Připojeno.", + "pad.modals.reconnecting": "Znovupřipojování k Padu…", + "pad.modals.forcereconnect": "Vynutit znovupřipojení", + "pad.modals.userdup": "Otevřeno v jiném okně", + "pad.modals.userdup.explanation": "Zdá se, že tento Pad je na tomto počítači otevřen ve více než jednom okně.", + "pad.modals.userdup.advice": "Pro použití tohoto okna je třeba se znovu připojit.", + "pad.modals.unauth": "Nemáte autorizaci", + "pad.modals.unauth.explanation": "Vaše oprávnění se změnila, zatímco jste si prohlížel/a toto okno. Zkuste se znovu připojit.", + "pad.modals.looping.explanation": "Nastaly problémy při komunikaci se synchronizačním serverem.", + "pad.modals.looping.cause": "Možná jste připojeni přes nekompaktní firewall nebo proxy.", + "pad.modals.initsocketfail": "Server je nedostupný.", + "pad.modals.initsocketfail.explanation": "Nepodařilo se připojit k synchronizačnímu serveru.", + "pad.modals.initsocketfail.cause": "Toto je pravděpodobně způsobeno vaším prohlížečem nebo připojením k internetu.", + "pad.modals.slowcommit.explanation": "Server neodpovídá.", + "pad.modals.slowcommit.cause": "Může to být způsobeno problémy s internetovým připojením.", + "pad.modals.badChangeset.explanation": "Editace, kterou jste učinili byla vyhodnocena jako zakázaná syncronizací serveru.", + "pad.modals.badChangeset.cause": "To může být způsobeno špatnou konfigurací serveru, nebo jiným neočekávaným chováním. Kontaktujte prosím správce služby, pokud i myslíte, že se jedná o chybu. Zkuste se připojit znovu, pokud chcete pokračovat v psaní.", + "pad.modals.corruptPad.explanation": "Pad, ke kterému se snažíte připojit je poškozen.", + "pad.modals.corruptPad.cause": "To může být kvůli špatné konfiguraci serveru, nebo kvůli jinému neočekávanému chování. Kontaktujte prosím správce služby.", + "pad.modals.deleted": "Odstraněno.", + "pad.modals.deleted.explanation": "Tento Pad byl odebrán.", + "pad.modals.disconnected": "Byl jste odpojen.", + "pad.modals.disconnected.explanation": "Připojení k serveru bylo přerušeno", + "pad.modals.disconnected.cause": "Server může být nedostupný. Upozorněte administrátora služby, pokud se to bude opakovat.", + "pad.share": "Sdílet tento Pad", + "pad.share.readonly": "Jen pro čtení", + "pad.share.link": "Odkaz", + "pad.share.emebdcode": "Vložit URL", + "pad.chat": "Chat", + "pad.chat.title": "Otevřít chat tohoto Padu.", + "pad.chat.loadmessages": "Načíst více zpráv", + "timeslider.pageTitle": "Časová osa {{appTitle}}", + "timeslider.toolbar.returnbutton": "Návrat do Padu", + "timeslider.toolbar.authors": "Autoři:", + "timeslider.toolbar.authorsList": "Bez autorů", + "timeslider.toolbar.exportlink.title": "Exportovat", + "timeslider.exportCurrent": "Exportovat nynější verzi jako:", + "timeslider.version": "Verze {{version}}", + "timeslider.saved": "Uloženo {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}} {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "leden", + "timeslider.month.february": "únor", + "timeslider.month.march": "březen", + "timeslider.month.april": "duben", + "timeslider.month.may": "květen", + "timeslider.month.june": "červen", + "timeslider.month.july": "červenec", + "timeslider.month.august": "srpen", + "timeslider.month.september": "září", + "timeslider.month.october": "říjen", + "timeslider.month.november": "listopad", + "timeslider.month.december": "prosinec", + "timeslider.unnamedauthors": "{{num}} {[ plural(num) one: nejmenovaný Autor, few: nejmenovaní Autoři, other: nejmenovaných Autorů ]}", + "pad.savedrevs.marked": "Tato revize je nyní označena jako uložená", + "pad.savedrevs.timeslider": "Návštěvou časové osy zobrazíte uložené revize", + "pad.userlist.entername": "Zadejte své jméno", + "pad.userlist.unnamed": "nejmenovaný", + "pad.userlist.guest": "Host", + "pad.userlist.deny": "Zakázat", + "pad.userlist.approve": "Povolit", + "pad.editbar.clearcolors": "Odstranit barvy autorů z celého dokumentu?", + "pad.impexp.importbutton": "Importovat", + "pad.impexp.importing": "Importování…", + "pad.impexp.confirmimport": "Import souboru přepíše aktuální text v padu. Opravdu chcete tuto akci provést?", + "pad.impexp.convertFailed": "Tento soubor nelze importovat. Použijte prosím jiný formát dokumentu nebo nakopírujte text ručně", + "pad.impexp.padHasData": "Tento soubor jsme nebyly schopni importovat, protože tento Pad již obsahoval změny. Importujte ho prosím do nového padu", + "pad.impexp.uploadFailed": "Nahrávání selhalo, zkuste to znovu", + "pad.impexp.importfailed": "Import selhal", + "pad.impexp.copypaste": "Vložte prosím kopii", + "pad.impexp.exportdisabled": "Export do formátu {{type}} je zakázán. Kontaktujte svého administrátora pro zjištění detailů." +} diff --git a/sources/src/locales/da.json b/sources/src/locales/da.json old mode 100644 new mode 100755 index fdcb4d7..662e9af --- a/sources/src/locales/da.json +++ b/sources/src/locales/da.json @@ -1,124 +1,123 @@ { - "@metadata": { - "authors": [ - "Christian List", - "Peter Alberti", - "Steenth" - ] - }, - "index.newPad": "Ny Pad", - "index.createOpenPad": "eller opret/åbn en Pad med navnet:", - "pad.toolbar.bold.title": "Fed (Ctrl-B)", - "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", - "pad.toolbar.underline.title": "Understregning (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Gennemstregning", - "pad.toolbar.ol.title": "Sorteret liste", - "pad.toolbar.ul.title": "Usorteret liste", - "pad.toolbar.indent.title": "Indrykning", - "pad.toolbar.unindent.title": "Ryk ud", - "pad.toolbar.undo.title": "Fortryd (Ctrl-Z)", - "pad.toolbar.redo.title": "Annuller Fortryd (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Fjern farver for forfatterskab", - "pad.toolbar.import_export.title": "Import/eksport fra/til forskellige filformater", - "pad.toolbar.timeslider.title": "Timeslider", - "pad.toolbar.savedRevision.title": "Gem Revision", - "pad.toolbar.settings.title": "Indstillinger", - "pad.toolbar.embed.title": "Del og integrer denne pad", - "pad.toolbar.showusers.title": "Vis brugere på denne pad", - "pad.colorpicker.save": "Gem", - "pad.colorpicker.cancel": "Afbryd", - "pad.loading": "Indlæser ...", - "pad.passwordRequired": "Du skal bruge en adgangskode for at få adgang til denne pad", - "pad.permissionDenied": "Du har ikke tilladelse til at få adgang til denne pad.", - "pad.wrongPassword": "Din adgangskode er forkert", - "pad.settings.padSettings": "Pad indstillinger", - "pad.settings.myView": "Min visning", - "pad.settings.stickychat": "Chat altid på skærmen", - "pad.settings.colorcheck": "Forfatterskabsfarver", - "pad.settings.linenocheck": "Linjenumre", - "pad.settings.rtlcheck": "Læse indhold fra højre mod venstre?", - "pad.settings.fontType": "Skrifttype:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Fastbredde", - "pad.settings.globalView": "Global visning", - "pad.settings.language": "Sprog:", - "pad.importExport.import_export": "Import/Eksport", - "pad.importExport.import": "Uploade en tekstfil eller dokument", - "pad.importExport.importSuccessful": "Vellykket!", - "pad.importExport.export": "Eksporter aktuelle pad som:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Almindelig tekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Du kan kun importere fra almindelig tekst eller HTML-formater. For mere avancerede importfunktioner, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstaller venligst abiword\u003C/a\u003E.", - "pad.modals.connected": "Forbundet.", - "pad.modals.reconnecting": "Genopretter forbindelsen til din pad...", - "pad.modals.forcereconnect": "Gennemtving genoprettelse af forbindelsen", - "pad.modals.userdup": "Åbnet i et andet vindue", - "pad.modals.userdup.explanation": "Denne pad synes at være åbnet i mere end ét browservindue på denne computer.", - "pad.modals.userdup.advice": "Tilslut igen for at bruge dette vindue i stedet.", - "pad.modals.unauth": "Ikke tilladt", - "pad.modals.unauth.explanation": "Dine rettigheder er ændret mens du ser på denne side. Prøv at oprette forbindelsen igen.", - "pad.modals.looping.explanation": "Der er kommunikationsproblemer med synkroniseringsserveren.", - "pad.modals.looping.cause": "Måske tilsluttede du via en inkompatibel firewall eller proxy.", - "pad.modals.initsocketfail": "Serveren er ikke tilgængelig.", - "pad.modals.initsocketfail.explanation": "Kunne ikke oprette forbindelse til synkroniseringsserveren.", - "pad.modals.initsocketfail.cause": "Det skyldes sandsynligvis et problem med din browser eller din internetforbindelse.", - "pad.modals.slowcommit.explanation": "Serveren svarer ikke.", - "pad.modals.slowcommit.cause": "Det kan skyldes problemer med netværksforbindelsen.", - "pad.modals.badChangeset.explanation": "En redigering, du har foretaget, blev klassificeret ulovlig af synkroniseringsserveren.", - "pad.modals.badChangeset.cause": "Dette kan skyldes en forkert konfiguration af serveren eller en anden uventet adfærd. Kontakt venligst service administratoren, hvis du føler, at dette er en fejl. Prøv at oprette forbindelsen igen for at fortsætte med at redigere.", - "pad.modals.corruptPad.explanation": "Den pad du prøver at få adgang til er beskadiget.", - "pad.modals.corruptPad.cause": "Dette kan skyldes en forkert konfiguration af serveren eller en anden uventet adfærd. Kontakt venligst service administratoren.", - "pad.modals.deleted": "Slettet.", - "pad.modals.deleted.explanation": "Denne pad er blevet fjernet.", - "pad.modals.disconnected": "Du har fået afbrudt forbindelsen.", - "pad.modals.disconnected.explanation": "Forbindelsen til serveren blev afbrudt", - "pad.modals.disconnected.cause": "Serveren er muligvis ikke tilgængelig. Informer service administratoren hvis dette fortsætter med at ske.", - "pad.share": "Del denne pad", - "pad.share.readonly": "Skrivebeskyttet", - "pad.share.link": "Link", - "pad.share.emebdcode": "Integrerings URL", - "pad.chat": "Chat", - "pad.chat.title": "Åben chat for denne pad.", - "pad.chat.loadmessages": "Indlæs flere meddelelser", - "timeslider.pageTitle": "{{appTitle}} Timeslider", - "timeslider.toolbar.returnbutton": "Tilbage til pad", - "timeslider.toolbar.authors": "Forfattere:", - "timeslider.toolbar.authorsList": "Ingen forfattere", - "timeslider.toolbar.exportlink.title": "Eksportér", - "timeslider.exportCurrent": "Eksporter aktuelle version som:", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Gemt den {{day}}.{{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januar", - "timeslider.month.february": "februar", - "timeslider.month.march": "marts", - "timeslider.month.april": "april", - "timeslider.month.may": "maj", - "timeslider.month.june": "juni", - "timeslider.month.july": "juli", - "timeslider.month.august": "august", - "timeslider.month.september": "september", - "timeslider.month.october": "oktober", - "timeslider.month.november": "november", - "timeslider.month.december": "december", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: unavngiven forfatter, other: unavngivne forfattere]}", - "pad.savedrevs.marked": "Denne revision er nu markeret som en gemt revision", - "pad.userlist.entername": "Indtast dit navn", - "pad.userlist.unnamed": "ikke-navngivet", - "pad.userlist.guest": "Gæst", - "pad.userlist.deny": "Nægt", - "pad.userlist.approve": "Godkend", - "pad.editbar.clearcolors": "Fjern farver for ophavsmand i hele dokumentet?", - "pad.impexp.importbutton": "Importer nu", - "pad.impexp.importing": "Importerer...", - "pad.impexp.confirmimport": "At importere en fil, vil overskrives den aktuelle pad tekst. Er du sikker på du vil fortsætte?", - "pad.impexp.convertFailed": "Vi var ikke i stand til at importere denne fil. Brug et andet dokument-format eller kopier og sæt ind manuelt", - "pad.impexp.uploadFailed": "Upload mislykkedes, prøv igen", - "pad.impexp.importfailed": "Importen mislykkedes", - "pad.impexp.copypaste": "Venligst kopier og sæt ind", - "pad.impexp.exportdisabled": "Eksportere i {{type}} format er deaktiveret. Kontakt din systemadministrator for mere information." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Christian List", + "Peter Alberti", + "Steenth" + ] + }, + "index.newPad": "Ny Pad", + "index.createOpenPad": "eller opret/åbn en Pad med navnet:", + "pad.toolbar.bold.title": "Fed (Ctrl-B)", + "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", + "pad.toolbar.underline.title": "Understregning (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Gennemstregning (Ctrl+5)", + "pad.toolbar.ol.title": "Sorteret liste (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Usorteret liste (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Indrykning (TAB)", + "pad.toolbar.unindent.title": "Ryk ud (Shift+TAB)", + "pad.toolbar.undo.title": "Fortryd (Ctrl-Z)", + "pad.toolbar.redo.title": "Annuller Fortryd (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Fjern farver for forfatterskab (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Import/eksport fra/til forskellige filformater", + "pad.toolbar.timeslider.title": "Timeslider", + "pad.toolbar.savedRevision.title": "Gem Revision", + "pad.toolbar.settings.title": "Indstillinger", + "pad.toolbar.embed.title": "Del og integrer denne pad", + "pad.toolbar.showusers.title": "Vis brugere på denne pad", + "pad.colorpicker.save": "Gem", + "pad.colorpicker.cancel": "Afbryd", + "pad.loading": "Indlæser ...", + "pad.passwordRequired": "Du skal bruge en adgangskode for at få adgang til denne pad", + "pad.permissionDenied": "Du har ikke tilladelse til at få adgang til denne pad.", + "pad.wrongPassword": "Din adgangskode er forkert", + "pad.settings.padSettings": "Pad indstillinger", + "pad.settings.myView": "Min visning", + "pad.settings.stickychat": "Chat altid på skærmen", + "pad.settings.colorcheck": "Forfatterskabsfarver", + "pad.settings.linenocheck": "Linjenumre", + "pad.settings.rtlcheck": "Læse indhold fra højre mod venstre?", + "pad.settings.fontType": "Skrifttype:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Fastbredde", + "pad.settings.globalView": "Global visning", + "pad.settings.language": "Sprog:", + "pad.importExport.import_export": "Import/Eksport", + "pad.importExport.import": "Uploade en tekstfil eller dokument", + "pad.importExport.importSuccessful": "Vellykket!", + "pad.importExport.export": "Eksporter aktuelle pad som:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Almindelig tekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Du kan kun importere fra almindelig tekst eller HTML-formater. For mere avancerede importfunktioner, installer venligst abiword.", + "pad.modals.connected": "Forbundet.", + "pad.modals.reconnecting": "Genopretter forbindelsen til din pad...", + "pad.modals.forcereconnect": "Gennemtving genoprettelse af forbindelsen", + "pad.modals.userdup": "Åbnet i et andet vindue", + "pad.modals.userdup.explanation": "Denne pad synes at være åbnet i mere end ét browservindue på denne computer.", + "pad.modals.userdup.advice": "Tilslut igen for at bruge dette vindue i stedet.", + "pad.modals.unauth": "Ikke tilladt", + "pad.modals.unauth.explanation": "Dine rettigheder er ændret mens du ser på denne side. Prøv at oprette forbindelsen igen.", + "pad.modals.looping.explanation": "Der er kommunikationsproblemer med synkroniseringsserveren.", + "pad.modals.looping.cause": "Måske tilsluttede du via en inkompatibel firewall eller proxy.", + "pad.modals.initsocketfail": "Serveren er ikke tilgængelig.", + "pad.modals.initsocketfail.explanation": "Kunne ikke oprette forbindelse til synkroniseringsserveren.", + "pad.modals.initsocketfail.cause": "Det skyldes sandsynligvis et problem med din browser eller din internetforbindelse.", + "pad.modals.slowcommit.explanation": "Serveren svarer ikke.", + "pad.modals.slowcommit.cause": "Det kan skyldes problemer med netværksforbindelsen.", + "pad.modals.badChangeset.explanation": "En redigering, du har foretaget, blev klassificeret ulovlig af synkroniseringsserveren.", + "pad.modals.badChangeset.cause": "Dette kan skyldes en forkert konfiguration af serveren eller en anden uventet adfærd. Kontakt venligst service administratoren, hvis du føler, at dette er en fejl. Prøv at oprette forbindelsen igen for at fortsætte med at redigere.", + "pad.modals.corruptPad.explanation": "Den pad du prøver at få adgang til er beskadiget.", + "pad.modals.corruptPad.cause": "Dette kan skyldes en forkert konfiguration af serveren eller en anden uventet adfærd. Kontakt venligst service administratoren.", + "pad.modals.deleted": "Slettet.", + "pad.modals.deleted.explanation": "Denne pad er blevet fjernet.", + "pad.modals.disconnected": "Du har fået afbrudt forbindelsen.", + "pad.modals.disconnected.explanation": "Forbindelsen til serveren blev afbrudt", + "pad.modals.disconnected.cause": "Serveren er muligvis ikke tilgængelig. Informer service administratoren hvis dette fortsætter med at ske.", + "pad.share": "Del denne pad", + "pad.share.readonly": "Skrivebeskyttet", + "pad.share.link": "Link", + "pad.share.emebdcode": "Integrerings URL", + "pad.chat": "Chat", + "pad.chat.title": "Åben chat for denne pad.", + "pad.chat.loadmessages": "Indlæs flere meddelelser", + "timeslider.pageTitle": "{{appTitle}} Timeslider", + "timeslider.toolbar.returnbutton": "Tilbage til pad", + "timeslider.toolbar.authors": "Forfattere:", + "timeslider.toolbar.authorsList": "Ingen forfattere", + "timeslider.toolbar.exportlink.title": "Eksportér", + "timeslider.exportCurrent": "Eksporter aktuelle version som:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Gemt den {{day}}.{{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januar", + "timeslider.month.february": "februar", + "timeslider.month.march": "marts", + "timeslider.month.april": "april", + "timeslider.month.may": "maj", + "timeslider.month.june": "juni", + "timeslider.month.july": "juli", + "timeslider.month.august": "august", + "timeslider.month.september": "september", + "timeslider.month.october": "oktober", + "timeslider.month.november": "november", + "timeslider.month.december": "december", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: unavngiven forfatter, other: unavngivne forfattere]}", + "pad.savedrevs.marked": "Denne revision er nu markeret som en gemt revision", + "pad.userlist.entername": "Indtast dit navn", + "pad.userlist.unnamed": "ikke-navngivet", + "pad.userlist.guest": "Gæst", + "pad.userlist.deny": "Nægt", + "pad.userlist.approve": "Godkend", + "pad.editbar.clearcolors": "Fjern farver for ophavsmand i hele dokumentet?", + "pad.impexp.importbutton": "Importer nu", + "pad.impexp.importing": "Importerer...", + "pad.impexp.confirmimport": "At importere en fil, vil overskrives den aktuelle pad tekst. Er du sikker på du vil fortsætte?", + "pad.impexp.convertFailed": "Vi var ikke i stand til at importere denne fil. Brug et andet dokument-format eller kopier og sæt ind manuelt", + "pad.impexp.uploadFailed": "Upload mislykkedes, prøv igen", + "pad.impexp.importfailed": "Importen mislykkedes", + "pad.impexp.copypaste": "Venligst kopier og sæt ind", + "pad.impexp.exportdisabled": "Eksportere i {{type}} format er deaktiveret. Kontakt din systemadministrator for mere information." +} diff --git a/sources/src/locales/de.json b/sources/src/locales/de.json old mode 100644 new mode 100755 index 8a4acd1..2fd31c1 --- a/sources/src/locales/de.json +++ b/sources/src/locales/de.json @@ -1,125 +1,130 @@ { - "@metadata": { - "authors": [ - "Metalhead64", - "Mklehr", - "Nipsky", - "Wikinaut" - ] - }, - "index.newPad": "Neues Pad", - "index.createOpenPad": "Pad mit folgendem Namen öffnen:", - "pad.toolbar.bold.title": "Fett (Strg-B)", - "pad.toolbar.italic.title": "Kursiv (Strg-I)", - "pad.toolbar.underline.title": "Unterstrichen (Strg-U)", - "pad.toolbar.strikethrough.title": "Durchgestrichen", - "pad.toolbar.ol.title": "Nummerierte Liste", - "pad.toolbar.ul.title": "Ungeordnete Liste", - "pad.toolbar.indent.title": "Einrücken (TAB)", - "pad.toolbar.unindent.title": "Ausrücken (Shift+TAB)", - "pad.toolbar.undo.title": "Rückgängig (Strg-Z)", - "pad.toolbar.redo.title": "Wiederholen (Strg-Y)", - "pad.toolbar.clearAuthorship.title": "Autorenfarben zurücksetzen", - "pad.toolbar.import_export.title": "Import/Export von/zu verschiedenen Dateiformaten", - "pad.toolbar.timeslider.title": "Pad-Versionsgeschichte anzeigen", - "pad.toolbar.savedRevision.title": "Version markieren", - "pad.toolbar.settings.title": "Einstellungen", - "pad.toolbar.embed.title": "Pad teilen oder einbetten", - "pad.toolbar.showusers.title": "Aktuell verbundene Benutzer anzeigen", - "pad.colorpicker.save": "Speichern", - "pad.colorpicker.cancel": "Abbrechen", - "pad.loading": "Laden …", - "pad.passwordRequired": "Sie benötigen ein Passwort, um auf dieses Pad zuzugreifen", - "pad.permissionDenied": "Sie haben keine Berechtigung, um auf dieses Pad zuzugreifen", - "pad.wrongPassword": "Ihr Passwort war falsch", - "pad.settings.padSettings": "Pad Einstellungen", - "pad.settings.myView": "Eigene Ansicht", - "pad.settings.stickychat": "Chat immer anzeigen", - "pad.settings.colorcheck": "Autorenfarben anzeigen", - "pad.settings.linenocheck": "Zeilennummern", - "pad.settings.rtlcheck": "Inhalt von rechts nach links lesen?", - "pad.settings.fontType": "Schriftart:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Gemeinsame Ansicht", - "pad.settings.language": "Sprache:", - "pad.importExport.import_export": "Import/Export", - "pad.importExport.import": "Text-Datei oder Dokument hochladen", - "pad.importExport.importSuccessful": "Erfolgreich!", - "pad.importExport.export": "Aktuelles Pad exportieren als:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Textdatei", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Sie können nur aus Klartext oder HTML-Formaten importieren. Für mehr erweiterte Importfunktionen \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstallieren Sie bitte abiword\u003C/a\u003E.", - "pad.modals.connected": "Verbunden.", - "pad.modals.reconnecting": "Wiederherstellen der Verbindung …", - "pad.modals.forcereconnect": "Erneut Verbinden", - "pad.modals.userdup": "In einem anderen Fenster geöffnet", - "pad.modals.userdup.explanation": "Dieses Pad scheint in mehr als einem Browser-Fenster auf diesem Computer geöffnet zu sein.", - "pad.modals.userdup.advice": "Um dieses Fenster zu benutzen, verbinden Sie bitte erneut.", - "pad.modals.unauth": "Nicht authorisiert.", - "pad.modals.unauth.explanation": "Ihre Zugriffsberechtigung für dieses Pad hat sich zwischenzeitlich geändert. Sie können versuchen das Pad erneut aufzurufen.", - "pad.modals.looping.explanation": "Es gibt Probleme bei der Kommunikation mit dem Pad-Server.", - "pad.modals.looping.cause": "Möglicherweise sind Sie durch eine inkompatible Firewall oder über einen inkompatiblen Proxy mit dem Pad-Server verbunden.", - "pad.modals.initsocketfail": "Pad-Server nicht erreichbar.", - "pad.modals.initsocketfail.explanation": "Es konnte keine Verbindung zum Pad-Server hergestellt werden.", - "pad.modals.initsocketfail.cause": "Dies könnte an Ihrem Browser oder Ihrer Internet-Verbindung liegen.", - "pad.modals.slowcommit.explanation": "Der Pad-Server reagiert nicht.", - "pad.modals.slowcommit.cause": "Dies könnte ein Netzwerkverbindungsproblem sein oder eine momentane Überlastung des Pad-Servers.", - "pad.modals.badChangeset.explanation": "Eine von Ihnen gemachte Änderung wurde vom Pad-Server als ungültig eingestuft.", - "pad.modals.badChangeset.cause": "Dies könnte aufgrund einer falschen Serverkonfiguration oder eines anderen unerwarteten Verhaltens passiert sein. Bitte kontaktiere den Diensteadministrator, falls du glaubst, dass es sich um einen Fehler handelt. Versuche dich erneut zu verbinden, um mit dem Bearbeiten fortzufahren.", - "pad.modals.corruptPad.explanation": "Das Pad, auf das du zugreifen willst, ist beschädigt.", - "pad.modals.corruptPad.cause": "Dies könnte an einer falschen Serverkonfiguration oder eines anderen unerwarteten Verhaltens liegen. Bitte kontaktiere den Diensteadministrator.", - "pad.modals.deleted": "Gelöscht.", - "pad.modals.deleted.explanation": "Dieses Pad wurde entfernt.", - "pad.modals.disconnected": "Verbindung unterbrochen.", - "pad.modals.disconnected.explanation": "Die Verbindung zum Pad-Server wurde unterbrochen.", - "pad.modals.disconnected.cause": "Möglicherweise ist der Pad-Server nicht erreichbar. Bitte benachrichtigen Sie den Dienstadministrator, falls dies weiterhin passiert.", - "pad.share": "Dieses Pad teilen", - "pad.share.readonly": "Eingeschränkter Nur-Lese-Zugriff", - "pad.share.link": "Link", - "pad.share.emebdcode": "In Webseite einbetten", - "pad.chat": "Chat", - "pad.chat.title": "Den Chat dieses Pads öffnen", - "pad.chat.loadmessages": "Weitere Nachrichten laden", - "timeslider.pageTitle": "{{appTitle}} Pad-Versionsgeschichte", - "timeslider.toolbar.returnbutton": "Zurück zum Pad", - "timeslider.toolbar.authors": "Autoren:", - "timeslider.toolbar.authorsList": "keine Autoren", - "timeslider.toolbar.exportlink.title": "Diese Version exportieren", - "timeslider.exportCurrent": "Exportiere diese Version als:", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Gespeichert am {{day}}.{{month}}.{{year}}", - "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januar", - "timeslider.month.february": "Februar", - "timeslider.month.march": "März", - "timeslider.month.april": "April", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Juni", - "timeslider.month.july": "Juli", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "Dezember", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: unbenannter Autor, other: unbenannte Autoren ]}", - "pad.savedrevs.marked": "Diese Version wurde jetzt als gespeicherte Version gekennzeichnet", - "pad.userlist.entername": "Geben Sie Ihren Namen ein", - "pad.userlist.unnamed": "unbenannt", - "pad.userlist.guest": "Gast", - "pad.userlist.deny": "Verweigern", - "pad.userlist.approve": "Genehmigen", - "pad.editbar.clearcolors": "Autorenfarben im gesamten Dokument zurücksetzen?", - "pad.impexp.importbutton": "Jetzt importieren", - "pad.impexp.importing": "Importiere …", - "pad.impexp.confirmimport": "Das Importieren einer Datei überschreibt den aktuellen Text des Pads. Wollen Sie wirklich fortfahren?", - "pad.impexp.convertFailed": "Wir können diese Datei nicht importieren. Bitte verwenden Sie ein anderes Dokumentformat oder übertragen Sie den Text manuell.", - "pad.impexp.uploadFailed": "Der Upload ist fehlgeschlagen. Bitte versuchen Sie es erneut.", - "pad.impexp.importfailed": "Import fehlgeschlagen", - "pad.impexp.copypaste": "Bitte kopieren und einfügen", - "pad.impexp.exportdisabled": "Der Export im {{type}}-Format ist deaktiviert. Für Einzelheiten kontaktieren Sie bitte Ihren Systemadministrator." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Metalhead64", + "Mklehr", + "Nipsky", + "Wikinaut", + "Thargon" + ] + }, + "index.newPad": "Neues Pad", + "index.createOpenPad": "Pad mit folgendem Namen öffnen:", + "pad.toolbar.bold.title": "Fett (Strg-B)", + "pad.toolbar.italic.title": "Kursiv (Strg-I)", + "pad.toolbar.underline.title": "Unterstrichen (Strg-U)", + "pad.toolbar.strikethrough.title": "Durchgestrichen (Strg+5)", + "pad.toolbar.ol.title": "Nummerierte Liste (Strg+Shift+N)", + "pad.toolbar.ul.title": "Ungeordnete Liste (Strg+Shift+L)", + "pad.toolbar.indent.title": "Einrücken (TAB)", + "pad.toolbar.unindent.title": "Ausrücken (Shift+TAB)", + "pad.toolbar.undo.title": "Rückgängig (Strg-Z)", + "pad.toolbar.redo.title": "Wiederholen (Strg-Y)", + "pad.toolbar.clearAuthorship.title": "Autorenfarben zurücksetzen (Strg+Shift+C)", + "pad.toolbar.import_export.title": "Import/Export von/zu verschiedenen Dateiformaten", + "pad.toolbar.timeslider.title": "Pad-Versionsgeschichte anzeigen", + "pad.toolbar.savedRevision.title": "Version markieren", + "pad.toolbar.settings.title": "Einstellungen", + "pad.toolbar.embed.title": "Pad teilen oder einbetten", + "pad.toolbar.showusers.title": "Aktuell verbundene Benutzer anzeigen", + "pad.colorpicker.save": "Speichern", + "pad.colorpicker.cancel": "Abbrechen", + "pad.loading": "Laden …", + "pad.noCookie": "Das Cookie konnte nicht gefunden werden. Bitte erlaube Cookies in deinem Browser!", + "pad.passwordRequired": "Sie benötigen ein Passwort, um auf dieses Pad zuzugreifen", + "pad.permissionDenied": "Sie haben keine Berechtigung, um auf dieses Pad zuzugreifen", + "pad.wrongPassword": "Ihr Passwort war falsch", + "pad.settings.padSettings": "Pad Einstellungen", + "pad.settings.myView": "Eigene Ansicht", + "pad.settings.stickychat": "Chat immer anzeigen", + "pad.settings.chatandusers": "Chat und Benutzer anzeigen", + "pad.settings.colorcheck": "Autorenfarben anzeigen", + "pad.settings.linenocheck": "Zeilennummern", + "pad.settings.rtlcheck": "Inhalt von rechts nach links lesen?", + "pad.settings.fontType": "Schriftart:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Gemeinsame Ansicht", + "pad.settings.language": "Sprache:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.import": "Text-Datei oder Dokument hochladen", + "pad.importExport.importSuccessful": "Erfolgreich!", + "pad.importExport.export": "Aktuelles Pad exportieren als:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Textdatei", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Sie können nur aus Klartext oder HTML-Formaten importieren. Für mehr erweiterte Importfunktionen installieren Sie bitte abiword.", + "pad.modals.connected": "Verbunden.", + "pad.modals.reconnecting": "Wiederherstellen der Verbindung …", + "pad.modals.forcereconnect": "Erneut Verbinden", + "pad.modals.userdup": "In einem anderen Fenster geöffnet", + "pad.modals.userdup.explanation": "Dieses Pad scheint in mehr als einem Browser-Fenster auf diesem Computer geöffnet zu sein.", + "pad.modals.userdup.advice": "Um dieses Fenster zu benutzen, verbinden Sie bitte erneut.", + "pad.modals.unauth": "Nicht authorisiert.", + "pad.modals.unauth.explanation": "Ihre Zugriffsberechtigung für dieses Pad hat sich zwischenzeitlich geändert. Sie können versuchen das Pad erneut aufzurufen.", + "pad.modals.looping.explanation": "Es gibt Probleme bei der Kommunikation mit dem Pad-Server.", + "pad.modals.looping.cause": "Möglicherweise sind Sie durch eine inkompatible Firewall oder über einen inkompatiblen Proxy mit dem Pad-Server verbunden.", + "pad.modals.initsocketfail": "Pad-Server nicht erreichbar.", + "pad.modals.initsocketfail.explanation": "Es konnte keine Verbindung zum Pad-Server hergestellt werden.", + "pad.modals.initsocketfail.cause": "Dies könnte an Ihrem Browser oder Ihrer Internet-Verbindung liegen.", + "pad.modals.slowcommit.explanation": "Der Pad-Server reagiert nicht.", + "pad.modals.slowcommit.cause": "Dies könnte ein Netzwerkverbindungsproblem sein oder eine momentane Überlastung des Pad-Servers.", + "pad.modals.badChangeset.explanation": "Eine von Ihnen gemachte Änderung wurde vom Pad-Server als ungültig eingestuft.", + "pad.modals.badChangeset.cause": "Dies könnte aufgrund einer falschen Serverkonfiguration oder eines anderen unerwarteten Verhaltens passiert sein. Bitte kontaktiere den Diensteadministrator, falls du glaubst, dass es sich um einen Fehler handelt. Versuche dich erneut zu verbinden, um mit dem Bearbeiten fortzufahren.", + "pad.modals.corruptPad.explanation": "Das Pad, auf das du zugreifen willst, ist beschädigt.", + "pad.modals.corruptPad.cause": "Dies könnte an einer falschen Serverkonfiguration oder eines anderen unerwarteten Verhaltens liegen. Bitte kontaktiere den Diensteadministrator.", + "pad.modals.deleted": "Gelöscht.", + "pad.modals.deleted.explanation": "Dieses Pad wurde entfernt.", + "pad.modals.disconnected": "Deine Verbindung wurde getrennt.", + "pad.modals.disconnected.explanation": "Die Verbindung zum Pad-Server wurde unterbrochen.", + "pad.modals.disconnected.cause": "Möglicherweise ist der Pad-Server nicht erreichbar. Bitte benachrichtigen Sie den Dienstadministrator, falls dies weiterhin passiert.", + "pad.share": "Dieses Pad teilen", + "pad.share.readonly": "Eingeschränkter Nur-Lese-Zugriff", + "pad.share.link": "Link", + "pad.share.emebdcode": "In Webseite einbetten", + "pad.chat": "Chat", + "pad.chat.title": "Den Chat dieses Pads öffnen", + "pad.chat.loadmessages": "Weitere Nachrichten laden", + "timeslider.pageTitle": "{{appTitle}} Pad-Versionsgeschichte", + "timeslider.toolbar.returnbutton": "Zurück zum Pad", + "timeslider.toolbar.authors": "Autoren:", + "timeslider.toolbar.authorsList": "keine Autoren", + "timeslider.toolbar.exportlink.title": "Diese Version exportieren", + "timeslider.exportCurrent": "Exportiere diese Version als:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "gespeichert am {{day}}. {{month}} {{year}}", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januar", + "timeslider.month.february": "Februar", + "timeslider.month.march": "März", + "timeslider.month.april": "April", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Juni", + "timeslider.month.july": "Juli", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Dezember", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: unbenannter Autor, other: unbenannte Autoren ]}", + "pad.savedrevs.marked": "Diese Version wurde jetzt als gespeicherte Version gekennzeichnet", + "pad.savedrevs.timeslider": "Du kannst gespeicherte Versionen durch das Besuchen der Pad-Versionsgeschichte ansehen", + "pad.userlist.entername": "Geben Sie Ihren Namen ein", + "pad.userlist.unnamed": "unbenannt", + "pad.userlist.guest": "Gast", + "pad.userlist.deny": "Verweigern", + "pad.userlist.approve": "Genehmigen", + "pad.editbar.clearcolors": "Autorenfarben im gesamten Dokument zurücksetzen?", + "pad.impexp.importbutton": "Jetzt importieren", + "pad.impexp.importing": "Importiere …", + "pad.impexp.confirmimport": "Das Importieren einer Datei überschreibt den aktuellen Text des Pads. Wollen Sie wirklich fortfahren?", + "pad.impexp.convertFailed": "Wir können diese Datei nicht importieren. Bitte verwenden Sie ein anderes Dokumentformat oder übertragen Sie den Text manuell.", + "pad.impexp.padHasData": "Wir konnten diese Datei nicht importieren, da dieses Pad bereits Änderungen enthält. Bitte importiere sie in ein neues Pad.", + "pad.impexp.uploadFailed": "Der Upload ist fehlgeschlagen. Bitte versuchen Sie es erneut.", + "pad.impexp.importfailed": "Import fehlgeschlagen", + "pad.impexp.copypaste": "Bitte kopieren und einfügen", + "pad.impexp.exportdisabled": "Der Export im {{type}}-Format ist deaktiviert. Für Einzelheiten kontaktieren Sie bitte Ihren Systemadministrator." +} diff --git a/sources/src/locales/diq.json b/sources/src/locales/diq.json old mode 100644 new mode 100755 index bdb8e0e..c69d624 --- a/sources/src/locales/diq.json +++ b/sources/src/locales/diq.json @@ -1,90 +1,95 @@ { - "@metadata": { - "authors": [ - "Erdemaslancan", - "Gorizon", - "Mirzali" - ] - }, - "index.newPad": "Pedo newe", - "pad.toolbar.bold.title": "Qalın (Ctrl-B)", - "pad.toolbar.italic.title": "Namıte (Ctrl-I)", - "pad.toolbar.underline.title": "Bınxetın (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Serxetın", - "pad.toolbar.ol.title": "Lista rêzkerdiye", - "pad.toolbar.ul.title": "Lista rêznêkerdiye", - "pad.toolbar.indent.title": "Serrêze (TAB)", - "pad.toolbar.unindent.title": "Teberdayış (Shift+TAB)", - "pad.toolbar.undo.title": "Meke (Ctrl-Z)", - "pad.toolbar.redo.title": "Fına bıke (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Rengê Nuştoğiê Arıstey", - "pad.toolbar.timeslider.title": "Ğızagê zemani", - "pad.toolbar.savedRevision.title": "Revizyoni qeyd ke", - "pad.toolbar.settings.title": "Sazkerdışi", - "pad.toolbar.embed.title": "Na bloknot degusn u bıhesrne", - "pad.toolbar.showusers.title": "Na bloknot de karbera bıasne", - "pad.colorpicker.save": "Qeyd ke", - "pad.colorpicker.cancel": "Bıtexelne", - "pad.loading": "Bar beno...", - "pad.settings.padSettings": "Sazkerdışê Pedi", - "pad.settings.myView": "Asayışê mı", - "pad.settings.colorcheck": "Rengê nuştekariye", - "pad.settings.linenocheck": "Nımreyê xeter", - "pad.settings.fontType": "Babeta nuşti:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Yewca", - "pad.settings.globalView": "Asayışo Global", - "pad.settings.language": "Zıwan:", - "pad.importExport.import_export": "Zeredayış/Teberdayış", - "pad.importExport.importSuccessful": "Mıwafaq biye", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Duz metin", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "Gırediya.", - "pad.modals.unauth": "Selahiyetdar niyo", - "pad.modals.initsocketfail": "Nêresneyêno ciyageyroği.", - "pad.modals.deleted": "Esteriya.", - "pad.modals.deleted.explanation": "Ena ped wedariye", - "pad.share": "Na ped vıla ke", - "pad.share.readonly": "Tenya bıwane", - "pad.share.link": "Gıre", - "pad.share.emebdcode": "Degusnaye URL", - "pad.chat": "Mıhebet", - "pad.chat.title": "Qandê ena ped mıhebet ake.", - "pad.chat.loadmessages": "Dehana zaf mesaci bar keri", - "timeslider.pageTitle": "Ğızagê zemani {{appTitle}}", - "timeslider.toolbar.returnbutton": "Peyser şo ped", - "timeslider.toolbar.authors": "Nuştoği:", - "timeslider.toolbar.authorsList": "Nuştoği çıniyê", - "timeslider.toolbar.exportlink.title": "Teber de", - "timeslider.exportCurrent": "Versiyonê enewki teber de:", - "timeslider.version": "Versiyonê {{version}}", - "timeslider.saved": "{{day}} {{month}}, {{year}} de biyo qeyd", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Çele", - "timeslider.month.february": "Zemherı", - "timeslider.month.march": "Mert", - "timeslider.month.april": "Nisane", - "timeslider.month.may": "Gúlan", - "timeslider.month.june": "Heziran", - "timeslider.month.july": "Temuz", - "timeslider.month.august": "Tebaxe", - "timeslider.month.september": "Keşkelun", - "timeslider.month.october": "Tışrino Verên", - "timeslider.month.november": "Tışrino Peyên", - "timeslider.month.december": "Kanun", - "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) zu: nuştoğ, zewbi: nustoği ]}", - "pad.userlist.entername": "Namey ğo cı kewe", - "pad.userlist.unnamed": "Name nébıyo", - "pad.userlist.guest": "Meyman", - "pad.userlist.deny": "Red ke", - "pad.userlist.approve": "Tesdiq ke", - "pad.editbar.clearcolors": "Wesiqa de renge nuştoğey bıesterneye?", - "pad.impexp.importbutton": "Newke miyan ke", - "pad.impexp.importing": "Deyeno azere...", - "pad.impexp.importfailed": "Zer kerdış mıwafaq nebı", - "pad.impexp.copypaste": "Reca keme kopya pronayış bıkeri" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Erdemaslancan", + "Gorizon", + "Mirzali" + ] + }, + "index.newPad": "Pedo newe", + "pad.toolbar.bold.title": "Qalın (Ctrl-B)", + "pad.toolbar.italic.title": "Namıte (Ctrl-I)", + "pad.toolbar.underline.title": "Bınxetın (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Serxetın (Ctrl+5)", + "pad.toolbar.ol.title": "Lista rêzkerdiye (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Lista rêznêkerdiye (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Serrêze (TAB)", + "pad.toolbar.unindent.title": "Teberdayış (Shift+TAB)", + "pad.toolbar.undo.title": "Meke (Ctrl-Z)", + "pad.toolbar.redo.title": "Fına bıke (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Rengê Nuştoğiê Arıstey (Ctrl+Shift+C)", + "pad.toolbar.timeslider.title": "Ğızagê zemani", + "pad.toolbar.savedRevision.title": "Çımraviyarnayışi qeyd ke", + "pad.toolbar.settings.title": "Sazkerdışi", + "pad.toolbar.embed.title": "Na bloknot degusn u bıhesrne", + "pad.toolbar.showusers.title": "Na bloknot de karbera bıasne", + "pad.colorpicker.save": "Qeyd ke", + "pad.colorpicker.cancel": "Bıtexelne", + "pad.loading": "Bar beno...", + "pad.wrongPassword": "Parola şıma ğeleta", + "pad.settings.padSettings": "Sazkerdışê Pedi", + "pad.settings.myView": "Asayışê mı", + "pad.settings.colorcheck": "Rengê nuştekariye", + "pad.settings.linenocheck": "Nımreyê xeter", + "pad.settings.fontType": "Babeta nuşti:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Yewca", + "pad.settings.globalView": "Asayışo Global", + "pad.settings.language": "Zıwan:", + "pad.importExport.import_export": "Zeredayış/Teberdayış", + "pad.importExport.importSuccessful": "Mıwafaq biye", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Metno pan", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.modals.connected": "Gırediya.", + "pad.modals.forcereconnect": "Mecbur anciya gırê de", + "pad.modals.userdup": "Zewbina pençere de bi a", + "pad.modals.unauth": "Selahiyetdar niyo", + "pad.modals.initsocketfail": "Nêresneyêno ciyageyroği.", + "pad.modals.slowcommit.explanation": "Server cewab nêdano.", + "pad.modals.deleted": "Esteriya.", + "pad.modals.deleted.explanation": "Ena ped wedariye", + "pad.share": "Na ped vıla ke", + "pad.share.readonly": "Tenya bıwane", + "pad.share.link": "Gıre", + "pad.share.emebdcode": "Degusnaye URL", + "pad.chat": "Mıhebet", + "pad.chat.title": "Qandê ena ped mıhebet ake.", + "pad.chat.loadmessages": "Dehana zaf mesaci bar keri", + "timeslider.pageTitle": "Ğızagê zemani {{appTitle}}", + "timeslider.toolbar.returnbutton": "Peyser şo ped", + "timeslider.toolbar.authors": "Nuştoği:", + "timeslider.toolbar.authorsList": "Nuştoği çıniyê", + "timeslider.toolbar.exportlink.title": "Teber de", + "timeslider.exportCurrent": "Versiyonê enewki teber de:", + "timeslider.version": "Versiyonê {{version}}", + "timeslider.saved": "{{day}} {{month}}, {{year}} de biyo qeyd", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Çele", + "timeslider.month.february": "Zemherı", + "timeslider.month.march": "Mert", + "timeslider.month.april": "Nisane", + "timeslider.month.may": "Gúlan", + "timeslider.month.june": "Heziran", + "timeslider.month.july": "Temuz", + "timeslider.month.august": "Tebaxe", + "timeslider.month.september": "Keşkelun", + "timeslider.month.october": "Tışrino Verên", + "timeslider.month.november": "Tışrino Peyên", + "timeslider.month.december": "Kanun", + "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) zu: nuştoğ, zewbi: nustoği ]}", + "pad.userlist.entername": "Nameyê xo cıkewe", + "pad.userlist.unnamed": "Name nébıyo", + "pad.userlist.guest": "Meyman", + "pad.userlist.deny": "Red ke", + "pad.userlist.approve": "Tesdiq ke", + "pad.editbar.clearcolors": "Wesiqa de renge nuştoğey bıesterneye?", + "pad.impexp.importbutton": "Nıka miyan ke", + "pad.impexp.importing": "Deyeno azere...", + "pad.impexp.uploadFailed": "Barkerdış nêbi, kerem ke anciya bıcerebne", + "pad.impexp.importfailed": "Zer kerdış mıwafaq nebı", + "pad.impexp.copypaste": "Reca keme kopya pronayış bıkeri" +} diff --git a/sources/src/locales/dsb.json b/sources/src/locales/dsb.json old mode 100644 new mode 100755 index a3ec479..0600be9 --- a/sources/src/locales/dsb.json +++ b/sources/src/locales/dsb.json @@ -1,122 +1,121 @@ { - "@metadata": { - "authors": [ - "Michawiki" - ] - }, - "index.newPad": "Nowy zapisnik", - "index.createOpenPad": "abo napóraj/wócyń zapisnik z mjenim:", - "pad.toolbar.bold.title": "Tucny (Strg-B)", - "pad.toolbar.italic.title": "Kursiwny (Strg-I)", - "pad.toolbar.underline.title": "Pódšmarnuś (Strg-U)", - "pad.toolbar.strikethrough.title": "Pśešmarnuś", - "pad.toolbar.ol.title": "Numerěrowana lisćina", - "pad.toolbar.ul.title": "Nalicenje", - "pad.toolbar.indent.title": "Zasunuś (TAB)", - "pad.toolbar.unindent.title": "Wusunuś (Umsch+TAB)", - "pad.toolbar.undo.title": "Anulěrowaś (Strg-Z)", - "pad.toolbar.redo.title": "Wóspjetowaś (Strg-Y)", - "pad.toolbar.clearAuthorship.title": "Awtorowe barwy lašowaś", - "pad.toolbar.import_export.title": "Import/Eksport z/do drugich datajowych formatow", - "pad.toolbar.timeslider.title": "Wersijowa historija", - "pad.toolbar.savedRevision.title": "Wersiju składowaś", - "pad.toolbar.settings.title": "Nastajenja", - "pad.toolbar.embed.title": "Toś ten zapisnik źěliś a zasajźiś", - "pad.toolbar.showusers.title": "Wužywarje na toś tom zapisniku pokazaś", - "pad.colorpicker.save": "Składowaś", - "pad.colorpicker.cancel": "Pśetergnuś", - "pad.loading": "Zacytujo se...", - "pad.passwordRequired": "Trjebaš gronidło, aby na toś ten zapisnik pśistup měł", - "pad.permissionDenied": "Njamaš pśistupne pšawo za toś ten zapisnik.", - "pad.wrongPassword": "Twójo gronidło jo wopaki było", - "pad.settings.padSettings": "Nastajenja zapisnika", - "pad.settings.myView": "Mój naglěd", - "pad.settings.stickychat": "Chat pśecej na wobrazowce pokazaś", - "pad.settings.colorcheck": "Awtorowe barwy", - "pad.settings.linenocheck": "Smužkowe numery", - "pad.settings.rtlcheck": "Wopśimjeśe wótpšawa nalěwo cytaś?", - "pad.settings.fontType": "Pismowa družyna:", - "pad.settings.fontType.normal": "Normalny", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Globalny naglěd", - "pad.settings.language": "Rěc:", - "pad.importExport.import_export": "Import/Eksport", - "pad.importExport.import": "Tekstowu dataju abo dokument nagraś", - "pad.importExport.importSuccessful": "Wuspěšny!", - "pad.importExport.export": "Aktualny zapisnik eksportěrowaś ako:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Lutny tekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Móžoš jano z fprmatow lutnego teksta abo z HTML-formata importěrowaś. Za wěcej rozšyrjone importěrowańske funkcije \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstalěruj pšosym Abiword\u003C/a\u003E.", - "pad.modals.connected": "Zwězany.", - "pad.modals.reconnecting": "Zwězujo se znowego z twójim zapisnikom...", - "pad.modals.forcereconnect": "Znowego zwězaś", - "pad.modals.userdup": "W drugem woknje wócynjony", - "pad.modals.userdup.explanation": "Zda se, až toś ten zapisnik jo se we wěcej ako jadnem woknje wobglědowaka na toś tom licadłu wócynił.", - "pad.modals.userdup.advice": "Zwězaj znowego, aby toś to wokno město togo wužywał.", - "pad.modals.unauth": "Njeawtorizěrowany", - "pad.modals.unauth.explanation": "Pśi wobglědowanju toś togo boka su se twóje pšawa změnili. Wopytaj se znowego zwězaś.", - "pad.modals.looping.explanation": "Su komunikaciske problemy ze synchronizěrowańskim serwerom.", - "pad.modals.looping.cause": "Snaź sy pśez njekompatibelnu wognjowu murju abo proksy zwězany.", - "pad.modals.initsocketfail": "Serwer njejo dojśpiwajobny.", - "pad.modals.initsocketfail.explanation": "Zwisk ze synchronizěrowańskim serwerom njejo móžno.", - "pad.modals.initsocketfail.cause": "To jo nejskerjej problem z twójim wobglědowakom abo twójim internetnym zwiskom.", - "pad.modals.slowcommit.explanation": "Serwer njewótegranja.", - "pad.modals.slowcommit.cause": "To by mógło problem seśowego zwiska byś.", - "pad.modals.badChangeset.explanation": "Změna, kótaruž sy pśewjadł, jo se pśez synchronizěrowański serwer ako njedowólonu markěrowała.", - "pad.modals.badChangeset.cause": "To jo se snaź wopacneje serweroweje konfiguracije dla abo drugego njewócakanego zaźaeržanja dla stało. Pšosym staj se ze słužbowym administratorom do zwiska, jolic se mysliš, až to jo zmólka. Wopytaj hyšći raz zwězaś, aby z wobźěłowanim pókšacował.", - "pad.modals.corruptPad.explanation": "Zapisnik, na kótaryž coš pśistup měś, jo wobškóźony.", - "pad.modals.corruptPad.cause": "To jo se snaź wopacneje serweroweje konfiguracije dla abo drugego njewócakanego zaźaržanja dla stało. Pšosym staj se ze słužbowym administratorom do zwiska.", - "pad.modals.deleted": "Wulašowany.", - "pad.modals.deleted.explanation": "Toś ten zapisnik jo se wótpórał.", - "pad.modals.disconnected": "Zwisk jo pśetergnjony.", - "pad.modals.disconnected.explanation": "Zwisk ze serwerom jo se zgubił", - "pad.modals.disconnected.cause": "Serwer njestoj k dispoziciji. Pšosym informěruj słužbowego administratora, jolic to se dalej stawa.", - "pad.share": "Toś ten zapisnik źěliś", - "pad.share.readonly": "Jano cytajobny", - "pad.share.link": "Wótkaz", - "pad.share.emebdcode": "URL zasajźiś", - "pad.chat": "Chat", - "pad.chat.title": "Chat za toś ten zapisnik wócyniś", - "pad.chat.loadmessages": "Dalšne powěsći zacytaś", - "timeslider.pageTitle": "{{appTitle}} - wersijowa historija", - "timeslider.toolbar.returnbutton": "Slědk k zapisnikoju", - "timeslider.toolbar.authors": "Awtory:", - "timeslider.toolbar.authorsList": "Žedne awtory", - "timeslider.toolbar.exportlink.title": "Eksportěrowaś", - "timeslider.exportCurrent": "Aktualnu wersiju eksportěrowaś ako:", - "timeslider.version": "Wersija {{version}}", - "timeslider.saved": "Składowany {{day}}. {{month}} {{year}}", - "timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januara", - "timeslider.month.february": "februara", - "timeslider.month.march": "měrca", - "timeslider.month.april": "apryla", - "timeslider.month.may": "maja", - "timeslider.month.june": "junija", - "timeslider.month.july": "julija", - "timeslider.month.august": "awgusta", - "timeslider.month.september": "septembra", - "timeslider.month.october": "oktobra", - "timeslider.month.november": "nowembra", - "timeslider.month.december": "decembra", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: awtor, two: awtora, few: awtory, other: awtorow ]} bźez mjenja", - "pad.savedrevs.marked": "Toś ta wersija jo se něnto ako składowana wersija markěrowała", - "pad.userlist.entername": "Zapódaj swójo mě", - "pad.userlist.unnamed": "bźez mjenja", - "pad.userlist.guest": "Gósć", - "pad.userlist.deny": "Wótpokazaś", - "pad.userlist.approve": "Pśizwóliś", - "pad.editbar.clearcolors": "Awtorowe barwy w cełem dokumenśe lašowaś?", - "pad.impexp.importbutton": "Něnto importěrowaś", - "pad.impexp.importing": "Importěrujo se...", - "pad.impexp.confirmimport": "Importowanje dataje pśepišo aktualny tekst zapisnika. Coš napšawdu pókšacowaś?", - "pad.impexp.convertFailed": "Njejsmy mógli toś tu dataju importěrowaś. Pšosym wužyj drugi dokumentowy format abo kopěruj manuelnje", - "pad.impexp.uploadFailed": "Nagraśe njejo se raźiło, pšosym wopytaj hyšći raz", - "pad.impexp.importfailed": "Import njejo se raził", - "pad.impexp.copypaste": "Pšosym kopěrowaś a zasajźiś", - "pad.impexp.exportdisabled": "Eksport ako format {{type}} jo znjemóžnjony. Pšosym staj se ze swójim systemowym administratorom za drobnostki do zwiska." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Michawiki" + ] + }, + "index.newPad": "Nowy zapisnik", + "index.createOpenPad": "abo napóraj/wócyń zapisnik z mjenim:", + "pad.toolbar.bold.title": "Tucny (Strg-B)", + "pad.toolbar.italic.title": "Kursiwny (Strg-I)", + "pad.toolbar.underline.title": "Pódšmarnuś (Strg-U)", + "pad.toolbar.strikethrough.title": "Pśešmarnuś", + "pad.toolbar.ol.title": "Numerěrowana lisćina", + "pad.toolbar.ul.title": "Nalicenje", + "pad.toolbar.indent.title": "Zasunuś (TAB)", + "pad.toolbar.unindent.title": "Wusunuś (Umsch+TAB)", + "pad.toolbar.undo.title": "Anulěrowaś (Strg-Z)", + "pad.toolbar.redo.title": "Wóspjetowaś (Strg-Y)", + "pad.toolbar.clearAuthorship.title": "Awtorowe barwy lašowaś", + "pad.toolbar.import_export.title": "Import/Eksport z/do drugich datajowych formatow", + "pad.toolbar.timeslider.title": "Wersijowa historija", + "pad.toolbar.savedRevision.title": "Wersiju składowaś", + "pad.toolbar.settings.title": "Nastajenja", + "pad.toolbar.embed.title": "Toś ten zapisnik źěliś a zasajźiś", + "pad.toolbar.showusers.title": "Wužywarje na toś tom zapisniku pokazaś", + "pad.colorpicker.save": "Składowaś", + "pad.colorpicker.cancel": "Pśetergnuś", + "pad.loading": "Zacytujo se...", + "pad.passwordRequired": "Trjebaš gronidło, aby na toś ten zapisnik pśistup měł", + "pad.permissionDenied": "Njamaš pśistupne pšawo za toś ten zapisnik.", + "pad.wrongPassword": "Twójo gronidło jo wopaki było", + "pad.settings.padSettings": "Nastajenja zapisnika", + "pad.settings.myView": "Mój naglěd", + "pad.settings.stickychat": "Chat pśecej na wobrazowce pokazaś", + "pad.settings.colorcheck": "Awtorowe barwy", + "pad.settings.linenocheck": "Smužkowe numery", + "pad.settings.rtlcheck": "Wopśimjeśe wótpšawa nalěwo cytaś?", + "pad.settings.fontType": "Pismowa družyna:", + "pad.settings.fontType.normal": "Normalny", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Globalny naglěd", + "pad.settings.language": "Rěc:", + "pad.importExport.import_export": "Import/Eksport", + "pad.importExport.import": "Tekstowu dataju abo dokument nagraś", + "pad.importExport.importSuccessful": "Wuspěšny!", + "pad.importExport.export": "Aktualny zapisnik eksportěrowaś ako:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Lutny tekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Móžoš jano z fprmatow lutnego teksta abo z HTML-formata importěrowaś. Za wěcej rozšyrjone importěrowańske funkcije instalěruj pšosym Abiword.", + "pad.modals.connected": "Zwězany.", + "pad.modals.reconnecting": "Zwězujo se znowego z twójim zapisnikom...", + "pad.modals.forcereconnect": "Znowego zwězaś", + "pad.modals.userdup": "W drugem woknje wócynjony", + "pad.modals.userdup.explanation": "Zda se, až toś ten zapisnik jo se we wěcej ako jadnem woknje wobglědowaka na toś tom licadłu wócynił.", + "pad.modals.userdup.advice": "Zwězaj znowego, aby toś to wokno město togo wužywał.", + "pad.modals.unauth": "Njeawtorizěrowany", + "pad.modals.unauth.explanation": "Pśi wobglědowanju toś togo boka su se twóje pšawa změnili. Wopytaj se znowego zwězaś.", + "pad.modals.looping.explanation": "Su komunikaciske problemy ze synchronizěrowańskim serwerom.", + "pad.modals.looping.cause": "Snaź sy pśez njekompatibelnu wognjowu murju abo proksy zwězany.", + "pad.modals.initsocketfail": "Serwer njejo dojśpiwajobny.", + "pad.modals.initsocketfail.explanation": "Zwisk ze synchronizěrowańskim serwerom njejo móžno.", + "pad.modals.initsocketfail.cause": "To jo nejskerjej problem z twójim wobglědowakom abo twójim internetnym zwiskom.", + "pad.modals.slowcommit.explanation": "Serwer njewótegranja.", + "pad.modals.slowcommit.cause": "To by mógło problem seśowego zwiska byś.", + "pad.modals.badChangeset.explanation": "Změna, kótaruž sy pśewjadł, jo se pśez synchronizěrowański serwer ako njedowólonu markěrowała.", + "pad.modals.badChangeset.cause": "To jo se snaź wopacneje serweroweje konfiguracije dla abo drugego njewócakanego zaźaeržanja dla stało. Pšosym staj se ze słužbowym administratorom do zwiska, jolic se mysliš, až to jo zmólka. Wopytaj hyšći raz zwězaś, aby z wobźěłowanim pókšacował.", + "pad.modals.corruptPad.explanation": "Zapisnik, na kótaryž coš pśistup měś, jo wobškóźony.", + "pad.modals.corruptPad.cause": "To jo se snaź wopacneje serweroweje konfiguracije dla abo drugego njewócakanego zaźaržanja dla stało. Pšosym staj se ze słužbowym administratorom do zwiska.", + "pad.modals.deleted": "Wulašowany.", + "pad.modals.deleted.explanation": "Toś ten zapisnik jo se wótpórał.", + "pad.modals.disconnected": "Zwisk jo pśetergnjony.", + "pad.modals.disconnected.explanation": "Zwisk ze serwerom jo se zgubił", + "pad.modals.disconnected.cause": "Serwer njestoj k dispoziciji. Pšosym informěruj słužbowego administratora, jolic to se dalej stawa.", + "pad.share": "Toś ten zapisnik źěliś", + "pad.share.readonly": "Jano cytajobny", + "pad.share.link": "Wótkaz", + "pad.share.emebdcode": "URL zasajźiś", + "pad.chat": "Chat", + "pad.chat.title": "Chat za toś ten zapisnik wócyniś", + "pad.chat.loadmessages": "Dalšne powěsći zacytaś", + "timeslider.pageTitle": "{{appTitle}} - wersijowa historija", + "timeslider.toolbar.returnbutton": "Slědk k zapisnikoju", + "timeslider.toolbar.authors": "Awtory:", + "timeslider.toolbar.authorsList": "Žedne awtory", + "timeslider.toolbar.exportlink.title": "Eksportěrowaś", + "timeslider.exportCurrent": "Aktualnu wersiju eksportěrowaś ako:", + "timeslider.version": "Wersija {{version}}", + "timeslider.saved": "Składowany {{day}}. {{month}} {{year}}", + "timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januara", + "timeslider.month.february": "februara", + "timeslider.month.march": "měrca", + "timeslider.month.april": "apryla", + "timeslider.month.may": "maja", + "timeslider.month.june": "junija", + "timeslider.month.july": "julija", + "timeslider.month.august": "awgusta", + "timeslider.month.september": "septembra", + "timeslider.month.october": "oktobra", + "timeslider.month.november": "nowembra", + "timeslider.month.december": "decembra", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: awtor, two: awtora, few: awtory, other: awtorow ]} bźez mjenja", + "pad.savedrevs.marked": "Toś ta wersija jo se něnto ako składowana wersija markěrowała", + "pad.userlist.entername": "Zapódaj swójo mě", + "pad.userlist.unnamed": "bźez mjenja", + "pad.userlist.guest": "Gósć", + "pad.userlist.deny": "Wótpokazaś", + "pad.userlist.approve": "Pśizwóliś", + "pad.editbar.clearcolors": "Awtorowe barwy w cełem dokumenśe lašowaś?", + "pad.impexp.importbutton": "Něnto importěrowaś", + "pad.impexp.importing": "Importěrujo se...", + "pad.impexp.confirmimport": "Importowanje dataje pśepišo aktualny tekst zapisnika. Coš napšawdu pókšacowaś?", + "pad.impexp.convertFailed": "Njejsmy mógli toś tu dataju importěrowaś. Pšosym wužyj drugi dokumentowy format abo kopěruj manuelnje", + "pad.impexp.uploadFailed": "Nagraśe njejo se raźiło, pšosym wopytaj hyšći raz", + "pad.impexp.importfailed": "Import njejo se raził", + "pad.impexp.copypaste": "Pšosym kopěrowaś a zasajźiś", + "pad.impexp.exportdisabled": "Eksport ako format {{type}} jo znjemóžnjony. Pšosym staj se ze swójim systemowym administratorom za drobnostki do zwiska." +} diff --git a/sources/src/locales/el.json b/sources/src/locales/el.json old mode 100644 new mode 100755 index 2de3222..f18c71e --- a/sources/src/locales/el.json +++ b/sources/src/locales/el.json @@ -1,126 +1,130 @@ { - "@metadata": { - "authors": [ - "Evropi", - "Geraki", - "Glavkos", - "Monopatis", - "Protnet" - ] - }, - "index.newPad": "Νέο Pad", - "index.createOpenPad": "ή δημιουργία/άνοιγμα ενός Pad με όνομα:", - "pad.toolbar.bold.title": "Έντονα (Ctrl-B)", - "pad.toolbar.italic.title": "Πλάγια (Ctrl-I)", - "pad.toolbar.underline.title": "Υπογράμμιση (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Διακριτή διαγραφή", - "pad.toolbar.ol.title": "Ταξινομημένη λίστα", - "pad.toolbar.ul.title": "Λίστα χωρίς σειρά", - "pad.toolbar.indent.title": "Εισαγωγή εσοχής (TAB)", - "pad.toolbar.unindent.title": "Αφαίρεση εσοχής (Shift+TAB)", - "pad.toolbar.undo.title": "Αναίρεση (Ctrl-Z)", - "pad.toolbar.redo.title": "Επανάληψη (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Εκκαθάριση των χρωμάτων των συντακτών", - "pad.toolbar.import_export.title": "Εισαγωγή/Εξαγωγή από/σε διαφορετικούς τύπους αρχείων", - "pad.toolbar.timeslider.title": "Χρονοδιάγραμμα", - "pad.toolbar.savedRevision.title": "Αποθήκευση Αναθεώρησης", - "pad.toolbar.settings.title": "Ρυθμίσεις", - "pad.toolbar.embed.title": "Διαμοίραση και Ενσωμάτωση αυτού του pad", - "pad.toolbar.showusers.title": "Εμφάνιση των χρηστών αυτού του pad", - "pad.colorpicker.save": "Αποθήκευση", - "pad.colorpicker.cancel": "Άκυρο", - "pad.loading": "Φόρτωση...", - "pad.passwordRequired": "Χρειάζεστε κωδικό πρόσβασης για πρόσβαση σε αυτό το pad", - "pad.permissionDenied": "Δεν έχετε δικαίωμα πρόσβασης σε αυτό το pad", - "pad.wrongPassword": "Ο κωδικός σας ήταν λανθασμένος", - "pad.settings.padSettings": "Ρυθμίσεις Pad", - "pad.settings.myView": "Η προβολή μου", - "pad.settings.stickychat": "Να είναι πάντα ορατή η συνομιλία", - "pad.settings.colorcheck": "Χρώματα συντάκτη", - "pad.settings.linenocheck": "Αριθμοί γραμμών", - "pad.settings.rtlcheck": "Να διαβάζεται το περιεχόμενο από δεξιά προς τα αριστερά;", - "pad.settings.fontType": "Τύπος γραμματοσειράς:", - "pad.settings.fontType.normal": "Κανονική", - "pad.settings.fontType.monospaced": "Καθορισμένου πλάτους", - "pad.settings.globalView": "Καθολική Προβολή", - "pad.settings.language": "Γλώσσα:", - "pad.importExport.import_export": "Εισαγωγή/Εξαγωγή", - "pad.importExport.import": "Αποστολή οποιουδήποτε αρχείου κειμένου ή εγγράφου", - "pad.importExport.importSuccessful": "Επιτυχής!", - "pad.importExport.export": "Εξαγωγή τρέχοντος pad ως:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Απλό κείμενο", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Μπορείτε να κάνετε εισαγωγή απλού κειμένου ή μορφής html. Για πιο προηγμένες δυνατότητες εισαγωγής παρακαλώ \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eεγκαταστήστε το abiword\u003C/a\u003E.", - "pad.modals.connected": "Συνδεμένοι.", - "pad.modals.reconnecting": "Επανασύνδεση στο pad σας...", - "pad.modals.forcereconnect": "Επιβολή επανασύνδεσης", - "pad.modals.userdup": "Ανοιγμένο σε άλλο παράθυρο", - "pad.modals.userdup.explanation": "Αυτό το pad φαίνεται να είναι ανοιχτό σε περισσότερα από ένα παράθυρο του προγράμματος περιήγησης σε αυτόν τον υπολογιστή.", - "pad.modals.userdup.advice": "Επανασύνδεση για να χρησιμοποιήσετε αυτό το παράθυρο.", - "pad.modals.unauth": "Δεν επιτρέπεται", - "pad.modals.unauth.explanation": "Τα δικαιώματά σας άλλαξαν όσο βλέπατε αυτήν τη σελίδα. Δοκιμάστε να επανασυνδεθείτε.", - "pad.modals.looping.explanation": "Υπάρχουν προβλήματα επικοινωνίας με τον διακομιστή συγχρονισμού.", - "pad.modals.looping.cause": "Ίσως συνδεθήκατε μέσω ενός μη συμβατού τείχους προστασίας ή διακομιστή μεσολάβησης.", - "pad.modals.initsocketfail": "Αδύνατη ή επικοινωνία με τον διακομιστή.", - "pad.modals.initsocketfail.explanation": "Δεν ήταν δυνατή η σύνδεση με τον διακομιστή συγχρονισμού.", - "pad.modals.initsocketfail.cause": "Αυτό οφείλεται πιθανώς σε πρόβλημα με το πρόγραμμα περιήγησης ή της σύνδεσής σας στο διαδίκτυο.", - "pad.modals.slowcommit.explanation": "Ο διακομιστής δεν αποκρίνεται.", - "pad.modals.slowcommit.cause": "Αυτό μπορεί να οφείλεται σε προβλήματα σύνδεσης δικτύου.", - "pad.modals.badChangeset.explanation": "Μια επεξεργασία που κάνατε χαρακτηρίστηκε ως παράνομη από τον διακομιστή συγχρονισμού.", - "pad.modals.badChangeset.cause": "Αυτό μπορεί να οφείλεται σε ένα λάθος στη ρύθμιση του διακομιστή ή κάποια άλλη απρόβλεπτη συμπεριφορά. Παρακαλώ επικοινωνήστε με τον διαχειριστή της υπηρεσίας, εάν πιστεύετε πως αυτό οφείλεται σε σφάλμα. Δοκιμάστε να επανασυνδεθείτε για να συνεχίσετε την επεξεργασία.", - "pad.modals.corruptPad.explanation": "Το pad που προσπαθείτε να επισκεφτείτε είναι κατεστραμμένο.", - "pad.modals.corruptPad.cause": "Αυτό μπορεί να οφείλεται σε ένα λάθος στη ρύθμιση του διακομιστή ή κάποια άλλη απρόβλεπτη συμπεριφορά. Παρακαλώ επικοινωνήστε με τον διαχειριστή της υπηρεσίας.", - "pad.modals.deleted": "Διεγράφη.", - "pad.modals.deleted.explanation": "Αυτό το pad έχει καταργηθεί.", - "pad.modals.disconnected": "Έχετε αποσυνδεθεί.", - "pad.modals.disconnected.explanation": "Χάθηκε η σύνδεση με τον διακομιστή", - "pad.modals.disconnected.cause": "Ο διακομιστής μπορεί να μην είναι διαθέσιμος. Παρακαλούμε ειδοποιήστε τον διαχειριστή της υπηρεσίας εάν εξακολουθεί να συμβαίνει αυτό.", - "pad.share": "Μοιραστείτε αυτό το pad", - "pad.share.readonly": "Μόνο για ανάγνωση", - "pad.share.link": "Σύνδεσμος", - "pad.share.emebdcode": "URL ενσωμάτωσης", - "pad.chat": "Συνομιλία", - "pad.chat.title": "Άνοιγμα της συνομιλίας για αυτό το pad.", - "pad.chat.loadmessages": "Φόρτωση περισσότερων μηνυμάτων", - "timeslider.pageTitle": "{{appTitle}} Χρονοδιάγραμμα", - "timeslider.toolbar.returnbutton": "Επιστροφή στο pad", - "timeslider.toolbar.authors": "Συντάκτες:", - "timeslider.toolbar.authorsList": "Κανένας Συντάκτης", - "timeslider.toolbar.exportlink.title": "Εξαγωγή", - "timeslider.exportCurrent": "Εξαγωγή τρέχουσας έκδοσης ως:", - "timeslider.version": "Έκδοση {{version}}", - "timeslider.saved": "Αποθηκεύτηκε στις {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Ιανουαρίου", - "timeslider.month.february": "Φεβρουαρίου", - "timeslider.month.march": "Μαρτίου", - "timeslider.month.april": "Απριλίου", - "timeslider.month.may": "Μαΐου", - "timeslider.month.june": "Ιουνίου", - "timeslider.month.july": "Ιουλίου", - "timeslider.month.august": "Αυγούστου", - "timeslider.month.september": "Σεπτεμβρίου", - "timeslider.month.october": "Οκτωβρίου", - "timeslider.month.november": "Νοεμβρίου", - "timeslider.month.december": "Δεκεμβρίου", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: ανώνυμος συντάκτης, other: ανώνυμοι συντάκτες]}", - "pad.savedrevs.marked": "Αυτή η έκδοση επισημάνθηκε ως αποθηκευμένη έκδοση", - "pad.userlist.entername": "Εισάγετε το όνομά σας", - "pad.userlist.unnamed": "ανώνυμος", - "pad.userlist.guest": "Επισκέπτης", - "pad.userlist.deny": "Άρνηση", - "pad.userlist.approve": "Έγκριση", - "pad.editbar.clearcolors": "Να γίνει εκκαθάριση χρωμάτων σύνταξης σε ολόκληρο το έγγραφο;", - "pad.impexp.importbutton": "Εισαγωγή Τώρα", - "pad.impexp.importing": "Εισάγεται...", - "pad.impexp.confirmimport": "Η εισαγωγή ενός αρχείου θα αντικαταστήσει το κείμενο του pad. Είστε βέβαιοι ότι θέλετε να συνεχίσετε;", - "pad.impexp.convertFailed": "Δεν καταφέραμε να εισάγουμε αυτό το αρχείο. Παρακαλώ χρησιμοποιήστε διαφορετικό τύπο αρχείου ή αντιγράψτε και επικολλήστε χειροκίνητα", - "pad.impexp.uploadFailed": "Η αποστολή απέτυχε, παρακαλώ προσπαθήστε ξανά", - "pad.impexp.importfailed": "Η εισαγωγή απέτυχε", - "pad.impexp.copypaste": "Παρακαλώ αντιγράψτε και επικολλήστε", - "pad.impexp.exportdisabled": "Η εξαγωγή σε μορφή {{type}} έχει απενεργοποιηθεί. Επικοινωνήστε με τον διαχειριστή του συστήματός σας για λεπτομέρειες." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Evropi", + "Geraki", + "Glavkos", + "Monopatis", + "Protnet" + ] + }, + "index.newPad": "Νέο Pad", + "index.createOpenPad": "ή δημιουργία/άνοιγμα ενός Pad με όνομα:", + "pad.toolbar.bold.title": "Έντονη (Ctrl-B)", + "pad.toolbar.italic.title": "Πλάγια (Ctrl-I)", + "pad.toolbar.underline.title": "Υπογράμμιση (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Διακριτή διαγραφή (Ctrl+5)", + "pad.toolbar.ol.title": "Ταξινομημένη λίστα (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Λίστα χωρίς σειρά (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Αριστερά εσοχή (TAB)", + "pad.toolbar.unindent.title": "Δεξιά εσοχή (Shift+TAB)", + "pad.toolbar.undo.title": "Αναίρεση (Ctrl-Z)", + "pad.toolbar.redo.title": "Επανάληψη (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Εκκαθάριση των χρωμάτων των συντακτών (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Εισαγωγή/Εξαγωγή από/σε διαφορετικούς τύπους αρχείων", + "pad.toolbar.timeslider.title": "Χρονοδιάγραμμα", + "pad.toolbar.savedRevision.title": "Αποθήκευση Αναθεώρησης", + "pad.toolbar.settings.title": "Ρυθμίσεις", + "pad.toolbar.embed.title": "Διαμοίραση και Ενσωμάτωση αυτού του pad", + "pad.toolbar.showusers.title": "Εμφάνιση των χρηστών αυτού του pad", + "pad.colorpicker.save": "Αποθήκευση", + "pad.colorpicker.cancel": "Άκυρο", + "pad.loading": "Φόρτωση...", + "pad.noCookie": "Το cookie δεν βρέθηκε. Παρακαλώ επιτρέψτε τα cookies στον περιηγητή σας!", + "pad.passwordRequired": "Χρειάζεστε κωδικό πρόσβασης για πρόσβαση σε αυτό το pad", + "pad.permissionDenied": "Δεν έχετε δικαίωμα πρόσβασης σε αυτό το pad", + "pad.wrongPassword": "Ο κωδικός σας ήταν λανθασμένος", + "pad.settings.padSettings": "Ρυθμίσεις Pad", + "pad.settings.myView": "Η προβολή μου", + "pad.settings.stickychat": "Να είναι πάντα ορατή η συνομιλία", + "pad.settings.chatandusers": "Εμφάνιση Συνομιλίας και Χρηστών", + "pad.settings.colorcheck": "Χρώματα συντάκτη", + "pad.settings.linenocheck": "Αριθμοί γραμμών", + "pad.settings.rtlcheck": "Διαβάζεται το περιεχόμενο από δεξιά προς τα αριστερά;", + "pad.settings.fontType": "Τύπος γραμματοσειράς:", + "pad.settings.fontType.normal": "Κανονική", + "pad.settings.fontType.monospaced": "Καθορισμένου πλάτους", + "pad.settings.globalView": "Καθολική Προβολή", + "pad.settings.language": "Γλώσσα:", + "pad.importExport.import_export": "Εισαγωγή/Εξαγωγή", + "pad.importExport.import": "Αποστολή οποιουδήποτε αρχείου κειμένου ή εγγράφου", + "pad.importExport.importSuccessful": "Επιτυχής!", + "pad.importExport.export": "Εξαγωγή τρέχοντος pad ως:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Απλό κείμενο", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Μορφή Open Document)", + "pad.importExport.abiword.innerHTML": "Μπορείτε να κάνετε εισαγωγή απλού κειμένου ή μορφής html. Για πιο προηγμένες δυνατότητες εισαγωγής παρακαλώ εγκαταστήστε το abiword.", + "pad.modals.connected": "Συνδεμένοι.", + "pad.modals.reconnecting": "Επανασύνδεση στο pad σας...", + "pad.modals.forcereconnect": "Επιβολή επανασύνδεσης", + "pad.modals.userdup": "Ανοιγμένο σε άλλο παράθυρο", + "pad.modals.userdup.explanation": "Αυτό το pad φαίνεται να είναι ανοιχτό σε περισσότερα από ένα παράθυρο του προγράμματος περιήγησης σε αυτόν τον υπολογιστή.", + "pad.modals.userdup.advice": "Επανασυνδεθείτε για να χρησιμοποιήσετε αυτό το παράθυρο.", + "pad.modals.unauth": "Δεν επιτρέπεται", + "pad.modals.unauth.explanation": "Τα δικαιώματά σας άλλαξαν όσο βλέπατε αυτήν τη σελίδα. Δοκιμάστε να επανασυνδεθείτε.", + "pad.modals.looping.explanation": "Υπάρχουν προβλήματα επικοινωνίας με τον διακομιστή συγχρονισμού.", + "pad.modals.looping.cause": "Ίσως συνδεθήκατε μέσω ενός μη συμβατού τείχους προστασίας ή διακομιστή μεσολάβησης.", + "pad.modals.initsocketfail": "Αδύνατη ή επικοινωνία με τον διακομιστή.", + "pad.modals.initsocketfail.explanation": "Δεν ήταν δυνατή η σύνδεση με τον διακομιστή συγχρονισμού.", + "pad.modals.initsocketfail.cause": "Αυτό οφείλεται πιθανώς σε πρόβλημα με το πρόγραμμα περιήγησης ή της σύνδεσής σας στο διαδίκτυο.", + "pad.modals.slowcommit.explanation": "Ο διακομιστής δεν αποκρίνεται.", + "pad.modals.slowcommit.cause": "Αυτό μπορεί να οφείλεται σε προβλήματα σύνδεσης δικτύου.", + "pad.modals.badChangeset.explanation": "Μια επεξεργασία που κάνατε χαρακτηρίστηκε ως παράνομη από τον διακομιστή συγχρονισμού.", + "pad.modals.badChangeset.cause": "Αυτό μπορεί να οφείλεται σε ένα λάθος στη ρύθμιση του διακομιστή ή κάποια άλλη απρόβλεπτη συμπεριφορά. Παρακαλώ επικοινωνήστε με τον διαχειριστή της υπηρεσίας, εάν πιστεύετε πως αυτό οφείλεται σε σφάλμα. Δοκιμάστε να επανασυνδεθείτε για να συνεχίσετε την επεξεργασία.", + "pad.modals.corruptPad.explanation": "Το pad που προσπαθείτε να επισκεφτείτε είναι κατεστραμμένο.", + "pad.modals.corruptPad.cause": "Αυτό μπορεί να οφείλεται σε ένα λάθος στη ρύθμιση του διακομιστή ή κάποια άλλη απρόβλεπτη συμπεριφορά. Παρακαλώ επικοινωνήστε με τον διαχειριστή της υπηρεσίας.", + "pad.modals.deleted": "Διεγράφη.", + "pad.modals.deleted.explanation": "Αυτό το pad έχει καταργηθεί.", + "pad.modals.disconnected": "Είστε αποσυνδεδεμένοι.", + "pad.modals.disconnected.explanation": "Χάθηκε η σύνδεση με τον διακομιστή", + "pad.modals.disconnected.cause": "Ο διακομιστής μπορεί να μην είναι διαθέσιμος. Παρακαλούμε ειδοποιήστε τον διαχειριστή της υπηρεσίας εάν εξακολουθεί να συμβαίνει αυτό.", + "pad.share": "Μοιραστείτε αυτό το pad", + "pad.share.readonly": "Μόνο για ανάγνωση", + "pad.share.link": "Σύνδεσμος", + "pad.share.emebdcode": "URL ενσωμάτωσης", + "pad.chat": "Συνομιλία", + "pad.chat.title": "Άνοιγμα της συνομιλίας για αυτό το pad.", + "pad.chat.loadmessages": "Φόρτωση περισσότερων μηνυμάτων", + "timeslider.pageTitle": "{{appTitle}} Χρονοδιάγραμμα", + "timeslider.toolbar.returnbutton": "Επιστροφή στο pad", + "timeslider.toolbar.authors": "Συντάκτες:", + "timeslider.toolbar.authorsList": "Κανένας Συντάκτης", + "timeslider.toolbar.exportlink.title": "Εξαγωγή", + "timeslider.exportCurrent": "Εξαγωγή τρέχουσας έκδοσης ως:", + "timeslider.version": "Έκδοση {{version}}", + "timeslider.saved": "Αποθηκεύτηκε στις {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Ιανουαρίου", + "timeslider.month.february": "Φεβρουαρίου", + "timeslider.month.march": "Μαρτίου", + "timeslider.month.april": "Απριλίου", + "timeslider.month.may": "Μαΐου", + "timeslider.month.june": "Ιουνίου", + "timeslider.month.july": "Ιουλίου", + "timeslider.month.august": "Αυγούστου", + "timeslider.month.september": "Σεπτεμβρίου", + "timeslider.month.october": "Οκτωβρίου", + "timeslider.month.november": "Νοεμβρίου", + "timeslider.month.december": "Δεκεμβρίου", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: ανώνυμος συντάκτης, other: ανώνυμοι συντάκτες]}", + "pad.savedrevs.marked": "Αυτή η έκδοση επισημάνθηκε ως αποθηκευμένη έκδοση", + "pad.savedrevs.timeslider": "Μπορείτε να δείτε αποθηκευμένες αναθεωρήσεις στο χρονοδιάγραμμα", + "pad.userlist.entername": "Εισάγετε το όνομά σας", + "pad.userlist.unnamed": "ανώνυμος", + "pad.userlist.guest": "Επισκέπτης", + "pad.userlist.deny": "Άρνηση", + "pad.userlist.approve": "Έγκριση", + "pad.editbar.clearcolors": "Να γίνει εκκαθάριση χρωμάτων σύνταξης σε ολόκληρο το έγγραφο;", + "pad.impexp.importbutton": "Εισαγωγή Τώρα", + "pad.impexp.importing": "Εισάγεται...", + "pad.impexp.confirmimport": "Η εισαγωγή ενός αρχείου θα αντικαταστήσει το κείμενο του pad. Είστε βέβαιοι ότι θέλετε να συνεχίσετε;", + "pad.impexp.convertFailed": "Δεν καταφέραμε να εισάγουμε αυτό το αρχείο. Παρακαλώ χρησιμοποιήστε διαφορετικό τύπο αρχείου ή αντιγράψτε και επικολλήστε χειροκίνητα", + "pad.impexp.padHasData": "Δεν μπορέσαμε να εισάγουμε το αρχείο επειδή το Pad είχε ήδη αλλαγές. Παρακαλούμε εισαγάγετε το αρχείο σε νέο pad", + "pad.impexp.uploadFailed": "Η αποστολή απέτυχε, παρακαλώ προσπαθήστε ξανά", + "pad.impexp.importfailed": "Η εισαγωγή απέτυχε", + "pad.impexp.copypaste": "Παρακαλώ αντιγράψτε και επικολλήστε", + "pad.impexp.exportdisabled": "Η εξαγωγή σε μορφή {{type}} έχει απενεργοποιηθεί. Επικοινωνήστε με τον διαχειριστή του συστήματός σας για λεπτομέρειες." +} diff --git a/sources/src/locales/en-gb.json b/sources/src/locales/en-gb.json new file mode 100755 index 0000000..258b433 --- /dev/null +++ b/sources/src/locales/en-gb.json @@ -0,0 +1,127 @@ +{ + "@metadata": { + "authors": [ + "Chase me ladies, I'm the Cavalry", + "Shirayuki" + ] + }, + "index.newPad": "New Pad", + "index.createOpenPad": "or create/open a Pad with the name:", + "pad.toolbar.bold.title": "Bold (Ctrl+B)", + "pad.toolbar.italic.title": "Italic (Ctrl+I)", + "pad.toolbar.underline.title": "Underline (Ctrl+U)", + "pad.toolbar.strikethrough.title": "Strikethrough (Ctrl+5)", + "pad.toolbar.ol.title": "Ordered list (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Unordered List (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Indent (Tab)", + "pad.toolbar.unindent.title": "Outdent (Shift+Tab)", + "pad.toolbar.undo.title": "Undo (Ctrl+Z)", + "pad.toolbar.redo.title": "Redo (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Clear Authorship Colours (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Import/Export from/to different file formats", + "pad.toolbar.timeslider.title": "Timeslider", + "pad.toolbar.savedRevision.title": "Save Revision", + "pad.toolbar.settings.title": "Settings", + "pad.toolbar.embed.title": "Share and Embed this pad", + "pad.toolbar.showusers.title": "Show the users on this pad", + "pad.colorpicker.save": "Save", + "pad.colorpicker.cancel": "Cancel", + "pad.loading": "Loading...", + "pad.noCookie": "Cookie could not be found. Please allow cookies in your browser!", + "pad.passwordRequired": "You need a password to access this pad", + "pad.permissionDenied": "You do not have permission to access this pad", + "pad.wrongPassword": "Your password was wrong", + "pad.settings.padSettings": "Pad Settings", + "pad.settings.myView": "My View", + "pad.settings.stickychat": "Chat always on screen", + "pad.settings.chatandusers": "Show Chat and Users", + "pad.settings.colorcheck": "Authorship colours", + "pad.settings.linenocheck": "Line numbers", + "pad.settings.rtlcheck": "Read content from right to left?", + "pad.settings.fontType": "Font type:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Global View", + "pad.settings.language": "Language:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.import": "Upload any text file or document", + "pad.importExport.importSuccessful": "Successful!", + "pad.importExport.export": "Export current pad as:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Plain text", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "You only can import from plain text or HTML formats. For more advanced import features please install abiword.", + "pad.modals.connected": "Connected.", + "pad.modals.reconnecting": "Reconnecting to your pad..", + "pad.modals.forcereconnect": "Force reconnect", + "pad.modals.userdup": "Opened in another window", + "pad.modals.userdup.explanation": "This pad seems to be opened in more than one browser window on this computer.", + "pad.modals.userdup.advice": "Reconnect to use this window instead.", + "pad.modals.unauth": "Not authorised", + "pad.modals.unauth.explanation": "Your permissions have changed while viewing this page. Try to reconnect.", + "pad.modals.looping.explanation": "There are communication problems with the synchronisation server.", + "pad.modals.looping.cause": "Perhaps you connected through an incompatible firewall or proxy.", + "pad.modals.initsocketfail": "Server is unreachable.", + "pad.modals.initsocketfail.explanation": "Couldn't connect to the synchronisation server.", + "pad.modals.initsocketfail.cause": "This is probably due to a problem with your browser or your internet connection.", + "pad.modals.slowcommit.explanation": "The server is not responding.", + "pad.modals.slowcommit.cause": "This could be due to problems with network connectivity.", + "pad.modals.badChangeset.explanation": "An edit you have made was classified illegal by the synchronisation server.", + "pad.modals.badChangeset.cause": "This could be due to a wrong server configuration or some other unexpected behaviour. Please contact the service administrator, if you feel this is an error. Try to reconnect in order to continue editing.", + "pad.modals.corruptPad.explanation": "The pad you are trying to access is corrupt.", + "pad.modals.corruptPad.cause": "This may be due to a wrong server configuration or some other unexpected behaviour. Please contact the service administrator.", + "pad.modals.deleted": "Deleted.", + "pad.modals.deleted.explanation": "This pad has been removed.", + "pad.modals.disconnected": "You have been disconnected.", + "pad.modals.disconnected.explanation": "The connection to the server was lost", + "pad.modals.disconnected.cause": "The server may be unavailable. Please notify the service administrator if this continues to happen.", + "pad.share": "Share this pad", + "pad.share.readonly": "Read only", + "pad.share.link": "Link", + "pad.share.emebdcode": "Embed URL", + "pad.chat": "Chat", + "pad.chat.title": "Open the chat for this pad.", + "pad.chat.loadmessages": "Load more messages", + "timeslider.pageTitle": "{{appTitle}} Timeslider", + "timeslider.toolbar.returnbutton": "Return to pad", + "timeslider.toolbar.authors": "Authors:", + "timeslider.toolbar.authorsList": "No Authors", + "timeslider.toolbar.exportlink.title": "Export", + "timeslider.exportCurrent": "Export current version as:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Saved {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "January", + "timeslider.month.february": "February", + "timeslider.month.march": "March", + "timeslider.month.april": "April", + "timeslider.month.may": "May", + "timeslider.month.june": "June", + "timeslider.month.july": "July", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "October", + "timeslider.month.november": "November", + "timeslider.month.december": "December", + "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) one: author, other: authors ]}", + "pad.savedrevs.marked": "This revision is now marked as a saved revision", + "pad.savedrevs.timeslider": "You can see saved revisions by visiting the timeslider", + "pad.userlist.entername": "Enter your name", + "pad.userlist.unnamed": "unnamed", + "pad.userlist.guest": "Guest", + "pad.userlist.deny": "Deny", + "pad.userlist.approve": "Approve", + "pad.editbar.clearcolors": "Clear authorship colours on entire document?", + "pad.impexp.importbutton": "Import Now", + "pad.impexp.importing": "Importing...", + "pad.impexp.confirmimport": "Importing a file will overwrite the current text of the pad. Are you sure you want to proceed?", + "pad.impexp.convertFailed": "We were not able to import this file. Please use a different document format or copy & paste manually", + "pad.impexp.padHasData": "We were not able to import this file because this Pad has already had changes, please import to a new pad", + "pad.impexp.uploadFailed": "The upload failed, please try again", + "pad.impexp.importfailed": "Import failed", + "pad.impexp.copypaste": "Please copy & paste", + "pad.impexp.exportdisabled": "Exporting as {{type}} format is disabled. Please contact your system administrator for details." +} diff --git a/sources/src/locales/en.json b/sources/src/locales/en.json old mode 100644 new mode 100755 index 01d3ff4..3e16c5d --- a/sources/src/locales/en.json +++ b/sources/src/locales/en.json @@ -2,17 +2,17 @@ "index.newPad": "New Pad", "index.createOpenPad": "or create/open a Pad with the name:", - "pad.toolbar.bold.title": "Bold (Ctrl-B)", - "pad.toolbar.italic.title": "Italic (Ctrl-I)", - "pad.toolbar.underline.title": "Underline (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Strikethrough", - "pad.toolbar.ol.title": "Ordered list", - "pad.toolbar.ul.title": "Unordered List", + "pad.toolbar.bold.title": "Bold (Ctrl+B)", + "pad.toolbar.italic.title": "Italic (Ctrl+I)", + "pad.toolbar.underline.title": "Underline (Ctrl+U)", + "pad.toolbar.strikethrough.title": "Strikethrough (Ctrl+5)", + "pad.toolbar.ol.title": "Ordered list (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Unordered List (Ctrl+Shift+L)", "pad.toolbar.indent.title": "Indent (TAB)", "pad.toolbar.unindent.title": "Outdent (Shift+TAB)", - "pad.toolbar.undo.title": "Undo (Ctrl-Z)", - "pad.toolbar.redo.title": "Redo (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Clear Authorship Colors", + "pad.toolbar.undo.title": "Undo (Ctrl+Z)", + "pad.toolbar.redo.title": "Redo (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Clear Authorship Colors (Ctrl+Shift+C)", "pad.toolbar.import_export.title": "Import/Export from/to different file formats", "pad.toolbar.timeslider.title": "Timeslider", "pad.toolbar.savedRevision.title": "Save Revision", @@ -24,6 +24,7 @@ "pad.colorpicker.cancel": "Cancel", "pad.loading": "Loading...", + "pad.noCookie": "Cookie could not be found. Please allow cookies in your browser!", "pad.passwordRequired": "You need a password to access this pad", "pad.permissionDenied": "You do not have permission to access this pad", "pad.wrongPassword": "Your password was wrong", @@ -31,12 +32,30 @@ "pad.settings.padSettings": "Pad Settings", "pad.settings.myView": "My View", "pad.settings.stickychat": "Chat always on screen", + "pad.settings.chatandusers": "Show Chat and Users", "pad.settings.colorcheck": "Authorship colors", "pad.settings.linenocheck": "Line numbers", "pad.settings.rtlcheck": "Read content from right to left?", "pad.settings.fontType": "Font type:", "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.opendyslexic": "Open Dyslexic", "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.fontType.comicsans": "Comic Sans", + "pad.settings.fontType.couriernew": "Courier New", + "pad.settings.fontType.georgia": "Georgia", + "pad.settings.fontType.impact": "Impact", + "pad.settings.fontType.lucida": "Lucida", + "pad.settings.fontType.lucidasans": "Lucida Sans", + "pad.settings.fontType.palatino": "Palatino", + "pad.settings.fontType.tahoma": "Tahoma", + "pad.settings.fontType.timesnewroman": "Times New Roman", + "pad.settings.fontType.trebuchet": "Trebuchet", + "pad.settings.fontType.verdana": "Verdana", + "pad.settings.fontType.symbol": "Symbol", + "pad.settings.fontType.webdings": "Webdings", + "pad.settings.fontType.wingdings": "Wingdings", + "pad.settings.fontType.sansserif": "Sans Serif", + "pad.settings.fontType.serif": "Serif", "pad.settings.globalView": "Global View", "pad.settings.language": "Language:", @@ -44,12 +63,12 @@ "pad.importExport.import": "Upload any text file or document", "pad.importExport.importSuccessful": "Successful!", "pad.importExport.export": "Export current pad as:", + "pad.importExport.exportetherpad": "Etherpad", "pad.importExport.exporthtml": "HTML", "pad.importExport.exportplain": "Plain text", "pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportpdf": "PDF", "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", "pad.importExport.abiword.innerHTML": "You only can import from plain text or HTML formats. For more advanced import features please install abiword.", "pad.modals.connected": "Connected.", @@ -85,7 +104,7 @@ "pad.modals.disconnected": "You have been disconnected.", "pad.modals.disconnected.explanation": "The connection to the server was lost", "pad.modals.disconnected.cause": "The server may be unavailable. Please notify the service administrator if this continues to happen.", - + "pad.share": "Share this pad", "pad.share.readonly": "Read only", "pad.share.link": "Link", @@ -103,6 +122,10 @@ "timeslider.version": "Version {{version}}", "timeslider.saved": "Saved {{month}} {{day}}, {{year}}", + "timeslider.playPause": "Playback / Pause Pad Contents", + "timeslider.backRevision":"Go back a revision in this Pad", + "timeslider.forwardRevision":"Go forward a revision in this Pad", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.month.january": "January", "timeslider.month.february": "February", @@ -119,6 +142,7 @@ "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) one: author, other: authors ]}", "pad.savedrevs.marked": "This revision is now marked as a saved revision", + "pad.savedrevs.timeslider": "You can see saved revisions by visiting the timeslider", "pad.userlist.entername": "Enter your name", "pad.userlist.unnamed": "unnamed", "pad.userlist.guest": "Guest", @@ -130,6 +154,7 @@ "pad.impexp.importing": "Importing...", "pad.impexp.confirmimport": "Importing a file will overwrite the current text of the pad. Are you sure you want to proceed?", "pad.impexp.convertFailed": "We were not able to import this file. Please use a different document format or copy paste manually", + "pad.impexp.padHasData": "We were not able to import this file because this Pad has already had changes, please import to a new pad", "pad.impexp.uploadFailed": "The upload failed, please try again", "pad.impexp.importfailed": "Import failed", "pad.impexp.copypaste": "Please copy paste", diff --git a/sources/src/locales/eo.json b/sources/src/locales/eo.json new file mode 100755 index 0000000..fd7b7c1 --- /dev/null +++ b/sources/src/locales/eo.json @@ -0,0 +1,128 @@ +{ + "@metadata": { + "authors": [ + "Eliovir", + "Mschmitt", + "Objectivesea" + ] + }, + "index.newPad": "Nova Teksto", + "index.createOpenPad": "aŭ krei/malfermi novan tekston kun la nomo:", + "pad.toolbar.bold.title": "Grasa (Ctrl+B)", + "pad.toolbar.italic.title": "Kursiva (Ctrl+I)", + "pad.toolbar.underline.title": "Substrekita (Ctrl+U)", + "pad.toolbar.strikethrough.title": "Trastrekita (Ctrl+5)", + "pad.toolbar.ol.title": "Ordigita listo (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Neordigita Listo (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Enŝovi (TAB)", + "pad.toolbar.unindent.title": "Elŝovi (Shift+TAB)", + "pad.toolbar.undo.title": "Malfari (Ctrl+Z)", + "pad.toolbar.redo.title": "Refari (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Forigi kolorojn de aŭtoreco (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Enporti/elporti de/al aliaj dosierformatoj", + "pad.toolbar.timeslider.title": "Tempoŝovilo", + "pad.toolbar.savedRevision.title": "Konservi version", + "pad.toolbar.settings.title": "Agordoj", + "pad.toolbar.embed.title": "Kunhavigi kaj enigi ĉi tiun tekston", + "pad.toolbar.showusers.title": "Montri la redaktantojn sur ĉi tiu teksto", + "pad.colorpicker.save": "Konservi", + "pad.colorpicker.cancel": "Nuligi", + "pad.loading": "Ŝargante...", + "pad.noCookie": "Kuketo ne estis trovigebla. Bonvolu permesi kuketojn en via retumilo!", + "pad.passwordRequired": "Vi bezonas pasvorton por aliri ĉi tiun tekston", + "pad.permissionDenied": "Vi ne havas permeson por aliri ĉi tiun tekston", + "pad.wrongPassword": "Via pasvorto estis malĝusta", + "pad.settings.padSettings": "Redaktilaj Agordoj", + "pad.settings.myView": "Mia vido", + "pad.settings.stickychat": "Babilejo ĉiam videbla", + "pad.settings.chatandusers": "Montri babilejon kaj uzantojn", + "pad.settings.colorcheck": "Koloroj de aŭtoreco", + "pad.settings.linenocheck": "Liniaj nombroj", + "pad.settings.rtlcheck": "Legi dekstre-maldekstren?", + "pad.settings.fontType": "Tiparo:", + "pad.settings.fontType.normal": "Normala", + "pad.settings.fontType.monospaced": "Egallarĝa", + "pad.settings.globalView": "Ĉiea Vido", + "pad.settings.language": "Lingvo:", + "pad.importExport.import_export": "Enporti/Elporti", + "pad.importExport.import": "Alŝuti ajnan dosieron aŭ dokumenton", + "pad.importExport.importSuccessful": "Sukceso!", + "pad.importExport.export": "Elporti la nunan tekston kiel:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Plata teksto", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Formato “OpenDocument”)", + "pad.importExport.abiword.innerHTML": "Nur kapablas enporti de plata teksto aŭ HTML. Por pli speciala importkapablo, bonvolu instalu la programon, Abiword.", + "pad.modals.connected": "Konektita.", + "pad.modals.reconnecting": "Rekonektanta al via redaktilo..", + "pad.modals.forcereconnect": "Perforte rekonekti", + "pad.modals.userdup": "Malfermita en alia fenestro", + "pad.modals.userdup.explanation": "Ĉi tiu teksto ŝajne estas malferma en pli ol unu retumilo sur ĉi tiu komputilo.", + "pad.modals.userdup.advice": "Rekonekti por anstataŭe uzi ĉi tiun fenestron.", + "pad.modals.unauth": "Ne permesita", + "pad.modals.unauth.explanation": "Viaj permesoj ŝanĝis dum kiam vi rigardis ĉi tiun paĝon. Provu rekonekti.", + "pad.modals.looping.explanation": "Okazas problemoj dum komunikado kun la sinkronigservilo.", + "pad.modals.looping.cause": "Eble vi konektis per malkongrua fajroŝirmilo aŭ retperanto.", + "pad.modals.initsocketfail": "Servilo ne estas atingebla.", + "pad.modals.initsocketfail.explanation": "Ne kapablis konekti al la sinkronigservilo.", + "pad.modals.initsocketfail.cause": "Tio verŝajne okazas pro problemo kun via retumilo aŭ via retkonekto.", + "pad.modals.slowcommit.explanation": "La servilo ne respondas.", + "pad.modals.slowcommit.cause": "Tio eble estas pro problemoj kun retkonekto.", + "pad.modals.badChangeset.explanation": "La sinkronigservilo decidis ke redakto de vi estas malpermesita.", + "pad.modals.badChangeset.cause": "Tio eble okazis pro malĝustaj agordoj aŭ alia neatendita teniĝo sur la servilo. Se vi pensas ke estas eraro, bonvolu kontakti la servoadminstranton. Provu rekonekti por denove redakti.", + "pad.modals.corruptPad.explanation": "La teksto kiun vi provas atingi estas difekta.", + "pad.modals.corruptPad.cause": "Tio eble okazis pro malĝustaj agordoj aŭ alia neatendita teniĝo sur la servilo. Bonvolu kontakti la servoadminstranton.", + "pad.modals.deleted": "Forigita.", + "pad.modals.deleted.explanation": "Ĉi tiu teksto estis forigita.", + "pad.modals.disconnected": "Vi estas malkonektita.", + "pad.modals.disconnected.explanation": "La konekto al la servilo perdiĝis", + "pad.modals.disconnected.cause": "Eble la servilo ne estas disponebla. Bonvolu kontakti la servoadministranton se tio daŭre okazas.", + "pad.share": "Kunhavigi ĉi tiun tekston", + "pad.share.readonly": "Nur legebla", + "pad.share.link": "Ligilo", + "pad.share.emebdcode": "Enfiksi URL-on", + "pad.chat": "Babilejo", + "pad.chat.title": "Malfermi la babilejon por ĉi tiu teksto.", + "pad.chat.loadmessages": "Ŝargi pliajn mesaĝojn", + "timeslider.pageTitle": "{{appTitle}} Tempoŝovilo", + "timeslider.toolbar.returnbutton": "Reiri al teksto", + "timeslider.toolbar.authors": "Aŭtoroj:", + "timeslider.toolbar.authorsList": "Neniu aŭtoro", + "timeslider.toolbar.exportlink.title": "Elporti", + "timeslider.exportCurrent": "Elporti la nunan version kiel:", + "timeslider.version": "Versio {{version}}", + "timeslider.saved": "Konservita la {{day}}an de {{month}}, {{year}}", + "timeslider.dateformat": "{{day}}-{{month}}-{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januaro", + "timeslider.month.february": "februaro", + "timeslider.month.march": "marto", + "timeslider.month.april": "aprilo", + "timeslider.month.may": "majo", + "timeslider.month.june": "junio", + "timeslider.month.july": "julio", + "timeslider.month.august": "aŭgusto", + "timeslider.month.september": "septembro", + "timeslider.month.october": "oktobro", + "timeslider.month.november": "novembro", + "timeslider.month.december": "decembro", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: sennoma aŭtoro, other: sennomaj aŭtoroj ]}", + "pad.savedrevs.marked": "Ĉi tiu versio nun estas markita kiel konservita versio", + "pad.savedrevs.timeslider": "Vi povas rigardi konservitajn versiojn per la tempoŝovilo", + "pad.userlist.entername": "Entajpu vian nomon", + "pad.userlist.unnamed": "sennoma", + "pad.userlist.guest": "Gasto", + "pad.userlist.deny": "Malaprobi", + "pad.userlist.approve": "Aprobi", + "pad.editbar.clearcolors": "Forigi kolorojn de aŭtoreco en la tuta dokumento?", + "pad.impexp.importbutton": "Enporti Nun", + "pad.impexp.importing": "Enportanta...", + "pad.impexp.confirmimport": "Enporti dosieron superskribos la nunan tekston en la redaktilo. Ĉu vi certe volas daŭrigi?", + "pad.impexp.convertFailed": "Ni ne kapablis enporti tiun dosieron. Bonvolu uzi alian dokumentformaton aŭ permane kopii kaj alglui.", + "pad.impexp.padHasData": "Ni ne kapablis enporti tiun dosieron ĉar la teksto jam estas ŝanĝita. Bonvolu enporti en novan tekston.", + "pad.impexp.uploadFailed": "La alŝuto malsukcesis, bonvolu provi denove.", + "pad.impexp.importfailed": "Enporti malsukcesis.", + "pad.impexp.copypaste": "Bonvolu kopii kaj alglui", + "pad.impexp.exportdisabled": "Elporti en {{type}} formato estas malŝalta. Bonvolu kontakti la sistremadministranton pro pliaj informoj." +} diff --git a/sources/src/locales/es.json b/sources/src/locales/es.json old mode 100644 new mode 100755 index eade2c9..21eb60a --- a/sources/src/locales/es.json +++ b/sources/src/locales/es.json @@ -1,130 +1,136 @@ { - "@metadata": { - "authors": [ - "Armando-Martin", - "Jacobo", - "Joker", - "Larjona", - "Mklehr", - "Rubenwap", - "VegaDark", - "Vivaelcelta", - "Xuacu" - ] - }, - "index.newPad": "Nuevo Pad", - "index.createOpenPad": "o crea/abre un Pad con el nombre:", - "pad.toolbar.bold.title": "Negrita (Ctrl-B)", - "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", - "pad.toolbar.underline.title": "Subrayado (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Tachado", - "pad.toolbar.ol.title": "Lista ordenada", - "pad.toolbar.ul.title": "Lista desordenada", - "pad.toolbar.indent.title": "Sangrar", - "pad.toolbar.unindent.title": "Desangrar", - "pad.toolbar.undo.title": "Deshacer (Ctrl-Z)", - "pad.toolbar.redo.title": "Rehacer (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Eliminar los colores de los autores", - "pad.toolbar.import_export.title": "Importar/Exportar a diferentes formatos de archivos", - "pad.toolbar.timeslider.title": "Línea de tiempo", - "pad.toolbar.savedRevision.title": "Guardar revisión", - "pad.toolbar.settings.title": "Configuración", - "pad.toolbar.embed.title": "Compartir e incrustar este pad", - "pad.toolbar.showusers.title": "Mostrar los usuarios de este pad", - "pad.colorpicker.save": "Guardar", - "pad.colorpicker.cancel": "Cancelar", - "pad.loading": "Cargando...", - "pad.passwordRequired": "Necesitas una contraseña para acceder a este documento", - "pad.permissionDenied": "No tienes permiso para acceder a esta página", - "pad.wrongPassword": "La contraseña era incorrecta", - "pad.settings.padSettings": "Configuración del Pad", - "pad.settings.myView": "Preferencias personales", - "pad.settings.stickychat": "Chat siempre encima", - "pad.settings.colorcheck": "Color de autoría", - "pad.settings.linenocheck": "Números de línea", - "pad.settings.rtlcheck": "¿Leer contenido de derecha a izquierda?", - "pad.settings.fontType": "Tipografía:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monoespacio", - "pad.settings.globalView": "Preferencias globales", - "pad.settings.language": "Idioma:", - "pad.importExport.import_export": "Importar/Exportar", - "pad.importExport.import": "Subir cualquier texto o documento", - "pad.importExport.importSuccessful": "¡Operación realizada con éxito!", - "pad.importExport.export": "Exporta el pad actual como:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Texto plano", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Sólo puede importar formatos de texto plano o html. Para funciones más avanzadas instale \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eabiword\u003C/a\u003E.", - "pad.modals.connected": "Conectado.", - "pad.modals.reconnecting": "Reconectando a tu pad..", - "pad.modals.forcereconnect": "Reconexión forzosa", - "pad.modals.userdup": "Abierto en otra ventana", - "pad.modals.userdup.explanation": "Este pad parece estar abierto en más de una ventana de tu navegador.", - "pad.modals.userdup.advice": "Reconectar para usar esta ventana.", - "pad.modals.unauth": "No autorizado.", - "pad.modals.unauth.explanation": "Los permisos han cambiado mientras estabas viendo esta página. Intenta reconectar de nuevo.", - "pad.modals.looping.explanation": "Estamos teniendo problemas con la sincronización en el servidor.", - "pad.modals.looping.cause": "Puede deberse a que te conectes a través de un proxy o un cortafuegos incompatible.", - "pad.modals.initsocketfail": "Servidor incalcanzable.", - "pad.modals.initsocketfail.explanation": "No se pudo conectar al servidor de sincronización.", - "pad.modals.initsocketfail.cause": "Puede ser a causa de tu navegador o de una caída en tu conexión de Internet.", - "pad.modals.slowcommit.explanation": "El servidor no responde.", - "pad.modals.slowcommit.cause": "Puede deberse a problemas con tu conexión de red.", - "pad.modals.badChangeset.explanation": "Ha hecho una edición clasificada como ilegal por el servidor de sincronización.", - "pad.modals.badChangeset.cause": "Esto podría ser debido a una mala configuración del servidor o algún otro comportamiento inesperado. Póngase en contacto con el administrador del servicio, si siente que esto es un error. Intente volver a conectar con el fin de seguir editando.", - "pad.modals.corruptPad.explanation": "El pad que está intentando acceder está dañado.", - "pad.modals.corruptPad.cause": "Esto puede deberse a una mala configuración de servidor o algún otro comportamiento inesperado. Póngase en contacto con el administrador del servicio.", - "pad.modals.deleted": "Borrado.", - "pad.modals.deleted.explanation": "Este pad ha sido borrado.", - "pad.modals.disconnected": "Has sido desconectado.", - "pad.modals.disconnected.explanation": "Se perdió la conexión con el servidor", - "pad.modals.disconnected.cause": "El servidor podría no estar disponible. Contacte con nosotros si esto continúa sucediendo.", - "pad.share": "Compatir el pad", - "pad.share.readonly": "Sólo lectura", - "pad.share.link": "Enlace", - "pad.share.emebdcode": "Incrustar URL", - "pad.chat": "Chat", - "pad.chat.title": "Abrir el chat para este pad.", - "pad.chat.loadmessages": "Cargar más mensajes", - "timeslider.pageTitle": "{{appTitle}} Línea de tiempo", - "timeslider.toolbar.returnbutton": "Volver al pad", - "timeslider.toolbar.authors": "Autores:", - "timeslider.toolbar.authorsList": "Sin autores", - "timeslider.toolbar.exportlink.title": "Exportar", - "timeslider.exportCurrent": "Exportar la versión actual como:", - "timeslider.version": "Versión {{version}}", - "timeslider.saved": "Guardado el {{day}} de {{month}} de {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Enero", - "timeslider.month.february": "Febrero", - "timeslider.month.march": "Marzo", - "timeslider.month.april": "Abril", - "timeslider.month.may": "Mayo", - "timeslider.month.june": "Junio", - "timeslider.month.july": "Julio", - "timeslider.month.august": "Agosto", - "timeslider.month.september": "Septiembre", - "timeslider.month.october": "Octubre", - "timeslider.month.november": "Noviembre", - "timeslider.month.december": "Diciembre", - "timeslider.unnamedauthors": "{{num}} {[ plural(num) one: autor desconocido, other: autores desconocidos]}", - "pad.savedrevs.marked": "Revisión guardada", - "pad.userlist.entername": "Escribe tu nombre", - "pad.userlist.unnamed": "anónimo", - "pad.userlist.guest": "Invitado", - "pad.userlist.deny": "Denegar", - "pad.userlist.approve": "Aprobar", - "pad.editbar.clearcolors": "¿Desea borrar el color de los autores en todo el documento?", - "pad.impexp.importbutton": "Importar", - "pad.impexp.importing": "Importando...", - "pad.impexp.confirmimport": "Al importar un fichero se borrará el contenido actual del documento. ¿Quiere continuar?", - "pad.impexp.convertFailed": "No pudimos importar este fichero. Intentalo con otro formato diferente o copia y pega manualmente.", - "pad.impexp.uploadFailed": "El envío del fichero falló. Intentelo de nuevo.", - "pad.impexp.importfailed": "Fallo al importar", - "pad.impexp.copypaste": "Intente copiar y pegar", - "pad.impexp.exportdisabled": "La exportación al formato {{type}} format está desactivada. Contacte con su administrador de sistemas." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Armando-Martin", + "Jacobo", + "Joker", + "Larjona", + "Mklehr", + "Rubenwap", + "VegaDark", + "Vivaelcelta", + "Xuacu", + "Macofe", + "Fitoschido" + ] + }, + "index.newPad": "Nuevo pad", + "index.createOpenPad": "o crea/abre un pad con el nombre:", + "pad.toolbar.bold.title": "Negrita (Ctrl-B)", + "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", + "pad.toolbar.underline.title": "Subrayado (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Tachado (Ctrl+5)", + "pad.toolbar.ol.title": "Lista ordenada (Ctrl+Mayús+N)", + "pad.toolbar.ul.title": "Lista desordenada (Ctrl+Mayús+L)", + "pad.toolbar.indent.title": "Sangría (TAB)", + "pad.toolbar.unindent.title": "Eliminar sangría (Shift+TAB)", + "pad.toolbar.undo.title": "Deshacer (Ctrl-Z)", + "pad.toolbar.redo.title": "Rehacer (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Eliminar los colores de autoría (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importar/Exportar a diferentes formatos de archivos", + "pad.toolbar.timeslider.title": "Línea de tiempo", + "pad.toolbar.savedRevision.title": "Guardar revisión", + "pad.toolbar.settings.title": "Configuración", + "pad.toolbar.embed.title": "Compartir e incrustar este pad", + "pad.toolbar.showusers.title": "Mostrar los usuarios de este pad", + "pad.colorpicker.save": "Guardar", + "pad.colorpicker.cancel": "Cancelar", + "pad.loading": "Cargando...", + "pad.noCookie": "La cookie no se pudo encontrar. ¡Por favor, habilita las cookies en tu navegador!", + "pad.passwordRequired": "Necesitas una contraseña para acceder a este pad", + "pad.permissionDenied": "No tienes permiso para acceder a este pad", + "pad.wrongPassword": "La contraseña era incorrecta", + "pad.settings.padSettings": "Configuración del pad", + "pad.settings.myView": "Preferencias personales", + "pad.settings.stickychat": "Chat siempre en pantalla", + "pad.settings.chatandusers": "Mostrar el chat y los usuarios", + "pad.settings.colorcheck": "Colores de autoría", + "pad.settings.linenocheck": "Números de línea", + "pad.settings.rtlcheck": "¿Leer contenido de derecha a izquierda?", + "pad.settings.fontType": "Tipografía:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monoespacio", + "pad.settings.globalView": "Preferencias globales", + "pad.settings.language": "Idioma:", + "pad.importExport.import_export": "Importar/Exportar", + "pad.importExport.import": "Subir cualquier texto o documento", + "pad.importExport.importSuccessful": "¡Éxito!", + "pad.importExport.export": "Exporta el pad actual como:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Texto sin formato", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Solo es posible importar texto sin formato o en HTML. Para obtener funciones de importación más avanzadas es necesario instalar AbiWord.", + "pad.modals.connected": "Conectado.", + "pad.modals.reconnecting": "Reconectando a tu pad..", + "pad.modals.forcereconnect": "Forzar reconexión", + "pad.modals.userdup": "Abierto en otra ventana", + "pad.modals.userdup.explanation": "Este pad parece estar abierto en más de una ventana de tu navegador.", + "pad.modals.userdup.advice": "Reconectar para usar esta ventana.", + "pad.modals.unauth": "No autorizado.", + "pad.modals.unauth.explanation": "Tus permisos han cambiado mientras estabas viendo esta página. Intenta reconectarte.", + "pad.modals.looping.explanation": "Hay problemas con el servidor de sincronización.", + "pad.modals.looping.cause": "Puede deberse a que te conectes a través de un proxy o un cortafuegos incompatible.", + "pad.modals.initsocketfail": "Servidor incalcanzable.", + "pad.modals.initsocketfail.explanation": "No se pudo conectar al servidor de sincronización.", + "pad.modals.initsocketfail.cause": "Probablemente debido a un problema en tu navegador o en tu conexión a internet.", + "pad.modals.slowcommit.explanation": "El servidor no responde.", + "pad.modals.slowcommit.cause": "Puede deberse a problemas con tu conexión de red.", + "pad.modals.badChangeset.explanation": "Has hecho una edición clasificada como ilegal por el servidor de sincronización.", + "pad.modals.badChangeset.cause": "Esto podría deberse a una mala configuración del servidor o algún otro comportamiento inesperado. Contacta al administrador del servicio, si piensas que esto es un error. Intenta reconectarte con el fin de seguir editando.", + "pad.modals.corruptPad.explanation": "El pad que intentas acceder está dañado.", + "pad.modals.corruptPad.cause": "Esto puede deberse a una mala configuración del servidor o algún otro comportamiento inesperado. Contacta al administrador del servicio.", + "pad.modals.deleted": "Borrado.", + "pad.modals.deleted.explanation": "Este pad ha sido borrado.", + "pad.modals.disconnected": "Te has desconectado.", + "pad.modals.disconnected.explanation": "Se perdió la conexión con el servidor", + "pad.modals.disconnected.cause": "El servidor podría no estar disponible. Contacta al administrador del servicio si esto continúa sucediendo.", + "pad.share": "Compatir este pad", + "pad.share.readonly": "Sólo lectura", + "pad.share.link": "Enlace", + "pad.share.emebdcode": "Incrustar URL", + "pad.chat": "Chat", + "pad.chat.title": "Abrir el chat para este pad.", + "pad.chat.loadmessages": "Cargar más mensajes", + "timeslider.pageTitle": "{{appTitle}} Línea de tiempo", + "timeslider.toolbar.returnbutton": "Volver al pad", + "timeslider.toolbar.authors": "Autores:", + "timeslider.toolbar.authorsList": "Sin autores", + "timeslider.toolbar.exportlink.title": "Exportar", + "timeslider.exportCurrent": "Exportar la versión actual como:", + "timeslider.version": "Versión {{version}}", + "timeslider.saved": "Guardado el {{day}} de {{month}} de {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "enero", + "timeslider.month.february": "febrero", + "timeslider.month.march": "marzo", + "timeslider.month.april": "abril", + "timeslider.month.may": "mayo", + "timeslider.month.june": "junio", + "timeslider.month.july": "julio", + "timeslider.month.august": "agosto", + "timeslider.month.september": "septiembre", + "timeslider.month.october": "octubre", + "timeslider.month.november": "noviembre", + "timeslider.month.december": "diciembre", + "timeslider.unnamedauthors": "{{num}} {[ plural(num) one: autor desconocido, other: autores desconocidos]}", + "pad.savedrevs.marked": "Revisión guardada", + "pad.savedrevs.timeslider": "Puedes ver revisiones guardadas visitando la línea de tiempo", + "pad.userlist.entername": "Escribe tu nombre", + "pad.userlist.unnamed": "anónimo", + "pad.userlist.guest": "Invitado", + "pad.userlist.deny": "Denegar", + "pad.userlist.approve": "Aprobar", + "pad.editbar.clearcolors": "¿Quieres borrar los colores de autoría en todo el documento?", + "pad.impexp.importbutton": "Importar ahora", + "pad.impexp.importing": "Importando...", + "pad.impexp.confirmimport": "Al importar un archivo se borrará el contenido actual del pad. ¿Estás seguro de que quieres continuar?", + "pad.impexp.convertFailed": "No pudimos importar este archivo. Inténtalo con un formato diferente o copia y pega manualmente.", + "pad.impexp.padHasData": "No hemos podido importar este archivo porque esta almohadilla ya ha tenido cambios, por favor, importa a una nueva almohadilla", + "pad.impexp.uploadFailed": "El envío falló. Intentalo de nuevo.", + "pad.impexp.importfailed": "Fallo al importar", + "pad.impexp.copypaste": "Intenta copiar y pegar", + "pad.impexp.exportdisabled": "La exportación al formato {{type}} está desactivada. Contacta a tu administrador de sistemas." +} diff --git a/sources/src/locales/et.json b/sources/src/locales/et.json old mode 100644 new mode 100755 index 421486b..3ea8b3e --- a/sources/src/locales/et.json +++ b/sources/src/locales/et.json @@ -1,122 +1,121 @@ { - "@metadata": { - "authors": [ - "Kristian.kankainen" - ] - }, - "index.newPad": "Uus klade", - "index.createOpenPad": "loo või rööptoimeta kladet nimega:", - "pad.toolbar.bold.title": "Rasvane (Ctrl + B)", - "pad.toolbar.italic.title": "Kaldkiri (Ctrl + I)", - "pad.toolbar.underline.title": "Allakriipsutus (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Läbikriipsutus", - "pad.toolbar.ol.title": "Nummerdatud loend", - "pad.toolbar.ul.title": "Täppidega loend", - "pad.toolbar.indent.title": "Suurenda taanet (TAB)", - "pad.toolbar.unindent.title": "Vähenda taanet (Shift+TAB)", - "pad.toolbar.undo.title": "Võta tagasi (Ctrl-Z)", - "pad.toolbar.redo.title": "Tee uuesti (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Kustuta eri autorite värvid", - "pad.toolbar.import_export.title": "Impordi-ekspordi eri failivormingutesse", - "pad.toolbar.timeslider.title": "Ajajoon", - "pad.toolbar.savedRevision.title": "Salvesta versioon", - "pad.toolbar.settings.title": "Seaded", - "pad.toolbar.embed.title": "Jaga ja põimi seda kladet", - "pad.toolbar.showusers.title": "Näita klade kasutajaid", - "pad.colorpicker.save": "Salvesta", - "pad.colorpicker.cancel": "Loobu", - "pad.loading": "Laadimine...", - "pad.passwordRequired": "Sul peab olema parool selle klade rööptoimetamiseks", - "pad.permissionDenied": "Sul puuduvad ligipääsuõigused selle klade rööptoimetamiseks", - "pad.wrongPassword": "Vigane parool", - "pad.settings.padSettings": "Klade seadistused", - "pad.settings.myView": "Minu vaade", - "pad.settings.stickychat": "Näita vestlust alatiselt ekraanil", - "pad.settings.colorcheck": "Autorite värvid", - "pad.settings.linenocheck": "Reanumbrid", - "pad.settings.rtlcheck": "Näita sisu paremalt vasakule?", - "pad.settings.fontType": "Šrifti tüüp:", - "pad.settings.fontType.normal": "Normaalne", - "pad.settings.fontType.monospaced": "Ühelaiuste märkidega", - "pad.settings.globalView": "Koguvaade", - "pad.settings.language": "Keel:", - "pad.importExport.import_export": "Import-eksport", - "pad.importExport.import": "Laadi üles mistahes tekstifail või dokument", - "pad.importExport.importSuccessful": "Edukalt laaditud!", - "pad.importExport.export": "Ekspordi käesolev klade kui:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Lihttekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Paraku on ainult lihttekstis voi HTML-vormingus dokumentide importimine võimaldatud. Rohkem võimaluste jaoks peab \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Epaigaldama abiword\u003C/a\u003E.", - "pad.modals.connected": "Ühendatud.", - "pad.modals.reconnecting": "Proovitakse luua ühendus klade juurde...", - "pad.modals.forcereconnect": "Sunni ühenduse taasloomist", - "pad.modals.userdup": "Käesolev klade on avatud teises aknas", - "pad.modals.userdup.explanation": "Käesolev klade paistab olevat avatud rohkem kui ühes brauseriaknas selles arvutis.", - "pad.modals.userdup.advice": "Kasuta käesolevat akent teiste asemel.", - "pad.modals.unauth": "Pole lubatud", - "pad.modals.unauth.explanation": "Sinu ligipääsuõigused on muutunud. Proovi ühendada uuesti.", - "pad.modals.looping.explanation": "Serveriga sünkroniseerimine tundub olevat takistatud.", - "pad.modals.looping.cause": "Äkki oled ühendatud tulemüüri või puhverserveri kaudu?", - "pad.modals.initsocketfail": "Server pole kättesaadaval.", - "pad.modals.initsocketfail.explanation": "Ei saadud ühendust sünkroniseerimisserveriga.", - "pad.modals.initsocketfail.cause": "See on tõenäoliselt su brauserist või internetiühendusest tingitud.", - "pad.modals.slowcommit.explanation": "Server ei vasta.", - "pad.modals.slowcommit.cause": "See on tõenäoliselt võrguühendusest tingitud.", - "pad.modals.badChangeset.explanation": "Sünkroniseerimisserver keeldus vastuvõtmast tehtud muudatuse.", - "pad.modals.badChangeset.cause": "See võib sõltuda serveri valest seadistusest või mõnest muust tõrkest. Palun kontakteeru teenuse haldajaga või proovi uuesti.", - "pad.modals.corruptPad.explanation": "Klade, millele püüad ligi pääseda, on rikkis.", - "pad.modals.corruptPad.cause": "See võib sõltuda serveri valest seadistusest või mõnest muust tõrkest. Palun kontakteeru teenuse haldajaga või proovi uuesti.", - "pad.modals.deleted": "Kustutatud.", - "pad.modals.deleted.explanation": "Klade on kustutatud.", - "pad.modals.disconnected": "Sa ei ole ühendatud.", - "pad.modals.disconnected.explanation": "Ühendus serveriga katkes", - "pad.modals.disconnected.cause": "Server ei ole saadaval. Palun kontakteeru teenuse haldajaga või proovi uuesti.", - "pad.share": "Jaga kladet", - "pad.share.readonly": "Kirjutuskaitstud", - "pad.share.link": "Link", - "pad.share.emebdcode": "Põimi URL", - "pad.chat": "Vestle", - "pad.chat.title": "Ava klade vestlusaken.", - "pad.chat.loadmessages": "Laadi rohkem sõnumeid", - "timeslider.pageTitle": "{{appTitle}} ajajoon", - "timeslider.toolbar.returnbutton": "Tagasi kladele", - "timeslider.toolbar.authors": "Autoridː", - "timeslider.toolbar.authorsList": "Autor puudub", - "timeslider.toolbar.exportlink.title": "Eksport", - "timeslider.exportCurrent": "Ekspordi käesolev versioon kuiː", - "timeslider.version": "Versioon {{version}}", - "timeslider.saved": "Salvestatud {{day}}. {{month}}il {{year}}. aastal", - "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Jaanuar", - "timeslider.month.february": "Veebruar", - "timeslider.month.march": "Märts", - "timeslider.month.april": "Aprill", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Juuni", - "timeslider.month.july": "Juuli", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktoober", - "timeslider.month.november": "November", - "timeslider.month.december": "Detsember", - "timeslider.unnamedauthors": "{{num}} nimetamata {[plural(num) one: autor, other: autorit ]}", - "pad.savedrevs.marked": "Versioon märgiti salvestatuna", - "pad.userlist.entername": "Sisesta oma nimi", - "pad.userlist.unnamed": "Nimetu", - "pad.userlist.guest": "Külaline", - "pad.userlist.deny": "Eira", - "pad.userlist.approve": "Nõustu", - "pad.editbar.clearcolors": "Kas soovid kustutada autorite värvid dokumendist?", - "pad.impexp.importbutton": "Impordi", - "pad.impexp.importing": "Importimine...", - "pad.impexp.confirmimport": "Faili importimine kustutab praeguse versiooni. Kas kindlasti importida?", - "pad.impexp.convertFailed": "Antud faili pole võimalik importida. Palun kasuta teist vormingut või kopeeri-kleebi käsitsi", - "pad.impexp.uploadFailed": "Üleslaadimine nurjus, proovi uuesti", - "pad.impexp.importfailed": "Importimine nurjus", - "pad.impexp.copypaste": "Palun kopeeri ja kleebi", - "pad.impexp.exportdisabled": "Eksportimine vormingusse {{type}} on hetkel keelatud. Üksikasjade saamiseks pöördu oma süsteemiadministraatori poole." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Kristian.kankainen" + ] + }, + "index.newPad": "Uus klade", + "index.createOpenPad": "loo või rööptoimeta kladet nimega:", + "pad.toolbar.bold.title": "Rasvane (Ctrl + B)", + "pad.toolbar.italic.title": "Kaldkiri (Ctrl + I)", + "pad.toolbar.underline.title": "Allakriipsutus (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Läbikriipsutus", + "pad.toolbar.ol.title": "Nummerdatud loend", + "pad.toolbar.ul.title": "Täppidega loend", + "pad.toolbar.indent.title": "Suurenda taanet (TAB)", + "pad.toolbar.unindent.title": "Vähenda taanet (Shift+TAB)", + "pad.toolbar.undo.title": "Võta tagasi (Ctrl-Z)", + "pad.toolbar.redo.title": "Tee uuesti (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Kustuta eri autorite värvid", + "pad.toolbar.import_export.title": "Impordi-ekspordi eri failivormingutesse", + "pad.toolbar.timeslider.title": "Ajajoon", + "pad.toolbar.savedRevision.title": "Salvesta versioon", + "pad.toolbar.settings.title": "Seaded", + "pad.toolbar.embed.title": "Jaga ja põimi seda kladet", + "pad.toolbar.showusers.title": "Näita klade kasutajaid", + "pad.colorpicker.save": "Salvesta", + "pad.colorpicker.cancel": "Loobu", + "pad.loading": "Laadimine...", + "pad.passwordRequired": "Sul peab olema parool selle klade rööptoimetamiseks", + "pad.permissionDenied": "Sul puuduvad ligipääsuõigused selle klade rööptoimetamiseks", + "pad.wrongPassword": "Vigane parool", + "pad.settings.padSettings": "Klade seadistused", + "pad.settings.myView": "Minu vaade", + "pad.settings.stickychat": "Näita vestlust alatiselt ekraanil", + "pad.settings.colorcheck": "Autorite värvid", + "pad.settings.linenocheck": "Reanumbrid", + "pad.settings.rtlcheck": "Näita sisu paremalt vasakule?", + "pad.settings.fontType": "Šrifti tüüp:", + "pad.settings.fontType.normal": "Normaalne", + "pad.settings.fontType.monospaced": "Ühelaiuste märkidega", + "pad.settings.globalView": "Koguvaade", + "pad.settings.language": "Keel:", + "pad.importExport.import_export": "Import-eksport", + "pad.importExport.import": "Laadi üles mistahes tekstifail või dokument", + "pad.importExport.importSuccessful": "Edukalt laaditud!", + "pad.importExport.export": "Ekspordi käesolev klade kui:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Lihttekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Paraku on ainult lihttekstis voi HTML-vormingus dokumentide importimine võimaldatud. Rohkem võimaluste jaoks peab paigaldama abiword.", + "pad.modals.connected": "Ühendatud.", + "pad.modals.reconnecting": "Proovitakse luua ühendus klade juurde...", + "pad.modals.forcereconnect": "Sunni ühenduse taasloomist", + "pad.modals.userdup": "Käesolev klade on avatud teises aknas", + "pad.modals.userdup.explanation": "Käesolev klade paistab olevat avatud rohkem kui ühes brauseriaknas selles arvutis.", + "pad.modals.userdup.advice": "Kasuta käesolevat akent teiste asemel.", + "pad.modals.unauth": "Pole lubatud", + "pad.modals.unauth.explanation": "Sinu ligipääsuõigused on muutunud. Proovi ühendada uuesti.", + "pad.modals.looping.explanation": "Serveriga sünkroniseerimine tundub olevat takistatud.", + "pad.modals.looping.cause": "Äkki oled ühendatud tulemüüri või puhverserveri kaudu?", + "pad.modals.initsocketfail": "Server pole kättesaadaval.", + "pad.modals.initsocketfail.explanation": "Ei saadud ühendust sünkroniseerimisserveriga.", + "pad.modals.initsocketfail.cause": "See on tõenäoliselt su brauserist või internetiühendusest tingitud.", + "pad.modals.slowcommit.explanation": "Server ei vasta.", + "pad.modals.slowcommit.cause": "See on tõenäoliselt võrguühendusest tingitud.", + "pad.modals.badChangeset.explanation": "Sünkroniseerimisserver keeldus vastuvõtmast tehtud muudatuse.", + "pad.modals.badChangeset.cause": "See võib sõltuda serveri valest seadistusest või mõnest muust tõrkest. Palun kontakteeru teenuse haldajaga või proovi uuesti.", + "pad.modals.corruptPad.explanation": "Klade, millele püüad ligi pääseda, on rikkis.", + "pad.modals.corruptPad.cause": "See võib sõltuda serveri valest seadistusest või mõnest muust tõrkest. Palun kontakteeru teenuse haldajaga või proovi uuesti.", + "pad.modals.deleted": "Kustutatud.", + "pad.modals.deleted.explanation": "Klade on kustutatud.", + "pad.modals.disconnected": "Sa ei ole ühendatud.", + "pad.modals.disconnected.explanation": "Ühendus serveriga katkes", + "pad.modals.disconnected.cause": "Server ei ole saadaval. Palun kontakteeru teenuse haldajaga või proovi uuesti.", + "pad.share": "Jaga kladet", + "pad.share.readonly": "Kirjutuskaitstud", + "pad.share.link": "Link", + "pad.share.emebdcode": "Põimi URL", + "pad.chat": "Vestle", + "pad.chat.title": "Ava klade vestlusaken.", + "pad.chat.loadmessages": "Laadi rohkem sõnumeid", + "timeslider.pageTitle": "{{appTitle}} ajajoon", + "timeslider.toolbar.returnbutton": "Tagasi kladele", + "timeslider.toolbar.authors": "Autoridː", + "timeslider.toolbar.authorsList": "Autor puudub", + "timeslider.toolbar.exportlink.title": "Eksport", + "timeslider.exportCurrent": "Ekspordi käesolev versioon kuiː", + "timeslider.version": "Versioon {{version}}", + "timeslider.saved": "Salvestatud {{day}}. {{month}}il {{year}}. aastal", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Jaanuar", + "timeslider.month.february": "Veebruar", + "timeslider.month.march": "Märts", + "timeslider.month.april": "Aprill", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Juuni", + "timeslider.month.july": "Juuli", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktoober", + "timeslider.month.november": "November", + "timeslider.month.december": "Detsember", + "timeslider.unnamedauthors": "{{num}} nimetamata {[plural(num) one: autor, other: autorit ]}", + "pad.savedrevs.marked": "Versioon märgiti salvestatuna", + "pad.userlist.entername": "Sisesta oma nimi", + "pad.userlist.unnamed": "Nimetu", + "pad.userlist.guest": "Külaline", + "pad.userlist.deny": "Eira", + "pad.userlist.approve": "Nõustu", + "pad.editbar.clearcolors": "Kas soovid kustutada autorite värvid dokumendist?", + "pad.impexp.importbutton": "Impordi", + "pad.impexp.importing": "Importimine...", + "pad.impexp.confirmimport": "Faili importimine kustutab praeguse versiooni. Kas kindlasti importida?", + "pad.impexp.convertFailed": "Antud faili pole võimalik importida. Palun kasuta teist vormingut või kopeeri-kleebi käsitsi", + "pad.impexp.uploadFailed": "Üleslaadimine nurjus, proovi uuesti", + "pad.impexp.importfailed": "Importimine nurjus", + "pad.impexp.copypaste": "Palun kopeeri ja kleebi", + "pad.impexp.exportdisabled": "Eksportimine vormingusse {{type}} on hetkel keelatud. Üksikasjade saamiseks pöördu oma süsteemiadministraatori poole." +} diff --git a/sources/src/locales/eu.json b/sources/src/locales/eu.json old mode 100644 new mode 100755 index fc3465d..9cd0607 --- a/sources/src/locales/eu.json +++ b/sources/src/locales/eu.json @@ -1,118 +1,119 @@ { - "@metadata": { - "authors": [ - "Theklan" - ] - }, - "index.newPad": "Pad berria", - "index.createOpenPad": "edo sortu/ireki Pad bat honako izenarekin:", - "pad.toolbar.bold.title": "Lodia (Ctrl-B)", - "pad.toolbar.italic.title": "Etzana (Ctrl-I)", - "pad.toolbar.underline.title": "Azpimarratua (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Ezabatua", - "pad.toolbar.ol.title": "Zerrenda ordenatua", - "pad.toolbar.ul.title": "Zerrenda ez-ordenatua", - "pad.toolbar.indent.title": "Koska", - "pad.toolbar.unindent.title": "Koska kendu", - "pad.toolbar.undo.title": "Desegin (Ctrl-Z)", - "pad.toolbar.redo.title": "Berregin (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Ezabatu Egiletza Koloreak", - "pad.toolbar.import_export.title": "Inportatu/Esportatu fitxategi formatu ezberdinetara/ezberdinetatik", - "pad.toolbar.timeslider.title": "Denbora lerroa", - "pad.toolbar.savedRevision.title": "Gorde berrikuspena", - "pad.toolbar.settings.title": "Hobespenak", - "pad.toolbar.embed.title": "Partekatu eta Txertatu pad hau", - "pad.toolbar.showusers.title": "Erakutsi pad honetako erabiltzaileak", - "pad.colorpicker.save": "Gorde", - "pad.colorpicker.cancel": "Utzi", - "pad.loading": "Kargatzen...", - "pad.passwordRequired": "Pasahitza behar duzu pad honetara sartzeko", - "pad.permissionDenied": "Ez duzu bamienik pad honetara sartzeko", - "pad.wrongPassword": "Zure pasahitza oker zegoen", - "pad.settings.padSettings": "Pad hobespenak", - "pad.settings.myView": "Nire ikusmoldea", - "pad.settings.stickychat": "Txata beti pantailan", - "pad.settings.colorcheck": "Egiletzaren koloreak", - "pad.settings.linenocheck": "Lerro zenbakiak", - "pad.settings.rtlcheck": "Edukia eskubitik ezkerrera irakurri?", - "pad.settings.fontType": "Tipografia:", - "pad.settings.fontType.normal": "Arrunta", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Ikuspegi Globala", - "pad.settings.language": "Hizkuntza:", - "pad.importExport.import_export": "Inportatu/Esportatu", - "pad.importExport.import": "Igo edozein testu fitxategi edo dokumentu", - "pad.importExport.importSuccessful": "Arrakastatsua!", - "pad.importExport.export": "Oraingo pad hau honela esportatu:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Testu laua", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DocuWiki", - "pad.importExport.abiword.innerHTML": "Testu laua edo html formatudun testuak bakarrik inporta ditzakezu. Aurreratuagoak diren inportazio aukerak izateko \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eabiword instala ezazu\u003C/a\u003E.", - "pad.modals.connected": "Konektatuta.", - "pad.modals.reconnecting": "Zure pad-era birkonektatu...", - "pad.modals.forcereconnect": "Berkonexioa fortzatu", - "pad.modals.userdup": "Beste leiho batean ireki da", - "pad.modals.userdup.explanation": "Pad hau zure nabigatzailearen beste leiho batean irekita dagoela ematen du.", - "pad.modals.userdup.advice": "Berriro konektatu beste leiho hau erabiltzeko.", - "pad.modals.unauth": "Baimenik gabe", - "pad.modals.unauth.explanation": "Orrialdea ikusten ari zinela zure baimenak aldatu dira. Saia zaitez berriro konektatzen.", - "pad.modals.looping.explanation": "Sinkronizazio zerbitzariarekin komunikazioa arazoak daude.", - "pad.modals.looping.cause": "Agian firewall edo proxy ez-bateragarri baten bidez konektatu zara.", - "pad.modals.initsocketfail": "Zerbitzarira ezin da iritsi.", - "pad.modals.initsocketfail.explanation": "Ezin izan da konektatu sinkronizazio zerbitzarira.", - "pad.modals.initsocketfail.cause": "Ziurrenik hau zure nabigatzailea edo internet konexioaren arazo bat dela eta izango da.", - "pad.modals.slowcommit.explanation": "Zerbitzariak ez du erantzuten.", - "pad.modals.slowcommit.cause": "Baliteke hau sarearen konexio arazoak direla eta izatea.", - "pad.modals.deleted": "Ezabatua.", - "pad.modals.deleted.explanation": "Pad hau ezabatua izan da.", - "pad.modals.disconnected": "Deskonektatua izan zara.", - "pad.modals.disconnected.explanation": "Zerbitzariaren konexioa galdu da", - "pad.modals.disconnected.cause": "Baliteke zerbitzaria irisgarria ez izatea. Mesedez, esaiguzu hau gertatzen jarraitzen badu.", - "pad.share": "Pad hau partekatu", - "pad.share.readonly": "Irakurtzeko bakarrik", - "pad.share.link": "Lotura", - "pad.share.emebdcode": "URLa txertatu", - "pad.chat": "Txata", - "pad.chat.title": "Pad honetarako txata ireki.", - "pad.chat.loadmessages": "Mezu gehiago kargatu", - "timeslider.pageTitle": "{{appTitle}} denbora lerroa", - "timeslider.toolbar.returnbutton": "Padera itzuli", - "timeslider.toolbar.authors": "Egileak:", - "timeslider.toolbar.authorsList": "Egilerik gabe", - "timeslider.toolbar.exportlink.title": "Esportatu", - "timeslider.exportCurrent": "Gorde bertsio hau honela:", - "timeslider.version": "Bertsioa {{version}}", - "timeslider.saved": "{{year}}ko {{month}}ren {{day}}an gordeta", - "timeslider.dateformat": "{{year}}/{{month}}/{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Urtarrila", - "timeslider.month.february": "Otsaila", - "timeslider.month.march": "Martxoa", - "timeslider.month.april": "Apirila", - "timeslider.month.may": "Maiatza", - "timeslider.month.june": "Ekaina", - "timeslider.month.july": "Uztaila", - "timeslider.month.august": "Abuztua", - "timeslider.month.september": "Iraila", - "timeslider.month.october": "Urria", - "timeslider.month.november": "Azaroa", - "timeslider.month.december": "Abendua", - "timeslider.unnamedauthors": "{{num}} izenik gabeko egileak", - "pad.savedrevs.marked": "Berrikuspen hau markatua dago gordetako berrikuspen gisa", - "pad.userlist.entername": "Sartu zure erabiltzaile izena", - "pad.userlist.unnamed": "izenik gabe", - "pad.userlist.guest": "Gonbidatua", - "pad.userlist.deny": "Ukatu", - "pad.userlist.approve": "Onartu", - "pad.editbar.clearcolors": "Ezabatu egile koloreak dokumentu osoan?", - "pad.impexp.importbutton": "Inportatu orain", - "pad.impexp.importing": "Inportatzen...", - "pad.impexp.confirmimport": "Fitxategi bat inportatzen baduzu oraingo pad honen testua ezabatuko da. Ziur zaude jarraitu nahi duzula?", - "pad.impexp.convertFailed": "Ez gara gai fitxategi hau inportatzeko. Erabil ezazu, mesedez, beste dokumentu formatu bat edo kopiatu eta itsasi eskuz.", - "pad.impexp.uploadFailed": "Igotzean akatsa egon da, saia zaitez berriro", - "pad.impexp.importfailed": "Inportazioak akatsa egin du", - "pad.impexp.copypaste": "Mesedez kopiatu eta pegatu", - "pad.impexp.exportdisabled": "{{type}} formatuarekin esportatzea desgaituta dago. Kontakta ezazu administratzailea detaile gehiagorako." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Theklan", + "Subi" + ] + }, + "index.newPad": "Pad berria", + "index.createOpenPad": "edo sortu/ireki Pad bat honako izenarekin:", + "pad.toolbar.bold.title": "Lodia (Ctrl-B)", + "pad.toolbar.italic.title": "Etzana (Ctrl-I)", + "pad.toolbar.underline.title": "Azpimarratua (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Ezabatua", + "pad.toolbar.ol.title": "Zerrenda ordenatua", + "pad.toolbar.ul.title": "Zerrenda ez-ordenatua", + "pad.toolbar.indent.title": "Koska", + "pad.toolbar.unindent.title": "Koska kendu", + "pad.toolbar.undo.title": "Desegin (Ctrl-Z)", + "pad.toolbar.redo.title": "Berregin (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Ezabatu Egiletza Koloreak", + "pad.toolbar.import_export.title": "Inportatu/Esportatu fitxategi formatu ezberdinetara/ezberdinetatik", + "pad.toolbar.timeslider.title": "Denbora lerroa", + "pad.toolbar.savedRevision.title": "Gorde berrikuspena", + "pad.toolbar.settings.title": "Hobespenak", + "pad.toolbar.embed.title": "Partekatu eta Txertatu pad hau", + "pad.toolbar.showusers.title": "Erakutsi pad honetako erabiltzaileak", + "pad.colorpicker.save": "Gorde", + "pad.colorpicker.cancel": "Utzi", + "pad.loading": "Kargatzen...", + "pad.passwordRequired": "Pasahitza behar duzu pad honetara sartzeko", + "pad.permissionDenied": "Ez duzu bamienik pad honetara sartzeko", + "pad.wrongPassword": "Zure pasahitza oker zegoen", + "pad.settings.padSettings": "Pad hobespenak", + "pad.settings.myView": "Nire ikusmoldea", + "pad.settings.stickychat": "Txata beti pantailan", + "pad.settings.colorcheck": "Egiletzaren koloreak", + "pad.settings.linenocheck": "Lerro zenbakiak", + "pad.settings.rtlcheck": "Edukia eskubitik ezkerrera irakurri?", + "pad.settings.fontType": "Tipografia:", + "pad.settings.fontType.normal": "Arrunta", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Ikuspegi Globala", + "pad.settings.language": "Hizkuntza:", + "pad.importExport.import_export": "Inportatu/Esportatu", + "pad.importExport.import": "Igo edozein testu fitxategi edo dokumentu", + "pad.importExport.importSuccessful": "Arrakastatsua!", + "pad.importExport.export": "Oraingo pad hau honela esportatu:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Testu laua", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Testu laua edo html formatudun testuak bakarrik inporta ditzakezu. Aurreratuagoak diren inportazio aukerak izateko abiword instala ezazu.", + "pad.modals.connected": "Konektatuta.", + "pad.modals.reconnecting": "Zure pad-era birkonektatu...", + "pad.modals.forcereconnect": "Berkonexioa fortzatu", + "pad.modals.userdup": "Beste leiho batean ireki da", + "pad.modals.userdup.explanation": "Pad hau zure nabigatzailearen beste leiho batean irekita dagoela ematen du.", + "pad.modals.userdup.advice": "Berriro konektatu beste leiho hau erabiltzeko.", + "pad.modals.unauth": "Baimenik gabe", + "pad.modals.unauth.explanation": "Orrialdea ikusten ari zinela zure baimenak aldatu dira. Saia zaitez berriro konektatzen.", + "pad.modals.looping.explanation": "Sinkronizazio zerbitzariarekin komunikazioa arazoak daude.", + "pad.modals.looping.cause": "Agian firewall edo proxy ez-bateragarri baten bidez konektatu zara.", + "pad.modals.initsocketfail": "Zerbitzarira ezin da iritsi.", + "pad.modals.initsocketfail.explanation": "Ezin izan da konektatu sinkronizazio zerbitzarira.", + "pad.modals.initsocketfail.cause": "Ziurrenik hau zure nabigatzailea edo internet konexioaren arazo bat dela eta izango da.", + "pad.modals.slowcommit.explanation": "Zerbitzariak ez du erantzuten.", + "pad.modals.slowcommit.cause": "Baliteke hau sarearen konexio arazoak direla eta izatea.", + "pad.modals.deleted": "Ezabatua.", + "pad.modals.deleted.explanation": "Pad hau ezabatua izan da.", + "pad.modals.disconnected": "Deskonektatua izan zara.", + "pad.modals.disconnected.explanation": "Zerbitzariaren konexioa galdu da", + "pad.modals.disconnected.cause": "Baliteke zerbitzaria irisgarria ez izatea. Mesedez, esaiguzu hau gertatzen jarraitzen badu.", + "pad.share": "Pad hau partekatu", + "pad.share.readonly": "Irakurtzeko bakarrik", + "pad.share.link": "Lotura", + "pad.share.emebdcode": "URLa txertatu", + "pad.chat": "Txata", + "pad.chat.title": "Pad honetarako txata ireki.", + "pad.chat.loadmessages": "Mezu gehiago kargatu", + "timeslider.pageTitle": "{{appTitle}} denbora lerroa", + "timeslider.toolbar.returnbutton": "Padera itzuli", + "timeslider.toolbar.authors": "Egileak:", + "timeslider.toolbar.authorsList": "Egilerik gabe", + "timeslider.toolbar.exportlink.title": "Esportatu", + "timeslider.exportCurrent": "Gorde bertsio hau honela:", + "timeslider.version": "Bertsioa {{version}}", + "timeslider.saved": "{{year}}ko {{month}}ren {{day}}an gordeta", + "timeslider.dateformat": "{{year}}/{{month}}/{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Urtarrila", + "timeslider.month.february": "Otsaila", + "timeslider.month.march": "Martxoa", + "timeslider.month.april": "Apirila", + "timeslider.month.may": "Maiatza", + "timeslider.month.june": "Ekaina", + "timeslider.month.july": "Uztaila", + "timeslider.month.august": "Abuztua", + "timeslider.month.september": "Iraila", + "timeslider.month.october": "Urria", + "timeslider.month.november": "Azaroa", + "timeslider.month.december": "Abendua", + "timeslider.unnamedauthors": "{{num}} izenik gabeko egileak", + "pad.savedrevs.marked": "Berrikuspen hau markatua dago gordetako berrikuspen gisa", + "pad.userlist.entername": "Sartu zure erabiltzaile izena", + "pad.userlist.unnamed": "izenik gabe", + "pad.userlist.guest": "Gonbidatua", + "pad.userlist.deny": "Ukatu", + "pad.userlist.approve": "Onartu", + "pad.editbar.clearcolors": "Ezabatu egile koloreak dokumentu osoan?", + "pad.impexp.importbutton": "Inportatu orain", + "pad.impexp.importing": "Inportatzen...", + "pad.impexp.confirmimport": "Fitxategi bat inportatzen baduzu oraingo pad honen testua ezabatuko da. Ziur zaude jarraitu nahi duzula?", + "pad.impexp.convertFailed": "Ez gara gai fitxategi hau inportatzeko. Erabil ezazu, mesedez, beste dokumentu formatu bat edo kopiatu eta itsasi eskuz.", + "pad.impexp.uploadFailed": "Igotzean akatsa egon da, saia zaitez berriro", + "pad.impexp.importfailed": "Inportazioak akatsa egin du", + "pad.impexp.copypaste": "Mesedez kopiatu eta pegatu", + "pad.impexp.exportdisabled": "{{type}} formatuarekin esportatzea desgaituta dago. Kontakta ezazu administratzailea detaile gehiagorako." +} diff --git a/sources/src/locales/fa.json b/sources/src/locales/fa.json old mode 100644 new mode 100755 index e006df2..cd42c87 --- a/sources/src/locales/fa.json +++ b/sources/src/locales/fa.json @@ -1,127 +1,132 @@ { - "@metadata": { - "authors": [ - "BMRG14", - "Dalba", - "Ebraminio", - "Reza1615", - "ZxxZxxZ", - "الناز" - ] - }, - "index.newPad": "دفترچه یادداشت تازه", - "index.createOpenPad": "یا ایجاد/بازکردن یک دفترچه یادداشت با نام:", - "pad.toolbar.bold.title": "پررنگ (Ctrl-B)", - "pad.toolbar.italic.title": "کج (Ctrl-I)", - "pad.toolbar.underline.title": "زیرخط (Ctrl-U)", - "pad.toolbar.strikethrough.title": "خط خورده", - "pad.toolbar.ol.title": "فهرست مرتب شده", - "pad.toolbar.ul.title": "فهرست مرتب نشده", - "pad.toolbar.indent.title": "تورفتگی (TAB)", - "pad.toolbar.unindent.title": "بیرون رفتگی (Shift+TAB)", - "pad.toolbar.undo.title": "باطل‌کردن (Ctrl-Z)", - "pad.toolbar.redo.title": "از نو (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "پاک‌کردن رنگ‌های نویسندگی", - "pad.toolbar.import_export.title": "درون‌ریزی/برون‌ریزی از/به قالب‌های مختلف", - "pad.toolbar.timeslider.title": "لغزندهٔ زمان", - "pad.toolbar.savedRevision.title": "ذخیره‌سازی نسخه", - "pad.toolbar.settings.title": "تنظیمات", - "pad.toolbar.embed.title": "اشتراک و جاسازی این دفترچه یادداشت", - "pad.toolbar.showusers.title": "نمایش کاربران در این دفترچه یادداشت", - "pad.colorpicker.save": "ذخیره", - "pad.colorpicker.cancel": "لغو", - "pad.loading": "در حال بارگذاری...", - "pad.passwordRequired": "برای دسترسی به این دفترچه یادداشت نیاز به یک گذرواژه دارید", - "pad.permissionDenied": "شما اجازه‌ی دسترسی به این دفترچه یادداشت را ندارید", - "pad.wrongPassword": "گذرواژه‌ی شما درست نیست", - "pad.settings.padSettings": "تنظیمات دفترچه یادداشت", - "pad.settings.myView": "نمای من", - "pad.settings.stickychat": "گفتگو همیشه روی صفحه نمایش باشد", - "pad.settings.colorcheck": "رنگ‌های نویسندگی", - "pad.settings.linenocheck": "شماره‌ی خطوط", - "pad.settings.rtlcheck": "خواندن محتوا از راست به چپ؟", - "pad.settings.fontType": "نوع قلم:", - "pad.settings.fontType.normal": "ساده", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "نمای سراسری", - "pad.settings.language": "زبان:", - "pad.importExport.import_export": "درون‌ریزی/برون‌ریزی", - "pad.importExport.import": "بارگذاری پرونده‌ی متنی یا سند", - "pad.importExport.importSuccessful": "موفقیت آمیز بود!", - "pad.importExport.export": "برون‌ریزی این دفترچه یادداشت با قالب:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "متن ساده", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (قالب سند باز)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "شما تنها می‌توانید از قالب متن ساده یا اچ‌تی‌ام‌ال درون‌ریزی کنید. برای بیشتر شدن ویژگی‌های درون‌ریزی پیشرفته \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003EAbiWord\u003C/a\u003E را نصب کنید.", - "pad.modals.connected": "متصل شد.", - "pad.modals.reconnecting": "در حال اتصال دوباره به دفترچه یادداشت شما..", - "pad.modals.forcereconnect": "واداشتن به اتصال دوباره", - "pad.modals.userdup": "در پنجره‌ای دیگر باز شد", - "pad.modals.userdup.explanation": "گمان می‌رود این دفترچه یادداشت در بیش از یک پنجره‌ی مرورگر باز شده‌است.", - "pad.modals.userdup.advice": "برای استفاده از این پنجره دوباره وصل شوید.", - "pad.modals.unauth": "مجاز نیست", - "pad.modals.unauth.explanation": "دسترسی شما در حین مشاهده‌ی این برگه تغییر یافته‌است. دوباره متصل شوید.", - "pad.modals.looping.explanation": "مشکلاتی ارتباطی با سرور همگام‌سازی وجود دارد.", - "pad.modals.looping.cause": "شاید شما از طریق یک فایروال یا پروکسی ناسازگار متصل شده‌اید.", - "pad.modals.initsocketfail": "سرور در دسترس نیست.", - "pad.modals.initsocketfail.explanation": "نمی‌توان به سرور همگام سازی وصل شد.", - "pad.modals.initsocketfail.cause": "شاید این به خاطر مشکلی در مرورگر یا اتصال اینترنتی شما باشد.", - "pad.modals.slowcommit.explanation": "سرور پاسخ نمی‌دهد.", - "pad.modals.slowcommit.cause": "این می‌تواند به خاطر مشکلاتی در اتصال به شبکه باشد.", - "pad.modals.badChangeset.explanation": "ویرایشی که شما انجام داده‌اید توسط سرور همگام‌سازی نادرست طیقه‌بندی شده‌است.", - "pad.modals.badChangeset.cause": "این می‌تواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر می‌کنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.", - "pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.", - "pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.", - "pad.modals.deleted": "پاک شد.", - "pad.modals.deleted.explanation": "این دفترچه یادداشت پاک شده‌است.", - "pad.modals.disconnected": "اتصال شما قطع شده‌است.", - "pad.modals.disconnected.explanation": "اتصال به سرور قطع شده‌است.", - "pad.modals.disconnected.cause": "ممکن است سرور در دسترس نباشد. اگر این مشکل باز هم رخ داد مدیر حدمت را آگاه کنید.", - "pad.share": "به اشتراک‌گذاری این دفترچه یادداشت", - "pad.share.readonly": "فقط خواندنی", - "pad.share.link": "پیوند", - "pad.share.emebdcode": "جاسازی نشانی", - "pad.chat": "گفتگو", - "pad.chat.title": "بازکردن گفتگو برای این دفترچه یادداشت", - "pad.chat.loadmessages": "بارگیری پیام‌های بیشتر", - "timeslider.pageTitle": "لغزندهٔ زمان {{appTitle}}", - "timeslider.toolbar.returnbutton": "بازگشت به دفترچه یادداشت", - "timeslider.toolbar.authors": "نویسندگان:", - "timeslider.toolbar.authorsList": "بدون نویسنده", - "timeslider.toolbar.exportlink.title": "برون‌ریزی", - "timeslider.exportCurrent": "برون‌ریزی نگارش کنونی به عنوان:", - "timeslider.version": "نگارش {{version}}", - "timeslider.saved": "{{month}} {{day}}، {{year}} ذخیره شد", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "ژانویه", - "timeslider.month.february": "فبریه", - "timeslider.month.march": "مارچ", - "timeslider.month.april": "آپریل", - "timeslider.month.may": "می", - "timeslider.month.june": "ژوئن", - "timeslider.month.july": "جولای", - "timeslider.month.august": "آگوست", - "timeslider.month.september": "سپتامبر", - "timeslider.month.october": "اکتبر", - "timeslider.month.november": "نوامبر", - "timeslider.month.december": "دسامبر", - "timeslider.unnamedauthors": "{{num}} نویسندهٔ بی‌نام", - "pad.savedrevs.marked": "این بازنویسی هم اکنون به عنوان ذخیره شده علامت‌گذاری شد", - "pad.userlist.entername": "نام خود را بنویسید", - "pad.userlist.unnamed": "بدون نام", - "pad.userlist.guest": "مهمان", - "pad.userlist.deny": "رد کردن", - "pad.userlist.approve": "پذیرفتن", - "pad.editbar.clearcolors": "رنگ نویسندگی از همه‌ی سند پاک شود؟", - "pad.impexp.importbutton": "هم اکنون درون‌ریزی کن", - "pad.impexp.importing": "در حال درون‌ریزی...", - "pad.impexp.confirmimport": "با درون‌ریزی یک پرونده نوشتهٔ کنونی دفترچه پاک می‌شود. آیا می‌خواهید ادامه دهید؟", - "pad.impexp.convertFailed": "ما نمی‌توانیم این پرونده را درون‌ریزی کنیم. خواهشمندیم قالب دیگری برای سندتان انتخاب کرده یا بصورت دستی آنرا کپی کنید", - "pad.impexp.uploadFailed": "آپلود انجام نشد، دوباره تلاش کنید", - "pad.impexp.importfailed": "درون‌ریزی انجام نشد", - "pad.impexp.copypaste": "کپی پیست کنید", - "pad.impexp.exportdisabled": "برون‌ریزی با قالب {{type}} از کار افتاده است. برای جزئیات بیشتر با مدیر سیستمتان تماس بگیرید." -} \ No newline at end of file + "@metadata": { + "authors": [ + "BMRG14", + "Dalba", + "Ebraminio", + "Reza1615", + "ZxxZxxZ", + "الناز", + "Omid.koli" + ] + }, + "index.newPad": "دفترچه یادداشت تازه", + "index.createOpenPad": "یا ایجاد/بازکردن یک دفترچه یادداشت با نام:", + "pad.toolbar.bold.title": "پررنگ (Ctrl-B)", + "pad.toolbar.italic.title": "کج (Ctrl-I)", + "pad.toolbar.underline.title": "زیرخط (Ctrl-U)", + "pad.toolbar.strikethrough.title": "خط خورده (Ctrl+5)", + "pad.toolbar.ol.title": "فهرست مرتب شده (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "فهرست مرتب نشده (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "تورفتگی (TAB)", + "pad.toolbar.unindent.title": "بیرون رفتگی (Shift+TAB)", + "pad.toolbar.undo.title": "باطل‌کردن (Ctrl-Z)", + "pad.toolbar.redo.title": "از نو (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "پاک‌کردن رنگ‌های نویسندگی (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "درون‌ریزی/برون‌ریزی از/به قالب‌های مختلف", + "pad.toolbar.timeslider.title": "لغزندهٔ زمان", + "pad.toolbar.savedRevision.title": "ذخیره‌سازی نسخه", + "pad.toolbar.settings.title": "تنظیمات", + "pad.toolbar.embed.title": "اشتراک و جاسازی این دفترچه یادداشت", + "pad.toolbar.showusers.title": "نمایش کاربران در این دفترچه یادداشت", + "pad.colorpicker.save": "ذخیره", + "pad.colorpicker.cancel": "لغو", + "pad.loading": "در حال بارگذاری...", + "pad.noCookie": "کوکی یافت نشد. لطفاً اجازهٔ اجرای کوکی در مروگرتان را بدهید!", + "pad.passwordRequired": "برای دسترسی به این دفترچه یادداشت نیاز به یک گذرواژه دارید", + "pad.permissionDenied": "شما اجازه‌ی دسترسی به این دفترچه یادداشت را ندارید", + "pad.wrongPassword": "گذرواژه‌ی شما درست نیست", + "pad.settings.padSettings": "تنظیمات دفترچه یادداشت", + "pad.settings.myView": "نمای من", + "pad.settings.stickychat": "گفتگو همیشه روی صفحه نمایش باشد", + "pad.settings.chatandusers": "نمایش چت و کاربران", + "pad.settings.colorcheck": "رنگ‌های نویسندگی", + "pad.settings.linenocheck": "شماره‌ی خطوط", + "pad.settings.rtlcheck": "خواندن محتوا از راست به چپ؟", + "pad.settings.fontType": "نوع قلم:", + "pad.settings.fontType.normal": "ساده", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "نمای سراسری", + "pad.settings.language": "زبان:", + "pad.importExport.import_export": "درون‌ریزی/برون‌ریزی", + "pad.importExport.import": "بارگذاری پرونده‌ی متنی یا سند", + "pad.importExport.importSuccessful": "موفقیت آمیز بود!", + "pad.importExport.export": "برون‌ریزی این دفترچه یادداشت با قالب:", + "pad.importExport.exportetherpad": "اترپد", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "متن ساده", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (قالب سند باز)", + "pad.importExport.abiword.innerHTML": "شما تنها می‌توانید از قالب متن ساده یا اچ‌تی‌ام‌ال درون‌ریزی کنید. برای بیشتر شدن ویژگی‌های درون‌ریزی پیشرفته AbiWord را نصب کنید.", + "pad.modals.connected": "متصل شد.", + "pad.modals.reconnecting": "در حال اتصال دوباره به دفترچه یادداشت شما..", + "pad.modals.forcereconnect": "واداشتن به اتصال دوباره", + "pad.modals.userdup": "در پنجره‌ای دیگر باز شد", + "pad.modals.userdup.explanation": "گمان می‌رود این دفترچه یادداشت در بیش از یک پنجره‌ی مرورگر باز شده‌است.", + "pad.modals.userdup.advice": "برای استفاده از این پنجره دوباره وصل شوید.", + "pad.modals.unauth": "مجاز نیست", + "pad.modals.unauth.explanation": "دسترسی شما در حین مشاهده‌ی این برگه تغییر یافته‌است. دوباره متصل شوید.", + "pad.modals.looping.explanation": "مشکلاتی ارتباطی با سرور همگام‌سازی وجود دارد.", + "pad.modals.looping.cause": "شاید شما از طریق یک فایروال یا پروکسی ناسازگار متصل شده‌اید.", + "pad.modals.initsocketfail": "سرور در دسترس نیست.", + "pad.modals.initsocketfail.explanation": "نمی‌توان به سرور همگام سازی وصل شد.", + "pad.modals.initsocketfail.cause": "شاید این به خاطر مشکلی در مرورگر یا اتصال اینترنتی شما باشد.", + "pad.modals.slowcommit.explanation": "سرور پاسخ نمی‌دهد.", + "pad.modals.slowcommit.cause": "این می‌تواند به خاطر مشکلاتی در اتصال به شبکه باشد.", + "pad.modals.badChangeset.explanation": "ویرایشی که شما انجام داده‌اید توسط سرور همگام‌سازی نادرست طیقه‌بندی شده‌است.", + "pad.modals.badChangeset.cause": "این می‌تواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر می‌کنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.", + "pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.", + "pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.", + "pad.modals.deleted": "پاک شد.", + "pad.modals.deleted.explanation": "این دفترچه یادداشت پاک شده‌است.", + "pad.modals.disconnected": "اتصال شما قطع شده‌است.", + "pad.modals.disconnected.explanation": "اتصال به سرور قطع شده‌است.", + "pad.modals.disconnected.cause": "ممکن است سرور در دسترس نباشد. اگر این مشکل باز هم رخ داد مدیر حدمت را آگاه کنید.", + "pad.share": "به اشتراک‌گذاری این دفترچه یادداشت", + "pad.share.readonly": "فقط خواندنی", + "pad.share.link": "پیوند", + "pad.share.emebdcode": "جاسازی نشانی", + "pad.chat": "گفتگو", + "pad.chat.title": "بازکردن گفتگو برای این دفترچه یادداشت", + "pad.chat.loadmessages": "بارگیری پیام‌های بیشتر", + "timeslider.pageTitle": "لغزندهٔ زمان {{appTitle}}", + "timeslider.toolbar.returnbutton": "بازگشت به دفترچه یادداشت", + "timeslider.toolbar.authors": "نویسندگان:", + "timeslider.toolbar.authorsList": "بدون نویسنده", + "timeslider.toolbar.exportlink.title": "برون‌ریزی", + "timeslider.exportCurrent": "برون‌ریزی نگارش کنونی به عنوان:", + "timeslider.version": "نگارش {{version}}", + "timeslider.saved": "{{month}} {{day}}، {{year}} ذخیره شد", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "ژانویه", + "timeslider.month.february": "فوریه", + "timeslider.month.march": "مارس", + "timeslider.month.april": "آوریل", + "timeslider.month.may": "مه", + "timeslider.month.june": "ژوئن", + "timeslider.month.july": "ژوئیه", + "timeslider.month.august": "اوت", + "timeslider.month.september": "سپتامبر", + "timeslider.month.october": "اکتبر", + "timeslider.month.november": "نوامبر", + "timeslider.month.december": "دسامبر", + "timeslider.unnamedauthors": "{{num}} نویسندهٔ بی‌نام", + "pad.savedrevs.marked": "این بازنویسی هم اکنون به عنوان ذخیره شده علامت‌گذاری شد", + "pad.savedrevs.timeslider": "شما می‌توانید نسخه‌های ذخیره شده را با دیدن نوار زمان ببنید", + "pad.userlist.entername": "نام خود را بنویسید", + "pad.userlist.unnamed": "بدون نام", + "pad.userlist.guest": "مهمان", + "pad.userlist.deny": "رد کردن", + "pad.userlist.approve": "پذیرفتن", + "pad.editbar.clearcolors": "رنگ نویسندگی از همه‌ی سند پاک شود؟", + "pad.impexp.importbutton": "هم اکنون درون‌ریزی کن", + "pad.impexp.importing": "در حال درون‌ریزی...", + "pad.impexp.confirmimport": "با درون‌ریزی یک پرونده نوشتهٔ کنونی دفترچه پاک می‌شود. آیا می‌خواهید ادامه دهید؟", + "pad.impexp.convertFailed": "ما نمی‌توانیم این پرونده را درون‌ریزی کنیم. خواهشمندیم قالب دیگری برای سندتان انتخاب کرده یا بصورت دستی آنرا کپی کنید", + "pad.impexp.padHasData": "امکان درون‌ریز این پرونده نیست زیرا این پد تغییر کرده‌است. لطفاً در پد جدید درون‌ریزی کنید.", + "pad.impexp.uploadFailed": "آپلود انجام نشد، دوباره تلاش کنید", + "pad.impexp.importfailed": "درون‌ریزی انجام نشد", + "pad.impexp.copypaste": "کپی پیست کنید", + "pad.impexp.exportdisabled": "برون‌ریزی با قالب {{type}} از کار افتاده است. برای جزئیات بیشتر با مدیر سیستمتان تماس بگیرید." +} diff --git a/sources/src/locales/fi.json b/sources/src/locales/fi.json old mode 100644 new mode 100755 index 991407c..67efac9 --- a/sources/src/locales/fi.json +++ b/sources/src/locales/fi.json @@ -1,130 +1,134 @@ { - "@metadata": { - "authors": [ - "Artnay", - "Jl", - "Lliehu", - "Nedergard", - "Nike", - "Stryn", - "Tomi Toivio", - "Veikk0.ma", - "VezonThunder" - ] - }, - "index.newPad": "Uusi muistio", - "index.createOpenPad": "tai luo tai avaa muistio nimellä:", - "pad.toolbar.bold.title": "Lihavointi (Ctrl-B)", - "pad.toolbar.italic.title": "Kursivointi (Ctrl-I)", - "pad.toolbar.underline.title": "Alleviivaus (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Yliviivaus", - "pad.toolbar.ol.title": "Numeroitu lista", - "pad.toolbar.ul.title": "Numeroimaton lista", - "pad.toolbar.indent.title": "Sisennä (TAB)", - "pad.toolbar.unindent.title": "Ulonna (Shift+TAB)", - "pad.toolbar.undo.title": "Kumoa (Ctrl-Z)", - "pad.toolbar.redo.title": "Tee uudelleen (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Poista kirjoittajavärit", - "pad.toolbar.import_export.title": "Tuo tai vie eri tiedostomuodoista tai -muotoihin", - "pad.toolbar.timeslider.title": "Aikajana", - "pad.toolbar.savedRevision.title": "Tallenna muutos", - "pad.toolbar.settings.title": "Asetukset", - "pad.toolbar.embed.title": "Jaa ja upota muistio", - "pad.toolbar.showusers.title": "Näytä muistion käyttäjät", - "pad.colorpicker.save": "Tallenna", - "pad.colorpicker.cancel": "Peruuta", - "pad.loading": "Ladataan…", - "pad.passwordRequired": "Tämä muistio on suojattu salasanalla.", - "pad.permissionDenied": "Käyttöoikeutesi eivät riitä tämän muistion käyttämiseen.", - "pad.wrongPassword": "Väärä salasana", - "pad.settings.padSettings": "Muistion asetukset", - "pad.settings.myView": "Oma näkymä", - "pad.settings.stickychat": "Keskustelu aina näkyvissä", - "pad.settings.colorcheck": "Kirjoittajavärit", - "pad.settings.linenocheck": "Rivinumerot", - "pad.settings.rtlcheck": "Luetaanko sisältö oikealta vasemmalle?", - "pad.settings.fontType": "Kirjasintyyppi:", - "pad.settings.fontType.normal": "normaali", - "pad.settings.fontType.monospaced": "tasalevyinen", - "pad.settings.globalView": "Yleisnäkymä", - "pad.settings.language": "Kieli:", - "pad.importExport.import_export": "Tuonti/vienti", - "pad.importExport.import": "Lähetä mikä tahansa tekstitiedosto tai asiakirja", - "pad.importExport.importSuccessful": "Onnistui!", - "pad.importExport.export": "Vie muistio muodossa:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Muotoilematon teksti", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Tuonti on tuettu vain HTML- ja raakatekstitiedostoista. Lisätietoja tuonnin lisäasetuksista on sivulla \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstall abiword\u003C/a\u003E.", - "pad.modals.connected": "Yhdistetty.", - "pad.modals.reconnecting": "Muodostetaan yhteyttä muistioon uudelleen...", - "pad.modals.forcereconnect": "Pakota yhdistämään uudelleen", - "pad.modals.userdup": "Avattu toisessa ikkunassa", - "pad.modals.userdup.explanation": "Tämä muistio vaikuttaa olevan avoinna useammassa eri selainikkunassa tällä koneella.", - "pad.modals.userdup.advice": "Yhdistä uudelleen, jos haluat käyttää tätä ikkunaa.", - "pad.modals.unauth": "Oikeudet eivät riitä", - "pad.modals.unauth.explanation": "Käyttöoikeutesi ovat muuttuneet katsellessasi tätä sivua. Yritä yhdistää uudelleen.", - "pad.modals.looping.explanation": "Synkronointipalvelimen kanssa on yhteysongelmia.", - "pad.modals.looping.cause": "Yhteytesi on mahdollisesti muodostettu yhteensopimattoman palomuurin tai välityspalvelimen kautta.", - "pad.modals.initsocketfail": "Palvelimeen ei saada yhteyttä.", - "pad.modals.initsocketfail.explanation": "Synkronointipalvelimeen ei saatu yhteyttä.", - "pad.modals.initsocketfail.cause": "Tämä johtuu mitä luultavimmin selaimestasi tai verkkoyhteydestäsi.", - "pad.modals.slowcommit.explanation": "Palvelin ei vastaa.", - "pad.modals.slowcommit.cause": "Tämä saattaa johtua verkkoyhteyden ongelmista.", - "pad.modals.badChangeset.explanation": "Tekemäsi muutos määritettiin sääntöjen vastaiseksi synkronointipalvelimen toimesta.", - "pad.modals.badChangeset.cause": "Tämä saattaa johtua virheellisistä palvelinmäärityksistä tai muusta odottamattomasta toiminnasta. Ota yhteys palvelun ylläpitäjään, jos kyseessä on mielestäsi virhe. Yritä jatkaa muokkausta yhdistämällä uudelleen.", - "pad.modals.corruptPad.explanation": "Muistio jota yrität avata on vioittunut.", - "pad.modals.corruptPad.cause": "Tämä saattaa johtua virheellisistä palvelinmäärityksistä tai muusta odottamattomasta toiminnasta. Ota yhteys palvelun ylläpitäjään.", - "pad.modals.deleted": "Poistettu.", - "pad.modals.deleted.explanation": "Tämä muistio on poistettu.", - "pad.modals.disconnected": "Yhteytesi on katkaistu.", - "pad.modals.disconnected.explanation": "Yhteys palvelimeen katkesi", - "pad.modals.disconnected.cause": "Palvelin saattaa olla tavoittamattomissa. Ilmoita palvelun ylläpitäjälle, jos tilanne toistuu usein.", - "pad.share": "Jaa muistio", - "pad.share.readonly": "Vain luku", - "pad.share.link": "Linkki", - "pad.share.emebdcode": "Upotusosoite", - "pad.chat": "Keskustelu", - "pad.chat.title": "Avaa keskustelu nykyisestä muistiosta.", - "pad.chat.loadmessages": "Lataa lisää viestejä", - "timeslider.pageTitle": "{{appTitle}} -aikajana", - "timeslider.toolbar.returnbutton": "Palaa muistioon", - "timeslider.toolbar.authors": "Tekijät:", - "timeslider.toolbar.authorsList": "Ei tekijöitä", - "timeslider.toolbar.exportlink.title": "Vie", - "timeslider.exportCurrent": "Vie nykyinen versio muodossa:", - "timeslider.version": "Versio {{version}}", - "timeslider.saved": "Tallennettu {{day}}. {{month}}ta {{year}}", - "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "tammikuu", - "timeslider.month.february": "helmikuu", - "timeslider.month.march": "maaliskuu", - "timeslider.month.april": "huhtikuu", - "timeslider.month.may": "toukokuu", - "timeslider.month.june": "kesäkuu", - "timeslider.month.july": "heinäkuu", - "timeslider.month.august": "elokuu", - "timeslider.month.september": "syyskuu", - "timeslider.month.october": "lokakuu", - "timeslider.month.november": "marraskuu", - "timeslider.month.december": "joulukuu", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: nimetön tekijä, other: nimetöntä tekijää ]}", - "pad.savedrevs.marked": "Tämä versio on nyt merkitty tallennetuksi versioksi", - "pad.userlist.entername": "Kirjoita nimesi", - "pad.userlist.unnamed": "nimetön", - "pad.userlist.guest": "Vieras", - "pad.userlist.deny": "Estä", - "pad.userlist.approve": "Hyväksy", - "pad.editbar.clearcolors": "Poistetaanko asiakirjasta tekijävärit?", - "pad.impexp.importbutton": "Tuo nyt", - "pad.impexp.importing": "Tuodaan...", - "pad.impexp.confirmimport": "Tiedoston tuonti korvaa kaiken muistiossa olevan tekstin. Haluatko varmasti jatkaa?", - "pad.impexp.convertFailed": "TIedoston tuonti epäonnistui. Käytä eri tiedostomuotoa tai kopioi ja liitä käsin.", - "pad.impexp.uploadFailed": "Lähetys epäonnistui. Yritä uudelleen.", - "pad.impexp.importfailed": "Tuonti epäonnistui", - "pad.impexp.copypaste": "Kopioi ja liitä", - "pad.impexp.exportdisabled": "Vienti muotoon \"{{type}}\" ei ole käytössä. Ota yhteys ylläpitäjään saadaksesi lisätietoja." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Artnay", + "Jl", + "Lliehu", + "Nedergard", + "Nike", + "Stryn", + "Tomi Toivio", + "Veikk0.ma", + "VezonThunder", + "Macofe", + "MrTapsa", + "Silvonen" + ] + }, + "index.newPad": "Uusi muistio", + "index.createOpenPad": "tai luo tai avaa muistio nimellä:", + "pad.toolbar.bold.title": "Lihavointi (Ctrl-B)", + "pad.toolbar.italic.title": "Kursivointi (Ctrl-I)", + "pad.toolbar.underline.title": "Alleviivaus (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Yliviivaus (Ctrl+5)", + "pad.toolbar.ol.title": "Numeroitu lista (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Numeroimaton lista (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Sisennä (TAB)", + "pad.toolbar.unindent.title": "Ulonna (Shift+TAB)", + "pad.toolbar.undo.title": "Kumoa (Ctrl-Z)", + "pad.toolbar.redo.title": "Tee uudelleen (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Poista kirjoittajavärit (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Tuo tai vie eri tiedostomuodoista tai -muotoihin", + "pad.toolbar.timeslider.title": "Aikajana", + "pad.toolbar.savedRevision.title": "Tallenna muutos", + "pad.toolbar.settings.title": "Asetukset", + "pad.toolbar.embed.title": "Jaa ja upota muistio", + "pad.toolbar.showusers.title": "Näytä muistion käyttäjät", + "pad.colorpicker.save": "Tallenna", + "pad.colorpicker.cancel": "Peru", + "pad.loading": "Ladataan…", + "pad.noCookie": "Evästettä ei löytynyt. Ole hyvä, ja salli evästeet selaimessasi!", + "pad.passwordRequired": "Tämä muistio on suojattu salasanalla.", + "pad.permissionDenied": "Käyttöoikeutesi eivät riitä tämän muistion käyttämiseen.", + "pad.wrongPassword": "Väärä salasana", + "pad.settings.padSettings": "Muistion asetukset", + "pad.settings.myView": "Oma näkymä", + "pad.settings.stickychat": "Keskustelu aina näkyvissä", + "pad.settings.colorcheck": "Kirjoittajavärit", + "pad.settings.linenocheck": "Rivinumerot", + "pad.settings.rtlcheck": "Luetaanko sisältö oikealta vasemmalle?", + "pad.settings.fontType": "Fonttityyppi:", + "pad.settings.fontType.normal": "normaali", + "pad.settings.fontType.monospaced": "tasalevyinen", + "pad.settings.globalView": "Yleisnäkymä", + "pad.settings.language": "Kieli:", + "pad.importExport.import_export": "Tuonti/vienti", + "pad.importExport.import": "Lähetä mikä tahansa tekstitiedosto tai asiakirja", + "pad.importExport.importSuccessful": "Onnistui!", + "pad.importExport.export": "Vie muistio muodossa:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Muotoilematon teksti", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Tuonti on tuettu vain HTML- ja raakatekstitiedostoista. Lisätietoja tuonnin lisäasetuksista on sivulla install abiword.", + "pad.modals.connected": "Yhdistetty.", + "pad.modals.reconnecting": "Muodostetaan yhteyttä muistioon uudelleen...", + "pad.modals.forcereconnect": "Pakota yhdistämään uudelleen", + "pad.modals.userdup": "Avattu toisessa ikkunassa", + "pad.modals.userdup.explanation": "Tämä muistio vaikuttaa olevan avoinna useammassa eri selainikkunassa tällä koneella.", + "pad.modals.userdup.advice": "Yhdistä uudelleen, jos haluat käyttää tätä ikkunaa.", + "pad.modals.unauth": "Oikeudet eivät riitä", + "pad.modals.unauth.explanation": "Käyttöoikeutesi ovat muuttuneet katsellessasi tätä sivua. Yritä yhdistää uudelleen.", + "pad.modals.looping.explanation": "Synkronointipalvelimen kanssa on yhteysongelmia.", + "pad.modals.looping.cause": "Yhteytesi on mahdollisesti muodostettu yhteensopimattoman palomuurin tai välityspalvelimen kautta.", + "pad.modals.initsocketfail": "Palvelimeen ei saada yhteyttä.", + "pad.modals.initsocketfail.explanation": "Synkronointipalvelimeen ei saatu yhteyttä.", + "pad.modals.initsocketfail.cause": "Tämä johtuu mitä luultavimmin selaimestasi tai verkkoyhteydestäsi.", + "pad.modals.slowcommit.explanation": "Palvelin ei vastaa.", + "pad.modals.slowcommit.cause": "Tämä saattaa johtua verkkoyhteyden ongelmista.", + "pad.modals.badChangeset.explanation": "Tekemäsi muutos määritettiin sääntöjen vastaiseksi synkronointipalvelimen toimesta.", + "pad.modals.badChangeset.cause": "Tämä saattaa johtua virheellisistä palvelinmäärityksistä tai muusta odottamattomasta toiminnasta. Ota yhteys palvelun ylläpitäjään, jos kyseessä on mielestäsi virhe. Yritä jatkaa muokkausta yhdistämällä uudelleen.", + "pad.modals.corruptPad.explanation": "Muistio jota yrität avata on vioittunut.", + "pad.modals.corruptPad.cause": "Tämä saattaa johtua virheellisistä palvelinmäärityksistä tai muusta odottamattomasta toiminnasta. Ota yhteys palvelun ylläpitäjään.", + "pad.modals.deleted": "Poistettu.", + "pad.modals.deleted.explanation": "Tämä muistio on poistettu.", + "pad.modals.disconnected": "Yhteytesi on katkaistu.", + "pad.modals.disconnected.explanation": "Yhteys palvelimeen katkesi", + "pad.modals.disconnected.cause": "Palvelin saattaa olla tavoittamattomissa. Ilmoita palvelun ylläpitäjälle, jos tilanne toistuu usein.", + "pad.share": "Jaa muistio", + "pad.share.readonly": "Vain luku", + "pad.share.link": "Linkki", + "pad.share.emebdcode": "Upotusosoite", + "pad.chat": "Keskustelu", + "pad.chat.title": "Avaa keskustelu nykyisestä muistiosta.", + "pad.chat.loadmessages": "Lataa lisää viestejä", + "timeslider.pageTitle": "{{appTitle}} -aikajana", + "timeslider.toolbar.returnbutton": "Palaa muistioon", + "timeslider.toolbar.authors": "Tekijät:", + "timeslider.toolbar.authorsList": "Ei tekijöitä", + "timeslider.toolbar.exportlink.title": "Vie", + "timeslider.exportCurrent": "Vie nykyinen versio muodossa:", + "timeslider.version": "Versio {{version}}", + "timeslider.saved": "Tallennettu {{day}}. {{month}}ta {{year}}", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "tammikuu", + "timeslider.month.february": "helmikuu", + "timeslider.month.march": "maaliskuu", + "timeslider.month.april": "huhtikuu", + "timeslider.month.may": "toukokuu", + "timeslider.month.june": "kesäkuu", + "timeslider.month.july": "heinäkuu", + "timeslider.month.august": "elokuu", + "timeslider.month.september": "syyskuu", + "timeslider.month.october": "lokakuu", + "timeslider.month.november": "marraskuu", + "timeslider.month.december": "joulukuu", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: nimetön tekijä, other: nimetöntä tekijää ]}", + "pad.savedrevs.marked": "Tämä versio on nyt merkitty tallennetuksi versioksi", + "pad.userlist.entername": "Kirjoita nimesi", + "pad.userlist.unnamed": "nimetön", + "pad.userlist.guest": "Vieras", + "pad.userlist.deny": "Estä", + "pad.userlist.approve": "Hyväksy", + "pad.editbar.clearcolors": "Poistetaanko asiakirjasta tekijävärit?", + "pad.impexp.importbutton": "Tuo nyt", + "pad.impexp.importing": "Tuodaan...", + "pad.impexp.confirmimport": "Tiedoston tuonti korvaa kaiken muistiossa olevan tekstin. Haluatko varmasti jatkaa?", + "pad.impexp.convertFailed": "TIedoston tuonti epäonnistui. Käytä eri tiedostomuotoa tai kopioi ja liitä käsin.", + "pad.impexp.uploadFailed": "Lähetys epäonnistui. Yritä uudelleen.", + "pad.impexp.importfailed": "Tuonti epäonnistui", + "pad.impexp.copypaste": "Kopioi ja liitä", + "pad.impexp.exportdisabled": "Vienti muotoon \"{{type}}\" ei ole käytössä. Ota yhteys ylläpitäjään saadaksesi lisätietoja." +} diff --git a/sources/src/locales/fo.json b/sources/src/locales/fo.json old mode 100644 new mode 100755 index 3871f12..43e9d9f --- a/sources/src/locales/fo.json +++ b/sources/src/locales/fo.json @@ -1,94 +1,93 @@ { - "@metadata": { - "authors": [ - "EileenSanda" - ] - }, - "index.newPad": "Nýggjur teldil", - "pad.toolbar.bold.title": "Við feitum (Ctrl-B)", - "pad.toolbar.italic.title": "Skráskrift (Ctrl-I)", - "pad.toolbar.underline.title": "Undirstrikað (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Gjøgnumstrikað", - "pad.toolbar.ol.title": "Bíleggingarlisti", - "pad.toolbar.undo.title": "Angra (Ctrl-Z)", - "pad.toolbar.redo.title": "Ger umaftur (Ctrl-Y)", - "pad.toolbar.import_export.title": "Innflyt/Útflyt frá/til ymiskar fílustøddir", - "pad.toolbar.savedRevision.title": "Goym Endurskoðan", - "pad.toolbar.settings.title": "Innstillingar", - "pad.toolbar.embed.title": "Deil og Innset henda pad'in", - "pad.toolbar.showusers.title": "Vís brúkarar á hesum paddi", - "pad.colorpicker.save": "Goym", - "pad.colorpicker.cancel": "Ógilda", - "pad.loading": "Løðir...", - "pad.passwordRequired": "Tú hevur brúk fyri einum loyniorði fyri at fáa atgongd til henda paddin", - "pad.permissionDenied": "Tú hevur ikki loyvi til at fáa atgongd til henda paddin", - "pad.wrongPassword": "Títt loyniorð var skeivt", - "pad.settings.padSettings": "Pad innstillingar", - "pad.settings.myView": "Mín sýning", - "pad.settings.stickychat": "Kjatta altíð á skerminum", - "pad.settings.colorcheck": "Litir hjá rithøvundaskapinum", - "pad.settings.linenocheck": "Linjunummur", - "pad.settings.rtlcheck": "Vil tú lesa innihaldið frá høgru til vinstu?", - "pad.settings.fontType": "Skriftslag:", - "pad.settings.fontType.normal": "Vanligt", - "pad.settings.fontType.monospaced": "Føst breidd", - "pad.settings.globalView": "Global sýning", - "pad.settings.language": "Mál:", - "pad.importExport.import_export": "Innflyt/Útflyt", - "pad.importExport.import": "Legg út onkra tekstfílu ella dokument", - "pad.importExport.importSuccessful": "Tað eydnaðist!", - "pad.importExport.export": "Útflyt verandi pad sum:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Einfaldur tekstur", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Opið Dokument Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Tú kanst bert innflyta frá einføldum teksti ella html formatum. Fyri funksjónir til innflytan fyri víðarikomin vinarliga \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstallera abiword\u003C/a\u003E.", - "pad.modals.connected": "Tú hevur samband.", - "pad.modals.reconnecting": "Roynir aftur at fáa samband við tín pad..", - "pad.modals.forcereconnect": "Tvinga endurstovnan av sambandi.", - "pad.modals.userdup": "Er latið upp í øðrum vindeyga", - "pad.modals.userdup.explanation": "Tað sær út til at hesin paddurin er latin upp í meira enn einum brovsara vindeyga á hesari telduni.", - "pad.modals.userdup.advice": "Endurstovna sambandi fyri at nýta hetta vindeyga í staðin.", - "pad.modals.unauth": "Er ikki loyvt", - "pad.modals.unauth.explanation": "Tíni loyvi eru broytt, meðan tú hevur hugt at hesi síðuni. Royn og endurstovna sambandi.", - "pad.modals.initsocketfail": "Ambætarin er óatkomuligur.", - "pad.modals.initsocketfail.cause": "Hetta skyldast mest sannlíkt ein trupulleika við tínum kaga/brovsara ella við tínum internetsambandi.", - "pad.modals.slowcommit.explanation": "Ambætarin (servarin) svarar ikki.", - "pad.modals.slowcommit.cause": "Hetta kann skyldast trupulleikar við netverkssambandinum.", - "pad.modals.deleted": "Er strikað.", - "pad.modals.deleted.explanation": "Hesin paddurin er fluttur.", - "pad.modals.disconnected": "Tú hevur mist sambandi.", - "pad.modals.disconnected.explanation": "Sambandið til ambætarin er avbrotið", - "pad.share": "Deil henda paddin", - "pad.share.readonly": "Vart fyri skriving", - "pad.share.link": "Slóð", - "timeslider.toolbar.returnbutton": "Vend aftur til pad'in", - "timeslider.toolbar.authors": "Høvundar:", - "timeslider.toolbar.authorsList": "Ongir høvundar", - "timeslider.toolbar.exportlink.title": "Útflyt", - "timeslider.exportCurrent": "Útflyt hesa versjóna sum:", - "timeslider.version": "Versjón {{version}}", - "timeslider.saved": "Goymt {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januar", - "timeslider.month.february": "Februar", - "timeslider.month.march": "Mars", - "timeslider.month.april": "Apríl", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Juni", - "timeslider.month.july": "Juli", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "October", - "timeslider.month.november": "November", - "timeslider.month.december": "Desember", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: ónevndur rithøvundur, other: ónevndir rithøvundar ]}", - "pad.savedrevs.marked": "Henda endurskoðanin er nú merkt sum ein goymd endurskoðan", - "pad.userlist.entername": "Skriva títt navn", - "pad.userlist.unnamed": "ikki-navngivið", - "pad.userlist.guest": "Gestur", - "pad.userlist.deny": "Nokta", - "pad.userlist.approve": "Góðkenn" -} \ No newline at end of file + "@metadata": { + "authors": [ + "EileenSanda" + ] + }, + "index.newPad": "Nýggjur teldil", + "pad.toolbar.bold.title": "Við feitum (Ctrl-B)", + "pad.toolbar.italic.title": "Skráskrift (Ctrl-I)", + "pad.toolbar.underline.title": "Undirstrikað (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Gjøgnumstrikað", + "pad.toolbar.ol.title": "Bíleggingarlisti", + "pad.toolbar.undo.title": "Angra (Ctrl-Z)", + "pad.toolbar.redo.title": "Ger umaftur (Ctrl-Y)", + "pad.toolbar.import_export.title": "Innflyt/Útflyt frá/til ymiskar fílustøddir", + "pad.toolbar.savedRevision.title": "Goym Endurskoðan", + "pad.toolbar.settings.title": "Innstillingar", + "pad.toolbar.embed.title": "Deil og Innset henda pad'in", + "pad.toolbar.showusers.title": "Vís brúkarar á hesum paddi", + "pad.colorpicker.save": "Goym", + "pad.colorpicker.cancel": "Ógilda", + "pad.loading": "Løðir...", + "pad.passwordRequired": "Tú hevur brúk fyri einum loyniorði fyri at fáa atgongd til henda paddin", + "pad.permissionDenied": "Tú hevur ikki loyvi til at fáa atgongd til henda paddin", + "pad.wrongPassword": "Títt loyniorð var skeivt", + "pad.settings.padSettings": "Pad innstillingar", + "pad.settings.myView": "Mín sýning", + "pad.settings.stickychat": "Kjatta altíð á skerminum", + "pad.settings.colorcheck": "Litir hjá rithøvundaskapinum", + "pad.settings.linenocheck": "Linjunummur", + "pad.settings.rtlcheck": "Vil tú lesa innihaldið frá høgru til vinstu?", + "pad.settings.fontType": "Skriftslag:", + "pad.settings.fontType.normal": "Vanligt", + "pad.settings.fontType.monospaced": "Føst breidd", + "pad.settings.globalView": "Global sýning", + "pad.settings.language": "Mál:", + "pad.importExport.import_export": "Innflyt/Útflyt", + "pad.importExport.import": "Legg út onkra tekstfílu ella dokument", + "pad.importExport.importSuccessful": "Tað eydnaðist!", + "pad.importExport.export": "Útflyt verandi pad sum:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Einfaldur tekstur", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Opið Dokument Format)", + "pad.importExport.abiword.innerHTML": "Tú kanst bert innflyta frá einføldum teksti ella html formatum. Fyri funksjónir til innflytan fyri víðarikomin vinarliga installera abiword.", + "pad.modals.connected": "Tú hevur samband.", + "pad.modals.reconnecting": "Roynir aftur at fáa samband við tín pad..", + "pad.modals.forcereconnect": "Tvinga endurstovnan av sambandi.", + "pad.modals.userdup": "Er latið upp í øðrum vindeyga", + "pad.modals.userdup.explanation": "Tað sær út til at hesin paddurin er latin upp í meira enn einum brovsara vindeyga á hesari telduni.", + "pad.modals.userdup.advice": "Endurstovna sambandi fyri at nýta hetta vindeyga í staðin.", + "pad.modals.unauth": "Er ikki loyvt", + "pad.modals.unauth.explanation": "Tíni loyvi eru broytt, meðan tú hevur hugt at hesi síðuni. Royn og endurstovna sambandi.", + "pad.modals.initsocketfail": "Ambætarin er óatkomuligur.", + "pad.modals.initsocketfail.cause": "Hetta skyldast mest sannlíkt ein trupulleika við tínum kaga/brovsara ella við tínum internetsambandi.", + "pad.modals.slowcommit.explanation": "Ambætarin (servarin) svarar ikki.", + "pad.modals.slowcommit.cause": "Hetta kann skyldast trupulleikar við netverkssambandinum.", + "pad.modals.deleted": "Er strikað.", + "pad.modals.deleted.explanation": "Hesin paddurin er fluttur.", + "pad.modals.disconnected": "Tú hevur mist sambandi.", + "pad.modals.disconnected.explanation": "Sambandið til ambætarin er avbrotið", + "pad.share": "Deil henda paddin", + "pad.share.readonly": "Vart fyri skriving", + "pad.share.link": "Slóð", + "timeslider.toolbar.returnbutton": "Vend aftur til pad'in", + "timeslider.toolbar.authors": "Høvundar:", + "timeslider.toolbar.authorsList": "Ongir høvundar", + "timeslider.toolbar.exportlink.title": "Útflyt", + "timeslider.exportCurrent": "Útflyt hesa versjóna sum:", + "timeslider.version": "Versjón {{version}}", + "timeslider.saved": "Goymt {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januar", + "timeslider.month.february": "Februar", + "timeslider.month.march": "Mars", + "timeslider.month.april": "Apríl", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Juni", + "timeslider.month.july": "Juli", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "October", + "timeslider.month.november": "November", + "timeslider.month.december": "Desember", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: ónevndur rithøvundur, other: ónevndir rithøvundar ]}", + "pad.savedrevs.marked": "Henda endurskoðanin er nú merkt sum ein goymd endurskoðan", + "pad.userlist.entername": "Skriva títt navn", + "pad.userlist.unnamed": "ikki-navngivið", + "pad.userlist.guest": "Gestur", + "pad.userlist.deny": "Nokta", + "pad.userlist.approve": "Góðkenn" +} diff --git a/sources/src/locales/fr.json b/sources/src/locales/fr.json old mode 100644 new mode 100755 index 7546a0f..ba289e3 --- a/sources/src/locales/fr.json +++ b/sources/src/locales/fr.json @@ -1,137 +1,143 @@ { - "@metadata": { - "authors": [ - "Cquoi", - "Crochet.david", - "Gomoko", - "Goofy", - "Goofy-bz", - "Jean-Frédéric", - "Leviathan", - "McDutchie", - "Metroitendo", - "Od1n", - "Peter17", - "Quenenni", - "Rastus Vernon", - "Stephane Cottin", - "Tux-tn", - "Maxim21" - ] - }, - "index.newPad": "Nouveau pad", - "index.createOpenPad": "ou créer/ouvrir un pad intitulé :", - "pad.toolbar.bold.title": "Gras (Ctrl-B)", - "pad.toolbar.italic.title": "Italique (Ctrl-I)", - "pad.toolbar.underline.title": "Souligné (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Barré", - "pad.toolbar.ol.title": "Liste ordonnée", - "pad.toolbar.ul.title": "Liste non ordonnée", - "pad.toolbar.indent.title": "Indenter (TAB)", - "pad.toolbar.unindent.title": "Désindenter (Maj+TAB)", - "pad.toolbar.undo.title": "Annuler (Ctrl-Z)", - "pad.toolbar.redo.title": "Rétablir (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Effacer les couleurs identifiant les auteurs", - "pad.toolbar.import_export.title": "Importer/Exporter de/vers un format de fichier différent", - "pad.toolbar.timeslider.title": "Historique dynamique", - "pad.toolbar.savedRevision.title": "Enregistrer la révision", - "pad.toolbar.settings.title": "Paramètres", - "pad.toolbar.embed.title": "Partager et intégrer ce pad", - "pad.toolbar.showusers.title": "Afficher les utilisateurs du pad", - "pad.colorpicker.save": "Enregistrer", - "pad.colorpicker.cancel": "Annuler", - "pad.loading": "Chargement…", - "pad.passwordRequired": "Vous avez besoin d'un mot de passe pour accéder à ce pad", - "pad.permissionDenied": "Il ne vous est pas permis d’accéder à ce pad", - "pad.wrongPassword": "Votre mot de passe est incorrect", - "pad.settings.padSettings": "Paramètres du pad", - "pad.settings.myView": "Ma vue", - "pad.settings.stickychat": "Toujours afficher le chat", - "pad.settings.colorcheck": "Couleurs d’identification", - "pad.settings.linenocheck": "Numéros de lignes", - "pad.settings.rtlcheck": "Lecture de droite à gauche", - "pad.settings.fontType": "Police :", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Vue d’ensemble", - "pad.settings.language": "Langue :", - "pad.importExport.import_export": "Importer/Exporter", - "pad.importExport.import": "Charger un texte ou un document", - "pad.importExport.importSuccessful": "Réussi!", - "pad.importExport.export": "Exporter le pad actuel comme :", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Texte brut", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Vous ne pouvez importer que des formats texte brut ou html. Pour des fonctionnalités d'importation plus évoluées, veuillez \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstaller abiword\u003C/a\u003E.", - "pad.modals.connected": "Connecté.", - "pad.modals.reconnecting": "Reconnexion vers votre pad...", - "pad.modals.forcereconnect": "Forcer la reconnexion", - "pad.modals.userdup": "Ouvert dans une autre fenêtre", - "pad.modals.userdup.explanation": "Ce pad semble être ouvert dans plus d'une fenêtre de navigateur sur cet ordinateur.", - "pad.modals.userdup.advice": "Se reconnecter en utilisant cette fenêtre.", - "pad.modals.unauth": "Non autorisé", - "pad.modals.unauth.explanation": "Vos permissions ont été changées lors de l'affichage de cette page. Essayez de vous reconnecter.", - "pad.modals.looping.explanation": "Nous éprouvons un problème de communication au serveur de synchronisation.", - "pad.modals.looping.cause": "Il est possible que votre connexion soit protégée par un pare-feu ou un serveur mandataire incompatible.", - "pad.modals.initsocketfail": "Le serveur est introuvable.", - "pad.modals.initsocketfail.explanation": "Impossible de se connecter au serveur de synchronisation.", - "pad.modals.initsocketfail.cause": "Ceci est probablement dû à un problème avec votre navigateur ou votre connexion internet.", - "pad.modals.slowcommit.explanation": "Le serveur ne répond pas.", - "pad.modals.slowcommit.cause": "Ce problème peut venir d'une mauvaise connectivité au réseau.", - "pad.modals.badChangeset.explanation": "Une modification que vous avez effectuée a été classée comme illégale par le serveur de synchronisation.", - "pad.modals.badChangeset.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter l’administrateur du service, si vous pensez que c’est une erreur. Essayez de vous reconnecter pour continuer à modifier.", - "pad.modals.corruptPad.explanation": "Le bloc auquel vous essayez d’accéder est corrompu.", - "pad.modals.corruptPad.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter l’administrateur du service.", - "pad.modals.deleted": "Supprimé.", - "pad.modals.deleted.explanation": "Ce pad a été supprimé.", - "pad.modals.disconnected": "Vous avez été déconnecté.", - "pad.modals.disconnected.explanation": "La connexion au serveur a échoué.", - "pad.modals.disconnected.cause": "Il se peut que le serveur soit indisponible. Si le problème persiste, veuillez en informer l’administrateur du service.", - "pad.share": "Partager ce pad", - "pad.share.readonly": "Lecture seule", - "pad.share.link": "Lien", - "pad.share.emebdcode": "Incorporer un lien", - "pad.chat": "Chat", - "pad.chat.title": "Ouvrir le chat associé à ce pad.", - "pad.chat.loadmessages": "Charger davantage de messages", - "timeslider.pageTitle": "Historique dynamique de {{appTitle}}", - "timeslider.toolbar.returnbutton": "Retourner au pad", - "timeslider.toolbar.authors": "Auteurs :", - "timeslider.toolbar.authorsList": "Aucun auteur", - "timeslider.toolbar.exportlink.title": "Exporter", - "timeslider.exportCurrent": "Exporter la version actuelle en :", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Enregistré le {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Janvier", - "timeslider.month.february": "Février", - "timeslider.month.march": "Mars", - "timeslider.month.april": "Avril", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Juin", - "timeslider.month.july": "Juillet", - "timeslider.month.august": "Août", - "timeslider.month.september": "Septembre", - "timeslider.month.october": "Octobre", - "timeslider.month.november": "Novembre", - "timeslider.month.december": "Décembre", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: auteur anonyme, other: auteurs anonymes ]}", - "pad.savedrevs.marked": "Cette révision est maintenant marquée comme révision enregistrée", - "pad.userlist.entername": "Entrez votre nom", - "pad.userlist.unnamed": "anonyme", - "pad.userlist.guest": "Invité", - "pad.userlist.deny": "Refuser", - "pad.userlist.approve": "Approuver", - "pad.editbar.clearcolors": "Effacer les couleurs de paternité dans tout le document ?", - "pad.impexp.importbutton": "Importer maintenant", - "pad.impexp.importing": "Import en cours...", - "pad.impexp.confirmimport": "Importer un fichier écrasera le texte actuel du pad. Êtes-vous sûr de vouloir le faire?", - "pad.impexp.convertFailed": "Nous ne pouvons pas importer ce fichier. Veuillez utiliser un autre format de document ou faire un copier/coller manuel", - "pad.impexp.uploadFailed": "Le téléchargement a échoué, veuillez réessayer", - "pad.impexp.importfailed": "Échec de l'importation", - "pad.impexp.copypaste": "Veuillez copier/coller", - "pad.impexp.exportdisabled": "Exporter au format {{type}} est désactivé. Veuillez contacter votre administrateur système pour plus de détails." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Cquoi", + "Crochet.david", + "Gomoko", + "Goofy", + "Goofy-bz", + "Jean-Frédéric", + "Leviathan", + "McDutchie", + "Metroitendo", + "Od1n", + "Peter17", + "Quenenni", + "Rastus Vernon", + "Stephane Cottin", + "Tux-tn", + "Maxim21", + "Boniface", + "Macofe" + ] + }, + "index.newPad": "Nouveau pad", + "index.createOpenPad": "ou créer/ouvrir un pad intitulé :", + "pad.toolbar.bold.title": "Gras (Ctrl-B)", + "pad.toolbar.italic.title": "Italique (Ctrl-I)", + "pad.toolbar.underline.title": "Souligné (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Barré (Ctrl+5)", + "pad.toolbar.ol.title": "Liste ordonnée (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Liste non ordonnée (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Indenter (TAB)", + "pad.toolbar.unindent.title": "Désindenter (Maj+TAB)", + "pad.toolbar.undo.title": "Annuler (Ctrl-Z)", + "pad.toolbar.redo.title": "Rétablir (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Effacer les couleurs identifiant les auteurs (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importer/Exporter de/vers un format de fichier différent", + "pad.toolbar.timeslider.title": "Historique dynamique", + "pad.toolbar.savedRevision.title": "Enregistrer la révision", + "pad.toolbar.settings.title": "Paramètres", + "pad.toolbar.embed.title": "Partager et intégrer ce pad", + "pad.toolbar.showusers.title": "Afficher les utilisateurs du pad", + "pad.colorpicker.save": "Enregistrer", + "pad.colorpicker.cancel": "Annuler", + "pad.loading": "Chargement…", + "pad.noCookie": "Le cookie n’a pas pu être trouvé. Veuillez autoriser les cookies dans votre navigateur !", + "pad.passwordRequired": "Vous avez besoin d'un mot de passe pour accéder à ce pad", + "pad.permissionDenied": "Il ne vous est pas permis d’accéder à ce pad", + "pad.wrongPassword": "Votre mot de passe est incorrect", + "pad.settings.padSettings": "Paramètres du pad", + "pad.settings.myView": "Ma vue", + "pad.settings.stickychat": "Toujours afficher le chat", + "pad.settings.chatandusers": "Afficher la discussion et les utilisateurs", + "pad.settings.colorcheck": "Couleurs d’identification", + "pad.settings.linenocheck": "Numéros de lignes", + "pad.settings.rtlcheck": "Le contenu doit-il être lu de droite à gauche ?", + "pad.settings.fontType": "Police :", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Vue d’ensemble", + "pad.settings.language": "Langue :", + "pad.importExport.import_export": "Importer/Exporter", + "pad.importExport.import": "Charger un texte ou un document", + "pad.importExport.importSuccessful": "Réussi !", + "pad.importExport.export": "Exporter le pad actuel comme :", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Texte brut", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Vous ne pouvez importer que des formats texte brut ou html. Pour des fonctionnalités d'importation plus évoluées, veuillez installer abiword.", + "pad.modals.connected": "Connecté.", + "pad.modals.reconnecting": "Reconnexion vers votre pad...", + "pad.modals.forcereconnect": "Forcer la reconnexion", + "pad.modals.userdup": "Ouvert dans une autre fenêtre", + "pad.modals.userdup.explanation": "Ce pad semble être ouvert dans plus d'une fenêtre de navigateur sur cet ordinateur.", + "pad.modals.userdup.advice": "Se reconnecter en utilisant cette fenêtre.", + "pad.modals.unauth": "Non autorisé", + "pad.modals.unauth.explanation": "Vos permissions ont été changées lors de l'affichage de cette page. Essayez de vous reconnecter.", + "pad.modals.looping.explanation": "Nous éprouvons un problème de communication au serveur de synchronisation.", + "pad.modals.looping.cause": "Il est possible que votre connexion soit protégée par un pare-feu ou un serveur mandataire incompatible.", + "pad.modals.initsocketfail": "Le serveur est introuvable.", + "pad.modals.initsocketfail.explanation": "Impossible de se connecter au serveur de synchronisation.", + "pad.modals.initsocketfail.cause": "Ceci est probablement dû à un problème avec votre navigateur ou votre connexion internet.", + "pad.modals.slowcommit.explanation": "Le serveur ne répond pas.", + "pad.modals.slowcommit.cause": "Ce problème peut venir d'une mauvaise connectivité au réseau.", + "pad.modals.badChangeset.explanation": "Une modification que vous avez effectuée a été classée comme illégale par le serveur de synchronisation.", + "pad.modals.badChangeset.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter l’administrateur du service, si vous pensez que c’est une erreur. Essayez de vous reconnecter pour continuer à modifier.", + "pad.modals.corruptPad.explanation": "Le pad auquel vous essayez d’accéder est corrompu.", + "pad.modals.corruptPad.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter l’administrateur du service.", + "pad.modals.deleted": "Supprimé.", + "pad.modals.deleted.explanation": "Ce pad a été supprimé.", + "pad.modals.disconnected": "Vous avez été déconnecté.", + "pad.modals.disconnected.explanation": "La connexion au serveur a échoué.", + "pad.modals.disconnected.cause": "Il se peut que le serveur soit indisponible. Si le problème persiste, veuillez en informer l’administrateur du service.", + "pad.share": "Partager ce pad", + "pad.share.readonly": "Lecture seule", + "pad.share.link": "Lien", + "pad.share.emebdcode": "Incorporer un lien", + "pad.chat": "Chat", + "pad.chat.title": "Ouvrir le chat associé à ce pad.", + "pad.chat.loadmessages": "Charger davantage de messages", + "timeslider.pageTitle": "Historique dynamique de {{appTitle}}", + "timeslider.toolbar.returnbutton": "Retourner au pad", + "timeslider.toolbar.authors": "Auteurs :", + "timeslider.toolbar.authorsList": "Aucun auteur", + "timeslider.toolbar.exportlink.title": "Exporter", + "timeslider.exportCurrent": "Exporter la version actuelle sous :", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Enregistré le {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "janvier", + "timeslider.month.february": "février", + "timeslider.month.march": "mars", + "timeslider.month.april": "avril", + "timeslider.month.may": "mai", + "timeslider.month.june": "juin", + "timeslider.month.july": "juillet", + "timeslider.month.august": "août", + "timeslider.month.september": "septembre", + "timeslider.month.october": "octobre", + "timeslider.month.november": "novembre", + "timeslider.month.december": "décembre", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: auteur anonyme, other: auteurs anonymes ]}", + "pad.savedrevs.marked": "Cette révision est maintenant marquée comme révision enregistrée", + "pad.savedrevs.timeslider": "Vous pouvez voir les révisions enregistrées en visitant l’ascenseur temporel", + "pad.userlist.entername": "Entrez votre nom", + "pad.userlist.unnamed": "anonyme", + "pad.userlist.guest": "Invité", + "pad.userlist.deny": "Refuser", + "pad.userlist.approve": "Approuver", + "pad.editbar.clearcolors": "Effacer les couleurs de paternité dans tout le document ?", + "pad.impexp.importbutton": "Importer maintenant", + "pad.impexp.importing": "Import en cours...", + "pad.impexp.confirmimport": "Importer un fichier écrasera le texte actuel du pad. Êtes-vous sûr de vouloir le faire ?", + "pad.impexp.convertFailed": "Nous ne pouvons pas importer ce fichier. Veuillez utiliser un autre format de document ou faire un copier/coller manuel", + "pad.impexp.padHasData": "Nous n’avons pas pu importer ce fichier parce que ce bloc a déjà eu des modifications ; veuillez importer vers un nouveau bloc", + "pad.impexp.uploadFailed": "Le téléchargement a échoué, veuillez réessayer", + "pad.impexp.importfailed": "Échec de l'importation", + "pad.impexp.copypaste": "Veuillez copier/coller", + "pad.impexp.exportdisabled": "L'option d'export au format {{type}} est désactivée. Veuillez contacter votre administrateur système pour plus de détails." +} diff --git a/sources/src/locales/gl.json b/sources/src/locales/gl.json old mode 100644 new mode 100755 index 3a216e8..381296a --- a/sources/src/locales/gl.json +++ b/sources/src/locales/gl.json @@ -1,122 +1,127 @@ { - "@metadata": { - "authors": [ - "Toliño" - ] - }, - "index.newPad": "Novo documento", - "index.createOpenPad": "ou cree/abra un documento co nome:", - "pad.toolbar.bold.title": "Negra (Ctrl-B)", - "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", - "pad.toolbar.underline.title": "Subliñar (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Riscar", - "pad.toolbar.ol.title": "Lista ordenada", - "pad.toolbar.ul.title": "Lista sen ordenar", - "pad.toolbar.indent.title": "Sangría", - "pad.toolbar.unindent.title": "Sen sangría", - "pad.toolbar.undo.title": "Desfacer (Ctrl-Z)", - "pad.toolbar.redo.title": "Refacer (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Limpar as cores de identificación dos autores", - "pad.toolbar.import_export.title": "Importar/Exportar desde/a diferentes formatos de ficheiro", - "pad.toolbar.timeslider.title": "Liña do tempo", - "pad.toolbar.savedRevision.title": "Gardar a revisión", - "pad.toolbar.settings.title": "Configuracións", - "pad.toolbar.embed.title": "Compartir e incorporar este documento", - "pad.toolbar.showusers.title": "Mostrar os usuarios deste documento", - "pad.colorpicker.save": "Gardar", - "pad.colorpicker.cancel": "Cancelar", - "pad.loading": "Cargando...", - "pad.passwordRequired": "Cómpre un contrasinal para acceder a este documento", - "pad.permissionDenied": "Non ten permiso para acceder a este documento", - "pad.wrongPassword": "O contrasinal era incorrecto", - "pad.settings.padSettings": "Configuracións do documento", - "pad.settings.myView": "A miña vista", - "pad.settings.stickychat": "Chat sempre visible", - "pad.settings.colorcheck": "Cores de identificación", - "pad.settings.linenocheck": "Números de liña", - "pad.settings.rtlcheck": "Quere ler o contido da dereita á esquerda?", - "pad.settings.fontType": "Tipo de letra:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monoespazada", - "pad.settings.globalView": "Vista global", - "pad.settings.language": "Lingua:", - "pad.importExport.import_export": "Importar/Exportar", - "pad.importExport.import": "Cargar un ficheiro de texto ou documento", - "pad.importExport.importSuccessful": "Correcto!", - "pad.importExport.export": "Exportar o documento actual en formato:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Texto simple", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Só pode importar texto simple ou formatos HTML. Para obter máis información sobre as características de importación avanzadas \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstale abiword\u003C/a\u003E.", - "pad.modals.connected": "Conectado.", - "pad.modals.reconnecting": "Reconectando co seu documento...", - "pad.modals.forcereconnect": "Forzar a reconexión", - "pad.modals.userdup": "Aberto noutra ventá", - "pad.modals.userdup.explanation": "Semella que este documento está aberto en varias ventás do navegador neste ordenador.", - "pad.modals.userdup.advice": "Reconectar para usar esta ventá.", - "pad.modals.unauth": "Non autorizado", - "pad.modals.unauth.explanation": "Os seus permisos cambiaron mentres estaba nesta páxina. Intente a reconexión.", - "pad.modals.looping.explanation": "Hai un problema de comunicación co servidor de sincronización.", - "pad.modals.looping.cause": "Seica a súa conexión pasa a través dun firewall ou proxy incompatible.", - "pad.modals.initsocketfail": "Non se pode alcanzar o servidor.", - "pad.modals.initsocketfail.explanation": "Non se pode conectar co servidor de sincronización.", - "pad.modals.initsocketfail.cause": "Isto acontece probablemente debido a un problema co navegador ou coa conexión á internet.", - "pad.modals.slowcommit.explanation": "O servidor non responde.", - "pad.modals.slowcommit.cause": "Isto pode deberse a un problema de conexión á rede.", - "pad.modals.badChangeset.explanation": "O servidor de sincronización clasificou como ilegal unha das súas edicións.", - "pad.modals.badChangeset.cause": "Isto pode deberse a unha cofiguración errónea do servidor ou algún outro comportamento inesperado. Póñase en contacto co administrador do servizo, se pensa que isto é un erro. Intente reconectar para continuar editando.", - "pad.modals.corruptPad.explanation": "O documento ao que intenta acceder está corrompido.", - "pad.modals.corruptPad.cause": "Isto pode deberse a unha cofiguración errónea do servidor ou algún outro comportamento inesperado. Póñase en contacto co administrador do servizo.", - "pad.modals.deleted": "Borrado.", - "pad.modals.deleted.explanation": "Este documento foi eliminado.", - "pad.modals.disconnected": "Foi desconectado.", - "pad.modals.disconnected.explanation": "Perdeuse a conexión co servidor", - "pad.modals.disconnected.cause": "O servidor non está dispoñible. Póñase en contacto co administrador do servizo se o problema continúa.", - "pad.share": "Compartir este documento", - "pad.share.readonly": "Lectura só", - "pad.share.link": "Ligazón", - "pad.share.emebdcode": "Incorporar o URL", - "pad.chat": "Chat", - "pad.chat.title": "Abrir o chat deste documento.", - "pad.chat.loadmessages": "Cargar máis mensaxes", - "timeslider.pageTitle": "Liña do tempo de {{appTitle}}", - "timeslider.toolbar.returnbutton": "Volver ao documento", - "timeslider.toolbar.authors": "Autores:", - "timeslider.toolbar.authorsList": "Ningún autor", - "timeslider.toolbar.exportlink.title": "Exportar", - "timeslider.exportCurrent": "Exportar a versión actual en formato:", - "timeslider.version": "Versión {{version}}", - "timeslider.saved": "Gardado o {{day}} de {{month}} de {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "xaneiro", - "timeslider.month.february": "febreiro", - "timeslider.month.march": "marzo", - "timeslider.month.april": "abril", - "timeslider.month.may": "maio", - "timeslider.month.june": "xuño", - "timeslider.month.july": "xullo", - "timeslider.month.august": "agosto", - "timeslider.month.september": "setembro", - "timeslider.month.october": "outubro", - "timeslider.month.november": "novembro", - "timeslider.month.december": "decembro", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anónimo, other: autores anónimos ]}", - "pad.savedrevs.marked": "Esta revisión está agora marcada como revisión gardada", - "pad.userlist.entername": "Insira o seu nome", - "pad.userlist.unnamed": "anónimo", - "pad.userlist.guest": "Convidado", - "pad.userlist.deny": "Rexeitar", - "pad.userlist.approve": "Aprobar", - "pad.editbar.clearcolors": "Quere limpar as cores de identificación dos autores en todo o documento?", - "pad.impexp.importbutton": "Importar agora", - "pad.impexp.importing": "Importando...", - "pad.impexp.confirmimport": "A importación dun ficheiro ha sobrescribir o texto actual do documento. Está seguro de querer continuar?", - "pad.impexp.convertFailed": "Non somos capaces de importar o ficheiro. Utilice un formato de documento diferente ou copie e pegue manualmente", - "pad.impexp.uploadFailed": "Houbo un erro ao cargar o ficheiro; inténteo de novo", - "pad.impexp.importfailed": "Fallou a importación", - "pad.impexp.copypaste": "Copie e pegue", - "pad.impexp.exportdisabled": "A exportación en formato {{type}} está desactivada. Póñase en contacto co administrador do sistema se quere máis detalles." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Toliño", + "Elisardojm" + ] + }, + "index.newPad": "Novo documento", + "index.createOpenPad": "ou cree/abra un documento co nome:", + "pad.toolbar.bold.title": "Negra (Ctrl-B)", + "pad.toolbar.italic.title": "Cursiva (Ctrl-I)", + "pad.toolbar.underline.title": "Subliñar (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Riscar (Ctrl+5)", + "pad.toolbar.ol.title": "Lista ordenada (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Lista sen ordenar (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Sangría (TAB)", + "pad.toolbar.unindent.title": "Sen sangría (Maiús.+TAB)", + "pad.toolbar.undo.title": "Desfacer (Ctrl-Z)", + "pad.toolbar.redo.title": "Refacer (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Limpar as cores de identificación dos autores (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importar/Exportar desde/a diferentes formatos de ficheiro", + "pad.toolbar.timeslider.title": "Liña do tempo", + "pad.toolbar.savedRevision.title": "Gardar a revisión", + "pad.toolbar.settings.title": "Configuracións", + "pad.toolbar.embed.title": "Compartir e incorporar este documento", + "pad.toolbar.showusers.title": "Mostrar os usuarios deste documento", + "pad.colorpicker.save": "Gardar", + "pad.colorpicker.cancel": "Cancelar", + "pad.loading": "Cargando...", + "pad.noCookie": "Non se puido atopar a cookie. Por favor, habilite as cookies no seu navegador!", + "pad.passwordRequired": "Cómpre un contrasinal para acceder a este documento", + "pad.permissionDenied": "Non ten permiso para acceder a este documento", + "pad.wrongPassword": "O contrasinal era incorrecto", + "pad.settings.padSettings": "Configuracións do documento", + "pad.settings.myView": "A miña vista", + "pad.settings.stickychat": "Chat sempre visible", + "pad.settings.chatandusers": "Mostrar o chat e os usuarios", + "pad.settings.colorcheck": "Cores de identificación", + "pad.settings.linenocheck": "Números de liña", + "pad.settings.rtlcheck": "Quere ler o contido da dereita á esquerda?", + "pad.settings.fontType": "Tipo de letra:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monoespazada", + "pad.settings.globalView": "Vista global", + "pad.settings.language": "Lingua:", + "pad.importExport.import_export": "Importar/Exportar", + "pad.importExport.import": "Cargar un ficheiro de texto ou documento", + "pad.importExport.importSuccessful": "Correcto!", + "pad.importExport.export": "Exportar o documento actual en formato:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Texto simple", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Só pode importar texto simple ou formatos HTML. Para obter máis información sobre as características de importación avanzadas instale abiword.", + "pad.modals.connected": "Conectado.", + "pad.modals.reconnecting": "Reconectando co seu documento...", + "pad.modals.forcereconnect": "Forzar a reconexión", + "pad.modals.userdup": "Aberto noutra ventá", + "pad.modals.userdup.explanation": "Semella que este documento está aberto en varias ventás do navegador neste ordenador.", + "pad.modals.userdup.advice": "Reconectar para usar esta ventá.", + "pad.modals.unauth": "Non autorizado", + "pad.modals.unauth.explanation": "Os seus permisos cambiaron mentres estaba nesta páxina. Intente a reconexión.", + "pad.modals.looping.explanation": "Hai un problema de comunicación co servidor de sincronización.", + "pad.modals.looping.cause": "Seica a súa conexión pasa a través dun firewall ou proxy incompatible.", + "pad.modals.initsocketfail": "Non se pode alcanzar o servidor.", + "pad.modals.initsocketfail.explanation": "Non se pode conectar co servidor de sincronización.", + "pad.modals.initsocketfail.cause": "Isto acontece probablemente debido a un problema co navegador ou coa conexión á internet.", + "pad.modals.slowcommit.explanation": "O servidor non responde.", + "pad.modals.slowcommit.cause": "Isto pode deberse a un problema de conexión á rede.", + "pad.modals.badChangeset.explanation": "O servidor de sincronización clasificou como ilegal unha das súas edicións.", + "pad.modals.badChangeset.cause": "Isto pode deberse a unha cofiguración errónea do servidor ou algún outro comportamento inesperado. Póñase en contacto co administrador do servizo, se pensa que isto é un erro. Intente reconectar para continuar editando.", + "pad.modals.corruptPad.explanation": "O documento ao que intenta acceder está corrompido.", + "pad.modals.corruptPad.cause": "Isto pode deberse a unha cofiguración errónea do servidor ou algún outro comportamento inesperado. Póñase en contacto co administrador do servizo.", + "pad.modals.deleted": "Borrado.", + "pad.modals.deleted.explanation": "Este documento foi eliminado.", + "pad.modals.disconnected": "Foi desconectado.", + "pad.modals.disconnected.explanation": "Perdeuse a conexión co servidor", + "pad.modals.disconnected.cause": "O servidor non está dispoñible. Póñase en contacto co administrador do servizo se o problema continúa.", + "pad.share": "Compartir este documento", + "pad.share.readonly": "Lectura só", + "pad.share.link": "Ligazón", + "pad.share.emebdcode": "Incorporar o URL", + "pad.chat": "Chat", + "pad.chat.title": "Abrir o chat deste documento.", + "pad.chat.loadmessages": "Cargar máis mensaxes", + "timeslider.pageTitle": "Liña do tempo de {{appTitle}}", + "timeslider.toolbar.returnbutton": "Volver ao documento", + "timeslider.toolbar.authors": "Autores:", + "timeslider.toolbar.authorsList": "Ningún autor", + "timeslider.toolbar.exportlink.title": "Exportar", + "timeslider.exportCurrent": "Exportar a versión actual en formato:", + "timeslider.version": "Versión {{version}}", + "timeslider.saved": "Gardado o {{day}} de {{month}} de {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "xaneiro", + "timeslider.month.february": "febreiro", + "timeslider.month.march": "marzo", + "timeslider.month.april": "abril", + "timeslider.month.may": "maio", + "timeslider.month.june": "xuño", + "timeslider.month.july": "xullo", + "timeslider.month.august": "agosto", + "timeslider.month.september": "setembro", + "timeslider.month.october": "outubro", + "timeslider.month.november": "novembro", + "timeslider.month.december": "decembro", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anónimo, other: autores anónimos ]}", + "pad.savedrevs.marked": "Esta revisión está agora marcada como revisión gardada", + "pad.savedrevs.timeslider": "Pode consultar as revisións gardadas visitando a liña do tempo", + "pad.userlist.entername": "Insira o seu nome", + "pad.userlist.unnamed": "anónimo", + "pad.userlist.guest": "Convidado", + "pad.userlist.deny": "Rexeitar", + "pad.userlist.approve": "Aprobar", + "pad.editbar.clearcolors": "Quere limpar as cores de identificación dos autores en todo o documento?", + "pad.impexp.importbutton": "Importar agora", + "pad.impexp.importing": "Importando...", + "pad.impexp.confirmimport": "A importación dun ficheiro ha sobrescribir o texto actual do documento. Está seguro de querer continuar?", + "pad.impexp.convertFailed": "Non somos capaces de importar o ficheiro. Utilice un formato de documento diferente ou copie e pegue manualmente", + "pad.impexp.padHasData": "Non puidemos importar este ficheiro porque este documento xa sufriu cambios; importe a un novo documento.", + "pad.impexp.uploadFailed": "Houbo un erro ao cargar o ficheiro; inténteo de novo", + "pad.impexp.importfailed": "Fallou a importación", + "pad.impexp.copypaste": "Copie e pegue", + "pad.impexp.exportdisabled": "A exportación en formato {{type}} está desactivada. Póñase en contacto co administrador do sistema se quere máis detalles." +} diff --git a/sources/src/locales/he.json b/sources/src/locales/he.json old mode 100644 new mode 100755 index 41915aa..4222e15 --- a/sources/src/locales/he.json +++ b/sources/src/locales/he.json @@ -1,125 +1,129 @@ { - "@metadata": { - "authors": [ - "Amire80", - "Ofrahod", - "YaronSh", - "תומר ט" - ] - }, - "index.newPad": "פנקס חדש", - "index.createOpenPad": "ליצור או לפתוח פנקס בשם:", - "pad.toolbar.bold.title": "בולט (Ctrl-B)", - "pad.toolbar.italic.title": "נטוי (Ctrl-I)", - "pad.toolbar.underline.title": "קו תחתי (Ctrl-U)", - "pad.toolbar.strikethrough.title": "קו מוחק", - "pad.toolbar.ol.title": "רשימה ממוספרת", - "pad.toolbar.ul.title": "רשימה", - "pad.toolbar.indent.title": "הזחה", - "pad.toolbar.unindent.title": "צמצום הזחה", - "pad.toolbar.undo.title": "ביטול (Ctrl-Z)", - "pad.toolbar.redo.title": "ביצוע מחדש", - "pad.toolbar.clearAuthorship.title": "ניקוי צבעים", - "pad.toolbar.import_export.title": "ייבוא/ייצוא בתסדירי קבצים שונים", - "pad.toolbar.timeslider.title": "גולל זמן", - "pad.toolbar.savedRevision.title": "שמירת גרסה", - "pad.toolbar.settings.title": "הגדרות", - "pad.toolbar.embed.title": "שיתוף והטמעה של הפנקס הזה", - "pad.toolbar.showusers.title": "הצגת המשתמשים בפנקס הזה", - "pad.colorpicker.save": "שמירה", - "pad.colorpicker.cancel": "ביטול", - "pad.loading": "טעינה...", - "pad.passwordRequired": "דרושה ססמה כדי לגשת לפנקס הזה", - "pad.permissionDenied": "אין לך הרשאה לגשת לפנקס הזה", - "pad.wrongPassword": "ססמתך הייתה שגויה", - "pad.settings.padSettings": "הגדרות פנקס", - "pad.settings.myView": "התצוגה שלי", - "pad.settings.stickychat": "השיחה תמיד על המסך", - "pad.settings.colorcheck": "צביעה לפי מחבר", - "pad.settings.linenocheck": "מספרי שורות", - "pad.settings.rtlcheck": "לקרוא את התוכן מימין לשמאל?", - "pad.settings.fontType": "סוג גופן:", - "pad.settings.fontType.normal": "רגיל", - "pad.settings.fontType.monospaced": "ברוחב קבוע", - "pad.settings.globalView": "תצוגה לכל המשתמשים", - "pad.settings.language": "שפה:", - "pad.importExport.import_export": "ייבוא/ייצוא", - "pad.importExport.import": "העלאת כל קובץ טקסט או מסמך", - "pad.importExport.importSuccessful": "זה עבד!", - "pad.importExport.export": "ייצוא הפנקס הנוכחי בתור:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "טקסט רגיל", - "pad.importExport.exportword": "מיקרוסופט וורד", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "באפשרותך לייבא מטקסט פשוט או מ־HTML. לאפשרויות ייבוא מתקדמות יותר יש \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eלהתקין את abiword\u003C/a\u003E.", - "pad.modals.connected": "מחובר.", - "pad.modals.reconnecting": "מתבצע חיבור מחדש...", - "pad.modals.forcereconnect": "לכפות חיבור מחדש", - "pad.modals.userdup": "פתוח בחלון אחר", - "pad.modals.userdup.explanation": "נראה שהפנקס הזה פתוח ביותר מחלון דפדפן אחד במחשב הזה.", - "pad.modals.userdup.advice": "להתחבר מחדש באמצעות החלון הזה.", - "pad.modals.unauth": "אין הרשאה", - "pad.modals.unauth.explanation": "ההרשאות שלך השתנו בזמן שניסית להתחבר. נא לנסות להתחבר מחדש.", - "pad.modals.looping.explanation": "יש בעיות חיבור עם השרת המתאם.", - "pad.modals.looping.cause": "ייתכן שהתחברת דרך חומת־אש או שרת מתווך בלתי־תואמים.", - "pad.modals.initsocketfail": "אין תקשורות לשרת.", - "pad.modals.initsocketfail.explanation": "התחברות לשרת המתאם לא הצליחה.", - "pad.modals.initsocketfail.cause": "אולי זה בגלל הדפדפן שלך או חיבור האינטרנט שלך.", - "pad.modals.slowcommit.explanation": "השרת אינו מגיב.", - "pad.modals.slowcommit.cause": "אולי זה בגלל בעיות עם תקשורת לרשת.", - "pad.modals.badChangeset.explanation": "עריכה שעשית סווגה כבלתי־תקינה על־ידי שרת הסנכרון.", - "pad.modals.badChangeset.cause": "ייתכן שזה קרה בגלל הגדרות שרת שגויות או התנהגות בלתי־צפויה כלשהי. נא ליצור קשר עם המנהל של השירות אם נראה לך שזאת שגיאה. כדי להמשיך לערוך יש לנסות להתחבר מחדש.", - "pad.modals.corruptPad.explanation": "הנתונים בפנקס שניסית לגשת אליו התקלקלו.", - "pad.modals.corruptPad.cause": "ייתכן שזה קרה בגלל הגדרות שרת שגויות או התנהגות בלתי־צפויה כלשהי. נא ליצור קשר עם המנהל של השירות אם נראה לך שזאת שגיאה.", - "pad.modals.deleted": "נמחק.", - "pad.modals.deleted.explanation": "הפנקס הזה הוסר.", - "pad.modals.disconnected": "נותקת.", - "pad.modals.disconnected.explanation": "התקשורת לשרת אבדה", - "pad.modals.disconnected.cause": "ייתכן שהשרת אינו זמין. נא להודיע למנהל השירות אם זה ממשיך לקרות.", - "pad.share": "שיתוף הפנקס הזה", - "pad.share.readonly": "קישור", - "pad.share.link": "קישור", - "pad.share.emebdcode": "הטמעת קישור", - "pad.chat": "שיחה", - "pad.chat.title": "פתיחת השיחה של הפנקס הזה.", - "pad.chat.loadmessages": "טעינת הודעות נוספות", - "timeslider.pageTitle": "גולל זמן של {{appTitle}}", - "timeslider.toolbar.returnbutton": "חזרה אל הפנקס", - "timeslider.toolbar.authors": "כותבים:", - "timeslider.toolbar.authorsList": "אין כותבים", - "timeslider.toolbar.exportlink.title": "ייצוא", - "timeslider.exportCurrent": "ייצוא הגרסה הנוכחית בתור:", - "timeslider.version": "גרסה {{version}}", - "timeslider.saved": "נשמרה ב־{{day}} ב{{month}} {{year}}", - "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "ינואר", - "timeslider.month.february": "פברואר", - "timeslider.month.march": "מרץ", - "timeslider.month.april": "אפריל", - "timeslider.month.may": "מאי", - "timeslider.month.june": "יוני", - "timeslider.month.july": "יולי", - "timeslider.month.august": "אוגוסט", - "timeslider.month.september": "ספטמבר", - "timeslider.month.october": "אוקטובר", - "timeslider.month.november": "נובמבר", - "timeslider.month.december": "דצמבר", - "timeslider.unnamedauthors": "{[plural(num) one: יוצר אחד, other: {{num}} יוצרים ]} ללא שם", - "pad.savedrevs.marked": "גרסה זו מסומנת כגרסה שמורה", - "pad.userlist.entername": "נא להזין את שמך", - "pad.userlist.unnamed": "ללא שם", - "pad.userlist.guest": "אורח", - "pad.userlist.deny": "לדחות", - "pad.userlist.approve": "לאשר", - "pad.editbar.clearcolors": "לנקות צבעים לסימון כותבים בכל המסמך?", - "pad.impexp.importbutton": "לייבא כעת", - "pad.impexp.importing": "ייבוא...", - "pad.impexp.confirmimport": "ייבוא של קובץ יבטל את הטקסט הנוכחי בפנקס. האם ברצונך להמשיך?", - "pad.impexp.convertFailed": "לא הצלחנו לייבא את הקובץ הזה. נא להשתמש בתסדיר מסמך שונה או להעתיק ולהדביק ידנית", - "pad.impexp.uploadFailed": "ההעלאה נכשלה, נא לנסות שוב", - "pad.impexp.importfailed": "הייבוא נכשל", - "pad.impexp.copypaste": "נא להעתיק ולהדביק", - "pad.impexp.exportdisabled": "ייצוא בתסדיר {{type}} אינו פעיל. מנהל המערכת שלך יוכל לספר לך על זה עוד פרטים." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Amire80", + "Ofrahod", + "YaronSh", + "תומר ט" + ] + }, + "index.newPad": "פנקס חדש", + "index.createOpenPad": "ליצור או לפתוח פנקס בשם:", + "pad.toolbar.bold.title": "בולט (Ctrl-B)", + "pad.toolbar.italic.title": "נטוי (Ctrl-I)", + "pad.toolbar.underline.title": "קו תחתי (Ctrl-U)", + "pad.toolbar.strikethrough.title": "קו מוחק (Ctrl+5)", + "pad.toolbar.ol.title": "רשימה ממוספרת (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "רשימת תבליטים (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "הזחה (טאב)", + "pad.toolbar.unindent.title": "צמצום הזחה (שיפט–טאב)", + "pad.toolbar.undo.title": "ביטול (Ctrl-Z)", + "pad.toolbar.redo.title": "ביצוע מחדש", + "pad.toolbar.clearAuthorship.title": "ניקוי צבעי כותבים (Ctrl-Shift-C)", + "pad.toolbar.import_export.title": "ייבוא/ייצוא בתסדירי קבצים שונים", + "pad.toolbar.timeslider.title": "גולל זמן", + "pad.toolbar.savedRevision.title": "שמירת גרסה", + "pad.toolbar.settings.title": "הגדרות", + "pad.toolbar.embed.title": "שיתוף והטמעה של הפנקס הזה", + "pad.toolbar.showusers.title": "הצגת המשתמשים בפנקס הזה", + "pad.colorpicker.save": "שמירה", + "pad.colorpicker.cancel": "ביטול", + "pad.loading": "טעינה...", + "pad.noCookie": "העוגייה לא נמצאה. נא לאפשר עוגיות בדפדפן שלך!", + "pad.passwordRequired": "דרושה ססמה כדי לגשת לפנקס הזה", + "pad.permissionDenied": "אין לך הרשאה לגשת לפנקס הזה", + "pad.wrongPassword": "ססמתך הייתה שגויה", + "pad.settings.padSettings": "הגדרות פנקס", + "pad.settings.myView": "התצוגה שלי", + "pad.settings.stickychat": "השיחה תמיד על המסך", + "pad.settings.chatandusers": "הצגת צ'אט ומשתמשים", + "pad.settings.colorcheck": "צביעה לפי מחבר", + "pad.settings.linenocheck": "מספרי שורות", + "pad.settings.rtlcheck": "לקרוא את התוכן מימין לשמאל?", + "pad.settings.fontType": "סוג גופן:", + "pad.settings.fontType.normal": "רגיל", + "pad.settings.fontType.monospaced": "ברוחב קבוע", + "pad.settings.globalView": "תצוגה לכל המשתמשים", + "pad.settings.language": "שפה:", + "pad.importExport.import_export": "ייבוא/ייצוא", + "pad.importExport.import": "העלאת כל קובץ טקסט או מסמך", + "pad.importExport.importSuccessful": "זה עבד!", + "pad.importExport.export": "ייצוא הפנקס הנוכחי בתור:", + "pad.importExport.exportetherpad": "את'רפד", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "טקסט רגיל", + "pad.importExport.exportword": "מיקרוסופט וורד", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "באפשרותך לייבא מטקסט פשוט או מ־HTML. לאפשרויות ייבוא מתקדמות יותר יש להתקין את abiword.", + "pad.modals.connected": "מחובר.", + "pad.modals.reconnecting": "מתבצע חיבור מחדש...", + "pad.modals.forcereconnect": "לכפות חיבור מחדש", + "pad.modals.userdup": "פתוח בחלון אחר", + "pad.modals.userdup.explanation": "נראה שהפנקס הזה פתוח ביותר מחלון דפדפן אחד במחשב הזה.", + "pad.modals.userdup.advice": "להתחבר מחדש באמצעות החלון הזה.", + "pad.modals.unauth": "אין הרשאה", + "pad.modals.unauth.explanation": "ההרשאות שלך השתנו בזמן שניסית להתחבר. נא לנסות להתחבר מחדש.", + "pad.modals.looping.explanation": "יש בעיות חיבור עם השרת המתאם.", + "pad.modals.looping.cause": "ייתכן שהתחברת דרך חומת־אש או שרת מתווך בלתי־תואמים.", + "pad.modals.initsocketfail": "אין תקשורות לשרת.", + "pad.modals.initsocketfail.explanation": "התחברות לשרת המתאם לא הצליחה.", + "pad.modals.initsocketfail.cause": "אולי זה בגלל הדפדפן שלך או חיבור האינטרנט שלך.", + "pad.modals.slowcommit.explanation": "השרת אינו מגיב.", + "pad.modals.slowcommit.cause": "אולי זה בגלל בעיות עם תקשורת לרשת.", + "pad.modals.badChangeset.explanation": "עריכה שעשית סווגה כבלתי־תקינה על־ידי שרת הסנכרון.", + "pad.modals.badChangeset.cause": "ייתכן שזה קרה בגלל הגדרות שרת שגויות או התנהגות בלתי־צפויה כלשהי. נא ליצור קשר עם המנהל של השירות אם נראה לך שזאת שגיאה. כדי להמשיך לערוך יש לנסות להתחבר מחדש.", + "pad.modals.corruptPad.explanation": "הנתונים בפנקס שניסית לגשת אליו התקלקלו.", + "pad.modals.corruptPad.cause": "ייתכן שזה קרה בגלל הגדרות שרת שגויות או התנהגות בלתי־צפויה כלשהי. נא ליצור קשר עם המנהל של השירות אם נראה לך שזאת שגיאה.", + "pad.modals.deleted": "נמחק.", + "pad.modals.deleted.explanation": "הפנקס הזה הוסר.", + "pad.modals.disconnected": "נותקת.", + "pad.modals.disconnected.explanation": "התקשורת לשרת אבדה", + "pad.modals.disconnected.cause": "ייתכן שהשרת אינו זמין. נא להודיע למנהל השירות אם זה ממשיך לקרות.", + "pad.share": "שיתוף הפנקס הזה", + "pad.share.readonly": "קישור", + "pad.share.link": "קישור", + "pad.share.emebdcode": "הטמעת קישור", + "pad.chat": "שיחה", + "pad.chat.title": "פתיחת השיחה של הפנקס הזה.", + "pad.chat.loadmessages": "טעינת הודעות נוספות", + "timeslider.pageTitle": "גולל זמן של {{appTitle}}", + "timeslider.toolbar.returnbutton": "חזרה אל הפנקס", + "timeslider.toolbar.authors": "כותבים:", + "timeslider.toolbar.authorsList": "אין כותבים", + "timeslider.toolbar.exportlink.title": "ייצוא", + "timeslider.exportCurrent": "ייצוא הגרסה הנוכחית בתור:", + "timeslider.version": "גרסה {{version}}", + "timeslider.saved": "נשמרה ב־{{day}} ב{{month}} {{year}}", + "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "ינואר", + "timeslider.month.february": "פברואר", + "timeslider.month.march": "מרץ", + "timeslider.month.april": "אפריל", + "timeslider.month.may": "מאי", + "timeslider.month.june": "יוני", + "timeslider.month.july": "יולי", + "timeslider.month.august": "אוגוסט", + "timeslider.month.september": "ספטמבר", + "timeslider.month.october": "אוקטובר", + "timeslider.month.november": "נובמבר", + "timeslider.month.december": "דצמבר", + "timeslider.unnamedauthors": "{[plural(num) one: יוצר אחד, other: {{num}} יוצרים ]} ללא שם", + "pad.savedrevs.marked": "גרסה זו מסומנת כגרסה שמורה", + "pad.savedrevs.timeslider": "אפשר להציג גרסאות שמורות באמצעות ביקור בגולל הזמן", + "pad.userlist.entername": "נא להזין את שמך", + "pad.userlist.unnamed": "ללא שם", + "pad.userlist.guest": "אורח", + "pad.userlist.deny": "לדחות", + "pad.userlist.approve": "לאשר", + "pad.editbar.clearcolors": "לנקות צבעים לסימון כותבים בכל המסמך?", + "pad.impexp.importbutton": "לייבא כעת", + "pad.impexp.importing": "ייבוא...", + "pad.impexp.confirmimport": "ייבוא של קובץ יבטל את הטקסט הנוכחי בפנקס. האם ברצונך להמשיך?", + "pad.impexp.convertFailed": "לא הצלחנו לייבא את הקובץ הזה. נא להשתמש בתסדיר מסמך שונה או להעתיק ולהדביק ידנית", + "pad.impexp.padHasData": "לא הצלחנו לייבא את הקובץ הזה, כי בפנקס הזה כבר יש שינויים. נא לייבא לפנקס חדש.", + "pad.impexp.uploadFailed": "ההעלאה נכשלה, נא לנסות שוב", + "pad.impexp.importfailed": "הייבוא נכשל", + "pad.impexp.copypaste": "נא להעתיק ולהדביק", + "pad.impexp.exportdisabled": "ייצוא בתסדיר {{type}} אינו פעיל. מנהל המערכת שלך יוכל לספר לך על זה עוד פרטים." +} diff --git a/sources/src/locales/hrx.json b/sources/src/locales/hrx.json new file mode 100755 index 0000000..74630ef --- /dev/null +++ b/sources/src/locales/hrx.json @@ -0,0 +1,121 @@ +{ + "@metadata": { + "authors": [ + "Paul Beppler" + ] + }, + "index.newPad": "Neies Pad", + "index.createOpenPad": "Pad mit follichendem Noome uffmache:", + "pad.toolbar.bold.title": "Fett (Strg-B)", + "pad.toolbar.italic.title": "Kursiv (Strg-I)", + "pad.toolbar.underline.title": "Unnerstrich (Strg-U)", + "pad.toolbar.strikethrough.title": "Dorrichgestrich", + "pad.toolbar.ol.title": "Nummerierte List", + "pad.toolbar.ul.title": "Ungeordnete List", + "pad.toolbar.indent.title": "Einrück (TAB)", + "pad.toolbar.unindent.title": "Ausrück (Shift+TAB)", + "pad.toolbar.undo.title": "Rückgängich (Strg-Z)", + "pad.toolbar.redo.title": "Wiederhole (Strg-Y)", + "pad.toolbar.clearAuthorship.title": "Autorefarbe zurücksetze", + "pad.toolbar.import_export.title": "Import/Export von/zu verschiedne Dateiformate", + "pad.toolbar.timeslider.title": "Pad-Versionsgeschicht oonzeiche", + "pad.toolbar.savedRevision.title": "Version markiere", + "pad.toolbar.settings.title": "Einstellunge", + "pad.toolbar.embed.title": "Pad teile orrer inbette", + "pad.toolbar.showusers.title": "Aktuell verbundne Benutzer oonzeiche", + "pad.colorpicker.save": "Speichre", + "pad.colorpicker.cancel": "Abbreche", + "pad.loading": "Loode …", + "pad.passwordRequired": "Sie benötiche en Passwort, um uff das Pad zuzugreife", + "pad.permissionDenied": "Du host ken Berechtichung, um uff das Pad zuzugreif", + "pad.wrongPassword": "Dein Passwort woor falsch", + "pad.settings.padSettings": "Pad Einstellunge", + "pad.settings.myView": "Eichne Oonsicht", + "pad.settings.stickychat": "Chat immer oonzeiche", + "pad.settings.colorcheck": "Autorenfarbe oonzeiche", + "pad.settings.linenocheck": "Zeilenummer", + "pad.settings.rtlcheck": "Inhalt von rechts bis links lese?", + "pad.settings.fontType": "Schriftoort:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Gemeinsame Oonsicht", + "pad.settings.language": "Sproch:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.import": "Text-Datei orrer Dokument hochloode", + "pad.importExport.importSuccessful": "Erfollichreich!", + "pad.importExport.export": "Aktuelles Pad exportiere wie:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Textdatei", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Sie können nur aus Klartext oder HTML-Formaten importieren. Für mehr erweiterte Importfunktionen installieren Sie bitte abiword.", + "pad.modals.connected": "Verbünd (konnektiert).", + "pad.modals.reconnecting": "Wiederherstelle von der Verbinnung …", + "pad.modals.forcereconnect": "Erneit Verbinne", + "pad.modals.userdup": "In enem andren Fenster schon uff (geöffnet)", + "pad.modals.userdup.explanation": "Das Pad scheint in meahr wie enem Browser-Fenster uff dem Komputadoar uff sin (geöffnet zu sein).", + "pad.modals.userdup.advice": "Um das Fenster se benutze, verbinn bittschön wieder erneit.", + "pad.modals.unauth": "Net authorisiert.", + "pad.modals.unauth.explanation": "Dein Zugriffsberechtichung für das Pad hot sich zwischichzeitlich geännert. Du kannst versuche das Pad wieder erneit uffserufe.", + "pad.modals.looping.explanation": "Es gebt Probleme bei der Kommunikation mit dem Pad-Server.", + "pad.modals.looping.cause": "Möchlicherweis bist dorrich en inkompatible Firewall orrer üwer en inkompatible Proxy mit dem Pad-Server verbünd (konnektiert).", + "pad.modals.initsocketfail": "Pad-Server net erreichbar.", + "pad.modals.initsocketfail.explanation": "Do konnt ken Verbinnung zum Pad-Server heargestellt sin.", + "pad.modals.initsocketfail.cause": "Dies könnt an deinem Browser orrer dein Internet-Verbinnung leihe.", + "pad.modals.slowcommit.explanation": "Der Pad-Server reagiert net.", + "pad.modals.slowcommit.cause": "Das könnt en Netzwerkverbinnungsproblem sin orrer en momentane Üwerlaschtung von der Pad-Server.", + "pad.modals.badChangeset.explanation": "En von dein gemachte Ännrung woard vom Pad-Server wie ungültich ingeschtuft (klassifiziert).", + "pad.modals.badChangeset.cause": "Das könnt uffgrund von en falsche Serverkonfiguration orrer en annre unerwoortete Verhalt passiert sin. Bittschön kontaktier den Diensteadministratoar, falls du gloobst, dass das sich um en Fehler handelt. Versuch dich wieder erneit se verbinne, um mit dem Beoorbeite fortzufoohre.", + "pad.modals.corruptPad.explanation": "Das Pad, uff das du zugreife willst, ist beschädicht.", + "pad.modals.corruptPad.cause": "Das könnt an en falsche Serverkonfiguration orrer en annre unerwoortete Verhalten liehn. Bittschön kontaktier den Diensteadministratoar.", + "pad.modals.deleted": "Abgewischt.", + "pad.modals.deleted.explanation": "Das Pad woard entfernt.", + "pad.modals.disconnected": "Verbinnung unnerbroch (du bist jetzt deskonnektiert).", + "pad.modals.disconnected.explanation": "Die Verbinnung (konnektion) zu dem Pad-Server woard unnerbroch.", + "pad.modals.disconnected.cause": "Möchlicherweis ist der Pad-Server net erreichbar. Bittschön benachrichtig den Dienstadministratoar, falls das weiterhin passiere tut.", + "pad.share": "Das Pad teile", + "pad.share.readonly": "Ingeschränkter Nur-Lese-Zugriff", + "pad.share.link": "Link", + "pad.share.emebdcode": "In Webseite einbette", + "pad.chat": "Chat", + "pad.chat.title": "Den Chat von dem Pad uffmache", + "pad.chat.loadmessages": "Weitre Nachrichte loode", + "timeslider.pageTitle": "{{appTitle}} Pad-Versionsgeschicht", + "timeslider.toolbar.returnbutton": "Zurück zum Pad", + "timeslider.toolbar.authors": "Autore:", + "timeslider.toolbar.authorsList": "ken Autore", + "timeslider.toolbar.exportlink.title": "Die Version exportiere", + "timeslider.exportCurrent": "Exportier die Version wie:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Gespeichert am {{day}}.{{month}}.{{year}}", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januar", + "timeslider.month.february": "Februar", + "timeslider.month.march": "März", + "timeslider.month.april": "April", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Juni", + "timeslider.month.july": "Juli", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Dezember", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: unbenannter Autoar, other: unbenannte Autore ]}", + "pad.savedrevs.marked": "Die Version woard jetzt wie gespeicherte Version gekennzeichnet", + "pad.userlist.entername": "Tue en Noome ren gebe", + "pad.userlist.unnamed": "unbenannt", + "pad.userlist.guest": "Gast", + "pad.userlist.deny": "Verweihe (negiere)", + "pad.userlist.approve": "Genehmiche (approviere)", + "pad.editbar.clearcolors": "Autorefarbe im gesamte Dokument zurücksetze?", + "pad.impexp.importbutton": "Jetzt importiere", + "pad.impexp.importing": "Importiere …", + "pad.impexp.confirmimport": "Das Importiere von en Datei üwerschreibt den aktuelle Text von dem Pad. Willst du weerklich fortfoohre?", + "pad.impexp.convertFailed": "Mir könne die Datei net importiere. Bittschön verwenn en anner Dokumentformat orrer üwertrooh den Text manuell.", + "pad.impexp.uploadFailed": "Der Upload ist fehlgeschloohn (das hot net funktioniert). Bittschön versuch das wieder erneit.", + "pad.impexp.importfailed": "Import fehlgeschloohn (das hot net funktioniert)", + "pad.impexp.copypaste": "Bittschön tue kopiere und einfüche (oonklebe)", + "pad.impexp.exportdisabled": "Der Export im {{type}}-Format ist deaktiviert. Für Einzelheite (Detalhes) tue bittschön dein Systemadministratoar kontaktiere." +} diff --git a/sources/src/locales/hsb.json b/sources/src/locales/hsb.json old mode 100644 new mode 100755 index ed23b03..d4d3ef7 --- a/sources/src/locales/hsb.json +++ b/sources/src/locales/hsb.json @@ -1,122 +1,126 @@ { - "@metadata": { - "authors": [ - "Michawiki" - ] - }, - "index.newPad": "Nowy zapisnik", - "index.createOpenPad": "abo wutwor/wočiń zapisnik z mjenom:", - "pad.toolbar.bold.title": "Tučny (Strg-B)", - "pad.toolbar.italic.title": "Kursiwny (Strg-I)", - "pad.toolbar.underline.title": "Podšmórnyć (Strg-U)", - "pad.toolbar.strikethrough.title": "Přešmórnyć", - "pad.toolbar.ol.title": "Čisłowana lisćina", - "pad.toolbar.ul.title": "Naličenje", - "pad.toolbar.indent.title": "Zasunyć (TAB)", - "pad.toolbar.unindent.title": "Wusunyć (Umsch+TAB)", - "pad.toolbar.undo.title": "Cofnyć (Strg-Z)", - "pad.toolbar.redo.title": "Wospjetować (Strg-Y)", - "pad.toolbar.clearAuthorship.title": "Awtorowe barby wotstronić", - "pad.toolbar.import_export.title": "Import/Eksport z/do druhich datajowych formatow", - "pad.toolbar.timeslider.title": "Historijowa strona", - "pad.toolbar.savedRevision.title": "Wersiju składować", - "pad.toolbar.settings.title": "Nastajenja", - "pad.toolbar.embed.title": "Tutón zapisnik dźělić a zasadźić", - "pad.toolbar.showusers.title": "Wužiwarjow na tutym zapisniku pokazać", - "pad.colorpicker.save": "Składować", - "pad.colorpicker.cancel": "Přetorhnyć", - "pad.loading": "Začituje so...", - "pad.passwordRequired": "Trjebaš hesło, zo by na tutón zapisnik přistup měł", - "pad.permissionDenied": "Nimaće prawo za přistup na tutón zapisnik.", - "pad.wrongPassword": "Twoje hesło bě wopak", - "pad.settings.padSettings": "Nastajenja zapisnika", - "pad.settings.myView": "Mój napohlad", - "pad.settings.stickychat": "Chat přeco na wobrazowce pokazać", - "pad.settings.colorcheck": "Awtorowe barby", - "pad.settings.linenocheck": "Linkowe čisła", - "pad.settings.rtlcheck": "Wobsah wotprawa nalěwo čitać?", - "pad.settings.fontType": "Pismowa družina:", - "pad.settings.fontType.normal": "Normalny", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Globalny napohlad", - "pad.settings.language": "Rěč:", - "pad.importExport.import_export": "Import/Eksport", - "pad.importExport.import": "Tekstowu dataju abo dokument nahrać", - "pad.importExport.importSuccessful": "Wuspěšny!", - "pad.importExport.export": "Aktualny zapisnik eksportować jako:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Luty tekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Móžeš jenož z formatow luteho teksta abo z HTML-formata importować. Za bóle rozšěrjene importowanske funkcije \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstaluj prošu Abiword\u003C/a\u003E.", - "pad.modals.connected": "Zwjazany.", - "pad.modals.reconnecting": "Zwjazuje so znowa z twojim zapisnikom...", - "pad.modals.forcereconnect": "Znowa zwjazać", - "pad.modals.userdup": "W druhim woknje wočinjeny", - "pad.modals.userdup.explanation": "Zda so, zo tutón zapisnik je so we wjace hač jednym woknje wobhladowaka na tutym ličaku wočinił.", - "pad.modals.userdup.advice": "Zwjazaj znowa, zo by tute wokno město toho wužiwał.", - "pad.modals.unauth": "Njeawtorizowany", - "pad.modals.unauth.explanation": "Při wobhladowanju tuteje strony su so twoje prawa změnili. Spytaj so znowa zwjazać.", - "pad.modals.looping.explanation": "Su komunikaciske problemy ze synchronizowanskim serwerom.", - "pad.modals.looping.cause": "Snano sy přez njekompatibelnu wohnjowu murju abo proksy zwjazany.", - "pad.modals.initsocketfail": "Serwer je njedocpějomny.", - "pad.modals.initsocketfail.explanation": "Zwisk ze synchronizowanskim serwerom móžno njeje.", - "pad.modals.initsocketfail.cause": "To je najskerje problem z twojim wobhladowakom abo twojim internetnym zwiskom.", - "pad.modals.slowcommit.explanation": "Serwer njewotmołwja.", - "pad.modals.slowcommit.cause": "To móhło problem syćoweho zwiska być.", - "pad.modals.badChangeset.explanation": "Změna, kotruž sy přewjedł, je so přez synchronizowanski serwer jako njedowolenu woznamjeniła.", - "pad.modals.badChangeset.cause": "To je so snano wopačneje serweroweje konfiguracije dla abo druheho njewočakowaneho zadźerženja dla stało. Prošu staj so ze słužbowym administratorom do zwiska, jeli sej mysliš, zo to je zmylk. Spytaj hišće raz zwjazać, zo by z wobdźěłowanjom pokročował.", - "pad.modals.corruptPad.explanation": "Zapisnik, na kotryž chceš přistup měć, je wobškodźeny.", - "pad.modals.corruptPad.cause": "To je so snano wopačneje serweroweje konfiguracije dla abo druheho njewočakowaneho zadźerženja dla stało. Prošu staj so ze słužbowym administratorom do zwiska.", - "pad.modals.deleted": "Zhašany.", - "pad.modals.deleted.explanation": "Tutón zapisnik je so wotstronił.", - "pad.modals.disconnected": "Zwisk je přetorhnjeny.", - "pad.modals.disconnected.explanation": "Zwisk ze serwerom je so zhubił", - "pad.modals.disconnected.cause": "Serwer k dispoziciji njesteji. Prošu informuj słužboweho administratora, jeli to so dale stawa.", - "pad.share": "Tutón zapisnik dźělić", - "pad.share.readonly": "Jenož čitajomny", - "pad.share.link": "Wotkaz", - "pad.share.emebdcode": "URL zasadźić", - "pad.chat": "Chat", - "pad.chat.title": "Chat za tutón zapisnik wočinić", - "pad.chat.loadmessages": "Dalše powěsće začitać", - "timeslider.pageTitle": "{{appTitle}} - wersijowa historija", - "timeslider.toolbar.returnbutton": "Wróćo k zapisnikej", - "timeslider.toolbar.authors": "Awtorojo:", - "timeslider.toolbar.authorsList": "Žane awtorojo", - "timeslider.toolbar.exportlink.title": "Eksportować", - "timeslider.exportCurrent": "Aktualnu wersiju eksportować jako:", - "timeslider.version": "Wersija {{version}}", - "timeslider.saved": "Składowany {{day}}. {{month}} {{year}}", - "timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januara", - "timeslider.month.february": "februara", - "timeslider.month.march": "měrca", - "timeslider.month.april": "apryla", - "timeslider.month.may": "meje", - "timeslider.month.june": "junija", - "timeslider.month.july": "julija", - "timeslider.month.august": "awgusta", - "timeslider.month.september": "septembra", - "timeslider.month.october": "oktobra", - "timeslider.month.november": "nowembra", - "timeslider.month.december": "decembra", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: awtor, two: awtoraj, few: awtorojo, other: awtorow ]} bjez mjena", - "pad.savedrevs.marked": "Tuta wersija je so nětko jako składowana wersija woznamjeniła", - "pad.userlist.entername": "Zapodaj swoje mjeno", - "pad.userlist.unnamed": "bjez mjena", - "pad.userlist.guest": "Hósć", - "pad.userlist.deny": "Wotpokazać", - "pad.userlist.approve": "Schwalić", - "pad.editbar.clearcolors": "Awtorowe barby w cyłym dokumenće zhašeć?", - "pad.impexp.importbutton": "Nětko importować", - "pad.impexp.importing": "Importuje so...", - "pad.impexp.confirmimport": "Importowanje dataje přepisa aktualny tekst zapisnika. Chceš woprawdźe pokročować?", - "pad.impexp.convertFailed": "Njemóžachmy tutu dataju importować. Prošu wužij druhi dokumentowy format abo kopěruj manuelnje", - "pad.impexp.uploadFailed": "Nahraće njeje so poradźiło, prošu spytaj hišće raz", - "pad.impexp.importfailed": "Import njeje so poradźiło", - "pad.impexp.copypaste": "Prošu kopěrować a zasadźić", - "pad.impexp.exportdisabled": "Eksport jako format {{type}} je znjemóžnjeny. Prošu staj so ze swojim systemowym administratorom za podrobnosće do zwiska." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Michawiki" + ] + }, + "index.newPad": "Nowy zapisnik", + "index.createOpenPad": "abo wutwor/wočiń zapisnik z mjenom:", + "pad.toolbar.bold.title": "Tučny (Strg-B)", + "pad.toolbar.italic.title": "Kursiwny (Strg-I)", + "pad.toolbar.underline.title": "Podšmórnyć (Strg-U)", + "pad.toolbar.strikethrough.title": "Přešmórnyć (Strg+5)", + "pad.toolbar.ol.title": "Čisłowana lisćina (Strg+Umsch+N)", + "pad.toolbar.ul.title": "Naličenje (Strg+Umsch+L)", + "pad.toolbar.indent.title": "Zasunyć (TAB)", + "pad.toolbar.unindent.title": "Wusunyć (Umsch+TAB)", + "pad.toolbar.undo.title": "Cofnyć (Strg-Z)", + "pad.toolbar.redo.title": "Wospjetować (Strg-Y)", + "pad.toolbar.clearAuthorship.title": "Awtorowe barby wotstronić (Strg+Umsch+C)", + "pad.toolbar.import_export.title": "Import/Eksport z/do druhich datajowych formatow", + "pad.toolbar.timeslider.title": "Historijowa strona", + "pad.toolbar.savedRevision.title": "Wersiju składować", + "pad.toolbar.settings.title": "Nastajenja", + "pad.toolbar.embed.title": "Tutón zapisnik dźělić a zasadźić", + "pad.toolbar.showusers.title": "Wužiwarjow na tutym zapisniku pokazać", + "pad.colorpicker.save": "Składować", + "pad.colorpicker.cancel": "Přetorhnyć", + "pad.loading": "Začituje so...", + "pad.noCookie": "Plack njeje so namakał. Prošu dopušćće placki w swojim wobhladowaku!", + "pad.passwordRequired": "Trjebaš hesło, zo by na tutón zapisnik přistup měł", + "pad.permissionDenied": "Nimaće prawo za přistup na tutón zapisnik.", + "pad.wrongPassword": "Twoje hesło bě wopak", + "pad.settings.padSettings": "Nastajenja zapisnika", + "pad.settings.myView": "Mój napohlad", + "pad.settings.stickychat": "Chat přeco na wobrazowce pokazać", + "pad.settings.chatandusers": "Chat a wužiwarjow pokazać", + "pad.settings.colorcheck": "Awtorowe barby", + "pad.settings.linenocheck": "Linkowe čisła", + "pad.settings.rtlcheck": "Wobsah wotprawa nalěwo čitać?", + "pad.settings.fontType": "Pismowa družina:", + "pad.settings.fontType.normal": "Normalny", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Globalny napohlad", + "pad.settings.language": "Rěč:", + "pad.importExport.import_export": "Import/Eksport", + "pad.importExport.import": "Tekstowu dataju abo dokument nahrać", + "pad.importExport.importSuccessful": "Wuspěšny!", + "pad.importExport.export": "Aktualny zapisnik eksportować jako:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Luty tekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Móžeš jenož z formatow luteho teksta abo z HTML-formata importować. Za bóle rozšěrjene importowanske funkcije instaluj prošu Abiword.", + "pad.modals.connected": "Zwjazany.", + "pad.modals.reconnecting": "Zwjazuje so znowa z twojim zapisnikom...", + "pad.modals.forcereconnect": "Znowa zwjazać", + "pad.modals.userdup": "W druhim woknje wočinjeny", + "pad.modals.userdup.explanation": "Zda so, zo tutón zapisnik je so we wjace hač jednym woknje wobhladowaka na tutym ličaku wočinił.", + "pad.modals.userdup.advice": "Zwjazaj znowa, zo by tute wokno město toho wužiwał.", + "pad.modals.unauth": "Njeawtorizowany", + "pad.modals.unauth.explanation": "Při wobhladowanju tuteje strony su so twoje prawa změnili. Spytaj so znowa zwjazać.", + "pad.modals.looping.explanation": "Su komunikaciske problemy ze synchronizowanskim serwerom.", + "pad.modals.looping.cause": "Snano sy přez njekompatibelnu wohnjowu murju abo proksy zwjazany.", + "pad.modals.initsocketfail": "Serwer je njedocpějomny.", + "pad.modals.initsocketfail.explanation": "Zwisk ze synchronizowanskim serwerom móžno njeje.", + "pad.modals.initsocketfail.cause": "To je najskerje problem z twojim wobhladowakom abo twojim internetnym zwiskom.", + "pad.modals.slowcommit.explanation": "Serwer njewotmołwja.", + "pad.modals.slowcommit.cause": "To móhło problem syćoweho zwiska być.", + "pad.modals.badChangeset.explanation": "Změna, kotruž sy přewjedł, je so přez synchronizowanski serwer jako njedowolenu woznamjeniła.", + "pad.modals.badChangeset.cause": "To je so snano wopačneje serweroweje konfiguracije dla abo druheho njewočakowaneho zadźerženja dla stało. Prošu staj so ze słužbowym administratorom do zwiska, jeli sej mysliš, zo to je zmylk. Spytaj hišće raz zwjazać, zo by z wobdźěłowanjom pokročował.", + "pad.modals.corruptPad.explanation": "Zapisnik, na kotryž chceš přistup měć, je wobškodźeny.", + "pad.modals.corruptPad.cause": "To je so snano wopačneje serweroweje konfiguracije dla abo druheho njewočakowaneho zadźerženja dla stało. Prošu staj so ze słužbowym administratorom do zwiska.", + "pad.modals.deleted": "Zhašany.", + "pad.modals.deleted.explanation": "Tutón zapisnik je so wotstronił.", + "pad.modals.disconnected": "Zwisk je přetorhnjeny.", + "pad.modals.disconnected.explanation": "Zwisk ze serwerom je so zhubił", + "pad.modals.disconnected.cause": "Serwer k dispoziciji njesteji. Prošu informuj słužboweho administratora, jeli to so dale stawa.", + "pad.share": "Tutón zapisnik dźělić", + "pad.share.readonly": "Jenož čitajomny", + "pad.share.link": "Wotkaz", + "pad.share.emebdcode": "URL zasadźić", + "pad.chat": "Chat", + "pad.chat.title": "Chat za tutón zapisnik wočinić", + "pad.chat.loadmessages": "Dalše powěsće začitać", + "timeslider.pageTitle": "{{appTitle}} - wersijowa historija", + "timeslider.toolbar.returnbutton": "Wróćo k zapisnikej", + "timeslider.toolbar.authors": "Awtorojo:", + "timeslider.toolbar.authorsList": "Žane awtorojo", + "timeslider.toolbar.exportlink.title": "Eksportować", + "timeslider.exportCurrent": "Aktualnu wersiju eksportować jako:", + "timeslider.version": "Wersija {{version}}", + "timeslider.saved": "Składowany {{day}}. {{month}} {{year}}", + "timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januara", + "timeslider.month.february": "februara", + "timeslider.month.march": "měrca", + "timeslider.month.april": "apryla", + "timeslider.month.may": "meje", + "timeslider.month.june": "junija", + "timeslider.month.july": "julija", + "timeslider.month.august": "awgusta", + "timeslider.month.september": "septembra", + "timeslider.month.october": "oktobra", + "timeslider.month.november": "nowembra", + "timeslider.month.december": "decembra", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: awtor, two: awtoraj, few: awtorojo, other: awtorow ]} bjez mjena", + "pad.savedrevs.marked": "Tuta wersija je so nětko jako składowana wersija woznamjeniła", + "pad.savedrevs.timeslider": "Móžeš sej składowane wersije wobhladować, wopytujo historiju dokumenta.", + "pad.userlist.entername": "Zapodaj swoje mjeno", + "pad.userlist.unnamed": "bjez mjena", + "pad.userlist.guest": "Hósć", + "pad.userlist.deny": "Wotpokazać", + "pad.userlist.approve": "Schwalić", + "pad.editbar.clearcolors": "Awtorowe barby w cyłym dokumenće zhašeć?", + "pad.impexp.importbutton": "Nětko importować", + "pad.impexp.importing": "Importuje so...", + "pad.impexp.confirmimport": "Importowanje dataje přepisa aktualny tekst zapisnika. Chceš woprawdźe pokročować?", + "pad.impexp.convertFailed": "Njemóžachmy tutu dataju importować. Prošu wužij druhi dokumentowy format abo kopěruj manuelnje", + "pad.impexp.padHasData": "Njemóžachmy tutu dataju importować, dokelž tutón dokument hižo změny wobsahuje, prošu importuj nowy dokument.", + "pad.impexp.uploadFailed": "Nahraće njeje so poradźiło, prošu spytaj hišće raz", + "pad.impexp.importfailed": "Import njeje so poradźiło", + "pad.impexp.copypaste": "Prošu kopěrować a zasadźić", + "pad.impexp.exportdisabled": "Eksport jako format {{type}} je znjemóžnjeny. Prošu staj so ze swojim systemowym administratorom za podrobnosće do zwiska." +} diff --git a/sources/src/locales/hu.json b/sources/src/locales/hu.json old mode 100644 new mode 100755 index 8650786..c4d06c2 --- a/sources/src/locales/hu.json +++ b/sources/src/locales/hu.json @@ -1,109 +1,129 @@ { - "@metadata": { - "authors": [ - "Dj", - "Misibacsi", - "R-Joe", - "Tgr" - ] - }, - "index.newPad": "Új notesz", - "index.createOpenPad": "vagy notesz létrehozása ezen a néven:", - "pad.toolbar.bold.title": "Félkövér (Ctrl-B)", - "pad.toolbar.italic.title": "Dőlt (Ctrl-I)", - "pad.toolbar.underline.title": "Aláhúzás (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Áthúzás", - "pad.toolbar.ol.title": "Számozott lista", - "pad.toolbar.ul.title": "Számozatlan lista", - "pad.toolbar.indent.title": "Behúzás növelése (TAB)", - "pad.toolbar.unindent.title": "Behúzás csökkentése (Shift+TAB)", - "pad.toolbar.undo.title": "Vissza (Ctrl-Z)", - "pad.toolbar.redo.title": "Újra (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Szerzők színezésének kikapcsolása", - "pad.toolbar.import_export.title": "Importálás/exportálás különböző fájlformátumokból/ba", - "pad.toolbar.timeslider.title": "Időcsúszka", - "pad.toolbar.savedRevision.title": "Mentett állapotok", - "pad.toolbar.settings.title": "Beállítások", - "pad.toolbar.embed.title": "Notesz beágyazása", - "pad.toolbar.showusers.title": "Notesz felhasználóinak megmutatása", - "pad.colorpicker.save": "Mentés", - "pad.colorpicker.cancel": "Mégsem", - "pad.loading": "Betöltés…", - "pad.passwordRequired": "Jelszóra van szükséged ezen notesz eléréséhez", - "pad.permissionDenied": "Nincs engedélyed ezen notesz eléréséhez", - "pad.wrongPassword": "A jelszó rossz volt", - "pad.settings.padSettings": "Notesz beállításai", - "pad.settings.myView": "Az én nézetem", - "pad.settings.stickychat": "Mindig mutasd a csevegés-dobozt", - "pad.settings.colorcheck": "Szerzők színei", - "pad.settings.linenocheck": "Sorok számozása", - "pad.settings.fontType": "Betűtípus:", - "pad.settings.fontType.normal": "Szokásos", - "pad.settings.fontType.monospaced": "Írógépes", - "pad.settings.globalView": "Globális nézet", - "pad.settings.language": "Nyelv:", - "pad.importExport.import_export": "Import/export", - "pad.importExport.import": "Tetszőleges szövegfájl vagy dokumentum feltöltése", - "pad.importExport.importSuccessful": "Siker!", - "pad.importExport.export": "Jelenlegi notesz exportálása így:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Sima szöveg", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document formátum)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "Kapcsolódva.", - "pad.modals.reconnecting": "Újrakapcsolódás a noteszhez...", - "pad.modals.forcereconnect": "Újrakapcsolódás kényszerítése", - "pad.modals.userdup.explanation": "Úgy tűnik, ez a notesz több különböző böngészőablakban is meg van nyitva a számítógépeden.", - "pad.modals.userdup.advice": "Kapcsolódj újra, ha ezt az ablakot akarod használni.", - "pad.modals.unauth": "Nincs rá jogosultságod", - "pad.modals.unauth.explanation": "A jogosultságaid változtak, miközben nézted ezt az oldalt. Próbálj újrakapcsolódni.", - "pad.modals.looping.explanation": "Nem sikerült a kommunikáció a szinkronizációs szerverrel.", - "pad.modals.looping.cause": "Talán egy túl szigorú tűzfalon vagy proxyn keresztül kapcsolódtál az internetre.", - "pad.modals.initsocketfail": "A szerver nem érhető el.", - "pad.modals.initsocketfail.explanation": "Nem sikerült kapcsolódni a szinkronizációs szerverhez.", - "pad.modals.initsocketfail.cause": "Valószínűleg a böngésződdel vagy az internetkapcsolatoddal van probléma.", - "pad.modals.slowcommit.explanation": "A szerver nem válaszol.", - "pad.modals.slowcommit.cause": "Valószínűleg az internetkapcsolattal van probléma.", - "pad.modals.deleted": "Törölve.", - "pad.modals.deleted.explanation": "Ez a notesz el lett távolítva.", - "pad.modals.disconnected": "Kapcsolat bontva.", - "pad.modals.disconnected.explanation": "A szerverrel való kapcsolat megszűnt.", - "pad.modals.disconnected.cause": "Lehet, hogy a szerver nem elérhető. Kérlek, értesíts minket, ha a probléma tartósan fennáll.", - "pad.share": "Notesz megosztása", - "pad.share.readonly": "Csak olvasható", - "pad.share.link": "Hivatkozás", - "pad.share.emebdcode": "URL beágyazása", - "pad.chat": "Csevegés", - "pad.chat.title": "A noteszhez tartozó csevegés megnyitása.", - "timeslider.pageTitle": "{{appTitle}} időcsúszka", - "timeslider.toolbar.returnbutton": "Vissza a noteszhez", - "timeslider.toolbar.authors": "Szerzők:", - "timeslider.toolbar.authorsList": "Nincsenek szerzők", - "timeslider.exportCurrent": "Jelenlegi változat exportálása így:", - "timeslider.version": "{{version}} verzió", - "timeslider.saved": "{{year}}. {{month}} {{day}}-n elmentve", - "timeslider.dateformat": "{{year}}/{{month}}/{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "január", - "timeslider.month.february": "február", - "timeslider.month.march": "március", - "timeslider.month.april": "április", - "timeslider.month.may": "május", - "timeslider.month.june": "június", - "timeslider.month.july": "július", - "timeslider.month.august": "augusztus", - "timeslider.month.september": "szeptember", - "timeslider.month.october": "október", - "timeslider.month.november": "november", - "timeslider.month.december": "december", - "pad.userlist.entername": "Add meg a nevedet", - "pad.userlist.unnamed": "névtelen", - "pad.userlist.guest": "Vendég", - "pad.userlist.deny": "Megtagad", - "pad.userlist.approve": "Jóváhagy", - "pad.impexp.importbutton": "Importálás most", - "pad.impexp.importing": "Importálás…", - "pad.impexp.uploadFailed": "A feltöltés sikertelen, próbáld meg újra", - "pad.impexp.importfailed": "Az importálás nem sikerült" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Dj", + "Misibacsi", + "R-Joe", + "Tgr", + "Csega" + ] + }, + "index.newPad": "Új notesz", + "index.createOpenPad": "vagy notesz létrehozása/megnyitása ezzel a névvel:", + "pad.toolbar.bold.title": "Félkövér (Ctrl-B)", + "pad.toolbar.italic.title": "Dőlt (Ctrl-I)", + "pad.toolbar.underline.title": "Aláhúzás (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Áthúzás (Ctrl+5)", + "pad.toolbar.ol.title": "Számozott lista (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Számozatlan lista (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Behúzás növelése (TAB)", + "pad.toolbar.unindent.title": "Behúzás csökkentése (Shift+TAB)", + "pad.toolbar.undo.title": "Visszavonás (Ctrl-Z)", + "pad.toolbar.redo.title": "Újra (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Szerzők színezésének kikapcsolása (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importálás/exportálás különböző fájlformátumokból/ba", + "pad.toolbar.timeslider.title": "Időcsúszka", + "pad.toolbar.savedRevision.title": "Revízió mentése", + "pad.toolbar.settings.title": "Beállítások", + "pad.toolbar.embed.title": "Notesz beágyazása és megosztása", + "pad.toolbar.showusers.title": "Notesz felhasználóinak megmutatása", + "pad.colorpicker.save": "Mentés", + "pad.colorpicker.cancel": "Mégsem", + "pad.loading": "Betöltés…", + "pad.noCookie": "Nem található a süti. Engedélyezd a böngésződben a sütik használatát!", + "pad.passwordRequired": "Jelszóra van szükséged ezen notesz eléréséhez", + "pad.permissionDenied": "Nincs engedélyed ezen notesz eléréséhez", + "pad.wrongPassword": "A jelszó rossz volt", + "pad.settings.padSettings": "Notesz beállításai", + "pad.settings.myView": "Az én nézetem", + "pad.settings.stickychat": "Mindig mutasd a csevegés-dobozt", + "pad.settings.chatandusers": "Csevegés és felhasználók mutatása", + "pad.settings.colorcheck": "Szerzők színei", + "pad.settings.linenocheck": "Sorok számozása", + "pad.settings.rtlcheck": "Tartalom olvasása balról jobbra?", + "pad.settings.fontType": "Betűtípus:", + "pad.settings.fontType.normal": "Szokásos", + "pad.settings.fontType.monospaced": "Írógépes", + "pad.settings.globalView": "Globális nézet", + "pad.settings.language": "Nyelv:", + "pad.importExport.import_export": "Import/export", + "pad.importExport.import": "Tetszőleges szövegfájl vagy dokumentum feltöltése", + "pad.importExport.importSuccessful": "Siker!", + "pad.importExport.export": "Jelenlegi notesz exportálása így:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Sima szöveg", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document formátum)", + "pad.importExport.abiword.innerHTML": "Csak szöveges, vagy HTML formátumokból importálhatsz. A speciális importálási funkciókért kérjük telepítsd az abiword-öt.", + "pad.modals.connected": "Kapcsolódva.", + "pad.modals.reconnecting": "Újrakapcsolódás a noteszhez...", + "pad.modals.forcereconnect": "Újrakapcsolódás kényszerítése", + "pad.modals.userdup": "Új ablakban megnyitva", + "pad.modals.userdup.explanation": "Úgy tűnik, ez a notesz több különböző böngészőablakban is meg van nyitva a számítógépeden.", + "pad.modals.userdup.advice": "Kapcsolódj újra, ha ezt az ablakot akarod használni.", + "pad.modals.unauth": "Nincs rá jogosultságod", + "pad.modals.unauth.explanation": "A jogosultságaid megváltoztak, miközben ezt az oldalt nézted. Próbálj meg újrakapcsolódni.", + "pad.modals.looping.explanation": "Nem sikerült a kommunikáció a szinkronizációs szerverrel.", + "pad.modals.looping.cause": "Talán egy túl szigorú tűzfalon vagy proxyn keresztül kapcsolódtál az internetre.", + "pad.modals.initsocketfail": "A szerver nem érhető el.", + "pad.modals.initsocketfail.explanation": "Nem sikerült kapcsolódni a szinkronizációs szerverhez.", + "pad.modals.initsocketfail.cause": "Valószínűleg a böngésződdel vagy az internetkapcsolatoddal van probléma.", + "pad.modals.slowcommit.explanation": "A szerver nem válaszol.", + "pad.modals.slowcommit.cause": "Valószínűleg az internetkapcsolattal van probléma.", + "pad.modals.badChangeset.explanation": "Szerkesztéseded a szinkronizációs szerver illegálisnak sorolta be.", + "pad.modals.badChangeset.cause": "Ennek oka lehet egy rossz szerver konfiguráció, vagy más váratlan viselkedés. Ha úgy érzi, ez hiba eredménye, lépjen kapcsolatba a szolgáltatás adminisztrátorával. Próbáljon meg újrakapcsolódni a szerkesztés folytatásához.", + "pad.modals.corruptPad.explanation": "A notesz, amit megpróbálsz elérni, sérült.", + "pad.modals.corruptPad.cause": "Ennek oka lehet egy rossz szerver konfiguráció, vagy más váratlan viselkedés. Kérjük, lépj kapcsolatba a szolgáltatás adminisztrátorával.", + "pad.modals.deleted": "Törölve.", + "pad.modals.deleted.explanation": "Ez a notesz el lett távolítva.", + "pad.modals.disconnected": "Kapcsolat bontva.", + "pad.modals.disconnected.explanation": "A szerverrel való kapcsolat megszűnt", + "pad.modals.disconnected.cause": "Lehet, hogy a szerver nem elérhető. Kérlek, értesítsd a szolgáltatás adminisztrátorát, ha a probléma tartósan fennáll.", + "pad.share": "Notesz megosztása", + "pad.share.readonly": "Csak olvasható", + "pad.share.link": "Hivatkozás", + "pad.share.emebdcode": "URL beágyazása", + "pad.chat": "Csevegés", + "pad.chat.title": "A noteszhez tartozó csevegés megnyitása.", + "pad.chat.loadmessages": "További üzenetek betöltése", + "timeslider.pageTitle": "{{appTitle}} időcsúszka", + "timeslider.toolbar.returnbutton": "Vissza a noteszhez", + "timeslider.toolbar.authors": "Szerzők:", + "timeslider.toolbar.authorsList": "Nincsenek szerzők", + "timeslider.toolbar.exportlink.title": "Exportálás", + "timeslider.exportCurrent": "Jelenlegi változat exportálása így:", + "timeslider.version": "{{version}} verzió", + "timeslider.saved": "{{year}}. {{month}} {{day}}-n elmentve", + "timeslider.dateformat": "{{year}}/{{month}}/{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "január", + "timeslider.month.february": "február", + "timeslider.month.march": "március", + "timeslider.month.april": "április", + "timeslider.month.may": "május", + "timeslider.month.june": "június", + "timeslider.month.july": "július", + "timeslider.month.august": "augusztus", + "timeslider.month.september": "szeptember", + "timeslider.month.october": "október", + "timeslider.month.november": "november", + "timeslider.month.december": "december", + "timeslider.unnamedauthors": "{{num}} névtelen {[plural(num), one: szerző, other: szerző]}", + "pad.savedrevs.marked": "Ez a revízió mostantól mentettként jelölve", + "pad.userlist.entername": "Add meg a nevedet", + "pad.userlist.unnamed": "névtelen", + "pad.userlist.guest": "Vendég", + "pad.userlist.deny": "Megtagad", + "pad.userlist.approve": "Jóváhagy", + "pad.editbar.clearcolors": "A szerzőséget jelző színeket törlöd a teljes dokumentumból?", + "pad.impexp.importbutton": "Importálás most", + "pad.impexp.importing": "Importálás…", + "pad.impexp.confirmimport": "Egy fájl importálása felülírja a jelenlegi szöveget a noteszben. Biztos hogy folytatod?", + "pad.impexp.convertFailed": "Nem tudtuk importálni ezt a fájlt. Kérjük, használj másik dokumentum formátumot, vagy kézzel másold és illeszd be a tartalmat", + "pad.impexp.padHasData": "Nem tudjuk importálni ezt a fájlt, mert ez a Pad már megváltozott, kérjük, importálj egy új padra", + "pad.impexp.uploadFailed": "A feltöltés sikertelen, próbáld meg újra", + "pad.impexp.importfailed": "Az importálás nem sikerült", + "pad.impexp.copypaste": "Kérjük másold be", + "pad.impexp.exportdisabled": "{{type}} formátumba az exportálás nem engedélyezett. Kérjük, a részletekért fordulj a rendszeradminisztrátorhoz." +} diff --git a/sources/src/locales/ia.json b/sources/src/locales/ia.json old mode 100644 new mode 100755 index 3be72d9..e7f5cc2 --- a/sources/src/locales/ia.json +++ b/sources/src/locales/ia.json @@ -1,122 +1,124 @@ { - "@metadata": { - "authors": [ - "McDutchie" - ] - }, - "index.newPad": "Nove pad", - "index.createOpenPad": "o crear/aperir un pad con le nomine:", - "pad.toolbar.bold.title": "Grasse (Ctrl-B)", - "pad.toolbar.italic.title": "Italic (Ctrl-I)", - "pad.toolbar.underline.title": "Sublinear (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Cancellar", - "pad.toolbar.ol.title": "Lista ordinate", - "pad.toolbar.ul.title": "Lista non ordinate", - "pad.toolbar.indent.title": "Indentar", - "pad.toolbar.unindent.title": "Disindentar", - "pad.toolbar.undo.title": "Disfacer (Ctrl-Z)", - "pad.toolbar.redo.title": "Refacer (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Rader colores de autor", - "pad.toolbar.import_export.title": "Importar/exportar in differente formatos de file", - "pad.toolbar.timeslider.title": "Glissa-tempore", - "pad.toolbar.savedRevision.title": "Version salveguardate", - "pad.toolbar.settings.title": "Configuration", - "pad.toolbar.embed.title": "Divider e incorporar iste pad", - "pad.toolbar.showusers.title": "Monstrar le usatores de iste pad", - "pad.colorpicker.save": "Salveguardar", - "pad.colorpicker.cancel": "Cancellar", - "pad.loading": "Cargamento…", - "pad.passwordRequired": "Un contrasigno es necessari pro acceder a iste pad", - "pad.permissionDenied": "Tu non ha le permission de acceder a iste pad", - "pad.wrongPassword": "Le contrasigno es incorrecte", - "pad.settings.padSettings": "Configuration del pad", - "pad.settings.myView": "Mi vista", - "pad.settings.stickychat": "Chat sempre visibile", - "pad.settings.colorcheck": "Colores de autor", - "pad.settings.linenocheck": "Numeros de linea", - "pad.settings.rtlcheck": "Leger le contento de dextra a sinistra?", - "pad.settings.fontType": "Typo de litteras:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospatial", - "pad.settings.globalView": "Vista global", - "pad.settings.language": "Lingua:", - "pad.importExport.import_export": "Importar/Exportar", - "pad.importExport.import": "Incargar qualcunque file de texto o documento", - "pad.importExport.importSuccessful": "Succedite!", - "pad.importExport.export": "Exportar le pad actual como:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Texto simple", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Tu pote solmente importar files in formato de texto simple o HTML. Pro functionalitate de importation plus extense, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstalla AbiWord\u003C/a\u003E.", - "pad.modals.connected": "Connectite.", - "pad.modals.reconnecting": "Reconnecte a tu pad…", - "pad.modals.forcereconnect": "Fortiar reconnexion", - "pad.modals.userdup": "Aperte in un altere fenestra", - "pad.modals.userdup.explanation": "Iste pad pare esser aperte in plus de un fenestra de navigator in iste computator.", - "pad.modals.userdup.advice": "Reconnecte pro usar iste fenestra.", - "pad.modals.unauth": "Non autorisate", - "pad.modals.unauth.explanation": "Tu permissiones ha cambiate durante que tu legeva iste pagina. Tenta reconnecter.", - "pad.modals.looping.explanation": "Il ha problemas de communication con le servitor de synchronisation.", - "pad.modals.looping.cause": "Il es possibile que tu connexion passa per un firewall o proxy incompatibile.", - "pad.modals.initsocketfail": "Le servitor es inattingibile.", - "pad.modals.initsocketfail.explanation": "Impossibile connecter al servitor de synchronisation.", - "pad.modals.initsocketfail.cause": "Isto es probabilemente causate per un problema con tu navigator o connexion a internet.", - "pad.modals.slowcommit.explanation": "Le servitor non responde.", - "pad.modals.slowcommit.cause": "Isto pote esser causate per problemas con le connexion al rete.", - "pad.modals.badChangeset.explanation": "Un modification que tu ha facite ha essite classificate como incorrecte per le servitor de synchronisation.", - "pad.modals.badChangeset.cause": "Isto pote esser causate per un configuration incorrecte del servitor o per alcun altere comportamento impreviste. Per favor contacta le administrator del servicio si tu pensa que se tracta de un error. Tenta reconnecter te pro continuar a modificar.", - "pad.modals.corruptPad.explanation": "Le pad al qual tu tenta acceder es corrumpite.", - "pad.modals.corruptPad.cause": "Isto pote esser debite a un configuration incorrecte del servitor o a alcun altere comportamento impreviste. Per favor contacta le administrator del servicio.", - "pad.modals.deleted": "Delite.", - "pad.modals.deleted.explanation": "Iste pad ha essite removite.", - "pad.modals.disconnected": "Tu ha essite disconnectite.", - "pad.modals.disconnected.explanation": "Le connexion al servitor ha essite perdite.", - "pad.modals.disconnected.cause": "Le servitor pote esser indisponibile. Per favor notifica le administrator del servicio si isto continua a producer se.", - "pad.share": "Diffunder iste pad", - "pad.share.readonly": "Lectura solmente", - "pad.share.link": "Ligamine", - "pad.share.emebdcode": "Codice de incorporation", - "pad.chat": "Chat", - "pad.chat.title": "Aperir le chat pro iste pad.", - "pad.chat.loadmessages": "Cargar plus messages", - "timeslider.pageTitle": "Glissa-tempore pro {{appTitle}}", - "timeslider.toolbar.returnbutton": "Retornar al pad", - "timeslider.toolbar.authors": "Autores:", - "timeslider.toolbar.authorsList": "Nulle autor", - "timeslider.toolbar.exportlink.title": "Exportar", - "timeslider.exportCurrent": "Exportar le version actual como:", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Salveguardate le {{day}} de {{month}} {{year}}", - "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januario", - "timeslider.month.february": "februario", - "timeslider.month.march": "martio", - "timeslider.month.april": "april", - "timeslider.month.may": "maio", - "timeslider.month.june": "junio", - "timeslider.month.july": "julio", - "timeslider.month.august": "augusto", - "timeslider.month.september": "septembre", - "timeslider.month.october": "octobre", - "timeslider.month.november": "novembre", - "timeslider.month.december": "decembre", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autores ]} sin nomine", - "pad.savedrevs.marked": "Iste version es ora marcate como version salveguardate", - "pad.userlist.entername": "Entra tu nomine", - "pad.userlist.unnamed": "sin nomine", - "pad.userlist.guest": "Invitato", - "pad.userlist.deny": "Refusar", - "pad.userlist.approve": "Approbar", - "pad.editbar.clearcolors": "Rader le colores de autor in tote le documento?", - "pad.impexp.importbutton": "Importar ora", - "pad.impexp.importing": "Importation in curso…", - "pad.impexp.confirmimport": "Le importation de un file superscribera le texto actual del pad. Es tu secur de voler continuar?", - "pad.impexp.convertFailed": "Nos non ha potite importar iste file. Per favor usa un altere formato de documento o copia e colla le texto manualmente.", - "pad.impexp.uploadFailed": "Le incargamento ha fallite. Per favor reproba.", - "pad.impexp.importfailed": "Importation fallite", - "pad.impexp.copypaste": "Per favor copia e colla", - "pad.impexp.exportdisabled": "Le exportation in formato {{type}} es disactivate. Per favor contacta le administrator del systema pro detalios." -} \ No newline at end of file + "@metadata": { + "authors": [ + "McDutchie" + ] + }, + "index.newPad": "Nove pad", + "index.createOpenPad": "o crear/aperir un pad con le nomine:", + "pad.toolbar.bold.title": "Grasse (Ctrl-B)", + "pad.toolbar.italic.title": "Italic (Ctrl-I)", + "pad.toolbar.underline.title": "Sublinear (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Cancellar (Ctrl+5)", + "pad.toolbar.ol.title": "Lista ordinate (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Lista non ordinate (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Indentar (TAB)", + "pad.toolbar.unindent.title": "Disindentar (Shift+TAB)", + "pad.toolbar.undo.title": "Disfacer (Ctrl-Z)", + "pad.toolbar.redo.title": "Refacer (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Rader colores de autor (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importar/exportar in differente formatos de file", + "pad.toolbar.timeslider.title": "Glissa-tempore", + "pad.toolbar.savedRevision.title": "Version salveguardate", + "pad.toolbar.settings.title": "Configuration", + "pad.toolbar.embed.title": "Divider e incorporar iste pad", + "pad.toolbar.showusers.title": "Monstrar le usatores de iste pad", + "pad.colorpicker.save": "Salveguardar", + "pad.colorpicker.cancel": "Cancellar", + "pad.loading": "Cargamento…", + "pad.noCookie": "Le cookie non pote esser trovate. Per favor permitte le cookies in tu navigator!", + "pad.passwordRequired": "Un contrasigno es necessari pro acceder a iste pad", + "pad.permissionDenied": "Tu non ha le permission de acceder a iste pad", + "pad.wrongPassword": "Le contrasigno es incorrecte", + "pad.settings.padSettings": "Configuration del pad", + "pad.settings.myView": "Mi vista", + "pad.settings.stickychat": "Chat sempre visibile", + "pad.settings.colorcheck": "Colores de autor", + "pad.settings.linenocheck": "Numeros de linea", + "pad.settings.rtlcheck": "Leger le contento de dextra a sinistra?", + "pad.settings.fontType": "Typo de litteras:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospatial", + "pad.settings.globalView": "Vista global", + "pad.settings.language": "Lingua:", + "pad.importExport.import_export": "Importar/Exportar", + "pad.importExport.import": "Incargar qualcunque file de texto o documento", + "pad.importExport.importSuccessful": "Succedite!", + "pad.importExport.export": "Exportar le pad actual como:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Texto simple", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Tu pote solmente importar files in formato de texto simple o HTML. Pro functionalitate de importation plus extense, installa AbiWord.", + "pad.modals.connected": "Connectite.", + "pad.modals.reconnecting": "Reconnecte a tu pad…", + "pad.modals.forcereconnect": "Fortiar reconnexion", + "pad.modals.userdup": "Aperte in un altere fenestra", + "pad.modals.userdup.explanation": "Iste pad pare esser aperte in plus de un fenestra de navigator in iste computator.", + "pad.modals.userdup.advice": "Reconnecte pro usar iste fenestra.", + "pad.modals.unauth": "Non autorisate", + "pad.modals.unauth.explanation": "Tu permissiones ha cambiate durante que tu legeva iste pagina. Tenta reconnecter.", + "pad.modals.looping.explanation": "Il ha problemas de communication con le servitor de synchronisation.", + "pad.modals.looping.cause": "Il es possibile que tu connexion passa per un firewall o proxy incompatibile.", + "pad.modals.initsocketfail": "Le servitor es inattingibile.", + "pad.modals.initsocketfail.explanation": "Impossibile connecter al servitor de synchronisation.", + "pad.modals.initsocketfail.cause": "Isto es probabilemente causate per un problema con tu navigator o connexion a internet.", + "pad.modals.slowcommit.explanation": "Le servitor non responde.", + "pad.modals.slowcommit.cause": "Isto pote esser causate per problemas con le connexion al rete.", + "pad.modals.badChangeset.explanation": "Un modification que tu ha facite ha essite classificate como incorrecte per le servitor de synchronisation.", + "pad.modals.badChangeset.cause": "Isto pote esser causate per un configuration incorrecte del servitor o per alcun altere comportamento impreviste. Per favor contacta le administrator del servicio si tu pensa que se tracta de un error. Tenta reconnecter te pro continuar a modificar.", + "pad.modals.corruptPad.explanation": "Le pad al qual tu tenta acceder es corrumpite.", + "pad.modals.corruptPad.cause": "Isto pote esser debite a un configuration incorrecte del servitor o a alcun altere comportamento impreviste. Per favor contacta le administrator del servicio.", + "pad.modals.deleted": "Delite.", + "pad.modals.deleted.explanation": "Iste pad ha essite removite.", + "pad.modals.disconnected": "Tu ha essite disconnectite.", + "pad.modals.disconnected.explanation": "Le connexion al servitor ha essite perdite.", + "pad.modals.disconnected.cause": "Le servitor pote esser indisponibile. Per favor notifica le administrator del servicio si isto continua a producer se.", + "pad.share": "Diffunder iste pad", + "pad.share.readonly": "Lectura solmente", + "pad.share.link": "Ligamine", + "pad.share.emebdcode": "Codice de incorporation", + "pad.chat": "Chat", + "pad.chat.title": "Aperir le chat pro iste pad.", + "pad.chat.loadmessages": "Cargar plus messages", + "timeslider.pageTitle": "Glissa-tempore pro {{appTitle}}", + "timeslider.toolbar.returnbutton": "Retornar al pad", + "timeslider.toolbar.authors": "Autores:", + "timeslider.toolbar.authorsList": "Nulle autor", + "timeslider.toolbar.exportlink.title": "Exportar", + "timeslider.exportCurrent": "Exportar le version actual como:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Salveguardate le {{day}} de {{month}} {{year}}", + "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januario", + "timeslider.month.february": "februario", + "timeslider.month.march": "martio", + "timeslider.month.april": "april", + "timeslider.month.may": "maio", + "timeslider.month.june": "junio", + "timeslider.month.july": "julio", + "timeslider.month.august": "augusto", + "timeslider.month.september": "septembre", + "timeslider.month.october": "octobre", + "timeslider.month.november": "novembre", + "timeslider.month.december": "decembre", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autores ]} sin nomine", + "pad.savedrevs.marked": "Iste version es ora marcate como version salveguardate", + "pad.userlist.entername": "Entra tu nomine", + "pad.userlist.unnamed": "sin nomine", + "pad.userlist.guest": "Invitato", + "pad.userlist.deny": "Refusar", + "pad.userlist.approve": "Approbar", + "pad.editbar.clearcolors": "Rader le colores de autor in tote le documento?", + "pad.impexp.importbutton": "Importar ora", + "pad.impexp.importing": "Importation in curso…", + "pad.impexp.confirmimport": "Le importation de un file superscribera le texto actual del pad. Es tu secur de voler continuar?", + "pad.impexp.convertFailed": "Nos non ha potite importar iste file. Per favor usa un altere formato de documento o copia e colla le texto manualmente.", + "pad.impexp.padHasData": "Nos non ha potite importar iste file perque iste Pad ha jam habite cambiamentos. Per favor importa lo a un nove pad.", + "pad.impexp.uploadFailed": "Le incargamento ha fallite. Per favor reproba.", + "pad.impexp.importfailed": "Importation fallite", + "pad.impexp.copypaste": "Per favor copia e colla", + "pad.impexp.exportdisabled": "Le exportation in formato {{type}} es disactivate. Per favor contacta le administrator del systema pro detalios." +} diff --git a/sources/src/locales/is.json b/sources/src/locales/is.json new file mode 100755 index 0000000..dc3f3b3 --- /dev/null +++ b/sources/src/locales/is.json @@ -0,0 +1,126 @@ +{ + "@metadata": { + "authors": [ + "Sveinn í Felli" + ] + }, + "index.newPad": "Ný skrifblokk", + "index.createOpenPad": "eða búa til/opna skrifblokk með heitinu:", + "pad.toolbar.bold.title": "Feitletrað (Ctrl+B)", + "pad.toolbar.italic.title": "Skáletrað (Ctrl+I)", + "pad.toolbar.underline.title": "Undirstrikað (Ctrl+U)", + "pad.toolbar.strikethrough.title": "Yfirstrikun (Ctrl+5)", + "pad.toolbar.ol.title": "Raðaður listi (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Óraðaður listi (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Inndráttur (TAB)", + "pad.toolbar.unindent.title": "Draga til baka (Shift+TAB)", + "pad.toolbar.undo.title": "Afturkalla (Ctrl+Z)", + "pad.toolbar.redo.title": "Endurtaka (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Hreinsa liti höfunda (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Flytja inn/út frá/í önnur skráasnið", + "pad.toolbar.timeslider.title": "Tímalína", + "pad.toolbar.savedRevision.title": "Vista endurskoðaða útgáfu", + "pad.toolbar.settings.title": "Stillingar", + "pad.toolbar.embed.title": "Deila og ívefja þessari skrifblokk", + "pad.toolbar.showusers.title": "Sýna notendur þessarar skrifblokkar", + "pad.colorpicker.save": "Vista", + "pad.colorpicker.cancel": "Hætta við", + "pad.loading": "Hleð inn...", + "pad.noCookie": "Smákaka fannst ekki. Þú verður að leyfa smákökur í vafranum þínum!", + "pad.passwordRequired": "Þú þarft að gefa upp lykilorð til að komast á þessa skrifblokk", + "pad.permissionDenied": "Þú hefur ekki réttindi til að nota þessa skrifblokk", + "pad.wrongPassword": "Lykilorðinu þínu var hafnað", + "pad.settings.padSettings": "Stillingar skrifblokkar", + "pad.settings.myView": "Mitt yfirlit", + "pad.settings.stickychat": "Spjall alltaf á skjánum", + "pad.settings.chatandusers": "Sýna spjall og notendur", + "pad.settings.colorcheck": "Litir höfunda", + "pad.settings.linenocheck": "Línunúmer", + "pad.settings.rtlcheck": "Lesa innihaldið frá hægri til vinstri?", + "pad.settings.fontType": "Leturgerð:", + "pad.settings.fontType.normal": "Venjulegt", + "pad.settings.fontType.monospaced": "Jafnbreitt", + "pad.settings.globalView": "Yfirlitssýn", + "pad.settings.language": "Tungumál:", + "pad.importExport.import_export": "Flytja inn/út", + "pad.importExport.import": "Settu inn hverskyns texta eða skjal", + "pad.importExport.importSuccessful": "Heppnaðist!", + "pad.importExport.export": "Flytja út núverandi skrifblokk sem:", + "pad.importExport.exportetherpad": "Etherpad netskrifblokk", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Hreinn texti", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Þú getur aðeins flutt inn úr hreinum texta eða HTML sniðum. Til að geta nýtt \nfleiri þróaðri innflutningssnið settu þá upp abiword forritið.", + "pad.modals.connected": "Tengt.", + "pad.modals.reconnecting": "Endurtengist skrifblokkinni þinni...", + "pad.modals.forcereconnect": "Þvinga endurtengingu", + "pad.modals.userdup": "Opnað í öðrum glugga", + "pad.modals.userdup.explanation": "Þessi skrifblokk virðist vera opin í fleiri en einum vafraglugga á þessari tölvu.", + "pad.modals.userdup.advice": "Endurtengdu til að nota þennan glugga í staðinn.", + "pad.modals.unauth": "Ekki leyfilegt", + "pad.modals.unauth.explanation": "Heimildir þínar hafa breyst á meðan þú skoðaðir þessa síðu. Reyndu að endurtengjast.", + "pad.modals.looping.explanation": "Það eru samskiptavandamál við samstillingarmiðlarann.", + "pad.modals.looping.cause": "Hugsanlega ertu tengdur í gegnum ósamhæfðan eldvegg eða milliþjón.", + "pad.modals.initsocketfail": "Næ ekki sambandi við netþjón.", + "pad.modals.initsocketfail.explanation": "Gat ekki tengst samstillingarmiðlaranum.", + "pad.modals.initsocketfail.cause": "Þetta er líklega vegna vandamáls varðandi vafrann þinn eða internettenginguna þína.", + "pad.modals.slowcommit.explanation": "Þjónninn svarar ekki.", + "pad.modals.slowcommit.cause": "Þetta gæti verið vegna vandamála varðandi nettengingar.", + "pad.modals.badChangeset.explanation": "Breyting sem þú gerðir var flokkuð sem óleyfileg af samstillingarmiðlaranum.", + "pad.modals.badChangeset.cause": "Þetta gæti verið vegna rangrar uppsetningar á þjóninum eða annarar óvæntrar hegðunar. Hafðu samband við stjórnanda þjónustunnar ef þér sýnist þetta vera villa. Reyndu að endurtengjast til að halda áfram með breytingar.", + "pad.modals.corruptPad.explanation": "Skrifblokkin sem þú ert að reyna að tengjast er skemmd.", + "pad.modals.corruptPad.cause": "Þetta gæti verið vegna rangrar uppsetningar á þjóninum eða annarar óvæntrar hegðunar. Hafðu samband við stjórnanda þjónustunnar.", + "pad.modals.deleted": "Eytt.", + "pad.modals.deleted.explanation": "Þessi skrifblokk hefur verið fjarlægð.", + "pad.modals.disconnected": "Þú hefur verið aftengd(ur).", + "pad.modals.disconnected.explanation": "Missti tengingu við miðlara", + "pad.modals.disconnected.cause": "Miðlarinn gæti verið ekki tiltækur. Láttu kerfisstjóra vita ef þetta heldur áfram að gerast.", + "pad.share": "Deila þessari skrifblokk", + "pad.share.readonly": "Skrifvarið", + "pad.share.link": "Tengill", + "pad.share.emebdcode": "Ívefja slóð", + "pad.chat": "Spjall", + "pad.chat.title": "Opna spjallið fyrir þessa skrifblokk.", + "pad.chat.loadmessages": "Hlaða inn fleiri skeytum", + "timeslider.pageTitle": "Tímalína {{appTitle}}", + "timeslider.toolbar.returnbutton": "Fara til baka í skrifblokk", + "timeslider.toolbar.authors": "Höfundar:", + "timeslider.toolbar.authorsList": "Engir höfundar", + "timeslider.toolbar.exportlink.title": "Flytja út", + "timeslider.exportCurrent": "Flytja út núverandi útgáfu sem:", + "timeslider.version": "Útgáfa {{version}}", + "timeslider.saved": "Vistað {{day}}. {{month}}, {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Janúar", + "timeslider.month.february": "febrúar", + "timeslider.month.march": "mars", + "timeslider.month.april": "apríl", + "timeslider.month.may": "maí", + "timeslider.month.june": "júní", + "timeslider.month.july": "Júlí", + "timeslider.month.august": "ágúst", + "timeslider.month.september": "september", + "timeslider.month.october": "október", + "timeslider.month.november": "nóvember", + "timeslider.month.december": "desember", + "timeslider.unnamedauthors": "{{num}} ónefnt {[plural(num) one: höfundur, other: höfundar ]}", + "pad.savedrevs.marked": "Þessi útgáfa er núna merkt sem vistuð útgáfa", + "pad.savedrevs.timeslider": "Þú getur skoðað vistaðar útgáfur með því að fara á tímalínuna", + "pad.userlist.entername": "Settu inn nafnið þitt", + "pad.userlist.unnamed": "ónefnt", + "pad.userlist.guest": "Gestur", + "pad.userlist.deny": "Hafna", + "pad.userlist.approve": "Samþykkja", + "pad.editbar.clearcolors": "Hreinsa liti höfunda á öllu skjalinu?", + "pad.impexp.importbutton": "Flytja inn núna", + "pad.impexp.importing": "Flyt inn...", + "pad.impexp.confirmimport": "Innflutningur á skrá mun skrifa yfir þann texta sem er á skrifblokkinni núna. \nErtu viss um að þú viljir halda áfram?", + "pad.impexp.convertFailed": "Við getum ekki flutt inn þessa skrá. Notaðu annað skráasnið eða afritaðu og \nlímdu handvirkt", + "pad.impexp.padHasData": "Við getum ekki flutt inn þessa skrá því þegar er búið að breyta þessari skrifblokk, flyttu inn í nýja skrifblokk", + "pad.impexp.uploadFailed": "Sending mistókst, endilega reyndu aftur", + "pad.impexp.importfailed": "Innflutningur mistókst", + "pad.impexp.copypaste": "Afritaðu og límdu", + "pad.impexp.exportdisabled": "Útflutningur á {{type}} sniði er óvirkur. Hafðu samband við kerfisstjóra til að fá frekari aðstoð." +} diff --git a/sources/src/locales/it.json b/sources/src/locales/it.json old mode 100644 new mode 100755 index 087cc0c..082535f --- a/sources/src/locales/it.json +++ b/sources/src/locales/it.json @@ -1,125 +1,131 @@ { - "@metadata": { - "authors": [ - "Beta16", - "Gianfranco", - "Muxator", - "Vituzzu" - ] - }, - "index.newPad": "Nuovo Pad", - "index.createOpenPad": "o creare o aprire un Pad con il nome:", - "pad.toolbar.bold.title": "Grassetto (Ctrl-B)", - "pad.toolbar.italic.title": "Corsivo (Ctrl-I)", - "pad.toolbar.underline.title": "Sottolineato (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Barrato", - "pad.toolbar.ol.title": "Elenco numerato", - "pad.toolbar.ul.title": "Elenco puntato", - "pad.toolbar.indent.title": "Rientro", - "pad.toolbar.unindent.title": "Riduci rientro", - "pad.toolbar.undo.title": "Annulla (Ctrl-Z)", - "pad.toolbar.redo.title": "Ripeti (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Elimina i colori che indicano gli autori", - "pad.toolbar.import_export.title": "Importa/esporta da/a diversi formati di file", - "pad.toolbar.timeslider.title": "Presentazione cronologia", - "pad.toolbar.savedRevision.title": "Versione salvata", - "pad.toolbar.settings.title": "Impostazioni", - "pad.toolbar.embed.title": "Condividi ed incorpora questo Pad", - "pad.toolbar.showusers.title": "Visualizza gli utenti su questo Pad", - "pad.colorpicker.save": "Salva", - "pad.colorpicker.cancel": "Annulla", - "pad.loading": "Caricamento in corso…", - "pad.passwordRequired": "Per accedere a questo Pad è necessaria una password", - "pad.permissionDenied": "Non si dispone dei permessi necessari per accedere a questo Pad", - "pad.wrongPassword": "La password è sbagliata", - "pad.settings.padSettings": "Impostazioni del Pad", - "pad.settings.myView": "Mia visualizzazione", - "pad.settings.stickychat": "Chat sempre sullo schermo", - "pad.settings.colorcheck": "Colori che indicano gli autori", - "pad.settings.linenocheck": "Numeri di riga", - "pad.settings.rtlcheck": "Leggere il contenuto da destra a sinistra?", - "pad.settings.fontType": "Tipo di carattere:", - "pad.settings.fontType.normal": "Normale", - "pad.settings.fontType.monospaced": "A larghezza fissa", - "pad.settings.globalView": "Visualizzazione globale", - "pad.settings.language": "Lingua:", - "pad.importExport.import_export": "Importazione/esportazione", - "pad.importExport.import": "Carica un file di testo o un documento", - "pad.importExport.importSuccessful": "Riuscito!", - "pad.importExport.export": "Esportare il Pad corrente come:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Solo testo", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "È possibile importare solo i formati di testo semplice o HTML. Per metodi più avanzati di importazione \u003Ca href=https://github.com/broadcast/etherpad-lite/wiki/How-to-enable-importing and exporting-different file formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\u003Einstallare Abiword\u003C/a\u003E.", - "pad.modals.connected": "Connesso.", - "pad.modals.reconnecting": "Riconnessione al pad in corso...", - "pad.modals.forcereconnect": "Forza la riconnessione", - "pad.modals.userdup": "Aperto in un'altra finestra", - "pad.modals.userdup.explanation": "Questo Pad sembra essere aperto in più di una finestra del browser su questo computer.", - "pad.modals.userdup.advice": "Riconnettiti per utilizzare invece questa finestra.", - "pad.modals.unauth": "Non autorizzato", - "pad.modals.unauth.explanation": "Le tue autorizzazioni sono state modificate durante la visualizzazione di questa pagina. Prova a riconnetterti.", - "pad.modals.looping.explanation": "Ci sono problemi di comunicazione con il server di sincronizzazione.", - "pad.modals.looping.cause": "Forse sei connesso attraverso un firewall o un server proxy non compatibili.", - "pad.modals.initsocketfail": "Il server non è raggiungibile.", - "pad.modals.initsocketfail.explanation": "Impossibile connettersi al server di sincronizzazione.", - "pad.modals.initsocketfail.cause": "Questo probabilmente è dovuto a un problema con il tuo browser o con la tua connessione a internet.", - "pad.modals.slowcommit.explanation": "Il server non risponde.", - "pad.modals.slowcommit.cause": "Questo potrebbe essere dovuto a problemi con la connettività di rete.", - "pad.modals.badChangeset.explanation": "Una modifica che hai fatto è stata considerata illegale dal server di sincronizzazione.", - "pad.modals.badChangeset.cause": "Ciò potrebbe essere causato da una errata configurazione del server o qualche altro comportamento imprevisto. Si prega di contattare l'amministratore del servizio, se si ritiene che questo sia un errore. Prova a riconnetterti per tentare di continuare a modificare.", - "pad.modals.corruptPad.explanation": "Il pad a cui stai tentando di accedere è danneggiato.", - "pad.modals.corruptPad.cause": "Ciò potrebbe essere causato da una errata configurazione del server o qualche altro comportamento imprevisto. Si prega di contattare l'amministratore del servizio.", - "pad.modals.deleted": "Cancellato.", - "pad.modals.deleted.explanation": "Questo Pad è stato rimosso.", - "pad.modals.disconnected": "Sei stato disconnesso.", - "pad.modals.disconnected.explanation": "La connessione al server è stata persa", - "pad.modals.disconnected.cause": "Il server potrebbe essere non disponibile. Informa l'amministrazione del servizio se il problema persiste.", - "pad.share": "Condividi questo Pad", - "pad.share.readonly": "Sola lettura", - "pad.share.link": "Link", - "pad.share.emebdcode": "Incorpora URL", - "pad.chat": "Chat", - "pad.chat.title": "Apri la chat per questo Pad.", - "pad.chat.loadmessages": "Carica altri messaggi", - "timeslider.pageTitle": "Cronologia {{appTitle}}", - "timeslider.toolbar.returnbutton": "Ritorna al Pad", - "timeslider.toolbar.authors": "Autori:", - "timeslider.toolbar.authorsList": "Nessun autore", - "timeslider.toolbar.exportlink.title": "esporta", - "timeslider.exportCurrent": "Esporta la versione corrente come:", - "timeslider.version": "Versione {{version}}", - "timeslider.saved": "Salvato {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "gennaio", - "timeslider.month.february": "febbraio", - "timeslider.month.march": "marzo", - "timeslider.month.april": "aprile", - "timeslider.month.may": "maggio", - "timeslider.month.june": "giugno", - "timeslider.month.july": "luglio", - "timeslider.month.august": "agosto", - "timeslider.month.september": "settembre", - "timeslider.month.october": "ottobre", - "timeslider.month.november": "novembre", - "timeslider.month.december": "dicembre", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autore, other: autori ]} senza nome", - "pad.savedrevs.marked": "Questa revisione è ora contrassegnata come una versione salvata", - "pad.userlist.entername": "Inserisci il tuo nome", - "pad.userlist.unnamed": "senza nome", - "pad.userlist.guest": "Ospite", - "pad.userlist.deny": "Nega", - "pad.userlist.approve": "Approva", - "pad.editbar.clearcolors": "Eliminare i colori degli autori sull'intero documento?", - "pad.impexp.importbutton": "Importa ora", - "pad.impexp.importing": "Importazione in corso...", - "pad.impexp.confirmimport": "L'importazione del file sovrascriverà il testo attuale del Pad. Sei sicuro di voler procedere?", - "pad.impexp.convertFailed": "Non è stato possibile importare questo file. Utilizzare un formato differente o copiare ed incollare a mano", - "pad.impexp.uploadFailed": "Caricamento non riuscito, riprovare", - "pad.impexp.importfailed": "Importazione fallita", - "pad.impexp.copypaste": "Si prega di copiare e incollare", - "pad.impexp.exportdisabled": "L'esportazione come {{type}} è disabilitata. Contattare l'amministratore per i dettagli." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Beta16", + "Gianfranco", + "Muxator", + "Vituzzu", + "Macofe", + "Nivit" + ] + }, + "index.newPad": "Nuovo Pad", + "index.createOpenPad": "o creare o aprire un Pad con il nome:", + "pad.toolbar.bold.title": "Grassetto (Ctrl-B)", + "pad.toolbar.italic.title": "Corsivo (Ctrl-I)", + "pad.toolbar.underline.title": "Sottolineato (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Barrato (Ctrl+5)", + "pad.toolbar.ol.title": "Elenco numerato (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Elenco puntato (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Rientro (TAB)", + "pad.toolbar.unindent.title": "Riduci rientro (Shift+TAB)", + "pad.toolbar.undo.title": "Annulla (Ctrl-Z)", + "pad.toolbar.redo.title": "Ripeti (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Elimina i colori che indicano gli autori (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importa/esporta da/a diversi formati di file", + "pad.toolbar.timeslider.title": "Presentazione cronologia", + "pad.toolbar.savedRevision.title": "Versione salvata", + "pad.toolbar.settings.title": "Impostazioni", + "pad.toolbar.embed.title": "Condividi ed incorpora questo Pad", + "pad.toolbar.showusers.title": "Visualizza gli utenti su questo Pad", + "pad.colorpicker.save": "Salva", + "pad.colorpicker.cancel": "Annulla", + "pad.loading": "Caricamento in corso…", + "pad.noCookie": "Il cookie non è stato trovato. Consenti i cookie nel tuo browser!", + "pad.passwordRequired": "Per accedere a questo Pad è necessaria una password", + "pad.permissionDenied": "Non si dispone dei permessi necessari per accedere a questo Pad", + "pad.wrongPassword": "La password è sbagliata", + "pad.settings.padSettings": "Impostazioni del Pad", + "pad.settings.myView": "Mia visualizzazione", + "pad.settings.stickychat": "Chat sempre sullo schermo", + "pad.settings.chatandusers": "Mostra chat e utenti", + "pad.settings.colorcheck": "Colori che indicano gli autori", + "pad.settings.linenocheck": "Numeri di riga", + "pad.settings.rtlcheck": "Leggere il contenuto da destra a sinistra?", + "pad.settings.fontType": "Tipo di carattere:", + "pad.settings.fontType.normal": "Normale", + "pad.settings.fontType.monospaced": "A larghezza fissa", + "pad.settings.globalView": "Visualizzazione globale", + "pad.settings.language": "Lingua:", + "pad.importExport.import_export": "Importazione/esportazione", + "pad.importExport.import": "Carica un file di testo o un documento", + "pad.importExport.importSuccessful": "Riuscito!", + "pad.importExport.export": "Esportare il Pad corrente come:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Solo testo", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "È possibile importare solo i formati di testo semplice o HTML. Per metodi più avanzati di importazione installare Abiword.", + "pad.modals.connected": "Connesso.", + "pad.modals.reconnecting": "Riconnessione al pad in corso...", + "pad.modals.forcereconnect": "Forza la riconnessione", + "pad.modals.userdup": "Aperto in un'altra finestra", + "pad.modals.userdup.explanation": "Questo Pad sembra essere aperto in più di una finestra del browser su questo computer.", + "pad.modals.userdup.advice": "Riconnettiti per utilizzare invece questa finestra.", + "pad.modals.unauth": "Non autorizzato", + "pad.modals.unauth.explanation": "Le tue autorizzazioni sono state modificate durante la visualizzazione di questa pagina. Prova a riconnetterti.", + "pad.modals.looping.explanation": "Ci sono problemi di comunicazione con il server di sincronizzazione.", + "pad.modals.looping.cause": "Forse sei connesso attraverso un firewall o un server proxy non compatibili.", + "pad.modals.initsocketfail": "Il server non è raggiungibile.", + "pad.modals.initsocketfail.explanation": "Impossibile connettersi al server di sincronizzazione.", + "pad.modals.initsocketfail.cause": "Questo probabilmente è dovuto a un problema con il tuo browser o con la tua connessione a internet.", + "pad.modals.slowcommit.explanation": "Il server non risponde.", + "pad.modals.slowcommit.cause": "Questo potrebbe essere dovuto a problemi con la connettività di rete.", + "pad.modals.badChangeset.explanation": "Una modifica che hai fatto è stata considerata illegale dal server di sincronizzazione.", + "pad.modals.badChangeset.cause": "Ciò potrebbe essere causato da una errata configurazione del server o qualche altro comportamento imprevisto. Si prega di contattare l'amministratore del servizio, se si ritiene che questo sia un errore. Prova a riconnetterti per tentare di continuare a modificare.", + "pad.modals.corruptPad.explanation": "Il pad a cui stai tentando di accedere è danneggiato.", + "pad.modals.corruptPad.cause": "Ciò potrebbe essere causato da una errata configurazione del server o qualche altro comportamento imprevisto. Si prega di contattare l'amministratore del servizio.", + "pad.modals.deleted": "Cancellato.", + "pad.modals.deleted.explanation": "Questo Pad è stato rimosso.", + "pad.modals.disconnected": "Sei stato disconnesso.", + "pad.modals.disconnected.explanation": "La connessione al server è stata persa", + "pad.modals.disconnected.cause": "Il server potrebbe essere non disponibile. Informa l'amministrazione del servizio se il problema persiste.", + "pad.share": "Condividi questo Pad", + "pad.share.readonly": "Sola lettura", + "pad.share.link": "Link", + "pad.share.emebdcode": "Incorpora URL", + "pad.chat": "Chat", + "pad.chat.title": "Apri la chat per questo Pad.", + "pad.chat.loadmessages": "Carica altri messaggi", + "timeslider.pageTitle": "Cronologia {{appTitle}}", + "timeslider.toolbar.returnbutton": "Ritorna al Pad", + "timeslider.toolbar.authors": "Autori:", + "timeslider.toolbar.authorsList": "Nessun autore", + "timeslider.toolbar.exportlink.title": "esporta", + "timeslider.exportCurrent": "Esporta la versione corrente come:", + "timeslider.version": "Versione {{version}}", + "timeslider.saved": "Salvato {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "gennaio", + "timeslider.month.february": "febbraio", + "timeslider.month.march": "marzo", + "timeslider.month.april": "aprile", + "timeslider.month.may": "maggio", + "timeslider.month.june": "giugno", + "timeslider.month.july": "luglio", + "timeslider.month.august": "agosto", + "timeslider.month.september": "settembre", + "timeslider.month.october": "ottobre", + "timeslider.month.november": "novembre", + "timeslider.month.december": "dicembre", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autore, other: autori ]} senza nome", + "pad.savedrevs.marked": "Questa revisione è ora contrassegnata come una versione salvata", + "pad.savedrevs.timeslider": "Puoi vedere le versioni salvate visitando la cronologia", + "pad.userlist.entername": "Inserisci il tuo nome", + "pad.userlist.unnamed": "senza nome", + "pad.userlist.guest": "Ospite", + "pad.userlist.deny": "Nega", + "pad.userlist.approve": "Approva", + "pad.editbar.clearcolors": "Eliminare i colori degli autori sull'intero documento?", + "pad.impexp.importbutton": "Importa ora", + "pad.impexp.importing": "Importazione in corso...", + "pad.impexp.confirmimport": "L'importazione del file sovrascriverà il testo attuale del Pad. Sei sicuro di voler procedere?", + "pad.impexp.convertFailed": "Non è stato possibile importare questo file. Utilizzare un formato differente o copiare ed incollare a mano", + "pad.impexp.padHasData": "Non è possibile importare questo file poiché questo Pad ha già avuto modifiche; importalo in un nuovo Pad", + "pad.impexp.uploadFailed": "Caricamento non riuscito, riprovare", + "pad.impexp.importfailed": "Importazione fallita", + "pad.impexp.copypaste": "Si prega di copiare e incollare", + "pad.impexp.exportdisabled": "L'esportazione come {{type}} è disabilitata. Contattare l'amministratore per i dettagli." +} diff --git a/sources/src/locales/ja.json b/sources/src/locales/ja.json old mode 100644 new mode 100755 index b8aeb07..b6cc4e3 --- a/sources/src/locales/ja.json +++ b/sources/src/locales/ja.json @@ -1,122 +1,127 @@ { - "@metadata": { - "authors": [ - "Shirayuki" - ] - }, - "index.newPad": "新規作成", - "index.createOpenPad": "または作成/編集するパッド名を入力:", - "pad.toolbar.bold.title": "太字 (Ctrl-B)", - "pad.toolbar.italic.title": "斜体 (Ctrl-I)", - "pad.toolbar.underline.title": "下線 (Ctrl-U)", - "pad.toolbar.strikethrough.title": "取り消し線", - "pad.toolbar.ol.title": "番号付きリスト", - "pad.toolbar.ul.title": "番号なしリスト", - "pad.toolbar.indent.title": "インデント (Tab)", - "pad.toolbar.unindent.title": "インデント解除 (Shift+Tab)", - "pad.toolbar.undo.title": "元に戻す (Ctrl-Z)", - "pad.toolbar.redo.title": "やり直し (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "作者の色分けを消去", - "pad.toolbar.import_export.title": "他の形式のファイルのインポート/エクスポート", - "pad.toolbar.timeslider.title": "タイムスライダー", - "pad.toolbar.savedRevision.title": "版を保存", - "pad.toolbar.settings.title": "設定", - "pad.toolbar.embed.title": "このパッドを共有する/埋め込む", - "pad.toolbar.showusers.title": "このパッドのユーザーを表示", - "pad.colorpicker.save": "保存", - "pad.colorpicker.cancel": "キャンセル", - "pad.loading": "読み込み中...", - "pad.passwordRequired": "このパッドにアクセスするにはパスワードが必要です", - "pad.permissionDenied": "あなたにはこのパッドへのアクセス許可がありません", - "pad.wrongPassword": "パスワードが間違っています", - "pad.settings.padSettings": "パッドの設定", - "pad.settings.myView": "個人設定", - "pad.settings.stickychat": "画面にチャットを常に表示", - "pad.settings.colorcheck": "作者の色分け", - "pad.settings.linenocheck": "行番号", - "pad.settings.rtlcheck": "右横書きにする", - "pad.settings.fontType": "フォントの種類:", - "pad.settings.fontType.normal": "通常", - "pad.settings.fontType.monospaced": "固定幅", - "pad.settings.globalView": "グローバル設定", - "pad.settings.language": "言語:", - "pad.importExport.import_export": "インポート/エクスポート", - "pad.importExport.import": "あらゆるテキストファイルや文書をアップロードできます", - "pad.importExport.importSuccessful": "完了しました。", - "pad.importExport.export": "現在のパッドをエクスポートする形式:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "プレーンテキスト", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "プレーンテキストまたは HTML ファイルからのみインポートできます。より高度なインポート機能を使用するには、\u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eabiword をインストール\u003C/a\u003Eしてください。", - "pad.modals.connected": "接続されました。", - "pad.modals.reconnecting": "パッドに再接続中...", - "pad.modals.forcereconnect": "強制的に再接続", - "pad.modals.userdup": "別のウィンドウで開かれています", - "pad.modals.userdup.explanation": "このコンピューターの複数のブラウザーウィンドウで、このパッドを開いているようです。", - "pad.modals.userdup.advice": "代わりにこのウィンドウを再接続します。", - "pad.modals.unauth": "権限がありません", - "pad.modals.unauth.explanation": "このページの閲覧中にあなたの権限が変更されました。再接続をお試しください。", - "pad.modals.looping.explanation": "同期サーバーとの通信に問題点があります。", - "pad.modals.looping.cause": "ご使用中のファイアウォールまたはプロキシとは互換性がない可能性があります。", - "pad.modals.initsocketfail": "サーバーに到達できません。", - "pad.modals.initsocketfail.explanation": "同期サーバーに接続できませんでした。", - "pad.modals.initsocketfail.cause": "これはご使用中のブラウザーやインターネット接続の問題が原因である可能性があります。", - "pad.modals.slowcommit.explanation": "サーバーが応答しません。", - "pad.modals.slowcommit.cause": "これはネットワーク接続の問題が原因である可能性があります。", - "pad.modals.badChangeset.explanation": "投稿した編集は同期サーバーによって違法性のあるものとして秘匿されました。", - "pad.modals.badChangeset.cause": "これはサーバーの構成不良か、予期せぬ挙動を見せたために発生した事象である可能性があります。これがエラーである疑いがあれば、当サービス管理者に問い合わせてください。編集を続行するには再接続してみてください。", - "pad.modals.corruptPad.explanation": "アクセスしようとしているパッドは破損しています。", - "pad.modals.corruptPad.cause": "これはサーバーの構成不良か、予期せぬ挙動を見せたために発生した事象である可能性があります。当サービス管理者にお問い合わせください。", - "pad.modals.deleted": "削除されました。", - "pad.modals.deleted.explanation": "このパッドは削除されました。", - "pad.modals.disconnected": "切断されました。", - "pad.modals.disconnected.explanation": "サーバーとの接続が失われました", - "pad.modals.disconnected.cause": "サーバーを利用できない可能性があります。この問題が解決しない場合はサービスの管理者にお知らせください。", - "pad.share": "このパッドを共有", - "pad.share.readonly": "読み取り専用", - "pad.share.link": "リンク", - "pad.share.emebdcode": "埋め込み用 URL", - "pad.chat": "チャット", - "pad.chat.title": "このパッドのチャットを開きます。", - "pad.chat.loadmessages": "その他のメッセージを読み込む", - "timeslider.pageTitle": "{{appTitle}} タイムスライダー", - "timeslider.toolbar.returnbutton": "パッドに戻る", - "timeslider.toolbar.authors": "作者:", - "timeslider.toolbar.authorsList": "作者なし", - "timeslider.toolbar.exportlink.title": "エクスポート", - "timeslider.exportCurrent": "現在の版をエクスポートする形式:", - "timeslider.version": "バージョン {{version}}", - "timeslider.saved": "| {{year}}年{{month}}{{day}}日に保存", - "timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "1月", - "timeslider.month.february": "2月", - "timeslider.month.march": "3月", - "timeslider.month.april": "4月", - "timeslider.month.may": "5月", - "timeslider.month.june": "6月", - "timeslider.month.july": "7月", - "timeslider.month.august": "8月", - "timeslider.month.september": "9月", - "timeslider.month.october": "10月", - "timeslider.month.november": "11月", - "timeslider.month.december": "12月", - "timeslider.unnamedauthors": "{{num}} 人の匿名の{[plural(num) other: 作者 ]}", - "pad.savedrevs.marked": "この版を、保存済みの版としてマークしました。", - "pad.userlist.entername": "名前を入力", - "pad.userlist.unnamed": "名前なし", - "pad.userlist.guest": "ゲスト", - "pad.userlist.deny": "拒否", - "pad.userlist.approve": "承認", - "pad.editbar.clearcolors": "文書全体の作者の色分けを消去しますか?", - "pad.impexp.importbutton": "インポートする", - "pad.impexp.importing": "インポート中...", - "pad.impexp.confirmimport": "ファイルをインポートすると、パッドの現在のテキストが上書きされます。本当に続行しますか?", - "pad.impexp.convertFailed": "このファイルをインポートできませんでした。他の文書形式を使用するか、手作業でコピー \u0026 ペーストしてください", - "pad.impexp.uploadFailed": "アップロードに失敗しました。もう一度お試しください", - "pad.impexp.importfailed": "インポートに失敗しました", - "pad.impexp.copypaste": "コピー \u0026 ペーストしてください", - "pad.impexp.exportdisabled": "{{type}}形式でのエクスポートは無効になっています。詳細はシステム管理者にお問い合わせください。" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Shirayuki", + "Torinky" + ] + }, + "index.newPad": "新規作成", + "index.createOpenPad": "または作成/編集するパッド名を入力:", + "pad.toolbar.bold.title": "太字 (Ctrl+B)", + "pad.toolbar.italic.title": "斜体 (Ctrl+I)", + "pad.toolbar.underline.title": "下線 (Ctrl+U)", + "pad.toolbar.strikethrough.title": "取り消し線 (Ctrl+5)", + "pad.toolbar.ol.title": "番号付きリスト (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "番号なしリスト (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "インデント (Tab)", + "pad.toolbar.unindent.title": "インデント解除 (Shift+Tab)", + "pad.toolbar.undo.title": "元に戻す (Ctrl+Z)", + "pad.toolbar.redo.title": "やり直し (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "作者の色分けを消去(Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "他の形式のファイルのインポート/エクスポート", + "pad.toolbar.timeslider.title": "タイムスライダー", + "pad.toolbar.savedRevision.title": "版を保存", + "pad.toolbar.settings.title": "設定", + "pad.toolbar.embed.title": "このパッドを共有する/埋め込む", + "pad.toolbar.showusers.title": "このパッドのユーザーを表示", + "pad.colorpicker.save": "保存", + "pad.colorpicker.cancel": "キャンセル", + "pad.loading": "読み込み中...", + "pad.noCookie": "クッキーが見つかりません。ブラウザの設定でクッキーの使用を許可してください。", + "pad.passwordRequired": "このパッドにアクセスするにはパスワードが必要です", + "pad.permissionDenied": "あなたにはこのパッドへのアクセス許可がありません", + "pad.wrongPassword": "パスワードが間違っています", + "pad.settings.padSettings": "パッドの設定", + "pad.settings.myView": "個人設定", + "pad.settings.stickychat": "画面にチャットを常に表示", + "pad.settings.chatandusers": "チャットとユーザーを表示", + "pad.settings.colorcheck": "作者の色分け", + "pad.settings.linenocheck": "行番号", + "pad.settings.rtlcheck": "右横書きにする", + "pad.settings.fontType": "フォントの種類:", + "pad.settings.fontType.normal": "通常", + "pad.settings.fontType.monospaced": "固定幅", + "pad.settings.globalView": "グローバル設定", + "pad.settings.language": "言語:", + "pad.importExport.import_export": "インポート/エクスポート", + "pad.importExport.import": "あらゆるテキストファイルや文書をアップロードできます", + "pad.importExport.importSuccessful": "完了しました。", + "pad.importExport.export": "現在のパッドをエクスポートする形式:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "プレーンテキスト", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "プレーンテキストまたは HTML ファイルからのみインポートできます。より高度なインポート機能を使用するには、abiword をインストールしてください。", + "pad.modals.connected": "接続されました。", + "pad.modals.reconnecting": "パッドに再接続中...", + "pad.modals.forcereconnect": "強制的に再接続", + "pad.modals.userdup": "別のウィンドウで開かれています", + "pad.modals.userdup.explanation": "このコンピューターの複数のブラウザーウィンドウで、このパッドを開いているようです。", + "pad.modals.userdup.advice": "代わりにこのウィンドウを再接続します。", + "pad.modals.unauth": "権限がありません", + "pad.modals.unauth.explanation": "このページの閲覧中にあなたの権限が変更されました。再接続をお試しください。", + "pad.modals.looping.explanation": "同期サーバーとの通信に問題点があります。", + "pad.modals.looping.cause": "ご使用中のファイアウォールまたはプロキシとは互換性がない可能性があります。", + "pad.modals.initsocketfail": "サーバーに到達できません。", + "pad.modals.initsocketfail.explanation": "同期サーバーに接続できませんでした。", + "pad.modals.initsocketfail.cause": "これはご使用中のブラウザーやインターネット接続の問題が原因である可能性があります。", + "pad.modals.slowcommit.explanation": "サーバーが応答しません。", + "pad.modals.slowcommit.cause": "これはネットワーク接続の問題が原因である可能性があります。", + "pad.modals.badChangeset.explanation": "投稿した編集は同期サーバーによって違法性のあるものとして秘匿されました。", + "pad.modals.badChangeset.cause": "これはサーバーの構成不良か、予期せぬ挙動を見せたために発生した事象である可能性があります。これがエラーである疑いがあれば、当サービス管理者に問い合わせてください。編集を続行するには再接続してみてください。", + "pad.modals.corruptPad.explanation": "アクセスしようとしているパッドは破損しています。", + "pad.modals.corruptPad.cause": "これはサーバーの構成不良か、予期せぬ挙動を見せたために発生した事象である可能性があります。当サービス管理者にお問い合わせください。", + "pad.modals.deleted": "削除されました。", + "pad.modals.deleted.explanation": "このパッドは削除されました。", + "pad.modals.disconnected": "切断されました。", + "pad.modals.disconnected.explanation": "サーバーとの接続が失われました", + "pad.modals.disconnected.cause": "サーバーを利用できない可能性があります。この問題が解決しない場合はサービスの管理者にお知らせください。", + "pad.share": "このパッドを共有", + "pad.share.readonly": "読み取り専用", + "pad.share.link": "リンク", + "pad.share.emebdcode": "埋め込み用 URL", + "pad.chat": "チャット", + "pad.chat.title": "このパッドのチャットを開きます。", + "pad.chat.loadmessages": "その他のメッセージを読み込む", + "timeslider.pageTitle": "{{appTitle}} タイムスライダー", + "timeslider.toolbar.returnbutton": "パッドに戻る", + "timeslider.toolbar.authors": "作者:", + "timeslider.toolbar.authorsList": "作者なし", + "timeslider.toolbar.exportlink.title": "エクスポート", + "timeslider.exportCurrent": "現在の版をエクスポートする形式:", + "timeslider.version": "バージョン {{version}}", + "timeslider.saved": "| {{year}}年{{month}}{{day}}日に保存", + "timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "1月", + "timeslider.month.february": "2月", + "timeslider.month.march": "3月", + "timeslider.month.april": "4月", + "timeslider.month.may": "5月", + "timeslider.month.june": "6月", + "timeslider.month.july": "7月", + "timeslider.month.august": "8月", + "timeslider.month.september": "9月", + "timeslider.month.october": "10月", + "timeslider.month.november": "11月", + "timeslider.month.december": "12月", + "timeslider.unnamedauthors": "{{num}} 人の匿名の{[plural(num) other: 作者 ]}", + "pad.savedrevs.marked": "この版を、保存済みの版としてマークしました。", + "pad.savedrevs.timeslider": "タイムスライダーで保存された版を確認できます", + "pad.userlist.entername": "名前を入力", + "pad.userlist.unnamed": "名前なし", + "pad.userlist.guest": "ゲスト", + "pad.userlist.deny": "拒否", + "pad.userlist.approve": "承認", + "pad.editbar.clearcolors": "文書全体の作者の色分けを消去しますか?", + "pad.impexp.importbutton": "インポートする", + "pad.impexp.importing": "インポート中...", + "pad.impexp.confirmimport": "ファイルをインポートすると、パッドの現在のテキストが上書きされます。本当に続行しますか?", + "pad.impexp.convertFailed": "このファイルをインポートできませんでした。他の文書形式を使用するか、手作業でコピー & ペーストしてください", + "pad.impexp.padHasData": "このパッドは変更されたため、ファイルからインポートできませんでした。新しいパッドにインポートしてください。", + "pad.impexp.uploadFailed": "アップロードに失敗しました。もう一度お試しください", + "pad.impexp.importfailed": "インポートに失敗しました", + "pad.impexp.copypaste": "コピー & ペーストしてください", + "pad.impexp.exportdisabled": "{{type}}形式でのエクスポートは無効になっています。詳細はシステム管理者にお問い合わせください。" +} diff --git a/sources/src/locales/km.json b/sources/src/locales/km.json old mode 100644 new mode 100755 index f1c0f9c..4dea037 --- a/sources/src/locales/km.json +++ b/sources/src/locales/km.json @@ -1,100 +1,99 @@ { - "@metadata": { - "authors": [ - "វ័ណថារិទ្ធ", - "Sovichet" - ] - }, - "index.newPad": "ផេតថ្មី", - "index.createOpenPad": "ឬបង្កើត/បើកផេតដែលមានឈ្មោះ៖", - "pad.toolbar.bold.title": "ដិត (Ctrl-B)", - "pad.toolbar.italic.title": "ទ្រេត (Ctrl-I)", - "pad.toolbar.underline.title": "គូសបន្ទាត់ (Ctrl-U)", - "pad.toolbar.strikethrough.title": "ឆូតចោល", - "pad.toolbar.ol.title": "បញ្ជីតាមតម្រៀប", - "pad.toolbar.ul.title": "បញ្ជីមិនតាមតម្រៀប", - "pad.toolbar.indent.title": "ខិតចូលក្នុង (TAB)", - "pad.toolbar.unindent.title": "ខិតចេញក្រៅ (Shift+TAB)", - "pad.toolbar.undo.title": "អាន់ឌូ (Ctrl-Z)", - "pad.toolbar.redo.title": "រីឌូ (Ctrl-Y)", - "pad.toolbar.import_export.title": "នាំចូល/នាំចេញ ពី/ទៅប្រភេទឯកសារផ្សេងទៀត", - "pad.toolbar.savedRevision.title": "រក្សាទុកកំណែ", - "pad.toolbar.settings.title": "ការកំណត់​", - "pad.toolbar.embed.title": "ចែក​រំលែក​និង​បង្កប់​ផេត​នេះ", - "pad.toolbar.showusers.title": "បង្ហាញ​អ្នក​ប្រើ​លើ​ផេត​នេះ", - "pad.colorpicker.save": "រក្សាទុក", - "pad.colorpicker.cancel": "បោះបង់", - "pad.loading": "កំពុងផ្ទុក…", - "pad.passwordRequired": "អ្នក​ត្រូវ​មាន​ពាក្យ​សម្ងាត់ ដើម្បី​ចូល​ផេត​នេះ", - "pad.permissionDenied": "អ្នក​មិន​មាន​សិទ្ធិ​ចូល​ផេត​នេះ​ទេ", - "pad.wrongPassword": "ពាក្យ​សម្ងាត់​របស់​អ្នក ខុស​ហើយ", - "pad.settings.padSettings": "ការ​កំណត់​ផេត", - "pad.settings.myView": "គំហើញរបស់ខ្ញុំ", - "pad.settings.stickychat": "តែង​បង្ហាញ​ការ​ជជែក​លើ​អេក្រង់", - "pad.settings.linenocheck": "លេខ​បន្ទាត់", - "pad.settings.rtlcheck": "អាន​ពី​ស្ដាំ​ទៅ​ឆ្វេង?", - "pad.settings.fontType": "ប្រភេទពុម្ពអក្សរ៖", - "pad.settings.fontType.normal": "ធម្មតា", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "គំហើញសកល", - "pad.settings.language": "ភាសា៖", - "pad.importExport.import_export": "នាំចូល/នាំចេញ", - "pad.importExport.import": "ផ្ទុក​ឡើង​ឯកសារ​អត្ថបទ​ណាមួយ", - "pad.importExport.importSuccessful": "ដោយជោគជ័យ!", - "pad.importExport.export": "នាំ​ចេញ​ផេត​បច្ចុប្បន្ន​ជា៖", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Plain text", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "បាន​តភ្ជាប់​។", - "pad.modals.reconnecting": "កំពុង​ភ្ជាប់​ទៅ​ផេត​របស់​អ្នក​ម្ដង​ទៀត..", - "pad.modals.forcereconnect": "បង្ខំ​ឲ្យ​ភ្ជាប់​ឡើង​វិញ", - "pad.modals.userdup": "បាន​បើក​ក្នុង​វីនដូ​មួយ​ទៀត", - "pad.modals.unauth.explanation": "សិទ្ធិ​របស់​អ្នក​ត្រូវ​បាន​ប្ដូរ ខណៈ​ពេល​កំពុង​មើល​ទំព័រ​នេះ។ សូម​ព្យាយាម​ភ្ជាប់​ឡើង​វិញ។", - "pad.modals.looping.cause": "ប្រហែល​ជា​អ្នក​បាន​ភ្ជាប់​តាម firewall ឬ ប្រុកស៊ី ដែល​មិន​ត្រូវ​គ្នា។", - "pad.modals.initsocketfail": "មិន​អាច​ទៅ​ដល់​ម៉ាស៊ីន​បម្រើ។", - "pad.modals.initsocketfail.cause": "នេះ​អាច​ជា​បញ្ហា​ជាមួយ​កម្មវិធី​អ៊ីនធឺណិត ឬ​ការ​តភ្ជាប់​អ៊ីនធឺណិត​របស់​អ្នក។", - "pad.modals.slowcommit.explanation": "មិន​មាន​ចម្លើយ​តប​ពី​ម៉ាស៊ីន​បម្រើ​ទេ។", - "pad.modals.deleted": "បាន​លុប។", - "pad.modals.deleted.explanation": "បាន​លុប​ផេត​នេះ​ចេញ។", - "pad.modals.disconnected.explanation": "បាន​បាត់​ការ​តភ្ជាប់​ទៅ​ម៉ាស៊ីន​បម្រើ", - "pad.share": "ចែក​រំលែក​ផេត​នេះ", - "pad.share.readonly": "អាន​តែ​ប៉ុណ្ណោះ", - "pad.share.link": "តំណ​ភ្ជាប់", - "pad.share.emebdcode": "URL បង្កប់", - "pad.chat": "ជជែក", - "pad.chat.title": "បើក​ការ​ជជែក​សម្រាប់​ផេត​នេះ។", - "pad.chat.loadmessages": "ផ្ទុក​សារ​ថែម​ទៀត", - "timeslider.toolbar.returnbutton": "ត្រឡប់​ទៅ​ផេត", - "timeslider.toolbar.authors": "អ្នក​បង្កើត៖", - "timeslider.toolbar.authorsList": "គ្មាន​អ្នក​បង្កើត", - "timeslider.toolbar.exportlink.title": "នាំចេញ", - "timeslider.exportCurrent": "នាំ​ចេញ​កំណែ​បច្ចុប្បន្ន​ជា៖", - "timeslider.version": "កំណែ {{version}}", - "timeslider.saved": "បាន​រក្សា​ទុក {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "មករា", - "timeslider.month.february": "កុម្ភៈ", - "timeslider.month.march": "មិនា", - "timeslider.month.april": "មេសា", - "timeslider.month.may": "ឧសភា", - "timeslider.month.june": "មិថុនា​", - "timeslider.month.july": "កក្ដដា​", - "timeslider.month.august": "សីហា", - "timeslider.month.september": "កញ្ញា", - "timeslider.month.october": "តុលា", - "timeslider.month.november": "វិច្ឆិកា", - "timeslider.month.december": "ធ្នូ", - "pad.userlist.entername": "បញ្ចូល​ឈ្មោះ​របស់​អ្នក", - "pad.userlist.unnamed": "គ្មាន​ឈ្មោះ", - "pad.userlist.guest": "ភ្ញៀវ", - "pad.userlist.deny": "បដិសេធ", - "pad.userlist.approve": "យល់​ព្រម", - "pad.impexp.importbutton": "នាំចូលឥឡូវនេះ", - "pad.impexp.importing": "កំពុងនាំចូល​...", - "pad.impexp.importfailed": "នាំចូល​មិន​បាន​សម្រេច", - "pad.impexp.copypaste": "សូម​ចម្លង​ហើយ​បិទ​ភ្ជាប់", - "pad.impexp.exportdisabled": "ការ​នាំចេញ​ជា {{type}} ត្រូវ​បាន​បិទ។ សូម​ទាក់ទង​អ្នក​គ្រប់​គ្រង​ប្រព័ន្ធ សម្រាប់​ព័ត៌មាន​បន្ថែម។" -} \ No newline at end of file + "@metadata": { + "authors": [ + "វ័ណថារិទ្ធ", + "Sovichet" + ] + }, + "index.newPad": "ផេតថ្មី", + "index.createOpenPad": "ឬបង្កើត/បើកផេតដែលមានឈ្មោះ៖", + "pad.toolbar.bold.title": "ដិត (Ctrl-B)", + "pad.toolbar.italic.title": "ទ្រេត (Ctrl-I)", + "pad.toolbar.underline.title": "គូសបន្ទាត់ (Ctrl-U)", + "pad.toolbar.strikethrough.title": "ឆូតចោល", + "pad.toolbar.ol.title": "បញ្ជីតាមតម្រៀប", + "pad.toolbar.ul.title": "បញ្ជីមិនតាមតម្រៀប", + "pad.toolbar.indent.title": "ខិតចូលក្នុង (TAB)", + "pad.toolbar.unindent.title": "ខិតចេញក្រៅ (Shift+TAB)", + "pad.toolbar.undo.title": "អាន់ឌូ (Ctrl-Z)", + "pad.toolbar.redo.title": "រីឌូ (Ctrl-Y)", + "pad.toolbar.import_export.title": "នាំចូល/នាំចេញ ពី/ទៅប្រភេទឯកសារផ្សេងទៀត", + "pad.toolbar.savedRevision.title": "រក្សាទុកកំណែ", + "pad.toolbar.settings.title": "ការកំណត់​", + "pad.toolbar.embed.title": "ចែក​រំលែក​និង​បង្កប់​ផេត​នេះ", + "pad.toolbar.showusers.title": "បង្ហាញ​អ្នក​ប្រើ​លើ​ផេត​នេះ", + "pad.colorpicker.save": "រក្សាទុក", + "pad.colorpicker.cancel": "បោះបង់", + "pad.loading": "កំពុងផ្ទុក…", + "pad.passwordRequired": "អ្នក​ត្រូវ​មាន​ពាក្យ​សម្ងាត់ ដើម្បី​ចូល​ផេត​នេះ", + "pad.permissionDenied": "អ្នក​មិន​មាន​សិទ្ធិ​ចូល​ផេត​នេះ​ទេ", + "pad.wrongPassword": "ពាក្យ​សម្ងាត់​របស់​អ្នក ខុស​ហើយ", + "pad.settings.padSettings": "ការ​កំណត់​ផេត", + "pad.settings.myView": "គំហើញរបស់ខ្ញុំ", + "pad.settings.stickychat": "តែង​បង្ហាញ​ការ​ជជែក​លើ​អេក្រង់", + "pad.settings.linenocheck": "លេខ​បន្ទាត់", + "pad.settings.rtlcheck": "អាន​ពី​ស្ដាំ​ទៅ​ឆ្វេង?", + "pad.settings.fontType": "ប្រភេទពុម្ពអក្សរ៖", + "pad.settings.fontType.normal": "ធម្មតា", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "គំហើញសកល", + "pad.settings.language": "ភាសា៖", + "pad.importExport.import_export": "នាំចូល/នាំចេញ", + "pad.importExport.import": "ផ្ទុក​ឡើង​ឯកសារ​អត្ថបទ​ណាមួយ", + "pad.importExport.importSuccessful": "ដោយជោគជ័យ!", + "pad.importExport.export": "នាំ​ចេញ​ផេត​បច្ចុប្បន្ន​ជា៖", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Plain text", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.modals.connected": "បាន​តភ្ជាប់​។", + "pad.modals.reconnecting": "កំពុង​ភ្ជាប់​ទៅ​ផេត​របស់​អ្នក​ម្ដង​ទៀត..", + "pad.modals.forcereconnect": "បង្ខំ​ឲ្យ​ភ្ជាប់​ឡើង​វិញ", + "pad.modals.userdup": "បាន​បើក​ក្នុង​វីនដូ​មួយ​ទៀត", + "pad.modals.unauth.explanation": "សិទ្ធិ​របស់​អ្នក​ត្រូវ​បាន​ប្ដូរ ខណៈ​ពេល​កំពុង​មើល​ទំព័រ​នេះ។ សូម​ព្យាយាម​ភ្ជាប់​ឡើង​វិញ។", + "pad.modals.looping.cause": "ប្រហែល​ជា​អ្នក​បាន​ភ្ជាប់​តាម firewall ឬ ប្រុកស៊ី ដែល​មិន​ត្រូវ​គ្នា។", + "pad.modals.initsocketfail": "មិន​អាច​ទៅ​ដល់​ម៉ាស៊ីន​បម្រើ។", + "pad.modals.initsocketfail.cause": "នេះ​អាច​ជា​បញ្ហា​ជាមួយ​កម្មវិធី​អ៊ីនធឺណិត ឬ​ការ​តភ្ជាប់​អ៊ីនធឺណិត​របស់​អ្នក។", + "pad.modals.slowcommit.explanation": "មិន​មាន​ចម្លើយ​តប​ពី​ម៉ាស៊ីន​បម្រើ​ទេ។", + "pad.modals.deleted": "បាន​លុប។", + "pad.modals.deleted.explanation": "បាន​លុប​ផេត​នេះ​ចេញ។", + "pad.modals.disconnected.explanation": "បាន​បាត់​ការ​តភ្ជាប់​ទៅ​ម៉ាស៊ីន​បម្រើ", + "pad.share": "ចែក​រំលែក​ផេត​នេះ", + "pad.share.readonly": "អាន​តែ​ប៉ុណ្ណោះ", + "pad.share.link": "តំណ​ភ្ជាប់", + "pad.share.emebdcode": "URL បង្កប់", + "pad.chat": "ជជែក", + "pad.chat.title": "បើក​ការ​ជជែក​សម្រាប់​ផេត​នេះ។", + "pad.chat.loadmessages": "ផ្ទុក​សារ​ថែម​ទៀត", + "timeslider.toolbar.returnbutton": "ត្រឡប់​ទៅ​ផេត", + "timeslider.toolbar.authors": "អ្នក​បង្កើត៖", + "timeslider.toolbar.authorsList": "គ្មាន​អ្នក​បង្កើត", + "timeslider.toolbar.exportlink.title": "នាំចេញ", + "timeslider.exportCurrent": "នាំ​ចេញ​កំណែ​បច្ចុប្បន្ន​ជា៖", + "timeslider.version": "កំណែ {{version}}", + "timeslider.saved": "បាន​រក្សា​ទុក {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "មករា", + "timeslider.month.february": "កុម្ភៈ", + "timeslider.month.march": "មិនា", + "timeslider.month.april": "មេសា", + "timeslider.month.may": "ឧសភា", + "timeslider.month.june": "មិថុនា​", + "timeslider.month.july": "កក្ដដា​", + "timeslider.month.august": "សីហា", + "timeslider.month.september": "កញ្ញា", + "timeslider.month.october": "តុលា", + "timeslider.month.november": "វិច្ឆិកា", + "timeslider.month.december": "ធ្នូ", + "pad.userlist.entername": "បញ្ចូល​ឈ្មោះ​របស់​អ្នក", + "pad.userlist.unnamed": "គ្មាន​ឈ្មោះ", + "pad.userlist.guest": "ភ្ញៀវ", + "pad.userlist.deny": "បដិសេធ", + "pad.userlist.approve": "យល់​ព្រម", + "pad.impexp.importbutton": "នាំចូលឥឡូវនេះ", + "pad.impexp.importing": "កំពុងនាំចូល​...", + "pad.impexp.importfailed": "នាំចូល​មិន​បាន​សម្រេច", + "pad.impexp.copypaste": "សូម​ចម្លង​ហើយ​បិទ​ភ្ជាប់", + "pad.impexp.exportdisabled": "ការ​នាំចេញ​ជា {{type}} ត្រូវ​បាន​បិទ។ សូម​ទាក់ទង​អ្នក​គ្រប់​គ្រង​ប្រព័ន្ធ សម្រាប់​ព័ត៌មាន​បន្ថែម។" +} diff --git a/sources/src/locales/ko.json b/sources/src/locales/ko.json old mode 100644 new mode 100755 index 459ba37..4a71d8e --- a/sources/src/locales/ko.json +++ b/sources/src/locales/ko.json @@ -1,123 +1,125 @@ { - "@metadata": { - "authors": [ - "Hym411", - "아라" - ] - }, - "index.newPad": "새 패드", - "index.createOpenPad": "또는 다음 이름으로 패드 만들기/열기:", - "pad.toolbar.bold.title": "굵게 (Ctrl-B)", - "pad.toolbar.italic.title": "기울임 (Ctrl-I)", - "pad.toolbar.underline.title": "밑줄 (Ctrl-U)", - "pad.toolbar.strikethrough.title": "취소선", - "pad.toolbar.ol.title": "순서 있는 목록", - "pad.toolbar.ul.title": "순서 없는 목록", - "pad.toolbar.indent.title": "들여쓰기", - "pad.toolbar.unindent.title": "내어쓰기", - "pad.toolbar.undo.title": "실행 취소 (Ctrl-Z)", - "pad.toolbar.redo.title": "다시 실행 (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "저자의 색 지우기", - "pad.toolbar.import_export.title": "다른 파일 형식으로 가져오기/내보내기", - "pad.toolbar.timeslider.title": "시간슬라이더", - "pad.toolbar.savedRevision.title": "판 저장", - "pad.toolbar.settings.title": "설정", - "pad.toolbar.embed.title": "이 패드를 공유하고 포함하기", - "pad.toolbar.showusers.title": "이 패드에 사용자 보기", - "pad.colorpicker.save": "저장", - "pad.colorpicker.cancel": "취소", - "pad.loading": "불러오는 중...", - "pad.passwordRequired": "이 패드에 접근하려면 비밀번호가 필요합니다", - "pad.permissionDenied": "이 패드에 접근할 권한이 없습니다", - "pad.wrongPassword": "비밀번호가 잘못되었습니다", - "pad.settings.padSettings": "패드 설정", - "pad.settings.myView": "내 보기", - "pad.settings.stickychat": "화면에 항상 대화 보기", - "pad.settings.colorcheck": "저자 색", - "pad.settings.linenocheck": "줄 번호", - "pad.settings.rtlcheck": "우횡서(오른쪽에서 왼쪽으로)입니까?", - "pad.settings.fontType": "글꼴 종류:", - "pad.settings.fontType.normal": "보통", - "pad.settings.fontType.monospaced": "고정 폭", - "pad.settings.globalView": "전역 보기", - "pad.settings.language": "언어:", - "pad.importExport.import_export": "가져오기/내보내기", - "pad.importExport.import": "텍스트 파일이나 문서 올리기", - "pad.importExport.importSuccessful": "성공!", - "pad.importExport.export": "다음으로 현재 패드 내보내기:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "일반 텍스트", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "일반 텍스트나 html 형식으로만 가져올 수 있습니다. 고급 가져오기 기능에 대해서는 \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eabiword를 설치\u003C/a\u003E하세요.", - "pad.modals.connected": "연결했습니다.", - "pad.modals.reconnecting": "패드에 다시 연결 중..", - "pad.modals.forcereconnect": "강제로 다시 연결", - "pad.modals.userdup": "다른 창에서 열리고 있습니다", - "pad.modals.userdup.explanation": "이 패드는 이 컴퓨터에 하나보다 많이 브라우저 창에서 열린 것 같습니다.", - "pad.modals.userdup.advice": "대신 이 창을 사용해 다시 연결합니다.", - "pad.modals.unauth": "권한이 없음", - "pad.modals.unauth.explanation": "이 문서를 보는 동안 권한이 바뀌었습니다. 다시 연결을 시도하세요.", - "pad.modals.looping.explanation": "동기 서버와의 통신 문제가 있습니다.", - "pad.modals.looping.cause": "아마 호환되지 않는 방화벽이나 프록시를 통해 연결되어 있습니다.", - "pad.modals.initsocketfail": "서버에 연결할 수 없습니다.", - "pad.modals.initsocketfail.explanation": "동기 서버에 연결할 수 없습니다.", - "pad.modals.initsocketfail.cause": "아마도 브라우저나 인터넷 연결에 문제가 있기 때문일 수 있습니다.", - "pad.modals.slowcommit.explanation": "서버가 응답하지 않습니다.", - "pad.modals.slowcommit.cause": "네트워크 연결에 문제가 있기 때문일 수 있습니다.", - "pad.modals.badChangeset.explanation": "당신의 편집은 동기화 서버에 의해 불법적인 것으로 분류되었습니다.", - "pad.modals.badChangeset.cause": "잘못된 서버 구성이나 예기치 못한 행동 때문에 발생했을 수 있습니다. 서버 관리자와 연락하시기 바랍니다. 만약 이 메시지가 오류라고 생각된다면, 편집을 다시 시도해 보세요.", - "pad.modals.corruptPad.explanation": "당신이 시도하려는 패드는 손상되었습니다.", - "pad.modals.corruptPad.cause": "잘못된 서버 구성 또는 다른 예기치 않은 오류 때문에 발생했을 수 있습니다. 서버 관리자와 연락하세요.", - "pad.modals.deleted": "삭제되었습니다.", - "pad.modals.deleted.explanation": "이 패드를 제거했습니다.", - "pad.modals.disconnected": "연결이 끊어졌습니다.", - "pad.modals.disconnected.explanation": "서버에서 연결을 잃었습니다", - "pad.modals.disconnected.cause": "서버를 사용할 수 없습니다. 이 문제가 계속 발생하면 서비스 관리자에게 알려주시기 바랍니다.", - "pad.share": "이 패드 공유하기", - "pad.share.readonly": "읽기 전용", - "pad.share.link": "링크", - "pad.share.emebdcode": "URL 포함", - "pad.chat": "대화", - "pad.chat.title": "이 패드에 대화를 엽니다.", - "pad.chat.loadmessages": "더 많은 메시지 불러오기", - "timeslider.pageTitle": "{{appTitle}} 시간슬라이더", - "timeslider.toolbar.returnbutton": "패드로 돌아가기", - "timeslider.toolbar.authors": "저자:", - "timeslider.toolbar.authorsList": "저자 없음", - "timeslider.toolbar.exportlink.title": "내보내기", - "timeslider.exportCurrent": "현재 버전으로 내보내기:", - "timeslider.version": "버전 {{version}}", - "timeslider.saved": "{{year}}년 {{month}} {{day}}일에 저장함", - "timeslider.dateformat": "{{year}}년/{{month}}/{{day}}일 {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "1월", - "timeslider.month.february": "2월", - "timeslider.month.march": "3월", - "timeslider.month.april": "4월", - "timeslider.month.may": "5월", - "timeslider.month.june": "6월", - "timeslider.month.july": "7월", - "timeslider.month.august": "8월", - "timeslider.month.september": "9월", - "timeslider.month.october": "10월", - "timeslider.month.november": "11월", - "timeslider.month.december": "12월", - "timeslider.unnamedauthors": "이름 없는 {[plural(num) one: 저자, other: 저자 ]} {{num}}명", - "pad.savedrevs.marked": "이 판은 이제 저장한 판으로 표시합니다.", - "pad.userlist.entername": "이름을 입력하세요", - "pad.userlist.unnamed": "이름없음", - "pad.userlist.guest": "손님", - "pad.userlist.deny": "거부", - "pad.userlist.approve": "승인", - "pad.editbar.clearcolors": "전체 문서의 저자 색을 지우시겠습니까?", - "pad.impexp.importbutton": "지금 가져오기", - "pad.impexp.importing": "가져오는 중...", - "pad.impexp.confirmimport": "파일을 가져오면 패드의 현재 텍스트를 덮어쓰게 됩니다. 진행하시겠습니까?", - "pad.impexp.convertFailed": "이 파일을 가져올 수 없습니다. 다른 문서 형식을 사용하거나 수동으로 복사하여 붙여넣으세요", - "pad.impexp.uploadFailed": "올리기를 실패했습니다. 다시 시도하세요", - "pad.impexp.importfailed": "가져오기를 실패했습니다", - "pad.impexp.copypaste": "복사하여 붙여넣으세요", - "pad.impexp.exportdisabled": "{{type}} 형식으로 내보내기가 비활성화되어 있습니다. 자세한 내용은 시스템 관리자에게 문의하시기 바랍니다." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Hym411", + "아라", + "Revi" + ] + }, + "index.newPad": "새 패드", + "index.createOpenPad": "또는 다음 이름으로 패드 만들기/열기:", + "pad.toolbar.bold.title": "굵게 (Ctrl-B)", + "pad.toolbar.italic.title": "기울임 (Ctrl-I)", + "pad.toolbar.underline.title": "밑줄 (Ctrl-U)", + "pad.toolbar.strikethrough.title": "취소선 (Ctrl+5)", + "pad.toolbar.ol.title": "순서 있는 목록 (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "순서 없는 목록 (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "들여쓰기 (TAB)", + "pad.toolbar.unindent.title": "내어쓰기 (Shift+TAB)", + "pad.toolbar.undo.title": "실행 취소 (Ctrl-Z)", + "pad.toolbar.redo.title": "다시 실행 (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "저자의 색 지우기 (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "다른 파일 형식으로 가져오기/내보내기", + "pad.toolbar.timeslider.title": "시간슬라이더", + "pad.toolbar.savedRevision.title": "판 저장", + "pad.toolbar.settings.title": "설정", + "pad.toolbar.embed.title": "이 패드를 공유하고 포함하기", + "pad.toolbar.showusers.title": "이 패드에 사용자 보기", + "pad.colorpicker.save": "저장", + "pad.colorpicker.cancel": "취소", + "pad.loading": "불러오는 중...", + "pad.noCookie": "쿠키를 찾을 수 없습니다. 브라우저에서 쿠키를 허용해주세요!", + "pad.passwordRequired": "이 패드에 접근하려면 비밀번호가 필요합니다", + "pad.permissionDenied": "이 패드에 접근할 권한이 없습니다", + "pad.wrongPassword": "비밀번호가 잘못되었습니다", + "pad.settings.padSettings": "패드 설정", + "pad.settings.myView": "내 보기", + "pad.settings.stickychat": "화면에 항상 대화 보기", + "pad.settings.chatandusers": "채트와 사용자 보이기", + "pad.settings.colorcheck": "저자 색", + "pad.settings.linenocheck": "줄 번호", + "pad.settings.rtlcheck": "우횡서(오른쪽에서 왼쪽으로)입니까?", + "pad.settings.fontType": "글꼴 종류:", + "pad.settings.fontType.normal": "보통", + "pad.settings.fontType.monospaced": "고정 폭", + "pad.settings.globalView": "전역 보기", + "pad.settings.language": "언어:", + "pad.importExport.import_export": "가져오기/내보내기", + "pad.importExport.import": "텍스트 파일이나 문서 올리기", + "pad.importExport.importSuccessful": "성공!", + "pad.importExport.export": "다음으로 현재 패드 내보내기:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "일반 텍스트", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "일반 텍스트나 html 형식으로만 가져올 수 있습니다. 고급 가져오기 기능에 대해서는 abiword를 설치하세요.", + "pad.modals.connected": "연결했습니다.", + "pad.modals.reconnecting": "패드에 다시 연결 중..", + "pad.modals.forcereconnect": "강제로 다시 연결", + "pad.modals.userdup": "다른 창에서 열리고 있습니다", + "pad.modals.userdup.explanation": "이 패드는 이 컴퓨터에 하나보다 많이 브라우저 창에서 열린 것 같습니다.", + "pad.modals.userdup.advice": "대신 이 창을 사용해 다시 연결합니다.", + "pad.modals.unauth": "권한이 없음", + "pad.modals.unauth.explanation": "이 문서를 보는 동안 권한이 바뀌었습니다. 다시 연결을 시도하세요.", + "pad.modals.looping.explanation": "동기 서버와의 통신 문제가 있습니다.", + "pad.modals.looping.cause": "아마 호환되지 않는 방화벽이나 프록시를 통해 연결되어 있습니다.", + "pad.modals.initsocketfail": "서버에 연결할 수 없습니다.", + "pad.modals.initsocketfail.explanation": "동기 서버에 연결할 수 없습니다.", + "pad.modals.initsocketfail.cause": "아마도 브라우저나 인터넷 연결에 문제가 있기 때문일 수 있습니다.", + "pad.modals.slowcommit.explanation": "서버가 응답하지 않습니다.", + "pad.modals.slowcommit.cause": "네트워크 연결에 문제가 있기 때문일 수 있습니다.", + "pad.modals.badChangeset.explanation": "당신의 편집은 동기화 서버에 의해 불법적인 것으로 분류되었습니다.", + "pad.modals.badChangeset.cause": "잘못된 서버 구성이나 예기치 못한 행동 때문에 발생했을 수 있습니다. 서버 관리자와 연락하시기 바랍니다. 만약 이 메시지가 오류라고 생각된다면, 편집을 다시 시도해 보세요.", + "pad.modals.corruptPad.explanation": "당신이 시도하려는 패드는 손상되었습니다.", + "pad.modals.corruptPad.cause": "잘못된 서버 구성 또는 다른 예기치 않은 오류 때문에 발생했을 수 있습니다. 서버 관리자와 연락하세요.", + "pad.modals.deleted": "삭제되었습니다.", + "pad.modals.deleted.explanation": "이 패드를 제거했습니다.", + "pad.modals.disconnected": "연결이 끊어졌습니다.", + "pad.modals.disconnected.explanation": "서버에서 연결을 잃었습니다", + "pad.modals.disconnected.cause": "서버를 사용할 수 없습니다. 이 문제가 계속 발생하면 서비스 관리자에게 알려주시기 바랍니다.", + "pad.share": "이 패드 공유하기", + "pad.share.readonly": "읽기 전용", + "pad.share.link": "링크", + "pad.share.emebdcode": "URL 포함", + "pad.chat": "대화", + "pad.chat.title": "이 패드에 대화를 엽니다.", + "pad.chat.loadmessages": "더 많은 메시지 불러오기", + "timeslider.pageTitle": "{{appTitle}} 시간슬라이더", + "timeslider.toolbar.returnbutton": "패드로 돌아가기", + "timeslider.toolbar.authors": "저자:", + "timeslider.toolbar.authorsList": "저자 없음", + "timeslider.toolbar.exportlink.title": "내보내기", + "timeslider.exportCurrent": "현재 버전으로 내보내기:", + "timeslider.version": "버전 {{version}}", + "timeslider.saved": "{{year}}년 {{month}} {{day}}일에 저장함", + "timeslider.dateformat": "{{year}}년/{{month}}/{{day}}일 {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "1월", + "timeslider.month.february": "2월", + "timeslider.month.march": "3월", + "timeslider.month.april": "4월", + "timeslider.month.may": "5월", + "timeslider.month.june": "6월", + "timeslider.month.july": "7월", + "timeslider.month.august": "8월", + "timeslider.month.september": "9월", + "timeslider.month.october": "10월", + "timeslider.month.november": "11월", + "timeslider.month.december": "12월", + "timeslider.unnamedauthors": "이름 없는 {[plural(num) one: 저자, other: 저자 ]} {{num}}명", + "pad.savedrevs.marked": "이 판은 이제 저장한 판으로 표시합니다.", + "pad.userlist.entername": "이름을 입력하세요", + "pad.userlist.unnamed": "이름없음", + "pad.userlist.guest": "손님", + "pad.userlist.deny": "거부", + "pad.userlist.approve": "승인", + "pad.editbar.clearcolors": "전체 문서의 저자 색을 지우시겠습니까?", + "pad.impexp.importbutton": "지금 가져오기", + "pad.impexp.importing": "가져오는 중...", + "pad.impexp.confirmimport": "파일을 가져오면 패드의 현재 텍스트를 덮어쓰게 됩니다. 진행하시겠습니까?", + "pad.impexp.convertFailed": "이 파일을 가져올 수 없습니다. 다른 문서 형식을 사용하거나 수동으로 복사하여 붙여넣으세요", + "pad.impexp.uploadFailed": "올리기를 실패했습니다. 다시 시도하세요", + "pad.impexp.importfailed": "가져오기를 실패했습니다", + "pad.impexp.copypaste": "복사하여 붙여넣으세요", + "pad.impexp.exportdisabled": "{{type}} 형식으로 내보내기가 비활성화되어 있습니다. 자세한 내용은 시스템 관리자에게 문의하시기 바랍니다." +} diff --git a/sources/src/locales/ksh.json b/sources/src/locales/ksh.json old mode 100644 new mode 100755 index 49dcb67..5d5230d --- a/sources/src/locales/ksh.json +++ b/sources/src/locales/ksh.json @@ -1,122 +1,126 @@ { - "@metadata": { - "authors": [ - "Purodha" - ] - }, - "index.newPad": "Neu Padd", - "index.createOpenPad": "udder maach e Padd op med däm Naame:", - "pad.toolbar.bold.title": "Fättschreff (Strg-B)", - "pad.toolbar.italic.title": "Scheive Schreff (Strg-I)", - "pad.toolbar.underline.title": "Ongerstresche (Strg-U)", - "pad.toolbar.strikethrough.title": "Dorschjeschtresche", - "pad.toolbar.ol.title": "Leß met Nommere", - "pad.toolbar.ul.title": "Leß met Pongkte", - "pad.toolbar.indent.title": "Enjerök", - "pad.toolbar.unindent.title": "Ußjerök", - "pad.toolbar.undo.title": "Retuur nämme (Strg-Z)", - "pad.toolbar.redo.title": "Norrens (Strg-Y)", - "pad.toolbar.clearAuthorship.title": "dä Schriiver ier Färve fottnämme", - "pad.toolbar.import_export.title": "Vun ongerscheidlijje Dattei_Fommaate empotteere udder äxpotteere", - "pad.toolbar.timeslider.title": "Verjangeheid afschpelle", - "pad.toolbar.savedRevision.title": "de Versjohn faßhallde", - "pad.toolbar.settings.title": "Enschtällonge", - "pad.toolbar.embed.title": "Donn dat Padd öffentlesch maache un enbenge", - "pad.toolbar.showusers.title": "Verbonge Metschriiver aanzeije", - "pad.colorpicker.save": "Faßhallde", - "pad.colorpicker.cancel": "Ophüüre", - "pad.loading": "Ben aam Laade\u0026nbsp;\u0026hellip;", - "pad.passwordRequired": "Do bruchs e Paßwoot för heh dat Pädd.", - "pad.permissionDenied": "Do häs nit dat Rääsch, op heh dat Pädd zohzejriife.", - "pad.wrongPassword": "Ding Paßwoot wohr verkeht.", - "pad.settings.padSettings": "Dam Pädd sin Enschtällonge", - "pad.settings.myView": "Anseesch", - "pad.settings.stickychat": "Donn der Klaaf emmer aanzeije", - "pad.settings.colorcheck": "Färve för de Schriiver", - "pad.settings.linenocheck": "Nommere för de Reije", - "pad.settings.rtlcheck": "Schreff vun Rääschß noh Lenks?", - "pad.settings.fontType": "Zoot Schreff", - "pad.settings.fontType.normal": "Nomaal", - "pad.settings.fontType.monospaced": "einheidlesch brejde Zeische", - "pad.settings.globalView": "Et Ußsin för Alle", - "pad.settings.language": "Schprooch:", - "pad.importExport.import_export": "Empoot/Äxpoot", - "pad.importExport.import": "Donn jeede Täx udder jeede Zoot Dokemänt huhlaade", - "pad.importExport.importSuccessful": "Jeschaff!", - "pad.importExport.export": "Don dat Pädd äxpoteere alß:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Eijfach Täx", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF (Poteerbaa Dokemänte Fommaat)", - "pad.importExport.exportopen": "ODF (Offe Dokemänte-Fommaat)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Mer künne bloß eijfaache Täxte udder HTML_Fommaate empoteere. Opwändejere Müjjeleschkeite fö der Empoot jon och, doför bruch mer en \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003EEnschtallazjuhn met \u003Ci lang=\"en\"\u003EAbiword\u003C/i\u003E\u003C/a\u003E.", - "pad.modals.connected": "Verbonge.", - "pad.modals.reconnecting": "Ben wider aam Verbenge\u0026nbsp;\u0026hellip;", - "pad.modals.forcereconnect": "Wider verbenge", - "pad.modals.userdup": "En enem andere Finster en Ärbeid", - "pad.modals.userdup.explanation": "Heh dat Padd schingk en mieh wi einem Finster vun enem Brauser op heh däm Rääschner op ze sin.", - "pad.modals.userdup.advice": "En heh däm Finster wider verbenge.", - "pad.modals.unauth": "Nit berääschtesch", - "pad.modals.unauth.explanation": "Ding Berääschtejong hät sesch jeändert, derwiehl De di Sigg aam beloore wohrß. Versöhk en neu Verbendong ze maache.", - "pad.modals.looping.explanation": "Et jitt Probleeme met dä Verbendong mem ẞööver för de Schriiver ier Aandeile zesamme_ze_bränge.", - "pad.modals.looping.cause": "Künnt sin, Ding Verbendong jeiht dorj_ene onzopaß proxy-ẞööver udder firewall.", - "pad.modals.initsocketfail": "Dä ẞööver es nit ze äreische.", - "pad.modals.initsocketfail.explanation": "Kein Verbendong met däm ẞööver ze krijje.", - "pad.modals.initsocketfail.cause": "Dat künnt aam Brauser udder aan däm singer Verbendong övver et Internet lijje.", - "pad.modals.slowcommit.explanation": "Dä ẞööver antwoot nit.", - "pad.modals.slowcommit.cause": "Dat künnt aan Probleeme met Verbendonge em Näzwärrek lijje.", - "pad.modals.badChangeset.explanation": "En Änderong, di De jemaat häs, wood vum ẞööver nit aanjenumme.", - "pad.modals.badChangeset.cause": "Dat künnt sin wääje ener verkehte Enschtällong vum ẞööver udder ohnjät, wat mer nit äwaadt hät. Donn Desch aan däm ßööver singe Bedriever wände, wann De meins, dat dat ene Fähler wör. Donn desch neu verbende, öm mem Schriive wigger ze maache.", - "pad.modals.corruptPad.explanation": "Dat Pädd, wo De desch met verbenge wells, es kappott.", - "pad.modals.corruptPad.cause": "Dat künnt sin wääje ener verkehte Enschtällong vum ẞööver udder ohnjät, wat mer nit äwaadt hät. Donn Desch aan däm ßööver singe Bedriever wände.", - "pad.modals.deleted": "Fottjeschmeße.", - "pad.modals.deleted.explanation": "Dat Pädd es fottjeschmeße woode.", - "pad.modals.disconnected": "Do bes nit mieh verbonge.", - "pad.modals.disconnected.explanation": "De Verbendong mem ẞööver es fott.", - "pad.modals.disconnected.cause": "Dä ẞööver künnt nit mieh loufe.\nSidd_esu jood und saad ons Bescheid, wann dadd esu bliiv.", - "pad.share": "Maach heh dat Padd öffentlesch", - "pad.share.readonly": "Nor zom Lässe", - "pad.share.link": "Lengk", - "pad.share.emebdcode": "URL enboue", - "pad.chat": "Klaaf", - "pad.chat.title": "Maach dä Klaaf för heh dat Pädd op", - "pad.chat.loadmessages": "Mieh Nohresschte laade...", - "timeslider.pageTitle": "{{appTitle}} - Verjangeheid affschpelle", - "timeslider.toolbar.returnbutton": "Jangk retuur nohm Pädd", - "timeslider.toolbar.authors": "Schriiver:", - "timeslider.toolbar.authorsList": "Kein Schriivere", - "timeslider.toolbar.exportlink.title": "Äxpooteere", - "timeslider.exportCurrent": "Donn de meußte Väsjohn äxpotteere alß:", - "timeslider.version": "Väsjon {{version}}", - "timeslider.saved": "Faßjehallde aam {{day}}. {{month}} {{year}}", - "timeslider.dateformat": "amm {{day}}. {{month}} {{year}} öm {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Jannewaa", - "timeslider.month.february": "Fääbrowaa", - "timeslider.month.march": "Määz", - "timeslider.month.april": "Apprell", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Juuni", - "timeslider.month.july": "Juuli", - "timeslider.month.august": "Oujoß", - "timeslider.month.september": "Säptämber", - "timeslider.month.october": "Oktoober", - "timeslider.month.november": "Novämber", - "timeslider.month.december": "Dezämber", - "timeslider.unnamedauthors": "{[plural(num) one: eine, other: {{num}} ]} naameloose Schriever", - "pad.savedrevs.marked": "Heh di Väsjohn es jäz faßjehallde.", - "pad.userlist.entername": "Jif Dinge Naame en", - "pad.userlist.unnamed": "naameloßß", - "pad.userlist.guest": "Jaßß", - "pad.userlist.deny": "Aflehne", - "pad.userlist.approve": "Joodheiße", - "pad.editbar.clearcolors": "Sulle mer de Färve för de Schriiver uss_em janze Täx fott maache?", - "pad.impexp.importbutton": "Jäz empoteere", - "pad.impexp.importing": "Ben aam Empotteere\u0026nbsp;\u0026hellip;", - "pad.impexp.confirmimport": "En Dattei ze empotteere määt der janze Täx em Pädd fott. Wess De dat verfaftesch hann?", - "pad.impexp.convertFailed": "Mer kunnte di Dattei nit empoteere. Nemm en ander Dattei-Fommaat udder donn dä Täx vun Hand kopeere un ennfööje.", - "pad.impexp.uploadFailed": "Et Huhlaade es donävve jejange, bes esu jood un probeer et norr_ens", - "pad.impexp.importfailed": "Et Empoteere es donävve jejange", - "pad.impexp.copypaste": "Bes esu jood un donn et koppeere un enfööje", - "pad.impexp.exportdisabled": "Et Äxpotteere em {{type}}-Formmaat es affjeschalldt. De Verwallder vun heh dä Sigge künne doh velleisch wiggerhällefe." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Purodha" + ] + }, + "index.newPad": "Neu Pädd", + "index.createOpenPad": "udder maach e Pädd op med däm Naame:", + "pad.toolbar.bold.title": "Fättschreff (Strg-B)", + "pad.toolbar.italic.title": "Scheive Schreff (Strg-I)", + "pad.toolbar.underline.title": "Ongerstresche (Strg-U)", + "pad.toolbar.strikethrough.title": "Dorschjeschtresche (Strg+5)", + "pad.toolbar.ol.title": "Leß met Nommere (Strg+Jruhß+N)", + "pad.toolbar.ul.title": "Leß met Pongkte (Strg+Jruhß+L)", + "pad.toolbar.indent.title": "Enjerök (TAB)", + "pad.toolbar.unindent.title": "Ußjerök (Jruhßschreff+TAB)", + "pad.toolbar.undo.title": "Retuur nämme (Strg-Z)", + "pad.toolbar.redo.title": "Norrens (Strg-Y)", + "pad.toolbar.clearAuthorship.title": "Donn dä Schriiver ier Färve fottnämme (Strg+Jruhß+C)", + "pad.toolbar.import_export.title": "Ongerscheidlijje Dattei_Fommaate empotteere udder äxpotteere", + "pad.toolbar.timeslider.title": "Verjangeheid afschpelle", + "pad.toolbar.savedRevision.title": "Di Väsjohn faßhallde", + "pad.toolbar.settings.title": "Enschtällonge", + "pad.toolbar.embed.title": "Donn dat Pädd öffentlesch maache un enbenge", + "pad.toolbar.showusers.title": "Verbonge Metschriiver aanzeije", + "pad.colorpicker.save": "Faßhallde", + "pad.colorpicker.cancel": "Ophüüre", + "pad.loading": "Ben aam Lahde …", + "pad.noCookie": "Dat Pläzje wood nit jevonge. Don dat en Dingem Brauser zohlohße!", + "pad.passwordRequired": "Do bruchs e Paßwoot för heh dat Pädd.", + "pad.permissionDenied": "Do häs nit dat Rääsch, op heh dat Pädd zohzejriife.", + "pad.wrongPassword": "Ding Paßwoot wohr verkeht.", + "pad.settings.padSettings": "Däm Pädd sing Enschtällonge", + "pad.settings.myView": "Aanseesch", + "pad.settings.stickychat": "Donn der Klaaf emmer aanzeije", + "pad.settings.chatandusers": "Dunn de Metmaacher un der Klaaf aanzeije", + "pad.settings.colorcheck": "Färve för de Schriiver", + "pad.settings.linenocheck": "Nommere för de Reije", + "pad.settings.rtlcheck": "Schreff vun Rääschß noh Lenks?", + "pad.settings.fontType": "Zoot Schreff", + "pad.settings.fontType.normal": "Nomaal", + "pad.settings.fontType.monospaced": "einheidlesch brejde Zeische", + "pad.settings.globalView": "Et Ußsin för Alle", + "pad.settings.language": "Schprohch:", + "pad.importExport.import_export": "Empoot/Äxpoot", + "pad.importExport.import": "Donn jeede Täx udder jeede Zoot Dokemänt huhlaade", + "pad.importExport.importSuccessful": "Jeschaff!", + "pad.importExport.export": "Don dat Pädd äxpoteere alß:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Eijfach Täx", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF (Poteerbaa Dokemänte Fommaat)", + "pad.importExport.exportopen": "ODF (Offe Dokemänte-Fommaat)", + "pad.importExport.abiword.innerHTML": "Mer künne bloß eijfaache Täxte udder HTML_Fommaate empoteere. Opwändejere Müjjeleschkeite fö der Empoot jon och, doför bruch mer en Enschtallazjuhn met Abiword.", + "pad.modals.connected": "Verbonge.", + "pad.modals.reconnecting": "Ben wider aam Verbenge …", + "pad.modals.forcereconnect": "Wider verbenge", + "pad.modals.userdup": "En enem andere Finster en Ärbeid", + "pad.modals.userdup.explanation": "Heh dat Padd schingk en mieh wi einem Finster vun enem Brauser op heh däm Rääschner op ze sin.", + "pad.modals.userdup.advice": "En heh däm Finster wider verbenge.", + "pad.modals.unauth": "Nit berääschtesch", + "pad.modals.unauth.explanation": "Ding Berääschtejong hät sesch jeändert, derwiehl De di Sigg aam beloore wohrß. Versöhk en neu Verbendong ze maache.", + "pad.modals.looping.explanation": "Et jitt Probleeme met dä Verbendong mem ẞööver för de Schriiver ier Aandeile zesamme_ze_bränge.", + "pad.modals.looping.cause": "Künnt sin, Ding Verbendong jeiht dorj_ene onzopaß proxy-ẞööver udder firewall.", + "pad.modals.initsocketfail": "Dä ẞööver es nit ze äreische.", + "pad.modals.initsocketfail.explanation": "Kein Verbendong met däm ẞööver ze krijje.", + "pad.modals.initsocketfail.cause": "Dat künnt aam Brauser udder aan däm singer Verbendong övver et Internet lijje.", + "pad.modals.slowcommit.explanation": "Dä ẞööver antwoot nit.", + "pad.modals.slowcommit.cause": "Dat künnt aan Probleeme met Verbendonge em Näzwärrek lijje.", + "pad.modals.badChangeset.explanation": "En Änderong, di De jemaat häs, wood vum ẞööver nit aanjenumme.", + "pad.modals.badChangeset.cause": "Dat künnt sin wääje ener verkehte Enschtällong vum ẞööver udder ohnjät, wat mer nit äwaadt hät. Donn Desch aan däm ßööver singe Bedriever wände, wann De meins, dat dat ene Fähler wör. Donn desch neu verbende, öm mem Schriive wigger ze maache.", + "pad.modals.corruptPad.explanation": "Dat Pädd, wo De desch met verbenge wells, es kappott.", + "pad.modals.corruptPad.cause": "Dat künnt sin wääje ener verkehte Enschtällong vum ẞööver udder öhnßjät, wat mer nit äwaadt hät. Donn Desch aan däm ßööver singe Bedriever wände.", + "pad.modals.deleted": "Fottjeschmeße.", + "pad.modals.deleted.explanation": "Dat Pädd es fottjeschmeße woode.", + "pad.modals.disconnected": "Do bes nit mieh verbonge.", + "pad.modals.disconnected.explanation": "De Verbendong mem ẞööver es fott.", + "pad.modals.disconnected.cause": "Dä ẞööver künnt nit mieh loufe.\nSidd_esu jood und saad ons Bescheid, wann dadd esu bliiv.", + "pad.share": "Maach heh dat Pädd öffentlesch", + "pad.share.readonly": "Nor för ze Lässe", + "pad.share.link": "Lengk", + "pad.share.emebdcode": "Donn en URL enboue", + "pad.chat": "Klaaf", + "pad.chat.title": "Maach dä Klaaf för heh dat Pädd op", + "pad.chat.loadmessages": "Mieh Nohreeschte lahde...", + "timeslider.pageTitle": "{{appTitle}} - Verjangeheid affschpelle", + "timeslider.toolbar.returnbutton": "Jangk retuur nohm Pädd", + "timeslider.toolbar.authors": "De Schriiver:", + "timeslider.toolbar.authorsList": "Kein Schriivere", + "timeslider.toolbar.exportlink.title": "Äxpotteere", + "timeslider.exportCurrent": "Donn de neußte Väsjohn äxpotteere alß:", + "timeslider.version": "Väsjohn {{version}}", + "timeslider.saved": "Faßjehallde aam {{day}}. {{month}} {{year}}", + "timeslider.dateformat": "aam {{day}}. {{month}} {{year}} öm {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Jannewaa", + "timeslider.month.february": "Fääbrowaa", + "timeslider.month.march": "Määz", + "timeslider.month.april": "Apprell", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Juuni", + "timeslider.month.july": "Juuli", + "timeslider.month.august": "Oujoß", + "timeslider.month.september": "Säptämber", + "timeslider.month.october": "Oktoober", + "timeslider.month.november": "Novämber", + "timeslider.month.december": "Dezämber", + "timeslider.unnamedauthors": "{[plural(num) zero: keine, one: eine, other: {{num}} ]} nahmeloose Schriiver", + "pad.savedrevs.marked": "Heh di Väsjohn es jäz faßjehallde.", + "pad.savedrevs.timeslider": "Mer kann de faßjehallde Väsjohne belohre beim Verjangeheid afschpelle", + "pad.userlist.entername": "Jif Dinge Nahme en", + "pad.userlist.unnamed": "nahmeloßß", + "pad.userlist.guest": "Jaßß", + "pad.userlist.deny": "Aflehne", + "pad.userlist.approve": "Johdheiße", + "pad.editbar.clearcolors": "Sulle mer de Färve för de Schriiver uss_em janze Täx fott maache?", + "pad.impexp.importbutton": "Jäz empoteere", + "pad.impexp.importing": "Ben aam Empotteere …", + "pad.impexp.confirmimport": "En Dattei ze empotteere määt der janze Täx em Pädd fott. Wells De dat verfaftesch hann?", + "pad.impexp.convertFailed": "Mer kunnte di Dattei nit empoteere. Nemm en ander Dattei-Fommaat udder donn dä Täx vun Hand kopeere un ennföhje.", + "pad.impexp.padHasData": "Mer kunnte di Dattei nit empottehre weil et Pädd alt Veränderonge metjemaht hät. Donn se en e neu Pädd empottehre.", + "pad.impexp.uploadFailed": "Dat Huhlaade es donävve jejange. Bes esu johd un probeer et norr_ens.", + "pad.impexp.importfailed": "Et Empoteere es donävve jejange.", + "pad.impexp.copypaste": "Bes esu johd un donn et koppeere un enfööje", + "pad.impexp.exportdisabled": "Et Äxpotteere em {{type}}-Formmaat es affjeschalldt. De Verwallder vun heh dä Sigge künne doh velleisch wiggerhällefe." +} diff --git a/sources/src/locales/lb.json b/sources/src/locales/lb.json old mode 100644 new mode 100755 index 414fa8c..99bfe0b --- a/sources/src/locales/lb.json +++ b/sources/src/locales/lb.json @@ -1,54 +1,66 @@ { - "@metadata": { - "authors": [ - "Robby", - "Soued031" - ] - }, - "index.newPad": "Neie Pad", - "pad.toolbar.ol.title": "Numeréiert Lëscht", - "pad.toolbar.ul.title": "Net-numeréiert Lëscht", - "pad.toolbar.undo.title": "Réckgängeg (Ctrl-Z)", - "pad.toolbar.redo.title": "Widderhuelen (Ctrl-Y)", - "pad.toolbar.savedRevision.title": "Versioun späicheren", - "pad.toolbar.settings.title": "Astellungen", - "pad.colorpicker.save": "Späicheren", - "pad.colorpicker.cancel": "Ofbriechen", - "pad.loading": "Lueden...", - "pad.wrongPassword": "Äert Passwuert ass falsch", - "pad.settings.fontType.normal": "Normal", - "pad.settings.language": "Sprooch:", - "pad.importExport.importSuccessful": "Erfollegräich", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.modals.unauth": "Net autoriséiert", - "pad.modals.slowcommit.explanation": "De Server äntwert net.", - "pad.modals.deleted": "Geläscht.", - "pad.share.readonly": "Nëmme liesen", - "pad.share.link": "Link", - "pad.chat.loadmessages": "Méi Message lueden", - "timeslider.toolbar.authors": "Auteuren:", - "timeslider.toolbar.authorsList": "Keng Auteuren", - "timeslider.exportCurrent": "Exportéiert déi aktuell Versioun als:", - "timeslider.version": "Versioun {{version}}", - "timeslider.saved": "Gespäichert de(n) {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januar", - "timeslider.month.february": "Februar", - "timeslider.month.march": "Mäerz", - "timeslider.month.april": "Abrëll", - "timeslider.month.may": "Mee", - "timeslider.month.june": "Juni", - "timeslider.month.july": "Juli", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "Dezember", - "pad.userlist.entername": "Gitt Ären Numm an", - "pad.userlist.guest": "Gaascht", - "pad.impexp.importbutton": "Elo importéieren", - "pad.impexp.importing": "Importéieren..." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Robby", + "Soued031", + "Gromper" + ] + }, + "index.newPad": "Neie Pad", + "index.createOpenPad": "oder maacht ee Pad mat dësem Numm op:", + "pad.toolbar.underline.title": "Ënnerstrach (Ctrl+U)", + "pad.toolbar.strikethrough.title": "Duerchgestrach (Ctrl+5)", + "pad.toolbar.ol.title": "Numeréiert Lëscht (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Net-numeréiert Lëscht (Ctrl+Shift+L)", + "pad.toolbar.undo.title": "Réckgängeg (Ctrl-Z)", + "pad.toolbar.redo.title": "Widderhuelen (Ctrl-Y)", + "pad.toolbar.savedRevision.title": "Versioun späicheren", + "pad.toolbar.settings.title": "Astellungen", + "pad.toolbar.showusers.title": "Aktuell Benotzer vun dësem Pad uweisen", + "pad.colorpicker.save": "Späicheren", + "pad.colorpicker.cancel": "Ofbriechen", + "pad.loading": "Lueden...", + "pad.noCookie": "Cookie gouf net fonnt. Erlaabt w.e.g. Cookien an Ärem Browser!", + "pad.passwordRequired": "Dir braucht ee Passwuert fir dëse Pad opzemaachen", + "pad.permissionDenied": "Dir hutt net déi néideg Rechter fir dëse Pad opzemaachen", + "pad.wrongPassword": "Äert Passwuert ass falsch", + "pad.settings.myView": "Méng Usiicht", + "pad.settings.fontType.normal": "Normal", + "pad.settings.language": "Sprooch:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.importSuccessful": "Erfollegräich", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.modals.connected": "Verbonnen.", + "pad.modals.unauth": "Net autoriséiert", + "pad.modals.slowcommit.explanation": "De Server äntwert net.", + "pad.modals.deleted": "Geläscht.", + "pad.share.readonly": "Nëmme liesen", + "pad.share.link": "Link", + "pad.chat.loadmessages": "Méi Message lueden", + "timeslider.toolbar.authors": "Auteuren:", + "timeslider.toolbar.authorsList": "Keng Auteuren", + "timeslider.exportCurrent": "Exportéiert déi aktuell Versioun als:", + "timeslider.version": "Versioun {{version}}", + "timeslider.saved": "Gespäichert de(n) {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januar", + "timeslider.month.february": "Februar", + "timeslider.month.march": "Mäerz", + "timeslider.month.april": "Abrëll", + "timeslider.month.may": "Mee", + "timeslider.month.june": "Juni", + "timeslider.month.july": "Juli", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Dezember", + "pad.userlist.entername": "Gitt Ären Numm an", + "pad.userlist.guest": "Gaascht", + "pad.userlist.approve": "Zoustëmmen", + "pad.impexp.importbutton": "Elo importéieren", + "pad.impexp.importing": "Importéieren..." +} diff --git a/sources/src/locales/lki.json b/sources/src/locales/lki.json new file mode 100755 index 0000000..b743629 --- /dev/null +++ b/sources/src/locales/lki.json @@ -0,0 +1,75 @@ +{ + "@metadata": { + "authors": [ + "Hosseinblue" + ] + }, + "index.newPad": "تازۀpad", + "index.createOpenPad": ":ئۀ وسیلۀ نؤمpadسازین/وآز کردن یه گلۀ", + "pad.toolbar.bold.title": "پررنگ-تئژ(Ctrl-B)", + "pad.toolbar.italic.title": "ایتالیک (Ctrl-I)", + "pad.toolbar.underline.title": "ژئر خطی(Ctrl-U)", + "pad.toolbar.strikethrough.title": "خط هوواردئ", + "pad.toolbar.ol.title": "فئرست رزگی-مرتب", + "pad.toolbar.ul.title": "نۀچنریا-نامرتب", + "pad.toolbar.indent.title": "تورفتگی-ئه نؤم چئن (TAB)", + "pad.toolbar.unindent.title": "(Shift+TAB)بیرون آمدگی-درچئن", + "pad.toolbar.undo.title": "گِلّا دائن-ئآهۀتن(Ctrl-Z)", + "pad.toolbar.redo.title": "ئۀ نوواهۀتن (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "پاکاکردن رنگۀل تالیفی", + "pad.toolbar.import_export.title": "دربردن/ئه نؤم ئآووردن ئۀ/ئِِژ فرمتۀل گوناگون", + "pad.toolbar.timeslider.title": "اسلایدر وختی-زمانی", + "pad.toolbar.savedRevision.title": "ذخیرل دسکاریۀل", + "pad.toolbar.settings.title": "تنظیمۀل", + "pad.toolbar.embed.title": "بۀشاکردن ؤ نیائن(اشتراک ونشاندن)ئۀ نؤم سایت", + "pad.toolbar.showusers.title": "نیشان دائن کاربر ئۀ نؤم ئئ\npad", + "pad.colorpicker.save": "ذخیرۀ", + "pad.colorpicker.cancel": "ئآهووسانن-لغو", + "pad.loading": "...(loading)بارنیائن", + "pad.passwordRequired": "هؤمۀ رمزتؤنه گرۀکۀ-لازمۀ ئۀرا اتصال ئئ \npad", + "pad.wrongPassword": "رمزۀ تؤن دؤرس نیۀ", + "pad.settings.padSettings": "pad تنظیمۀل", + "pad.settings.myView": "نمایش-سئرکردن مه", + "pad.settings.stickychat": "چت همؤیشۀ ئۀ ولگۀ نمایش بوو", + "pad.settings.colorcheck": "رنگۀل تالیفی", + "pad.settings.linenocheck": "شؤمارۀل خطی", + "pad.settings.fontType": ":شئؤۀ فؤنت", + "pad.settings.fontType.normal": "عادی", + "pad.settings.fontType.monospaced": "پئنی-پهنا", + "pad.settings.globalView": "نمایش جئ هانی", + "pad.settings.language": ":زوون", + "pad.importExport.import_export": "در بردن/ئه نؤم ئآووردن", + "pad.importExport.import": "بارنیائن هر جور نوشته یا سندئ", + "pad.importExport.importSuccessful": "! موفق بی-پیرووز بی", + "pad.importExport.exporthtml": "html", + "pad.importExport.exportplain": "متن پئن-درئژ", + "pad.importExport.exportword": "مایکروسافت وورد", + "pad.importExport.exportpdf": "پی دی اف", + "pad.modals.connected": "وصل بیۀ", + "pad.modals.deleted": "پاک بیا-حذف بی", + "pad.share.readonly": "تنیا بخؤۀن", + "pad.share.link": "لینک", + "pad.chat": "گپ", + "pad.chat.loadmessages": "پئامۀلئ تر باره سۀر", + "timeslider.toolbar.exportlink.title": "در بِردن", + "timeslider.month.january": "دی)نورووژ)", + "timeslider.month.february": "(خاکه لێه(بهمن", + "timeslider.month.march": "(مانگ ئێد(اسفندگان", + "timeslider.month.april": "(په نجه(فروردین", + "timeslider.month.may": "(مێرێان(اردیبهشت", + "timeslider.month.june": "(گاکوور(خرداد", + "timeslider.month.july": "تیر)ئاگرانی)", + "timeslider.month.august": "مرداد)مردار)", + "timeslider.month.september": "(ماڵه ژێر(شهریور", + "timeslider.month.october": "(ماڵه ژێر دوماێنه(مهر", + "timeslider.month.november": "آبان)تویل ته کن)", + "timeslider.month.december": "(مانگه سێه(آذر", + "pad.userlist.entername": "نؤم تؤن وارد کۀن", + "pad.userlist.unnamed": "بئ نؤم", + "pad.userlist.guest": "مئمان", + "pad.userlist.deny": "رد کردن", + "pad.userlist.approve": "راووا داشتن-تصویب کردن", + "pad.impexp.importbutton": "ایسۀ وارد کۀ", + "pad.impexp.importing": "...وارد مۀهه", + "pad.impexp.importfailed": "وارد نؤنئ-خطای واردکردن" +} diff --git a/sources/src/locales/lrc.json b/sources/src/locales/lrc.json old mode 100644 new mode 100755 index 73263af..910f8f1 --- a/sources/src/locales/lrc.json +++ b/sources/src/locales/lrc.json @@ -1,67 +1,78 @@ { - "@metadata": { - "authors": [ - "Mogoeilor" - ] - }, - "pad.toolbar.bold.title": "توپر", - "pad.toolbar.italic.title": "کج کوله(ctrl-l)", - "pad.toolbar.underline.title": "زیر خط دار بین (Ctrl-U)", - "pad.toolbar.ol.title": "نوم گه منظم", - "pad.toolbar.ul.title": "نوم گه بی نظم", - "pad.toolbar.indent.title": "مئن رئته(TAB)", - "pad.toolbar.unindent.title": "وه در رئته (Shift+TAB)", - "pad.toolbar.undo.title": "رد انجوم دئین (Ctrl-Z)", - "pad.toolbar.redo.title": "د نو انجوم دئین(Ctrl-Y)", - "pad.toolbar.settings.title": "تنظيمات", - "pad.colorpicker.save": "ذخيره كردن", - "pad.colorpicker.cancel": "رد كردن", - "pad.loading": "د حالت سوار كرد", - "pad.wrongPassword": "پاسوردتو اشتوائه", - "pad.settings.myView": "نظرگه مه", - "pad.settings.stickychat": "همیشه د بلگه چک چنه بکید", - "pad.settings.linenocheck": "شماره خطیا", - "pad.settings.fontType": "نوع فونت:", - "pad.settings.fontType.normal": "عادی", - "pad.settings.fontType.monospaced": "تک جاگه", - "pad.settings.globalView": "دیئن جهونی", - "pad.settings.language": "زون:", - "pad.importExport.importSuccessful": "موفق بی!", - "pad.importExport.exporthtml": "اچ تی ام ال", - "pad.importExport.exportplain": "متن ساده", - "pad.importExport.exportword": "واجه پالایشتگر مایکروسافت", - "pad.importExport.exportpdf": "پی دی اف", - "pad.importExport.exportopen": "او دی اف(قالو سند وا بیه)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "وصل بیه", - "pad.modals.forcereconnect": "سی وصل بین مژبور کو", - "pad.modals.deleted": "پاک بیه", - "pad.share.readonly": "فقط بحون", - "pad.share.link": "هوم پیوند", - "pad.chat": "گپ زئن", - "pad.chat.loadmessages": "پیغومیا بیشتر نه سوار کو", - "timeslider.toolbar.authors": "نیسنه یا:", - "timeslider.toolbar.authorsList": "بی نیسنه", - "timeslider.toolbar.exportlink.title": "وه در ديئن", - "timeslider.version": "نسقه{{نسقه}}", - "timeslider.month.january": "جانويه", - "timeslider.month.february": "فوريه", - "timeslider.month.march": "مارس", - "timeslider.month.april": "آوريل", - "timeslider.month.may": "ما", - "timeslider.month.june": "جوئن", - "timeslider.month.july": "جولای", - "timeslider.month.august": "اگوست", - "timeslider.month.september": "سپتامر", - "timeslider.month.october": "اكتور", - "timeslider.month.november": "نوامر", - "timeslider.month.december": "دسامر", - "pad.userlist.entername": "نوم تونه وارد بکید", - "pad.userlist.unnamed": "نوم نهشته", - "pad.userlist.guest": "میزوان", - "pad.userlist.deny": "پرو کردن", - "pad.userlist.approve": "اصلا کردن", - "pad.impexp.importbutton": "ایسه وارد کو", - "pad.impexp.importing": "د حالت وارد کردن", - "pad.impexp.copypaste": "خواهشن وردار بدیسن" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Mogoeilor" + ] + }, + "index.newPad": "دشته تازه", + "pad.toolbar.bold.title": "توپر", + "pad.toolbar.italic.title": "کج کوله(ctrl-l)", + "pad.toolbar.underline.title": "زیر خط دار بین (Ctrl-U)", + "pad.toolbar.ol.title": "نوم گه منظم", + "pad.toolbar.ul.title": "نوم گه بی نظم", + "pad.toolbar.indent.title": "مئن رئته(TAB)", + "pad.toolbar.unindent.title": "وه در رئته (Shift+TAB)", + "pad.toolbar.undo.title": "رد انجوم دئین (Ctrl-Z)", + "pad.toolbar.redo.title": "د نو انجوم دئین(Ctrl-Y)", + "pad.toolbar.settings.title": "میزوکاری", + "pad.colorpicker.save": "ذخيره كردن", + "pad.colorpicker.cancel": "انجوم شیو كردن", + "pad.loading": "د حالت سوار كرد", + "pad.wrongPassword": "پاسوردتو اشتوائه", + "pad.settings.padSettings": "میزوکاری دشته", + "pad.settings.myView": "نظرگه مه", + "pad.settings.stickychat": "همیشه د بلگه چک چنه بکید", + "pad.settings.linenocheck": "شماره خطیا", + "pad.settings.fontType": "نوع فونت:", + "pad.settings.fontType.normal": "عادی", + "pad.settings.fontType.monospaced": "تک جاگه", + "pad.settings.globalView": "دیئن جهونی", + "pad.settings.language": "زون:", + "pad.importExport.import_export": "وامین آوردن/د در دئن", + "pad.importExport.importSuccessful": "موفق بی!", + "pad.importExport.export": "دشته تازه چی وه در بیه:", + "pad.importExport.exporthtml": "اچ تی ام ال", + "pad.importExport.exportplain": "نیسسه ساده", + "pad.importExport.exportword": "واجه پالایشتگر مایکروسافت", + "pad.importExport.exportpdf": "پی دی اف", + "pad.importExport.exportopen": "او دی اف(قالو سند وا بیه)", + "pad.modals.connected": "وصل بیه", + "pad.modals.forcereconnect": "سی وصل بین مژبور کو", + "pad.modals.userdup": "د نیمدری هنی واز بیه", + "pad.modals.initsocketfail": "سرور د دسرسی نئ.", + "pad.modals.deleted": "پاک بیه", + "pad.modals.deleted.explanation": "ای دشته جا وه جا بیه", + "pad.modals.disconnected": "ارتواطتو قطع بیه", + "pad.share": "ای دشته نه بهر کو", + "pad.share.readonly": "فقط بحون", + "pad.share.link": "هوم پیوند", + "pad.chat": "گپ زئن", + "pad.chat.title": "گپ چنه نه سی دشته وا کو.", + "pad.chat.loadmessages": "پیغومیا بیشتر نه سوار کو", + "timeslider.toolbar.returnbutton": "ورگرد د دشته", + "timeslider.toolbar.authors": "نیسنه یا:", + "timeslider.toolbar.authorsList": "بی نیسنه", + "timeslider.toolbar.exportlink.title": "وه در ديئن", + "timeslider.version": "نسقه{{نسقه}}", + "timeslider.month.january": "جانويه", + "timeslider.month.february": "فوريه", + "timeslider.month.march": "مارس", + "timeslider.month.april": "آوريل", + "timeslider.month.may": "ما", + "timeslider.month.june": "جوئن", + "timeslider.month.july": "جولای", + "timeslider.month.august": "اگوست", + "timeslider.month.september": "سپتامر", + "timeslider.month.october": "اكتور", + "timeslider.month.november": "نوامر", + "timeslider.month.december": "دسامر", + "pad.userlist.entername": "نوم تونه وارد بکید", + "pad.userlist.unnamed": "نوم نهشته", + "pad.userlist.guest": "میزوان", + "pad.userlist.deny": "پرو کردن", + "pad.userlist.approve": "اصلا کردن", + "pad.impexp.importbutton": "ایسه وارد کو", + "pad.impexp.importing": "د حالت وارد کردن", + "pad.impexp.importfailed": "وامین آوردن شکست حرد", + "pad.impexp.copypaste": "خواهشن وردار بدیسن" +} diff --git a/sources/src/locales/lt.json b/sources/src/locales/lt.json old mode 100644 new mode 100755 index 401cc2c..7b4e148 --- a/sources/src/locales/lt.json +++ b/sources/src/locales/lt.json @@ -1,73 +1,72 @@ { - "@metadata": { - "authors": [ - "Eitvys200", - "Mantak111" - ] - }, - "pad.toolbar.bold.title": "Paryškintasis (Ctrl-B)", - "pad.toolbar.italic.title": "Pasvirasis (Ctrl-I)", - "pad.toolbar.underline.title": "Pabraukimas (Ctrl-U)", - "pad.toolbar.undo.title": "Anuliuoti (Ctrl-Z)", - "pad.toolbar.redo.title": "Perdaryti (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Tvarkyti autorystės spalvas", - "pad.toolbar.settings.title": "Nustatymai", - "pad.colorpicker.save": "Išsaugoti", - "pad.colorpicker.cancel": "Atšaukti", - "pad.loading": "Įkraunama...", - "pad.settings.myView": "Mano Vaizdas", - "pad.settings.fontType": "Šrifto tipas:", - "pad.settings.fontType.normal": "Normalus", - "pad.settings.globalView": "Bendras Vaizdas", - "pad.settings.language": "Kalba:", - "pad.importExport.import_export": "Importuoti/Eksportuoti", - "pad.importExport.import": "Įkelkite bet kokį tekstinį failą arba dokumentą", - "pad.importExport.importSuccessful": "Pavyko!", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Paprastasis tekstas", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Atvirasis dokumento formatas)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "Prisijungta.", - "pad.modals.unauth": "Neleidžiama", - "pad.modals.initsocketfail": "Serveris yra nepasiekiamas.", - "pad.modals.slowcommit.explanation": "Serveris neatsako.", - "pad.modals.deleted": "Ištrintas.", - "pad.modals.disconnected": "Jūs atsijungėte.", - "pad.share.readonly": "Tik skaityti", - "pad.share.link": "Nuoroda", - "pad.share.emebdcode": "Įterptasis URL", - "pad.chat": "Pokalbiai", - "pad.chat.loadmessages": "Įkrauti daugiau pranešimų", - "timeslider.toolbar.authors": "Autoriai:", - "timeslider.toolbar.authorsList": "Nėra autorių", - "timeslider.toolbar.exportlink.title": "Eksportuoti", - "timeslider.exportCurrent": "Eksportuoti dabartinę versiją kaip:", - "timeslider.version": "Versija {{version}}", - "timeslider.saved": "Išsaugota {{year}},{{month}} {{day}}", - "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Sausis", - "timeslider.month.february": "Vasaris", - "timeslider.month.march": "Kovas", - "timeslider.month.april": "Balandis", - "timeslider.month.may": "Gegužė", - "timeslider.month.june": "Birželis", - "timeslider.month.july": "Liepa", - "timeslider.month.august": "Rugpjūtis", - "timeslider.month.september": "Rugsėjis", - "timeslider.month.october": "Spalis", - "timeslider.month.november": "Lapkritis", - "timeslider.month.december": "Gruodis", - "timeslider.unnamedauthors": "{{num}} bevardžiai(-ių) autoriai(-ių)", - "pad.userlist.entername": "Įveskite savo vardą", - "pad.userlist.unnamed": "bevardis", - "pad.userlist.guest": "Svečias", - "pad.userlist.deny": "Neigti", - "pad.userlist.approve": "Patvirtinti", - "pad.impexp.importbutton": "Importuoti dabar", - "pad.impexp.importing": "Importuojama...", - "pad.impexp.uploadFailed": "Įkėlimas nepavyko, bandykite dar kartą", - "pad.impexp.importfailed": "Importuoti nepavyko", - "pad.impexp.copypaste": "Prašome nukopijuoti ir įklijuoti" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Eitvys200", + "Mantak111" + ] + }, + "pad.toolbar.bold.title": "Paryškintasis (Ctrl-B)", + "pad.toolbar.italic.title": "Pasvirasis (Ctrl-I)", + "pad.toolbar.underline.title": "Pabraukimas (Ctrl-U)", + "pad.toolbar.undo.title": "Anuliuoti (Ctrl-Z)", + "pad.toolbar.redo.title": "Perdaryti (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Tvarkyti autorystės spalvas", + "pad.toolbar.settings.title": "Nustatymai", + "pad.colorpicker.save": "Išsaugoti", + "pad.colorpicker.cancel": "Atšaukti", + "pad.loading": "Įkraunama...", + "pad.settings.myView": "Mano Vaizdas", + "pad.settings.fontType": "Šrifto tipas:", + "pad.settings.fontType.normal": "Normalus", + "pad.settings.globalView": "Bendras Vaizdas", + "pad.settings.language": "Kalba:", + "pad.importExport.import_export": "Importuoti/Eksportuoti", + "pad.importExport.import": "Įkelkite bet kokį tekstinį failą arba dokumentą", + "pad.importExport.importSuccessful": "Pavyko!", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Paprastasis tekstas", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Atvirasis dokumento formatas)", + "pad.modals.connected": "Prisijungta.", + "pad.modals.unauth": "Neleidžiama", + "pad.modals.initsocketfail": "Serveris yra nepasiekiamas.", + "pad.modals.slowcommit.explanation": "Serveris neatsako.", + "pad.modals.deleted": "Ištrintas.", + "pad.modals.disconnected": "Jūs atsijungėte.", + "pad.share.readonly": "Tik skaityti", + "pad.share.link": "Nuoroda", + "pad.share.emebdcode": "Įterptasis URL", + "pad.chat": "Pokalbiai", + "pad.chat.loadmessages": "Įkrauti daugiau pranešimų", + "timeslider.toolbar.authors": "Autoriai:", + "timeslider.toolbar.authorsList": "Nėra autorių", + "timeslider.toolbar.exportlink.title": "Eksportuoti", + "timeslider.exportCurrent": "Eksportuoti dabartinę versiją kaip:", + "timeslider.version": "Versija {{version}}", + "timeslider.saved": "Išsaugota {{year}},{{month}} {{day}}", + "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Sausis", + "timeslider.month.february": "Vasaris", + "timeslider.month.march": "Kovas", + "timeslider.month.april": "Balandis", + "timeslider.month.may": "Gegužė", + "timeslider.month.june": "Birželis", + "timeslider.month.july": "Liepa", + "timeslider.month.august": "Rugpjūtis", + "timeslider.month.september": "Rugsėjis", + "timeslider.month.october": "Spalis", + "timeslider.month.november": "Lapkritis", + "timeslider.month.december": "Gruodis", + "timeslider.unnamedauthors": "{{num}} bevardžiai(-ių) autoriai(-ių)", + "pad.userlist.entername": "Įveskite savo vardą", + "pad.userlist.unnamed": "bevardis", + "pad.userlist.guest": "Svečias", + "pad.userlist.deny": "Neigti", + "pad.userlist.approve": "Patvirtinti", + "pad.impexp.importbutton": "Importuoti dabar", + "pad.impexp.importing": "Importuojama...", + "pad.impexp.uploadFailed": "Įkėlimas nepavyko, bandykite dar kartą", + "pad.impexp.importfailed": "Importuoti nepavyko", + "pad.impexp.copypaste": "Prašome nukopijuoti ir įklijuoti" +} diff --git a/sources/src/locales/lv.json b/sources/src/locales/lv.json old mode 100644 new mode 100755 index a17a755..ee402d3 --- a/sources/src/locales/lv.json +++ b/sources/src/locales/lv.json @@ -1,84 +1,84 @@ { - "@metadata": { - "authors": [ - "Admresdeserv.", - "Jmg.cmdi", - "Papuass" - ] - }, - "pad.toolbar.bold.title": "Treknrakstā (CTRL + B)", - "pad.toolbar.italic.title": "Slīpraksta (Ctrl-es)", - "pad.toolbar.underline.title": "Pasvītrojuma (CTRL + U)", - "pad.toolbar.strikethrough.title": "Pārsvītrojums", - "pad.toolbar.ol.title": "Sakārtots saraksts", - "pad.toolbar.ul.title": "Nesakārtots saraksts", - "pad.toolbar.indent.title": "Atkāpe", - "pad.toolbar.unindent.title": "Izkāpe", - "pad.toolbar.undo.title": "Atsaukt (CTRL + Z)", - "pad.toolbar.redo.title": "Atcelt atsaukšanu (CTRL + Y)", - "pad.toolbar.clearAuthorship.title": "Notīrit autoru krāsas", - "pad.toolbar.import_export.title": "Importēšanas/eksportēšanas no un uz citu failu formātiem", - "pad.toolbar.savedRevision.title": "Saglabāt pārskatīšanu", - "pad.toolbar.settings.title": "Iestatījumi", - "pad.toolbar.embed.title": "Koplietot un iegut šo pad", - "pad.toolbar.showusers.title": "Parādīt šo padu lietotājus", - "pad.colorpicker.save": "Saglabāt", - "pad.colorpicker.cancel": "Atcelt", - "pad.loading": "Ielādē…", - "pad.passwordRequired": "Ir nepieciešama parole, lai piekļūtu šim pad", - "pad.permissionDenied": "Atvaino, bet tev nav pieejas šim pad.", - "pad.wrongPassword": "Jūsu parole bija nepareiza", - "pad.settings.padSettings": "Pad Iestatijumi", - "pad.settings.myView": "Mans viedoklis", - "pad.settings.stickychat": "Čats vienmēr ekrānā", - "pad.settings.colorcheck": "Autorības krāsas", - "pad.settings.linenocheck": "Rindiņu numurus", - "pad.settings.rtlcheck": "Lasīt saturu no labās puses uz kreiso?", - "pad.settings.fontType": "Fonta tips:", - "pad.settings.fontType.normal": "Normāls", - "pad.settings.globalView": "Globālu skatījumu", - "pad.settings.language": "Valoda:", - "pad.importExport.import_export": "Importet/Eksportet", - "pad.importExport.import": "Augšupielādēt jebkuru teksta failu vai dokumentu", - "pad.importExport.importSuccessful": "Veiksmīgi!", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Vienkārša teksta", - "pad.importExport.exportword": "Programma Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open dokumenta formāts)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.userdup": "Atvērts citā logā", - "pad.modals.unauth": "Nav atļauts", - "pad.modals.looping.explanation": "Pastāv sakaru problēmas ar sinhronizācijas servera.", - "pad.modals.initsocketfail": "Serveris nav sasniedzams.", - "pad.modals.initsocketfail.explanation": "Nevarēja izveidot savienojumu ar sinhronizācijas serveri.", - "pad.modals.slowcommit.explanation": "Serveris nereaģē.", - "pad.modals.deleted": "Dzēsts", - "pad.modals.disconnected": "Jūs esat atvienots.", - "pad.modals.disconnected.explanation": "Tika zaudēts savienojums ar serveri", - "pad.modals.disconnected.cause": "Iespējams, ka serveris nav pieejams. Lūgums paziņot mums, ja tas turpina notikt.", - "pad.share": "Koplietot šo pad", - "pad.share.readonly": "Tikai lasāms", - "pad.share.link": "Saite", - "timeslider.toolbar.authors": "Autori:", - "timeslider.toolbar.authorsList": "Nav autoru", - "timeslider.toolbar.exportlink.title": "Eksportēt", - "timeslider.month.january": "Janvāris", - "timeslider.month.february": "Februāris", - "timeslider.month.march": "Marts", - "timeslider.month.april": "Aprīlis", - "timeslider.month.may": "Maijs", - "timeslider.month.june": "Jūnijs", - "timeslider.month.july": "Jūlijs", - "timeslider.month.august": "Augusts", - "timeslider.month.september": "Septembris", - "timeslider.month.october": "Oktobris", - "timeslider.month.november": "Novembris", - "timeslider.month.december": "Decembris", - "pad.userlist.entername": "Ievadiet savu vārdu", - "pad.userlist.unnamed": "nenosaukts", - "pad.userlist.guest": "Viesis", - "pad.impexp.importbutton": "Importēt tūlīt", - "pad.impexp.importing": "Importē...", - "pad.impexp.importfailed": "Imports neizdevās" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Admresdeserv.", + "Jmg.cmdi", + "Papuass" + ] + }, + "pad.toolbar.bold.title": "Treknrakstā (CTRL + B)", + "pad.toolbar.italic.title": "Slīpraksta (Ctrl-es)", + "pad.toolbar.underline.title": "Pasvītrojuma (CTRL + U)", + "pad.toolbar.strikethrough.title": "Pārsvītrojums (Ctrl+5)", + "pad.toolbar.ol.title": "Sakārtots saraksts (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Nesakārtots saraksts (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Atkāpe (TAB)", + "pad.toolbar.unindent.title": "Izkāpe (Shift+TAB)", + "pad.toolbar.undo.title": "Atsaukt (CTRL + Z)", + "pad.toolbar.redo.title": "Atcelt atsaukšanu (CTRL + Y)", + "pad.toolbar.clearAuthorship.title": "Notīrit autoru krāsas (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importēšanas/eksportēšanas no un uz citu failu formātiem", + "pad.toolbar.savedRevision.title": "Saglabāt pārskatīšanu", + "pad.toolbar.settings.title": "Iestatījumi", + "pad.toolbar.embed.title": "Koplietot un iegut šo pad", + "pad.toolbar.showusers.title": "Parādīt šo padu lietotājus", + "pad.colorpicker.save": "Saglabāt", + "pad.colorpicker.cancel": "Atcelt", + "pad.loading": "Ielādē…", + "pad.passwordRequired": "Ir nepieciešama parole, lai piekļūtu šim pad", + "pad.permissionDenied": "Atvaino, bet tev nav pieejas šim pad.", + "pad.wrongPassword": "Jūsu parole bija nepareiza", + "pad.settings.padSettings": "Pad Iestatijumi", + "pad.settings.myView": "Mans viedoklis", + "pad.settings.stickychat": "Čats vienmēr ekrānā", + "pad.settings.colorcheck": "Autorības krāsas", + "pad.settings.linenocheck": "Rindiņu numurus", + "pad.settings.rtlcheck": "Lasīt saturu no labās puses uz kreiso?", + "pad.settings.fontType": "Fonta tips:", + "pad.settings.fontType.normal": "Normāls", + "pad.settings.globalView": "Globālu skatījumu", + "pad.settings.language": "Valoda:", + "pad.importExport.import_export": "Importet/Eksportet", + "pad.importExport.import": "Augšupielādēt jebkuru teksta failu vai dokumentu", + "pad.importExport.importSuccessful": "Veiksmīgi!", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Vienkārša teksta", + "pad.importExport.exportword": "Programma Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open dokumenta formāts)", + "pad.modals.connected": "Pievienojies.", + "pad.modals.userdup": "Atvērts citā logā", + "pad.modals.unauth": "Nav atļauts", + "pad.modals.looping.explanation": "Pastāv sakaru problēmas ar sinhronizācijas servera.", + "pad.modals.initsocketfail": "Serveris nav sasniedzams.", + "pad.modals.initsocketfail.explanation": "Nevarēja izveidot savienojumu ar sinhronizācijas serveri.", + "pad.modals.slowcommit.explanation": "Serveris nereaģē.", + "pad.modals.deleted": "Dzēsts", + "pad.modals.disconnected": "Jūs esat atvienots.", + "pad.modals.disconnected.explanation": "Tika zaudēts savienojums ar serveri", + "pad.modals.disconnected.cause": "Iespējams, ka serveris nav pieejams. Lūgums paziņot pakalpojuma administratoram, ja tas turpina notikt.", + "pad.share": "Koplietot šo pad", + "pad.share.readonly": "Tikai lasāms", + "pad.share.link": "Saite", + "timeslider.toolbar.authors": "Autori:", + "timeslider.toolbar.authorsList": "Nav autoru", + "timeslider.toolbar.exportlink.title": "Eksportēt", + "timeslider.month.january": "Janvāris", + "timeslider.month.february": "Februāris", + "timeslider.month.march": "Marts", + "timeslider.month.april": "Aprīlis", + "timeslider.month.may": "Maijs", + "timeslider.month.june": "Jūnijs", + "timeslider.month.july": "Jūlijs", + "timeslider.month.august": "Augusts", + "timeslider.month.september": "Septembris", + "timeslider.month.october": "Oktobris", + "timeslider.month.november": "Novembris", + "timeslider.month.december": "Decembris", + "pad.userlist.entername": "Ievadiet savu vārdu", + "pad.userlist.unnamed": "nenosaukts", + "pad.userlist.guest": "Viesis", + "pad.impexp.importbutton": "Importēt tūlīt", + "pad.impexp.importing": "Importē...", + "pad.impexp.importfailed": "Imports neizdevās" +} diff --git a/sources/src/locales/map-bms.json b/sources/src/locales/map-bms.json old mode 100644 new mode 100755 index fee220d..1b87bac --- a/sources/src/locales/map-bms.json +++ b/sources/src/locales/map-bms.json @@ -1,118 +1,117 @@ { - "@metadata": { - "authors": [ - "StefanusRA" - ] - }, - "index.newPad": "Pad Anyar", - "index.createOpenPad": "utawa gawe/bukak Pad nganggo jeneng:", - "pad.toolbar.bold.title": "Kandhel (Ctrl-B)", - "pad.toolbar.italic.title": "Miring (Ctrl-I)", - "pad.toolbar.underline.title": "Garisngisor (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Corettengaeh", - "pad.toolbar.ol.title": "Daftar nganggo nomer", - "pad.toolbar.ul.title": "Daftar ora nganggo nomer", - "pad.toolbar.indent.title": "Nggantung", - "pad.toolbar.unindent.title": "nggantung njaba", - "pad.toolbar.undo.title": "Batalna (Ctrl-Z)", - "pad.toolbar.redo.title": "Baleni (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Busek ''Authorship Colors''", - "pad.toolbar.import_export.title": "Impor/Ekspor sekang/maring format berkas sejen", - "pad.toolbar.timeslider.title": "Timeslider", - "pad.toolbar.savedRevision.title": "Simpen revisi", - "pad.toolbar.settings.title": "Pangaturan", - "pad.toolbar.embed.title": "Sebarna lan ''embed'' pad kiye", - "pad.toolbar.showusers.title": "Tidokna panganggo-panganggo nang pad kiye", - "pad.colorpicker.save": "Simpen", - "pad.colorpicker.cancel": "Batalna", - "pad.loading": "Muatna...", - "pad.passwordRequired": "Rika perlu tembung sandhi kanggo ngakses pad kiye", - "pad.permissionDenied": "Rika ora duwe idin kanggo ngakses pad kiye", - "pad.wrongPassword": "Tembung sandhine Rika salah", - "pad.settings.padSettings": "Pangaturan Pad", - "pad.settings.myView": "Delengane Inyong", - "pad.settings.stickychat": "Dopokan mesti nang layar", - "pad.settings.colorcheck": "Authorship colors", - "pad.settings.linenocheck": "Nomer baris", - "pad.settings.rtlcheck": "Waca isi sekang tengen maring kiwe?", - "pad.settings.fontType": "Tipe Font:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Global View", - "pad.settings.language": "Basa:", - "pad.importExport.import_export": "Impor/Ekspor", - "pad.importExport.import": "Unggahna berkas teks utawa dokumen", - "pad.importExport.importSuccessful": "Sukses!", - "pad.importExport.export": "Ekspor pad kiye dadi:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "t", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Rika mung teyeng impor sekang format plain text utawa HTML. Kanggo fitur impor sing lewih maju monggo \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Emasang abiword\u003C/a\u003E.", - "pad.modals.connected": "Nyambung.", - "pad.modals.reconnecting": "Mbaleli nyambung ming pad Rika...", - "pad.modals.forcereconnect": "Maksa nyambung maning", - "pad.modals.userdup": "Bukak nang jendela sejen", - "pad.modals.userdup.explanation": "Pad kiye kayane dibukak nang lewih sekang siji browser nang komputer kiye.", - "pad.modals.userdup.advice": "Nyambung maning nganggo jendela kiye baen.", - "pad.modals.unauth": "Not authorized", - "pad.modals.unauth.explanation": "Idin-e Rika wis diowahi dong lagi ndeleng kaca kiye. Jajal nyambung maning.", - "pad.modals.looping.explanation": "Pra ana masalah komunikasi karo server sinkronisasi.", - "pad.modals.looping.cause": "Ndeyan Rika gole nyambung nganggo firewall utawa proksi sing ora pas.", - "pad.modals.initsocketfail": "Server ora teyeng dihubungi.", - "pad.modals.initsocketfail.explanation": "Ora teyeng nyambung maring sinkronisasi server.", - "pad.modals.initsocketfail.cause": "Kiye ndeyan ana masalah karo perambanne Rika utawa sambungan internete Rika.", - "pad.modals.slowcommit.explanation": "Server ora respon.", - "pad.modals.slowcommit.cause": "Kiye ndeyan ana masalah karo sambungan jaringan.", - "pad.modals.deleted": "Dibusek.", - "pad.modals.deleted.explanation": "Pad kiye wis dibusek.", - "pad.modals.disconnected": "Rika wis dipedot sambungane.", - "pad.modals.disconnected.explanation": "Sambungan maring server wis ilang", - "pad.modals.disconnected.cause": "Servere ndeyan ora ana. Monggo tidokna inyong angger kahanan kiye terus kedaden maning.", - "pad.share": "Sebarna pad kiye", - "pad.share.readonly": "Waca thok", - "pad.share.link": "Pranala", - "pad.share.emebdcode": "Embed URL", - "pad.chat": "Dopokan", - "pad.chat.title": "Buka dopokan kanggo pad kiye.", - "pad.chat.loadmessages": "Muatna pesen lewih akeh", - "timeslider.pageTitle": "{{appTitle}} Timeslider", - "timeslider.toolbar.returnbutton": "Mbalik ming pad", - "timeslider.toolbar.authors": "Penulise:", - "timeslider.toolbar.authorsList": "Ora ana penulise", - "timeslider.toolbar.exportlink.title": "Ekspor", - "timeslider.exportCurrent": "Ekspor versi sekiye dadi:", - "timeslider.version": "Versi {{version}}", - "timeslider.saved": "Simpen {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januari", - "timeslider.month.february": "Februari", - "timeslider.month.march": "Maret", - "timeslider.month.april": "April", - "timeslider.month.may": "Mei", - "timeslider.month.june": "Juni", - "timeslider.month.july": "Juli", - "timeslider.month.august": "Agustus", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "Desember", - "timeslider.unnamedauthors": "{{num}} durung dijenengi {[plural(num) one: author, other: authors ]}", - "pad.savedrevs.marked": "Revisi kiye sekiye ditandani dadi revisi sing wis disimpen", - "pad.userlist.entername": "Lebokna jenenge Rika", - "pad.userlist.unnamed": "durungdijenengi", - "pad.userlist.guest": "Dayoh", - "pad.userlist.deny": "Ora olih", - "pad.userlist.approve": "Sarujuk", - "pad.editbar.clearcolors": "Busek ''authorship colors'' nang kabeh dokumen?", - "pad.impexp.importbutton": "Impor Sekiye", - "pad.impexp.importing": "Lagi ngimpor...", - "pad.impexp.confirmimport": "Ngimpor berkas bakal dadi nindih teks sekiye nang pad. Apa Rika wis mantep arep mroses kiye?", - "pad.impexp.convertFailed": "Inyong ora teyeng ngimpor berkas kiye. Jajal nganggo format dokumen sejen utawa salin-tempel manual.", - "pad.impexp.uploadFailed": "Gole ngunggah gagal, monggo dijajal maning", - "pad.impexp.importfailed": "Gole ngimpor gagal", - "pad.impexp.copypaste": "Monggo salin-tempel", - "pad.impexp.exportdisabled": "Ngekspor maring format {{type}} ora olih. Monggo takon maring administrator sisteme Rika kanggo detile." -} \ No newline at end of file + "@metadata": { + "authors": [ + "StefanusRA" + ] + }, + "index.newPad": "Pad Anyar", + "index.createOpenPad": "utawa gawe/bukak Pad nganggo jeneng:", + "pad.toolbar.bold.title": "Kandhel (Ctrl-B)", + "pad.toolbar.italic.title": "Miring (Ctrl-I)", + "pad.toolbar.underline.title": "Garisngisor (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Corettengaeh", + "pad.toolbar.ol.title": "Daftar nganggo nomer", + "pad.toolbar.ul.title": "Daftar ora nganggo nomer", + "pad.toolbar.indent.title": "Nggantung", + "pad.toolbar.unindent.title": "nggantung njaba", + "pad.toolbar.undo.title": "Batalna (Ctrl-Z)", + "pad.toolbar.redo.title": "Baleni (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Busek ''Authorship Colors''", + "pad.toolbar.import_export.title": "Impor/Ekspor sekang/maring format berkas sejen", + "pad.toolbar.timeslider.title": "Timeslider", + "pad.toolbar.savedRevision.title": "Simpen revisi", + "pad.toolbar.settings.title": "Pangaturan", + "pad.toolbar.embed.title": "Sebarna lan ''embed'' pad kiye", + "pad.toolbar.showusers.title": "Tidokna panganggo-panganggo nang pad kiye", + "pad.colorpicker.save": "Simpen", + "pad.colorpicker.cancel": "Batalna", + "pad.loading": "Muatna...", + "pad.passwordRequired": "Rika perlu tembung sandhi kanggo ngakses pad kiye", + "pad.permissionDenied": "Rika ora duwe idin kanggo ngakses pad kiye", + "pad.wrongPassword": "Tembung sandhine Rika salah", + "pad.settings.padSettings": "Pangaturan Pad", + "pad.settings.myView": "Delengane Inyong", + "pad.settings.stickychat": "Dopokan mesti nang layar", + "pad.settings.colorcheck": "Authorship colors", + "pad.settings.linenocheck": "Nomer baris", + "pad.settings.rtlcheck": "Waca isi sekang tengen maring kiwe?", + "pad.settings.fontType": "Tipe Font:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Global View", + "pad.settings.language": "Basa:", + "pad.importExport.import_export": "Impor/Ekspor", + "pad.importExport.import": "Unggahna berkas teks utawa dokumen", + "pad.importExport.importSuccessful": "Sukses!", + "pad.importExport.export": "Ekspor pad kiye dadi:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "t", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Rika mung teyeng impor sekang format plain text utawa HTML. Kanggo fitur impor sing lewih maju monggo masang abiword.", + "pad.modals.connected": "Nyambung.", + "pad.modals.reconnecting": "Mbaleli nyambung ming pad Rika...", + "pad.modals.forcereconnect": "Maksa nyambung maning", + "pad.modals.userdup": "Bukak nang jendela sejen", + "pad.modals.userdup.explanation": "Pad kiye kayane dibukak nang lewih sekang siji browser nang komputer kiye.", + "pad.modals.userdup.advice": "Nyambung maning nganggo jendela kiye baen.", + "pad.modals.unauth": "Not authorized", + "pad.modals.unauth.explanation": "Idin-e Rika wis diowahi dong lagi ndeleng kaca kiye. Jajal nyambung maning.", + "pad.modals.looping.explanation": "Pra ana masalah komunikasi karo server sinkronisasi.", + "pad.modals.looping.cause": "Ndeyan Rika gole nyambung nganggo firewall utawa proksi sing ora pas.", + "pad.modals.initsocketfail": "Server ora teyeng dihubungi.", + "pad.modals.initsocketfail.explanation": "Ora teyeng nyambung maring sinkronisasi server.", + "pad.modals.initsocketfail.cause": "Kiye ndeyan ana masalah karo perambanne Rika utawa sambungan internete Rika.", + "pad.modals.slowcommit.explanation": "Server ora respon.", + "pad.modals.slowcommit.cause": "Kiye ndeyan ana masalah karo sambungan jaringan.", + "pad.modals.deleted": "Dibusek.", + "pad.modals.deleted.explanation": "Pad kiye wis dibusek.", + "pad.modals.disconnected": "Rika wis dipedot sambungane.", + "pad.modals.disconnected.explanation": "Sambungan maring server wis ilang", + "pad.modals.disconnected.cause": "Servere ndeyan ora ana. Monggo tidokna inyong angger kahanan kiye terus kedaden maning.", + "pad.share": "Sebarna pad kiye", + "pad.share.readonly": "Waca thok", + "pad.share.link": "Pranala", + "pad.share.emebdcode": "Embed URL", + "pad.chat": "Dopokan", + "pad.chat.title": "Buka dopokan kanggo pad kiye.", + "pad.chat.loadmessages": "Muatna pesen lewih akeh", + "timeslider.pageTitle": "{{appTitle}} Timeslider", + "timeslider.toolbar.returnbutton": "Mbalik ming pad", + "timeslider.toolbar.authors": "Penulise:", + "timeslider.toolbar.authorsList": "Ora ana penulise", + "timeslider.toolbar.exportlink.title": "Ekspor", + "timeslider.exportCurrent": "Ekspor versi sekiye dadi:", + "timeslider.version": "Versi {{version}}", + "timeslider.saved": "Simpen {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januari", + "timeslider.month.february": "Februari", + "timeslider.month.march": "Maret", + "timeslider.month.april": "April", + "timeslider.month.may": "Mei", + "timeslider.month.june": "Juni", + "timeslider.month.july": "Juli", + "timeslider.month.august": "Agustus", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Desember", + "timeslider.unnamedauthors": "{{num}} durung dijenengi {[plural(num) one: author, other: authors ]}", + "pad.savedrevs.marked": "Revisi kiye sekiye ditandani dadi revisi sing wis disimpen", + "pad.userlist.entername": "Lebokna jenenge Rika", + "pad.userlist.unnamed": "durungdijenengi", + "pad.userlist.guest": "Dayoh", + "pad.userlist.deny": "Ora olih", + "pad.userlist.approve": "Sarujuk", + "pad.editbar.clearcolors": "Busek ''authorship colors'' nang kabeh dokumen?", + "pad.impexp.importbutton": "Impor Sekiye", + "pad.impexp.importing": "Lagi ngimpor...", + "pad.impexp.confirmimport": "Ngimpor berkas bakal dadi nindih teks sekiye nang pad. Apa Rika wis mantep arep mroses kiye?", + "pad.impexp.convertFailed": "Inyong ora teyeng ngimpor berkas kiye. Jajal nganggo format dokumen sejen utawa salin-tempel manual.", + "pad.impexp.uploadFailed": "Gole ngunggah gagal, monggo dijajal maning", + "pad.impexp.importfailed": "Gole ngimpor gagal", + "pad.impexp.copypaste": "Monggo salin-tempel", + "pad.impexp.exportdisabled": "Ngekspor maring format {{type}} ora olih. Monggo takon maring administrator sisteme Rika kanggo detile." +} diff --git a/sources/src/locales/mk.json b/sources/src/locales/mk.json old mode 100644 new mode 100755 index 60648fe..a924875 --- a/sources/src/locales/mk.json +++ b/sources/src/locales/mk.json @@ -1,123 +1,127 @@ { - "@metadata": { - "authors": [ - "Bjankuloski06", - "Brest" - ] - }, - "index.newPad": "Нова тетратка", - "index.createOpenPad": "или направете/отворете тетратка со името:", - "pad.toolbar.bold.title": "Задебелено (Ctrl-B)", - "pad.toolbar.italic.title": "Косо (Ctrl-I)", - "pad.toolbar.underline.title": "Подвлечено (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Прецртано", - "pad.toolbar.ol.title": "Подреден список", - "pad.toolbar.ul.title": "Неподреден список", - "pad.toolbar.indent.title": "Вовлекување (TAB)", - "pad.toolbar.unindent.title": "Отстап (Shift+TAB)", - "pad.toolbar.undo.title": "Врати (Ctrl-Z)", - "pad.toolbar.redo.title": "Повтори (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Поништи ги авторските бои", - "pad.toolbar.import_export.title": "Увоз/Извоз од/во разни податотечни формати", - "pad.toolbar.timeslider.title": "Историски преглед", - "pad.toolbar.savedRevision.title": "Зачувај ревизија", - "pad.toolbar.settings.title": "Поставки", - "pad.toolbar.embed.title": "Споделете и вметнете ја тетраткава", - "pad.toolbar.showusers.title": "Прикаж. корисниците на тетраткава", - "pad.colorpicker.save": "Зачувај", - "pad.colorpicker.cancel": "Откажи", - "pad.loading": "Вчитувам...", - "pad.passwordRequired": "Потребна е лозинка за пристап", - "pad.permissionDenied": "За овде не е потребна дозвола за пристап", - "pad.wrongPassword": "Погрешна лозинка", - "pad.settings.padSettings": "Поставки на тетратката", - "pad.settings.myView": "Мој поглед", - "pad.settings.stickychat": "Разговорите секогаш на екранот", - "pad.settings.colorcheck": "Авторски бои", - "pad.settings.linenocheck": "Броеви на редовите", - "pad.settings.rtlcheck": "Содржините да се читаат од десно на лево?", - "pad.settings.fontType": "Тип на фонт:", - "pad.settings.fontType.normal": "Нормален", - "pad.settings.fontType.monospaced": "Непропорционален", - "pad.settings.globalView": "Гобален поглед", - "pad.settings.language": "Јазик:", - "pad.importExport.import_export": "Увоз/Извоз", - "pad.importExport.import": "Подигање на било каква текстуална податотека или документ", - "pad.importExport.importSuccessful": "Успешно!", - "pad.importExport.export": "Извези ја тековната тетратка како", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Прост текст", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Можете да увезувате само од прост текст и HTML-формат. Понапредни можности за увоз ќе добиете ако \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eвоспоставите AbiWord\u003C/a\u003E.", - "pad.modals.connected": "Поврзано.", - "pad.modals.reconnecting": "Ве преповрзувам со тетратката...", - "pad.modals.forcereconnect": "Наметни преповрзување", - "pad.modals.userdup": "Отворено во друг прозорец", - "pad.modals.userdup.explanation": "Оваа тетратка е отворена на повеќе од еден прозорец (во прелистувач) на сметачот.", - "pad.modals.userdup.advice": "Преповрзете се за да го користите овој прозорец.", - "pad.modals.unauth": "Неовластено", - "pad.modals.unauth.explanation": "Вашите дозволи се имаат изменето додека ја гледавте страницава. Обидете се да се преповрзете.", - "pad.modals.looping.explanation": "Се јавија проблеми со врската со усогласителниот опслужувач.", - "pad.modals.looping.cause": "Можеби сте поврзани преку нескладен огнен ѕид или застапник.", - "pad.modals.initsocketfail": "Опслужувачот е недостапен.", - "pad.modals.initsocketfail.explanation": "Не можев да се поврзам со усогласителниот опслужувач.", - "pad.modals.initsocketfail.cause": "Ова веројатно се должи на проблем со вашиот прелистувач или семрежната врска.", - "pad.modals.slowcommit.explanation": "Опслужувачот не се одѕива.", - "pad.modals.slowcommit.cause": "Ова може да се должи на проблеми со мрежното поврзување.", - "pad.modals.badChangeset.explanation": "Опслужувачот за усогласување го смета уредувањето што го направивте за недопуштено.", - "pad.modals.badChangeset.cause": "Ова може да се должи на погрешна поставеност на опслужувачот или некое друго неочекувано поведение. Обратете се кај администраторот доколку сметате дека ова е грешка. Обидете се да се превклучите за да продолжите со уредување.", - "pad.modals.corruptPad.explanation": "Тетратката што сакате да ја отворите е расипана.", - "pad.modals.corruptPad.cause": "Ова може да се должи на погрешна поставеност на опслужувачот или некое друго неочекувано поведение. Обратете се кај администраторот.", - "pad.modals.deleted": "Избришано.", - "pad.modals.deleted.explanation": "Оваа тетратка е отстранета.", - "pad.modals.disconnected": "Врската е прекината.", - "pad.modals.disconnected.explanation": "Врската со опслужувачот е прекината", - "pad.modals.disconnected.cause": "Опслужувачот може да е недостапен. Известете го администраторот ако ова продолжи да ви се случува.", - "pad.share": "Сподели ја тетраткава", - "pad.share.readonly": "Само читање", - "pad.share.link": "Врска", - "pad.share.emebdcode": "Вметни URL", - "pad.chat": "Разговор", - "pad.chat.title": "Отвори го разговорот за оваа тетратка.", - "pad.chat.loadmessages": "Вчитај уште пораки", - "timeslider.pageTitle": "{{appTitle}} Историски преглед", - "timeslider.toolbar.returnbutton": "Назад на тетратката", - "timeslider.toolbar.authors": "Автори:", - "timeslider.toolbar.authorsList": "Нема автори", - "timeslider.toolbar.exportlink.title": "Извоз", - "timeslider.exportCurrent": "Извези ја тековната верзија како:", - "timeslider.version": "Верзија {{version}}", - "timeslider.saved": "Зачувано на {{day}} {{month}} {{year}} г.", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "јануари", - "timeslider.month.february": "февруари", - "timeslider.month.march": "март", - "timeslider.month.april": "април", - "timeslider.month.may": "мај", - "timeslider.month.june": "јуни", - "timeslider.month.july": "јули", - "timeslider.month.august": "август", - "timeslider.month.september": "септември", - "timeslider.month.october": "октомври", - "timeslider.month.november": "ноември", - "timeslider.month.december": "декември", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: неименуван автор, other: неименувани автори ]}", - "pad.savedrevs.marked": "Оваа ревизија сега е означена како зачувана", - "pad.userlist.entername": "Внесете го вашето име", - "pad.userlist.unnamed": "без име", - "pad.userlist.guest": "Гостин", - "pad.userlist.deny": "Одбиј", - "pad.userlist.approve": "Одобри", - "pad.editbar.clearcolors": "Да ги отстранам авторските бои од целиот документ?", - "pad.impexp.importbutton": "Увези сега", - "pad.impexp.importing": "Увезувам...", - "pad.impexp.confirmimport": "Увезувајќи ја податотеката ќе го замените целиот досегашен текст во тетратката. Дали сте сигурни дека сакате да продолжите?", - "pad.impexp.convertFailed": "Не можев да ја увезам податотеката. Послужете се со поинаков формат или прекопирајте го текстот рачно.", - "pad.impexp.uploadFailed": "Подигањето не успеа. Обидете се повторно.", - "pad.impexp.importfailed": "Увозот не успеа", - "pad.impexp.copypaste": "Прекопирајте", - "pad.impexp.exportdisabled": "Извозот во форматот {{type}} е оневозможен. Ако сакате да дознаете повеќе за ова, обратете се кај системскиот администратор." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Bjankuloski06", + "Brest" + ] + }, + "index.newPad": "Нова тетратка", + "index.createOpenPad": "или направете/отворете тетратка со името:", + "pad.toolbar.bold.title": "Задебелено (Ctrl-B)", + "pad.toolbar.italic.title": "Косо (Ctrl-I)", + "pad.toolbar.underline.title": "Подвлечено (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Прецртано (Ctrl+5)", + "pad.toolbar.ol.title": "Подреден список (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Неподреден список (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Вовлекување (TAB)", + "pad.toolbar.unindent.title": "Отстап (Shift+TAB)", + "pad.toolbar.undo.title": "Врати (Ctrl-Z)", + "pad.toolbar.redo.title": "Повтори (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Тргни ги авторските бои (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Увоз/Извоз од/во разни податотечни формати", + "pad.toolbar.timeslider.title": "Историски преглед", + "pad.toolbar.savedRevision.title": "Зачувај преработка", + "pad.toolbar.settings.title": "Поставки", + "pad.toolbar.embed.title": "Споделете и вметнете ја тетраткава", + "pad.toolbar.showusers.title": "Прикаж. корисниците на тетраткава", + "pad.colorpicker.save": "Зачувај", + "pad.colorpicker.cancel": "Откажи", + "pad.loading": "Вчитувам...", + "pad.noCookie": "Не можев да го најдам колачето. Овозможете колачиња во вашиот прелистувач!", + "pad.passwordRequired": "Потребна е лозинка за пристап", + "pad.permissionDenied": "За овде не е потребна дозвола за пристап", + "pad.wrongPassword": "Погрешна лозинка", + "pad.settings.padSettings": "Поставки на тетратката", + "pad.settings.myView": "Мој поглед", + "pad.settings.stickychat": "Разговорите секогаш на екранот", + "pad.settings.chatandusers": "Прикажи разговор и корисници", + "pad.settings.colorcheck": "Авторски бои", + "pad.settings.linenocheck": "Броеви на редовите", + "pad.settings.rtlcheck": "Содржините да се читаат од десно на лево?", + "pad.settings.fontType": "Тип на фонт:", + "pad.settings.fontType.normal": "Нормален", + "pad.settings.fontType.monospaced": "Непропорционален", + "pad.settings.globalView": "Општ поглед", + "pad.settings.language": "Јазик:", + "pad.importExport.import_export": "Увоз/Извоз", + "pad.importExport.import": "Подигање на било каква текстуална податотека или документ", + "pad.importExport.importSuccessful": "Успешно!", + "pad.importExport.export": "Извези ја тековната тетратка како", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Прост текст", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Можете да увезувате само од прост текст и HTML-формат. Понапредни можности за увоз ќе добиете ако воспоставите AbiWord.", + "pad.modals.connected": "Поврзано.", + "pad.modals.reconnecting": "Ве преповрзувам со тетратката...", + "pad.modals.forcereconnect": "Наметни преповрзување", + "pad.modals.userdup": "Отворено во друг прозорец", + "pad.modals.userdup.explanation": "Оваа тетратка е отворена на повеќе од еден прозорец (во прелистувач) на сметачот.", + "pad.modals.userdup.advice": "Преповрзете се за да го користите овој прозорец.", + "pad.modals.unauth": "Неовластено", + "pad.modals.unauth.explanation": "Вашите дозволи се имаат изменето додека ја гледавте страницава. Обидете се да се преповрзете.", + "pad.modals.looping.explanation": "Се јавија проблеми со врската со усогласителниот опслужувач.", + "pad.modals.looping.cause": "Можеби сте поврзани преку нескладен огнен ѕид или застапник.", + "pad.modals.initsocketfail": "Опслужувачот е недостапен.", + "pad.modals.initsocketfail.explanation": "Не можев да се поврзам со усогласителниот опслужувач.", + "pad.modals.initsocketfail.cause": "Ова веројатно се должи на проблем со вашиот прелистувач или семрежната врска.", + "pad.modals.slowcommit.explanation": "Опслужувачот не се одѕива.", + "pad.modals.slowcommit.cause": "Ова може да се должи на проблеми со мрежното поврзување.", + "pad.modals.badChangeset.explanation": "Опслужувачот за усогласување го смета уредувањето што го направивте за недопуштено.", + "pad.modals.badChangeset.cause": "Ова може да се должи на погрешна поставеност на опслужувачот или некое друго неочекувано поведение. Обратете се кај администраторот доколку сметате дека ова е грешка. Обидете се да се превклучите за да продолжите со уредување.", + "pad.modals.corruptPad.explanation": "Тетратката што сакате да ја отворите е расипана.", + "pad.modals.corruptPad.cause": "Ова може да се должи на погрешна поставеност на опслужувачот или некое друго неочекувано поведение. Обратете се кај администраторот.", + "pad.modals.deleted": "Избришано.", + "pad.modals.deleted.explanation": "Оваа тетратка е отстранета.", + "pad.modals.disconnected": "Врската е прекината.", + "pad.modals.disconnected.explanation": "Врската со опслужувачот е прекината", + "pad.modals.disconnected.cause": "Опслужувачот може да е недостапен. Известете го администраторот ако ова продолжи да ви се случува.", + "pad.share": "Сподели ја тетраткава", + "pad.share.readonly": "Само читање", + "pad.share.link": "Врска", + "pad.share.emebdcode": "Вметни URL", + "pad.chat": "Разговор", + "pad.chat.title": "Отвори го разговорот за оваа тетратка.", + "pad.chat.loadmessages": "Вчитај уште пораки", + "timeslider.pageTitle": "{{appTitle}} Историски преглед", + "timeslider.toolbar.returnbutton": "Назад на тетратката", + "timeslider.toolbar.authors": "Автори:", + "timeslider.toolbar.authorsList": "Нема автори", + "timeslider.toolbar.exportlink.title": "Извоз", + "timeslider.exportCurrent": "Извези ја тековната верзија како:", + "timeslider.version": "Верзија {{version}}", + "timeslider.saved": "Зачувано на {{day}} {{month}} {{year}} г.", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "јануари", + "timeslider.month.february": "февруари", + "timeslider.month.march": "март", + "timeslider.month.april": "април", + "timeslider.month.may": "мај", + "timeslider.month.june": "јуни", + "timeslider.month.july": "јули", + "timeslider.month.august": "август", + "timeslider.month.september": "септември", + "timeslider.month.october": "октомври", + "timeslider.month.november": "ноември", + "timeslider.month.december": "декември", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: неименуван автор, other: неименувани автори ]}", + "pad.savedrevs.marked": "Оваа преработка сега е означена како зачувана", + "pad.savedrevs.timeslider": "Можете да ги погледате зачуваните преработки посетувајќи го времеследниот лизгач", + "pad.userlist.entername": "Внесете го вашето име", + "pad.userlist.unnamed": "без име", + "pad.userlist.guest": "Гостин", + "pad.userlist.deny": "Одбиј", + "pad.userlist.approve": "Одобри", + "pad.editbar.clearcolors": "Да ги отстранам авторските бои од целиот документ?", + "pad.impexp.importbutton": "Увези сега", + "pad.impexp.importing": "Увезувам...", + "pad.impexp.confirmimport": "Увезувајќи ја податотеката ќе го замените целиот досегашен текст во тетратката. Дали сте сигурни дека сакате да продолжите?", + "pad.impexp.convertFailed": "Не можев да ја увезам податотеката. Послужете се со поинаков формат или прекопирајте го текстот рачно.", + "pad.impexp.padHasData": "Не можевме да ја увеземе оваа податотека бидејќи оваа тетратка веќе има промени. Увезете ја во нова тетратка.", + "pad.impexp.uploadFailed": "Подигањето не успеа. Обидете се повторно.", + "pad.impexp.importfailed": "Увозот не успеа", + "pad.impexp.copypaste": "Прекопирајте", + "pad.impexp.exportdisabled": "Извозот во форматот {{type}} е оневозможен. Ако сакате да дознаете повеќе за ова, обратете се кај системскиот администратор." +} diff --git a/sources/src/locales/ml.json b/sources/src/locales/ml.json old mode 100644 new mode 100755 index ebefe4d..680df0c --- a/sources/src/locales/ml.json +++ b/sources/src/locales/ml.json @@ -1,126 +1,125 @@ { - "@metadata": { - "authors": [ - "Akhilan", - "Clockery", - "Hrishikesh.kb", - "Praveenp", - "Santhosh.thottingal" - ] - }, - "index.newPad": "പുതിയ പാഡ്", - "index.createOpenPad": "അല്ലെങ്കിൽ പേരുപയോഗിച്ച് പാഡ് സൃഷ്ടിക്കുക/തുറക്കുക:", - "pad.toolbar.bold.title": "കടുപ്പത്തിലെഴുതുക (Ctrl-B)", - "pad.toolbar.italic.title": "ചെരിച്ചെഴുതുക (Ctrl-I)", - "pad.toolbar.underline.title": "അടിവരയിടുക (Ctrl-U)", - "pad.toolbar.strikethrough.title": "വെട്ടുക", - "pad.toolbar.ol.title": "ക്രമത്തിലുള്ള പട്ടിക", - "pad.toolbar.ul.title": "ക്രമരഹിത പട്ടിക", - "pad.toolbar.indent.title": "വലത്തേക്ക് തള്ളുക (ടാബ്)", - "pad.toolbar.unindent.title": "ഇടത്തേക്ക് തള്ളുക (ഷിഫ്റ്റ്+ടാബ്)", - "pad.toolbar.undo.title": "തിരസ്കരിക്കുക (Ctrl-Z)", - "pad.toolbar.redo.title": "വീണ്ടും ചെയ്യുക (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "രചയിതാക്കൾക്കുള്ള നിറം കളയുക", - "pad.toolbar.import_export.title": "വ്യത്യസ്ത ഫയൽ തരങ്ങളിലേക്ക്/തരങ്ങളിൽ നിന്ന് ഇറക്കുമതി/കയറ്റുമതി ചെയ്യുക", - "pad.toolbar.timeslider.title": "സമയരേഖ", - "pad.toolbar.savedRevision.title": "നാൾപ്പതിപ്പ് സേവ് ചെയ്യുക", - "pad.toolbar.settings.title": "സജ്ജീകരണങ്ങൾ", - "pad.toolbar.embed.title": "ഈ പാഡ് പങ്ക് വെയ്ക്കുക, എംബെഡ് ചെയ്യുക", - "pad.toolbar.showusers.title": "ഈ പാഡിലുള്ള ഉപയോക്താക്കളെ പ്രദർശിപ്പിക്കുക", - "pad.colorpicker.save": "സേവ് ചെയ്യുക", - "pad.colorpicker.cancel": "റദ്ദാക്കുക", - "pad.loading": "ശേഖരിക്കുന്നു...", - "pad.passwordRequired": "ഈ പാഡ് ഉപയോഗിക്കുന്നതിനായി ഒരു രഹസ്യവാക്ക് നൽകേണ്ടതാണ്", - "pad.permissionDenied": "ഈ പാഡ് കാണുവാൻ താങ്കൾക്ക് അനുമതിയില്ല", - "pad.wrongPassword": "താങ്കൾ നല്കിയ രഹസ്യവാക്ക് തെറ്റായിരുന്നു", - "pad.settings.padSettings": "പാഡ് സജ്ജീകരണങ്ങൾ", - "pad.settings.myView": "എന്റെ കാഴ്ച", - "pad.settings.stickychat": "തത്സമയസംവാദം എപ്പോഴും സ്ക്രീനിൽ കാണിക്കുക", - "pad.settings.colorcheck": "എഴുത്തുകാർക്കുള്ള നിറങ്ങൾ", - "pad.settings.linenocheck": "വരികളുടെ ക്രമസംഖ്യ", - "pad.settings.rtlcheck": "ഉള്ളടക്കം വലത്തുനിന്ന് ഇടത്തോട്ടാണോ വായിക്കേണ്ടത്?", - "pad.settings.fontType": "ഫോണ്ട് തരം:", - "pad.settings.fontType.normal": "സാധാരണം", - "pad.settings.fontType.monospaced": "മോണോസ്പേസ്", - "pad.settings.globalView": "മൊത്തക്കാഴ്ച", - "pad.settings.language": "ഭാഷ:", - "pad.importExport.import_export": "ഇറക്കുമതി/കയറ്റുമതി ചെയ്യുക", - "pad.importExport.import": "എന്തെങ്കിലും എഴുത്തു പ്രമാണമോ രേഖയോ അപ്‌ലോഡ് ചെയ്യുക", - "pad.importExport.importSuccessful": "വിജയകരം!", - "pad.importExport.export": "ഇപ്പോഴത്തെ പാഡ് ഇങ്ങനെ കയറ്റുമതി ചെയ്യുക:", - "pad.importExport.exporthtml": "എച്ച്.റ്റി.എം.എൽ.", - "pad.importExport.exportplain": "വെറും എഴുത്ത്", - "pad.importExport.exportword": "മൈക്രോസോഫ്റ്റ് വേഡ്", - "pad.importExport.exportpdf": "പി.ഡി.എഫ്.", - "pad.importExport.exportopen": "ഒ.ഡി.എഫ്. (ഓപ്പൺ ഡോക്യുമെന്റ് ഫോർമാറ്റ്)", - "pad.importExport.exportdokuwiki": "ഡോകുവിക്കി", - "pad.importExport.abiword.innerHTML": "പ്ലെയിൻ ടെക്സ്റ്റോ എച്ച്.റ്റി.എം.എൽ. തരമോ മാത്രമേ താങ്കൾക്ക് ഇറക്കുമതി ചെയ്യാനാവൂ. കൂടുതൽ വിപുലീകൃത ഇറക്കുമതി സൗകര്യങ്ങൾക്കായി ദയവായി \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eഅബിവേഡ് ഇൻസ്റ്റോൾ ചെയ്യുക\u003C/a\u003E.", - "pad.modals.connected": "ബന്ധിപ്പിച്ചിരിക്കുന്നു.", - "pad.modals.reconnecting": "താങ്കളുടെ പാഡിലേയ്ക്ക് വീണ്ടും ബന്ധിപ്പിക്കുന്നു...", - "pad.modals.forcereconnect": "എന്തായാലും ബന്ധിപ്പിക്കുക", - "pad.modals.userdup": "മറ്റൊരു ജാലകത്തിൽ തുറന്നിരിക്കുന്നു", - "pad.modals.userdup.explanation": "ഈ കമ്പ്യൂട്ടറിൽ ഈ പാഡ് ഒന്നിലധികം ബ്രൗസർ ജാലകങ്ങളിൽ തുറന്നതായി കാണുന്നു.", - "pad.modals.userdup.advice": "ഈ ജാലകം തന്നെ ഉപയോഗിക്കാനായി ബന്ധിപ്പിക്കുക", - "pad.modals.unauth": "അനുവാദമില്ല", - "pad.modals.unauth.explanation": "ഈ താൾ കണ്ടുകൊണ്ടിരിക്കെ താങ്കൾക്കുള്ള അനുമതികളിൽ മാറ്റമുണ്ടായി. വീണ്ടും ബന്ധപ്പെടാൻ ശ്രമിക്കുക.", - "pad.modals.looping.explanation": "സിംക്രണൈസേഷൻ സെർവറുമായുള്ള ആശയവിനിമയത്തിൽ പ്രശ്നങ്ങളുണ്ട്.", - "pad.modals.looping.cause": "ഒരുപക്ഷേ പൊരുത്തപ്പെടാത്ത ഫയർവാളിലൂടെയോ പ്രോക്സിയിലൂടെയോ ആകാം താങ്കൾ ബന്ധിച്ചിരുന്നത്.", - "pad.modals.initsocketfail": "സെർവറിലെത്താൻ പറ്റുന്നില്ല.", - "pad.modals.initsocketfail.explanation": "സിംക്രണൈസേഷൻ സെർവറുമായി ബന്ധപ്പെടാൻ കഴിഞ്ഞില്ല.", - "pad.modals.initsocketfail.cause": "താങ്കളുടെ ഇന്റർനെറ്റ് കണക്ഷന്റെയോ ബ്രൗസറിന്റെയോ പ്രശ്നമാകാം", - "pad.modals.slowcommit.explanation": "സെർവർ പ്രതികരിക്കുന്നില്ല.", - "pad.modals.slowcommit.cause": "നെറ്റ്‌വർക്ക് പ്രശ്നം കാരണമാകാം.", - "pad.modals.badChangeset.explanation": "താങ്കൾ ചെയ്ത ഒരു തിരുത്ത് സമീകരണ സെർവർ നയവിരുദ്ധമെന്ന് പെടുത്തിയിരിക്കുന്നു.", - "pad.modals.badChangeset.cause": "ഇത്, തെറ്റായ സെർവർ ക്രമീകരണം മൂലമോ മറ്റെന്തെങ്കിലും അപ്രതീക്ഷിത കാരണം കൊണ്ടോ ഉണ്ടായതായേക്കാം. ഇത് തെറ്റാണെന്ന് താങ്കൾക്ക് തോന്നുന്നുണ്ടെങ്കിൽ സേവന കാര്യനിർവാഹകയെ(നെ) താങ്കൾക്ക് സമീപിക്കാവുന്നതാണ്. തിരുത്തൽ തുടരാൻ വീണ്ടും ബദ്ധപ്പെടുക.", - "pad.modals.corruptPad.explanation": "താങ്കൾ എടുക്കാൻ ശ്രമിക്കുന്ന പാഡ് കേടാണ്.", - "pad.modals.corruptPad.cause": "ഇത്, തെറ്റായ സെർവർ ക്രമീകരണം മൂലമോ മറ്റെന്തെങ്കിലും അപ്രതീക്ഷിത കാരണം കൊണ്ടോ ഉണ്ടായതായേക്കാം. ദയവായി സേവന കാര്യനിർവാഹകയെ(നെ) സമീപിക്കുക.", - "pad.modals.deleted": "മായ്ച്ചു", - "pad.modals.deleted.explanation": "ഈ പാഡ് നീക്കം ചെയ്തു.", - "pad.modals.disconnected": "താങ്കൾ വേർപെട്ടിരിക്കുന്നു.", - "pad.modals.disconnected.explanation": "സെർവറുമായുള്ള ബന്ധം നഷ്ടപ്പെട്ടു", - "pad.modals.disconnected.cause": "സെർവർ ലഭ്യമല്ലായിരിക്കാം. ഇത് തുടർച്ചയായി സംഭവിക്കുന്നുണ്ടെങ്കിൽ ദയവായി സേവന കാര്യനിർവാഹകയെ(നെ) അറിയിക്കുക.", - "pad.share": "ഈ പാഡ് പങ്കിടുക", - "pad.share.readonly": "വായിക്കൽ മാത്രം", - "pad.share.link": "കണ്ണി", - "pad.share.emebdcode": "എംബെഡ് യു.ആർ.എൽ.", - "pad.chat": "തത്സമയസംവാദം", - "pad.chat.title": "ഈ പാഡിന്റെ തത്സമയസംവാദം തുറക്കുക.", - "pad.chat.loadmessages": "കൂടുതൽ സന്ദേശങ്ങൾ എടുക്കുക", - "timeslider.pageTitle": "{{appTitle}} സമയരേഖ", - "timeslider.toolbar.returnbutton": "പാഡിലേക്ക് മടങ്ങുക", - "timeslider.toolbar.authors": "രചയിതാക്കൾ:", - "timeslider.toolbar.authorsList": "ആരും എഴുതിയിട്ടില്ല", - "timeslider.toolbar.exportlink.title": "കയറ്റുമതി", - "timeslider.exportCurrent": "ഈ പതിപ്പ് ഇങ്ങനെ എടുക്കുക:", - "timeslider.version": "പതിപ്പ് {{version}}", - "timeslider.saved": "സേവ് ചെയ്തത് {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "ജനുവരി", - "timeslider.month.february": "ഫെബ്രുവരി", - "timeslider.month.march": "മാർച്ച്", - "timeslider.month.april": "ഏപ്രിൽ", - "timeslider.month.may": "മേയ്", - "timeslider.month.june": "ജൂൺ", - "timeslider.month.july": "ജൂലൈ", - "timeslider.month.august": "ഓഗസ്റ്റ്", - "timeslider.month.september": "സെപ്റ്റംബർ", - "timeslider.month.october": "ഒക്ടോബർ", - "timeslider.month.november": "നവംബർ", - "timeslider.month.december": "ഡിസംബർ", - "timeslider.unnamedauthors": "{{num}} പേരില്ലാത്ത {[plural(num) one: രചയിതാവ്, other: രചയിതാക്കൾ }}", - "pad.savedrevs.marked": "ഈ നാൾപ്പതിപ്പ് സേവ് ചെയ്തിട്ടുള്ള നാൾപ്പതിപ്പായി അടയാളപ്പെടുത്തിയിരിക്കുന്നു", - "pad.userlist.entername": "താങ്കളുടെ പേര് നൽകുക", - "pad.userlist.unnamed": "പേരില്ലാത്തവ", - "pad.userlist.guest": "അതിഥി", - "pad.userlist.deny": "നിരസിക്കുക", - "pad.userlist.approve": "അംഗീകരിക്കുക", - "pad.editbar.clearcolors": "ഡോക്യുമെന്റിൽ രചയിതാക്കളെ സൂചിപ്പിക്കാനായി നൽകിയിട്ടുള്ള നിറങ്ങൾ ഒഴിവാക്കട്ടെ?", - "pad.impexp.importbutton": "ഇറക്കുമതി ചെയ്യുക", - "pad.impexp.importing": "ഇറക്കുമതി ചെയ്യുന്നു...", - "pad.impexp.confirmimport": "ഒരു പ്രമാണം ഇറക്കുമതി ചെയ്യുന്നത് നിലവിലുള്ള എഴുത്തുകൾ നഷ്ടപ്പെടാനിടയാക്കും, തുടരണമെന്ന് ഉറപ്പാണോ?", - "pad.impexp.convertFailed": "ഈ പ്രമാണം ഇറക്കുമതി ചെയ്യാൻ സാധിച്ചില്ല. ദയവായി മറ്റൊരു ഡോക്യുമെന്റ് ഫോർമാറ്റ് ഉപയോഗിക്കുകയോ, സ്വന്തമായി പകർത്തി ചേർക്കുകയോ ചെയ്യുക", - "pad.impexp.uploadFailed": "അപ്‌‌ലോഡ് പരാജയപ്പെട്ടു. ദയവായി വീണ്ടും ശ്രമിക്കുക", - "pad.impexp.importfailed": "ഇറക്കുമതി പരാജയപ്പെട്ടു", - "pad.impexp.copypaste": "ദയവായി പകർത്തി ചേർക്കുക", - "pad.impexp.exportdisabled": "{{type}} ഫോർമാറ്റിൽ കയറ്റുമതി ചെയ്യുന്നത് തടഞ്ഞിരിക്കുന്നു. കൂടുതൽ വിവരങ്ങൾക്ക് താങ്കളുടെ സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്ററുമായി ബന്ധപ്പെടുക." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Akhilan", + "Clockery", + "Hrishikesh.kb", + "Praveenp", + "Santhosh.thottingal" + ] + }, + "index.newPad": "പുതിയ പാഡ്", + "index.createOpenPad": "അല്ലെങ്കിൽ പേരുപയോഗിച്ച് പാഡ് സൃഷ്ടിക്കുക/തുറക്കുക:", + "pad.toolbar.bold.title": "കടുപ്പത്തിലെഴുതുക (Ctrl-B)", + "pad.toolbar.italic.title": "ചെരിച്ചെഴുതുക (Ctrl-I)", + "pad.toolbar.underline.title": "അടിവരയിടുക (Ctrl-U)", + "pad.toolbar.strikethrough.title": "വെട്ടുക (Ctrl+5)", + "pad.toolbar.ol.title": "ക്രമത്തിലുള്ള പട്ടിക (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "ക്രമരഹിത പട്ടിക (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "വലത്തേക്ക് തള്ളുക (ടാബ്)", + "pad.toolbar.unindent.title": "ഇടത്തേക്ക് തള്ളുക (ഷിഫ്റ്റ്+ടാബ്)", + "pad.toolbar.undo.title": "തിരസ്കരിക്കുക (Ctrl-Z)", + "pad.toolbar.redo.title": "വീണ്ടും ചെയ്യുക (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "രചയിതാക്കൾക്കുള്ള നിറം കളയുക (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "വ്യത്യസ്ത ഫയൽ തരങ്ങളിലേക്ക്/തരങ്ങളിൽ നിന്ന് ഇറക്കുമതി/കയറ്റുമതി ചെയ്യുക", + "pad.toolbar.timeslider.title": "സമയരേഖ", + "pad.toolbar.savedRevision.title": "നാൾപ്പതിപ്പ് സേവ് ചെയ്യുക", + "pad.toolbar.settings.title": "സജ്ജീകരണങ്ങൾ", + "pad.toolbar.embed.title": "ഈ പാഡ് പങ്ക് വെയ്ക്കുക, എംബെഡ് ചെയ്യുക", + "pad.toolbar.showusers.title": "ഈ പാഡിലുള്ള ഉപയോക്താക്കളെ പ്രദർശിപ്പിക്കുക", + "pad.colorpicker.save": "സേവ് ചെയ്യുക", + "pad.colorpicker.cancel": "റദ്ദാക്കുക", + "pad.loading": "ശേഖരിക്കുന്നു...", + "pad.passwordRequired": "ഈ പാഡ് ഉപയോഗിക്കുന്നതിനായി ഒരു രഹസ്യവാക്ക് നൽകേണ്ടതാണ്", + "pad.permissionDenied": "ഈ പാഡ് കാണുവാൻ താങ്കൾക്ക് അനുമതിയില്ല", + "pad.wrongPassword": "താങ്കൾ നല്കിയ രഹസ്യവാക്ക് തെറ്റായിരുന്നു", + "pad.settings.padSettings": "പാഡ് സജ്ജീകരണങ്ങൾ", + "pad.settings.myView": "എന്റെ കാഴ്ച", + "pad.settings.stickychat": "തത്സമയസംവാദം എപ്പോഴും സ്ക്രീനിൽ കാണിക്കുക", + "pad.settings.colorcheck": "എഴുത്തുകാർക്കുള്ള നിറങ്ങൾ", + "pad.settings.linenocheck": "വരികളുടെ ക്രമസംഖ്യ", + "pad.settings.rtlcheck": "ഉള്ളടക്കം വലത്തുനിന്ന് ഇടത്തോട്ടാണോ വായിക്കേണ്ടത്?", + "pad.settings.fontType": "ഫോണ്ട് തരം:", + "pad.settings.fontType.normal": "സാധാരണം", + "pad.settings.fontType.monospaced": "മോണോസ്പേസ്", + "pad.settings.globalView": "മൊത്തക്കാഴ്ച", + "pad.settings.language": "ഭാഷ:", + "pad.importExport.import_export": "ഇറക്കുമതി/കയറ്റുമതി ചെയ്യുക", + "pad.importExport.import": "എന്തെങ്കിലും എഴുത്തു പ്രമാണമോ രേഖയോ അപ്‌ലോഡ് ചെയ്യുക", + "pad.importExport.importSuccessful": "വിജയകരം!", + "pad.importExport.export": "ഇപ്പോഴത്തെ പാഡ് ഇങ്ങനെ കയറ്റുമതി ചെയ്യുക:", + "pad.importExport.exporthtml": "എച്ച്.റ്റി.എം.എൽ.", + "pad.importExport.exportplain": "വെറും എഴുത്ത്", + "pad.importExport.exportword": "മൈക്രോസോഫ്റ്റ് വേഡ്", + "pad.importExport.exportpdf": "പി.ഡി.എഫ്.", + "pad.importExport.exportopen": "ഒ.ഡി.എഫ്. (ഓപ്പൺ ഡോക്യുമെന്റ് ഫോർമാറ്റ്)", + "pad.importExport.abiword.innerHTML": "പ്ലെയിൻ ടെക്സ്റ്റോ എച്ച്.റ്റി.എം.എൽ. തരമോ മാത്രമേ താങ്കൾക്ക് ഇറക്കുമതി ചെയ്യാനാവൂ. കൂടുതൽ വിപുലീകൃത ഇറക്കുമതി സൗകര്യങ്ങൾക്കായി ദയവായി അബിവേഡ് ഇൻസ്റ്റോൾ ചെയ്യുക.", + "pad.modals.connected": "ബന്ധിപ്പിച്ചിരിക്കുന്നു.", + "pad.modals.reconnecting": "താങ്കളുടെ പാഡിലേയ്ക്ക് വീണ്ടും ബന്ധിപ്പിക്കുന്നു...", + "pad.modals.forcereconnect": "എന്തായാലും ബന്ധിപ്പിക്കുക", + "pad.modals.userdup": "മറ്റൊരു ജാലകത്തിൽ തുറന്നിരിക്കുന്നു", + "pad.modals.userdup.explanation": "ഈ കമ്പ്യൂട്ടറിൽ ഈ പാഡ് ഒന്നിലധികം ബ്രൗസർ ജാലകങ്ങളിൽ തുറന്നതായി കാണുന്നു.", + "pad.modals.userdup.advice": "ഈ ജാലകം തന്നെ ഉപയോഗിക്കാനായി ബന്ധിപ്പിക്കുക", + "pad.modals.unauth": "അനുവാദമില്ല", + "pad.modals.unauth.explanation": "ഈ താൾ കണ്ടുകൊണ്ടിരിക്കെ താങ്കൾക്കുള്ള അനുമതികളിൽ മാറ്റമുണ്ടായി. വീണ്ടും ബന്ധപ്പെടാൻ ശ്രമിക്കുക.", + "pad.modals.looping.explanation": "സിംക്രണൈസേഷൻ സെർവറുമായുള്ള ആശയവിനിമയത്തിൽ പ്രശ്നങ്ങളുണ്ട്.", + "pad.modals.looping.cause": "ഒരുപക്ഷേ പൊരുത്തപ്പെടാത്ത ഫയർവാളിലൂടെയോ പ്രോക്സിയിലൂടെയോ ആകാം താങ്കൾ ബന്ധിച്ചിരുന്നത്.", + "pad.modals.initsocketfail": "സെർവറിലെത്താൻ പറ്റുന്നില്ല.", + "pad.modals.initsocketfail.explanation": "സിംക്രണൈസേഷൻ സെർവറുമായി ബന്ധപ്പെടാൻ കഴിഞ്ഞില്ല.", + "pad.modals.initsocketfail.cause": "താങ്കളുടെ ഇന്റർനെറ്റ് കണക്ഷന്റെയോ ബ്രൗസറിന്റെയോ പ്രശ്നമാകാം", + "pad.modals.slowcommit.explanation": "സെർവർ പ്രതികരിക്കുന്നില്ല.", + "pad.modals.slowcommit.cause": "നെറ്റ്‌വർക്ക് പ്രശ്നം കാരണമാകാം.", + "pad.modals.badChangeset.explanation": "താങ്കൾ ചെയ്ത ഒരു തിരുത്ത് സമീകരണ സെർവർ നയവിരുദ്ധമെന്ന് പെടുത്തിയിരിക്കുന്നു.", + "pad.modals.badChangeset.cause": "ഇത്, തെറ്റായ സെർവർ ക്രമീകരണം മൂലമോ മറ്റെന്തെങ്കിലും അപ്രതീക്ഷിത കാരണം കൊണ്ടോ ഉണ്ടായതായേക്കാം. ഇത് തെറ്റാണെന്ന് താങ്കൾക്ക് തോന്നുന്നുണ്ടെങ്കിൽ സേവന കാര്യനിർവാഹകയെ(നെ) താങ്കൾക്ക് സമീപിക്കാവുന്നതാണ്. തിരുത്തൽ തുടരാൻ വീണ്ടും ബദ്ധപ്പെടുക.", + "pad.modals.corruptPad.explanation": "താങ്കൾ എടുക്കാൻ ശ്രമിക്കുന്ന പാഡ് കേടാണ്.", + "pad.modals.corruptPad.cause": "ഇത്, തെറ്റായ സെർവർ ക്രമീകരണം മൂലമോ മറ്റെന്തെങ്കിലും അപ്രതീക്ഷിത കാരണം കൊണ്ടോ ഉണ്ടായതായേക്കാം. ദയവായി സേവന കാര്യനിർവാഹകയെ(നെ) സമീപിക്കുക.", + "pad.modals.deleted": "മായ്ച്ചു", + "pad.modals.deleted.explanation": "ഈ പാഡ് നീക്കം ചെയ്തു.", + "pad.modals.disconnected": "താങ്കൾ വേർപെട്ടിരിക്കുന്നു.", + "pad.modals.disconnected.explanation": "സെർവറുമായുള്ള ബന്ധം നഷ്ടപ്പെട്ടു", + "pad.modals.disconnected.cause": "സെർവർ ലഭ്യമല്ലായിരിക്കാം. ഇത് തുടർച്ചയായി സംഭവിക്കുന്നുണ്ടെങ്കിൽ ദയവായി സേവന കാര്യനിർവാഹകയെ(നെ) അറിയിക്കുക.", + "pad.share": "ഈ പാഡ് പങ്കിടുക", + "pad.share.readonly": "വായിക്കൽ മാത്രം", + "pad.share.link": "കണ്ണി", + "pad.share.emebdcode": "എംബെഡ് യു.ആർ.എൽ.", + "pad.chat": "തത്സമയസംവാദം", + "pad.chat.title": "ഈ പാഡിന്റെ തത്സമയസംവാദം തുറക്കുക.", + "pad.chat.loadmessages": "കൂടുതൽ സന്ദേശങ്ങൾ എടുക്കുക", + "timeslider.pageTitle": "{{appTitle}} സമയരേഖ", + "timeslider.toolbar.returnbutton": "പാഡിലേക്ക് മടങ്ങുക", + "timeslider.toolbar.authors": "രചയിതാക്കൾ:", + "timeslider.toolbar.authorsList": "ആരും എഴുതിയിട്ടില്ല", + "timeslider.toolbar.exportlink.title": "കയറ്റുമതി", + "timeslider.exportCurrent": "ഈ പതിപ്പ് ഇങ്ങനെ എടുക്കുക:", + "timeslider.version": "പതിപ്പ് {{version}}", + "timeslider.saved": "സേവ് ചെയ്തത് {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "ജനുവരി", + "timeslider.month.february": "ഫെബ്രുവരി", + "timeslider.month.march": "മാർച്ച്", + "timeslider.month.april": "ഏപ്രിൽ", + "timeslider.month.may": "മേയ്", + "timeslider.month.june": "ജൂൺ", + "timeslider.month.july": "ജൂലൈ", + "timeslider.month.august": "ഓഗസ്റ്റ്", + "timeslider.month.september": "സെപ്റ്റംബർ", + "timeslider.month.october": "ഒക്ടോബർ", + "timeslider.month.november": "നവംബർ", + "timeslider.month.december": "ഡിസംബർ", + "timeslider.unnamedauthors": "{{num}} പേരില്ലാത്ത {[plural(num) one: രചയിതാവ്, other: രചയിതാക്കൾ }}", + "pad.savedrevs.marked": "ഈ നാൾപ്പതിപ്പ് സേവ് ചെയ്തിട്ടുള്ള നാൾപ്പതിപ്പായി അടയാളപ്പെടുത്തിയിരിക്കുന്നു", + "pad.userlist.entername": "താങ്കളുടെ പേര് നൽകുക", + "pad.userlist.unnamed": "പേരില്ലാത്തവ", + "pad.userlist.guest": "അതിഥി", + "pad.userlist.deny": "നിരസിക്കുക", + "pad.userlist.approve": "അംഗീകരിക്കുക", + "pad.editbar.clearcolors": "ഡോക്യുമെന്റിൽ രചയിതാക്കളെ സൂചിപ്പിക്കാനായി നൽകിയിട്ടുള്ള നിറങ്ങൾ ഒഴിവാക്കട്ടെ?", + "pad.impexp.importbutton": "ഇറക്കുമതി ചെയ്യുക", + "pad.impexp.importing": "ഇറക്കുമതി ചെയ്യുന്നു...", + "pad.impexp.confirmimport": "ഒരു പ്രമാണം ഇറക്കുമതി ചെയ്യുന്നത് നിലവിലുള്ള എഴുത്തുകൾ നഷ്ടപ്പെടാനിടയാക്കും, തുടരണമെന്ന് ഉറപ്പാണോ?", + "pad.impexp.convertFailed": "ഈ പ്രമാണം ഇറക്കുമതി ചെയ്യാൻ സാധിച്ചില്ല. ദയവായി മറ്റൊരു ഡോക്യുമെന്റ് ഫോർമാറ്റ് ഉപയോഗിക്കുകയോ, സ്വന്തമായി പകർത്തി ചേർക്കുകയോ ചെയ്യുക", + "pad.impexp.uploadFailed": "അപ്‌‌ലോഡ് പരാജയപ്പെട്ടു. ദയവായി വീണ്ടും ശ്രമിക്കുക", + "pad.impexp.importfailed": "ഇറക്കുമതി പരാജയപ്പെട്ടു", + "pad.impexp.copypaste": "ദയവായി പകർത്തി ചേർക്കുക", + "pad.impexp.exportdisabled": "{{type}} ഫോർമാറ്റിൽ കയറ്റുമതി ചെയ്യുന്നത് തടഞ്ഞിരിക്കുന്നു. കൂടുതൽ വിവരങ്ങൾക്ക് താങ്കളുടെ സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്ററുമായി ബന്ധപ്പെടുക." +} diff --git a/sources/src/locales/mn.json b/sources/src/locales/mn.json new file mode 100755 index 0000000..4b418be --- /dev/null +++ b/sources/src/locales/mn.json @@ -0,0 +1,76 @@ +{ + "@metadata": { + "authors": [ + "MongolWiki", + "Wisdom" + ] + }, + "pad.toolbar.bold.title": "Болд тескт (Ctrl-B)", + "pad.toolbar.italic.title": "Налуу тескт (Ctrl-I)", + "pad.toolbar.underline.title": "Доогуур зураас (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Дундуураа зураастай", + "pad.toolbar.ol.title": "Эрэмбэлэгдсэн жагсаалт", + "pad.toolbar.ul.title": "Эрэмбэлээгүй жагсаалт", + "pad.toolbar.undo.title": "Буцаах (Ctrl-Z)", + "pad.toolbar.redo.title": "Undo -ын эсрэг (Ctrl-Y)", + "pad.toolbar.settings.title": "Тохиргоо", + "pad.colorpicker.save": "Хадгалах", + "pad.colorpicker.cancel": "Цуцлах", + "pad.loading": "Уншиж байна...", + "pad.settings.padSettings": "Падын тохиргоо", + "pad.settings.linenocheck": "Мөрийн дугаар", + "pad.settings.fontType": "Фонтын төрөл:", + "pad.settings.fontType.normal": "Ердийн", + "pad.settings.fontType.monospaced": "Зай ихтэй фонт", + "pad.settings.language": "Хэл:", + "pad.importExport.import_export": "Импорт/Экспорт", + "pad.importExport.import": "Бичвэр, текст файл оруулах", + "pad.importExport.importSuccessful": "Амжилттай!", + "pad.importExport.exportplain": "Цулгаа бичвэр", + "pad.importExport.exportpdf": "PDF файл", + "pad.importExport.exportopen": "ODF файл", + "pad.modals.connected": "Холбогдсон.", + "pad.modals.unauth": "Үл зөвшөөрөгдсөн", + "pad.modals.initsocketfail": "Сервер холбогдох боломжгүй.", + "pad.modals.slowcommit.explanation": "Сервер хариу өгөхгүй байна.", + "pad.modals.deleted": "Устгагдсан", + "pad.modals.deleted.explanation": "Энэ паб устсан байна.", + "pad.modals.disconnected": "Таны холболт салсан байна.", + "pad.modals.disconnected.explanation": "Серверын холболт салсан байна", + "pad.share": "Энэ падыг тараах", + "pad.share.readonly": "Зөвхөн унших", + "pad.share.link": "Холбоос", + "pad.share.emebdcode": "URL хавсаргах", + "pad.chat": "Чат", + "pad.chat.loadmessages": "Нэмэж мессеж оруулах", + "timeslider.toolbar.returnbutton": "Падруу буцах", + "timeslider.toolbar.authors": "Зохиогч:", + "timeslider.toolbar.authorsList": "Зохиогчгүй", + "timeslider.toolbar.exportlink.title": "Экспорт", + "timeslider.exportCurrent": "Энэ хувилбарыг экспортлохдоо:", + "timeslider.version": "Хувилбар {{version}}", + "timeslider.saved": "{{year}}-ы {{month}}-н {{day}}-нд да;галсан.", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Нэгдүгээр сар", + "timeslider.month.february": "Хоёрдугаар сар", + "timeslider.month.march": "Гуравдугаар сар", + "timeslider.month.april": "Дөрөвдүгээр сар", + "timeslider.month.may": "Тавдугаар сар", + "timeslider.month.june": "Зургаадугаар сар", + "timeslider.month.july": "Долоодугаар сар", + "timeslider.month.august": "Наймдугаар сар", + "timeslider.month.september": "Есдүгээр сар", + "timeslider.month.october": "Аравдугаар сар", + "timeslider.month.november": "Арваннэгдүгээр сар", + "timeslider.month.december": "Арванхоёрдугаар сар", + "pad.savedrevs.marked": "Энэ хувилбар хадгалагдаагүй байна", + "pad.userlist.entername": "Нэрээ бичнэ үү", + "pad.userlist.unnamed": "нэргүй", + "pad.userlist.guest": "Зочин", + "pad.userlist.deny": "Үл зөвшөөр", + "pad.userlist.approve": "Зөвшөөр", + "pad.impexp.importbutton": "Одоо импорт хий", + "pad.impexp.importing": "Импортлож байна...", + "pad.impexp.importfailed": "Импортлоход алдаа", + "pad.impexp.copypaste": "Хуулаад тавина уу" +} diff --git a/sources/src/locales/mr.json b/sources/src/locales/mr.json old mode 100644 new mode 100755 index df9368b..536b578 --- a/sources/src/locales/mr.json +++ b/sources/src/locales/mr.json @@ -1,57 +1,56 @@ { - "@metadata": { - "authors": [ - "Ganeshgiram", - "V.narsikar", - "Ydyashad" - ] - }, - "index.newPad": "नव पान", - "pad.toolbar.bold.title": "ठळक (Ctrl-B)", - "pad.toolbar.italic.title": "तिरपी मुद्राक्षरे (Ctrl-I)", - "pad.toolbar.underline.title": "अधोरेखन (Ctrl-U)", - "pad.toolbar.strikethrough.title": "अक्षरांवर काट", - "pad.toolbar.savedRevision.title": "आवृत्ती जतन करा", - "pad.toolbar.settings.title": "संरचना", - "pad.colorpicker.save": "जतन करा", - "pad.colorpicker.cancel": "रद्द करा", - "pad.loading": "प्रभारण करीत आहे", - "pad.wrongPassword": "आपला परवलीचा शब्द चूक होता", - "pad.settings.myView": "माझे दृश्य", - "pad.settings.linenocheck": "रेषांचे क्रमांक", - "pad.settings.language": "भाषा", - "pad.importExport.import_export": "आयात/निर्यात", - "pad.importExport.importSuccessful": "यशस्वी!", - "pad.importExport.exportplain": "साधा मजकूर", - "pad.importExport.exportword": "मायक्रोसॉफ्ट वर्ड", - "pad.importExport.exportpdf": "पीडीएफ", - "pad.importExport.exportopen": "ओडीएफ(ओपन डॉक्यूमेंट फॉरमॅट)", - "pad.importExport.exportdokuwiki": "डुकुविकि", - "pad.modals.connected": "अनुबंधित", - "pad.modals.initsocketfail": "विदागारास पोच नाही.", - "pad.modals.deleted": "वगळले.", - "pad.modals.disconnected.cause": "बहुतेक सरवर उपलब्ध होणार नाही। अस वारंवार झाल्यास कृपया आम्हाला कळवा।", - "pad.share.link": "दुवा", - "pad.chat": "गप्पा", - "timeslider.toolbar.authorsList": "लेखक नाही", - "timeslider.month.january": "जानेवारी", - "timeslider.month.february": "फेब्रुवारी", - "timeslider.month.march": "मार्च", - "timeslider.month.april": "एप्रिल", - "timeslider.month.may": "मे", - "timeslider.month.june": "जून", - "timeslider.month.july": "जुलै", - "timeslider.month.august": "ऑगस्ट", - "timeslider.month.september": "सप्टेंबर", - "timeslider.month.october": "ऑक्टोबर", - "timeslider.month.november": "नोव्हेंबर", - "timeslider.month.december": "डिसेंबर", - "pad.userlist.entername": "आपले नाव टाका", - "pad.userlist.unnamed": "निनावी", - "pad.userlist.guest": "पाहूणा", - "pad.userlist.approve": "मंजूर करा", - "pad.impexp.importbutton": "आता आयात करा", - "pad.impexp.importing": "आयात करीत आहे...", - "pad.impexp.importfailed": "आयात अयशस्वी", - "pad.impexp.copypaste": "कृपया नकल-डकवा" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Ganeshgiram", + "V.narsikar", + "Ydyashad" + ] + }, + "index.newPad": "नव पान", + "pad.toolbar.bold.title": "ठळक (Ctrl-B)", + "pad.toolbar.italic.title": "तिरपी मुद्राक्षरे (Ctrl-I)", + "pad.toolbar.underline.title": "अधोरेखन (Ctrl-U)", + "pad.toolbar.strikethrough.title": "अक्षरांवर काट", + "pad.toolbar.savedRevision.title": "आवृत्ती जतन करा", + "pad.toolbar.settings.title": "संरचना", + "pad.colorpicker.save": "जतन करा", + "pad.colorpicker.cancel": "रद्द करा", + "pad.loading": "प्रभारण करीत आहे", + "pad.wrongPassword": "आपला परवलीचा शब्द चूक होता", + "pad.settings.myView": "माझे दृश्य", + "pad.settings.linenocheck": "रेषांचे क्रमांक", + "pad.settings.language": "भाषा", + "pad.importExport.import_export": "आयात/निर्यात", + "pad.importExport.importSuccessful": "यशस्वी!", + "pad.importExport.exportplain": "साधा मजकूर", + "pad.importExport.exportword": "मायक्रोसॉफ्ट वर्ड", + "pad.importExport.exportpdf": "पीडीएफ", + "pad.importExport.exportopen": "ओडीएफ(ओपन डॉक्यूमेंट फॉरमॅट)", + "pad.modals.connected": "अनुबंधित", + "pad.modals.initsocketfail": "विदागारास पोच नाही.", + "pad.modals.deleted": "वगळले.", + "pad.modals.disconnected.cause": "बहुतेक सरवर उपलब्ध होणार नाही। अस वारंवार झाल्यास कृपया आम्हाला कळवा।", + "pad.share.link": "दुवा", + "pad.chat": "गप्पा", + "timeslider.toolbar.authorsList": "लेखक नाही", + "timeslider.month.january": "जानेवारी", + "timeslider.month.february": "फेब्रुवारी", + "timeslider.month.march": "मार्च", + "timeslider.month.april": "एप्रिल", + "timeslider.month.may": "मे", + "timeslider.month.june": "जून", + "timeslider.month.july": "जुलै", + "timeslider.month.august": "ऑगस्ट", + "timeslider.month.september": "सप्टेंबर", + "timeslider.month.october": "ऑक्टोबर", + "timeslider.month.november": "नोव्हेंबर", + "timeslider.month.december": "डिसेंबर", + "pad.userlist.entername": "आपले नाव टाका", + "pad.userlist.unnamed": "निनावी", + "pad.userlist.guest": "पाहूणा", + "pad.userlist.approve": "मंजूर करा", + "pad.impexp.importbutton": "आता आयात करा", + "pad.impexp.importing": "आयात करीत आहे...", + "pad.impexp.importfailed": "आयात अयशस्वी", + "pad.impexp.copypaste": "कृपया नकल-डकवा" +} diff --git a/sources/src/locales/ms.json b/sources/src/locales/ms.json old mode 100644 new mode 100755 index 1204e47..d099de0 --- a/sources/src/locales/ms.json +++ b/sources/src/locales/ms.json @@ -1,122 +1,124 @@ { - "@metadata": { - "authors": [ - "Anakmalaysia" - ] - }, - "index.newPad": "Pad baru", - "index.createOpenPad": "atau cipta/buka Pad yang bernama:", - "pad.toolbar.bold.title": "Tebal (Ctrl-B)", - "pad.toolbar.italic.title": "Miring (Ctrl-I)", - "pad.toolbar.underline.title": "Garis bawah (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Garis lorek", - "pad.toolbar.ol.title": "Senarai tertib", - "pad.toolbar.ul.title": "Senarai tak tertib", - "pad.toolbar.indent.title": "Engsot ke dalam (TAB)", - "pad.toolbar.unindent.title": "Engsot ke luar (Shift + TAB)", - "pad.toolbar.undo.title": "Buat asal (Ctrl-Z)", - "pad.toolbar.redo.title": "Buat semula (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Padamkan Warna Pengarang", - "pad.toolbar.import_export.title": "Import/Eksport dari/ke format-format fail berbeza", - "pad.toolbar.timeslider.title": "Gelangsar masa", - "pad.toolbar.savedRevision.title": "Simpan Semakan", - "pad.toolbar.settings.title": "Tetapan", - "pad.toolbar.embed.title": "Kongsikan dan Terapkan pad ini", - "pad.toolbar.showusers.title": "Tunjukkan pengguna pada pad ini", - "pad.colorpicker.save": "Simpan", - "pad.colorpicker.cancel": "Batalkan", - "pad.loading": "Sedang dimuatkan...", - "pad.passwordRequired": "Anda memerlukan kata laluan untuk mengakses pad ini", - "pad.permissionDenied": "Anda tiada kebenaran untuk mengakses pad ini", - "pad.wrongPassword": "Kata laluan anda salah", - "pad.settings.padSettings": "Tetapan Pad", - "pad.settings.myView": "Paparan Saya", - "pad.settings.stickychat": "Sentiasa bersembang pada skrin", - "pad.settings.colorcheck": "Warna pengarang", - "pad.settings.linenocheck": "Nombor baris", - "pad.settings.rtlcheck": "Membaca dari kanan ke kiri?", - "pad.settings.fontType": "Jenis fon:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Paparan Sejagat", - "pad.settings.language": "Bahasa:", - "pad.importExport.import_export": "Import/Eksport", - "pad.importExport.import": "Muat naik sebarang fail teks atau dokumen", - "pad.importExport.importSuccessful": "Berjaya!", - "pad.importExport.export": "Eksport pad semasa sebagai:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Teks biasa", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Anda hanya boleh mengimport dari format teks biasa atau html. Untuk ciri-ciri import yang lebih maju, sila \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Ememasang abiword\u003C/a\u003E.", - "pad.modals.connected": "Bersambung.", - "pad.modals.reconnecting": "Bersambung semula dengan pad anda...", - "pad.modals.forcereconnect": "Sambung semula secara paksa", - "pad.modals.userdup": "Dibuka di tetingkap lain", - "pad.modals.userdup.explanation": "Pad ini nampaknya telah dibuka di lebih daripada satu tetingkap pelayar pada komputer ini.", - "pad.modals.userdup.advice": "Sambung semula untuk menggunakan tetingkap ini pula.", - "pad.modals.unauth": "Tidak dibenarkan", - "pad.modals.unauth.explanation": "Kebenaran anda telah berubah sewaktu memaparkan halaman ini. Cuba bersambung semula.", - "pad.modals.looping.explanation": "Terdapat masalah komunikasi dengan pelayan penyegerakan.", - "pad.modals.looping.cause": "Mungkin anda telah bersambung melalui tembok api atau proksi yang tidak serasi.", - "pad.modals.initsocketfail": "Pelayan tidak boleh dicapai.", - "pad.modals.initsocketfail.explanation": "Tidak dapat bersambung dengan pelayar penyegerakan.", - "pad.modals.initsocketfail.cause": "Ini mungkin disebabkan oleh masalah dengan pelayar atau sambungan internet anda.", - "pad.modals.slowcommit.explanation": "Pelayan tidak membalas.", - "pad.modals.slowcommit.cause": "Ini mungkin disebabkan oleh masalah dengan kesambungan rangkaian anda.", - "pad.modals.badChangeset.explanation": "Suntingan yang telah anda lakukan telah dikira sebagai terlarang oleh pelayan penyegerakan.", - "pad.modals.badChangeset.cause": "Ini mungkin disebabkan oleh konfigurasi pelayan salah atau sesuatu kelakuan yang tidak dijangka. Sila hubungi penyelia servis anda jika anda merasakan ini adalah satu kesilapan. Cuba sambungkan semula talian untuk terus menyuntung.", - "pad.modals.corruptPad.explanation": "Pad yang anda cuba akses itu telah tercemar.", - "pad.modals.corruptPad.cause": "Ini mungkin disebabkan oleh konfigurasi pelayan salah atau sesuatu kelakuan yang tidak dijangka. Sila hubungi penyelia servis anda.", - "pad.modals.deleted": "Dihapuskan.", - "pad.modals.deleted.explanation": "Pad ini telah dibuang.", - "pad.modals.disconnected": "Sambungan anda telah diputuskan.", - "pad.modals.disconnected.explanation": "Sambungan ke pelayan terputus", - "pad.modals.disconnected.cause": "Pelayan mungkin tidak dapat dicapai. Sila beritahu penyelia servis jika masalah ini berterusan.", - "pad.share": "Kongsikan pad ini", - "pad.share.readonly": "Baca sahaja", - "pad.share.link": "Pautan", - "pad.share.emebdcode": "Benamkan URL", - "pad.chat": "Sembang", - "pad.chat.title": "Buka ruang sembang untuk pad ini.", - "pad.chat.loadmessages": "Muatkan banyak lagi pesanan", - "timeslider.pageTitle": "Gelangsar Masa {{appTitle}}", - "timeslider.toolbar.returnbutton": "Kembali ke pad", - "timeslider.toolbar.authors": "Pengarang:", - "timeslider.toolbar.authorsList": "Tiada Pengarang", - "timeslider.toolbar.exportlink.title": "Eksport", - "timeslider.exportCurrent": "Eksport versi semasa sebagai:", - "timeslider.version": "Versi {{version}}", - "timeslider.saved": "Disimpan pada {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januari", - "timeslider.month.february": "Februari", - "timeslider.month.march": "Mac", - "timeslider.month.april": "April", - "timeslider.month.may": "Mei", - "timeslider.month.june": "Jun", - "timeslider.month.july": "Julai", - "timeslider.month.august": "Ogos", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "Disember", - "timeslider.unnamedauthors": "{{num}} orang {[plural(num) other: pengarang]} awanama", - "pad.savedrevs.marked": "Semakan ini telah ditandai sebagai semakan tersimpan", - "pad.userlist.entername": "Taipkan nama anda", - "pad.userlist.unnamed": "tanpa nama", - "pad.userlist.guest": "Tetamu", - "pad.userlist.deny": "Tolak", - "pad.userlist.approve": "Terima", - "pad.editbar.clearcolors": "Padamkan warna pengarang pada seluruh dokumen?", - "pad.impexp.importbutton": "Import Sekarang", - "pad.impexp.importing": "Sedang mengimport...", - "pad.impexp.confirmimport": "Mengimport fail akan menulis ganti teks semasa pada pad ini. Adakah anda benar-benar ingin teruskan?", - "pad.impexp.convertFailed": "Fail tidak dapat diimport. Sila gunakan format dokumen yang lain atau salin tampal secara manual", - "pad.impexp.uploadFailed": "Muat naik gagal, sila cuba lagi", - "pad.impexp.importfailed": "Import gagal", - "pad.impexp.copypaste": "Sila salin tampal", - "pad.impexp.exportdisabled": "Mengeksport dalam format {{type}} dilarang. Sila hubungi pentadbir sistem anda untuk keterangan lanjut." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Anakmalaysia" + ] + }, + "index.newPad": "Pad baru", + "index.createOpenPad": "atau cipta/buka Pad yang bernama:", + "pad.toolbar.bold.title": "Tebal (Ctrl-B)", + "pad.toolbar.italic.title": "Miring (Ctrl-I)", + "pad.toolbar.underline.title": "Garis bawah (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Garis lorek (Ctrl+5)", + "pad.toolbar.ol.title": "Senarai tertib (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Senarai tak tertib (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Engsot ke dalam (TAB)", + "pad.toolbar.unindent.title": "Engsot ke luar (Shift + TAB)", + "pad.toolbar.undo.title": "Buat asal (Ctrl-Z)", + "pad.toolbar.redo.title": "Buat semula (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Padamkan Warna Pengarang (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Import/Eksport dari/ke format-format fail berbeza", + "pad.toolbar.timeslider.title": "Gelangsar masa", + "pad.toolbar.savedRevision.title": "Simpan Semakan", + "pad.toolbar.settings.title": "Tetapan", + "pad.toolbar.embed.title": "Kongsikan dan Terapkan pad ini", + "pad.toolbar.showusers.title": "Tunjukkan pengguna pada pad ini", + "pad.colorpicker.save": "Simpan", + "pad.colorpicker.cancel": "Batalkan", + "pad.loading": "Sedang dimuatkan...", + "pad.noCookie": "Cookie tidak dapat dijumpai. Tolong benarkan cookie dalam pelayar anda!", + "pad.passwordRequired": "Anda memerlukan kata laluan untuk mengakses pad ini", + "pad.permissionDenied": "Anda tiada kebenaran untuk mengakses pad ini", + "pad.wrongPassword": "Kata laluan anda salah", + "pad.settings.padSettings": "Tetapan Pad", + "pad.settings.myView": "Paparan Saya", + "pad.settings.stickychat": "Sentiasa bersembang pada skrin", + "pad.settings.colorcheck": "Warna pengarang", + "pad.settings.linenocheck": "Nombor baris", + "pad.settings.rtlcheck": "Membaca dari kanan ke kiri?", + "pad.settings.fontType": "Jenis fon:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Paparan Sejagat", + "pad.settings.language": "Bahasa:", + "pad.importExport.import_export": "Import/Eksport", + "pad.importExport.import": "Muat naik sebarang fail teks atau dokumen", + "pad.importExport.importSuccessful": "Berjaya!", + "pad.importExport.export": "Eksport pad semasa sebagai:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Teks biasa", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Anda hanya boleh mengimport dari format teks biasa atau html. Untuk ciri-ciri import yang lebih maju, sila memasang abiword.", + "pad.modals.connected": "Bersambung.", + "pad.modals.reconnecting": "Bersambung semula dengan pad anda...", + "pad.modals.forcereconnect": "Sambung semula secara paksa", + "pad.modals.userdup": "Dibuka di tetingkap lain", + "pad.modals.userdup.explanation": "Pad ini nampaknya telah dibuka di lebih daripada satu tetingkap pelayar pada komputer ini.", + "pad.modals.userdup.advice": "Sambung semula untuk menggunakan tetingkap ini pula.", + "pad.modals.unauth": "Tidak dibenarkan", + "pad.modals.unauth.explanation": "Kebenaran anda telah berubah sewaktu memaparkan halaman ini. Cuba bersambung semula.", + "pad.modals.looping.explanation": "Terdapat masalah komunikasi dengan pelayan penyegerakan.", + "pad.modals.looping.cause": "Mungkin anda telah bersambung melalui tembok api atau proksi yang tidak serasi.", + "pad.modals.initsocketfail": "Pelayan tidak boleh dicapai.", + "pad.modals.initsocketfail.explanation": "Tidak dapat bersambung dengan pelayar penyegerakan.", + "pad.modals.initsocketfail.cause": "Ini mungkin disebabkan oleh masalah dengan pelayar atau sambungan internet anda.", + "pad.modals.slowcommit.explanation": "Pelayan tidak membalas.", + "pad.modals.slowcommit.cause": "Ini mungkin disebabkan oleh masalah dengan kesambungan rangkaian anda.", + "pad.modals.badChangeset.explanation": "Suntingan yang telah anda lakukan telah dikira sebagai terlarang oleh pelayan penyegerakan.", + "pad.modals.badChangeset.cause": "Ini mungkin disebabkan oleh konfigurasi pelayan salah atau sesuatu kelakuan yang tidak dijangka. Sila hubungi penyelia servis anda jika anda merasakan ini adalah satu kesilapan. Cuba sambungkan semula talian untuk terus menyuntung.", + "pad.modals.corruptPad.explanation": "Pad yang anda cuba akses itu telah tercemar.", + "pad.modals.corruptPad.cause": "Ini mungkin disebabkan oleh konfigurasi pelayan salah atau sesuatu kelakuan yang tidak dijangka. Sila hubungi penyelia servis anda.", + "pad.modals.deleted": "Dihapuskan.", + "pad.modals.deleted.explanation": "Pad ini telah dibuang.", + "pad.modals.disconnected": "Sambungan anda telah diputuskan.", + "pad.modals.disconnected.explanation": "Sambungan ke pelayan terputus", + "pad.modals.disconnected.cause": "Pelayan mungkin tidak dapat dicapai. Sila beritahu penyelia servis jika masalah ini berterusan.", + "pad.share": "Kongsikan pad ini", + "pad.share.readonly": "Baca sahaja", + "pad.share.link": "Pautan", + "pad.share.emebdcode": "Benamkan URL", + "pad.chat": "Sembang", + "pad.chat.title": "Buka ruang sembang untuk pad ini.", + "pad.chat.loadmessages": "Muatkan banyak lagi pesanan", + "timeslider.pageTitle": "Gelangsar Masa {{appTitle}}", + "timeslider.toolbar.returnbutton": "Kembali ke pad", + "timeslider.toolbar.authors": "Pengarang:", + "timeslider.toolbar.authorsList": "Tiada Pengarang", + "timeslider.toolbar.exportlink.title": "Eksport", + "timeslider.exportCurrent": "Eksport versi semasa sebagai:", + "timeslider.version": "Versi {{version}}", + "timeslider.saved": "Disimpan pada {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januari", + "timeslider.month.february": "Februari", + "timeslider.month.march": "Mac", + "timeslider.month.april": "April", + "timeslider.month.may": "Mei", + "timeslider.month.june": "Jun", + "timeslider.month.july": "Julai", + "timeslider.month.august": "Ogos", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Disember", + "timeslider.unnamedauthors": "{{num}} orang {[plural(num) other: pengarang]} awanama", + "pad.savedrevs.marked": "Semakan ini telah ditandai sebagai semakan tersimpan", + "pad.userlist.entername": "Taipkan nama anda", + "pad.userlist.unnamed": "tanpa nama", + "pad.userlist.guest": "Tetamu", + "pad.userlist.deny": "Tolak", + "pad.userlist.approve": "Terima", + "pad.editbar.clearcolors": "Padamkan warna pengarang pada seluruh dokumen?", + "pad.impexp.importbutton": "Import Sekarang", + "pad.impexp.importing": "Sedang mengimport...", + "pad.impexp.confirmimport": "Mengimport fail akan menulis ganti teks semasa pada pad ini. Adakah anda benar-benar ingin teruskan?", + "pad.impexp.convertFailed": "Fail tidak dapat diimport. Sila gunakan format dokumen yang lain atau salin tampal secara manual", + "pad.impexp.padHasData": "Kami tidak dapat mengimport fail ini kerana Pad ini sudah mengalami perubahan. Sila import ke pad yang baru", + "pad.impexp.uploadFailed": "Muat naik gagal, sila cuba lagi", + "pad.impexp.importfailed": "Import gagal", + "pad.impexp.copypaste": "Sila salin tampal", + "pad.impexp.exportdisabled": "Mengeksport dalam format {{type}} dilarang. Sila hubungi pentadbir sistem anda untuk keterangan lanjut." +} diff --git a/sources/src/locales/nap.json b/sources/src/locales/nap.json new file mode 100755 index 0000000..6cd1651 --- /dev/null +++ b/sources/src/locales/nap.json @@ -0,0 +1,106 @@ +{ + "@metadata": { + "authors": [ + "Chelin", + "C.R." + ] + }, + "index.newPad": "Novo Pad", + "index.createOpenPad": "o crià o apre nu Pad cu 'o nomme:", + "pad.toolbar.bold.title": "Grassetto (Ctrl-B)", + "pad.toolbar.italic.title": "Cursivo (Ctrl-I)", + "pad.toolbar.underline.title": "Sottolineato (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Barrato (Ctrl+5)", + "pad.toolbar.ol.title": "Ennece nummerato (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Ennece puntato (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Rientro (TAB)", + "pad.toolbar.unindent.title": "Riduce rientro (Shift+TAB)", + "pad.toolbar.undo.title": "Annulla (Ctrl-Z)", + "pad.toolbar.redo.title": "Ripete (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Elimina 'e culure ca 'ndicanno 'e auture (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "'Mporta/esporta 'e/a diverse furmate 'e file", + "pad.toolbar.timeslider.title": "Presentazzione cronologgia", + "pad.toolbar.savedRevision.title": "Sarva revisione", + "pad.toolbar.settings.title": "Mpustaziune", + "pad.toolbar.embed.title": "Sparte e nzerta stu Pad", + "pad.toolbar.showusers.title": "Mmusta ll'utente ncopp'a stu Pad", + "pad.colorpicker.save": "Sarva", + "pad.colorpicker.cancel": "Canciella", + "pad.loading": "Carecamiento 'n curso…", + "pad.noCookie": "Cookie nun truvata. Pe' piacere premmettete 'e cookies dint' 'o navigatóre vuosto!", + "pad.passwordRequired": "Pe' accede a chisto Pad è necessaria 'na password", + "pad.permissionDenied": "Nun se dispunne d\"e permisse necessare pe' accede a chisto Pad", + "pad.wrongPassword": "'A password è sbagliata", + "pad.settings.padSettings": "Mpostazzione d\"o pad", + "pad.settings.myView": "Mia Veruta", + "pad.settings.stickychat": "Chat sempe ncopp' 'o schermo", + "pad.settings.colorcheck": "Auturevolezza pe' culure", + "pad.settings.linenocheck": "Nummere 'e riga", + "pad.settings.rtlcheck": "Lieggere 'e cuntenute 'a destra a smerza?", + "pad.settings.fontType": "Tipo 'e funte:", + "pad.settings.fontType.normal": "Nurmale", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Visualizzazione globbale", + "pad.settings.language": "Llengua:", + "pad.importExport.import_export": "Mpurtaziune/sportaziune", + "pad.importExport.import": "Carreca coccherunto testo o documento", + "pad.importExport.importSuccessful": "Ngarrata!", + "pad.importExport.export": "Sportà stu Pad comme:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Testo nurmale", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Putite surtanto mpurtà testo chiano o furmatte HTML. Pe n'avé sisteme cchiù annanze 'e mpurtazione pe' piacere installate Abiword.", + "pad.modals.connected": "Cunnesso.", + "pad.modals.reconnecting": "Ricunnessione ô pad 'n curso...", + "pad.modals.forcereconnect": "Forza 'a ricunnessione", + "pad.modals.userdup": "Aprito 'n n'ata fenesta", + "pad.modals.userdup.explanation": "Stu Pad pare fosse araputo dint'a cchiù 'e na fenesta 'e navigatore dint'a stu computer.", + "pad.modals.userdup.advice": "Riconnettateve pe' putè ausà mmece sta fenesta.", + "pad.modals.unauth": "Nun autorizzato", + "pad.modals.unauth.explanation": "'E premmesse vuoste so' cagnate pe' tramente ca se vereva sta paggena. Tentate 'e ve riconnettà.", + "pad.modals.looping.explanation": "Ce stanno probbleme 'e comunicazione c' 'o server 'e sincronizzaziona.", + "pad.modals.looping.cause": "Può darse ca ve site cullegato pe' mmiez' 'e nu firewall incompatibbele o proxy.", + "pad.modals.initsocketfail": "Nun se può arrevà 'o server.", + "pad.modals.initsocketfail.explanation": "Nun se può cunnettà 'o server e sincronizzaziona.", + "pad.modals.initsocketfail.cause": "Stu fatto è succiesso, probabbilmente pe' bbìa 'e nu probblema c' 'o navigatóre 'o ll'internet.", + "pad.modals.slowcommit.explanation": "'O server nun risponne.", + "pad.modals.slowcommit.cause": "Stu fatto può darse ca è causato pe' bbìa 'e prubbleme 'e connettività 'e rezza.", + "pad.modals.badChangeset.explanation": "Nu cagnamento ca stavate facenno è stato classeficato comme illegale p' 'o server 'e sincronizzaziona.", + "pad.modals.badChangeset.cause": "Chistu fatto può darse ca è causato pe' bbìa 'e na mpustazione errata d' 'o server o cocch'atu comportamento nun preveduto. Pe' piacere cuntattate l'ammenistratore d' 'o servizio, si se pienza ca chist'è n'errore. Tentate a ve riconnettà pe' cuntinuà 'a edità.", + "pad.modals.corruptPad.explanation": "'O pad addò vulevate trasì è scassato.", + "pad.modals.deleted": "Canciellato.", + "pad.share.link": "Jonta", + "pad.chat": "Chiàcchiera", + "timeslider.pageTitle": "Cronologgia {{appTitle}}", + "timeslider.toolbar.returnbutton": "Ritorna ô Pad", + "timeslider.toolbar.authors": "Auture:", + "timeslider.toolbar.authorsList": "Nisciun autore", + "timeslider.toolbar.exportlink.title": "Espurta", + "timeslider.exportCurrent": "Espurta 'a verzione corrente comme:", + "timeslider.version": "Verzione {{version}}", + "timeslider.saved": "Sarvato {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Jennaro", + "timeslider.month.february": "Frevaro", + "timeslider.month.march": "Màrzo", + "timeslider.month.april": "Abbrile", + "timeslider.month.may": "Màjo", + "timeslider.month.june": "Giùgno", + "timeslider.month.july": "Luglio", + "timeslider.month.august": "Aùsto", + "timeslider.month.september": "Settembre", + "timeslider.month.october": "Ottovre", + "timeslider.month.november": "Nuvembre", + "timeslider.month.december": "Dicembre", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autore, other: auture ]} senza nomme", + "pad.userlist.entername": "'Nserisce 'o tujo nomme", + "pad.userlist.unnamed": "senza nomme", + "pad.userlist.guest": "Ospite", + "pad.userlist.deny": "Nega", + "pad.userlist.approve": "Appruva", + "pad.impexp.importbutton": "'Mpurta mmo", + "pad.impexp.importing": "'Mpurtazzione 'n curso..." +} diff --git a/sources/src/locales/nb.json b/sources/src/locales/nb.json old mode 100644 new mode 100755 index 3e45e53..a1b3a5c --- a/sources/src/locales/nb.json +++ b/sources/src/locales/nb.json @@ -1,118 +1,122 @@ { - "@metadata": { - "authors": [ - "Laaknor" - ] - }, - "index.newPad": "Ny Pad", - "index.createOpenPad": "eller opprette/åpne en ny Pad med dette navnet:", - "pad.toolbar.bold.title": "Fet (Ctrl-B)", - "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", - "pad.toolbar.underline.title": "Understreking (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Gjennomstreking", - "pad.toolbar.ol.title": "Nummerert liste", - "pad.toolbar.ul.title": "Punktliste", - "pad.toolbar.indent.title": "Innrykk", - "pad.toolbar.unindent.title": "Rykk ut", - "pad.toolbar.undo.title": "Angre (Ctrl-Z)", - "pad.toolbar.redo.title": "Gjør omigjen (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Fjern forfatterfarger", - "pad.toolbar.import_export.title": "Importer/eksporter fra/til forskjellige filformater", - "pad.toolbar.timeslider.title": "Tidslinje", - "pad.toolbar.savedRevision.title": "Lagre revisjoner", - "pad.toolbar.settings.title": "Innstillinger", - "pad.toolbar.embed.title": "Bygg inn denne padden", - "pad.toolbar.showusers.title": "Vis brukerne av denne padden", - "pad.colorpicker.save": "Lagre", - "pad.colorpicker.cancel": "Avbryt", - "pad.loading": "Laster inn...", - "pad.passwordRequired": "Du trenger et passord for å få tilgang til denne padden", - "pad.permissionDenied": "Du har ikke tilgang til denne padden", - "pad.wrongPassword": "Feil passord", - "pad.settings.padSettings": "Padinnstillinger", - "pad.settings.myView": "Min visning", - "pad.settings.stickychat": "Chat alltid synlig", - "pad.settings.colorcheck": "Forfatterfarger", - "pad.settings.linenocheck": "Linjenummer", - "pad.settings.rtlcheck": "Les innhold fra høyre til venstre?", - "pad.settings.fontType": "Skrifttype:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Fast bredde", - "pad.settings.globalView": "Global visning", - "pad.settings.language": "Språk:", - "pad.importExport.import_export": "Importer/eksporter", - "pad.importExport.import": "Last opp tekstfil eller dokument", - "pad.importExport.importSuccessful": "Vellykket!", - "pad.importExport.export": "Eksporter padden som:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Ren tekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Du kan bare importere fra ren tekst eller HTML-formater. For mer avanserte importfunksjoner, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstaller abiword\u003C/a\u003E.", - "pad.modals.connected": "Tilkoblet.", - "pad.modals.reconnecting": "Kobler til din pad på nytt...", - "pad.modals.forcereconnect": "Tving gjenoppkobling", - "pad.modals.userdup": "Åpnet i nytt vindu", - "pad.modals.userdup.explanation": "Denne padden ser ut til å være åpnet i mer enn et nettleservindu på denne maskinen.", - "pad.modals.userdup.advice": "Koble til igjen for å bruke dette vinduet i stedenfor.", - "pad.modals.unauth": "Ikke tillatt", - "pad.modals.unauth.explanation": "Dine rettigheter har blitt endret mens du så på denne siden. Prøv å koble til på nytt", - "pad.modals.looping.explanation": "Det er kommunikasjonsproblemer med synkroniseringsserveren.", - "pad.modals.looping.cause": "Kanskje du koblet til en inkompatibel brannmur eller mellomtjener", - "pad.modals.initsocketfail": "Serveren er utilgjengelig", - "pad.modals.initsocketfail.explanation": "Kunne ikke koble til synkroniseringsserveren.", - "pad.modals.initsocketfail.cause": "Dette er sannsynligvis på grunn av et problem med nettleseren eller din internettoppkobling", - "pad.modals.slowcommit.explanation": "Serveren svarer ikke.", - "pad.modals.slowcommit.cause": "Dette kan være et problem med nettverkstilkoblingen", - "pad.modals.deleted": "Slettet.", - "pad.modals.deleted.explanation": "Denne padden har blitt fjernet", - "pad.modals.disconnected": "Du har blitt frakoblet.", - "pad.modals.disconnected.explanation": "Mistet tilkobling til serveren.", - "pad.modals.disconnected.cause": "Serveren kan være utilgjengelig. Vennligst si i fra til oss hvis dette fortsetter å skje", - "pad.share": "Del denne padden", - "pad.share.readonly": "Skrivebeskyttet", - "pad.share.link": "Lenke", - "pad.share.emebdcode": "URL for innbygging", - "pad.chat": "Chat", - "pad.chat.title": "Åpne chatten for denne padden.", - "pad.chat.loadmessages": "Last flere beskjeder", - "timeslider.pageTitle": "{{appTitle}} Tidslinje", - "timeslider.toolbar.returnbutton": "Gå tilbake til pad", - "timeslider.toolbar.authors": "Forfattere:", - "timeslider.toolbar.authorsList": "Ingen forfattere", - "timeslider.toolbar.exportlink.title": "Eksporter", - "timeslider.exportCurrent": "Eksporter nåværende versjon som:", - "timeslider.version": "Versjon {{version}}", - "timeslider.saved": "Lagret {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januar", - "timeslider.month.february": "februar", - "timeslider.month.march": "mars", - "timeslider.month.april": "april", - "timeslider.month.may": "mai", - "timeslider.month.june": "juni", - "timeslider.month.july": "juli", - "timeslider.month.august": "august", - "timeslider.month.september": "september", - "timeslider.month.october": "oktober", - "timeslider.month.november": "november", - "timeslider.month.december": "desember", - "timeslider.unnamedauthors": "{{num}} navnløse forfattere", - "pad.savedrevs.marked": "Denne revisjonen er nå markert som en lagret revisjon", - "pad.userlist.entername": "Skriv inn ditt navn", - "pad.userlist.unnamed": "navnløs", - "pad.userlist.guest": "Gjest", - "pad.userlist.deny": "Nekt", - "pad.userlist.approve": "Godkjenn", - "pad.editbar.clearcolors": "Fjern forfatterfarger på hele dokumentet?", - "pad.impexp.importbutton": "Importer nå", - "pad.impexp.importing": "Importerer...", - "pad.impexp.confirmimport": "Importering av en fil vil overskrive den nåværende teksten på padden. Er du sikker på at du vil fortsette?", - "pad.impexp.convertFailed": "Vi greide ikke å importere denne filen. Bruk et annet dokumentformat eller kopier og lim inn teksten manuelt", - "pad.impexp.uploadFailed": "Opplastning feilet. Prøv igjen", - "pad.impexp.importfailed": "Import feilet", - "pad.impexp.copypaste": "Vennligst kopier og lim inn", - "pad.impexp.exportdisabled": "Eksporterer som {{type}} er deaktivert. Vennligst kontakt din systemadministrator for detaljer." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Laaknor", + "Cocu" + ] + }, + "index.newPad": "Ny Pad", + "index.createOpenPad": "eller opprette/åpne en ny Pad med dette navnet:", + "pad.toolbar.bold.title": "Fet (Ctrl-B)", + "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", + "pad.toolbar.underline.title": "Understreking (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Gjennomstreking (Ctrl+5)", + "pad.toolbar.ol.title": "Nummerert liste (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Punktliste (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Innrykk (TAB)", + "pad.toolbar.unindent.title": "Rykk ut (Shift+TAB)", + "pad.toolbar.undo.title": "Angre (Ctrl-Z)", + "pad.toolbar.redo.title": "Gjør omigjen (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Fjern forfatterfarger (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importer/eksporter fra/til forskjellige filformater", + "pad.toolbar.timeslider.title": "Tidslinje", + "pad.toolbar.savedRevision.title": "Lagre revisjoner", + "pad.toolbar.settings.title": "Innstillinger", + "pad.toolbar.embed.title": "Bygg inn denne padden", + "pad.toolbar.showusers.title": "Vis brukerne av denne padden", + "pad.colorpicker.save": "Lagre", + "pad.colorpicker.cancel": "Avbryt", + "pad.loading": "Laster inn...", + "pad.passwordRequired": "Du trenger et passord for å få tilgang til denne padden", + "pad.permissionDenied": "Du har ikke tilgang til denne padden", + "pad.wrongPassword": "Feil passord", + "pad.settings.padSettings": "Padinnstillinger", + "pad.settings.myView": "Min visning", + "pad.settings.stickychat": "Chat alltid synlig", + "pad.settings.colorcheck": "Forfatterfarger", + "pad.settings.linenocheck": "Linjenummer", + "pad.settings.rtlcheck": "Les innhold fra høyre til venstre?", + "pad.settings.fontType": "Skrifttype:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Fast bredde", + "pad.settings.globalView": "Global visning", + "pad.settings.language": "Språk:", + "pad.importExport.import_export": "Importer/eksporter", + "pad.importExport.import": "Last opp tekstfil eller dokument", + "pad.importExport.importSuccessful": "Vellykket!", + "pad.importExport.export": "Eksporter padden som:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Ren tekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Du kan bare importere fra ren tekst eller HTML-formater. For mer avanserte importfunksjoner, installer abiword.", + "pad.modals.connected": "Tilkoblet.", + "pad.modals.reconnecting": "Kobler til din pad på nytt...", + "pad.modals.forcereconnect": "Tving gjenoppkobling", + "pad.modals.userdup": "Åpnet i nytt vindu", + "pad.modals.userdup.explanation": "Denne padden ser ut til å være åpnet i mer enn et nettleservindu på denne maskinen.", + "pad.modals.userdup.advice": "Koble til igjen for å bruke dette vinduet i stedenfor.", + "pad.modals.unauth": "Ikke tillatt", + "pad.modals.unauth.explanation": "Dine rettigheter har blitt endret mens du så på denne siden. Prøv å koble til på nytt", + "pad.modals.looping.explanation": "Det er kommunikasjonsproblemer med synkroniseringsserveren.", + "pad.modals.looping.cause": "Kanskje du koblet til en inkompatibel brannmur eller mellomtjener", + "pad.modals.initsocketfail": "Serveren er utilgjengelig", + "pad.modals.initsocketfail.explanation": "Kunne ikke koble til synkroniseringsserveren.", + "pad.modals.initsocketfail.cause": "Dette er sannsynligvis på grunn av et problem med nettleseren eller din internettoppkobling", + "pad.modals.slowcommit.explanation": "Serveren svarer ikke.", + "pad.modals.slowcommit.cause": "Dette kan være et problem med nettverkstilkoblingen", + "pad.modals.badChangeset.explanation": "En redigering som du gjorde ble klassifisert som ulovlig av synkroniseringsserveren.", + "pad.modals.badChangeset.cause": "Dette kan komme av feil serverkonfigurasjon eller en annen uventet adferd. Vennligst kontakt serviceadministratoren hvis du anser dette å være feil. Prøv å gjenopprette forbindelsen for å fortsette med redigeringen.", + "pad.modals.corruptPad.explanation": "Blokken du forsøker å få tilgang til er skadet.", + "pad.modals.corruptPad.cause": "Dette kan komme av feil serverkonfigurasjon eller en annen uventet adferd. Vennligst kontakt serviceadministratoren hvis du anser dette å være feil.", + "pad.modals.deleted": "Slettet.", + "pad.modals.deleted.explanation": "Denne padden har blitt fjernet", + "pad.modals.disconnected": "Du har blitt frakoblet.", + "pad.modals.disconnected.explanation": "Mistet tilkobling til serveren.", + "pad.modals.disconnected.cause": "Serveren kan være utilgjengelig. Vennligst si i fra til oss hvis dette fortsetter å skje", + "pad.share": "Del denne padden", + "pad.share.readonly": "Skrivebeskyttet", + "pad.share.link": "Lenke", + "pad.share.emebdcode": "URL for innbygging", + "pad.chat": "Chat", + "pad.chat.title": "Åpne chatten for denne padden.", + "pad.chat.loadmessages": "Last flere beskjeder", + "timeslider.pageTitle": "{{appTitle}} Tidslinje", + "timeslider.toolbar.returnbutton": "Gå tilbake til pad", + "timeslider.toolbar.authors": "Forfattere:", + "timeslider.toolbar.authorsList": "Ingen forfattere", + "timeslider.toolbar.exportlink.title": "Eksporter", + "timeslider.exportCurrent": "Eksporter nåværende versjon som:", + "timeslider.version": "Versjon {{version}}", + "timeslider.saved": "Lagret {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januar", + "timeslider.month.february": "februar", + "timeslider.month.march": "mars", + "timeslider.month.april": "april", + "timeslider.month.may": "mai", + "timeslider.month.june": "juni", + "timeslider.month.july": "juli", + "timeslider.month.august": "august", + "timeslider.month.september": "september", + "timeslider.month.october": "oktober", + "timeslider.month.november": "november", + "timeslider.month.december": "desember", + "timeslider.unnamedauthors": "{{num}} navnløse {[plural(num) one: forfatter, other: forfattere ]}", + "pad.savedrevs.marked": "Denne revisjonen er nå markert som en lagret revisjon", + "pad.userlist.entername": "Skriv inn ditt navn", + "pad.userlist.unnamed": "navnløs", + "pad.userlist.guest": "Gjest", + "pad.userlist.deny": "Nekt", + "pad.userlist.approve": "Godkjenn", + "pad.editbar.clearcolors": "Fjern forfatterfarger på hele dokumentet?", + "pad.impexp.importbutton": "Importer nå", + "pad.impexp.importing": "Importerer...", + "pad.impexp.confirmimport": "Importering av en fil vil overskrive den nåværende teksten på padden. Er du sikker på at du vil fortsette?", + "pad.impexp.convertFailed": "Vi greide ikke å importere denne filen. Bruk et annet dokumentformat eller kopier og lim inn teksten manuelt", + "pad.impexp.uploadFailed": "Opplastning feilet. Prøv igjen", + "pad.impexp.importfailed": "Import feilet", + "pad.impexp.copypaste": "Vennligst kopier og lim inn", + "pad.impexp.exportdisabled": "Eksporterer som {{type}} er deaktivert. Vennligst kontakt din systemadministrator for detaljer." +} diff --git a/sources/src/locales/nds.json b/sources/src/locales/nds.json old mode 100644 new mode 100755 index 15986de..dfb9227 --- a/sources/src/locales/nds.json +++ b/sources/src/locales/nds.json @@ -1,119 +1,118 @@ { - "@metadata": { - "authors": [ - "Gthoele", - "Joachim Mos" - ] - }, - "index.newPad": "Nee'et Pad", - "index.createOpenPad": "oder Pad mit düssen Naam apen maken:", - "pad.toolbar.bold.title": "Fett (Strg-B)", - "pad.toolbar.italic.title": "Kursiv (Strg-I)", - "pad.toolbar.underline.title": "Mit Streek dor ünner (Strg-U)", - "pad.toolbar.strikethrough.title": "Mit Streek dor dör", - "pad.toolbar.ol.title": "List na Nummern", - "pad.toolbar.ul.title": "List ahn Nummern", - "pad.toolbar.indent.title": "Text na rechts", - "pad.toolbar.unindent.title": "Text na links", - "pad.toolbar.undo.title": "Een Stapp retuur (Strg-Z)", - "pad.toolbar.redo.title": "Noch mal (Strg-Y)", - "pad.toolbar.clearAuthorship.title": "Klöör vun den Schriever wegnehmen", - "pad.toolbar.import_export.title": "Rinhalen/Rutgeven in verscheden Dateiformate", - "pad.toolbar.timeslider.title": "Geschicht vun de Pad-Faten wiesen", - "pad.toolbar.savedRevision.title": "Faten sekern", - "pad.toolbar.settings.title": "Instellungen", - "pad.toolbar.embed.title": "Düt Pad verdelen oder annerswo ringeven", - "pad.toolbar.showusers.title": "Wokeen is online?", - "pad.colorpicker.save": "Spiekern", - "pad.colorpicker.cancel": "Afbreken", - "pad.loading": "Läädt…", - "pad.passwordRequired": "Du bruukst en Passwoort, wenn du in düt Pad rinwullt", - "pad.permissionDenied": "In düt Pad dröffst du nich rin", - "pad.wrongPassword": "Dien Passwoort weer nich richtig", - "pad.settings.padSettings": "So is dat Pad instellt", - "pad.settings.myView": "So heff ik dat instellt", - "pad.settings.stickychat": "Chat jümmers wiesen", - "pad.settings.colorcheck": "Klören vun de Schrievers wiesen", - "pad.settings.linenocheck": "Nummer vun de Reeg", - "pad.settings.rtlcheck": "Lees Pad vun rechts nach links", - "pad.settings.fontType": "Schriftoort:", - "pad.settings.fontType.normal": "Normaal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Ansicht för all", - "pad.settings.language": "Spraak:", - "pad.importExport.import_export": "Rinhalen/Rutgeven", - "pad.importExport.import": "Datei oder Dokument hoochladen", - "pad.importExport.importSuccessful": "Hett slumpt!", - "pad.importExport.export": "Düt Pad rutgeven as:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Textdatei", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Se köönt blots wat vun Kloortext oder HTML-Stücken röverhalen. Mit \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003E köönt Se ok anner Saken röverhalen. Dorför mööt Se bidde abiword inrichten\u003C/a\u003E.", - "pad.modals.connected": "Verbindung steiht.", - "pad.modals.reconnecting": "En Verbindung wedder opboen ...", - "pad.modals.forcereconnect": "Noch mal verbinnen", - "pad.modals.userdup": "In en anner Fenster op", - "pad.modals.userdup.explanation": "Dat lett, düt Pat is op düssen Reekner in mehr as een Browser-Fenster op.", - "pad.modals.userdup.advice": "Wullt du düt Fenster bruken, bidde noch mal de Verbindung opboen.", - "pad.modals.unauth": "Nich freegeven.", - "pad.modals.unauth.explanation": "Du hest nu anner Rechten för düt Pad. Maak dat bidde noch mal wedder nee op.", - "pad.modals.looping.explanation": "Dat gifft Kummer bi de Verbindung mit den Pad-Server.", - "pad.modals.looping.cause": "Mag ween un du hest Verbindung mit den Padserver över en Firewall, de nich passt, oder en Proxy, de nich passt.", - "pad.modals.initsocketfail": "Wi köönt den Pad-Server nich faat kriegen.", - "pad.modals.initsocketfail.explanation": "De Verbindung mit den Pad-Server hett nich klappt.", - "pad.modals.initsocketfail.cause": "Mag ween un dat liggt an dien Browser oder an dien Internet-Verbindung.", - "pad.modals.slowcommit.explanation": "De Pad-Server gifft keen Antwoort.", - "pad.modals.slowcommit.cause": "Kunn wenn un dat liggt an dat Nettwark, oder dor arbeidt jüst to veel Lüüd op den Pad-Server.", - "pad.modals.deleted": "Weg is dat!", - "pad.modals.deleted.explanation": "Düt Pad is nu weg.", - "pad.modals.disconnected": "De Kuntakt is afreten.", - "pad.modals.disconnected.explanation": "De Kuntakt mit den Pad-Server is afreten.", - "pad.modals.disconnected.cause": "Mag ween un wi köönt den Pad-Server jüst nich faat kriegen. Schull dat so wiedergahn, segg man Bescheed.", - "pad.share": "Düt Pad ok anner Lüüd wiesen", - "pad.share.readonly": "Se köönt hier jüst blots lesen", - "pad.share.link": "Link", - "pad.share.emebdcode": "In Websiet ringeven", - "pad.chat": "Chat", - "pad.chat.title": "Den Chat vun düt Pad apen maken", - "pad.chat.loadmessages": "Mehr Narichten laden", - "timeslider.pageTitle": "{{appTitle}} Öllere Faten vun dat Pad", - "timeslider.toolbar.returnbutton": "Retuur na dat Pad", - "timeslider.toolbar.authors": "Schrievers:", - "timeslider.toolbar.authorsList": "keen Schrievers", - "timeslider.toolbar.exportlink.title": "Rutschicken", - "timeslider.exportCurrent": "Schick düsse Faten rut as:", - "timeslider.version": "Faten {{version}}", - "timeslider.saved": "Sekert an den {{day}}.{{month}}.{{year}}", - "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januar", - "timeslider.month.february": "Februar", - "timeslider.month.march": "März", - "timeslider.month.april": "April", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Juni", - "timeslider.month.july": "Juli", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "Dezember", - "timeslider.unnamedauthors": "{{num}} Schriever ohn Naam {[plural(num) one: Schriever, other: Schrievers ]}", - "pad.savedrevs.marked": "Düsse Faten hett nu dat Teken: sekerte Faten", - "pad.userlist.entername": "Schriev dien Naam", - "pad.userlist.unnamed": "hett keen Naam", - "pad.userlist.guest": "Besöker", - "pad.userlist.deny": "Deit uns Leed, wieder geiht dat nich", - "pad.userlist.approve": "Man to!", - "pad.editbar.clearcolors": "Klören vun de Schrievers in dat ganze Dokument torüchsetten?", - "pad.impexp.importbutton": "Nu rinhalen", - "pad.impexp.importing": "Haal dat rin …", - "pad.impexp.confirmimport": "Wenn du nu en Datei rinhaalst, warrt de Text in dat Pad överschreven. Wullt du würklich wieder maken?", - "pad.impexp.convertFailed": "Wi köönt düsse Datei nich rinhalen. Ännert Se bidde dat Format vun dat Dokument oder haalt Se den Text mit de Hand rin.", - "pad.impexp.uploadFailed": "Dat Hoochladen hett nich slumpt. Versöök dat man noch mal.", - "pad.impexp.importfailed": "Dat Rinhalen hett nich slumpt", - "pad.impexp.copypaste": "Bidde koperen un rinsetten", - "pad.impexp.exportdisabled": "Du kannst dat nich in dat {{type}}-Format rutschicken. Wenn du mehr weten wullt, fraag man den Systemadministrator." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Gthoele", + "Joachim Mos" + ] + }, + "index.newPad": "Nee'et Pad", + "index.createOpenPad": "oder Pad mit düssen Naam apen maken:", + "pad.toolbar.bold.title": "Fett (Strg-B)", + "pad.toolbar.italic.title": "Kursiv (Strg-I)", + "pad.toolbar.underline.title": "Mit Streek dor ünner (Strg-U)", + "pad.toolbar.strikethrough.title": "Mit Streek dor dör", + "pad.toolbar.ol.title": "List na Nummern", + "pad.toolbar.ul.title": "List ahn Nummern", + "pad.toolbar.indent.title": "Text na rechts", + "pad.toolbar.unindent.title": "Text na links", + "pad.toolbar.undo.title": "Een Stapp retuur (Strg-Z)", + "pad.toolbar.redo.title": "Noch mal (Strg-Y)", + "pad.toolbar.clearAuthorship.title": "Klöör vun den Schriever wegnehmen", + "pad.toolbar.import_export.title": "Rinhalen/Rutgeven in verscheden Dateiformate", + "pad.toolbar.timeslider.title": "Geschicht vun de Pad-Faten wiesen", + "pad.toolbar.savedRevision.title": "Faten sekern", + "pad.toolbar.settings.title": "Instellungen", + "pad.toolbar.embed.title": "Düt Pad verdelen oder annerswo ringeven", + "pad.toolbar.showusers.title": "Wokeen is online?", + "pad.colorpicker.save": "Spiekern", + "pad.colorpicker.cancel": "Afbreken", + "pad.loading": "Läädt…", + "pad.passwordRequired": "Du bruukst en Passwoort, wenn du in düt Pad rinwullt", + "pad.permissionDenied": "In düt Pad dröffst du nich rin", + "pad.wrongPassword": "Dien Passwoort weer nich richtig", + "pad.settings.padSettings": "So is dat Pad instellt", + "pad.settings.myView": "So heff ik dat instellt", + "pad.settings.stickychat": "Chat jümmers wiesen", + "pad.settings.colorcheck": "Klören vun de Schrievers wiesen", + "pad.settings.linenocheck": "Nummer vun de Reeg", + "pad.settings.rtlcheck": "Lees Pad vun rechts nach links", + "pad.settings.fontType": "Schriftoort:", + "pad.settings.fontType.normal": "Normaal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Ansicht för all", + "pad.settings.language": "Spraak:", + "pad.importExport.import_export": "Rinhalen/Rutgeven", + "pad.importExport.import": "Datei oder Dokument hoochladen", + "pad.importExport.importSuccessful": "Hett slumpt!", + "pad.importExport.export": "Düt Pad rutgeven as:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Textdatei", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Se köönt blots wat vun Kloortext oder HTML-Stücken röverhalen. Mit köönt Se ok anner Saken röverhalen. Dorför mööt Se bidde abiword inrichten.", + "pad.modals.connected": "Verbindung steiht.", + "pad.modals.reconnecting": "En Verbindung wedder opboen ...", + "pad.modals.forcereconnect": "Noch mal verbinnen", + "pad.modals.userdup": "In en anner Fenster op", + "pad.modals.userdup.explanation": "Dat lett, düt Pat is op düssen Reekner in mehr as een Browser-Fenster op.", + "pad.modals.userdup.advice": "Wullt du düt Fenster bruken, bidde noch mal de Verbindung opboen.", + "pad.modals.unauth": "Nich freegeven.", + "pad.modals.unauth.explanation": "Du hest nu anner Rechten för düt Pad. Maak dat bidde noch mal wedder nee op.", + "pad.modals.looping.explanation": "Dat gifft Kummer bi de Verbindung mit den Pad-Server.", + "pad.modals.looping.cause": "Mag ween un du hest Verbindung mit den Padserver över en Firewall, de nich passt, oder en Proxy, de nich passt.", + "pad.modals.initsocketfail": "Wi köönt den Pad-Server nich faat kriegen.", + "pad.modals.initsocketfail.explanation": "De Verbindung mit den Pad-Server hett nich klappt.", + "pad.modals.initsocketfail.cause": "Mag ween un dat liggt an dien Browser oder an dien Internet-Verbindung.", + "pad.modals.slowcommit.explanation": "De Pad-Server gifft keen Antwoort.", + "pad.modals.slowcommit.cause": "Kunn wenn un dat liggt an dat Nettwark, oder dor arbeidt jüst to veel Lüüd op den Pad-Server.", + "pad.modals.deleted": "Weg is dat!", + "pad.modals.deleted.explanation": "Düt Pad is nu weg.", + "pad.modals.disconnected": "De Kuntakt is afreten.", + "pad.modals.disconnected.explanation": "De Kuntakt mit den Pad-Server is afreten.", + "pad.modals.disconnected.cause": "Mag ween un wi köönt den Pad-Server jüst nich faat kriegen. Schull dat so wiedergahn, segg man Bescheed.", + "pad.share": "Düt Pad ok anner Lüüd wiesen", + "pad.share.readonly": "Se köönt hier jüst blots lesen", + "pad.share.link": "Link", + "pad.share.emebdcode": "In Websiet ringeven", + "pad.chat": "Chat", + "pad.chat.title": "Den Chat vun düt Pad apen maken", + "pad.chat.loadmessages": "Mehr Narichten laden", + "timeslider.pageTitle": "{{appTitle}} Öllere Faten vun dat Pad", + "timeslider.toolbar.returnbutton": "Retuur na dat Pad", + "timeslider.toolbar.authors": "Schrievers:", + "timeslider.toolbar.authorsList": "keen Schrievers", + "timeslider.toolbar.exportlink.title": "Rutschicken", + "timeslider.exportCurrent": "Schick düsse Faten rut as:", + "timeslider.version": "Faten {{version}}", + "timeslider.saved": "Sekert an den {{day}}.{{month}}.{{year}}", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januar", + "timeslider.month.february": "Februar", + "timeslider.month.march": "März", + "timeslider.month.april": "April", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Juni", + "timeslider.month.july": "Juli", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "Dezember", + "timeslider.unnamedauthors": "{{num}} Schriever ohn Naam {[plural(num) one: Schriever, other: Schrievers ]}", + "pad.savedrevs.marked": "Düsse Faten hett nu dat Teken: sekerte Faten", + "pad.userlist.entername": "Schriev dien Naam", + "pad.userlist.unnamed": "hett keen Naam", + "pad.userlist.guest": "Besöker", + "pad.userlist.deny": "Deit uns Leed, wieder geiht dat nich", + "pad.userlist.approve": "Man to!", + "pad.editbar.clearcolors": "Klören vun de Schrievers in dat ganze Dokument torüchsetten?", + "pad.impexp.importbutton": "Nu rinhalen", + "pad.impexp.importing": "Haal dat rin …", + "pad.impexp.confirmimport": "Wenn du nu en Datei rinhaalst, warrt de Text in dat Pad överschreven. Wullt du würklich wieder maken?", + "pad.impexp.convertFailed": "Wi köönt düsse Datei nich rinhalen. Ännert Se bidde dat Format vun dat Dokument oder haalt Se den Text mit de Hand rin.", + "pad.impexp.uploadFailed": "Dat Hoochladen hett nich slumpt. Versöök dat man noch mal.", + "pad.impexp.importfailed": "Dat Rinhalen hett nich slumpt", + "pad.impexp.copypaste": "Bidde koperen un rinsetten", + "pad.impexp.exportdisabled": "Du kannst dat nich in dat {{type}}-Format rutschicken. Wenn du mehr weten wullt, fraag man den Systemadministrator." +} diff --git a/sources/src/locales/ne.json b/sources/src/locales/ne.json old mode 100644 new mode 100755 index 4ffd69b..b380526 --- a/sources/src/locales/ne.json +++ b/sources/src/locales/ne.json @@ -1,86 +1,100 @@ { - "@metadata": { - "authors": [ - "सरोज कुमार ढकाल" - ] - }, - "index.newPad": "नयाँ प्याड", - "index.createOpenPad": "नाम सहितको नयाँ प्याड सिर्जना गर्ने / खोल्ने :", - "pad.toolbar.bold.title": "मोटो (Ctrl-B)", - "pad.toolbar.italic.title": "ढल्के (Ctrl-I)", - "pad.toolbar.underline.title": "निम्न रेखाङ्कन (Ctrl-U)", - "pad.toolbar.strikethrough.title": "बीचको धर्को", - "pad.toolbar.ol.title": "क्रमवद्ध सूची", - "pad.toolbar.ul.title": "अक्रमाङ्कित सूची", - "pad.toolbar.timeslider.title": "टाइमस्लाइडर", - "pad.toolbar.savedRevision.title": "पुनरावलोकन संग्रहगर्ने", - "pad.toolbar.settings.title": "सेटिङ्गहरू", - "pad.toolbar.embed.title": "यस प्याडलाई बाड्ने या इम्बेड गर्ने", - "pad.toolbar.showusers.title": "यस प्याडमा रहेका प्रयोगकर्ता देखाउने", - "pad.colorpicker.save": "संग्रह गर्ने", - "pad.colorpicker.cancel": "रद्द", - "pad.loading": "लोड हुदैछ...", - "pad.passwordRequired": "यो प्यड खोल्न पासवर्ड चाहिन्छ", - "pad.permissionDenied": "तपाईँलाई यस प्याड खोल्न अनुमति छैन", - "pad.wrongPassword": "तपाईँको पासवर्ड गलत थियो", - "pad.settings.padSettings": "प्याड सेटिङ्गहरू", - "pad.settings.myView": "मेरो दृष्य", - "pad.settings.stickychat": "पर्दामा सधै च्याट गर्ने", - "pad.settings.colorcheck": "लेखकीय रङ्ग", - "pad.settings.linenocheck": "हरफ संख्या", - "pad.settings.rtlcheck": "के सामग्री दाहिने देखि देब्रे पढ्ने हो ?", - "pad.settings.fontType": "फन्ट प्रकार:", - "pad.settings.fontType.normal": "सामान्य", - "pad.settings.fontType.monospaced": "मोनोस्पेस", - "pad.settings.globalView": "विश्वव्यापी दृष्य", - "pad.settings.language": "भाषा:", - "pad.importExport.import_export": "आयात/निर्यात", - "pad.importExport.import": "कुनै पनि पाठ रहेको फाइल या कागजात अपलोड गर्नुहोस्", - "pad.importExport.importSuccessful": "सफल भयो!", - "pad.importExport.export": "निम्न रुपमा प्याड निर्यात गर्ने :", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "साधारण पाठ", - "pad.importExport.exportword": "माइक्रोसफ्ट वर्ड", - "pad.importExport.exportpdf": "पिडिएफ", - "pad.importExport.exportopen": "ओडिएफ(खुल्ला कागजात ढाँचा)", - "pad.importExport.exportdokuwiki": "डकुविकि", - "pad.modals.connected": "जोडीएको।", - "pad.modals.reconnecting": "तपाईँको प्याडमा पुन: जडान गर्दै", - "pad.modals.deleted": "मेटिएको ।", - "pad.modals.deleted.explanation": "यो प्याड हटाइसकेको छ ।", - "pad.modals.disconnected": "तपाईँको जडान अवरुद्ध भयो ।", - "pad.modals.disconnected.explanation": "तपाईँको सर्भरसँगको जडान अवरुद्ध भयो", - "pad.share": "यस प्यडलाई बाड्ने", - "pad.share.readonly": "पढ्ने मात्र", - "pad.share.link": "लिङ्क", - "pad.chat": "कुराकानी", - "pad.chat.title": "यस प्याडको लागि कुराकानी खोल्ने", - "pad.chat.loadmessages": "थप सन्देशहरू खोल्ने", - "timeslider.toolbar.returnbutton": "प्याडमा फर्कनुहोस्", - "timeslider.toolbar.authors": "लेखकहरु:", - "timeslider.toolbar.authorsList": "कुनै पनि लेखकहरू छैनन्", - "timeslider.toolbar.exportlink.title": "निर्यात", - "timeslider.exportCurrent": "हालको संस्करण निम्म रुपमा निर्यात गर्ने :", - "timeslider.version": "संस्करण {{version}}", - "timeslider.saved": "सङ्ग्रह गरिएको {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "जनवरी", - "timeslider.month.february": "फेब्रुअरी", - "timeslider.month.march": "मार्च", - "timeslider.month.april": "एप्रील", - "timeslider.month.may": "मे", - "timeslider.month.june": "जुन", - "timeslider.month.july": "जुलाई", - "timeslider.month.august": "अगस्ट", - "timeslider.month.september": "सेप्टेम्बर", - "timeslider.month.october": "अक्टोबर", - "timeslider.month.november": "नोभेम्बर", - "timeslider.month.december": "डिसेम्बर", - "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) one: author, other: authors ]}", - "pad.savedrevs.marked": "यस संस्करणलाई संग्रहितको रुपमा चिनो लगाइएको छैन", - "pad.userlist.entername": "तपाईँको नाम लेख्नुहोस्", - "pad.userlist.unnamed": "नाम नखुलाइएको", - "pad.userlist.guest": "पाहुना", - "pad.userlist.deny": "अस्वीकार गर्ने", - "pad.userlist.approve": "स्वीकृत गर्ने" -} \ No newline at end of file + "@metadata": { + "authors": [ + "सरोज कुमार ढकाल" + ] + }, + "index.newPad": "नयाँ प्याड", + "index.createOpenPad": "नाम सहितको नयाँ प्याड सिर्जना गर्ने / खोल्ने :", + "pad.toolbar.bold.title": "मोटो (Ctrl-B)", + "pad.toolbar.italic.title": "ढल्के (Ctrl-I)", + "pad.toolbar.underline.title": "निम्न रेखाङ्कन (Ctrl-U)", + "pad.toolbar.strikethrough.title": "बीचको धर्को", + "pad.toolbar.ol.title": "क्रमवद्ध सूची", + "pad.toolbar.ul.title": "अक्रमाङ्कित सूची", + "pad.toolbar.indent.title": "इन्डेन्ट (TAB)", + "pad.toolbar.unindent.title": "आउटडेन्ट (Shift+TAB)", + "pad.toolbar.undo.title": "रद्द (Ctrl-Z)", + "pad.toolbar.redo.title": "पुन:लागु (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "लेखकीय रङ्ग हटाउने", + "pad.toolbar.timeslider.title": "टाइमस्लाइडर", + "pad.toolbar.savedRevision.title": "पुनरावलोकन संग्रहगर्ने", + "pad.toolbar.settings.title": "सेटिङ्गहरू", + "pad.toolbar.embed.title": "यस प्याडलाई बाड्ने या इम्बेड गर्ने", + "pad.toolbar.showusers.title": "यस प्याडमा रहेका प्रयोगकर्ता देखाउने", + "pad.colorpicker.save": "संग्रह गर्ने", + "pad.colorpicker.cancel": "रद्द", + "pad.loading": "लोड हुदैछ...", + "pad.passwordRequired": "यो प्यड खोल्न पासवर्ड चाहिन्छ", + "pad.permissionDenied": "तपाईँलाई यस प्याड खोल्न अनुमति छैन", + "pad.wrongPassword": "तपाईँको पासवर्ड गलत थियो", + "pad.settings.padSettings": "प्याड सेटिङ्गहरू", + "pad.settings.myView": "मेरो दृष्य", + "pad.settings.stickychat": "पर्दामा सधै च्याट गर्ने", + "pad.settings.colorcheck": "लेखकीय रङ्ग", + "pad.settings.linenocheck": "हरफ संख्या", + "pad.settings.rtlcheck": "के सामग्री दाहिने देखि देब्रे पढ्ने हो ?", + "pad.settings.fontType": "फन्ट प्रकार:", + "pad.settings.fontType.normal": "सामान्य", + "pad.settings.fontType.monospaced": "मोनोस्पेस", + "pad.settings.globalView": "विश्वव्यापी दृष्य", + "pad.settings.language": "भाषा:", + "pad.importExport.import_export": "आयात/निर्यात", + "pad.importExport.import": "कुनै पनि पाठ रहेको फाइल या कागजात अपलोड गर्नुहोस्", + "pad.importExport.importSuccessful": "सफल भयो!", + "pad.importExport.export": "निम्न रुपमा प्याड निर्यात गर्ने :", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "साधारण पाठ", + "pad.importExport.exportword": "माइक्रोसफ्ट वर्ड", + "pad.importExport.exportpdf": "पिडिएफ", + "pad.importExport.exportopen": "ओडिएफ(खुल्ला कागजात ढाँचा)", + "pad.modals.connected": "जोडीएको।", + "pad.modals.reconnecting": "तपाईँको प्याडमा पुन: जडान गर्दै", + "pad.modals.forcereconnect": "जडानको लागि जोडगर्ने", + "pad.modals.userdup": "अर्को सन्झ्यालमा खोल्ने", + "pad.modals.unauth": "अनुमती नदिइएको", + "pad.modals.initsocketfail": "सर्भरमा पहुँच पुर्‍याउन सकिएन ।", + "pad.modals.deleted": "मेटिएको ।", + "pad.modals.deleted.explanation": "यो प्याड हटाइसकेको छ ।", + "pad.modals.disconnected": "तपाईँको जडान अवरुद्ध भयो ।", + "pad.modals.disconnected.explanation": "तपाईँको सर्भरसँगको जडान अवरुद्ध भयो", + "pad.share": "यस प्यडलाई बाड्ने", + "pad.share.readonly": "पढ्ने मात्र", + "pad.share.link": "लिङ्क", + "pad.share.emebdcode": "URL थप्ने", + "pad.chat": "कुराकानी", + "pad.chat.title": "यस प्याडको लागि कुराकानी खोल्ने", + "pad.chat.loadmessages": "थप सन्देशहरू खोल्ने", + "timeslider.pageTitle": "{{appTitle}} समय रेखा", + "timeslider.toolbar.returnbutton": "प्याडमा फर्कनुहोस्", + "timeslider.toolbar.authors": "लेखकहरु:", + "timeslider.toolbar.authorsList": "कुनै पनि लेखकहरू छैनन्", + "timeslider.toolbar.exportlink.title": "निर्यात", + "timeslider.exportCurrent": "हालको संस्करण निम्म रुपमा निर्यात गर्ने :", + "timeslider.version": "संस्करण {{version}}", + "timeslider.saved": "सङ्ग्रह गरिएको {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "जनवरी", + "timeslider.month.february": "फेब्रुअरी", + "timeslider.month.march": "मार्च", + "timeslider.month.april": "एप्रील", + "timeslider.month.may": "मे", + "timeslider.month.june": "जुन", + "timeslider.month.july": "जुलाई", + "timeslider.month.august": "अगस्ट", + "timeslider.month.september": "सेप्टेम्बर", + "timeslider.month.october": "अक्टोबर", + "timeslider.month.november": "नोभेम्बर", + "timeslider.month.december": "डिसेम्बर", + "timeslider.unnamedauthors": "{{num}} unnamed {[plural(num) one: author, other: authors ]}", + "pad.savedrevs.marked": "यस संस्करणलाई संग्रहितको रुपमा चिनो लगाइएको छैन", + "pad.userlist.entername": "तपाईँको नाम लेख्नुहोस्", + "pad.userlist.unnamed": "नाम नखुलाइएको", + "pad.userlist.guest": "पाहुना", + "pad.userlist.deny": "अस्वीकार गर्ने", + "pad.userlist.approve": "स्वीकृत गर्ने", + "pad.impexp.importbutton": "अहिले आयात गर्ने", + "pad.impexp.importing": "आयात गर्ने...", + "pad.impexp.importfailed": "आयात असफल भयो", + "pad.impexp.copypaste": "कृपया कपी पेस्ट गर्नुहोस" +} diff --git a/sources/src/locales/nl.json b/sources/src/locales/nl.json old mode 100644 new mode 100755 index 342487b..0aa63d8 --- a/sources/src/locales/nl.json +++ b/sources/src/locales/nl.json @@ -1,122 +1,131 @@ { - "@metadata": { - "authors": [ - "Siebrand" - ] - }, - "index.newPad": "Nieuw pad", - "index.createOpenPad": "Maak of open pad met de naam:", - "pad.toolbar.bold.title": "Vet (Ctrl-B)", - "pad.toolbar.italic.title": "Cursief (Ctrl-I)", - "pad.toolbar.underline.title": "Onderstrepen (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Doorhalen", - "pad.toolbar.ol.title": "Geordende lijst", - "pad.toolbar.ul.title": "Ongeordende lijst", - "pad.toolbar.indent.title": "Inspringen (Tab)", - "pad.toolbar.unindent.title": "Inspringing verkleinen (Shift+Tab)", - "pad.toolbar.undo.title": "Ongedaan maken (Ctrl-Z)", - "pad.toolbar.redo.title": "Opnieuw uitvoeren (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Kleuren auteurs wissen", - "pad.toolbar.import_export.title": "Naar/van andere opmaak exporteren/importeren", - "pad.toolbar.timeslider.title": "Tijdlijn", - "pad.toolbar.savedRevision.title": "Versie opslaan", - "pad.toolbar.settings.title": "Instellingen", - "pad.toolbar.embed.title": "Pad delen en insluiten", - "pad.toolbar.showusers.title": "Gebruikers van dit pad weergeven", - "pad.colorpicker.save": "Opslaan", - "pad.colorpicker.cancel": "Annuleren", - "pad.loading": "Bezig met laden…", - "pad.passwordRequired": "U hebt een wachtwoord nodig om toegang te krijgen tot deze pad", - "pad.permissionDenied": "U hebt geen rechten om deze pad te bekijken", - "pad.wrongPassword": "U hebt een onjuist wachtwoord ingevoerd", - "pad.settings.padSettings": "Padinstellingen", - "pad.settings.myView": "Mijn overzicht", - "pad.settings.stickychat": "Chat altijd zichtbaar", - "pad.settings.colorcheck": "Kleuren auteurs", - "pad.settings.linenocheck": "Regelnummers", - "pad.settings.rtlcheck": "Inhoud van rechts naar links lezen?", - "pad.settings.fontType": "Lettertype:", - "pad.settings.fontType.normal": "Normaal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Globaal overzicht", - "pad.settings.language": "Taal:", - "pad.importExport.import_export": "Importeren/exporteren", - "pad.importExport.import": "Upload een tekstbestand of document", - "pad.importExport.importSuccessful": "Afgerond", - "pad.importExport.export": "Huidige pad exporteren als", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Tekst zonder opmaak", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "Pdf", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "U kunt alleen importeren vanuit platte tekst of een HTML-opmaak. \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003EInstalleer abiword\u003C/a\u003E om meer geavanceerde importmogelijkheden te krijgen.", - "pad.modals.connected": "Verbonden.", - "pad.modals.reconnecting": "Opnieuw verbinding maken met uw pad...", - "pad.modals.forcereconnect": "Opnieuw verbinden", - "pad.modals.userdup": "In een ander venster geopend", - "pad.modals.userdup.explanation": "Dit pad is meer dan één keer geopend in een browservenster op deze computer.", - "pad.modals.userdup.advice": "Maak opnieuw verbinding als u dit venster wilt gebruiken.", - "pad.modals.unauth": "Niet toegestaan", - "pad.modals.unauth.explanation": "Uw rechten zijn gewijzigd terwijl u de pagina aan het bekijken was. Probeer opnieuw te verbinden.", - "pad.modals.looping.explanation": "Er is een probleem opgetreden tijdens de communicatie met de synchronisatieserver.", - "pad.modals.looping.cause": "Mogelijk gebruikt de server een niet compatibele firewall of proxy server.", - "pad.modals.initsocketfail": "Server is niet bereikbaar.", - "pad.modals.initsocketfail.explanation": "Het was niet mogelijk te verbinden met de synchronisatieserver.", - "pad.modals.initsocketfail.cause": "Mogelijk komt dit door uw browser of internetverbinding.", - "pad.modals.slowcommit.explanation": "De server reageert niet.", - "pad.modals.slowcommit.cause": "Dit komt mogelijk door netwerkproblemen.", - "pad.modals.badChangeset.explanation": "Een door u gemaakte bewerking is door de synchronisatieserver als incorrect aangemerkt.", - "pad.modals.badChangeset.cause": "Dit kan komen door een onjuiste serverinstelling of door ander onverwacht gedrag. Neem contact op met de servicebeheerder als u denkt dat er een onverwachte uitkomst is. Probeer opnieuw te verbinden om door te gaan met bewerken.", - "pad.modals.corruptPad.explanation": "Het pad dat u wilt openen is beschadigd.", - "pad.modals.corruptPad.cause": "Dit kan komen door een onjuiste serverinstelling of door ander onverwacht gedrag. Neem contact op met de servicebeheerder.", - "pad.modals.deleted": "Verwijderd.", - "pad.modals.deleted.explanation": "Dit pad is verwijderd.", - "pad.modals.disconnected": "Uw verbinding is verbroken.", - "pad.modals.disconnected.explanation": "De verbinding met de server is verbroken", - "pad.modals.disconnected.cause": "De server is mogelijk niet beschikbaar. Stel de servicebeheerder op de hoogte.", - "pad.share": "Pad delen", - "pad.share.readonly": "Alleen-lezen", - "pad.share.link": "Koppeling", - "pad.share.emebdcode": "URL insluiten", - "pad.chat": "Chatten", - "pad.chat.title": "Chat voor dit pad opnenen", - "pad.chat.loadmessages": "Meer berichten laden", - "timeslider.pageTitle": "Tijdlijn voor {{appTitle}}", - "timeslider.toolbar.returnbutton": "Terug naar pad", - "timeslider.toolbar.authors": "Auteurs:", - "timeslider.toolbar.authorsList": "Geen auteurs", - "timeslider.toolbar.exportlink.title": "Exporteren", - "timeslider.exportCurrent": "Huidige versie exporteren als:", - "timeslider.version": "Versie {{version}}", - "timeslider.saved": "Opgeslagen op {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januari", - "timeslider.month.february": "februari", - "timeslider.month.march": "maart", - "timeslider.month.april": "april", - "timeslider.month.may": "mei", - "timeslider.month.june": "juni", - "timeslider.month.july": "juli", - "timeslider.month.august": "augustus", - "timeslider.month.september": "september", - "timeslider.month.october": "oktober", - "timeslider.month.november": "november", - "timeslider.month.december": "december", - "timeslider.unnamedauthors": "{{num}} onbekende {[plural(num) one: auteur, other: auteurs ]}", - "pad.savedrevs.marked": "Deze versie is nu gemarkeerd als opgeslagen versie", - "pad.userlist.entername": "Geef uw naam op", - "pad.userlist.unnamed": "zonder naam", - "pad.userlist.guest": "Gast", - "pad.userlist.deny": "Weigeren", - "pad.userlist.approve": "Goedkeuren", - "pad.editbar.clearcolors": "Auteurskleuren voor het hele document wissen?", - "pad.impexp.importbutton": "Nu importeren", - "pad.impexp.importing": "Bezig met importeren…", - "pad.impexp.confirmimport": "Door een bestand te importeren overschrijft u de huidige tekst van de pad. Wilt u echt doorgaan?", - "pad.impexp.convertFailed": "Het was niet mogelijk dit bestand te importeren. Gebruik een andere documentopmaak of kopieer en plak de inhoud handmatig", - "pad.impexp.uploadFailed": "Het uploaden is mislukt. Probeer het opnieuw", - "pad.impexp.importfailed": "Importeren is mislukt", - "pad.impexp.copypaste": "Gebruik kopiëren en plakken", - "pad.impexp.exportdisabled": "Exporteren als {{type}} is uitgeschakeld. Neem contact op met de systeembeheerder voor details." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Siebrand", + "Macofe", + "Robin0van0der0vliet" + ] + }, + "index.newPad": "Nieuw pad", + "index.createOpenPad": "Maak of open pad met de naam:", + "pad.toolbar.bold.title": "Vet (Ctrl-B)", + "pad.toolbar.italic.title": "Cursief (Ctrl-I)", + "pad.toolbar.underline.title": "Onderstrepen (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Doorhalen (Ctrl+5)", + "pad.toolbar.ol.title": "Geordende lijst (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Ongeordende lijst (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Inspringen (Tab)", + "pad.toolbar.unindent.title": "Inspringing verkleinen (Shift+Tab)", + "pad.toolbar.undo.title": "Ongedaan maken (Ctrl-Z)", + "pad.toolbar.redo.title": "Opnieuw uitvoeren (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Kleuren auteurs wissen (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Naar/van andere opmaak exporteren/importeren", + "pad.toolbar.timeslider.title": "Tijdlijn", + "pad.toolbar.savedRevision.title": "Versie opslaan", + "pad.toolbar.settings.title": "Instellingen", + "pad.toolbar.embed.title": "Pad delen en insluiten", + "pad.toolbar.showusers.title": "Gebruikers van dit pad weergeven", + "pad.colorpicker.save": "Opslaan", + "pad.colorpicker.cancel": "Annuleren", + "pad.loading": "Bezig met laden…", + "pad.noCookie": "Er kon geen cookie gevonden worden. Zorg ervoor dat uw browser cookies accepteert.", + "pad.passwordRequired": "U hebt een wachtwoord nodig om toegang te krijgen tot deze pad", + "pad.permissionDenied": "U hebt geen rechten om deze pad te bekijken", + "pad.wrongPassword": "U hebt een onjuist wachtwoord ingevoerd", + "pad.settings.padSettings": "Padinstellingen", + "pad.settings.myView": "Mijn overzicht", + "pad.settings.stickychat": "Chat altijd zichtbaar", + "pad.settings.chatandusers": "Chat en gebruikers weergeven", + "pad.settings.colorcheck": "Kleuren auteurs", + "pad.settings.linenocheck": "Regelnummers", + "pad.settings.rtlcheck": "Inhoud van rechts naar links lezen?", + "pad.settings.fontType": "Lettertype:", + "pad.settings.fontType.normal": "Normaal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Globaal overzicht", + "pad.settings.language": "Taal:", + "pad.importExport.import_export": "Importeren/exporteren", + "pad.importExport.import": "Upload een tekstbestand of document", + "pad.importExport.importSuccessful": "Afgerond", + "pad.importExport.export": "Huidige pad exporteren als", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Tekst zonder opmaak", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "Pdf", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "U kunt alleen importeren vanuit platte tekst of een HTML-opmaak. Installeer abiword om meer geavanceerde importmogelijkheden te krijgen.", + "pad.modals.connected": "Verbonden.", + "pad.modals.reconnecting": "Opnieuw verbinding maken met uw pad...", + "pad.modals.forcereconnect": "Opnieuw verbinden", + "pad.modals.userdup": "In een ander venster geopend", + "pad.modals.userdup.explanation": "Dit pad is meer dan één keer geopend in een browservenster op deze computer.", + "pad.modals.userdup.advice": "Maak opnieuw verbinding als u dit venster wilt gebruiken.", + "pad.modals.unauth": "Niet toegestaan", + "pad.modals.unauth.explanation": "Uw rechten zijn gewijzigd terwijl u de pagina aan het bekijken was. Probeer opnieuw te verbinden.", + "pad.modals.looping.explanation": "Er is een probleem opgetreden tijdens de communicatie met de synchronisatieserver.", + "pad.modals.looping.cause": "Mogelijk gebruikt de server een niet compatibele firewall of proxy server.", + "pad.modals.initsocketfail": "Server is niet bereikbaar.", + "pad.modals.initsocketfail.explanation": "Het was niet mogelijk te verbinden met de synchronisatieserver.", + "pad.modals.initsocketfail.cause": "Mogelijk komt dit door uw browser of internetverbinding.", + "pad.modals.slowcommit.explanation": "De server reageert niet.", + "pad.modals.slowcommit.cause": "Dit komt mogelijk door netwerkproblemen.", + "pad.modals.badChangeset.explanation": "Een door u gemaakte bewerking is door de synchronisatieserver als incorrect aangemerkt.", + "pad.modals.badChangeset.cause": "Dit kan komen door een onjuiste serverinstelling of door ander onverwacht gedrag. Neem contact op met de servicebeheerder als u denkt dat er een onverwachte uitkomst is. Probeer opnieuw te verbinden om door te gaan met bewerken.", + "pad.modals.corruptPad.explanation": "Het pad dat u wilt openen is beschadigd.", + "pad.modals.corruptPad.cause": "Dit kan komen door een onjuiste serverinstelling of door ander onverwacht gedrag. Neem contact op met de servicebeheerder.", + "pad.modals.deleted": "Verwijderd.", + "pad.modals.deleted.explanation": "Dit pad is verwijderd.", + "pad.modals.disconnected": "Uw verbinding is verbroken.", + "pad.modals.disconnected.explanation": "De verbinding met de server is verbroken", + "pad.modals.disconnected.cause": "De server is mogelijk niet beschikbaar. Stel de servicebeheerder op de hoogte.", + "pad.share": "Pad delen", + "pad.share.readonly": "Alleen-lezen", + "pad.share.link": "Koppeling", + "pad.share.emebdcode": "URL insluiten", + "pad.chat": "Chatten", + "pad.chat.title": "Chat voor dit pad opnenen", + "pad.chat.loadmessages": "Meer berichten laden", + "timeslider.pageTitle": "Tijdlijn voor {{appTitle}}", + "timeslider.toolbar.returnbutton": "Terug naar pad", + "timeslider.toolbar.authors": "Auteurs:", + "timeslider.toolbar.authorsList": "Geen auteurs", + "timeslider.toolbar.exportlink.title": "Exporteren", + "timeslider.exportCurrent": "Huidige versie exporteren als:", + "timeslider.version": "Versie {{version}}", + "timeslider.saved": "Opgeslagen op {{day}} {{month}} {{year}}", + "timeslider.playPause": "Padinhoud afspelen of pauzeren", + "timeslider.backRevision": "Een versie teruggaan voor deze pad", + "timeslider.forwardRevision": "Een versie vooruit gaan voor deze pad", + "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januari", + "timeslider.month.february": "februari", + "timeslider.month.march": "maart", + "timeslider.month.april": "april", + "timeslider.month.may": "mei", + "timeslider.month.june": "juni", + "timeslider.month.july": "juli", + "timeslider.month.august": "augustus", + "timeslider.month.september": "september", + "timeslider.month.october": "oktober", + "timeslider.month.november": "november", + "timeslider.month.december": "december", + "timeslider.unnamedauthors": "{{num}} onbekende {[plural(num) one: auteur, other: auteurs ]}", + "pad.savedrevs.marked": "Deze versie is nu gemarkeerd als opgeslagen versie", + "pad.savedrevs.timeslider": "U kunt opgeslagen versies bekijken via de tijdschuiver.", + "pad.userlist.entername": "Geef uw naam op", + "pad.userlist.unnamed": "zonder naam", + "pad.userlist.guest": "Gast", + "pad.userlist.deny": "Weigeren", + "pad.userlist.approve": "Goedkeuren", + "pad.editbar.clearcolors": "Auteurskleuren voor het hele document wissen?", + "pad.impexp.importbutton": "Nu importeren", + "pad.impexp.importing": "Bezig met importeren…", + "pad.impexp.confirmimport": "Door een bestand te importeren overschrijft u de huidige tekst van de pad. Wilt u echt doorgaan?", + "pad.impexp.convertFailed": "Het was niet mogelijk dit bestand te importeren. Gebruik een andere documentopmaak of kopieer en plak de inhoud handmatig", + "pad.impexp.padHasData": "Het was niet mogelijk dit bestand te importeren omdat er al wijzigingen aan de etherpad zijn gemaakt. Importeer naar een nieuwe etherpad.", + "pad.impexp.uploadFailed": "Het uploaden is mislukt. Probeer het opnieuw", + "pad.impexp.importfailed": "Importeren is mislukt", + "pad.impexp.copypaste": "Gebruik kopiëren en plakken", + "pad.impexp.exportdisabled": "Exporteren als {{type}} is uitgeschakeld. Neem contact op met de systeembeheerder voor details." +} diff --git a/sources/src/locales/nn.json b/sources/src/locales/nn.json old mode 100644 new mode 100755 index 11c2401..dc6368e --- a/sources/src/locales/nn.json +++ b/sources/src/locales/nn.json @@ -1,115 +1,114 @@ { - "@metadata": { - "authors": [ - "Unhammer" - ] - }, - "index.newPad": "Ny blokk", - "index.createOpenPad": "eller opprett/opna ei blokk med namnet:", - "pad.toolbar.bold.title": "Feit (Ctrl-B)", - "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", - "pad.toolbar.underline.title": "Understreking (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Gjennomstreking", - "pad.toolbar.ol.title": "Nummerert liste", - "pad.toolbar.ul.title": "Punktliste", - "pad.toolbar.indent.title": "Innrykk", - "pad.toolbar.unindent.title": "Rykk ut", - "pad.toolbar.undo.title": "Angra (Ctrl-Z)", - "pad.toolbar.redo.title": "Gjer om (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Fjern forfattarfargar", - "pad.toolbar.import_export.title": "Importer/eksporter til/frå ulike filformat", - "pad.toolbar.timeslider.title": "Tidslinje", - "pad.toolbar.savedRevision.title": "Lagra utgåver", - "pad.toolbar.settings.title": "Innstillingar", - "pad.toolbar.embed.title": "Bygg inn blokka i ei nettside", - "pad.toolbar.showusers.title": "Syn brukarane på blokka", - "pad.colorpicker.save": "Lagra", - "pad.colorpicker.cancel": "Avbryt", - "pad.loading": "Lastar …", - "pad.passwordRequired": "Du treng eit passord for å opna denne blokka", - "pad.permissionDenied": "Du har ikkje tilgang til denne blokka", - "pad.wrongPassword": "Feil passord", - "pad.settings.padSettings": "Blokkinnstillingar", - "pad.settings.myView": "Mi visning", - "pad.settings.stickychat": "Prat alltid synleg", - "pad.settings.colorcheck": "Forfattarfargar", - "pad.settings.linenocheck": "Linjenummer", - "pad.settings.fontType": "Skrifttype:", - "pad.settings.fontType.normal": "Vanleg", - "pad.settings.fontType.monospaced": "Fast breidd", - "pad.settings.globalView": "Global visning", - "pad.settings.language": "Språk:", - "pad.importExport.import_export": "Importer/eksporter", - "pad.importExport.import": "Last opp tekstfiler eller dokument", - "pad.importExport.importSuccessful": "Vellukka!", - "pad.importExport.export": "Eksporter blokka som:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Rein tekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Du kan berre importera frå rein tekst- eller HTML-format. Ver venleg og \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstaller Abiword\u003C/a\u003E om du treng meir avanserte importfunksjonar.", - "pad.modals.connected": "Tilkopla.", - "pad.modals.reconnecting": "Gjenopprettar tilkoplinga til blokka di …", - "pad.modals.forcereconnect": "Tving gjentilkopling", - "pad.modals.userdup": "Opna i eit anna vindauge", - "pad.modals.userdup.explanation": "Det ser ut som om denne blokka er open i meir enn eitt nettlesarvindauge på denne maskinen.", - "pad.modals.userdup.advice": "Kopla til om att for å bruka dette vinduage i staden.", - "pad.modals.unauth": "Ikkje tillate", - "pad.modals.unauth.explanation": "Rettane dine blei endra under visning av denne sida. Prøv å kopla til på nytt.", - "pad.modals.looping.explanation": "Det oppstod kommunikasjonsproblem med synkroniseringstenaren.", - "pad.modals.looping.cause": "Kanskje du kopla til gjennom ein inkompatibel brannmur eller mellomtenar.", - "pad.modals.initsocketfail": "Klarte ikkje å nå tenaren.", - "pad.modals.initsocketfail.explanation": "Klarte ikkje å kopla til synkroniseringstenaren.", - "pad.modals.initsocketfail.cause": "Dette er sannsynlegvis på grunn av eit problem med nettlesaren eller internettilkoplinga di.", - "pad.modals.slowcommit.explanation": "Tenaren svarer ikkje.", - "pad.modals.slowcommit.cause": "Dette kan vera på grunn av problem med nettilkoplinga.", - "pad.modals.deleted": "Sletta.", - "pad.modals.deleted.explanation": "Denne blokka er fjerna.", - "pad.modals.disconnected": "Du blei fråkopla.", - "pad.modals.disconnected.explanation": "Mista tilkoplinga til tenaren", - "pad.modals.disconnected.cause": "Tenaren er ikkje tilgjengeleg. Ver venleg og gi oss ei melding om dette skjer fleire gonger.", - "pad.share": "Del denne blokka", - "pad.share.readonly": "Skriveverna", - "pad.share.link": "Lenkje", - "pad.share.emebdcode": "URL for innebygging", - "pad.chat": "Prat", - "pad.chat.title": "Opna pratepanelet for denne blokka.", - "timeslider.pageTitle": "Tidslinje for {{appTitle}}", - "timeslider.toolbar.returnbutton": "Attende til blokka", - "timeslider.toolbar.authors": "Forfattarar:", - "timeslider.toolbar.authorsList": "Ingen forfattarar", - "timeslider.toolbar.exportlink.title": "Eksporter", - "timeslider.exportCurrent": "Eksporter denne utgåva som:", - "timeslider.version": "Utgåve {{version}}", - "timeslider.saved": "Lagra {{day}}. {{month}}, {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}", - "timeslider.month.january": "januar", - "timeslider.month.february": "februar", - "timeslider.month.march": "mars", - "timeslider.month.april": "april", - "timeslider.month.may": "mai", - "timeslider.month.june": "juni", - "timeslider.month.july": "juli", - "timeslider.month.august": "august", - "timeslider.month.september": "september", - "timeslider.month.october": "oktober", - "timeslider.month.november": "november", - "timeslider.month.december": "desember", - "pad.savedrevs.marked": "Denne utgåva er no merkt som ei lagra utgåve", - "pad.userlist.entername": "Skriv namnet ditt", - "pad.userlist.unnamed": "utan namn", - "pad.userlist.guest": "Gjest", - "pad.userlist.deny": "Nekt", - "pad.userlist.approve": "Godkjenn", - "pad.editbar.clearcolors": "Fjern forfattarfargar i heile dokumentet?", - "pad.impexp.importbutton": "Importer no", - "pad.impexp.importing": "Importerer …", - "pad.impexp.confirmimport": "Viss du importerer ei fil, vil denne blokka bli overskriven. Er du sikker på at du vil fortsetja?", - "pad.impexp.convertFailed": "Me klarte ikkje å importera denne fila. Ver venleg og bruk eit anna dokumentformat, eller kopier og lim inn for hand.", - "pad.impexp.uploadFailed": "Feil ved opplasting, ver venleg og prøv om att", - "pad.impexp.importfailed": "Feil ved importering", - "pad.impexp.copypaste": "Ver venleg og kopier og lim inn", - "pad.impexp.exportdisabled": "Eksport av {{type}} er skrudd av. Ver venleg og ta kontakt med systemadministrator for meir informasjon." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Unhammer" + ] + }, + "index.newPad": "Ny blokk", + "index.createOpenPad": "eller opprett/opna ei blokk med namnet:", + "pad.toolbar.bold.title": "Feit (Ctrl-B)", + "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", + "pad.toolbar.underline.title": "Understreking (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Gjennomstreking", + "pad.toolbar.ol.title": "Nummerert liste", + "pad.toolbar.ul.title": "Punktliste", + "pad.toolbar.indent.title": "Innrykk", + "pad.toolbar.unindent.title": "Rykk ut", + "pad.toolbar.undo.title": "Angra (Ctrl-Z)", + "pad.toolbar.redo.title": "Gjer om (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Fjern forfattarfargar", + "pad.toolbar.import_export.title": "Importer/eksporter til/frå ulike filformat", + "pad.toolbar.timeslider.title": "Tidslinje", + "pad.toolbar.savedRevision.title": "Lagra utgåver", + "pad.toolbar.settings.title": "Innstillingar", + "pad.toolbar.embed.title": "Bygg inn blokka i ei nettside", + "pad.toolbar.showusers.title": "Syn brukarane på blokka", + "pad.colorpicker.save": "Lagra", + "pad.colorpicker.cancel": "Avbryt", + "pad.loading": "Lastar …", + "pad.passwordRequired": "Du treng eit passord for å opna denne blokka", + "pad.permissionDenied": "Du har ikkje tilgang til denne blokka", + "pad.wrongPassword": "Feil passord", + "pad.settings.padSettings": "Blokkinnstillingar", + "pad.settings.myView": "Mi visning", + "pad.settings.stickychat": "Prat alltid synleg", + "pad.settings.colorcheck": "Forfattarfargar", + "pad.settings.linenocheck": "Linjenummer", + "pad.settings.fontType": "Skrifttype:", + "pad.settings.fontType.normal": "Vanleg", + "pad.settings.fontType.monospaced": "Fast breidd", + "pad.settings.globalView": "Global visning", + "pad.settings.language": "Språk:", + "pad.importExport.import_export": "Importer/eksporter", + "pad.importExport.import": "Last opp tekstfiler eller dokument", + "pad.importExport.importSuccessful": "Vellukka!", + "pad.importExport.export": "Eksporter blokka som:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Rein tekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Du kan berre importera frå rein tekst- eller HTML-format. Ver venleg og installer Abiword om du treng meir avanserte importfunksjonar.", + "pad.modals.connected": "Tilkopla.", + "pad.modals.reconnecting": "Gjenopprettar tilkoplinga til blokka di …", + "pad.modals.forcereconnect": "Tving gjentilkopling", + "pad.modals.userdup": "Opna i eit anna vindauge", + "pad.modals.userdup.explanation": "Det ser ut som om denne blokka er open i meir enn eitt nettlesarvindauge på denne maskinen.", + "pad.modals.userdup.advice": "Kopla til om att for å bruka dette vinduage i staden.", + "pad.modals.unauth": "Ikkje tillate", + "pad.modals.unauth.explanation": "Rettane dine blei endra under visning av denne sida. Prøv å kopla til på nytt.", + "pad.modals.looping.explanation": "Det oppstod kommunikasjonsproblem med synkroniseringstenaren.", + "pad.modals.looping.cause": "Kanskje du kopla til gjennom ein inkompatibel brannmur eller mellomtenar.", + "pad.modals.initsocketfail": "Klarte ikkje å nå tenaren.", + "pad.modals.initsocketfail.explanation": "Klarte ikkje å kopla til synkroniseringstenaren.", + "pad.modals.initsocketfail.cause": "Dette er sannsynlegvis på grunn av eit problem med nettlesaren eller internettilkoplinga di.", + "pad.modals.slowcommit.explanation": "Tenaren svarer ikkje.", + "pad.modals.slowcommit.cause": "Dette kan vera på grunn av problem med nettilkoplinga.", + "pad.modals.deleted": "Sletta.", + "pad.modals.deleted.explanation": "Denne blokka er fjerna.", + "pad.modals.disconnected": "Du blei fråkopla.", + "pad.modals.disconnected.explanation": "Mista tilkoplinga til tenaren", + "pad.modals.disconnected.cause": "Tenaren er ikkje tilgjengeleg. Ver venleg og gi oss ei melding om dette skjer fleire gonger.", + "pad.share": "Del denne blokka", + "pad.share.readonly": "Skriveverna", + "pad.share.link": "Lenkje", + "pad.share.emebdcode": "URL for innebygging", + "pad.chat": "Prat", + "pad.chat.title": "Opna pratepanelet for denne blokka.", + "timeslider.pageTitle": "Tidslinje for {{appTitle}}", + "timeslider.toolbar.returnbutton": "Attende til blokka", + "timeslider.toolbar.authors": "Forfattarar:", + "timeslider.toolbar.authorsList": "Ingen forfattarar", + "timeslider.toolbar.exportlink.title": "Eksporter", + "timeslider.exportCurrent": "Eksporter denne utgåva som:", + "timeslider.version": "Utgåve {{version}}", + "timeslider.saved": "Lagra {{day}}. {{month}}, {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}", + "timeslider.month.january": "januar", + "timeslider.month.february": "februar", + "timeslider.month.march": "mars", + "timeslider.month.april": "april", + "timeslider.month.may": "mai", + "timeslider.month.june": "juni", + "timeslider.month.july": "juli", + "timeslider.month.august": "august", + "timeslider.month.september": "september", + "timeslider.month.october": "oktober", + "timeslider.month.november": "november", + "timeslider.month.december": "desember", + "pad.savedrevs.marked": "Denne utgåva er no merkt som ei lagra utgåve", + "pad.userlist.entername": "Skriv namnet ditt", + "pad.userlist.unnamed": "utan namn", + "pad.userlist.guest": "Gjest", + "pad.userlist.deny": "Nekt", + "pad.userlist.approve": "Godkjenn", + "pad.editbar.clearcolors": "Fjern forfattarfargar i heile dokumentet?", + "pad.impexp.importbutton": "Importer no", + "pad.impexp.importing": "Importerer …", + "pad.impexp.confirmimport": "Viss du importerer ei fil, vil denne blokka bli overskriven. Er du sikker på at du vil fortsetja?", + "pad.impexp.convertFailed": "Me klarte ikkje å importera denne fila. Ver venleg og bruk eit anna dokumentformat, eller kopier og lim inn for hand.", + "pad.impexp.uploadFailed": "Feil ved opplasting, ver venleg og prøv om att", + "pad.impexp.importfailed": "Feil ved importering", + "pad.impexp.copypaste": "Ver venleg og kopier og lim inn", + "pad.impexp.exportdisabled": "Eksport av {{type}} er skrudd av. Ver venleg og ta kontakt med systemadministrator for meir informasjon." +} diff --git a/sources/src/locales/oc.json b/sources/src/locales/oc.json old mode 100644 new mode 100755 index 3c5d29e..62625ed --- a/sources/src/locales/oc.json +++ b/sources/src/locales/oc.json @@ -1,122 +1,126 @@ { - "@metadata": { - "authors": [ - "Cedric31" - ] - }, - "index.newPad": "Pad novèl", - "index.createOpenPad": "o crear/dobrir un Pad intitulat :", - "pad.toolbar.bold.title": "Gras (Ctrl-B)", - "pad.toolbar.italic.title": "Italica (Ctrl-I)", - "pad.toolbar.underline.title": "Soslinhat (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Raiat", - "pad.toolbar.ol.title": "Lista ordenada", - "pad.toolbar.ul.title": "Lista amb de piuses", - "pad.toolbar.indent.title": "Indentar", - "pad.toolbar.unindent.title": "Desindentar", - "pad.toolbar.undo.title": "Anullar (Ctrl-Z)", - "pad.toolbar.redo.title": "Restablir (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Escafar las colors qu'identifican los autors", - "pad.toolbar.import_export.title": "Importar/Exportar de/cap a un format de fichièr diferent", - "pad.toolbar.timeslider.title": "Istoric dinamic", - "pad.toolbar.savedRevision.title": "Enregistrar la revision", - "pad.toolbar.settings.title": "Paramètres", - "pad.toolbar.embed.title": "Partejar e integrar aqueste Pad", - "pad.toolbar.showusers.title": "Afichar los utilizaires del Pad", - "pad.colorpicker.save": "Enregistrar", - "pad.colorpicker.cancel": "Anullar", - "pad.loading": "Cargament...", - "pad.passwordRequired": "Avètz besonh d'un senhal per accedir a aqueste Pad", - "pad.permissionDenied": "Vos es pas permés d’accedir a aqueste Pad.", - "pad.wrongPassword": "Senhal incorrècte", - "pad.settings.padSettings": "Paramètres del Pad", - "pad.settings.myView": "Ma vista", - "pad.settings.stickychat": "Afichar totjorn lo chat", - "pad.settings.colorcheck": "Colors d’identificacion", - "pad.settings.linenocheck": "Numèros de linhas", - "pad.settings.rtlcheck": "Lectura de drecha a esquèrra", - "pad.settings.fontType": "Tipe de poliça :", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Vista d’ensemble", - "pad.settings.language": "Lenga :", - "pad.importExport.import_export": "Importar/Exportar", - "pad.importExport.import": "Cargar un tèxte o un document", - "pad.importExport.importSuccessful": "Capitat !", - "pad.importExport.export": "Exportar lo Pad actual coma :", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Tèxte brut", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Podètz pas importar que de formats tèxte brut o html. Per de foncionalitats d'importacion mai evoluadas, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstallatz abiword\u003C/a\u003E.", - "pad.modals.connected": "Connectat.", - "pad.modals.reconnecting": "Reconnexion cap a vòstre Pad...", - "pad.modals.forcereconnect": "Forçar la reconnexion.", - "pad.modals.userdup": "Dobèrt dins una autra fenèstra", - "pad.modals.userdup.explanation": "Sembla qu'aqueste Pad es dobèrt dins mai d'una fenèstra de vòstre navigador sus aqueste ordenador.", - "pad.modals.userdup.advice": "Se reconnectar en utilizant aquesta fenèstra.", - "pad.modals.unauth": "Pas autorizat", - "pad.modals.unauth.explanation": "Vòstras permissions son estadas cambiadas al moment de l'afichatge d'aquesta pagina. Ensajatz de vos reconnectar.", - "pad.modals.looping.explanation": "Avèm un problèma de comunicacion amb lo servidor de sincronizacion.", - "pad.modals.looping.cause": "Es possible que vòstra connexion siá protegida per un parafuòc incompatible o un servidor proxy incompatible.", - "pad.modals.initsocketfail": "Lo servidor es introbable.", - "pad.modals.initsocketfail.explanation": "Impossible de se connectar al servidor de sincronizacion.", - "pad.modals.initsocketfail.cause": "Lo problèma pòt venir de vòstre navigador web o de vòstra connexion Internet.", - "pad.modals.slowcommit.explanation": "Lo servidor respond pas.", - "pad.modals.slowcommit.cause": "Aqueste problèma pòt venir d'una marrida connectivitat a la ret.", - "pad.modals.badChangeset.explanation": "Una modificacion qu'avètz efectuada es estada classada coma illegala pel servidor de sincronizacion.", - "pad.modals.badChangeset.cause": "Aquò pòt èsser degut a una marrida configuracion del servidor o a un autre comportament inesperat. Contactatz l’administrator del servici, si pensatz qu’es una error. Ensajatz de vos reconnectar per contunhar de modificar.", - "pad.modals.corruptPad.explanation": "Lo blòt al qual ensajatz d’accedir es corromput.", - "pad.modals.corruptPad.cause": "Aquò pòt èsser degut a una marrida configuracion del servidor o a un autre comportament inesperat. Contactatz l’administrator del servici.", - "pad.modals.deleted": "Suprimit.", - "pad.modals.deleted.explanation": "Aqueste Pad es estat suprimit.", - "pad.modals.disconnected": "Sètz estat desconnectat.", - "pad.modals.disconnected.explanation": "La connexion al servidor a fracassat.", - "pad.modals.disconnected.cause": "Es possible que lo servidor siá indisponible. Se lo problèma contunha, informatz-ne l'administrator del servici.", - "pad.share": "Partejar aqueste Pad", - "pad.share.readonly": "Lectura sola", - "pad.share.link": "Ligam", - "pad.share.emebdcode": "Ligam d'integrar", - "pad.chat": "Chat", - "pad.chat.title": "Dobrir lo chat associat a aqueste pad.", - "pad.chat.loadmessages": "Cargar mai de messatges.", - "timeslider.pageTitle": "Istoric dinamic de {{appTitle}}", - "timeslider.toolbar.returnbutton": "Retorn a aqueste Pad.", - "timeslider.toolbar.authors": "Autors :", - "timeslider.toolbar.authorsList": "Pas cap d'autor", - "timeslider.toolbar.exportlink.title": "Exportar", - "timeslider.exportCurrent": "Exportar la version actuala en :", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Enregistrat lo {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Genièr", - "timeslider.month.february": "Febrièr", - "timeslider.month.march": "Març", - "timeslider.month.april": "Abril", - "timeslider.month.may": "Mai", - "timeslider.month.june": "Junh", - "timeslider.month.july": "Julhet", - "timeslider.month.august": "Agost", - "timeslider.month.september": "Setembre", - "timeslider.month.october": "Octobre", - "timeslider.month.november": "Novembre", - "timeslider.month.december": "Decembre", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anonim, other: autors anonims ]}", - "pad.savedrevs.marked": "Aquesta revision es ara marcada coma revision enregistrada", - "pad.userlist.entername": "Entratz vòstre nom", - "pad.userlist.unnamed": "sens nom", - "pad.userlist.guest": "Convidat", - "pad.userlist.deny": "Refusar", - "pad.userlist.approve": "Aprovar", - "pad.editbar.clearcolors": "Escafar las colors de paternitat dins tot lo document ?", - "pad.impexp.importbutton": "Importar ara", - "pad.impexp.importing": "Impòrt en cors...", - "pad.impexp.confirmimport": "Importar un fichièr espotirà lo tèxte actual del blòt. Sètz segur que lo volètz far ?", - "pad.impexp.convertFailed": "Podèm pas importar aqueste fichièr. Utilizatz un autre format de document o fasètz un copiar/pegar manual", - "pad.impexp.uploadFailed": "Lo telecargament a fracassat, reensajatz", - "pad.impexp.importfailed": "Fracàs de l'importacion", - "pad.impexp.copypaste": "Copiatz/pegatz", - "pad.impexp.exportdisabled": "Exportar al format {{type}} es desactivat. Contactatz vòstre administrator del sistèma per mai de detalhs." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Cedric31" + ] + }, + "index.newPad": "Pad novèl", + "index.createOpenPad": "o crear/dobrir un Pad intitulat :", + "pad.toolbar.bold.title": "Gras (Ctrl-B)", + "pad.toolbar.italic.title": "Italica (Ctrl-I)", + "pad.toolbar.underline.title": "Soslinhat (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Raiat (Ctrl+5)", + "pad.toolbar.ol.title": "Lista ordenada (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Lista pas ordenada (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Indentar (TAB)", + "pad.toolbar.unindent.title": "Desindentar (Maj+TAB)", + "pad.toolbar.undo.title": "Anullar (Ctrl-Z)", + "pad.toolbar.redo.title": "Restablir (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Escafar las colors qu'identifican los autors (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importar/Exportar de/cap a un format de fichièr diferent", + "pad.toolbar.timeslider.title": "Istoric dinamic", + "pad.toolbar.savedRevision.title": "Enregistrar la revision", + "pad.toolbar.settings.title": "Paramètres", + "pad.toolbar.embed.title": "Partejar e integrar aqueste Pad", + "pad.toolbar.showusers.title": "Afichar los utilizaires del Pad", + "pad.colorpicker.save": "Enregistrar", + "pad.colorpicker.cancel": "Anullar", + "pad.loading": "Cargament...", + "pad.noCookie": "Lo cookie a pas pogut èsser trobat. Autorizatz los cookies dins vòstre navigador !", + "pad.passwordRequired": "Avètz besonh d'un senhal per accedir a aqueste Pad", + "pad.permissionDenied": "Vos es pas permés d’accedir a aqueste Pad.", + "pad.wrongPassword": "Senhal incorrècte", + "pad.settings.padSettings": "Paramètres del Pad", + "pad.settings.myView": "Ma vista", + "pad.settings.stickychat": "Afichar totjorn lo chat", + "pad.settings.chatandusers": "Afichar la discussion e los utilizaires", + "pad.settings.colorcheck": "Colors d’identificacion", + "pad.settings.linenocheck": "Numèros de linhas", + "pad.settings.rtlcheck": "Lectura de drecha a esquèrra", + "pad.settings.fontType": "Tipe de poliça :", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Vista d’ensemble", + "pad.settings.language": "Lenga :", + "pad.importExport.import_export": "Importar/Exportar", + "pad.importExport.import": "Cargar un tèxte o un document", + "pad.importExport.importSuccessful": "Capitat !", + "pad.importExport.export": "Exportar lo Pad actual coma :", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Tèxte brut", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Podètz pas importar que de formats tèxte brut o html. Per de foncionalitats d'importacion mai evoluadas, installatz abiword.", + "pad.modals.connected": "Connectat.", + "pad.modals.reconnecting": "Reconnexion cap a vòstre Pad...", + "pad.modals.forcereconnect": "Forçar la reconnexion.", + "pad.modals.userdup": "Dobèrt dins una autra fenèstra", + "pad.modals.userdup.explanation": "Sembla qu'aqueste Pad es dobèrt dins mai d'una fenèstra de vòstre navigador sus aqueste ordenador.", + "pad.modals.userdup.advice": "Se reconnectar en utilizant aquesta fenèstra.", + "pad.modals.unauth": "Pas autorizat", + "pad.modals.unauth.explanation": "Vòstras permissions son estadas cambiadas al moment de l'afichatge d'aquesta pagina. Ensajatz de vos reconnectar.", + "pad.modals.looping.explanation": "Avèm un problèma de comunicacion amb lo servidor de sincronizacion.", + "pad.modals.looping.cause": "Es possible que vòstra connexion siá protegida per un parafuòc incompatible o un servidor proxy incompatible.", + "pad.modals.initsocketfail": "Lo servidor es introbable.", + "pad.modals.initsocketfail.explanation": "Impossible de se connectar al servidor de sincronizacion.", + "pad.modals.initsocketfail.cause": "Lo problèma pòt venir de vòstre navigador web o de vòstra connexion Internet.", + "pad.modals.slowcommit.explanation": "Lo servidor respond pas.", + "pad.modals.slowcommit.cause": "Aqueste problèma pòt venir d'una marrida connectivitat a la ret.", + "pad.modals.badChangeset.explanation": "Una modificacion qu'avètz efectuada es estada classada coma illegala pel servidor de sincronizacion.", + "pad.modals.badChangeset.cause": "Aquò pòt èsser degut a una marrida configuracion del servidor o a un autre comportament inesperat. Contactatz l’administrator del servici, si pensatz qu’es una error. Ensajatz de vos reconnectar per contunhar de modificar.", + "pad.modals.corruptPad.explanation": "Lo blòt al qual ensajatz d’accedir es corromput.", + "pad.modals.corruptPad.cause": "Aquò pòt èsser degut a una marrida configuracion del servidor o a un autre comportament inesperat. Contactatz l’administrator del servici.", + "pad.modals.deleted": "Suprimit.", + "pad.modals.deleted.explanation": "Aqueste Pad es estat suprimit.", + "pad.modals.disconnected": "Sètz estat desconnectat.", + "pad.modals.disconnected.explanation": "La connexion al servidor a fracassat.", + "pad.modals.disconnected.cause": "Es possible que lo servidor siá indisponible. Se lo problèma contunha, informatz-ne l'administrator del servici.", + "pad.share": "Partejar aqueste Pad", + "pad.share.readonly": "Lectura sola", + "pad.share.link": "Ligam", + "pad.share.emebdcode": "Ligam d'integrar", + "pad.chat": "Chat", + "pad.chat.title": "Dobrir lo chat associat a aqueste pad.", + "pad.chat.loadmessages": "Cargar mai de messatges.", + "timeslider.pageTitle": "Istoric dinamic de {{appTitle}}", + "timeslider.toolbar.returnbutton": "Retorn a aqueste Pad.", + "timeslider.toolbar.authors": "Autors :", + "timeslider.toolbar.authorsList": "Pas cap d'autor", + "timeslider.toolbar.exportlink.title": "Exportar", + "timeslider.exportCurrent": "Exportar la version actuala en :", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Enregistrat lo {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Genièr", + "timeslider.month.february": "Febrièr", + "timeslider.month.march": "Març", + "timeslider.month.april": "Abril", + "timeslider.month.may": "Mai", + "timeslider.month.june": "Junh", + "timeslider.month.july": "Julhet", + "timeslider.month.august": "Agost", + "timeslider.month.september": "Setembre", + "timeslider.month.october": "Octobre", + "timeslider.month.november": "Novembre", + "timeslider.month.december": "Decembre", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anonim, other: autors anonims ]}", + "pad.savedrevs.marked": "Aquesta revision es ara marcada coma revision enregistrada", + "pad.savedrevs.timeslider": "Podètz veire las revisions enregistradas en visitant l’ascensor temporal", + "pad.userlist.entername": "Entratz vòstre nom", + "pad.userlist.unnamed": "sens nom", + "pad.userlist.guest": "Convidat", + "pad.userlist.deny": "Refusar", + "pad.userlist.approve": "Aprovar", + "pad.editbar.clearcolors": "Escafar las colors de paternitat dins tot lo document ?", + "pad.impexp.importbutton": "Importar ara", + "pad.impexp.importing": "Impòrt en cors...", + "pad.impexp.confirmimport": "Importar un fichièr espotirà lo tèxte actual del blòt. Sètz segur que lo volètz far ?", + "pad.impexp.convertFailed": "Podèm pas importar aqueste fichièr. Utilizatz un autre format de document o fasètz un copiar/pegar manual", + "pad.impexp.padHasData": "Avèm pas pogut importar aqueste fichièr perque aqueste blòt a ja agut de modificacions ; importatz cap a un blòt novèl", + "pad.impexp.uploadFailed": "Lo telecargament a fracassat, reensajatz", + "pad.impexp.importfailed": "Fracàs de l'importacion", + "pad.impexp.copypaste": "Copiatz/pegatz", + "pad.impexp.exportdisabled": "Exportar al format {{type}} es desactivat. Contactatz vòstre administrator del sistèma per mai de detalhs." +} diff --git a/sources/src/locales/os.json b/sources/src/locales/os.json old mode 100644 new mode 100755 index 99a9efb..941fe2b --- a/sources/src/locales/os.json +++ b/sources/src/locales/os.json @@ -1,118 +1,117 @@ { - "@metadata": { - "authors": [ - "Bouron" - ] - }, - "index.newPad": "Ног", - "index.createOpenPad": "кӕнӕ сараз/бакӕн ног документ ахӕм номимӕ:", - "pad.toolbar.bold.title": "Бӕзджын (Ctrl-B)", - "pad.toolbar.italic.title": "Къӕдз (Ctrl-I)", - "pad.toolbar.underline.title": "Бынылхахх (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Хахх", - "pad.toolbar.ol.title": "Нымад номхыгъд", - "pad.toolbar.ul.title": "Ӕнӕнымад номхыгъд", - "pad.toolbar.indent.title": "Хаст", - "pad.toolbar.unindent.title": "Ӕттӕмӕхаст", - "pad.toolbar.undo.title": "Раздӕхын (Ctrl-Z)", - "pad.toolbar.redo.title": "Рацаразын (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Фыссӕджы нысӕнттӕ айсынӕн", - "pad.toolbar.import_export.title": "Импорт/экспорт ӕндӕр файлы форматтӕй/форматтӕм", - "pad.toolbar.timeslider.title": "Рӕстӕджы хахх", - "pad.toolbar.savedRevision.title": "Фӕлтӕр бавӕрынӕн", - "pad.toolbar.settings.title": "Уагӕвӕрдтӕ", - "pad.toolbar.embed.title": "Ацы документ бафтау æмæ йæ тыххæй ахъæр кæн", - "pad.toolbar.showusers.title": "Ацы документы архайджыты равдисын", - "pad.colorpicker.save": "Нывæрын", - "pad.colorpicker.cancel": "Ныууадзын", - "pad.loading": "Æвгæд цæуы...", - "pad.passwordRequired": "Ацы документмӕ рывналынӕн дӕ хъӕуы пароль", - "pad.permissionDenied": "Дӕуӕн нӕй бар ацы документмӕ рывналын", - "pad.wrongPassword": "Дӕ пароль раст нӕу", - "pad.settings.padSettings": "Документы уагӕвӕрдтытӕ", - "pad.settings.myView": "Мӕ уынд", - "pad.settings.stickychat": "Ныхас алкуыдӕр ӕвдисын", - "pad.settings.colorcheck": "Фыссӕджы хуызтӕ", - "pad.settings.linenocheck": "Рӕнхъыты номыртӕ", - "pad.settings.rtlcheck": "Мидис рахизӕй галиумӕ хъӕуы фӕрсын?", - "pad.settings.fontType": "Шрифты хуыз:", - "pad.settings.fontType.normal": "Хуымӕтӕг", - "pad.settings.fontType.monospaced": "Ӕмуӕрӕх", - "pad.settings.globalView": "Иууылы уынд", - "pad.settings.language": "Æвзаг:", - "pad.importExport.import_export": "Импорт/экспорт", - "pad.importExport.import": "Исты текст файл кӕнӕ документ бавгӕнын", - "pad.importExport.importSuccessful": "Ӕнтыст!", - "pad.importExport.export": "Ныры документ сэкпорт кӕнын куыд:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Хуымæтæг текст", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Дӕ бон у импорт кӕнын ӕрмӕст хуымӕтӕг текст кӕнӕ html форматӕй. Лӕмбынӕг импорты миниуджытӕн, дӕ хорзӕхӕй, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eсӕвӕр abiword\u003C/a\u003E.", - "pad.modals.connected": "Иугонд.", - "pad.modals.reconnecting": "Дӕ документмӕ ногӕй иугонд цӕуы..", - "pad.modals.forcereconnect": "Тыххӕй баиу кӕнын", - "pad.modals.userdup": "Ног рудзынджы бакӕнын", - "pad.modals.userdup.explanation": "Ацы документ ӕвӕццӕгӕн ацы компьютеры иуӕй фылдӕр рудзынджы у гом.", - "pad.modals.userdup.advice": "Ногӕй баиу уын, ацы рудзынгӕй архайыны бӕсты.", - "pad.modals.unauth": "Нӕ авторизацигонд", - "pad.modals.unauth.explanation": "Дӕ бартӕ фӕивтой, цалынмӕ ды ацы фарс кастӕ. Бафӕлвар ногӕй баиу уын.", - "pad.modals.looping.explanation": "Синхронизацийы серверимӕ баиу кӕныны проблемӕ.", - "pad.modals.looping.cause": "Уӕццӕгӕн ды баиу дӕ ӕнӕмбӕлгӕ файрвол кӕнӕ проксийы уылты.", - "pad.modals.initsocketfail": "Сервермӕ баиугӕнӕн нӕй.", - "pad.modals.initsocketfail.explanation": "Нӕ рауадис синхронизацийы сервермӕ баиу уын.", - "pad.modals.initsocketfail.cause": "Ай уӕццӕгӕн дӕ сгарӕн кӕнӕ дӕ интернеты тыххӕй у.", - "pad.modals.slowcommit.explanation": "Сервер нӕ дзуапп кӕны.", - "pad.modals.slowcommit.cause": "Ай гӕнӕн ис у хызы проблемӕйы тыххӕй.", - "pad.modals.deleted": "Хафт.", - "pad.modals.deleted.explanation": "Документ хафт ӕрцыд.", - "pad.modals.disconnected": "Ды хицӕнгонд ӕрцыдтӕ.", - "pad.modals.disconnected.explanation": "Серверимӕ иугонд фесӕфтис", - "pad.modals.disconnected.cause": "Сервермӕ гӕнӕн ис баиугӕнӕн нӕй. Дӕ хорзӕхӕй, фехъусын нын ӕй кӕн, кӕд афтӕ дарддӕр кӕна.", - "pad.share": "Ацы документ райуарын", - "pad.share.readonly": "Ӕрмӕст фӕрсынӕн", - "pad.share.link": "Ӕрвитӕн", - "pad.share.emebdcode": "URL бавӕрын", - "pad.chat": "Ныхас", - "pad.chat.title": "Оцы документӕн чат бакӕн.", - "pad.chat.loadmessages": "Фылдӕр фыстӕг равгӕнын", - "timeslider.pageTitle": "{{appTitle}}-ы рӕтӕджы хахх", - "timeslider.toolbar.returnbutton": "Фӕстӕмӕ, документмӕ", - "timeslider.toolbar.authors": "Фыссӕджытӕ:", - "timeslider.toolbar.authorsList": "Фыссӕджытӕ нӕй", - "timeslider.toolbar.exportlink.title": "Экспорт", - "timeslider.exportCurrent": "Сэкспорт кӕнын ныры фӕлтӕр куыд:", - "timeslider.version": "Верси {{version}}", - "timeslider.saved": "Ӕвӕрд ӕрцыд {{year}}-ӕм азы, {{day}}-ӕм {{month}}-ы", - "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "январь", - "timeslider.month.february": "февраль", - "timeslider.month.march": "мартъи", - "timeslider.month.april": "апрель", - "timeslider.month.may": "май", - "timeslider.month.june": "июнь", - "timeslider.month.july": "июль", - "timeslider.month.august": "август", - "timeslider.month.september": "сентябрь", - "timeslider.month.october": "октябрь", - "timeslider.month.november": "ноябрь", - "timeslider.month.december": "декабрь", - "timeslider.unnamedauthors": "{{num}} ӕнӕном фыссӕджы", - "pad.savedrevs.marked": "Ацы фӕлтӕр ныр куыд ӕвӕрд фӕлтӕр нысангонд ӕрцыд", - "pad.userlist.entername": "Дӕ ном бафысс", - "pad.userlist.unnamed": "ӕнӕном", - "pad.userlist.guest": "Уазӕг", - "pad.userlist.deny": "Ныууадзын", - "pad.userlist.approve": "Сбӕлвырд кӕнын", - "pad.editbar.clearcolors": "Ӕнӕхъӕн документӕй хъӕуы айсын фыссӕджыты нысӕнттӕ?", - "pad.impexp.importbutton": "Еныр симпорт кӕнын", - "pad.impexp.importing": "Импорт цӕуы...", - "pad.impexp.confirmimport": "Файлы импорт документы ныры текст бынтон фӕивдзӕнис. Ӕцӕг дӕ фӕнды уый саразын?", - "pad.impexp.convertFailed": "Махӕн нӕ бон не ссис ацы файл симпорт кӕнын. Дӕ хорзӕхӕй, спайда кӕн ӕндӕр файлы форматӕй, кӕнӕ скъопи кӕн ӕмӕ батысс текст дӕхӕдӕг.", - "pad.impexp.uploadFailed": "Бавгӕнын нӕ рауад, дӕ хорзӕхӕй, фӕстӕдӕр бафӕлвар", - "pad.impexp.importfailed": "Импорт нӕ рауад", - "pad.impexp.copypaste": "Дӕ хорзӕхӕй, къопи кӕн ӕмӕ ӕвӕр", - "pad.impexp.exportdisabled": "{{type}} форматы экспорт хицӕн у. Дӕ хорзӕхӕй, бадзур дӕ системон администратортӕм фылдӕр базонынӕн." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Bouron" + ] + }, + "index.newPad": "Ног", + "index.createOpenPad": "кӕнӕ сараз/бакӕн ног документ ахӕм номимӕ:", + "pad.toolbar.bold.title": "Бӕзджын (Ctrl-B)", + "pad.toolbar.italic.title": "Къӕдз (Ctrl-I)", + "pad.toolbar.underline.title": "Бынылхахх (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Хахх", + "pad.toolbar.ol.title": "Нымад номхыгъд", + "pad.toolbar.ul.title": "Ӕнӕнымад номхыгъд", + "pad.toolbar.indent.title": "Хаст", + "pad.toolbar.unindent.title": "Ӕттӕмӕхаст", + "pad.toolbar.undo.title": "Раздӕхын (Ctrl-Z)", + "pad.toolbar.redo.title": "Рацаразын (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Фыссӕджы нысӕнттӕ айсынӕн", + "pad.toolbar.import_export.title": "Импорт/экспорт ӕндӕр файлы форматтӕй/форматтӕм", + "pad.toolbar.timeslider.title": "Рӕстӕджы хахх", + "pad.toolbar.savedRevision.title": "Фӕлтӕр бавӕрынӕн", + "pad.toolbar.settings.title": "Уагӕвӕрдтӕ", + "pad.toolbar.embed.title": "Ацы документ бафтау æмæ йæ тыххæй ахъæр кæн", + "pad.toolbar.showusers.title": "Ацы документы архайджыты равдисын", + "pad.colorpicker.save": "Нывæрын", + "pad.colorpicker.cancel": "Ныууадзын", + "pad.loading": "Æвгæд цæуы...", + "pad.passwordRequired": "Ацы документмӕ рывналынӕн дӕ хъӕуы пароль", + "pad.permissionDenied": "Дӕуӕн нӕй бар ацы документмӕ рывналын", + "pad.wrongPassword": "Дӕ пароль раст нӕу", + "pad.settings.padSettings": "Документы уагӕвӕрдтытӕ", + "pad.settings.myView": "Мӕ уынд", + "pad.settings.stickychat": "Ныхас алкуыдӕр ӕвдисын", + "pad.settings.colorcheck": "Фыссӕджы хуызтӕ", + "pad.settings.linenocheck": "Рӕнхъыты номыртӕ", + "pad.settings.rtlcheck": "Мидис рахизӕй галиумӕ хъӕуы фӕрсын?", + "pad.settings.fontType": "Шрифты хуыз:", + "pad.settings.fontType.normal": "Хуымӕтӕг", + "pad.settings.fontType.monospaced": "Ӕмуӕрӕх", + "pad.settings.globalView": "Иууылы уынд", + "pad.settings.language": "Æвзаг:", + "pad.importExport.import_export": "Импорт/экспорт", + "pad.importExport.import": "Исты текст файл кӕнӕ документ бавгӕнын", + "pad.importExport.importSuccessful": "Ӕнтыст!", + "pad.importExport.export": "Ныры документ сэкпорт кӕнын куыд:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Хуымæтæг текст", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Дӕ бон у импорт кӕнын ӕрмӕст хуымӕтӕг текст кӕнӕ html форматӕй. Лӕмбынӕг импорты миниуджытӕн, дӕ хорзӕхӕй, сӕвӕр abiword.", + "pad.modals.connected": "Иугонд.", + "pad.modals.reconnecting": "Дӕ документмӕ ногӕй иугонд цӕуы..", + "pad.modals.forcereconnect": "Тыххӕй баиу кӕнын", + "pad.modals.userdup": "Ног рудзынджы бакӕнын", + "pad.modals.userdup.explanation": "Ацы документ ӕвӕццӕгӕн ацы компьютеры иуӕй фылдӕр рудзынджы у гом.", + "pad.modals.userdup.advice": "Ногӕй баиу уын, ацы рудзынгӕй архайыны бӕсты.", + "pad.modals.unauth": "Нӕ авторизацигонд", + "pad.modals.unauth.explanation": "Дӕ бартӕ фӕивтой, цалынмӕ ды ацы фарс кастӕ. Бафӕлвар ногӕй баиу уын.", + "pad.modals.looping.explanation": "Синхронизацийы серверимӕ баиу кӕныны проблемӕ.", + "pad.modals.looping.cause": "Уӕццӕгӕн ды баиу дӕ ӕнӕмбӕлгӕ файрвол кӕнӕ проксийы уылты.", + "pad.modals.initsocketfail": "Сервермӕ баиугӕнӕн нӕй.", + "pad.modals.initsocketfail.explanation": "Нӕ рауадис синхронизацийы сервермӕ баиу уын.", + "pad.modals.initsocketfail.cause": "Ай уӕццӕгӕн дӕ сгарӕн кӕнӕ дӕ интернеты тыххӕй у.", + "pad.modals.slowcommit.explanation": "Сервер нӕ дзуапп кӕны.", + "pad.modals.slowcommit.cause": "Ай гӕнӕн ис у хызы проблемӕйы тыххӕй.", + "pad.modals.deleted": "Хафт.", + "pad.modals.deleted.explanation": "Документ хафт ӕрцыд.", + "pad.modals.disconnected": "Ды хицӕнгонд ӕрцыдтӕ.", + "pad.modals.disconnected.explanation": "Серверимӕ иугонд фесӕфтис", + "pad.modals.disconnected.cause": "Сервермӕ гӕнӕн ис баиугӕнӕн нӕй. Дӕ хорзӕхӕй, фехъусын нын ӕй кӕн, кӕд афтӕ дарддӕр кӕна.", + "pad.share": "Ацы документ райуарын", + "pad.share.readonly": "Ӕрмӕст фӕрсынӕн", + "pad.share.link": "Ӕрвитӕн", + "pad.share.emebdcode": "URL бавӕрын", + "pad.chat": "Ныхас", + "pad.chat.title": "Оцы документӕн чат бакӕн.", + "pad.chat.loadmessages": "Фылдӕр фыстӕг равгӕнын", + "timeslider.pageTitle": "{{appTitle}}-ы рӕтӕджы хахх", + "timeslider.toolbar.returnbutton": "Фӕстӕмӕ, документмӕ", + "timeslider.toolbar.authors": "Фыссӕджытӕ:", + "timeslider.toolbar.authorsList": "Фыссӕджытӕ нӕй", + "timeslider.toolbar.exportlink.title": "Экспорт", + "timeslider.exportCurrent": "Сэкспорт кӕнын ныры фӕлтӕр куыд:", + "timeslider.version": "Верси {{version}}", + "timeslider.saved": "Ӕвӕрд ӕрцыд {{year}}-ӕм азы, {{day}}-ӕм {{month}}-ы", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "январь", + "timeslider.month.february": "февраль", + "timeslider.month.march": "мартъи", + "timeslider.month.april": "апрель", + "timeslider.month.may": "май", + "timeslider.month.june": "июнь", + "timeslider.month.july": "июль", + "timeslider.month.august": "август", + "timeslider.month.september": "сентябрь", + "timeslider.month.october": "октябрь", + "timeslider.month.november": "ноябрь", + "timeslider.month.december": "декабрь", + "timeslider.unnamedauthors": "{{num}} ӕнӕном фыссӕджы", + "pad.savedrevs.marked": "Ацы фӕлтӕр ныр куыд ӕвӕрд фӕлтӕр нысангонд ӕрцыд", + "pad.userlist.entername": "Дӕ ном бафысс", + "pad.userlist.unnamed": "ӕнӕном", + "pad.userlist.guest": "Уазӕг", + "pad.userlist.deny": "Ныууадзын", + "pad.userlist.approve": "Сбӕлвырд кӕнын", + "pad.editbar.clearcolors": "Ӕнӕхъӕн документӕй хъӕуы айсын фыссӕджыты нысӕнттӕ?", + "pad.impexp.importbutton": "Еныр симпорт кӕнын", + "pad.impexp.importing": "Импорт цӕуы...", + "pad.impexp.confirmimport": "Файлы импорт документы ныры текст бынтон фӕивдзӕнис. Ӕцӕг дӕ фӕнды уый саразын?", + "pad.impexp.convertFailed": "Махӕн нӕ бон не ссис ацы файл симпорт кӕнын. Дӕ хорзӕхӕй, спайда кӕн ӕндӕр файлы форматӕй, кӕнӕ скъопи кӕн ӕмӕ батысс текст дӕхӕдӕг.", + "pad.impexp.uploadFailed": "Бавгӕнын нӕ рауад, дӕ хорзӕхӕй, фӕстӕдӕр бафӕлвар", + "pad.impexp.importfailed": "Импорт нӕ рауад", + "pad.impexp.copypaste": "Дӕ хорзӕхӕй, къопи кӕн ӕмӕ ӕвӕр", + "pad.impexp.exportdisabled": "{{type}} форматы экспорт хицӕн у. Дӕ хорзӕхӕй, бадзур дӕ системон администратортӕм фылдӕр базонынӕн." +} diff --git a/sources/src/locales/pa.json b/sources/src/locales/pa.json old mode 100644 new mode 100755 index 7023180..9e154e3 --- a/sources/src/locales/pa.json +++ b/sources/src/locales/pa.json @@ -1,104 +1,122 @@ { - "@metadata": { - "authors": [ - "Aalam" - ] - }, - "index.newPad": "ਨਵਾਂ ਪੈਡ", - "index.createOpenPad": "ਜਾਂ ਨਾਂ ਨਾਲ ਨਵਾਂ ਪੈਡ ਬਣਾਓ/ਖੋਲ੍ਹੋ:", - "pad.toolbar.bold.title": "ਗੂੜ੍ਹਾ (Ctrl-B)", - "pad.toolbar.italic.title": "ਤਿਰਛਾ (Ctrl-I)", - "pad.toolbar.underline.title": "ਹੇਠਾਂ-ਰੇਖਾ (Ctrl-U)", - "pad.toolbar.strikethrough.title": "ਵਿੰਨ੍ਹੋ ਵਿਨੋ", - "pad.toolbar.ol.title": "ਲੜੀਵਾਰ ਲਿਸਟ", - "pad.toolbar.ul.title": "ਬਿਨ-ਲੜੀਬੱਧ ਸੂਚੀ", - "pad.toolbar.indent.title": "ਹਾਸ਼ੀਏ ਤੋਂ ਦੂਰ", - "pad.toolbar.undo.title": "ਵਾਪਸ (Ctrl-Z)", - "pad.toolbar.redo.title": "ਪਰਤਾਓ (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "ਪਰਮਾਣਕਿਤਾ ਰੰਗ ਸਾਫ਼ ਕਰੋ", - "pad.toolbar.import_export.title": "ਵੱਖ-ਵੱਖ ਫਾਇਲ ਫਾਰਮੈਟ ਤੋਂ/ਵਿੱਚ ਇੰਪੋਰਟ/ਐਕਸਪੋਰਟ ਕਰੋ", - "pad.toolbar.timeslider.title": "ਸਮਾਂ-ਲਕੀਰ", - "pad.toolbar.savedRevision.title": "ਰੀਵਿਜ਼ਨ ਸੰਭਾਲੋ", - "pad.toolbar.settings.title": "ਸੈਟਿੰਗ", - "pad.toolbar.embed.title": "ਇਹ ਪੈਡ ਸਾਂਝਾ ਤੇ ਇੰਬੈੱਡ ਕਰੋ", - "pad.toolbar.showusers.title": "ਇਹ ਪੈਡ ਉੱਤੇ ਯੂਜ਼ਰ ਵੇਖਾਓ", - "pad.colorpicker.save": "ਸੰਭਾਲੋ", - "pad.colorpicker.cancel": "ਰੱਦ ਕਰੋ", - "pad.loading": "…ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ", - "pad.passwordRequired": "ਇਹ ਪੈਡ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਤੁਹਾਨੂੰ ਪਾਸਵਰਡ ਚਾਹੀਦਾ ਹੈ", - "pad.permissionDenied": "ਇਹ ਪੈਡ ਵਰਤਨ ਲਈ ਤੁਹਾਨੂੰ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ", - "pad.wrongPassword": "ਤੁਹਾਡਾ ਪਾਸਵਰਡ ਗਲਤੀ ਸੀ", - "pad.settings.padSettings": "ਪੈਡ ਸੈਟਿੰਗ", - "pad.settings.myView": "ਮੇਰੀ ਝਲਕ", - "pad.settings.stickychat": "ਹਮੇਸ਼ਾ ਸਕਰੀਨ ਉੱਤੇ ਗੱਲ ਕਰੋ", - "pad.settings.linenocheck": "ਲਾਈਨ ਨੰਬਰ", - "pad.settings.rtlcheck": "ਸਮੱਗਰੀ ਸੱਜੇ ਤੋਂ ਖੱਬੇ ਪੜ੍ਹਨੀ ਹੈ?", - "pad.settings.fontType": "ਫੋਂਟ ਕਿਸਮ:", - "pad.settings.fontType.normal": "ਸਧਾਰਨ", - "pad.settings.fontType.monospaced": "ਮੋਨੋਸਪੇਸ", - "pad.settings.globalView": "ਗਲੋਬਲ ਝਲਕ", - "pad.settings.language": "ਭਾਸ਼ਾ:", - "pad.importExport.import_export": "ਇੰਪੋਰਟ/ਐਕਸਪੋਰਟ", - "pad.importExport.import": "ਕੋਈ ਵੀ ਟੈਕਸਟ ਫਾਇਲ ਜਾਂ ਦਸਤਾਵੇਜ਼ ਅੱਪਲੋਡ ਕਰੋ", - "pad.importExport.importSuccessful": "ਸਫ਼ਲ!", - "pad.importExport.export": "ਮੌਜੂਦਾ ਪੈਡ ਨੂੰ ਐਕਸਪੋਰਟ ਕਰੋ:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "ਸਧਾਰਨ ਟੈਕਸਟ", - "pad.importExport.exportword": "ਮਾਈਕਰੋਸਾਫਟ ਵਰਡ", - "pad.importExport.exportpdf": "ਪੀਡੀਐਫ", - "pad.importExport.exportopen": "ODF (ਓਪਨ ਡੌਕੂਮੈਂਟ ਫਾਰਮੈਟ)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "ਕੁਨੈਕਟ ਹੈ।", - "pad.modals.reconnecting": "..ਤੁਹਾਡੇ ਪੈਡ ਨਾਲ ਮੁੜ-ਕੁਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ", - "pad.modals.forcereconnect": "ਧੱਕੇ ਨਾਲ ਮੁੜ-ਕੁਨੈਕਟ ਕਰੋ", - "pad.modals.userdup": "ਹੋਰ ਵਿੰਡੋ ਵਿੱਚ ਖੁੱਲ੍ਹਿਆ ਹੈ", - "pad.modals.unauth": "ਪਰਮਾਣਿਤ ਨਹੀਂ ਹੈ", - "pad.modals.initsocketfail": "ਸਰਵਰ ਪਹੁੰਚ ਵਿੱਚ ਨਹੀਂ ਹੈ।", - "pad.modals.slowcommit.explanation": "ਸਰਵਰ ਜਵਾਬ ਨਹੀਂ ਦੇ ਰਿਹਾ ਹੈ।", - "pad.modals.slowcommit.cause": "ਇਹ ਨੈੱਟਵਰਕ ਕੁਨੈਕਸ਼ਨ ਨਾਲ ਸਮੱਸਿਆ ਕਰਕੇ ਹੋ ਸਕਦਾ ਹੈ।", - "pad.modals.deleted": "ਹਟਾਇਆ।", - "pad.modals.deleted.explanation": "ਇਹ ਪੈਡ ਹਟਾਇਆ ਜਾ ਚੁੱਕਾ ਹੈ।", - "pad.modals.disconnected": "ਤੁਸੀਂ ਡਿਸ-ਕੁਨੈਕਟ ਹੋ ਚੁੱਕੇ ਹੋ।", - "pad.modals.disconnected.explanation": "ਸਰਵਰ ਨਾਲ ਕੁਨੈਕਸ਼ਨ ਖਤਮ ਹੋਇਆ ਹੈ", - "pad.share": "ਇਹ ਪੈਡ ਸਾਂਝਾ ਕਰੋ", - "pad.share.readonly": "ਕੇਵਲ ਪੜ੍ਹਨ ਲਈ", - "pad.share.link": "ਲਿੰਕ", - "pad.share.emebdcode": "ਇੰਬੈੱਡ URL", - "pad.chat": "ਗੱਲਬਾਤ", - "pad.chat.title": "ਇਹ ਪੈਡ ਲਈ ਗੱਲਬਾਤ ਖੋਲ੍ਹੋ।", - "pad.chat.loadmessages": "ਹੋਰ ਸੁਨੇਹੇ ਲੋਡ ਕਰੋ", - "timeslider.pageTitle": "{{appTitle}} ਸਮਾਂ-ਲਕੀਰ", - "timeslider.toolbar.returnbutton": "ਪੈਡ ਉੱਤੇ ਵਾਪਸ", - "timeslider.toolbar.authors": "ਲੇਖਕ:", - "timeslider.toolbar.authorsList": "ਕੋਈ ਲੇਖਕ ਨਹੀਂ", - "timeslider.toolbar.exportlink.title": "ਐਕਸਪੋਰਟ", - "timeslider.exportCurrent": "ਮੌਜੂਦਾ ਵਰਜਨ ਇੰਝ ਐਕਸਪੋਰਟ ਕਰੋ:", - "timeslider.version": "ਵਰਜਨ {{version}}", - "timeslider.saved": "{{day}} {{month}} {{year}} ਨੂੰ ਸੰਭਾਲਿਆ", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "ਜਨਵਰੀ", - "timeslider.month.february": "ਫ਼ਰਵਰੀ", - "timeslider.month.march": "ਮਾਰਚ", - "timeslider.month.april": "ਅਪਰੈਲ", - "timeslider.month.may": "ਮਈ", - "timeslider.month.june": "ਜੂਨ", - "timeslider.month.july": "ਜੁਲਾਈ", - "timeslider.month.august": "ਅਗਸਤ", - "timeslider.month.september": "ਸਤੰਬਰ", - "timeslider.month.october": "ਅਕਤੂਬਰ", - "timeslider.month.november": "ਨਵੰਬਰ", - "timeslider.month.december": "ਦਸੰਬਰ", - "timeslider.unnamedauthors": "{{num}} ਬੇਨਾਮ ਲੇਖਕ", - "pad.savedrevs.marked": "ਇਹ ਰੀਵਿਜ਼ਨ ਨੂੰ ਹੁਣ ਸੰਭਾਲੇ ਹੋਏ ਰੀਵਿਜ਼ਨ ਵਜੋਂ ਮੰਨਿਆ ਗਿਆ ਹੈ", - "pad.userlist.entername": "ਆਪਣਾ ਨਾਂ ਦਿਉ", - "pad.userlist.unnamed": "ਬੇਨਾਮ", - "pad.userlist.guest": "ਮਹਿਮਾਨ", - "pad.userlist.deny": "ਪਾਬੰਦੀ", - "pad.userlist.approve": "ਮਨਜ਼ੂਰ", - "pad.editbar.clearcolors": "ਪੂਰੇ ਦਸਾਤਵੇਜ਼ ਉੱਤੇ ਪਰਮਾਣਕਿਤਾ ਰੰਗ ਸਾਫ਼ ਕਰਨੇ ਹਨ?", - "pad.impexp.importbutton": "ਹੁਣੇ ਇੰਪੋਰਟ ਕਰੋ", - "pad.impexp.importing": "...ਇੰਪੋਰਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ", - "pad.impexp.uploadFailed": "ਅੱਪਲੋਡ ਲਈ ਫੇਲ੍ਹ ਹੈ, ਫੇਰ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜੀ।", - "pad.impexp.importfailed": "ਇੰਪੋਰਟ ਫੇਲ੍ਹ ਹੈ", - "pad.impexp.copypaste": "ਕਾਪੀ ਕਰੋ ਚੇਪੋ ਜੀ" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Aalam", + "Babanwalia" + ] + }, + "index.newPad": "ਨਵਾਂ ਪੈਡ", + "index.createOpenPad": "ਜਾਂ ਨਾਂ ਨਾਲ ਨਵਾਂ ਪੈਡ ਬਣਾਓ/ਖੋਲ੍ਹੋ:", + "pad.toolbar.bold.title": "ਗੂੜ੍ਹਾ (Ctrl-B)", + "pad.toolbar.italic.title": "ਤਿਰਛਾ (Ctrl-I)", + "pad.toolbar.underline.title": "ਹੇਠਾਂ-ਰੇਖਾ (Ctrl-U)", + "pad.toolbar.strikethrough.title": "ਵਿੰਨ੍ਹੋ ਵਿਨੋ", + "pad.toolbar.ol.title": "ਲੜੀਵਾਰ ਲਿਸਟ", + "pad.toolbar.ul.title": "ਬਿਨ-ਲੜੀਬੱਧ ਸੂਚੀ", + "pad.toolbar.indent.title": "ਹਾਸ਼ੀਏ ਤੋਂ ਪਰ੍ਹੇ (ਟੈਬ)", + "pad.toolbar.unindent.title": "ਹਾਸ਼ੀਏ ਵੱਲ (ਸ਼ਿਫ਼ਟ+ਟੈਬ)", + "pad.toolbar.undo.title": "ਵਾਪਸ (Ctrl-Z)", + "pad.toolbar.redo.title": "ਪਰਤਾਓ (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "ਪਰਮਾਣਕਿਤਾ ਰੰਗ ਸਾਫ਼ ਕਰੋ", + "pad.toolbar.import_export.title": "ਵੱਖ-ਵੱਖ ਫਾਇਲ ਫਾਰਮੈਟ ਤੋਂ/ਵਿੱਚ ਇੰਪੋਰਟ/ਐਕਸਪੋਰਟ ਕਰੋ", + "pad.toolbar.timeslider.title": "ਸਮਾਂ-ਲਕੀਰ", + "pad.toolbar.savedRevision.title": "ਰੀਵਿਜ਼ਨ ਸੰਭਾਲੋ", + "pad.toolbar.settings.title": "ਸੈਟਿੰਗ", + "pad.toolbar.embed.title": "ਇਹ ਪੈਡ ਸਾਂਝਾ ਤੇ ਇੰਬੈੱਡ ਕਰੋ", + "pad.toolbar.showusers.title": "ਇਹ ਪੈਡ ਉੱਤੇ ਯੂਜ਼ਰ ਵੇਖਾਓ", + "pad.colorpicker.save": "ਸਾਂਭੋ", + "pad.colorpicker.cancel": "ਰੱਦ ਕਰੋ", + "pad.loading": "…ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ", + "pad.passwordRequired": "ਇਹ ਪੈਡ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਤੁਹਾਨੂੰ ਪਾਸਵਰਡ ਚਾਹੀਦਾ ਹੈ", + "pad.permissionDenied": "ਇਹ ਪੈਡ ਵਰਤਨ ਲਈ ਤੁਹਾਨੂੰ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ", + "pad.wrongPassword": "ਤੁਹਾਡਾ ਪਾਸਵਰਡ ਗਲਤੀ ਸੀ", + "pad.settings.padSettings": "ਪੈਡ ਸੈਟਿੰਗ", + "pad.settings.myView": "ਮੇਰੀ ਝਲਕ", + "pad.settings.stickychat": "ਹਮੇਸ਼ਾ ਸਕਰੀਨ ਉੱਤੇ ਗੱਲ ਕਰੋ", + "pad.settings.colorcheck": "ਲੇਖਕੀ ਰੰਗ", + "pad.settings.linenocheck": "ਲਾਈਨ ਨੰਬਰ", + "pad.settings.rtlcheck": "ਸਮੱਗਰੀ ਸੱਜੇ ਤੋਂ ਖੱਬੇ ਪੜ੍ਹਨੀ ਹੈ?", + "pad.settings.fontType": "ਫੋਂਟ ਕਿਸਮ:", + "pad.settings.fontType.normal": "ਸਧਾਰਨ", + "pad.settings.fontType.monospaced": "ਮੋਨੋਸਪੇਸ", + "pad.settings.globalView": "ਗਲੋਬਲ ਝਲਕ", + "pad.settings.language": "ਭਾਸ਼ਾ:", + "pad.importExport.import_export": "ਇੰਪੋਰਟ/ਐਕਸਪੋਰਟ", + "pad.importExport.import": "ਕੋਈ ਵੀ ਟੈਕਸਟ ਫਾਇਲ ਜਾਂ ਦਸਤਾਵੇਜ਼ ਅੱਪਲੋਡ ਕਰੋ", + "pad.importExport.importSuccessful": "ਸਫ਼ਲ!", + "pad.importExport.export": "ਮੌਜੂਦਾ ਪੈਡ ਨੂੰ ਐਕਸਪੋਰਟ ਕਰੋ:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "ਸਧਾਰਨ ਟੈਕਸਟ", + "pad.importExport.exportword": "ਮਾਈਕਰੋਸਾਫਟ ਵਰਡ", + "pad.importExport.exportpdf": "ਪੀਡੀਐਫ", + "pad.importExport.exportopen": "ODF (ਓਪਨ ਡੌਕੂਮੈਂਟ ਫਾਰਮੈਟ)", + "pad.importExport.abiword.innerHTML": "ਤੁਸੀਂ ਸਿਰਫ਼ ਸਾਦੀਆਂ ਲਿਖਤੀ ਜਾਂ ਐੱਚ.ਟੀ.ਐੱਮ.ਐੱਲ. ਰੂਪ-ਰੇਖਾਵਾਂ ਤੋਂ ਦਰਾਮਦ ਕਰ ਸਕਦੇ ਹੋ। ਹੋਰ ਉੱਨਤ ਦਰਾਮਦੀ ਗੁਣਾਂ ਵਾਸਤੇ ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਐਬੀਵਰਡ ਥਾਪੋ।", + "pad.modals.connected": "ਕੁਨੈਕਟ ਹੈ।", + "pad.modals.reconnecting": "..ਤੁਹਾਡੇ ਪੈਡ ਨਾਲ ਮੁੜ-ਕੁਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ", + "pad.modals.forcereconnect": "ਧੱਕੇ ਨਾਲ ਮੁੜ-ਕੁਨੈਕਟ ਕਰੋ", + "pad.modals.userdup": "ਹੋਰ ਵਿੰਡੋ ਵਿੱਚ ਖੁੱਲ੍ਹਿਆ ਹੈ", + "pad.modals.userdup.explanation": "ਇਹ ਪੈਡ ਇਸ ਕੰਪਿਊਟਰ 'ਤੇ ਇੱਕ ਤੋਂ ਵੱਧ ਫਰੋਲੂ ਬਾਰੀ ਵਿੱਚ ਖੁੱਲ੍ਹਿਆ ਜਾਪਦਾ ਹੈ।", + "pad.modals.userdup.advice": "ਸਗੋਂ ਇਹ ਬਾਰੀ ਵਰਤਣ ਵਾਸਤੇ ਮੁੜ ਜੁੜੋ।", + "pad.modals.unauth": "ਪਰਮਾਣਿਤ ਨਹੀਂ ਹੈ", + "pad.modals.unauth.explanation": "ਇਹ ਸਫ਼ਾ ਵੇਖਦੇ-ਵੇਖਦੇ ਤੁਹਾਨੂੰ ਮਿਲ਼ੀਆਂ ਇਜਾਜ਼ਤਾਂ ਬਦਲ ਗਈਆਂ ਹਨ। ਮੁੜ ਜੁੜਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ।", + "pad.modals.looping.explanation": "ਇੱਕਰੂਪੀ ਸਰਵਰ ਨਾਲ਼ ਸੰਚਾਰੀ ਔਕੜਾਂ ਆ ਰਹੀਆਂ ਹਨ।", + "pad.modals.looping.cause": "ਸ਼ਾਇਦ ਤੁਸੀਂ ਕਿਸੇ ਅਢੁਕਵੀਂ ਸੁਰੱਖਿਆ ਪ੍ਰਨਾਲ਼ੀ ਜਾਂ ਪ੍ਰਾਕਸੀ ਰਾਹੀਂ ਜੁੜੇ ਹੋ।", + "pad.modals.initsocketfail": "ਸਰਵਰ ਪਹੁੰਚ ਵਿੱਚ ਨਹੀਂ ਹੈ।", + "pad.modals.initsocketfail.explanation": "ਇੱਕਰੂਪੀ ਸਰਵਰ ਨਾਲ਼ ਰਾਬਤਾ ਨਹੀਂ ਬਣ ਸਕਿਆ।", + "pad.modals.initsocketfail.cause": "ਇਹ ਸ਼ਾਇਦ ਤੁਹਾਡੇ ਫਰੋਲੂ ਜਾਂ ਇੰਟਰਨੈੱਟ ਜੋੜ ਦੀਆਂ ਗੁੰਝਲਾਂ ਕਰਕੇ ਹੋ ਰਿਹਾ ਹੈ।", + "pad.modals.slowcommit.explanation": "ਸਰਵਰ ਜਵਾਬ ਨਹੀਂ ਦੇ ਰਿਹਾ ਹੈ।", + "pad.modals.slowcommit.cause": "ਇਹ ਨੈੱਟਵਰਕ ਕੁਨੈਕਸ਼ਨ ਨਾਲ ਸਮੱਸਿਆ ਕਰਕੇ ਹੋ ਸਕਦਾ ਹੈ।", + "pad.modals.badChangeset.explanation": "ਤੁਹਾਡੇ ਵੱਲੋਂ ਕੀਤੀ ਇੱਕ ਸੋਧ ਨੂੰ ਇੱਕਰੂਪੀ ਸਰਵਰ ਨੇ ਗ਼ੈਰ-ਕਨੂੰਨੀ ਕਰਾਰ ਦਿੱਤਾ ਹੈ।", + "pad.modals.badChangeset.cause": "ਇਹ ਸਿਸਟਮ ਦੀ ਕਿਸੇ ਗ਼ਲਤ ਨੁਹਾਰ ਜਾਂ ਕੋਈ ਹੋਰ ਅਣਸੋਚੇ ਵਤੀਰਾ ਕਰਕੇ ਵਾਪਰ ਸਕਦਾ ਹੈ। ਜੇਕਰ ਤੁਹਾਨੂੰ ਇਹ ਇੱਕ ਦੋਸ਼ ਲੱਗਦਾ ਹੈ ਤਾਂ ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਆਪਣੇ ਸਿਸਟਮ ਦੇ ਪ੍ਰਬੰਧਕ ਨਾਲ਼ ਰਾਬਤਾ ਬਣਾਉ। ਸੋਧ ਜਾਰੀ ਰੱਖਣ ਵਾਸਤੇ ਮੁੜ ਜੁੜੋ।", + "pad.modals.corruptPad.explanation": "ਜਿਸ ਪੈਡ ਤੱਕ ਤੁਸੀਂ ਪਹੁੰਚਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਉਹ ਖੋਟਾ ਹੈ।", + "pad.modals.corruptPad.cause": "ਇਹ ਸਿਸਟਮ ਦੀ ਕਿਸੇ ਗ਼ਲਤ ਨੁਹਾਰ ਜਾਂ ਕੋਈ ਹੋਰ ਅਣਸੋਚੇ ਵਤੀਰਾ ਕਰਕੇ ਵਾਪਰ ਸਕਦਾ ਹੈ। ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਆਪਣੇ ਸਿਸਟਮ ਦੇ ਪ੍ਰਬੰਧਕ ਨਾਲ਼ ਰਾਬਤਾ ਬਣਾਉ।", + "pad.modals.deleted": "ਹਟਾਇਆ।", + "pad.modals.deleted.explanation": "ਇਹ ਪੈਡ ਹਟਾਇਆ ਜਾ ਚੁੱਕਾ ਹੈ।", + "pad.modals.disconnected": "ਤੁਸੀਂ ਡਿਸ-ਕੁਨੈਕਟ ਹੋ ਚੁੱਕੇ ਹੋ।", + "pad.modals.disconnected.explanation": "ਸਰਵਰ ਨਾਲ ਕੁਨੈਕਸ਼ਨ ਖਤਮ ਹੋਇਆ ਹੈ", + "pad.modals.disconnected.cause": "ਸਰਵਰ ਨਾਮੌਜੂਦ ਹੋ ਸਕਦਾ ਹੈ। ਜੇਕਰ ਇਹ ਹੁੰਦਾ ਰਹੇ ਤਾਂ ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਸੇਵਾ ਪ੍ਰਬੰਧਕ ਨੂੰ ਖ਼ਬਰ ਕਰੋ।", + "pad.share": "ਇਹ ਪੈਡ ਸਾਂਝਾ ਕਰੋ", + "pad.share.readonly": "ਕੇਵਲ ਪੜ੍ਹਨ ਲਈ", + "pad.share.link": "ਲਿੰਕ", + "pad.share.emebdcode": "ਇੰਬੈੱਡ URL", + "pad.chat": "ਗੱਲਬਾਤ", + "pad.chat.title": "ਇਹ ਪੈਡ ਲਈ ਗੱਲਬਾਤ ਖੋਲ੍ਹੋ।", + "pad.chat.loadmessages": "ਹੋਰ ਸੁਨੇਹੇ ਲੋਡ ਕਰੋ", + "timeslider.pageTitle": "{{appTitle}} ਸਮਾਂ-ਲਕੀਰ", + "timeslider.toolbar.returnbutton": "ਪੈਡ ਉੱਤੇ ਵਾਪਸ", + "timeslider.toolbar.authors": "ਲੇਖਕ:", + "timeslider.toolbar.authorsList": "ਕੋਈ ਲੇਖਕ ਨਹੀਂ", + "timeslider.toolbar.exportlink.title": "ਐਕਸਪੋਰਟ", + "timeslider.exportCurrent": "ਮੌਜੂਦਾ ਵਰਜਨ ਇੰਝ ਐਕਸਪੋਰਟ ਕਰੋ:", + "timeslider.version": "ਵਰਜਨ {{version}}", + "timeslider.saved": "{{day}} {{month}} {{year}} ਨੂੰ ਸੰਭਾਲਿਆ", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "ਜਨਵਰੀ", + "timeslider.month.february": "ਫ਼ਰਵਰੀ", + "timeslider.month.march": "ਮਾਰਚ", + "timeslider.month.april": "ਅਪਰੈਲ", + "timeslider.month.may": "ਮਈ", + "timeslider.month.june": "ਜੂਨ", + "timeslider.month.july": "ਜੁਲਾਈ", + "timeslider.month.august": "ਅਗਸਤ", + "timeslider.month.september": "ਸਤੰਬਰ", + "timeslider.month.october": "ਅਕਤੂਬਰ", + "timeslider.month.november": "ਨਵੰਬਰ", + "timeslider.month.december": "ਦਸੰਬਰ", + "timeslider.unnamedauthors": "{{num}} ਬੇਨਾਮ {[plural(num) one: ਲੇਖਕ, other: ਲੇਖਕ ]}", + "pad.savedrevs.marked": "ਇਹ ਰੀਵਿਜ਼ਨ ਨੂੰ ਹੁਣ ਸੰਭਾਲੇ ਹੋਏ ਰੀਵਿਜ਼ਨ ਵਜੋਂ ਮੰਨਿਆ ਗਿਆ ਹੈ", + "pad.userlist.entername": "ਆਪਣਾ ਨਾਂ ਦਿਉ", + "pad.userlist.unnamed": "ਬੇਨਾਮ", + "pad.userlist.guest": "ਮਹਿਮਾਨ", + "pad.userlist.deny": "ਪਾਬੰਦੀ", + "pad.userlist.approve": "ਮਨਜ਼ੂਰ", + "pad.editbar.clearcolors": "ਪੂਰੇ ਦਸਾਤਵੇਜ਼ ਉੱਤੇ ਪਰਮਾਣਕਿਤਾ ਰੰਗ ਸਾਫ਼ ਕਰਨੇ ਹਨ?", + "pad.impexp.importbutton": "ਹੁਣੇ ਇੰਪੋਰਟ ਕਰੋ", + "pad.impexp.importing": "...ਇੰਪੋਰਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ", + "pad.impexp.confirmimport": "ਕੋਈ ਫ਼ਾਈਲ ਦਰਾਮਦ ਕਾਰਨ ਨਾਲ਼ ਪੈਡ ਦੀ ਮੌਜੂਦਾ ਲਿਖਤ ਉੱਤੇ ਲਿਖਿਆ ਜਾਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਸੱਚੀਂ ਇਹ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?", + "pad.impexp.convertFailed": "ਅਸੀਂ ਇਸ ਫ਼ਾਈਲ ਦੀ ਦਰਾਮਦ ਨਹੀਂ ਕਰ ਸਕੇ। ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਕੋਈ ਵੱਖਰੀ ਦਸਤਾਵੇਜ਼ੀ ਰੂਪ-ਰੇਖਾ ਵਰਤੋ ਜਾਂ ਹੱਥੀਂ ਨਕਲ-ਚੇਪੀ ਕਰੋ।", + "pad.impexp.uploadFailed": "ਅੱਪਲੋਡ ਲਈ ਫੇਲ੍ਹ ਹੈ, ਫੇਰ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜੀ।", + "pad.impexp.importfailed": "ਇੰਪੋਰਟ ਫੇਲ੍ਹ ਹੈ", + "pad.impexp.copypaste": "ਕਾਪੀ ਕਰੋ ਚੇਪੋ ਜੀ", + "pad.impexp.exportdisabled": "{{type}} ਰੂਪ-ਰੇਖਾ ਵਜੋਂ ਬਰਾਮਦ ਕਰਨਾ ਬੰਦ ਹੈ। ਵੇਰਵੇ ਵਾਸਤੇ ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਆਪਣੇ ਸਿਸਟਮ ਦੇ ਪ੍ਰਬੰਧਕ ਨਾਲ਼ ਰਾਬਤਾ ਬਣਾਉ।" +} diff --git a/sources/src/locales/pl.json b/sources/src/locales/pl.json old mode 100644 new mode 100755 index 6ea8ca4..bcd7a0e --- a/sources/src/locales/pl.json +++ b/sources/src/locales/pl.json @@ -1,125 +1,127 @@ { - "@metadata": { - "authors": [ - "Rezonansowy", - "Ty221", - "WTM", - "Woytecr" - ] - }, - "index.newPad": "Nowy dokument", - "index.createOpenPad": "lub stwórz/otwórz dokument o nazwie:", - "pad.toolbar.bold.title": "Pogrubienie (Ctrl-B)", - "pad.toolbar.italic.title": "Kursywa (Ctrl-I)", - "pad.toolbar.underline.title": "Podkreślenie (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Przekreślenie", - "pad.toolbar.ol.title": "Lista uporządkowana", - "pad.toolbar.ul.title": "Lista nieuporządkowana", - "pad.toolbar.indent.title": "Wcięcie (TAB)", - "pad.toolbar.unindent.title": "Wcięcie (Shift + TAB)", - "pad.toolbar.undo.title": "Cofnij (Ctrl-Z)", - "pad.toolbar.redo.title": "Ponów (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Usuń kolory autorów", - "pad.toolbar.import_export.title": "Import/eksport z/do różnych formatów plików", - "pad.toolbar.timeslider.title": "Oś czasu", - "pad.toolbar.savedRevision.title": "Zapisz wersję", - "pad.toolbar.settings.title": "Ustawienia", - "pad.toolbar.embed.title": "Podziel się i osadź ten dokument", - "pad.toolbar.showusers.title": "Pokaż użytkowników", - "pad.colorpicker.save": "Zapisz", - "pad.colorpicker.cancel": "Anuluj", - "pad.loading": "Ładowanie...", - "pad.passwordRequired": "Musisz podać hasło aby uzyskać dostęp do tego dokumentu", - "pad.permissionDenied": "Nie masz uprawnień dostępu do tego dokumentu", - "pad.wrongPassword": "Nieprawidłowe hasło", - "pad.settings.padSettings": "Ustawienia dokumentu", - "pad.settings.myView": "Mój widok", - "pad.settings.stickychat": "Czat zawsze na ekranie", - "pad.settings.colorcheck": "Kolory autorstwa", - "pad.settings.linenocheck": "Numery linii", - "pad.settings.rtlcheck": "Czytasz treść od prawej do lewej?", - "pad.settings.fontType": "Rodzaj czcionki:", - "pad.settings.fontType.normal": "Normalna", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Widok ogólny", - "pad.settings.language": "Język:", - "pad.importExport.import_export": "Import/eksport", - "pad.importExport.import": "Prześlij dowolny plik tekstowy lub dokument", - "pad.importExport.importSuccessful": "Sukces!", - "pad.importExport.export": "Eksportuj bieżący dokument jako:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Zwykły tekst", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Możesz importować pliki tylko w formacie zwykłego tekstu lub html. Aby umożliwić bardziej zaawansowane funkcje importu, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Ezainstaluj abiword\u003C/a\u003E.", - "pad.modals.connected": "Połączony.", - "pad.modals.reconnecting": "Ponowne łączenie z dokumentem...", - "pad.modals.forcereconnect": "Wymuś ponowne połączenie", - "pad.modals.userdup": "Otwarty w innym oknie", - "pad.modals.userdup.explanation": "Ten dokument prawdopodobnie został otwarty w więcej niż jednym oknie przeglądarki.", - "pad.modals.userdup.advice": "Połącz ponownie przy użyciu tego okna.", - "pad.modals.unauth": "Brak autoryzacji", - "pad.modals.unauth.explanation": "Twoje uprawnienia uległy zmianie podczas przeglądania tej strony. Spróbuj ponownie się połączyć.", - "pad.modals.looping.explanation": "Wystąpiły problemy z komunikacją z serwerem synchronizacji.", - "pad.modals.looping.cause": "Być może jesteś połączony przez niezgodną zaporę lub serwer proxy.", - "pad.modals.initsocketfail": "Serwer jest nieosiągalny.", - "pad.modals.initsocketfail.explanation": "Nie udało się połączyć z serwerem synchronizacji.", - "pad.modals.initsocketfail.cause": "Przyczyną są prawdopodobnie problemy z przeglądarka lub połączeniem z internetem.", - "pad.modals.slowcommit.explanation": "Serwer nie odpowiada.", - "pad.modals.slowcommit.cause": "Może być to spowodowane problemami z Twoim połączeniem z siecią.", - "pad.modals.badChangeset.explanation": "Edycja, którą wykonałeś, została niewłaściwie zakwalifikowana przez serwer synchronizacji.", - "pad.modals.badChangeset.cause": "Może być to spowodowane złą konfiguracją serwera lub innym nieoczekiwanym zachowaniem. Skontaktuj się z administratorem serwisu, jeżeli wydaje Ci się, że to jest błąd. Spróbuj ponownie połączyć się aby kontynuować edycję.", - "pad.modals.corruptPad.explanation": "Dokument, do którego próbujesz uzyskać dostęp, jest uszkodzony.", - "pad.modals.corruptPad.cause": "Może być to spowodowane złą konfiguracją serwera lub innym nieoczekiwanym zachowaniem. Skontaktuj się z administratorem serwisu.", - "pad.modals.deleted": "Usunięto.", - "pad.modals.deleted.explanation": "Ten dokument został usunięty.", - "pad.modals.disconnected": "Zostałeś rozłączony.", - "pad.modals.disconnected.explanation": "Utracono połączenie z serwerem", - "pad.modals.disconnected.cause": "Serwer może być niedostępny. Poinformuj administratora serwisu jeżeli problem będzie się powtarzał.", - "pad.share": "Udostępnij ten dokument", - "pad.share.readonly": "Tylko do odczytu", - "pad.share.link": "Link", - "pad.share.emebdcode": "URL do umieszczenia", - "pad.chat": "Czat", - "pad.chat.title": "Otwórz czat dla tego dokumentu.", - "pad.chat.loadmessages": "Załaduj więcej wiadomości", - "timeslider.pageTitle": "Oś czasu {{appTitle}}", - "timeslider.toolbar.returnbutton": "Powróć do dokumentu", - "timeslider.toolbar.authors": "Autorzy:", - "timeslider.toolbar.authorsList": "Brak autorów", - "timeslider.toolbar.exportlink.title": "Eksportuj", - "timeslider.exportCurrent": "Eksportuj bieżącą wersję jako:", - "timeslider.version": "Wersja {{version}}", - "timeslider.saved": "Zapisano {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Styczeń", - "timeslider.month.february": "Luty", - "timeslider.month.march": "Marzec", - "timeslider.month.april": "Kwiecień", - "timeslider.month.may": "Maj", - "timeslider.month.june": "Czerwiec", - "timeslider.month.july": "Lipiec", - "timeslider.month.august": "Sierpień", - "timeslider.month.september": "Wrzesień", - "timeslider.month.october": "Październik", - "timeslider.month.november": "Listopad", - "timeslider.month.december": "Grudzień", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autorów ]} bez nazw", - "pad.savedrevs.marked": "Ta wersja została właśnie oznaczona jako zapisana.", - "pad.userlist.entername": "Wprowadź swoją nazwę", - "pad.userlist.unnamed": "bez nazwy", - "pad.userlist.guest": "Gość", - "pad.userlist.deny": "Zabroń", - "pad.userlist.approve": "Akceptuj", - "pad.editbar.clearcolors": "Wyczyścić kolory autorstwa w całym dokumencie?", - "pad.impexp.importbutton": "Importuj teraz", - "pad.impexp.importing": "Importowanie...", - "pad.impexp.confirmimport": "Importowanie pliku spowoduje zastąpienie bieżącego tekstu. Czy na pewno chcesz kontynuować?", - "pad.impexp.convertFailed": "Nie byliśmy w stanie zaimportować tego pliku. Proszę użyć innego formatu dokumentu lub skopiować i wkleić ręcznie", - "pad.impexp.uploadFailed": "Przesyłanie nie powiodło się, proszę spróbować jeszcze raz", - "pad.impexp.importfailed": "Importowanie nie powiodło się", - "pad.impexp.copypaste": "Proszę skopiować i wkleić", - "pad.impexp.exportdisabled": "Eksport do formatu {{type}} jest wyłączony. Proszę skontaktować się z administratorem aby uzyskać więcej szczegółów." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Rezonansowy", + "Ty221", + "WTM", + "Woytecr", + "Macofe", + "Pan Cube" + ] + }, + "index.newPad": "Nowy dokument", + "index.createOpenPad": "lub stwórz/otwórz dokument o nazwie:", + "pad.toolbar.bold.title": "Pogrubienie (Ctrl-B)", + "pad.toolbar.italic.title": "Kursywa (Ctrl-I)", + "pad.toolbar.underline.title": "Podkreślenie (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Przekreślenie", + "pad.toolbar.ol.title": "Lista uporządkowana", + "pad.toolbar.ul.title": "Lista nieuporządkowana", + "pad.toolbar.indent.title": "Wcięcie (TAB)", + "pad.toolbar.unindent.title": "Wcięcie (Shift + TAB)", + "pad.toolbar.undo.title": "Cofnij (Ctrl-Z)", + "pad.toolbar.redo.title": "Ponów (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Usuń kolory autorów (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Import/eksport z/do różnych formatów plików", + "pad.toolbar.timeslider.title": "Oś czasu", + "pad.toolbar.savedRevision.title": "Zapisz wersję", + "pad.toolbar.settings.title": "Ustawienia", + "pad.toolbar.embed.title": "Podziel się i osadź ten dokument", + "pad.toolbar.showusers.title": "Pokaż użytkowników", + "pad.colorpicker.save": "Zapisz", + "pad.colorpicker.cancel": "Anuluj", + "pad.loading": "Ładowanie...", + "pad.passwordRequired": "Musisz podać hasło aby uzyskać dostęp do tego dokumentu", + "pad.permissionDenied": "Nie masz uprawnień dostępu do tego dokumentu", + "pad.wrongPassword": "Nieprawidłowe hasło", + "pad.settings.padSettings": "Ustawienia dokumentu", + "pad.settings.myView": "Mój widok", + "pad.settings.stickychat": "Czat zawsze na ekranie", + "pad.settings.colorcheck": "Kolory autorstwa", + "pad.settings.linenocheck": "Numery linii", + "pad.settings.rtlcheck": "Czytasz treść od prawej do lewej?", + "pad.settings.fontType": "Rodzaj czcionki:", + "pad.settings.fontType.normal": "Normalna", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Widok ogólny", + "pad.settings.language": "Język:", + "pad.importExport.import_export": "Import/eksport", + "pad.importExport.import": "Prześlij dowolny plik tekstowy lub dokument", + "pad.importExport.importSuccessful": "Sukces!", + "pad.importExport.export": "Eksportuj bieżący dokument jako:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Zwykły tekst", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Możesz importować pliki tylko w formacie zwykłego tekstu lub html. Aby umożliwić bardziej zaawansowane funkcje importu, zainstaluj abiword.", + "pad.modals.connected": "Połączony.", + "pad.modals.reconnecting": "Ponowne łączenie z dokumentem...", + "pad.modals.forcereconnect": "Wymuś ponowne połączenie", + "pad.modals.userdup": "Otwarty w innym oknie", + "pad.modals.userdup.explanation": "Ten dokument prawdopodobnie został otwarty w więcej niż jednym oknie przeglądarki.", + "pad.modals.userdup.advice": "Połącz ponownie przy użyciu tego okna.", + "pad.modals.unauth": "Brak autoryzacji", + "pad.modals.unauth.explanation": "Twoje uprawnienia uległy zmianie podczas przeglądania tej strony. Spróbuj ponownie się połączyć.", + "pad.modals.looping.explanation": "Wystąpiły problemy z komunikacją z serwerem synchronizacji.", + "pad.modals.looping.cause": "Być może jesteś połączony przez niezgodną zaporę lub serwer proxy.", + "pad.modals.initsocketfail": "Serwer jest nieosiągalny.", + "pad.modals.initsocketfail.explanation": "Nie udało się połączyć z serwerem synchronizacji.", + "pad.modals.initsocketfail.cause": "Przyczyną są prawdopodobnie problemy z przeglądarka lub połączeniem z internetem.", + "pad.modals.slowcommit.explanation": "Serwer nie odpowiada.", + "pad.modals.slowcommit.cause": "Może być to spowodowane problemami z Twoim połączeniem z siecią.", + "pad.modals.badChangeset.explanation": "Edycja, którą wykonałeś, została niewłaściwie zakwalifikowana przez serwer synchronizacji.", + "pad.modals.badChangeset.cause": "Może być to spowodowane złą konfiguracją serwera lub innym nieoczekiwanym zachowaniem. Skontaktuj się z administratorem serwisu, jeżeli wydaje Ci się, że to jest błąd. Spróbuj ponownie połączyć się aby kontynuować edycję.", + "pad.modals.corruptPad.explanation": "Dokument, do którego próbujesz uzyskać dostęp, jest uszkodzony.", + "pad.modals.corruptPad.cause": "Może być to spowodowane złą konfiguracją serwera lub innym nieoczekiwanym zachowaniem. Skontaktuj się z administratorem serwisu.", + "pad.modals.deleted": "Usunięto.", + "pad.modals.deleted.explanation": "Ten dokument został usunięty.", + "pad.modals.disconnected": "Zostałeś rozłączony.", + "pad.modals.disconnected.explanation": "Utracono połączenie z serwerem", + "pad.modals.disconnected.cause": "Serwer może być niedostępny. Poinformuj administratora serwisu jeżeli problem będzie się powtarzał.", + "pad.share": "Udostępnij ten dokument", + "pad.share.readonly": "Tylko do odczytu", + "pad.share.link": "Link", + "pad.share.emebdcode": "URL do umieszczenia", + "pad.chat": "Czat", + "pad.chat.title": "Otwórz czat dla tego dokumentu.", + "pad.chat.loadmessages": "Załaduj więcej wiadomości", + "timeslider.pageTitle": "Oś czasu {{appTitle}}", + "timeslider.toolbar.returnbutton": "Powróć do dokumentu", + "timeslider.toolbar.authors": "Autorzy:", + "timeslider.toolbar.authorsList": "Brak autorów", + "timeslider.toolbar.exportlink.title": "Eksportuj", + "timeslider.exportCurrent": "Eksportuj bieżącą wersję jako:", + "timeslider.version": "Wersja {{version}}", + "timeslider.saved": "Zapisano {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Styczeń", + "timeslider.month.february": "Luty", + "timeslider.month.march": "Marzec", + "timeslider.month.april": "Kwiecień", + "timeslider.month.may": "Maj", + "timeslider.month.june": "Czerwiec", + "timeslider.month.july": "Lipiec", + "timeslider.month.august": "Sierpień", + "timeslider.month.september": "Wrzesień", + "timeslider.month.october": "Październik", + "timeslider.month.november": "Listopad", + "timeslider.month.december": "Grudzień", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autorów ]} bez nazw", + "pad.savedrevs.marked": "Ta wersja została właśnie oznaczona jako zapisana.", + "pad.userlist.entername": "Wprowadź swoją nazwę", + "pad.userlist.unnamed": "bez nazwy", + "pad.userlist.guest": "Gość", + "pad.userlist.deny": "Zabroń", + "pad.userlist.approve": "Akceptuj", + "pad.editbar.clearcolors": "Wyczyścić kolory autorstwa w całym dokumencie?", + "pad.impexp.importbutton": "Importuj teraz", + "pad.impexp.importing": "Importowanie...", + "pad.impexp.confirmimport": "Importowanie pliku spowoduje zastąpienie bieżącego tekstu. Czy na pewno chcesz kontynuować?", + "pad.impexp.convertFailed": "Nie byliśmy w stanie zaimportować tego pliku. Proszę użyć innego formatu dokumentu lub skopiować i wkleić ręcznie", + "pad.impexp.uploadFailed": "Przesyłanie nie powiodło się, proszę spróbować jeszcze raz", + "pad.impexp.importfailed": "Importowanie nie powiodło się", + "pad.impexp.copypaste": "Proszę skopiować i wkleić", + "pad.impexp.exportdisabled": "Eksport do formatu {{type}} jest wyłączony. Proszę skontaktować się z administratorem aby uzyskać więcej szczegółów." +} diff --git a/sources/src/locales/ps.json b/sources/src/locales/ps.json old mode 100644 new mode 100755 index 2e0558c..2c23d1c --- a/sources/src/locales/ps.json +++ b/sources/src/locales/ps.json @@ -1,71 +1,70 @@ { - "@metadata": { - "authors": [ - "Ahmed-Najib-Biabani-Ibrahimkhel" - ] - }, - "index.newPad": "نوې ليکچه", - "index.createOpenPad": "يا په همدې نوم يوه نوې ليکچه جوړول/پرانيستل:", - "pad.toolbar.bold.title": "زغرد (Ctrl-B)", - "pad.toolbar.italic.title": "رېوند (Ctrl-I)", - "pad.toolbar.undo.title": "ناکړل (Ctrl-Z)", - "pad.toolbar.redo.title": "بياکړل (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "د ليکوالۍ رنګونه سپينول", - "pad.toolbar.savedRevision.title": "مخکتنه خوندي کول", - "pad.toolbar.settings.title": "امستنې", - "pad.colorpicker.save": "خوندي کول", - "pad.colorpicker.cancel": "ناگارل", - "pad.loading": "برسېرېدنې کې دی...", - "pad.passwordRequired": "دې ليکچې ته د لاسرسي لپاره تاسې يو پټنوم ته اړتيا لرۍ", - "pad.wrongPassword": "پټنوم مو سم نه و", - "pad.settings.padSettings": "د ليکچې امستنې", - "pad.settings.myView": "زما کتنه", - "pad.settings.colorcheck": "د ليکوالۍ رنګونه", - "pad.settings.fontType": "ليکبڼې ډول:", - "pad.settings.fontType.normal": "نورمال", - "pad.settings.fontType.monospaced": "مونوسپېس", - "pad.settings.globalView": "نړېواله ښکارېدنه", - "pad.settings.language": "ژبه:", - "pad.importExport.importSuccessful": "بريالی شو!", - "pad.importExport.exporthtml": "اچ ټي ام اېل", - "pad.importExport.exportplain": "ساده متن", - "pad.importExport.exportword": "مايکروسافټ ورډ", - "pad.importExport.exportpdf": "پي ډي اېف", - "pad.importExport.exportopen": "ODF (اوپن ډاکومنټ فارمټ)", - "pad.importExport.exportdokuwiki": "ډوکوويکي", - "pad.modals.connected": "اړيکمن شو.", - "pad.modals.slowcommit.explanation": "پالنگر ځواب نه وايي.", - "pad.modals.slowcommit.cause": "دا کېدای شي د جال د اړيکتيايي ستونزو په سبب وي.", - "pad.modals.deleted": "ړنگ شو.", - "pad.share.readonly": "يوازې لوستنه", - "pad.share.link": "تړنه", - "pad.share.emebdcode": "يو آر اېل ټومبل", - "pad.chat": "بانډار", - "pad.chat.loadmessages": "نور پيغامونه برسېرول", - "timeslider.toolbar.authors": "ليکوال:", - "timeslider.toolbar.authorsList": "بې ليکواله", - "timeslider.toolbar.exportlink.title": "صادرول", - "timeslider.version": "بڼه {{version}}", - "timeslider.saved": "خوندي شو {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "جنوري", - "timeslider.month.february": "فبروري", - "timeslider.month.march": "مارچ", - "timeslider.month.april": "اپرېل", - "timeslider.month.may": "مۍ", - "timeslider.month.june": "جون", - "timeslider.month.july": "جولای", - "timeslider.month.august": "اگسټ", - "timeslider.month.september": "سېپتمبر", - "timeslider.month.october": "اکتوبر", - "timeslider.month.november": "نومبر", - "timeslider.month.december": "ډيسمبر", - "timeslider.unnamedauthors": "{{num}} بې نومه {[ډېرگړي(num) يو: ليکوال، نور: ليکوالان ]}", - "pad.savedrevs.marked": "اوس دا مخکتنه د يوې خوندي شوې مخکتنې په توگه په نښه شوه", - "pad.userlist.entername": "نوم مو ورکړۍ", - "pad.userlist.unnamed": "بې نومه", - "pad.userlist.guest": "مېلمه", - "pad.userlist.deny": "ردول", - "pad.userlist.approve": "منل", - "pad.impexp.copypaste": "لطفاً لمېسل لېښل ترسره کړئ" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Ahmed-Najib-Biabani-Ibrahimkhel" + ] + }, + "index.newPad": "نوې ليکچه", + "index.createOpenPad": "يا په همدې نوم يوه نوې ليکچه جوړول/پرانيستل:", + "pad.toolbar.bold.title": "زغرد (Ctrl-B)", + "pad.toolbar.italic.title": "رېوند (Ctrl-I)", + "pad.toolbar.undo.title": "ناکړل (Ctrl-Z)", + "pad.toolbar.redo.title": "بياکړل (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "د ليکوالۍ رنگونه سپينول (Ctrl+Shift+C)", + "pad.toolbar.savedRevision.title": "مخکتنه خوندي کول", + "pad.toolbar.settings.title": "امستنې", + "pad.colorpicker.save": "خوندي کول", + "pad.colorpicker.cancel": "ناگارل", + "pad.loading": "برسېرېدنې کې دی...", + "pad.passwordRequired": "دې ليکچې ته د لاسرسي لپاره تاسې يو پټنوم ته اړتيا لرۍ", + "pad.wrongPassword": "پټنوم مو سم نه و", + "pad.settings.padSettings": "د ليکچې امستنې", + "pad.settings.myView": "زما کتنه", + "pad.settings.colorcheck": "د ليکوالۍ رنگونه", + "pad.settings.fontType": "ليکبڼې ډول:", + "pad.settings.fontType.normal": "نورمال", + "pad.settings.fontType.monospaced": "مونوسپېس", + "pad.settings.globalView": "نړېواله ښکارېدنه", + "pad.settings.language": "ژبه:", + "pad.importExport.importSuccessful": "بريالی شو!", + "pad.importExport.exporthtml": "اچ ټي ام اېل", + "pad.importExport.exportplain": "ساده متن", + "pad.importExport.exportword": "مايکروسافټ ورډ", + "pad.importExport.exportpdf": "پي ډي اېف", + "pad.importExport.exportopen": "ODF (اوپن ډاکومنټ فارمټ)", + "pad.modals.connected": "اړيکمن شو.", + "pad.modals.slowcommit.explanation": "پالنگر ځواب نه وايي.", + "pad.modals.slowcommit.cause": "دا کېدای شي د جال د اړيکتيايي ستونزو په سبب وي.", + "pad.modals.deleted": "ړنگ شو.", + "pad.share.readonly": "يوازې لوستنه", + "pad.share.link": "تړنه", + "pad.share.emebdcode": "يو آر اېل ټومبل", + "pad.chat": "بانډار", + "pad.chat.loadmessages": "نور پيغامونه برسېرول", + "timeslider.toolbar.authors": "ليکوال:", + "timeslider.toolbar.authorsList": "بې ليکواله", + "timeslider.toolbar.exportlink.title": "صادرول", + "timeslider.version": "بڼه {{version}}", + "timeslider.saved": "خوندي شو {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "جنوري", + "timeslider.month.february": "فبروري", + "timeslider.month.march": "مارچ", + "timeslider.month.april": "اپرېل", + "timeslider.month.may": "مۍ", + "timeslider.month.june": "جون", + "timeslider.month.july": "جولای", + "timeslider.month.august": "اگسټ", + "timeslider.month.september": "سېپتمبر", + "timeslider.month.october": "اکتوبر", + "timeslider.month.november": "نومبر", + "timeslider.month.december": "ډيسمبر", + "timeslider.unnamedauthors": "{{num}} بې نومه {[ډېرگړي(num) يو: ليکوال، نور: ليکوالان ]}", + "pad.savedrevs.marked": "اوس دا مخکتنه د يوې خوندي شوې مخکتنې په توگه په نښه شوه", + "pad.userlist.entername": "نوم مو ورکړۍ", + "pad.userlist.unnamed": "بې نومه", + "pad.userlist.guest": "مېلمه", + "pad.userlist.deny": "ردول", + "pad.userlist.approve": "منل", + "pad.impexp.copypaste": "لطفاً لمېسل لېښل ترسره کړئ" +} diff --git a/sources/src/locales/pt-br.json b/sources/src/locales/pt-br.json old mode 100644 new mode 100755 index 31debf4..59d679c --- a/sources/src/locales/pt-br.json +++ b/sources/src/locales/pt-br.json @@ -1,127 +1,138 @@ { - "@metadata": { - "authors": [ - "Gusta", - "Luckas", - "Prilopes", - "TheGabrielZaum", - "Titoncio", - "Tuliouel" - ] - }, - "index.newPad": "Nova Nota", - "index.createOpenPad": "ou criar-abrir uma Nota com o nome:", - "pad.toolbar.bold.title": "Negrito (Ctrl-B)", - "pad.toolbar.italic.title": "Itálico (Ctrl-I)", - "pad.toolbar.underline.title": "Sublinhar (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Tachado", - "pad.toolbar.ol.title": "Lista ordenada", - "pad.toolbar.ul.title": "Lista não ordenada", - "pad.toolbar.indent.title": "Aumentar Recuo (TAB)", - "pad.toolbar.unindent.title": "Diminuir Recuo (Shift+TAB)", - "pad.toolbar.undo.title": "Desfazer (Ctrl-Z)", - "pad.toolbar.redo.title": "Refazer (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Limpar as cores de identificação de autoria", - "pad.toolbar.import_export.title": "Importar/Exportar de/para diferentes formatos de arquivo", - "pad.toolbar.timeslider.title": "Linha do tempo", - "pad.toolbar.savedRevision.title": "Salvar revisão", - "pad.toolbar.settings.title": "Configurações", - "pad.toolbar.embed.title": "Compartilhar e incorporar esta nota", - "pad.toolbar.showusers.title": "Mostrar os usuarios nesta Nota", - "pad.colorpicker.save": "Salvar", - "pad.colorpicker.cancel": "Cancelar", - "pad.loading": "Carregando...", - "pad.passwordRequired": "Você precisa de uma senha para acessar esta Nota", - "pad.permissionDenied": "Você não tem permissão para acessar esta nota", - "pad.wrongPassword": "Senha incorreta", - "pad.settings.padSettings": "Configurações da Nota", - "pad.settings.myView": "Minha Visão", - "pad.settings.stickychat": "Conversa sempre visível", - "pad.settings.colorcheck": "Cores de autoria", - "pad.settings.linenocheck": "Números de linha", - "pad.settings.rtlcheck": "Ler conteúdo da direita para esquerda?", - "pad.settings.fontType": "Tipo de fonte:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monoespaçada", - "pad.settings.globalView": "Visão global", - "pad.settings.language": "Idioma:", - "pad.importExport.import_export": "Importar/Exportar", - "pad.importExport.import": "Enviar um arquivo texto ou documento", - "pad.importExport.importSuccessful": "Completo!", - "pad.importExport.export": "Exportar a presente nota como:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Texto puro", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Você só pode importar de formatos de texto puro ou html. Para recursos de importação mais avançados \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstale o abiword\u003C/a\u003E.", - "pad.modals.connected": "Conectado.", - "pad.modals.reconnecting": "Reconectando à sua nota...", - "pad.modals.forcereconnect": "Forçar reconexão", - "pad.modals.userdup": "Aberto noutra janela", - "pad.modals.userdup.explanation": "Esta nota parece estar aberta em mais de uma janela de navegador deste computador.", - "pad.modals.userdup.advice": "Reconectar para usar esta janela.", - "pad.modals.unauth": "Não autorizado", - "pad.modals.unauth.explanation": "Suas permissões foram mudadas enquanto visualizava esta página. Tente reconectar.", - "pad.modals.looping.explanation": "Há problemas de comunicação com o servidor de sincronização.", - "pad.modals.looping.cause": "Talvez você tenha conectado por um firewall ou proxy incompatível.", - "pad.modals.initsocketfail": "Servidor é inalcançável.", - "pad.modals.initsocketfail.explanation": "Não foi possível conectar com o servidor de sincronização.", - "pad.modals.initsocketfail.cause": "Isto provavelmente ocorreu por um problema em seu navegador ou conexão.", - "pad.modals.slowcommit.explanation": "O servidor não responde.", - "pad.modals.slowcommit.cause": "Isto pode ser por problemas com a conexão de rede.", - "pad.modals.badChangeset.explanation": "Uma edição que você fez foi classificada como ilegal pelo servidor de sincronização.", - "pad.modals.badChangeset.cause": "Isto pode ocorrer devido a uma configuração errada do servidor ou algum outro comportamento inesperado. Por favor contate o administrador, se você acredita que é um erro. Tente reconectar para continuar editando.", - "pad.modals.corruptPad.explanation": "O pad que você está tentando acessar está corrompido.", - "pad.modals.corruptPad.cause": "Isto pode ocorrer devido a uma configuração errada do servidor ou algum outro comportamento inesperado. Por favor contate o administrador.", - "pad.modals.deleted": "Excluído", - "pad.modals.deleted.explanation": "Esta nota foi removida.", - "pad.modals.disconnected": "Você foi desconectado.", - "pad.modals.disconnected.explanation": "A conexão com o servidor foi perdida", - "pad.modals.disconnected.cause": "O servidor pode estar indisponível. Por favor, notifique o administrador caso isso continue.", - "pad.share": "Compartilhar esta nota", - "pad.share.readonly": "Somente leitura", - "pad.share.link": "Ligação", - "pad.share.emebdcode": "Incorporar o URL", - "pad.chat": "Bate-papo", - "pad.chat.title": "Abrir o bate-papo desta nota.", - "pad.chat.loadmessages": "Carregar mais mensagens", - "timeslider.pageTitle": "Linha do tempo de {{appTitle}}", - "timeslider.toolbar.returnbutton": "Retornar para a nota", - "timeslider.toolbar.authors": "Autores:", - "timeslider.toolbar.authorsList": "Sem autores", - "timeslider.toolbar.exportlink.title": "Exportar", - "timeslider.exportCurrent": "Exportar a versão atual em formato:", - "timeslider.version": "Versão {{version}}", - "timeslider.saved": "Salvo em {{day}} de {{month}} de {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Janeiro", - "timeslider.month.february": "Fevereiro", - "timeslider.month.march": "Março", - "timeslider.month.april": "Abril", - "timeslider.month.may": "Maio", - "timeslider.month.june": "Junho", - "timeslider.month.july": "Julho", - "timeslider.month.august": "Agosto", - "timeslider.month.september": "Setembro", - "timeslider.month.october": "Outubro", - "timeslider.month.november": "Novembro", - "timeslider.month.december": "Dezembro", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anônimo, other: autores anônimos ]}", - "pad.savedrevs.marked": "Esta revisão foi marcada como salva", - "pad.userlist.entername": "Insira o seu nome", - "pad.userlist.unnamed": "Sem título", - "pad.userlist.guest": "Convidado", - "pad.userlist.deny": "Negar", - "pad.userlist.approve": "Aprovar", - "pad.editbar.clearcolors": "Deseja limpar cores de autoria em todo o documento?", - "pad.impexp.importbutton": "Importar agora", - "pad.impexp.importing": "Importando...", - "pad.impexp.confirmimport": "Importar um arquivo sobrescreverá o atual texto da nota. Tem certeza de que deseja prosseguir?", - "pad.impexp.convertFailed": "Não foi possível importar este arquivo. Use outro formato ou copie e cole manualmente", - "pad.impexp.uploadFailed": "O envio falhou. Tente outra vez", - "pad.impexp.importfailed": "A importação falhou", - "pad.impexp.copypaste": "Copie e cole", - "pad.impexp.exportdisabled": "A expostação em formato {{type}} está desativada. Comunique-se com o administrador do sistema para detalhes." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Gusta", + "Luckas", + "Prilopes", + "TheGabrielZaum", + "Titoncio", + "Tuliouel", + "Rafaelff", + "Dianakc", + "Macofe", + "Rodrigo codignoli", + "Webysther", + "Fasouzafreitas", + "Lpagliari" + ] + }, + "index.newPad": "Nova Nota", + "index.createOpenPad": "ou criar-abrir uma Nota com o nome:", + "pad.toolbar.bold.title": "Negrito (Ctrl-B)", + "pad.toolbar.italic.title": "Itálico (Ctrl-I)", + "pad.toolbar.underline.title": "Sublinhado (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Tachado (Ctrl+5)", + "pad.toolbar.ol.title": "Lista ordenada (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Lista não ordenada (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Aumentar Recuo (TAB)", + "pad.toolbar.unindent.title": "Diminuir Recuo (Shift+TAB)", + "pad.toolbar.undo.title": "Desfazer (Ctrl-Z)", + "pad.toolbar.redo.title": "Refazer (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Limpar as cores de identificação de autoria (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importar/Exportar de/para diferentes formatos de arquivo", + "pad.toolbar.timeslider.title": "Linha do tempo", + "pad.toolbar.savedRevision.title": "Salvar revisão", + "pad.toolbar.settings.title": "Configurações", + "pad.toolbar.embed.title": "Compartilhar e incorporar esta Nota", + "pad.toolbar.showusers.title": "Mostrar os usuarios nesta Nota", + "pad.colorpicker.save": "Salvar", + "pad.colorpicker.cancel": "Cancelar", + "pad.loading": "Carregando...", + "pad.noCookie": "Cookie não foi encontrado. Por favor, habilite cookies no seu navegador!", + "pad.passwordRequired": "Você precisa de uma senha para acessar esta Nota", + "pad.permissionDenied": "Você não tem permissão para acessar esta Nota", + "pad.wrongPassword": "Senha incorreta", + "pad.settings.padSettings": "Configurações da Nota", + "pad.settings.myView": "Minha Visão", + "pad.settings.stickychat": "Bate-papo sempre visível", + "pad.settings.chatandusers": "Mostrar o bate-papo e os usuários", + "pad.settings.colorcheck": "Cores de autoria", + "pad.settings.linenocheck": "Números de linha", + "pad.settings.rtlcheck": "Ler conteúdo da direita para esquerda?", + "pad.settings.fontType": "Tipo de fonte:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monoespaçada", + "pad.settings.globalView": "Visão global", + "pad.settings.language": "Idioma:", + "pad.importExport.import_export": "Importar/Exportar", + "pad.importExport.import": "Enviar um arquivo texto ou documento", + "pad.importExport.importSuccessful": "Completo!", + "pad.importExport.export": "Exportar a nota atual como:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Texto puro", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Você só pode importar de formatos de texto puro ou html. Para recursos de importação mais avançados instale o abiword.", + "pad.modals.connected": "Conectado.", + "pad.modals.reconnecting": "Reconectando à sua nota...", + "pad.modals.forcereconnect": "Forçar reconexão", + "pad.modals.userdup": "Aberto em outra janela", + "pad.modals.userdup.explanation": "Esta nota parece estar aberta em mais de uma janela de navegador deste computador.", + "pad.modals.userdup.advice": "Reconectar para usar esta janela.", + "pad.modals.unauth": "Não autorizado", + "pad.modals.unauth.explanation": "Suas permissões foram mudadas enquanto visualizava esta página. Tente reconectar.", + "pad.modals.looping.explanation": "Há problemas de comunicação com o servidor de sincronização.", + "pad.modals.looping.cause": "Talvez você tenha conectado por um firewall ou proxy incompatível.", + "pad.modals.initsocketfail": "Servidor está indisponível.", + "pad.modals.initsocketfail.explanation": "Não foi possível conectar com o servidor de sincronização.", + "pad.modals.initsocketfail.cause": "Isto provavelmente ocorreu por um problema em seu navegador ou conexão.", + "pad.modals.slowcommit.explanation": "O servidor não responde.", + "pad.modals.slowcommit.cause": "Isto pode ser por problemas com a conexão de rede.", + "pad.modals.badChangeset.explanation": "Uma edição que você fez foi classificada como ilegal pelo servidor de sincronização.", + "pad.modals.badChangeset.cause": "Isto pode ocorrer devido a uma configuração errada do servidor ou algum outro comportamento inesperado. Por favor contate o administrador, se você acredita que é um erro. Tente reconectar para continuar editando.", + "pad.modals.corruptPad.explanation": "A nota que você está tentando acessar está corrompida.", + "pad.modals.corruptPad.cause": "Isto pode ocorrer devido a uma configuração errada do servidor ou algum outro comportamento inesperado. Por favor contate o administrador.", + "pad.modals.deleted": "Excluído.", + "pad.modals.deleted.explanation": "Esta nota foi removida.", + "pad.modals.disconnected": "Você foi desconectado.", + "pad.modals.disconnected.explanation": "A conexão com o servidor foi perdida", + "pad.modals.disconnected.cause": "O servidor pode estar indisponível. Por favor, notifique o administrador caso isso continue.", + "pad.share": "Compartilhar esta nota", + "pad.share.readonly": "Somente leitura", + "pad.share.link": "Link", + "pad.share.emebdcode": "Incorporar o URL", + "pad.chat": "Bate-papo", + "pad.chat.title": "Abrir o bate-papo desta nota.", + "pad.chat.loadmessages": "Carregar mais mensagens", + "timeslider.pageTitle": "Linha do tempo de {{appTitle}}", + "timeslider.toolbar.returnbutton": "Retornar para a nota", + "timeslider.toolbar.authors": "Autores:", + "timeslider.toolbar.authorsList": "Sem autores", + "timeslider.toolbar.exportlink.title": "Exportar", + "timeslider.exportCurrent": "Exportar a versão atual em formato:", + "timeslider.version": "Versão {{version}}", + "timeslider.saved": "Salvo em {{day}} de {{month}} de {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Janeiro", + "timeslider.month.february": "Fevereiro", + "timeslider.month.march": "Março", + "timeslider.month.april": "Abril", + "timeslider.month.may": "Maio", + "timeslider.month.june": "Junho", + "timeslider.month.july": "Julho", + "timeslider.month.august": "Agosto", + "timeslider.month.september": "Setembro", + "timeslider.month.october": "Outubro", + "timeslider.month.november": "Novembro", + "timeslider.month.december": "Dezembro", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anônimo, other: autores anônimos ]}", + "pad.savedrevs.marked": "Esta revisão foi marcada como salva", + "pad.savedrevs.timeslider": "Você pode consultar as revisões salvas visitando a linha do tempo", + "pad.userlist.entername": "Insira o seu nome", + "pad.userlist.unnamed": "Sem título", + "pad.userlist.guest": "Convidado", + "pad.userlist.deny": "Negar", + "pad.userlist.approve": "Aprovar", + "pad.editbar.clearcolors": "Deseja limpar cores de autoria em todo o documento?", + "pad.impexp.importbutton": "Importar agora", + "pad.impexp.importing": "Importando...", + "pad.impexp.confirmimport": "Importar um arquivo sobrescreverá o texto atual da nota. Tem certeza de que deseja prosseguir?", + "pad.impexp.convertFailed": "Não foi possível importar este arquivo. Use outro formato ou copie e cole manualmente", + "pad.impexp.padHasData": "Não foi possível importar este arquivo porque esta nota já tinha alterações, consulte como importar para uma nova nota", + "pad.impexp.uploadFailed": "O envio falhou. Tente outra vez", + "pad.impexp.importfailed": "A importação falhou", + "pad.impexp.copypaste": "Copie e cole", + "pad.impexp.exportdisabled": "A exportação em formato {{type}} está desativada. Comunique-se com o administrador do sistema para detalhes." +} diff --git a/sources/src/locales/pt.json b/sources/src/locales/pt.json old mode 100644 new mode 100755 index cb1359e..473980f --- a/sources/src/locales/pt.json +++ b/sources/src/locales/pt.json @@ -1,110 +1,113 @@ { - "@metadata": { - "authors": [ - "Hamilton Abreu", - "Luckas", - "Tuliouel", - "Waldir", - "Imperadeiro98" - ] - }, - "index.newPad": "Nova Nota", - "index.createOpenPad": "ou crie/abra uma Nota com o nome:", - "pad.toolbar.bold.title": "Negrito (Ctrl-B)", - "pad.toolbar.italic.title": "Itálico (Ctrl-I)", - "pad.toolbar.underline.title": "Sublinhado (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Riscar", - "pad.toolbar.ol.title": "Lista ordenada", - "pad.toolbar.ul.title": "Lista desordenada", - "pad.toolbar.indent.title": "Avançar", - "pad.toolbar.unindent.title": "Recuar", - "pad.toolbar.undo.title": "Desfazer (Ctrl-Z)", - "pad.toolbar.redo.title": "Refazer (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Limpar cores de autoria", - "pad.toolbar.import_export.title": "Importar/exportar de/para diferentes formatos de ficheiro", - "pad.toolbar.timeslider.title": "Linha de tempo", - "pad.toolbar.savedRevision.title": "Salvar revisão", - "pad.toolbar.settings.title": "Configurações", - "pad.toolbar.embed.title": "Compartilhar e incorporar este pad", - "pad.toolbar.showusers.title": "Mostrar os utilizadores nesta Nota", - "pad.colorpicker.save": "Gravar", - "pad.colorpicker.cancel": "Cancelar", - "pad.loading": "A carregar…", - "pad.passwordRequired": "Precisa de uma senha para aceder a este pad", - "pad.permissionDenied": "Não tem permissão para aceder a este pad.", - "pad.wrongPassword": "A palavra-chave está errada", - "pad.settings.padSettings": "Configurações da Nota", - "pad.settings.myView": "Minha vista", - "pad.settings.stickychat": "Bate-papo sempre no ecrã", - "pad.settings.colorcheck": "Cores de autoria", - "pad.settings.linenocheck": "Números de linha", - "pad.settings.rtlcheck": "Ler o conteúdo da direita para a esquerda?", - "pad.settings.fontType": "Tipo de letra:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monoespaçada", - "pad.settings.globalView": "Vista global", - "pad.settings.language": "Língua:", - "pad.importExport.import_export": "Importar/Exportar", - "pad.importExport.import": "Carregar qualquer ficheiro de texto ou documento", - "pad.importExport.importSuccessful": "Bem sucedido!", - "pad.importExport.export": "Exportar a Nota atual como:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Texto simples", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.modals.connected": "Ligado.", - "pad.modals.reconnecting": "Reconectando-se ao seu bloco…", - "pad.modals.forcereconnect": "Forçar reconexão", - "pad.modals.userdup": "Aberto noutra janela", - "pad.modals.userdup.explanation": "Este pad parece estar aberto em mais do que uma janela do navegador neste computador.", - "pad.modals.unauth": "Não autorizado", - "pad.modals.looping.explanation": "Existem problemas de comunicação com o servidor de sincronização.", - "pad.modals.initsocketfail": "O servidor está inacessível.", - "pad.modals.initsocketfail.explanation": "Não foi possível a conexão ao servidor de sincronização.", - "pad.modals.slowcommit.explanation": "O servidor não está a responder.", - "pad.modals.deleted": "Eliminado.", - "pad.modals.deleted.explanation": "Este pad foi removido.", - "pad.modals.disconnected": "Você foi desconectado.", - "pad.modals.disconnected.explanation": "A conexão com o servidor foi perdida", - "pad.modals.disconnected.cause": "O servidor pode estar indisponível. Por favor, notifique o administrador de serviço se isto continuar a acontecer.", - "pad.share": "Compartilhar este pad", - "pad.share.readonly": "Somente para leitura", - "pad.chat": "Bate-papo", - "pad.chat.title": "Abrir o bate-papo para este pad.", - "pad.chat.loadmessages": "Carregar mais mensagens", - "timeslider.toolbar.returnbutton": "Voltar ao pad", - "timeslider.toolbar.authors": "Autores:", - "timeslider.toolbar.authorsList": "Sem Autores", - "timeslider.toolbar.exportlink.title": "Exportar", - "timeslider.exportCurrent": "Exportar versão atual como:", - "timeslider.version": "Versão {{version}}", - "timeslider.saved": "Gravado a {{day}} de {{month}} de {{ano}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Janeiro", - "timeslider.month.february": "Fevereiro", - "timeslider.month.march": "Março", - "timeslider.month.april": "Abril", - "timeslider.month.may": "Maio", - "timeslider.month.june": "Junho", - "timeslider.month.july": "Julho", - "timeslider.month.august": "Agosto", - "timeslider.month.september": "Setembro", - "timeslider.month.october": "Outubro", - "timeslider.month.november": "Novembro", - "timeslider.month.december": "Dezembro", - "pad.savedrevs.marked": "Esta revisão está agora marcada como gravada", - "pad.userlist.entername": "Insira o seu nome", - "pad.userlist.unnamed": "sem nome", - "pad.userlist.guest": "Convidado", - "pad.userlist.deny": "Negar", - "pad.userlist.approve": "Aprovar", - "pad.editbar.clearcolors": "Deseja limpar as cores de autoria em todo o documento?", - "pad.impexp.importbutton": "Importar agora", - "pad.impexp.importing": "Importando...", - "pad.impexp.confirmimport": "A importação de um ficheiro irá substituir o texto atual do pad. Tem certeza que deseja continuar?", - "pad.impexp.uploadFailed": "O upload falhou. Por favor, tente novamente", - "pad.impexp.importfailed": "A importação falhou", - "pad.impexp.copypaste": "Por favor, copie e cole" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Hamilton Abreu", + "Luckas", + "Tuliouel", + "Waldir", + "Imperadeiro98", + "Macofe", + "Ti4goc" + ] + }, + "index.newPad": "Nova Nota", + "index.createOpenPad": "ou crie/abra uma Nota com o nome:", + "pad.toolbar.bold.title": "Negrito (Ctrl-B)", + "pad.toolbar.italic.title": "Itálico (Ctrl-I)", + "pad.toolbar.underline.title": "Sublinhado (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Riscar (Ctrl+5)", + "pad.toolbar.ol.title": "Lista ordenada (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Lista desordenada (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Avançar (TAB)", + "pad.toolbar.unindent.title": "Recuar (Shift+TAB)", + "pad.toolbar.undo.title": "Desfazer (Ctrl-Z)", + "pad.toolbar.redo.title": "Refazer (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Limpar cores de autoria (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importar/exportar de/para diferentes formatos de ficheiro", + "pad.toolbar.timeslider.title": "Linha de tempo", + "pad.toolbar.savedRevision.title": "Salvar revisão", + "pad.toolbar.settings.title": "Configurações", + "pad.toolbar.embed.title": "Compartilhar e incorporar este pad", + "pad.toolbar.showusers.title": "Mostrar os utilizadores nesta Nota", + "pad.colorpicker.save": "Gravar", + "pad.colorpicker.cancel": "Cancelar", + "pad.loading": "A carregar…", + "pad.passwordRequired": "Precisa de uma senha para aceder a este pad", + "pad.permissionDenied": "Não tem permissão para aceder a este pad.", + "pad.wrongPassword": "A palavra-chave está errada", + "pad.settings.padSettings": "Configurações da Nota", + "pad.settings.myView": "Minha vista", + "pad.settings.stickychat": "Bate-papo sempre no ecrã", + "pad.settings.colorcheck": "Cores de autoria", + "pad.settings.linenocheck": "Números de linha", + "pad.settings.rtlcheck": "Ler o conteúdo da direita para a esquerda?", + "pad.settings.fontType": "Tipo de letra:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monoespaçada", + "pad.settings.globalView": "Vista global", + "pad.settings.language": "Língua:", + "pad.importExport.import_export": "Importar/Exportar", + "pad.importExport.import": "Carregar qualquer ficheiro de texto ou documento", + "pad.importExport.importSuccessful": "Bem sucedido!", + "pad.importExport.export": "Exportar a Nota atual como:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Texto simples", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.modals.connected": "Ligado.", + "pad.modals.reconnecting": "Reconectando-se ao seu bloco…", + "pad.modals.forcereconnect": "Forçar reconexão", + "pad.modals.userdup": "Aberto noutra janela", + "pad.modals.userdup.explanation": "Este pad parece estar aberto em mais do que uma janela do navegador neste computador.", + "pad.modals.unauth": "Não autorizado", + "pad.modals.looping.explanation": "Existem problemas de comunicação com o servidor de sincronização.", + "pad.modals.initsocketfail": "O servidor está inacessível.", + "pad.modals.initsocketfail.explanation": "Não foi possível a conexão ao servidor de sincronização.", + "pad.modals.slowcommit.explanation": "O servidor não está a responder.", + "pad.modals.deleted": "Eliminado.", + "pad.modals.deleted.explanation": "Este pad foi removido.", + "pad.modals.disconnected": "Você foi desconectado.", + "pad.modals.disconnected.explanation": "A conexão com o servidor foi perdida", + "pad.modals.disconnected.cause": "O servidor pode estar indisponível. Por favor, notifique o administrador de serviço se isto continuar a acontecer.", + "pad.share": "Compartilhar este pad", + "pad.share.readonly": "Somente para leitura", + "pad.share.link": "Ligação", + "pad.chat": "Bate-papo", + "pad.chat.title": "Abrir o bate-papo para este pad.", + "pad.chat.loadmessages": "Carregar mais mensagens", + "timeslider.toolbar.returnbutton": "Voltar ao pad", + "timeslider.toolbar.authors": "Autores:", + "timeslider.toolbar.authorsList": "Sem Autores", + "timeslider.toolbar.exportlink.title": "Exportar", + "timeslider.exportCurrent": "Exportar versão atual como:", + "timeslider.version": "Versão {{version}}", + "timeslider.saved": "Gravado a {{day}} de {{month}} de {{ano}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Janeiro", + "timeslider.month.february": "Fevereiro", + "timeslider.month.march": "Março", + "timeslider.month.april": "Abril", + "timeslider.month.may": "Maio", + "timeslider.month.june": "Junho", + "timeslider.month.july": "Julho", + "timeslider.month.august": "Agosto", + "timeslider.month.september": "Setembro", + "timeslider.month.october": "Outubro", + "timeslider.month.november": "Novembro", + "timeslider.month.december": "Dezembro", + "pad.savedrevs.marked": "Esta revisão está agora marcada como gravada", + "pad.userlist.entername": "Insira o seu nome", + "pad.userlist.unnamed": "sem nome", + "pad.userlist.guest": "Convidado", + "pad.userlist.deny": "Negar", + "pad.userlist.approve": "Aprovar", + "pad.editbar.clearcolors": "Deseja limpar as cores de autoria em todo o documento?", + "pad.impexp.importbutton": "Importar agora", + "pad.impexp.importing": "Importando...", + "pad.impexp.confirmimport": "A importação de um ficheiro irá substituir o texto atual do pad. Tem certeza que deseja continuar?", + "pad.impexp.padHasData": "Não fomos capazes de importar este ficheiro porque esta Almofada já tinha alterações, consulte importar para um novo bloco", + "pad.impexp.uploadFailed": "O upload falhou. Por favor, tente novamente", + "pad.impexp.importfailed": "A importação falhou", + "pad.impexp.copypaste": "Por favor, copie e cole" +} diff --git a/sources/src/locales/ru.json b/sources/src/locales/ru.json old mode 100644 new mode 100755 index d74e759..9a17dda --- a/sources/src/locales/ru.json +++ b/sources/src/locales/ru.json @@ -1,126 +1,128 @@ { - "@metadata": { - "authors": [ - "Amire80", - "DCamer", - "Eleferen", - "Okras", - "Volkov" - ] - }, - "index.newPad": "Создать", - "index.createOpenPad": "или создать/открыть документ с именем:", - "pad.toolbar.bold.title": "полужирный (Ctrl-B)", - "pad.toolbar.italic.title": "курсив (Ctrl-I)", - "pad.toolbar.underline.title": "подчёркивание (Ctrl-U)", - "pad.toolbar.strikethrough.title": "зачёркивание", - "pad.toolbar.ol.title": "Упорядоченный список", - "pad.toolbar.ul.title": "Неупорядоченный список", - "pad.toolbar.indent.title": "Отступ", - "pad.toolbar.unindent.title": "Выступ", - "pad.toolbar.undo.title": "Отменить (Ctrl-Z)", - "pad.toolbar.redo.title": "Вернуть (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Очистить цвета документа", - "pad.toolbar.import_export.title": "Импорт/экспорт с использованием различных форматов файлов", - "pad.toolbar.timeslider.title": "Шкала времени", - "pad.toolbar.savedRevision.title": "Сохранить версию", - "pad.toolbar.settings.title": "Настройки", - "pad.toolbar.embed.title": "Поделиться и встроить этот документ", - "pad.toolbar.showusers.title": "Показать пользователей в документе", - "pad.colorpicker.save": "Сохранить", - "pad.colorpicker.cancel": "Отмена", - "pad.loading": "Загрузка...", - "pad.passwordRequired": "Вам нужен пароль для доступа", - "pad.permissionDenied": "У вас нет разрешения на доступ", - "pad.wrongPassword": "Неправильный пароль", - "pad.settings.padSettings": "Настройки документа", - "pad.settings.myView": "Мой вид", - "pad.settings.stickychat": "Всегда отображать чат", - "pad.settings.colorcheck": "Цвета документа", - "pad.settings.linenocheck": "Номера строк", - "pad.settings.rtlcheck": "Читать содержимое справа налево?", - "pad.settings.fontType": "Тип шрифта:", - "pad.settings.fontType.normal": "Обычный", - "pad.settings.fontType.monospaced": "Моноширинный", - "pad.settings.globalView": "Общий вид", - "pad.settings.language": "Язык:", - "pad.importExport.import_export": "Импорт/экспорт", - "pad.importExport.import": "Загрузить любой текстовый файл или документ", - "pad.importExport.importSuccessful": "Успешно!", - "pad.importExport.export": "Экспортировать текущий документ как:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Обычный текст", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (документ OpenOffice)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Вы можете импортировать только из обычного текста или HTML. Для более продвинутых функций импорта, пожалуйста, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eустановите AbiWord\u003C/a\u003E.", - "pad.modals.connected": "Подключен.", - "pad.modals.reconnecting": "Повторное подключение к вашему документу", - "pad.modals.forcereconnect": "Принудительное переподключение", - "pad.modals.userdup": "Открыто в другом окне", - "pad.modals.userdup.explanation": "Документ, возможно, открыт более чем в одном окне браузера на этом компьютере.", - "pad.modals.userdup.advice": "Повторно подключить с использованием этого окна.", - "pad.modals.unauth": "Не авторизован", - "pad.modals.unauth.explanation": "Ваши разрешения были изменены во время просмотра этой страницы. Попробуйте подключиться повторно.", - "pad.modals.looping.explanation": "Проблемы связи с сервером синхронизации.", - "pad.modals.looping.cause": "Возможно, вы подключились через несовместимый брандмауэр или прокси.", - "pad.modals.initsocketfail": "Сервер недоступен.", - "pad.modals.initsocketfail.explanation": "Не удалось подключиться к серверу синхронизации.", - "pad.modals.initsocketfail.cause": "Вероятно, это вызвано проблемами с вашим браузером или интернет-соединением.", - "pad.modals.slowcommit.explanation": "Сервер не отвечает.", - "pad.modals.slowcommit.cause": "Это может быть вызвано проблемами с сетевым подключением.", - "pad.modals.badChangeset.explanation": "Правка, которую вы сделали, была классифицирована сервером синхронизации как недопустимая.", - "pad.modals.badChangeset.cause": "Это может быть из-за неправильной конфигурации сервера или некоторых других неожиданных действий. Пожалуйста, свяжитесь с администратором службы, если вы считаете, что это ошибка. Попробуйте переподключиться для того, чтобы продолжить редактирование.", - "pad.modals.corruptPad.explanation": "Документ, к которому вы пытаетесь получить доступ, повреждён.", - "pad.modals.corruptPad.cause": "Это может быть из-за неправильной конфигурации сервера или некоторых других неожиданных действий. Пожалуйста, свяжитесь с администратором службы.", - "pad.modals.deleted": "Удален.", - "pad.modals.deleted.explanation": "Этот документ был удален.", - "pad.modals.disconnected": "Соединение разорвано.", - "pad.modals.disconnected.explanation": "Подключение к серверу потеряно", - "pad.modals.disconnected.cause": "Сервер, возможно, недоступен. Пожалуйста, сообщите администратору службы, если проблема будет повторятся.", - "pad.share": "Поделиться", - "pad.share.readonly": "Только чтение", - "pad.share.link": "Ссылка", - "pad.share.emebdcode": "Вставить URL", - "pad.chat": "Чат", - "pad.chat.title": "Открыть чат для этого документа.", - "pad.chat.loadmessages": "Еще сообщения", - "timeslider.pageTitle": "Временная шкала {{appTitle}}", - "timeslider.toolbar.returnbutton": "К документу", - "timeslider.toolbar.authors": "Авторы:", - "timeslider.toolbar.authorsList": "Нет авторов", - "timeslider.toolbar.exportlink.title": "Экспорт", - "timeslider.exportCurrent": "Экспортировать текущую версию как:", - "timeslider.version": "Версия {{version}}", - "timeslider.saved": "Сохранено {{day}}.{{month}}.{{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "январь", - "timeslider.month.february": "февраль", - "timeslider.month.march": "март", - "timeslider.month.april": "апрель", - "timeslider.month.may": "май", - "timeslider.month.june": "июнь", - "timeslider.month.july": "июль", - "timeslider.month.august": "август", - "timeslider.month.september": "сентябрь", - "timeslider.month.october": "октябрь", - "timeslider.month.november": "ноябрь", - "timeslider.month.december": "декабрь", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: безымянный автор, few: безымянных автора, many: безымянных авторов, other: безымянных авторов]}", - "pad.savedrevs.marked": "Эта версия теперь помечена как сохраненная", - "pad.userlist.entername": "Введите ваше имя", - "pad.userlist.unnamed": "безымянный", - "pad.userlist.guest": "Гость", - "pad.userlist.deny": "Отклонить", - "pad.userlist.approve": "Утвердить", - "pad.editbar.clearcolors": "Очистить авторские цвета во всем документе?", - "pad.impexp.importbutton": "Импортировать сейчас", - "pad.impexp.importing": "Импортирование…", - "pad.impexp.confirmimport": "Импорт файла перезапишет текущий текст. Вы уверены, что вы хотите продолжить?", - "pad.impexp.convertFailed": "Не удалось импортировать этот файл. Пожалуйста, используйте другой формат или скопируйте вручную", - "pad.impexp.uploadFailed": "Загрузка не удалась, пожалуйста, попробуйте ещё раз", - "pad.impexp.importfailed": "Ошибка при импортировании", - "pad.impexp.copypaste": "Пожалуйста, скопируйте", - "pad.impexp.exportdisabled": "Экспорт в формате {{type}} отключен. Для подробной информации обратитесь к системному администратору." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Amire80", + "DCamer", + "Eleferen", + "Okras", + "Volkov" + ] + }, + "index.newPad": "Создать", + "index.createOpenPad": "или создать/открыть документ с именем:", + "pad.toolbar.bold.title": "полужирный (Ctrl-B)", + "pad.toolbar.italic.title": "курсив (Ctrl-I)", + "pad.toolbar.underline.title": "подчёркивание (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Зачёркивание (Ctrl+5)", + "pad.toolbar.ol.title": "Упорядоченный список (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Неупорядоченный список (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Отступ (TAB)", + "pad.toolbar.unindent.title": "Выступ (Shift+TAB)", + "pad.toolbar.undo.title": "Отменить (Ctrl-Z)", + "pad.toolbar.redo.title": "Вернуть (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Очистить цвета документа (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Импорт/экспорт с использованием различных форматов файлов", + "pad.toolbar.timeslider.title": "Шкала времени", + "pad.toolbar.savedRevision.title": "Сохранить версию", + "pad.toolbar.settings.title": "Настройки", + "pad.toolbar.embed.title": "Поделиться и встроить этот документ", + "pad.toolbar.showusers.title": "Показать пользователей в документе", + "pad.colorpicker.save": "Сохранить", + "pad.colorpicker.cancel": "Отмена", + "pad.loading": "Загрузка...", + "pad.noCookie": "Куки не найдены. Пожалуйста, включите куки в вашем браузере!", + "pad.passwordRequired": "Вам нужен пароль для доступа", + "pad.permissionDenied": "У вас нет разрешения на доступ", + "pad.wrongPassword": "Неправильный пароль", + "pad.settings.padSettings": "Настройки документа", + "pad.settings.myView": "Мой вид", + "pad.settings.stickychat": "Всегда отображать чат", + "pad.settings.chatandusers": "Показать чат и пользователей", + "pad.settings.colorcheck": "Цвета документа", + "pad.settings.linenocheck": "Номера строк", + "pad.settings.rtlcheck": "Читать содержимое справа налево?", + "pad.settings.fontType": "Тип шрифта:", + "pad.settings.fontType.normal": "Обычный", + "pad.settings.fontType.monospaced": "Моноширинный", + "pad.settings.globalView": "Общий вид", + "pad.settings.language": "Язык:", + "pad.importExport.import_export": "Импорт/экспорт", + "pad.importExport.import": "Загрузить любой текстовый файл или документ", + "pad.importExport.importSuccessful": "Успешно!", + "pad.importExport.export": "Экспортировать текущий документ как:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Обычный текст", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (документ OpenOffice)", + "pad.importExport.abiword.innerHTML": "Вы можете импортировать только из обычного текста или HTML. Для более продвинутых функций импорта, пожалуйста, установите AbiWord.", + "pad.modals.connected": "Подключен.", + "pad.modals.reconnecting": "Повторное подключение к вашему документу", + "pad.modals.forcereconnect": "Принудительное переподключение", + "pad.modals.userdup": "Открыто в другом окне", + "pad.modals.userdup.explanation": "Документ, возможно, открыт более чем в одном окне браузера на этом компьютере.", + "pad.modals.userdup.advice": "Повторно подключить с использованием этого окна.", + "pad.modals.unauth": "Не авторизован", + "pad.modals.unauth.explanation": "Ваши разрешения были изменены во время просмотра этой страницы. Попробуйте подключиться повторно.", + "pad.modals.looping.explanation": "Проблемы связи с сервером синхронизации.", + "pad.modals.looping.cause": "Возможно, вы подключились через несовместимый брандмауэр или прокси.", + "pad.modals.initsocketfail": "Сервер недоступен.", + "pad.modals.initsocketfail.explanation": "Не удалось подключиться к серверу синхронизации.", + "pad.modals.initsocketfail.cause": "Вероятно, это вызвано проблемами с вашим браузером или интернет-соединением.", + "pad.modals.slowcommit.explanation": "Сервер не отвечает.", + "pad.modals.slowcommit.cause": "Это может быть вызвано проблемами с сетевым подключением.", + "pad.modals.badChangeset.explanation": "Правка, которую вы сделали, была классифицирована сервером синхронизации как недопустимая.", + "pad.modals.badChangeset.cause": "Это может быть из-за неправильной конфигурации сервера или некоторых других неожиданных действий. Пожалуйста, свяжитесь с администратором службы, если вы считаете, что это ошибка. Попробуйте переподключиться для того, чтобы продолжить редактирование.", + "pad.modals.corruptPad.explanation": "Документ, к которому вы пытаетесь получить доступ, повреждён.", + "pad.modals.corruptPad.cause": "Это может быть из-за неправильной конфигурации сервера или некоторых других неожиданных действий. Пожалуйста, свяжитесь с администратором службы.", + "pad.modals.deleted": "Удален.", + "pad.modals.deleted.explanation": "Этот документ был удален.", + "pad.modals.disconnected": "Соединение разорвано.", + "pad.modals.disconnected.explanation": "Подключение к серверу потеряно", + "pad.modals.disconnected.cause": "Сервер, возможно, недоступен. Пожалуйста, сообщите администратору службы, если проблема будет повторятся.", + "pad.share": "Поделиться", + "pad.share.readonly": "Только чтение", + "pad.share.link": "Ссылка", + "pad.share.emebdcode": "Вставить URL", + "pad.chat": "Чат", + "pad.chat.title": "Открыть чат для этого документа.", + "pad.chat.loadmessages": "Еще сообщения", + "timeslider.pageTitle": "Временная шкала {{appTitle}}", + "timeslider.toolbar.returnbutton": "К документу", + "timeslider.toolbar.authors": "Авторы:", + "timeslider.toolbar.authorsList": "Нет авторов", + "timeslider.toolbar.exportlink.title": "Экспорт", + "timeslider.exportCurrent": "Экспортировать текущую версию как:", + "timeslider.version": "Версия {{version}}", + "timeslider.saved": "Сохранено {{day}}.{{month}}.{{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "январь", + "timeslider.month.february": "февраль", + "timeslider.month.march": "март", + "timeslider.month.april": "апрель", + "timeslider.month.may": "май", + "timeslider.month.june": "июнь", + "timeslider.month.july": "июль", + "timeslider.month.august": "август", + "timeslider.month.september": "сентябрь", + "timeslider.month.october": "октябрь", + "timeslider.month.november": "ноябрь", + "timeslider.month.december": "декабрь", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: безымянный автор, few: безымянных автора, many: безымянных авторов, other: безымянных авторов]}", + "pad.savedrevs.marked": "Эта версия теперь помечена как сохраненная", + "pad.userlist.entername": "Введите ваше имя", + "pad.userlist.unnamed": "безымянный", + "pad.userlist.guest": "Гость", + "pad.userlist.deny": "Отклонить", + "pad.userlist.approve": "Утвердить", + "pad.editbar.clearcolors": "Очистить авторские цвета во всем документе?", + "pad.impexp.importbutton": "Импортировать сейчас", + "pad.impexp.importing": "Импортирование…", + "pad.impexp.confirmimport": "Импорт файла перезапишет текущий текст. Вы уверены, что вы хотите продолжить?", + "pad.impexp.convertFailed": "Не удалось импортировать этот файл. Пожалуйста, используйте другой формат или скопируйте вручную", + "pad.impexp.uploadFailed": "Загрузка не удалась, пожалуйста, попробуйте ещё раз", + "pad.impexp.importfailed": "Ошибка при импортировании", + "pad.impexp.copypaste": "Пожалуйста, скопируйте", + "pad.impexp.exportdisabled": "Экспорт в формате {{type}} отключен. Для подробной информации обратитесь к системному администратору." +} diff --git a/sources/src/locales/sco.json b/sources/src/locales/sco.json old mode 100644 new mode 100755 index 49b44cf..f7b0182 --- a/sources/src/locales/sco.json +++ b/sources/src/locales/sco.json @@ -1,122 +1,121 @@ { - "@metadata": { - "authors": [ - "John Reid" - ] - }, - "index.newPad": "New Pad", - "index.createOpenPad": "or mak/apen ae Pad wi the name:", - "pad.toolbar.bold.title": "Bold (Ctrl-B)", - "pad.toolbar.italic.title": "Italic (Ctrl-I)", - "pad.toolbar.underline.title": "Underline (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Cross-oot", - "pad.toolbar.ol.title": "Ordered leet", - "pad.toolbar.ul.title": "Onordered Leet", - "pad.toolbar.indent.title": "Indent (TAB)", - "pad.toolbar.unindent.title": "Ootdent (Shift+TAB)", - "pad.toolbar.undo.title": "Ondae (Ctrl-Z)", - "pad.toolbar.redo.title": "Redae (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Clear Authorship Colours", - "pad.toolbar.import_export.title": "Import/Export fae/til different file formats", - "pad.toolbar.timeslider.title": "Timeslider", - "pad.toolbar.savedRevision.title": "Hain Reveesion", - "pad.toolbar.settings.title": "Settins", - "pad.toolbar.embed.title": "Shair n Embed this pad", - "pad.toolbar.showusers.title": "Shaw the uisers oan this pad", - "pad.colorpicker.save": "Hain", - "pad.colorpicker.cancel": "Cancel", - "pad.loading": "Laidin...", - "pad.passwordRequired": "Ye need ae passwaird fer tae access this pad", - "pad.permissionDenied": "Ye dinna hae permeession tae access this pad", - "pad.wrongPassword": "Yer password wis wrang", - "pad.settings.padSettings": "Pad Settins", - "pad.settings.myView": "Ma View", - "pad.settings.stickychat": "Tauk aye oan screen", - "pad.settings.colorcheck": "Authorship colours", - "pad.settings.linenocheck": "Line nummers", - "pad.settings.rtlcheck": "Read content fae richt til cair?", - "pad.settings.fontType": "Font type:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Global View", - "pad.settings.language": "Leid:", - "pad.importExport.import_export": "Import/Export", - "pad.importExport.import": "Upload oni tex file or document", - "pad.importExport.importSuccessful": "Success!", - "pad.importExport.export": "Export current pad as:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Plain tex", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Ye can yinly import fae plain tex or HTML formats. Fer mair advanced import features please \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstall abiword\u003C/a\u003E.", - "pad.modals.connected": "Connected.", - "pad.modals.reconnecting": "Reconnectin til yer pad..", - "pad.modals.forcereconnect": "Force reconnect", - "pad.modals.userdup": "Apened in anither windae", - "pad.modals.userdup.explanation": "This pad seems tae be apened in mair than yin brouser windae on this computer.", - "pad.modals.userdup.advice": "Reconnect fer tae uise this windae instead.", - "pad.modals.unauth": "Naw authorized", - "pad.modals.unauth.explanation": "Yer permeessions hae chynged while viewing this page. Try tae reconnect.", - "pad.modals.looping.explanation": "Thaur ar communication proablems wi the synchronization server.", - "pad.modals.looping.cause": "Meyhaps ye connected through aen incompatible firewa or proxy.", - "pad.modals.initsocketfail": "Server canna be reached.", - "pad.modals.initsocketfail.explanation": "Coudna connect til the synchronization server.", - "pad.modals.initsocketfail.cause": "This is possably cause o ae problem wi yer brouser or yer wab connection.", - "pad.modals.slowcommit.explanation": "The server isna respondin.", - "pad.modals.slowcommit.cause": "This coud be cause o problems wi netwairk connecteevitie.", - "pad.modals.badChangeset.explanation": "Aen eedit that ye'v makit wis classeefied aes onlegal bi the synchronization server.", - "pad.modals.badChangeset.cause": "This coud be cause o ae wrang server confeeguration or some ither onexpected behavior. Please contact the service admeenistrator, gif ye feel that this is ae mistak. Try tae reconnect in order tae continue editing.", - "pad.modals.corruptPad.explanation": "The pad ye'r trying te access is mingin.", - "pad.modals.corruptPad.cause": "This micht be cause o ae wrang server confeeguration or some ither onexpected behavior. Please contact the service admeenistrater.", - "pad.modals.deleted": "Delytit.", - "pad.modals.deleted.explanation": "This pad has been hif't.", - "pad.modals.disconnected": "Ye'v been disconnected.", - "pad.modals.disconnected.explanation": "The connection til the server wis loast", - "pad.modals.disconnected.cause": "The server micht be onavailable. Please notify the service admeenistrater gif this continues tae happen.", - "pad.share": "Share this pad", - "pad.share.readonly": "Read yinly", - "pad.share.link": "Link", - "pad.share.emebdcode": "Embed URL", - "pad.chat": "Chait", - "pad.chat.title": "Apen the chat fer this pad.", - "pad.chat.loadmessages": "Laid mair messages", - "timeslider.pageTitle": "{{appTitle}} Timeslider", - "timeslider.toolbar.returnbutton": "Return til pad", - "timeslider.toolbar.authors": "Authers:", - "timeslider.toolbar.authorsList": "Nae Authers", - "timeslider.toolbar.exportlink.title": "Export", - "timeslider.exportCurrent": "Export current version as:", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Saved {{day}} {{month}}, {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januair", - "timeslider.month.february": "Febuair", - "timeslider.month.march": "Mairch", - "timeslider.month.april": "Apryle", - "timeslider.month.may": "Mey", - "timeslider.month.june": "Juin", - "timeslider.month.july": "Julie", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "October", - "timeslider.month.november": "November", - "timeslider.month.december": "Dizember", - "timeslider.unnamedauthors": "{{num}} onnamed {[plural(num) one: writer, other: writers ]}", - "pad.savedrevs.marked": "This reveesion is nou tagged aes ae hained reveesion", - "pad.userlist.entername": "Enter yer name", - "pad.userlist.unnamed": "onnamed", - "pad.userlist.guest": "Guest", - "pad.userlist.deny": "Bar", - "pad.userlist.approve": "Appruiv", - "pad.editbar.clearcolors": "Clear authership colours oan the entire document?", - "pad.impexp.importbutton": "Import Nou", - "pad.impexp.importing": "Importing...", - "pad.impexp.confirmimport": "Importin ae file will owerwrite the current tex o the pad. Ar ye sair ye want tae proceed?", - "pad.impexp.convertFailed": "We coudna import this file. Please uise ae different document format or copy paste manually", - "pad.impexp.uploadFailed": "The upload failed, please try again", - "pad.impexp.importfailed": "The import failed", - "pad.impexp.copypaste": "Please copy paste", - "pad.impexp.exportdisabled": "Exporting as {{type}} format is disabled. Please contact yer system admeenistrator fer details." -} \ No newline at end of file + "@metadata": { + "authors": [ + "John Reid" + ] + }, + "index.newPad": "New Pad", + "index.createOpenPad": "or mak/apen ae Pad wi the name:", + "pad.toolbar.bold.title": "Bold (Ctrl-B)", + "pad.toolbar.italic.title": "Italic (Ctrl-I)", + "pad.toolbar.underline.title": "Underline (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Cross-oot", + "pad.toolbar.ol.title": "Ordered leet", + "pad.toolbar.ul.title": "Onordered Leet", + "pad.toolbar.indent.title": "Indent (TAB)", + "pad.toolbar.unindent.title": "Ootdent (Shift+TAB)", + "pad.toolbar.undo.title": "Ondae (Ctrl-Z)", + "pad.toolbar.redo.title": "Redae (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Clear Authorship Colours", + "pad.toolbar.import_export.title": "Import/Export fae/til different file formats", + "pad.toolbar.timeslider.title": "Timeslider", + "pad.toolbar.savedRevision.title": "Hain Reveesion", + "pad.toolbar.settings.title": "Settins", + "pad.toolbar.embed.title": "Shair n Embed this pad", + "pad.toolbar.showusers.title": "Shaw the uisers oan this pad", + "pad.colorpicker.save": "Hain", + "pad.colorpicker.cancel": "Cancel", + "pad.loading": "Laidin...", + "pad.passwordRequired": "Ye need ae passwaird fer tae access this pad", + "pad.permissionDenied": "Ye dinna hae permeession tae access this pad", + "pad.wrongPassword": "Yer password wis wrang", + "pad.settings.padSettings": "Pad Settins", + "pad.settings.myView": "Ma Luik", + "pad.settings.stickychat": "Tauk aye oan screen", + "pad.settings.colorcheck": "Authorship colours", + "pad.settings.linenocheck": "Line nummers", + "pad.settings.rtlcheck": "Read content fae richt til cair?", + "pad.settings.fontType": "Font type:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "The Global Luik", + "pad.settings.language": "Leid:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.import": "Upload oni tex file or document", + "pad.importExport.importSuccessful": "Success!", + "pad.importExport.export": "Export current pad as:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Plain tex", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Ye can yinly import fae plain tex or HTML formats. Fer mair advanced import features please install abiword.", + "pad.modals.connected": "Connected.", + "pad.modals.reconnecting": "Reconnectin til yer pad..", + "pad.modals.forcereconnect": "Force reconnect", + "pad.modals.userdup": "Apened in anither windae", + "pad.modals.userdup.explanation": "This pad seems tae be apened in mair than yin brouser windae on this computer.", + "pad.modals.userdup.advice": "Reconnect fer tae uise this windae instead.", + "pad.modals.unauth": "Naw authorized", + "pad.modals.unauth.explanation": "Yer permeessions hae chynged while viewing this page. Try tae reconnect.", + "pad.modals.looping.explanation": "Thaur ar communication proablems wi the synchronization server.", + "pad.modals.looping.cause": "Meyhaps ye connected through aen incompatible firewa or proxy.", + "pad.modals.initsocketfail": "Server canna be reached.", + "pad.modals.initsocketfail.explanation": "Coudna connect til the synchronization server.", + "pad.modals.initsocketfail.cause": "This is possably cause o ae problem wi yer brouser or yer wab connection.", + "pad.modals.slowcommit.explanation": "The server isna respondin.", + "pad.modals.slowcommit.cause": "This coud be cause o problems wi netwairk connecteevitie.", + "pad.modals.badChangeset.explanation": "Aen eedit that ye'v makit wis classeefied aes onlegal bi the synchronization server.", + "pad.modals.badChangeset.cause": "This coud be cause o ae wrang server confeeguration or some ither onexpected behavior. Please contact the service admeenistrator, gif ye feel that this is ae mistak. Try tae reconnect in order tae continue editing.", + "pad.modals.corruptPad.explanation": "The pad ye'r trying te access is mingin.", + "pad.modals.corruptPad.cause": "This micht be cause o ae wrang server confeeguration or some ither onexpected behavior. Please contact the service admeenistrater.", + "pad.modals.deleted": "Delytit.", + "pad.modals.deleted.explanation": "This pad has been hif't.", + "pad.modals.disconnected": "Ye'v been disconnected.", + "pad.modals.disconnected.explanation": "The connection til the server wis loast", + "pad.modals.disconnected.cause": "The server micht be onavailable. Please notify the service admeenistrater gif this continues tae happen.", + "pad.share": "Share this pad", + "pad.share.readonly": "Read yinly", + "pad.share.link": "Airtin", + "pad.share.emebdcode": "Embed URL", + "pad.chat": "Chait", + "pad.chat.title": "Apen the tauk fer this pad.", + "pad.chat.loadmessages": "Laid mair messages", + "timeslider.pageTitle": "{{appTitle}} Timeslider", + "timeslider.toolbar.returnbutton": "Return til pad", + "timeslider.toolbar.authors": "Authers:", + "timeslider.toolbar.authorsList": "Nae Authers", + "timeslider.toolbar.exportlink.title": "Export", + "timeslider.exportCurrent": "Export current version as:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Saved {{day}} {{month}}, {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januair", + "timeslider.month.february": "Febuair", + "timeslider.month.march": "Mairch", + "timeslider.month.april": "Apryle", + "timeslider.month.may": "Mey", + "timeslider.month.june": "Juin", + "timeslider.month.july": "Julie", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "October", + "timeslider.month.november": "November", + "timeslider.month.december": "Dizember", + "timeslider.unnamedauthors": "{{num}} onnamed {[plural(num) one: writer, other: writers ]}", + "pad.savedrevs.marked": "This reveesion is nou tagged aes ae hained reveesion", + "pad.userlist.entername": "Enter yer name", + "pad.userlist.unnamed": "onnamed", + "pad.userlist.guest": "Guest", + "pad.userlist.deny": "Bar", + "pad.userlist.approve": "Appruiv", + "pad.editbar.clearcolors": "Clear authership colours oan the entire document?", + "pad.impexp.importbutton": "Import Nou", + "pad.impexp.importing": "Importing...", + "pad.impexp.confirmimport": "Importin ae file will owerwrite the current tex o the pad. Ar ye sair ye want tae proceed?", + "pad.impexp.convertFailed": "We coudna import this file. Please uise ae different document format or copy paste manually", + "pad.impexp.uploadFailed": "The upload failed, please try again", + "pad.impexp.importfailed": "The import failed", + "pad.impexp.copypaste": "Please copy paste", + "pad.impexp.exportdisabled": "Exporting as {{type}} format is disabled. Please contact yer system admeenistrator fer details." +} diff --git a/sources/src/locales/sk.json b/sources/src/locales/sk.json old mode 100644 new mode 100755 index 878adc2..02c5c97 --- a/sources/src/locales/sk.json +++ b/sources/src/locales/sk.json @@ -1,121 +1,123 @@ { - "@metadata": { - "authors": [ - "Teslaton", - "Kusavica", - "Rudko" - ] - }, - "index.newPad": "Nový Pad", - "index.createOpenPad": "alebo vytvoriť/otvoriť Pad s názvom:", - "pad.toolbar.bold.title": "Tučné (Ctrl-B)", - "pad.toolbar.italic.title": "Kurzíva (Ctrl-I)", - "pad.toolbar.underline.title": "Podčiarknuté (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Prečiarknuté", - "pad.toolbar.ol.title": "Číslovaný zoznam", - "pad.toolbar.ul.title": "Odrážkový zoznam", - "pad.toolbar.indent.title": "Zväčšiť odsadenie (TAB)", - "pad.toolbar.unindent.title": "Zmenšiť odsadenie (Shift+TAB)", - "pad.toolbar.undo.title": "Späť (Ctrl-Z)", - "pad.toolbar.redo.title": "Znova (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Odstrániť farby autorstva", - "pad.toolbar.import_export.title": "Import/export z/do rôznych formátov súborov", - "pad.toolbar.timeslider.title": "Časová os", - "pad.toolbar.savedRevision.title": "Uložiť revíziu", - "pad.toolbar.settings.title": "Nastavenia", - "pad.toolbar.embed.title": "Zdieľať alebo vložiť tento Pad", - "pad.toolbar.showusers.title": "Zobraziť používateľov tohoto Padu", - "pad.colorpicker.save": "Uložiť", - "pad.colorpicker.cancel": "Zrušiť", - "pad.loading": "Načítava sa...", - "pad.passwordRequired": "Prístup k tomuto Padu je chránený heslom", - "pad.permissionDenied": "Ľutujeme, nemáte oprávnenie pristupovať k tomuto Padu", - "pad.wrongPassword": "Nesprávne heslo", - "pad.settings.padSettings": "Nastavenia Padu", - "pad.settings.myView": "Vlastný pohľad", - "pad.settings.stickychat": "Chat stále na obrazovke", - "pad.settings.colorcheck": "Farby autorstva", - "pad.settings.linenocheck": "Čísla riadkov", - "pad.settings.rtlcheck": "Čítať obsah sprava doľava?", - "pad.settings.fontType": "Typ písma:", - "pad.settings.fontType.normal": "Normálne", - "pad.settings.fontType.monospaced": "Strojové", - "pad.settings.globalView": "Globálny pohľad", - "pad.settings.language": "Jazyk:", - "pad.importExport.import_export": "Import/Export", - "pad.importExport.import": "Nahrať ľubovoľný textový súbor alebo dokument", - "pad.importExport.importSuccessful": "Import úspešný!", - "pad.importExport.export": "Exportovať aktuálny Pad ako:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Čistý text", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Importovať môžete len čistý text alebo HTML. Pre pokročilejšie funkcie importu prosím nainštalujte „\u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003EAbiword\u003C/a\u003E“.", - "pad.modals.connected": "Pripojené.", - "pad.modals.reconnecting": "Opätovné pripájanie k vášmu Padu...", - "pad.modals.forcereconnect": "Vynútiť znovupripojenie", - "pad.modals.userdup": "Otvorené v inom okne", - "pad.modals.userdup.explanation": "Zdá sa, že tento Pad je na tomto počítači otvorený vo viacerých oknách prehliadača.", - "pad.modals.userdup.advice": "Pre použitie tohoto okna se musíte znovu pripojiť.", - "pad.modals.unauth": "Nie ste autorizovaný", - "pad.modals.unauth.explanation": "Vaše oprávnenia sa počas prehliadania tejto stránky zmenili. Skúste sa pripojiť znovu.", - "pad.modals.looping.explanation": "Nastali problémy pri komunikácii so synchronizačným serverom.", - "pad.modals.looping.cause": "Možno ste pripojení cez nekompatibilný firewall alebo proxy server.", - "pad.modals.initsocketfail": "Server je nedostupný.", - "pad.modals.initsocketfail.explanation": "Nepodarilo sa pripojiť k synchronizačnému serveru.", - "pad.modals.initsocketfail.cause": "Príčinou je pravdepodobne problém s prehliadačom alebo internetovým pripojením.", - "pad.modals.slowcommit.explanation": "Server neodpovedá.", - "pad.modals.slowcommit.cause": "Príčinou môže byť problém so sieťovým pripojením.", - "pad.modals.badChangeset.explanation": "Editácia, kterú ste vykonali byla synchronizáciou serveru vyhodnotená ako nepovolená.", - "pad.modals.deleted": "Odstránené.", - "pad.modals.deleted.explanation": "Tento Pad bol odstránený.", - "pad.modals.disconnected": "Boli ste odpojení.", - "pad.modals.disconnected.explanation": "Spojenie so serverom sa prerušilo", - "pad.modals.disconnected.cause": "Server môže byť nedostupný. Ak by problém pretrvával, informujte správcu služby.", - "pad.share": "Zdieľať tento Pad", - "pad.share.readonly": "Len na čítanie", - "pad.share.link": "Odkaz", - "pad.share.emebdcode": "Vložiť URL", - "pad.chat": "Chat", - "pad.chat.title": "Otvoriť chat tohoto Padu.", - "pad.chat.loadmessages": "Načítať ďalšie správy", - "timeslider.pageTitle": "Časová os {{appTitle}}", - "timeslider.toolbar.returnbutton": "Návrat do Padu", - "timeslider.toolbar.authors": "Autori:", - "timeslider.toolbar.authorsList": "Bez autorov", - "timeslider.toolbar.exportlink.title": "Export", - "timeslider.exportCurrent": "Exportovať aktuálnu verziu ako:", - "timeslider.version": "Verzia {{version}}", - "timeslider.saved": "Uložené {{day}}. {{month}} {{year}}", - "timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januára", - "timeslider.month.february": "februára", - "timeslider.month.march": "marca", - "timeslider.month.april": "apríla", - "timeslider.month.may": "mája", - "timeslider.month.june": "júna", - "timeslider.month.july": "júla", - "timeslider.month.august": "augusta", - "timeslider.month.september": "septembra", - "timeslider.month.october": "októbra", - "timeslider.month.november": "novembra", - "timeslider.month.december": "decembra", - "timeslider.unnamedauthors": "{{num}} {[ plural(num) one: nemenovaný autor, few: nemenovaní autori, other: nemenovaných autorov ]}", - "pad.savedrevs.marked": "Táto revízia bola označená ako uložená", - "pad.userlist.entername": "Zadajte svoje meno", - "pad.userlist.unnamed": "nemenovaný", - "pad.userlist.guest": "Hosť", - "pad.userlist.deny": "Zakázať", - "pad.userlist.approve": "Schváliť", - "pad.editbar.clearcolors": "Skutočne odstrániť autorské farby z celého dokumentu?", - "pad.impexp.importbutton": "Importovať", - "pad.impexp.importing": "Prebieha import...", - "pad.impexp.confirmimport": "Import súboru prepíše celý súčasný obsah Padu. Skutočne si želáte vykonať túto akciu?", - "pad.impexp.convertFailed": "Tento súbor nie je možné importovať. Použite prosím iný formát súboru alebo nakopírujte text manuálne", - "pad.impexp.uploadFailed": "Nahrávanie zlyhalo, skúste to prosím znovu", - "pad.impexp.importfailed": "Import zlyhal", - "pad.impexp.copypaste": "Vložte prosím kópiu cez schránku", - "pad.impexp.exportdisabled": "Export do formátu {{type}} nie je povolený. Kontaktujte prosím administrátora pre zistenie detailov." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Teslaton", + "Kusavica", + "Rudko" + ] + }, + "index.newPad": "Nový Pad", + "index.createOpenPad": "alebo vytvoriť/otvoriť Pad s názvom:", + "pad.toolbar.bold.title": "Tučné (Ctrl-B)", + "pad.toolbar.italic.title": "Kurzíva (Ctrl-I)", + "pad.toolbar.underline.title": "Podčiarknuté (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Prečiarknuté", + "pad.toolbar.ol.title": "Číslovaný zoznam", + "pad.toolbar.ul.title": "Odrážkový zoznam", + "pad.toolbar.indent.title": "Zväčšiť odsadenie (TAB)", + "pad.toolbar.unindent.title": "Zmenšiť odsadenie (Shift+TAB)", + "pad.toolbar.undo.title": "Späť (Ctrl-Z)", + "pad.toolbar.redo.title": "Znova (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Odstrániť farby autorstva", + "pad.toolbar.import_export.title": "Import/export z/do rôznych formátov súborov", + "pad.toolbar.timeslider.title": "Časová os", + "pad.toolbar.savedRevision.title": "Uložiť revíziu", + "pad.toolbar.settings.title": "Nastavenia", + "pad.toolbar.embed.title": "Zdieľať alebo vložiť tento Pad", + "pad.toolbar.showusers.title": "Zobraziť používateľov tohoto Padu", + "pad.colorpicker.save": "Uložiť", + "pad.colorpicker.cancel": "Zrušiť", + "pad.loading": "Načítava sa...", + "pad.passwordRequired": "Prístup k tomuto Padu je chránený heslom", + "pad.permissionDenied": "Ľutujeme, nemáte oprávnenie pristupovať k tomuto Padu", + "pad.wrongPassword": "Nesprávne heslo", + "pad.settings.padSettings": "Nastavenia Padu", + "pad.settings.myView": "Vlastný pohľad", + "pad.settings.stickychat": "Chat stále na obrazovke", + "pad.settings.colorcheck": "Farby autorstva", + "pad.settings.linenocheck": "Čísla riadkov", + "pad.settings.rtlcheck": "Čítať obsah sprava doľava?", + "pad.settings.fontType": "Typ písma:", + "pad.settings.fontType.normal": "Normálne", + "pad.settings.fontType.monospaced": "Strojové", + "pad.settings.globalView": "Globálny pohľad", + "pad.settings.language": "Jazyk:", + "pad.importExport.import_export": "Import/Export", + "pad.importExport.import": "Nahrať ľubovoľný textový súbor alebo dokument", + "pad.importExport.importSuccessful": "Import úspešný!", + "pad.importExport.export": "Exportovať aktuálny Pad ako:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Čistý text", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Importovať môžete len čistý text alebo HTML. Pre pokročilejšie funkcie importu prosím nainštalujte „Abiword“.", + "pad.modals.connected": "Pripojené.", + "pad.modals.reconnecting": "Opätovné pripájanie k vášmu Padu...", + "pad.modals.forcereconnect": "Vynútiť znovupripojenie", + "pad.modals.userdup": "Otvorené v inom okne", + "pad.modals.userdup.explanation": "Zdá sa, že tento Pad je na tomto počítači otvorený vo viacerých oknách prehliadača.", + "pad.modals.userdup.advice": "Pre použitie tohoto okna se musíte znovu pripojiť.", + "pad.modals.unauth": "Nie ste autorizovaný", + "pad.modals.unauth.explanation": "Vaše oprávnenia sa počas prehliadania tejto stránky zmenili. Skúste sa pripojiť znovu.", + "pad.modals.looping.explanation": "Nastali problémy pri komunikácii so synchronizačným serverom.", + "pad.modals.looping.cause": "Možno ste pripojení cez nekompatibilný firewall alebo proxy server.", + "pad.modals.initsocketfail": "Server je nedostupný.", + "pad.modals.initsocketfail.explanation": "Nepodarilo sa pripojiť k synchronizačnému serveru.", + "pad.modals.initsocketfail.cause": "Príčinou je pravdepodobne problém s prehliadačom alebo internetovým pripojením.", + "pad.modals.slowcommit.explanation": "Server neodpovedá.", + "pad.modals.slowcommit.cause": "Príčinou môže byť problém so sieťovým pripojením.", + "pad.modals.badChangeset.explanation": "Editácia, kterú ste vykonali byla synchronizáciou serveru vyhodnotená ako nepovolená.", + "pad.modals.badChangeset.cause": "To môže byť z dôvodu nesprávnej konfigurácie servera alebo iného neočakávaného správania. Ak máte pocit že došlo k chybe, kontaktuje prosím správcu služby. Pokúste sa pripojiť znova a pokračovať v úpravách.", + "pad.modals.corruptPad.explanation": "Pad ku ktorému sa snažíte získať prístup je poškodený.", + "pad.modals.corruptPad.cause": "To môže byť z dôvodu nesprávnej konfigurácie servera alebo iného neočakávaného správania. Prosím, obráťte sa na správcu služby.", + "pad.modals.deleted": "Odstránené.", + "pad.modals.deleted.explanation": "Tento Pad bol odstránený.", + "pad.modals.disconnected": "Boli ste odpojení.", + "pad.modals.disconnected.explanation": "Spojenie so serverom sa prerušilo", + "pad.modals.disconnected.cause": "Server môže byť nedostupný. Ak by problém pretrvával, informujte správcu služby.", + "pad.share": "Zdieľať tento Pad", + "pad.share.readonly": "Len na čítanie", + "pad.share.link": "Odkaz", + "pad.share.emebdcode": "Vložiť URL", + "pad.chat": "Chat", + "pad.chat.title": "Otvoriť chat tohoto Padu.", + "pad.chat.loadmessages": "Načítať ďalšie správy", + "timeslider.pageTitle": "Časová os {{appTitle}}", + "timeslider.toolbar.returnbutton": "Návrat do Padu", + "timeslider.toolbar.authors": "Autori:", + "timeslider.toolbar.authorsList": "Bez autorov", + "timeslider.toolbar.exportlink.title": "Export", + "timeslider.exportCurrent": "Exportovať aktuálnu verziu ako:", + "timeslider.version": "Verzia {{version}}", + "timeslider.saved": "Uložené {{day}}. {{month}} {{year}}", + "timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januára", + "timeslider.month.february": "februára", + "timeslider.month.march": "marca", + "timeslider.month.april": "apríla", + "timeslider.month.may": "mája", + "timeslider.month.june": "júna", + "timeslider.month.july": "júla", + "timeslider.month.august": "augusta", + "timeslider.month.september": "septembra", + "timeslider.month.october": "októbra", + "timeslider.month.november": "novembra", + "timeslider.month.december": "decembra", + "timeslider.unnamedauthors": "{{num}} {[ plural(num) one: nemenovaný autor, few: nemenovaní autori, other: nemenovaných autorov ]}", + "pad.savedrevs.marked": "Táto revízia bola označená ako uložená", + "pad.userlist.entername": "Zadajte svoje meno", + "pad.userlist.unnamed": "nemenovaný", + "pad.userlist.guest": "Hosť", + "pad.userlist.deny": "Zakázať", + "pad.userlist.approve": "Schváliť", + "pad.editbar.clearcolors": "Skutočne odstrániť autorské farby z celého dokumentu?", + "pad.impexp.importbutton": "Importovať", + "pad.impexp.importing": "Prebieha import...", + "pad.impexp.confirmimport": "Import súboru prepíše celý súčasný obsah Padu. Skutočne si želáte vykonať túto akciu?", + "pad.impexp.convertFailed": "Tento súbor nie je možné importovať. Použite prosím iný formát súboru alebo nakopírujte text manuálne", + "pad.impexp.uploadFailed": "Nahrávanie zlyhalo, skúste to prosím znovu", + "pad.impexp.importfailed": "Import zlyhal", + "pad.impexp.copypaste": "Vložte prosím kópiu cez schránku", + "pad.impexp.exportdisabled": "Export do formátu {{type}} nie je povolený. Kontaktujte prosím administrátora pre zistenie detailov." +} diff --git a/sources/src/locales/sl.json b/sources/src/locales/sl.json old mode 100644 new mode 100755 index 05f6537..a51cb53 --- a/sources/src/locales/sl.json +++ b/sources/src/locales/sl.json @@ -1,123 +1,128 @@ { - "@metadata": { - "authors": [ - "Dbc334", - "Mateju" - ] - }, - "index.newPad": "Nov dokument", - "index.createOpenPad": "ali pa odpri dokument z imenom:", - "pad.toolbar.bold.title": "Krepko (Ctrl-B)", - "pad.toolbar.italic.title": "Ležeče (Ctrl-I)", - "pad.toolbar.underline.title": "Podčrtano (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Prečrtano", - "pad.toolbar.ol.title": "Oštevilčen seznam", - "pad.toolbar.ul.title": "Vrstični seznam", - "pad.toolbar.indent.title": "Zamik desno (TAB)", - "pad.toolbar.unindent.title": "Zamik levo (Shift+TAB)", - "pad.toolbar.undo.title": "Razveljavi (Ctrl-Z)", - "pad.toolbar.redo.title": "Ponovno uveljavi (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Počisti barvo avtorstva", - "pad.toolbar.import_export.title": "Izvozi/Uvozi različne oblike zapisov", - "pad.toolbar.timeslider.title": "Drsnik zgodovine", - "pad.toolbar.savedRevision.title": "Shrani predelavo", - "pad.toolbar.settings.title": "Nastavitve", - "pad.toolbar.embed.title": "Deli in vključi dokument", - "pad.toolbar.showusers.title": "Pokaži uporabnike dokumenta", - "pad.colorpicker.save": "Shrani", - "pad.colorpicker.cancel": "Prekliči", - "pad.loading": "Nalaganje ...", - "pad.passwordRequired": "Za dostop do dokumenta je zahtevano geslo.", - "pad.permissionDenied": "Za dostop do dokumenta so zahtevana posebna dovoljenja.", - "pad.wrongPassword": "Vpisano geslo je napačno.", - "pad.settings.padSettings": "Nastavitve dokumenta", - "pad.settings.myView": "Pogled", - "pad.settings.stickychat": "Vsebina klepeta je vedno na zaslonu.", - "pad.settings.colorcheck": "Barve avtorstva", - "pad.settings.linenocheck": "Številke vrstic", - "pad.settings.rtlcheck": "Ali naj se vsebina prebira od desne proti levi?", - "pad.settings.fontType": "Vrsta pisave:", - "pad.settings.fontType.normal": "Običajno", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Splošni pogled", - "pad.settings.language": "Jezik:", - "pad.importExport.import_export": "Uvoz/Izvoz", - "pad.importExport.import": "Naloži katerokoli besedilno datoteko ali dokument.", - "pad.importExport.importSuccessful": "Opravilo je uspešno končano!", - "pad.importExport.export": "Izvozi trenutni dokument kot:", - "pad.importExport.exporthtml": "HTML (oblikovano besedilo)", - "pad.importExport.exportplain": "TXT (neoblikovano besedilo)", - "pad.importExport.exportword": "DOC (zapis Microsoft Word)", - "pad.importExport.exportpdf": "PDF (zapis Acrobat PDF)", - "pad.importExport.exportopen": "ODF (zapis Open Document)", - "pad.importExport.exportdokuwiki": "DokuWiki (zapis DokuWiki)", - "pad.importExport.abiword.innerHTML": "Uvoziti je mogoče le običajno neoblikovano besedilo in zapise HTML. Za naprednejše zmožnosti namestite \u003Ca href=\\\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\\\"\u003Eprogram Abiword\u003C/a\u003E.", - "pad.modals.connected": "Povezano.", - "pad.modals.reconnecting": "Poteka povezovanje z dokumentom ...", - "pad.modals.forcereconnect": "Vsili ponovno povezavo.", - "pad.modals.userdup": "Dokument je že odprt v v drugem oknu.", - "pad.modals.userdup.explanation": "Videti je, da je ta dokument odprt v več kot enem oknu brskalnika na tem računalniku.", - "pad.modals.userdup.advice": "Ponovno vzpostavite povezavo in uporabljajte to okno.", - "pad.modals.unauth": "Nepooblaščen dostop", - "pad.modals.unauth.explanation": "Med pregledovanjem te strani so se dovoljenja za ogled spremenila. Treba se bo znova povezati.", - "pad.modals.looping.explanation": "Zaznane so težave s povezavo za usklajevanje s strežnikom.", - "pad.modals.looping.cause": "Morda je vzpostavljena povezava preko neustrezno nastavljenega požarnega zidu ali posredniškega strežnika.", - "pad.modals.initsocketfail": "Dostop do strežnika ni mogoč.", - "pad.modals.initsocketfail.explanation": "Povezava s strežnikom za usklajevanje ni mogoča.", - "pad.modals.initsocketfail.cause": "Najverjetneje je težava v brskalniku, ali pa so težave z internetno povezavo.", - "pad.modals.slowcommit.explanation": "Strežnik se ne odziva.", - "pad.modals.slowcommit.cause": "Najverjetneje je prišlo do napake med vzpostavitvijo povezave.", - "pad.modals.badChangeset.explanation": "Urejanje, ki ste ga naredili, je sinhronizacijski strežnik označil kot nelegalno.", - "pad.modals.badChangeset.cause": "Razlog za to je morda napačna konfiguracija strežnika ali neko drugo nepričakovano vedenje. Prosimo, stopite v stik z upravljavcem storitve, če menite, da gre za napako. Poskusite se ponovno povezati, da nadaljujete z urejanjem.", - "pad.modals.corruptPad.explanation": "Blok, do katerega želite dostopati, je poškodovan.", - "pad.modals.corruptPad.cause": "Razlog za to je morda napačna konfiguracija strežnika ali neko drugo nepričakovano vedenje. Prosimo, stopite v stik z upravljavcem storitve.", - "pad.modals.deleted": "Izbrisano.", - "pad.modals.deleted.explanation": "Dokument je odstranjen.", - "pad.modals.disconnected": "Povezava je prekinjena.", - "pad.modals.disconnected.explanation": "Povezava s strežnikom je bila prekinjena.", - "pad.modals.disconnected.cause": "Strežnik je morda nedosegljiv. Prosimo, obvestite skrbnika storitve, če se to zgodi večkrat.", - "pad.share": "Določi souporabo dokumenta", - "pad.share.readonly": "Le za branje", - "pad.share.link": "Povezava", - "pad.share.emebdcode": "Vstavi naslov URL", - "pad.chat": "Klepet", - "pad.chat.title": "Odpri klepetalno okno dokumenta.", - "pad.chat.loadmessages": "Naloži več sporočil", - "timeslider.pageTitle": "Zgodovina dokumenta {{appTitle}}", - "timeslider.toolbar.returnbutton": "Vrni se na dokument", - "timeslider.toolbar.authors": "Autorji:", - "timeslider.toolbar.authorsList": "Ni določenih avtorjev", - "timeslider.toolbar.exportlink.title": "Izvozi", - "timeslider.exportCurrent": "Izvozi trenutno različico kot:", - "timeslider.version": "Različica {{version}}", - "timeslider.saved": "Shranjeno {{day}}.{{month}}.{{year}}", - "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Januar", - "timeslider.month.february": "Februar", - "timeslider.month.march": "Marec", - "timeslider.month.april": "April", - "timeslider.month.may": "Maj", - "timeslider.month.june": "Junij", - "timeslider.month.july": "Julij", - "timeslider.month.august": "August", - "timeslider.month.september": "September", - "timeslider.month.october": "Oktober", - "timeslider.month.november": "November", - "timeslider.month.december": "December", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: neimenovan avtor, plural(num) two: neimenovana avtorja, plural(num) few: neimenovani avtorji, other: neimenovanih avtorjev ]}", - "pad.savedrevs.marked": "Ta predelava je označena kot shranjena predelava.", - "pad.userlist.entername": "Vpišite ime", - "pad.userlist.unnamed": "neimenovana oseba", - "pad.userlist.guest": "Gost", - "pad.userlist.deny": "Zavrni", - "pad.userlist.approve": "Odobri", - "pad.editbar.clearcolors": "Ali naj se počistijo barve avtorstva v celotnem dokumentu?", - "pad.impexp.importbutton": "Uvozi takoj", - "pad.impexp.importing": "Poteka uvažanje ...", - "pad.impexp.confirmimport": "Uvoz datoteke prepiše obstoječe besedilo dokumenta. Ali ste prepričani, da želite nadaljevati?", - "pad.impexp.convertFailed": "Datoteke ni mogoče uvoziti. Uporabiti je treba enega izmed podprtih zapisov dokumentov ali pa vsebino prilepiti ročno.", - "pad.impexp.uploadFailed": "Nalaganje je spodletelo, poskusite znova.", - "pad.impexp.importfailed": "Uvoz je spodletel.", - "pad.impexp.copypaste": "Vsebino kopirajte in prilepite.", - "pad.impexp.exportdisabled": "Izvoz v zapis {{type}} je onemogočen. Za več podrobnosti stopite v stik s skrbnikom." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Dbc334", + "Mateju", + "Skalcaa" + ] + }, + "index.newPad": "Nova Ploščica", + "index.createOpenPad": "ali pa odpri dokument z imenom:", + "pad.toolbar.bold.title": "Krepko (Ctrl-B)", + "pad.toolbar.italic.title": "Ležeče (Ctrl-I)", + "pad.toolbar.underline.title": "Podčrtano (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Prečrtano (Ctrl+5)", + "pad.toolbar.ol.title": "Urejen seznam (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Neurejen seznam (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Zamik desno (TAB)", + "pad.toolbar.unindent.title": "Zamik levo (Shift+TAB)", + "pad.toolbar.undo.title": "Razveljavi (Ctrl-Z)", + "pad.toolbar.redo.title": "Ponovno uveljavi (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Počisti barvo avtorstva (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Izvozi/Uvozi različne oblike zapisov", + "pad.toolbar.timeslider.title": "Drsnik zgodovine", + "pad.toolbar.savedRevision.title": "Shrani predelavo", + "pad.toolbar.settings.title": "Nastavitve", + "pad.toolbar.embed.title": "Deli in vključi dokument", + "pad.toolbar.showusers.title": "Pokaži uporabnike dokumenta", + "pad.colorpicker.save": "Shrani", + "pad.colorpicker.cancel": "Prekliči", + "pad.loading": "Nalaganje ...", + "pad.noCookie": "Piškotka ni bilo mogoče najti. Prosimo, dovolite piškotke v vašem brskalniku!", + "pad.passwordRequired": "Za dostop do dokumenta je zahtevano geslo.", + "pad.permissionDenied": "Za dostop do dokumenta so zahtevana posebna dovoljenja.", + "pad.wrongPassword": "Vpisano geslo je napačno.", + "pad.settings.padSettings": "Nastavitve dokumenta", + "pad.settings.myView": "Pogled", + "pad.settings.stickychat": "Vsebina klepeta je vedno na zaslonu.", + "pad.settings.chatandusers": "Prikaži klepet in uporabnike", + "pad.settings.colorcheck": "Barve avtorstva", + "pad.settings.linenocheck": "Številke vrstic", + "pad.settings.rtlcheck": "Ali naj se vsebina prebira od desne proti levi?", + "pad.settings.fontType": "Vrsta pisave:", + "pad.settings.fontType.normal": "Običajno", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Splošni pogled", + "pad.settings.language": "Jezik:", + "pad.importExport.import_export": "Uvoz/Izvoz", + "pad.importExport.import": "Naloži katerokoli besedilno datoteko ali dokument.", + "pad.importExport.importSuccessful": "Opravilo je uspešno končano!", + "pad.importExport.export": "Izvozi trenutni dokument kot:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML (oblikovano besedilo)", + "pad.importExport.exportplain": "TXT (neoblikovano besedilo)", + "pad.importExport.exportword": "DOC (zapis Microsoft Word)", + "pad.importExport.exportpdf": "PDF (zapis Acrobat PDF)", + "pad.importExport.exportopen": "ODF (zapis Open Document)", + "pad.importExport.abiword.innerHTML": "Uvoziti je mogoče le običajno neoblikovano besedilo in zapise HTML. Za naprednejše zmožnosti namestite program Abiword.", + "pad.modals.connected": "Povezano.", + "pad.modals.reconnecting": "Poteka povezovanje z dokumentom ...", + "pad.modals.forcereconnect": "Vsili ponovno povezavo.", + "pad.modals.userdup": "Dokument je že odprt v v drugem oknu.", + "pad.modals.userdup.explanation": "Videti je, da je ta dokument odprt v več kot enem oknu brskalnika na tem računalniku.", + "pad.modals.userdup.advice": "Ponovno vzpostavite povezavo in uporabljajte to okno.", + "pad.modals.unauth": "Nepooblaščen dostop", + "pad.modals.unauth.explanation": "Med pregledovanjem te strani so se dovoljenja za ogled spremenila. Treba se bo znova povezati.", + "pad.modals.looping.explanation": "Zaznane so težave s povezavo za usklajevanje s strežnikom.", + "pad.modals.looping.cause": "Morda je vzpostavljena povezava preko neustrezno nastavljenega požarnega zidu ali posredniškega strežnika.", + "pad.modals.initsocketfail": "Dostop do strežnika ni mogoč.", + "pad.modals.initsocketfail.explanation": "Povezava s strežnikom za usklajevanje ni mogoča.", + "pad.modals.initsocketfail.cause": "Najverjetneje je težava v brskalniku, ali pa so težave z internetno povezavo.", + "pad.modals.slowcommit.explanation": "Strežnik se ne odziva.", + "pad.modals.slowcommit.cause": "Najverjetneje je prišlo do napake med vzpostavitvijo povezave.", + "pad.modals.badChangeset.explanation": "Urejanje, ki ste ga naredili, je sinhronizacijski strežnik označil kot nelegalno.", + "pad.modals.badChangeset.cause": "Razlog za to je morda napačna konfiguracija strežnika ali neko drugo nepričakovano vedenje. Prosimo, stopite v stik z upravljavcem storitve, če menite, da gre za napako. Poskusite se ponovno povezati, da nadaljujete z urejanjem.", + "pad.modals.corruptPad.explanation": "Blok, do katerega želite dostopati, je poškodovan.", + "pad.modals.corruptPad.cause": "Razlog za to je morda napačna konfiguracija strežnika ali neko drugo nepričakovano vedenje. Prosimo, stopite v stik z upravljavcem storitve.", + "pad.modals.deleted": "Izbrisano.", + "pad.modals.deleted.explanation": "Dokument je odstranjen.", + "pad.modals.disconnected": "Povezava je prekinjena.", + "pad.modals.disconnected.explanation": "Povezava s strežnikom je bila prekinjena.", + "pad.modals.disconnected.cause": "Strežnik je morda nedosegljiv. Prosimo, obvestite skrbnika storitve, če se to zgodi večkrat.", + "pad.share": "Določi souporabo dokumenta", + "pad.share.readonly": "Le za branje", + "pad.share.link": "Povezava", + "pad.share.emebdcode": "Vstavi naslov URL", + "pad.chat": "Klepet", + "pad.chat.title": "Odpri klepetalno okno dokumenta.", + "pad.chat.loadmessages": "Naloži več sporočil", + "timeslider.pageTitle": "Zgodovina dokumenta {{appTitle}}", + "timeslider.toolbar.returnbutton": "Vrni se na dokument", + "timeslider.toolbar.authors": "Autorji:", + "timeslider.toolbar.authorsList": "Ni določenih avtorjev", + "timeslider.toolbar.exportlink.title": "Izvozi", + "timeslider.exportCurrent": "Izvozi trenutno različico kot:", + "timeslider.version": "Različica {{version}}", + "timeslider.saved": "Shranjeno {{day}}.{{month}}.{{year}}", + "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Januar", + "timeslider.month.february": "Februar", + "timeslider.month.march": "Marec", + "timeslider.month.april": "April", + "timeslider.month.may": "Maj", + "timeslider.month.june": "Junij", + "timeslider.month.july": "Julij", + "timeslider.month.august": "August", + "timeslider.month.september": "September", + "timeslider.month.october": "Oktober", + "timeslider.month.november": "November", + "timeslider.month.december": "December", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: neimenovan avtor, plural(num) two: neimenovana avtorja, plural(num) few: neimenovani avtorji, other: neimenovanih avtorjev ]}", + "pad.savedrevs.marked": "Ta predelava je označena kot shranjena predelava.", + "pad.savedrevs.timeslider": "Shranjene revizije si lahko ogledate s pomočjo časovnega traku", + "pad.userlist.entername": "Vpišite ime", + "pad.userlist.unnamed": "neimenovana oseba", + "pad.userlist.guest": "Gost", + "pad.userlist.deny": "Zavrni", + "pad.userlist.approve": "Odobri", + "pad.editbar.clearcolors": "Ali naj se počistijo barve avtorstva v celotnem dokumentu?", + "pad.impexp.importbutton": "Uvozi takoj", + "pad.impexp.importing": "Poteka uvažanje ...", + "pad.impexp.confirmimport": "Uvoz datoteke prepiše obstoječe besedilo dokumenta. Ali ste prepričani, da želite nadaljevati?", + "pad.impexp.convertFailed": "Datoteke ni mogoče uvoziti. Uporabiti je treba enega izmed podprtih zapisov dokumentov ali pa vsebino prilepiti ročno.", + "pad.impexp.padHasData": "Nismo mogli uvoziti datoteke, ker ta Ploščica že vsebuje spremembe. Prosimo, uvozite datoteko v novo ploščico", + "pad.impexp.uploadFailed": "Nalaganje je spodletelo, poskusite znova.", + "pad.impexp.importfailed": "Uvoz je spodletel.", + "pad.impexp.copypaste": "Vsebino kopirajte in prilepite.", + "pad.impexp.exportdisabled": "Izvoz v zapis {{type}} je onemogočen. Za več podrobnosti stopite v stik s skrbnikom." +} diff --git a/sources/src/locales/sq.json b/sources/src/locales/sq.json old mode 100644 new mode 100755 index 0af0275..6374ea6 --- a/sources/src/locales/sq.json +++ b/sources/src/locales/sq.json @@ -1,121 +1,121 @@ { - "@metadata": { - "authors": [ - "Besnik b" - ] - }, - "index.newPad": "Bllok i Ri", - "index.createOpenPad": "ose krijoni/hapni një Bllok me emrin:", - "pad.toolbar.bold.title": "Të trasha (Ctrl-B)", - "pad.toolbar.italic.title": "Të pjerrëta (Ctrl-I)", - "pad.toolbar.underline.title": "Të nënvizuara (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Hequrvije", - "pad.toolbar.ol.title": "Listë e renditur", - "pad.toolbar.ul.title": "Listë e parenditur", - "pad.toolbar.indent.title": "Brendazi", - "pad.toolbar.unindent.title": "Jashtazi", - "pad.toolbar.undo.title": "Zhbëje (Ctrl-Z)", - "pad.toolbar.redo.title": "Ribëje (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Hiq Ngjyra Autorësish", - "pad.toolbar.import_export.title": "Importoni/Eksportoni nga/në formate të tjera kartelash", - "pad.toolbar.timeslider.title": "Rrjedha kohore", - "pad.toolbar.savedRevision.title": "Ruaje Rishikin", - "pad.toolbar.settings.title": "Rregullime", - "pad.toolbar.embed.title": "Ndajeni me të tjerët dhe Trupëzojeni këtë bllok", - "pad.toolbar.showusers.title": "Shfaq përdoruesit në këtë bllok", - "pad.colorpicker.save": "Ruaje", - "pad.colorpicker.cancel": "Anuloje", - "pad.loading": "Po ngarkohet...", - "pad.passwordRequired": "Ju duhet një fjalëkalim që të mund të përdorni këtë bllok", - "pad.permissionDenied": "Nuk keni leje të hyni në këtë bllok", - "pad.wrongPassword": "Fjalëkalimi juaj qe gabim", - "pad.settings.padSettings": "Rregullime blloku", - "pad.settings.myView": "Pamja Ime", - "pad.settings.stickychat": "Fjalosje përherë në ekran", - "pad.settings.colorcheck": "Ngjyra autorësish", - "pad.settings.linenocheck": "Numra rreshtash", - "pad.settings.rtlcheck": "Të lexohet lënda nga e djathta në të majtë?", - "pad.settings.fontType": "Lloj shkronjash:", - "pad.settings.fontType.normal": "Normale", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Pamje Globale", - "pad.settings.language": "Gjuhë:", - "pad.importExport.import_export": "Import/Eksport", - "pad.importExport.import": "Ngarkoni cilëndo kartelë teksti ose dokument", - "pad.importExport.importSuccessful": "Me sukses!", - "pad.importExport.export": "Eksportojeni bllokun e tanishëm si:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Tekst të thjeshtë", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Mund të importoni vetëm prej formati tekst i thjeshtë ose html. Për veçori më të përparuara importimi, ju lutemi, \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstaloni Abiword-in\u003C/a\u003E.", - "pad.modals.connected": "I lidhur.", - "pad.modals.reconnecting": "Po rilidheni te blloku juaj..", - "pad.modals.forcereconnect": "Rilidhje e detyruar", - "pad.modals.userdup": "Hapur në një tjetër dritare", - "pad.modals.userdup.explanation": "Ky bllok duket se gjendet i hapur në më shumë se një dritare shfletuesi në këtë kompjuter.", - "pad.modals.userdup.advice": "Rilidhu që të përdoret kjo dritare, më mirë.", - "pad.modals.unauth": "I paautorizuar", - "pad.modals.unauth.explanation": "Ndërkohë që shihnit këtë dritare, lejet tuaja kanë ndryshuar. Provoni të rilidheni.", - "pad.modals.looping.explanation": "Ka probleme komunikimi me shërbyesin e njëkohësimit.", - "pad.modals.looping.cause": "Ndoshta jeni lidhur përmes një firewall-i ose ndërmjetësi të papërputhshëm.", - "pad.modals.initsocketfail": "Nuk kapet dot shërbyesi.", - "pad.modals.initsocketfail.explanation": "Nuk u lidh dot te shërbyesi i njëkohësimit.", - "pad.modals.initsocketfail.cause": "Ka gjasa që kjo vjen për shkak të një problemi me shfletuesin tuaj ose lidhjen tuaj në internet.", - "pad.modals.slowcommit.explanation": "Shërbyesi nuk po përgjigjet.", - "pad.modals.slowcommit.cause": "Kjo mund të vijë për shkak problemesh lidhjeje me rrjetin.", - "pad.modals.badChangeset.explanation": "Një përpunim që keni bërë u shpall i paligjshëm nga shërbyesu i njëkohësimit.", - "pad.modals.badChangeset.cause": "Kjo mund të jetë për shkak të një formësimi të gabuar të shërbyesit ose ndonjë tjetër sjelljeje të papritur. Ju lutemi, lidhuni me përgjegjësin e shërbimit, nëse mendoni që ky është një gabim. Provoni të rilidheni që të vazhdoni përpunimin.", - "pad.modals.corruptPad.explanation": "Blloku te i cili po përpiqeni të hyni është i dëmtuar.", - "pad.modals.corruptPad.cause": "Kjo mund të vijë nga një formësim i gabuar shërbyesi ose ndonjë tjetër sjellje e papritur. Ju lutemi, lidhuni me përgjegjësin e shërbimit.", - "pad.modals.deleted": "I fshirë.", - "pad.modals.deleted.explanation": "Ky bllok është hequr.", - "pad.modals.disconnected": "Jeni shkëputur.", - "pad.modals.disconnected.explanation": "U pre lidhja me shërbyesin", - "pad.modals.disconnected.cause": "Shërbyesi mund të mos jetë në punë. Ju lutemi, njoftoni përgjegjësin e shërbimit, nëse kjo vazhdon të ndodhë.", - "pad.share": "Ndajeni këtë bllok me të tjerët", - "pad.share.readonly": "Vetëm për lexim", - "pad.share.link": "Lidhje", - "pad.share.emebdcode": "URL trupëzimi", - "pad.chat": "Fjalosje", - "pad.chat.title": "Hapni fjalosjen për këtë bllok.", - "pad.chat.loadmessages": "Ngarko më tepër mesazhe", - "timeslider.pageTitle": "Rrjedhë kohore e {{appTitle}}", - "timeslider.toolbar.returnbutton": "Rikthehuni te blloku", - "timeslider.toolbar.authors": "Autorë:", - "timeslider.toolbar.authorsList": "Pa Autorë", - "timeslider.toolbar.exportlink.title": "Eksportoni", - "timeslider.exportCurrent": "Eksportojeni versionin e tanishëm si:", - "timeslider.version": "Versioni {{version}}", - "timeslider.saved": "Ruajtur më {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Janar", - "timeslider.month.february": "Shkurt", - "timeslider.month.march": "Mars", - "timeslider.month.april": "Prill", - "timeslider.month.may": "Maj", - "timeslider.month.june": "Qershor", - "timeslider.month.july": "Korrik", - "timeslider.month.august": "Gusht", - "timeslider.month.september": "Shtator", - "timeslider.month.october": "Tetor", - "timeslider.month.november": "Nëntor", - "timeslider.month.december": "Dhjetor", - "pad.savedrevs.marked": "Ky rishikim tani është shënuar si rishikim i ruajtur", - "pad.userlist.entername": "Jepni emrin tuaj", - "pad.userlist.unnamed": "pa emër", - "pad.userlist.guest": "Vizitor", - "pad.userlist.deny": "Mohoje", - "pad.userlist.approve": "Miratoje", - "pad.editbar.clearcolors": "Të hiqen ngjyra autorësish në krejt dokumentin?", - "pad.impexp.importbutton": "Importoje Tani", - "pad.impexp.importing": "Po importohet...", - "pad.impexp.confirmimport": "Importimi i një kartele do të mbishkruajë tekstin e tanishëm të bllokut. Jeni i sigurt se doni të vazhdohet?", - "pad.impexp.convertFailed": "Nuk qemë në gjendje ta importonim këtë kartelë. Ju lutemi, përdorni një format tjetër dokumentesh ose kopjojeni dhe hidheni dorazi", - "pad.impexp.uploadFailed": "Ngarkimi dështoi, ju lutemi, riprovoni", - "pad.impexp.importfailed": "Importimi dështoi", - "pad.impexp.copypaste": "Ju lutemi, kopjojeni dhe ngjiteni", - "pad.impexp.exportdisabled": "Eksportimi në formatin {{type}} është i çaktivizuar. Për hollësi, ju lutemi, lidhuni me administratorin e sistemit." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Besnik b" + ] + }, + "index.newPad": "Bllok i Ri", + "index.createOpenPad": "ose krijoni/hapni një Bllok me emrin:", + "pad.toolbar.bold.title": "Të trasha (Ctrl-B)", + "pad.toolbar.italic.title": "Të pjerrëta (Ctrl-I)", + "pad.toolbar.underline.title": "Të nënvizuara (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Hequrvije (Ctrl+5)", + "pad.toolbar.ol.title": "Listë e renditur (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Listë e parenditur (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Brendazi (TAB)", + "pad.toolbar.unindent.title": "Jashtazi (Shift+TAB)", + "pad.toolbar.undo.title": "Zhbëje (Ctrl-Z)", + "pad.toolbar.redo.title": "Ribëje (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Hiqju Ngjyra Autorësish (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importoni/Eksportoni nga/në formate të tjera kartelash", + "pad.toolbar.timeslider.title": "Rrjedha kohore", + "pad.toolbar.savedRevision.title": "Ruaje Rishikimin", + "pad.toolbar.settings.title": "Rregullime", + "pad.toolbar.embed.title": "Ndajeni me të tjerët dhe Trupëzojeni këtë bllok", + "pad.toolbar.showusers.title": "Shfaq përdoruesit në këtë bllok", + "pad.colorpicker.save": "Ruaje", + "pad.colorpicker.cancel": "Anuloje", + "pad.loading": "Po ngarkohet...", + "pad.passwordRequired": "Ju duhet një fjalëkalim që të mund të përdorni këtë bllok", + "pad.permissionDenied": "Nuk keni leje të hyni në këtë bllok", + "pad.wrongPassword": "Fjalëkalimi juaj qe gabim", + "pad.settings.padSettings": "Rregullime blloku", + "pad.settings.myView": "Pamja Ime", + "pad.settings.stickychat": "Fjalosje përherë në ekran", + "pad.settings.colorcheck": "Ngjyra autorësish", + "pad.settings.linenocheck": "Numra rreshtash", + "pad.settings.rtlcheck": "Të lexohet lënda nga e djathta në të majtë?", + "pad.settings.fontType": "Lloj shkronjash:", + "pad.settings.fontType.normal": "Normale", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Pamje Globale", + "pad.settings.language": "Gjuhë:", + "pad.importExport.import_export": "Import/Eksport", + "pad.importExport.import": "Ngarkoni cilëndo kartelë teksti ose dokument", + "pad.importExport.importSuccessful": "Me sukses!", + "pad.importExport.export": "Eksportojeni bllokun e tanishëm si:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Tekst të thjeshtë", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Mund të importoni vetëm prej formati tekst i thjeshtë ose html. Për veçori më të përparuara importimi, ju lutemi, instaloni Abiword-in.", + "pad.modals.connected": "I lidhur.", + "pad.modals.reconnecting": "Po rilidheni te blloku juaj..", + "pad.modals.forcereconnect": "Rilidhje e detyruar", + "pad.modals.userdup": "Hapur në një tjetër dritare", + "pad.modals.userdup.explanation": "Ky bllok duket se gjendet i hapur në më shumë se një dritare shfletuesi në këtë kompjuter.", + "pad.modals.userdup.advice": "Rilidhuni që të përdoret kjo dritare.", + "pad.modals.unauth": "I paautorizuar", + "pad.modals.unauth.explanation": "Ndërkohë që shihnit këtë dritare, lejet tuaja kanë ndryshuar. Provoni të rilidheni.", + "pad.modals.looping.explanation": "Ka probleme komunikimi me shërbyesin e njëkohësimit.", + "pad.modals.looping.cause": "Ndoshta jeni lidhur përmes një firewall-i ose ndërmjetësi të papërputhshëm.", + "pad.modals.initsocketfail": "Nuk kapet dot shërbyesi.", + "pad.modals.initsocketfail.explanation": "Nuk u lidh dot te shërbyesi i njëkohësimit.", + "pad.modals.initsocketfail.cause": "Ka gjasa që kjo vjen për shkak të një problemi me shfletuesin tuaj ose lidhjen tuaj në internet.", + "pad.modals.slowcommit.explanation": "Shërbyesi nuk po përgjigjet.", + "pad.modals.slowcommit.cause": "Kjo mund të vijë për shkak problemesh lidhjeje me rrjetin.", + "pad.modals.badChangeset.explanation": "Një përpunim që keni bërë u vlerësua si i paligjshëm nga shërbyesi i njëkohësimit.", + "pad.modals.badChangeset.cause": "Kjo mund të jetë për shkak të një formësimi të gabuar të shërbyesit ose ndonjë tjetër sjelljeje të papritur. Ju lutemi, lidhuni me përgjegjësin e shërbimit, nëse mendoni që ky është një gabim. Provoni të rilidheni që të vazhdoni përpunimin.", + "pad.modals.corruptPad.explanation": "Blloku te i cili po përpiqeni të hyni është i dëmtuar.", + "pad.modals.corruptPad.cause": "Kjo mund të vijë nga një formësim i gabuar shërbyesi ose ndonjë tjetër sjellje e papritur. Ju lutemi, lidhuni me përgjegjësin e shërbimit.", + "pad.modals.deleted": "I fshirë.", + "pad.modals.deleted.explanation": "Ky bllok është hequr.", + "pad.modals.disconnected": "Jeni shkëputur.", + "pad.modals.disconnected.explanation": "U ndërpre lidhja me shërbyesin", + "pad.modals.disconnected.cause": "Shërbyesi mund të mos jetë në punë. Ju lutemi, njoftoni përgjegjësin e shërbimit, nëse kjo vazhdon të ndodhë.", + "pad.share": "Ndajeni këtë bllok me të tjerët", + "pad.share.readonly": "Vetëm për lexim", + "pad.share.link": "Lidhje", + "pad.share.emebdcode": "URL trupëzimi", + "pad.chat": "Fjalosje", + "pad.chat.title": "Hapni fjalosjen për këtë bllok.", + "pad.chat.loadmessages": "Ngarko më tepër mesazhe", + "timeslider.pageTitle": "Rrjedhë kohore e {{appTitle}}", + "timeslider.toolbar.returnbutton": "Rikthehuni te blloku", + "timeslider.toolbar.authors": "Autorë:", + "timeslider.toolbar.authorsList": "Pa Autorë", + "timeslider.toolbar.exportlink.title": "Eksportoni", + "timeslider.exportCurrent": "Eksportojeni versionin e tanishëm si:", + "timeslider.version": "Versioni {{version}}", + "timeslider.saved": "Ruajtur më {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Janar", + "timeslider.month.february": "Shkurt", + "timeslider.month.march": "Mars", + "timeslider.month.april": "Prill", + "timeslider.month.may": "Maj", + "timeslider.month.june": "Qershor", + "timeslider.month.july": "Korrik", + "timeslider.month.august": "Gusht", + "timeslider.month.september": "Shtator", + "timeslider.month.october": "Tetor", + "timeslider.month.november": "Nëntor", + "timeslider.month.december": "Dhjetor", + "timeslider.unnamedauthors": "{{num}} i paemërt {[plural(num) një: autor, tjetër: autorë ]}", + "pad.savedrevs.marked": "Ky rishikim tani është shënuar si rishikim i ruajtur", + "pad.userlist.entername": "Jepni emrin tuaj", + "pad.userlist.unnamed": "pa emër", + "pad.userlist.guest": "Vizitor", + "pad.userlist.deny": "Hidheni Tej", + "pad.userlist.approve": "Miratoje", + "pad.editbar.clearcolors": "Të hiqen ngjyra autorësish në krejt dokumentin?", + "pad.impexp.importbutton": "Importoje Tani", + "pad.impexp.importing": "Po importohet...", + "pad.impexp.confirmimport": "Importimi i një kartele do të mbishkruajë tekstin e tanishëm të bllokut. Jeni i sigurt se doni të vazhdohet?", + "pad.impexp.convertFailed": "Nuk qemë në gjendje ta importonim këtë kartelë. Ju lutemi, përdorni një format tjetër dokumentesh ose kopjojeni dhe hidheni dorazi", + "pad.impexp.uploadFailed": "Ngarkimi dështoi, ju lutemi, riprovoni", + "pad.impexp.importfailed": "Importimi dështoi", + "pad.impexp.copypaste": "Ju lutemi, kopjojeni dhe ngjiteni", + "pad.impexp.exportdisabled": "Eksportimi në formatin {{type}} është i çaktivizuar. Për hollësi, ju lutemi, lidhuni me administratorin e sistemit." +} diff --git a/sources/src/locales/sr-ec.json b/sources/src/locales/sr-ec.json new file mode 100755 index 0000000..9fd20b1 --- /dev/null +++ b/sources/src/locales/sr-ec.json @@ -0,0 +1,59 @@ +{ + "@metadata": { + "authors": [ + "Aktron", + "Milicevic01", + "Милан Јелисавчић" + ] + }, + "index.newPad": "Нови Пад", + "pad.toolbar.bold.title": "Подебљано (Ctrl-B)", + "pad.toolbar.italic.title": "Искошено (Ctrl-I)", + "pad.toolbar.underline.title": "Подвучено (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Прецртано", + "pad.toolbar.ol.title": "Уређен списак", + "pad.toolbar.ul.title": "Неуређен списак", + "pad.toolbar.indent.title": "Увлачење (TAB)", + "pad.toolbar.undo.title": "Опозови (Ctrl+Z)", + "pad.toolbar.settings.title": "Подешавања", + "pad.colorpicker.save": "Сачувај", + "pad.colorpicker.cancel": "Откажи", + "pad.loading": "Учитавање...", + "pad.wrongPassword": "Ваша лозинка није исправна", + "pad.settings.myView": "Мој приказ", + "pad.settings.fontType": "Врста фонта:", + "pad.settings.fontType.normal": "Нормално", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Глобални приказ", + "pad.settings.language": "Језик:", + "pad.importExport.import_export": "Увоз/извоз", + "pad.importExport.import": "Отпремите било коју текстуалну датотеку или документ", + "pad.importExport.importSuccessful": "Успело!", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "чист текст", + "pad.importExport.exportpdf": "PDF", + "pad.modals.connected": "Повезано.", + "pad.modals.slowcommit.explanation": "Сервер не одговара.", + "pad.modals.deleted": "Обрисано.", + "pad.share": "Дели овај пад", + "pad.share.readonly": "Само за читање", + "pad.share.link": "Веза", + "pad.chat": "Ћаскање", + "pad.chat.title": "Отворите ћаскање за овај пад.", + "pad.chat.loadmessages": "Учитајте више порука.", + "timeslider.month.january": "јануар", + "timeslider.month.february": "фебруар", + "timeslider.month.march": "март", + "timeslider.month.april": "април", + "timeslider.month.may": "мај", + "timeslider.month.june": "јун", + "timeslider.month.july": "јул", + "timeslider.month.august": "август", + "timeslider.month.september": "септембар", + "timeslider.month.october": "октобар", + "timeslider.month.november": "новембар", + "timeslider.month.december": "децембар", + "pad.userlist.approve": "одобрено", + "pad.impexp.importbutton": "Увези одмах", + "pad.impexp.importing": "Увожење..." +} diff --git a/sources/src/locales/sv.json b/sources/src/locales/sv.json old mode 100644 new mode 100755 index a6f2351..ae9b1f9 --- a/sources/src/locales/sv.json +++ b/sources/src/locales/sv.json @@ -1,124 +1,128 @@ { - "@metadata": { - "authors": [ - "Lokal Profil", - "WikiPhoenix", - "Jopparn" - ] - }, - "index.newPad": "Nytt block", - "index.createOpenPad": "eller skapa/öppna ett block med namnet:", - "pad.toolbar.bold.title": "Fet (Ctrl-B)", - "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", - "pad.toolbar.underline.title": "Understruken (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Genomstruken", - "pad.toolbar.ol.title": "Numrerad lista", - "pad.toolbar.ul.title": "Osorterad lista", - "pad.toolbar.indent.title": "Öka indrag (TABB)", - "pad.toolbar.unindent.title": "Minska indrag (Shift+TABB)", - "pad.toolbar.undo.title": "Ångra (Ctrl-Z)", - "pad.toolbar.redo.title": "Gör om (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Rensa författarfärger", - "pad.toolbar.import_export.title": "Importera/exportera från/till olika filformat", - "pad.toolbar.timeslider.title": "Tidsreglage", - "pad.toolbar.savedRevision.title": "Spara revision", - "pad.toolbar.settings.title": "Inställningar", - "pad.toolbar.embed.title": "Dela och bädda in detta block", - "pad.toolbar.showusers.title": "Visa användarna på detta block", - "pad.colorpicker.save": "Spara", - "pad.colorpicker.cancel": "Avbryt", - "pad.loading": "Läser in...", - "pad.passwordRequired": "Du behöver ett lösenord för att få tillgång till detta block", - "pad.permissionDenied": "Du har inte åtkomstbehörighet för detta block", - "pad.wrongPassword": "Ditt lösenord var fel", - "pad.settings.padSettings": "Blockinställningar", - "pad.settings.myView": "Min vy", - "pad.settings.stickychat": "Chatten alltid på skärmen", - "pad.settings.colorcheck": "Författarskapsfärger", - "pad.settings.linenocheck": "Radnummer", - "pad.settings.rtlcheck": "Vill du läsa innehållet från höger till vänster?", - "pad.settings.fontType": "Typsnitt:", - "pad.settings.fontType.normal": "Normal", - "pad.settings.fontType.monospaced": "Fast breddsteg", - "pad.settings.globalView": "Global vy", - "pad.settings.language": "Språk:", - "pad.importExport.import_export": "Importera/Exportera", - "pad.importExport.import": "Ladda upp textfiler eller dokument", - "pad.importExport.importSuccessful": "Åtgärden slutfördes!", - "pad.importExport.export": "Export aktuellt block som:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Oformaterad text", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Open Document Format)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Du kan endast importera från oformaterad text eller html-format. För mer avancerade importeringsfunktioner, var god \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Einstallera abiword\u003C/a\u003E.", - "pad.modals.connected": "Ansluten.", - "pad.modals.reconnecting": "Återansluter till ditt block...", - "pad.modals.forcereconnect": "Tvinga återanslutning", - "pad.modals.userdup": "Öppnades i ett nytt fönster", - "pad.modals.userdup.explanation": "Detta block verkar vara öppet i mer än ett fönster på denna dator.", - "pad.modals.userdup.advice": "Återanslut för att använda detta fönster istället.", - "pad.modals.unauth": "Inte godkänd", - "pad.modals.unauth.explanation": "Din behörighet ändrades medan du visar denna sida. Försök att återansluta.", - "pad.modals.looping.explanation": "Kommunikationsproblem med synkroniseringsservern har uppstått.", - "pad.modals.looping.cause": "Kanske du är ansluten via en inkompatibel brandvägg eller proxy.", - "pad.modals.initsocketfail": "Servern kan inte nås.", - "pad.modals.initsocketfail.explanation": "Det gick inte att ansluta till synkroniseringsservern.", - "pad.modals.initsocketfail.cause": "Detta beror troligen på ett problem med din webbläsare eller din internetanslutning.", - "pad.modals.slowcommit.explanation": "Servern svarar inte.", - "pad.modals.slowcommit.cause": "Detta kan bero på problem med nätverksanslutningen.", - "pad.modals.badChangeset.explanation": "En redigering som du gjort klassificerades som otillåten av synkroniseringsservern.", - "pad.modals.badChangeset.cause": "Detta kan bero på en felaktig konfiguration av servern eller något annat oväntad beteende. Var god kontakta tjänstadministratören om du anser att detta är ett fel. Försök ansluta igen för att fortsätta redigera.", - "pad.modals.corruptPad.explanation": "Blocket du försöker komma åt är skadat.", - "pad.modals.corruptPad.cause": "Detta kan bero på en felaktig konfiguration av servern eller något annat oväntad beteende. Var god kontakta tjänstadministratören.", - "pad.modals.deleted": "Raderad.", - "pad.modals.deleted.explanation": "Detta block har tagits bort.", - "pad.modals.disconnected": "Du har blivit frånkopplad.", - "pad.modals.disconnected.explanation": "Anslutningen till servern avbröts", - "pad.modals.disconnected.cause": "Servern kanske är otillgänglig. Var god meddela tjänstadministratören om detta fortsätter att hända.", - "pad.share": "Dela detta block", - "pad.share.readonly": "Skrivskyddad", - "pad.share.link": "Länk", - "pad.share.emebdcode": "Bädda in URL", - "pad.chat": "Chatt", - "pad.chat.title": "Öppna chatten för detta block.", - "pad.chat.loadmessages": "Läs in fler meddelanden", - "timeslider.pageTitle": "Tidsreglage för {{appTitle}}", - "timeslider.toolbar.returnbutton": "Återvänd till blocket", - "timeslider.toolbar.authors": "Författare:", - "timeslider.toolbar.authorsList": "Inga författare", - "timeslider.toolbar.exportlink.title": "Exportera", - "timeslider.exportCurrent": "Exportera aktuell version som:", - "timeslider.version": "Version {{version}}", - "timeslider.saved": "Sparades den {{day}} {{month}} {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "januari", - "timeslider.month.february": "februari", - "timeslider.month.march": "mars", - "timeslider.month.april": "april", - "timeslider.month.may": "maj", - "timeslider.month.june": "juni", - "timeslider.month.july": "juli", - "timeslider.month.august": "augusti", - "timeslider.month.september": "september", - "timeslider.month.october": "oktober", - "timeslider.month.november": "november", - "timeslider.month.december": "december", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: namnlös författare, other: namnlösa författare]}", - "pad.savedrevs.marked": "Denna revision är nu markerad som en sparad revision", - "pad.userlist.entername": "Ange ditt namn", - "pad.userlist.unnamed": "namnlös", - "pad.userlist.guest": "Gäst", - "pad.userlist.deny": "Neka", - "pad.userlist.approve": "Godkänn", - "pad.editbar.clearcolors": "Rensa författarfärger på hela dokumentet?", - "pad.impexp.importbutton": "Importera nu", - "pad.impexp.importing": "Importerar...", - "pad.impexp.confirmimport": "Att importera en fil kommer att skriva över den aktuella texten i blocket. Är du säker på att du vill fortsätta?", - "pad.impexp.convertFailed": "Vi kunde inte importera denna fil. Var god använd ett annat dokumentformat eller kopiera och klistra in den manuellt", - "pad.impexp.uploadFailed": "Uppladdningen misslyckades, var god försök igen", - "pad.impexp.importfailed": "Importering misslyckades", - "pad.impexp.copypaste": "Var god kopiera och klistra in", - "pad.impexp.exportdisabled": "Exportering av formatet {{type}} är inaktiverad. Var god kontakta din systemadministratör för mer information." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Lokal Profil", + "WikiPhoenix", + "Jopparn" + ] + }, + "index.newPad": "Nytt block", + "index.createOpenPad": "eller skapa/öppna ett block med namnet:", + "pad.toolbar.bold.title": "Fet (Ctrl-B)", + "pad.toolbar.italic.title": "Kursiv (Ctrl-I)", + "pad.toolbar.underline.title": "Understruken (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Genomstruken (Ctrl+5)", + "pad.toolbar.ol.title": "Numrerad lista (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Onumrerad lista (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Öka indrag (TABB)", + "pad.toolbar.unindent.title": "Minska indrag (Shift+TABB)", + "pad.toolbar.undo.title": "Ångra (Ctrl-Z)", + "pad.toolbar.redo.title": "Gör om (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Rensa författarfärger (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Importera/exportera från/till olika filformat", + "pad.toolbar.timeslider.title": "Tidsreglage", + "pad.toolbar.savedRevision.title": "Spara version", + "pad.toolbar.settings.title": "Inställningar", + "pad.toolbar.embed.title": "Dela och bädda in detta block", + "pad.toolbar.showusers.title": "Visa användarna på detta block", + "pad.colorpicker.save": "Spara", + "pad.colorpicker.cancel": "Avbryt", + "pad.loading": "Läser in...", + "pad.noCookie": "Kunde inte hitta några kakor. Var god tillåt kakor i din webbläsare!", + "pad.passwordRequired": "Du behöver ett lösenord för att få tillgång till detta block", + "pad.permissionDenied": "Du har inte åtkomstbehörighet för detta block", + "pad.wrongPassword": "Ditt lösenord var fel", + "pad.settings.padSettings": "Blockinställningar", + "pad.settings.myView": "Min vy", + "pad.settings.stickychat": "Chatten alltid på skärmen", + "pad.settings.chatandusers": "Visa chatt och användare", + "pad.settings.colorcheck": "Författarskapsfärger", + "pad.settings.linenocheck": "Radnummer", + "pad.settings.rtlcheck": "Vill du läsa innehållet från höger till vänster?", + "pad.settings.fontType": "Typsnitt:", + "pad.settings.fontType.normal": "Normal", + "pad.settings.fontType.monospaced": "Fast breddsteg", + "pad.settings.globalView": "Global vy", + "pad.settings.language": "Språk:", + "pad.importExport.import_export": "Importera/Exportera", + "pad.importExport.import": "Ladda upp textfiler eller dokument", + "pad.importExport.importSuccessful": "Åtgärden slutfördes!", + "pad.importExport.export": "Export aktuellt block som:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Oformaterad text", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Open Document Format)", + "pad.importExport.abiword.innerHTML": "Du kan endast importera från oformaterad text eller HTML-format. För mer avancerade importeringsfunktioner, var god installera abiword.", + "pad.modals.connected": "Ansluten.", + "pad.modals.reconnecting": "Återansluter till ditt block...", + "pad.modals.forcereconnect": "Tvinga återanslutning", + "pad.modals.userdup": "Öppnades i ett nytt fönster", + "pad.modals.userdup.explanation": "Detta block verkar vara öppet i mer än ett fönster på denna dator.", + "pad.modals.userdup.advice": "Återanslut för att använda detta fönster istället.", + "pad.modals.unauth": "Inte godkänd", + "pad.modals.unauth.explanation": "Din behörighet ändrades medan du visade denna sida. Försök att återansluta.", + "pad.modals.looping.explanation": "Kommunikationsproblem med synkroniseringsservern har uppstått.", + "pad.modals.looping.cause": "Kanske du är ansluten via en inkompatibel brandvägg eller proxy.", + "pad.modals.initsocketfail": "Servern kan inte nås.", + "pad.modals.initsocketfail.explanation": "Det gick inte att ansluta till synkroniseringsservern.", + "pad.modals.initsocketfail.cause": "Detta beror troligen på ett problem med din webbläsare eller din internetanslutning.", + "pad.modals.slowcommit.explanation": "Servern svarar inte.", + "pad.modals.slowcommit.cause": "Detta kan bero på problem med nätverksanslutningen.", + "pad.modals.badChangeset.explanation": "En redigering som du gjort klassificerades som otillåten av synkroniseringsservern.", + "pad.modals.badChangeset.cause": "Detta kan bero på en felaktig konfiguration av servern eller något annat oväntad beteende. Var god kontakta tjänsteadministratören om du upplever att detta är ett fel. Försök att ansluta igen för att fortsätta redigera.", + "pad.modals.corruptPad.explanation": "Blocket du försöker komma åt är skadat.", + "pad.modals.corruptPad.cause": "Detta kan bero på en felaktig konfiguration av servern eller något annat oväntad beteende. Var god kontakta tjänstadministratören.", + "pad.modals.deleted": "Raderad.", + "pad.modals.deleted.explanation": "Detta block har tagits bort.", + "pad.modals.disconnected": "Du har blivit frånkopplad.", + "pad.modals.disconnected.explanation": "Anslutningen till servern avbröts", + "pad.modals.disconnected.cause": "Servern kanske är otillgänglig. Var god meddela tjänstadministratören om detta fortsätter att hända.", + "pad.share": "Dela detta block", + "pad.share.readonly": "Skrivskyddad", + "pad.share.link": "Länk", + "pad.share.emebdcode": "Bädda in URL", + "pad.chat": "Chatt", + "pad.chat.title": "Öppna chatten för detta block.", + "pad.chat.loadmessages": "Läs in fler meddelanden", + "timeslider.pageTitle": "{{appTitle}} tidsreglage", + "timeslider.toolbar.returnbutton": "Återvänd till blocket", + "timeslider.toolbar.authors": "Författare:", + "timeslider.toolbar.authorsList": "Inga författare", + "timeslider.toolbar.exportlink.title": "Exportera", + "timeslider.exportCurrent": "Exportera aktuell version som:", + "timeslider.version": "Version {{version}}", + "timeslider.saved": "Sparades den {{day}} {{month}} {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "januari", + "timeslider.month.february": "februari", + "timeslider.month.march": "mars", + "timeslider.month.april": "april", + "timeslider.month.may": "maj", + "timeslider.month.june": "juni", + "timeslider.month.july": "juli", + "timeslider.month.august": "augusti", + "timeslider.month.september": "september", + "timeslider.month.october": "oktober", + "timeslider.month.november": "november", + "timeslider.month.december": "december", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: namnlös författare, other: namnlösa författare]}", + "pad.savedrevs.marked": "Denna version är nu markerad som en sparad version", + "pad.savedrevs.timeslider": "Du kan se sparade versioner med tidsreglaget", + "pad.userlist.entername": "Ange ditt namn", + "pad.userlist.unnamed": "namnlös", + "pad.userlist.guest": "Gäst", + "pad.userlist.deny": "Neka", + "pad.userlist.approve": "Godkänn", + "pad.editbar.clearcolors": "Rensa författarfärger på hela dokumentet?", + "pad.impexp.importbutton": "Importera nu", + "pad.impexp.importing": "Importerar...", + "pad.impexp.confirmimport": "Att importera en fil kommer att skriva över den aktuella texten i blocket. Är du säker på att du vill fortsätta?", + "pad.impexp.convertFailed": "Vi kunde inte importera denna fil. Var god använd ett annat dokumentformat eller kopiera och klistra in den manuellt", + "pad.impexp.padHasData": "Vi kunde inte importera denna fil eftersom detta block redan har redigerats. Importera den till ett nytt block.", + "pad.impexp.uploadFailed": "Uppladdningen misslyckades, var god försök igen", + "pad.impexp.importfailed": "Importering misslyckades", + "pad.impexp.copypaste": "Var god kopiera och klistra in", + "pad.impexp.exportdisabled": "Exportering av formatet {{type}} är inaktiverad. Var god kontakta din systemadministratör för mer information." +} diff --git a/sources/src/locales/te.json b/sources/src/locales/te.json old mode 100644 new mode 100755 index e537b01..1987820 --- a/sources/src/locales/te.json +++ b/sources/src/locales/te.json @@ -1,101 +1,102 @@ { - "@metadata": { - "authors": [ - "JVRKPRASAD", - "Malkum", - "Veeven", - "Chaduvari", - "Ravichandra" - ] - }, - "index.newPad": "కొత్త పలక", - "index.createOpenPad": "ఒక పేరుతో పలకని సృష్టించండి లేదా అదే పేరుతో ఉన్న పలకని తెరవండి", - "pad.toolbar.bold.title": "మందం", - "pad.toolbar.italic.title": "వాలు అక్షరాలు", - "pad.toolbar.underline.title": "క్రిందగీత", - "pad.toolbar.strikethrough.title": "కొట్టివేత", - "pad.toolbar.ol.title": "నిర్ధేశింపబడిన జాబితా", - "pad.toolbar.ul.title": "అనిర్దేశిత జాబితా, ( క్రమపద్ధతి లేని జాబితా )", - "pad.toolbar.undo.title": "చేయవద్దు", - "pad.toolbar.redo.title": "తిరిగిచెయ్యి", - "pad.toolbar.clearAuthorship.title": "మూలకర్తపు వర్ణాలను తీసివేయండి", - "pad.toolbar.import_export.title": "భిన్నమైన రూపలావన్యాలను బయట నుండి దిగుమతి లేదా బయటకు ఎగుమతి చేయండి", - "pad.toolbar.timeslider.title": "పనిసమయ సూచిక పరికరం", - "pad.toolbar.savedRevision.title": "దాచిన పునరుచ్చరణలు", - "pad.toolbar.settings.title": "అమరికలు", - "pad.toolbar.embed.title": "ఈ పలకని పొదగించండి", - "pad.toolbar.showusers.title": "ఈ పలక యొక్క వినియోగదారులను చూపించు", - "pad.colorpicker.save": "భద్రపరచు", - "pad.colorpicker.cancel": "రద్దుచేయి", - "pad.loading": "లోడవుతోంది...", - "pad.wrongPassword": "మీ సంకేతపదం తప్పు", - "pad.settings.padSettings": "పలక అమరికలు", - "pad.settings.myView": "నా ఉద్దేశ్యము", - "pad.settings.stickychat": "తెరపైనే మాటామంతిని ఎల్లపుడు చేయుము", - "pad.settings.colorcheck": "రచయితలకు రంగులు", - "pad.settings.linenocheck": "వరుస సంఖ్యలు", - "pad.settings.fontType": "అక్షరశైలి రకం:", - "pad.settings.fontType.normal": "సాధారణ", - "pad.settings.fontType.monospaced": "మోనోస్పేస్", - "pad.settings.globalView": "బయటకి దర్శనం", - "pad.settings.language": "భాష", - "pad.importExport.import_export": "దిగుమతి/ఎగుమతి", - "pad.importExport.import": "పాఠము దస్త్రము లేదా పత్రమును దిగుమతి చేయుము", - "pad.importExport.importSuccessful": "విజయవంతం!", - "pad.importExport.export": "ప్రస్తుత పలకని ఈ విధముగా ఎగుమతి చేయుము:", - "pad.importExport.exporthtml": "హెచ్ టి ఎం ఎల్", - "pad.importExport.exportplain": "సాదా పాఠ్యం", - "pad.importExport.exportword": "మైక్రోసాఫ్ట్ వర్డ్", - "pad.importExport.exportpdf": "పీ డి ఎఫ్", - "pad.importExport.exportopen": "ఓ డి ఎఫ్ (ఓపెన్ డాక్యుమెంట్ ఫార్మాట్)", - "pad.importExport.exportdokuwiki": "డాక్యువికి", - "pad.modals.connected": "సంబంధం కుదిరింది.", - "pad.modals.reconnecting": "మీ పలకకు మరల సంబంధం కలుపుతుంది...", - "pad.modals.forcereconnect": "బలవంతంగానైనా సంబంధం కుదిరించు", - "pad.modals.userdup.explanation": "ఈ పలక, ఈ కంప్యూటర్లో ఒకటికన్న ఎక్కువ గవాక్షములలో తెరుచుకున్నట్లు అనిపిస్తుంది.", - "pad.modals.userdup.advice": "బదులుగా ఈ గవాక్షమును వాడడానికి మరల సంబంధం కలపండి", - "pad.modals.unauth": "అధికారం లేదు", - "pad.modals.unauth.explanation": "మీరు ఈ పుటను చూస్తూన్నప్పుడు మీ అనుమతులు మారాయి. మరల సంబంధం కలపడానికి ప్రయత్నించండి.", - "pad.modals.initsocketfail": "సర్వరు అందుబాటులో లేదు.", - "pad.modals.slowcommit.explanation": "సర్వరు స్పందించడం లేదు.", - "pad.modals.deleted": "తొలగించబడింది ( తొలగించినది )", - "pad.share": "ఈ పలకను పంచుకొను", - "pad.share.readonly": "చదువుటకు మాత్రమే", - "pad.share.link": "లంకె", - "pad.share.emebdcode": "యు ఆర్ ఎల్ ను పొదగించండి", - "pad.chat": "మాటామంతి", - "pad.chat.title": "ఈ పలకకు మాటామంతిని తెరిచి ఉంచండి.", - "pad.chat.loadmessages": "మరిన్ని సందేశాలు తీసుకురా", - "timeslider.pageTitle": "{{appTitle}} పనిసమయ సూచిక పరికరం", - "timeslider.toolbar.returnbutton": "పలకకి తిరిగి వెళ్ళండి", - "timeslider.toolbar.authors": "రచయితలు:", - "timeslider.toolbar.authorsList": "రచయితలు లేరు", - "timeslider.toolbar.exportlink.title": "ఎగుమతి చెయ్యి", - "timeslider.exportCurrent": "ప్రస్తుత అవతారాన్ని ఈ విధంగా ఎగుమతి చేయుము:", - "timeslider.saved": "{{year}}, {{month}} {{day}} న భద్రపరచబడింది", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "జనవరి", - "timeslider.month.february": "ఫిబ్రవరి", - "timeslider.month.march": "మార్చి", - "timeslider.month.april": "ఏప్రిల్", - "timeslider.month.may": "మే", - "timeslider.month.june": "జూన్", - "timeslider.month.july": "జూలై", - "timeslider.month.august": "ఆగష్టు", - "timeslider.month.september": "సెప్టెంబరు", - "timeslider.month.october": "అక్టోబరు", - "timeslider.month.november": "నవంబరు", - "timeslider.month.december": "డిసెంబరు", - "pad.userlist.entername": "మీ పేరు ఇవ్వండి", - "pad.userlist.unnamed": "అనామకం", - "pad.userlist.guest": "అతిథి", - "pad.userlist.deny": "తిరస్కరించు", - "pad.userlist.approve": "ఆమోదించు", - "pad.impexp.importbutton": "దిగుమతి చేసెయ్యి", - "pad.impexp.importing": "దిగుమతి చేస్తున్నాం...", - "pad.impexp.confirmimport": "దిగుమతి చేసుకోవడం వల్ల ప్యాడ్ లోఉన్న పాఠ్యం తుడిచిపెట్టుకుపోతుంది. ఇది మీకు అంగీకారమేనా?", - "pad.impexp.convertFailed": "ఈ ఫైలును దిగుమతి చేసుకోలేకపోయాం. వేరే డాక్యుమెంట్ ఫార్మాటును వాడండి లేదా మీరే కాపీ చేసి అతికించండి", - "pad.impexp.uploadFailed": "ఎక్కింపు విఫలమైంది, మళ్ళీ ప్రయత్నించండి.", - "pad.impexp.importfailed": "దిగుమతి విఫలమైంది", - "pad.impexp.copypaste": "నకలు చేసి అతికించండి" -} \ No newline at end of file + "@metadata": { + "authors": [ + "JVRKPRASAD", + "Malkum", + "Veeven", + "Chaduvari", + "Ravichandra", + "Kiranmayee" + ] + }, + "index.newPad": "కొత్త పలక", + "index.createOpenPad": "ఒక పేరుతో పలకని సృష్టించండి లేదా అదే పేరుతో ఉన్న పలకని తెరవండి", + "pad.toolbar.bold.title": "మందం", + "pad.toolbar.italic.title": "వాలు అక్షరాలు", + "pad.toolbar.underline.title": "క్రిందగీత", + "pad.toolbar.strikethrough.title": "కొట్టివేత", + "pad.toolbar.ol.title": "నిర్ధేశింపబడిన జాబితా", + "pad.toolbar.ul.title": "అనిర్దేశిత జాబితా, ( క్రమపద్ధతి లేని జాబితా )", + "pad.toolbar.undo.title": "చేయవద్దు", + "pad.toolbar.redo.title": "తిరిగిచెయ్యి", + "pad.toolbar.clearAuthorship.title": "మూలకర్తపు వర్ణాలను తీసివేయండి", + "pad.toolbar.import_export.title": "భిన్నమైన రూపలావన్యాలను బయట నుండి దిగుమతి లేదా బయటకు ఎగుమతి చేయండి", + "pad.toolbar.timeslider.title": "పనిసమయ సూచిక పరికరం", + "pad.toolbar.savedRevision.title": "పునరుచ్చరణలు దాచు", + "pad.toolbar.settings.title": "అమరికలు", + "pad.toolbar.embed.title": "ఈ పలకని పొదగించి పంచిపెట్టండి", + "pad.toolbar.showusers.title": "ఈ పలక యొక్క వినియోగదారులను చూపించు", + "pad.colorpicker.save": "భద్రపరచు", + "pad.colorpicker.cancel": "రద్దుచేయి", + "pad.loading": "లోడవుతోంది...", + "pad.permissionDenied": "ఈ పేజీని చూడడానికి మీరు అనుమతి లేదు.", + "pad.wrongPassword": "మీ సంకేతపదం తప్పు", + "pad.settings.padSettings": "పలక అమరికలు", + "pad.settings.myView": "నా ఉద్దేశ్యము", + "pad.settings.stickychat": "తెరపైనే మాటామంతిని ఎల్లపుడు చేయుము", + "pad.settings.colorcheck": "రచయితలకు రంగులు", + "pad.settings.linenocheck": "వరుస సంఖ్యలు", + "pad.settings.fontType": "అక్షరశైలి రకం:", + "pad.settings.fontType.normal": "సాధారణ", + "pad.settings.fontType.monospaced": "మోనోస్పేస్", + "pad.settings.globalView": "బయటకి దర్శనం", + "pad.settings.language": "భాష", + "pad.importExport.import_export": "దిగుమతి/ఎగుమతి", + "pad.importExport.import": "పాఠము దస్త్రము లేదా పత్రమును దిగుమతి చేయుము", + "pad.importExport.importSuccessful": "విజయవంతం!", + "pad.importExport.export": "ప్రస్తుత పలకని ఈ విధముగా ఎగుమతి చేయుము:", + "pad.importExport.exporthtml": "హెచ్ టి ఎం ఎల్", + "pad.importExport.exportplain": "సాదా పాఠ్యం", + "pad.importExport.exportword": "మైక్రోసాఫ్ట్ వర్డ్", + "pad.importExport.exportpdf": "పీ డి ఎఫ్", + "pad.importExport.exportopen": "ఓ డి ఎఫ్ (ఓపెన్ డాక్యుమెంట్ ఫార్మాట్)", + "pad.modals.connected": "సంబంధం కుదిరింది.", + "pad.modals.reconnecting": "మీ పలకకు మరల సంబంధం కలుపుతుంది...", + "pad.modals.forcereconnect": "బలవంతంగానైనా సంబంధం కుదిరించు", + "pad.modals.userdup.explanation": "ఈ పలక, ఈ కంప్యూటర్లో ఒకటికన్న ఎక్కువ గవాక్షములలో తెరుచుకున్నట్లు అనిపిస్తుంది.", + "pad.modals.userdup.advice": "బదులుగా ఈ గవాక్షమును వాడడానికి మరల సంబంధం కలపండి", + "pad.modals.unauth": "అధికారం లేదు", + "pad.modals.unauth.explanation": "మీరు ఈ పుటను చూస్తూన్నప్పుడు మీ అనుమతులు మారాయి. మరల సంబంధం కలపడానికి ప్రయత్నించండి.", + "pad.modals.initsocketfail": "సర్వరు అందుబాటులో లేదు.", + "pad.modals.slowcommit.explanation": "సర్వరు స్పందించడం లేదు.", + "pad.modals.deleted": "తొలగించబడింది ( తొలగించినది )", + "pad.share": "ఈ పలకను పంచుకొను", + "pad.share.readonly": "చదువుటకు మాత్రమే", + "pad.share.link": "లంకె", + "pad.share.emebdcode": "యు ఆర్ ఎల్ ను పొదగించండి", + "pad.chat": "మాటామంతి", + "pad.chat.title": "ఈ పలకకు మాటామంతిని తెరిచి ఉంచండి.", + "pad.chat.loadmessages": "మరిన్ని సందేశాలు తీసుకురా", + "timeslider.pageTitle": "{{appTitle}} పనిసమయ సూచిక పరికరం", + "timeslider.toolbar.returnbutton": "పలకకి తిరిగి వెళ్ళండి", + "timeslider.toolbar.authors": "రచయితలు:", + "timeslider.toolbar.authorsList": "రచయితలు లేరు", + "timeslider.toolbar.exportlink.title": "ఎగుమతి చెయ్యి", + "timeslider.exportCurrent": "ప్రస్తుత అవతారాన్ని ఈ విధంగా ఎగుమతి చేయుము:", + "timeslider.saved": "{{year}}, {{month}} {{day}} న భద్రపరచబడింది", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "జనవరి", + "timeslider.month.february": "ఫిబ్రవరి", + "timeslider.month.march": "మార్చి", + "timeslider.month.april": "ఏప్రిల్", + "timeslider.month.may": "మే", + "timeslider.month.june": "జూన్", + "timeslider.month.july": "జూలై", + "timeslider.month.august": "ఆగష్టు", + "timeslider.month.september": "సెప్టెంబరు", + "timeslider.month.october": "అక్టోబరు", + "timeslider.month.november": "నవంబరు", + "timeslider.month.december": "డిసెంబరు", + "pad.userlist.entername": "మీ పేరు ఇవ్వండి", + "pad.userlist.unnamed": "అనామకం", + "pad.userlist.guest": "అతిథి", + "pad.userlist.deny": "తిరస్కరించు", + "pad.userlist.approve": "ఆమోదించు", + "pad.impexp.importbutton": "దిగుమతి చేసెయ్యి", + "pad.impexp.importing": "దిగుమతి చేస్తున్నాం...", + "pad.impexp.confirmimport": "దిగుమతి చేసుకోవడం వల్ల ప్యాడ్ లోఉన్న పాఠ్యం తుడిచిపెట్టుకుపోతుంది. ఇది మీకు అంగీకారమేనా?", + "pad.impexp.convertFailed": "ఈ ఫైలును దిగుమతి చేసుకోలేకపోయాం. వేరే డాక్యుమెంట్ ఫార్మాటును వాడండి లేదా మీరే కాపీ చేసి అతికించండి", + "pad.impexp.uploadFailed": "ఎక్కింపు విఫలమైంది, మళ్ళీ ప్రయత్నించండి.", + "pad.impexp.importfailed": "దిగుమతి విఫలమైంది", + "pad.impexp.copypaste": "నకలు చేసి అతికించండి" +} diff --git a/sources/src/locales/tr.json b/sources/src/locales/tr.json old mode 100644 new mode 100755 index 56c4ad9..80927b7 --- a/sources/src/locales/tr.json +++ b/sources/src/locales/tr.json @@ -1,125 +1,129 @@ { - "@metadata": { - "authors": [ - "Emperyan", - "Erdemaslancan", - "Joseph", - "Meelo" - ] - }, - "index.newPad": "Yeni Bloknot", - "index.createOpenPad": "ya da şu isimle bir Bloknot oluştur/aç:", - "pad.toolbar.bold.title": "Kalın (Ctrl-B)", - "pad.toolbar.italic.title": "Eğik (Ctrl-I)", - "pad.toolbar.underline.title": "Altı Çizili (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Üstü Çizili", - "pad.toolbar.ol.title": "Sıralı liste", - "pad.toolbar.ul.title": "Sırasız Liste", - "pad.toolbar.indent.title": "Girintiyi arttır (TAB)", - "pad.toolbar.unindent.title": "Girintiyi azalt (Shift+TAB)", - "pad.toolbar.undo.title": "Geri Al (Ctrl-Z)", - "pad.toolbar.redo.title": "Yenile (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Yazarlık Renklerini Temizle", - "pad.toolbar.import_export.title": "Farklı dosya biçimlerini içeri/dışarı aktar", - "pad.toolbar.timeslider.title": "Zaman Çizelgesi", - "pad.toolbar.savedRevision.title": "Düzeltmeyi Kaydet", - "pad.toolbar.settings.title": "Ayarlar", - "pad.toolbar.embed.title": "Bu bloknotu Paylaş ve Göm", - "pad.toolbar.showusers.title": "Kullanıcıları bu bloknotta göster", - "pad.colorpicker.save": "Kaydet", - "pad.colorpicker.cancel": "İptal", - "pad.loading": "Yükleniyor...", - "pad.passwordRequired": "Bu bloknota erişebilmeniz için parolaya ihtiyacınız var", - "pad.permissionDenied": "Bu bloknota erişmeye izniniz yok", - "pad.wrongPassword": "Parolanız yanlış", - "pad.settings.padSettings": "Bloknot Ayarları", - "pad.settings.myView": "Görünümüm", - "pad.settings.stickychat": "Ekranda her zaman sohbet edin", - "pad.settings.colorcheck": "Yazarlık renkleri", - "pad.settings.linenocheck": "Satır numaraları", - "pad.settings.rtlcheck": "İçerik sağdan sola doğru okunsun mu?", - "pad.settings.fontType": "Yazı tipi:", - "pad.settings.fontType.normal": "Olağan", - "pad.settings.fontType.monospaced": "Tek aralıklı", - "pad.settings.globalView": "Genel Görünüm", - "pad.settings.language": "Dil:", - "pad.importExport.import_export": "İçerik/Dışarı Aktar", - "pad.importExport.import": "Herhangi bir metin dosyası ya da belgesi yükle", - "pad.importExport.importSuccessful": "Başarılı!", - "pad.importExport.export": "Mevcut bloknotu şu olarak dışa aktar:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Düz metin", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (Açık Doküman Biçimi)", - "pad.importExport.exportdokuwiki": "VikiBelge", - "pad.importExport.abiword.innerHTML": "Yalnızca düz metin ya da HTML biçimlerini içe aktarabilirsiniz. Daha fazla gelişmiş içe aktarım özellikleri için \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003EAbiWord'ü yükleyin\u003C/a\u003E.", - "pad.modals.connected": "Bağlandı.", - "pad.modals.reconnecting": "Bloknotunuza tekrar bağlanılıyor...", - "pad.modals.forcereconnect": "Yeniden bağlanmaya zorla", - "pad.modals.userdup": "Başka pencerede açıldı", - "pad.modals.userdup.explanation": "Bu bloknot bu bilgisayarda birden fazla tarayıcı penceresinde açılmış gibi görünüyor.", - "pad.modals.userdup.advice": "Bu pencereden kullanmak için yeniden bağlanın.", - "pad.modals.unauth": "Yetkili değil", - "pad.modals.unauth.explanation": "Bu sayfayı görüntülerken izinleriniz değiştirildi. Tekrar bağlanmayı deneyin.", - "pad.modals.looping.explanation": "Eşitleme sunucusu ile iletişim sorunları yaşanıyor.", - "pad.modals.looping.cause": "Belki de uygun olmayan güvenlik duvarı ya da vekil sunucu (proxy) ile bağlanmaya çalışıyorsunuz.", - "pad.modals.initsocketfail": "Sunucuya erişilemiyor.", - "pad.modals.initsocketfail.explanation": "Eşitleme sunucusuna bağlantı kurulamıyor.", - "pad.modals.initsocketfail.cause": "Bu sorun muhtemelen, tarayıcınızdan ya da internet bağlantınızdan kaynaklanıyor.", - "pad.modals.slowcommit.explanation": "Sunucu yanıt vermiyor.", - "pad.modals.slowcommit.cause": "Bu hata ağ bağlantısı sebebiyle olabilir.", - "pad.modals.badChangeset.explanation": "Yaptığınız bir düzenleme eşitleme sunucusu tarafından kullanışsız/kural dışı olarak sınıflandırıldı.", - "pad.modals.badChangeset.cause": "Bu, yanlış sunucu yapılandırması ya da başka bir beklenmedik davranışlar sonucunda olmuş olabilir. Bu size bir hataymış gibi geliyorsa lütfen servis yöneticisiyle iletişime geçin. Düzenlemeye devam etmek için yeniden bağlanmayı deneyin.", - "pad.modals.corruptPad.explanation": "Erişmeye çalıştığınız bloknot bozuk.", - "pad.modals.corruptPad.cause": "Bu, yanlış sunucu yapılandırması ya da başka bir beklenmedik davranışlardan kaynaklanabilir. Lütfen servis yöneticisiyle iletişime geçin.", - "pad.modals.deleted": "Silindi.", - "pad.modals.deleted.explanation": "Bu bloknot kaldırılmış.", - "pad.modals.disconnected": "Bağlantınız koptu.", - "pad.modals.disconnected.explanation": "Sunucu bağlantısı kaybedildi", - "pad.modals.disconnected.cause": "Sunucu kullanılamıyor olabilir. Bunun devam etmesi durumunda servis yöneticisine bildirin.", - "pad.share": "Bu bloknotu paylaş", - "pad.share.readonly": "Salt okunur", - "pad.share.link": "Bağlantı", - "pad.share.emebdcode": "URL'yi göm", - "pad.chat": "Sohbet", - "pad.chat.title": "Bu bloknot için sohbeti açın.", - "pad.chat.loadmessages": "Daha fazla mesaj yükle", - "timeslider.pageTitle": "{{appTitle}} Zaman Çizelgesi", - "timeslider.toolbar.returnbutton": "Bloknota geri dön", - "timeslider.toolbar.authors": "Yazarlar:", - "timeslider.toolbar.authorsList": "Yazar Yok", - "timeslider.toolbar.exportlink.title": "Dışa aktar", - "timeslider.exportCurrent": "Mevcut sürümü şu olarak dışa aktar:", - "timeslider.version": "{{version}} sürümü", - "timeslider.saved": "{{day}} {{month}} {{year}} tarihinde kaydedildi", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}", - "timeslider.month.january": "Ocak", - "timeslider.month.february": "Şubat", - "timeslider.month.march": "Mart", - "timeslider.month.april": "Nisan", - "timeslider.month.may": "Mayıs", - "timeslider.month.june": "Haziran", - "timeslider.month.july": "Temmuz", - "timeslider.month.august": "Ağustos", - "timeslider.month.september": "Eylül", - "timeslider.month.october": "Ekim", - "timeslider.month.november": "Kasım", - "timeslider.month.december": "Aralık", - "timeslider.unnamedauthors": "{{num}} adsız {[plural(num) one: yazar, other: yazar ]}", - "pad.savedrevs.marked": "Bu düzenleme artık kayıtlı bir düzeltme olarak işaretlendi", - "pad.userlist.entername": "Adınızı girin", - "pad.userlist.unnamed": "Adlandırılmamış", - "pad.userlist.guest": "Misafir", - "pad.userlist.deny": "Reddet", - "pad.userlist.approve": "Onayla", - "pad.editbar.clearcolors": "Bütün belgedeki yazarlık renkleri silinsin mi?", - "pad.impexp.importbutton": "Şimdi İçe Aktar", - "pad.impexp.importing": "İçe aktarıyor...", - "pad.impexp.confirmimport": "Bir dosya içe aktarılırken bloknotun mevcut metninin üzerine yazdırılır. Devam etmek istediğinizden emin misiniz?", - "pad.impexp.convertFailed": "Bu dosyayı içe aktarmak mümkün değil. Lütfen farklı bir belge biçimi kullanın ya da elle kopyala yapıştır yapın", - "pad.impexp.uploadFailed": "Yükleme başarısız, lütfen tekrar deneyin", - "pad.impexp.importfailed": "İçe aktarım başarısız oldu", - "pad.impexp.copypaste": "Lütfen kopyala yapıştır yapın", - "pad.impexp.exportdisabled": "{{type}} biçimiyle dışa aktarma devre dışı bırakıldı. Ayrıntılar için sistem yöneticinizle iletişime geçiniz." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Emperyan", + "Erdemaslancan", + "Joseph", + "Meelo", + "Trockya" + ] + }, + "index.newPad": "Yeni Bloknot", + "index.createOpenPad": "ya da şu isimle bir Bloknot oluştur/aç:", + "pad.toolbar.bold.title": "Kalın (Ctrl-B)", + "pad.toolbar.italic.title": "Eğik (Ctrl-I)", + "pad.toolbar.underline.title": "Altı Çizili (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Üstü Çizili (Ctrl+5)", + "pad.toolbar.ol.title": "Sıralı liste (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Sırasız Liste (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Girintiyi arttır (TAB)", + "pad.toolbar.unindent.title": "Girintiyi azalt (Shift+TAB)", + "pad.toolbar.undo.title": "Geri Al (Ctrl-Z)", + "pad.toolbar.redo.title": "Yinele (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Yazarlık Renklerini Temizle (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Farklı dosya biçimlerini içeri/dışarı aktar", + "pad.toolbar.timeslider.title": "Zaman Çizelgesi", + "pad.toolbar.savedRevision.title": "Düzeltmeyi Kaydet", + "pad.toolbar.settings.title": "Ayarlar", + "pad.toolbar.embed.title": "Bu bloknotu Paylaş ve Göm", + "pad.toolbar.showusers.title": "Kullanıcıları bu bloknotta göster", + "pad.colorpicker.save": "Kaydet", + "pad.colorpicker.cancel": "İptal", + "pad.loading": "Yükleniyor...", + "pad.noCookie": "Çerez bulunamadı. Lütfen tarayıcınızda çerezlere izin veriniz!", + "pad.passwordRequired": "Bu bloknota erişebilmeniz için parolaya ihtiyacınız var", + "pad.permissionDenied": "Bu bloknota erişmeye izniniz yok", + "pad.wrongPassword": "Parolanız yanlış", + "pad.settings.padSettings": "Bloknot Ayarları", + "pad.settings.myView": "Görünümüm", + "pad.settings.stickychat": "Ekranda her zaman sohbet edin", + "pad.settings.chatandusers": "Sohbeti ve Kullanıcıları Göster", + "pad.settings.colorcheck": "Yazarlık renkleri", + "pad.settings.linenocheck": "Satır numaraları", + "pad.settings.rtlcheck": "İçerik sağdan sola doğru okunsun mu?", + "pad.settings.fontType": "Yazı tipi:", + "pad.settings.fontType.normal": "Olağan", + "pad.settings.fontType.monospaced": "Tek aralıklı", + "pad.settings.globalView": "Genel Görünüm", + "pad.settings.language": "Dil:", + "pad.importExport.import_export": "İçerik/Dışarı Aktar", + "pad.importExport.import": "Herhangi bir metin dosyası ya da belgesi yükle", + "pad.importExport.importSuccessful": "Başarılı!", + "pad.importExport.export": "Mevcut bloknotu şu olarak dışa aktar:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Düz metin", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Açık Doküman Biçimi)", + "pad.importExport.abiword.innerHTML": "Yalnızca düz metin ya da HTML biçimlerini içe aktarabilirsiniz. Daha fazla gelişmiş içe aktarım özellikleri için AbiWord'ü yükleyin.", + "pad.modals.connected": "Bağlandı.", + "pad.modals.reconnecting": "Bloknotunuza tekrar bağlanılıyor...", + "pad.modals.forcereconnect": "Yeniden bağlanmaya zorla", + "pad.modals.userdup": "Başka pencerede açıldı", + "pad.modals.userdup.explanation": "Bu bloknot bu bilgisayarda birden fazla tarayıcı penceresinde açılmış gibi görünüyor.", + "pad.modals.userdup.advice": "Bu pencereden kullanmak için yeniden bağlanın.", + "pad.modals.unauth": "Yetkili değil", + "pad.modals.unauth.explanation": "Bu sayfayı görüntülerken izinleriniz değiştirildi. Tekrar bağlanmayı deneyin.", + "pad.modals.looping.explanation": "Eşitleme sunucusu ile iletişim sorunları yaşanıyor.", + "pad.modals.looping.cause": "Belki de uygun olmayan güvenlik duvarı ya da vekil sunucu (proxy) ile bağlanmaya çalışıyorsunuz.", + "pad.modals.initsocketfail": "Sunucuya erişilemiyor.", + "pad.modals.initsocketfail.explanation": "Eşitleme sunucusuna bağlantı kurulamıyor.", + "pad.modals.initsocketfail.cause": "Bu sorun muhtemelen, tarayıcınızdan ya da internet bağlantınızdan kaynaklanıyor.", + "pad.modals.slowcommit.explanation": "Sunucu yanıt vermiyor.", + "pad.modals.slowcommit.cause": "Bu hata ağ bağlantısı sebebiyle olabilir.", + "pad.modals.badChangeset.explanation": "Yaptığınız bir düzenleme eşitleme sunucusu tarafından kullanışsız/kural dışı olarak sınıflandırıldı.", + "pad.modals.badChangeset.cause": "Bu, yanlış sunucu yapılandırması ya da başka bir beklenmedik davranışlar sonucunda olmuş olabilir. Bu size bir hataymış gibi geliyorsa lütfen servis yöneticisiyle iletişime geçin. Düzenlemeye devam etmek için yeniden bağlanmayı deneyin.", + "pad.modals.corruptPad.explanation": "Erişmeye çalıştığınız bloknot bozuk.", + "pad.modals.corruptPad.cause": "Bu, yanlış sunucu yapılandırması ya da başka bir beklenmedik davranışlardan kaynaklanabilir. Lütfen servis yöneticisiyle iletişime geçin.", + "pad.modals.deleted": "Silindi.", + "pad.modals.deleted.explanation": "Bu bloknot kaldırılmış.", + "pad.modals.disconnected": "Bağlantınız koptu.", + "pad.modals.disconnected.explanation": "Sunucu bağlantısı kaybedildi", + "pad.modals.disconnected.cause": "Sunucu kullanılamıyor olabilir. Bunun devam etmesi durumunda servis yöneticisine bildirin.", + "pad.share": "Bu bloknotu paylaş", + "pad.share.readonly": "Salt okunur", + "pad.share.link": "Bağlantı", + "pad.share.emebdcode": "URL'yi göm", + "pad.chat": "Sohbet", + "pad.chat.title": "Bu bloknot için sohbeti açın.", + "pad.chat.loadmessages": "Daha fazla mesaj yükle", + "timeslider.pageTitle": "{{appTitle}} Zaman Çizelgesi", + "timeslider.toolbar.returnbutton": "Bloknota geri dön", + "timeslider.toolbar.authors": "Yazarlar:", + "timeslider.toolbar.authorsList": "Yazar Yok", + "timeslider.toolbar.exportlink.title": "Dışa aktar", + "timeslider.exportCurrent": "Mevcut sürümü şu olarak dışa aktar:", + "timeslider.version": "{{version}} sürümü", + "timeslider.saved": "{{day}} {{month}} {{year}} tarihinde kaydedildi", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}", + "timeslider.month.january": "Ocak", + "timeslider.month.february": "Şubat", + "timeslider.month.march": "Mart", + "timeslider.month.april": "Nisan", + "timeslider.month.may": "Mayıs", + "timeslider.month.june": "Haziran", + "timeslider.month.july": "Temmuz", + "timeslider.month.august": "Ağustos", + "timeslider.month.september": "Eylül", + "timeslider.month.october": "Ekim", + "timeslider.month.november": "Kasım", + "timeslider.month.december": "Aralık", + "timeslider.unnamedauthors": "{{num}} adsız {[plural(num) one: yazar, other: yazar ]}", + "pad.savedrevs.marked": "Bu düzenleme artık kayıtlı bir düzeltme olarak işaretlendi", + "pad.savedrevs.timeslider": "Zaman kaydırıcısını ziyaret ederek kaydedilen revizyonları görebilirsiniz", + "pad.userlist.entername": "Adınızı girin", + "pad.userlist.unnamed": "Adlandırılmamış", + "pad.userlist.guest": "Misafir", + "pad.userlist.deny": "Reddet", + "pad.userlist.approve": "Onayla", + "pad.editbar.clearcolors": "Bütün belgedeki yazarlık renkleri silinsin mi?", + "pad.impexp.importbutton": "Şimdi İçe Aktar", + "pad.impexp.importing": "İçe aktarıyor...", + "pad.impexp.confirmimport": "Bir dosya içe aktarılırken bloknotun mevcut metninin üzerine yazdırılır. Devam etmek istediğinizden emin misiniz?", + "pad.impexp.convertFailed": "Bu dosyayı içe aktarmak mümkün değil. Lütfen farklı bir belge biçimi kullanın ya da elle kopyala yapıştır yapın", + "pad.impexp.uploadFailed": "Yükleme başarısız, lütfen tekrar deneyin", + "pad.impexp.importfailed": "İçe aktarım başarısız oldu", + "pad.impexp.copypaste": "Lütfen kopyala yapıştır yapın", + "pad.impexp.exportdisabled": "{{type}} biçimiyle dışa aktarma devre dışı bırakıldı. Ayrıntılar için sistem yöneticinizle iletişime geçiniz." +} diff --git a/sources/src/locales/uk.json b/sources/src/locales/uk.json old mode 100644 new mode 100755 index d1cf0b3..9dcde98 --- a/sources/src/locales/uk.json +++ b/sources/src/locales/uk.json @@ -1,126 +1,129 @@ { - "@metadata": { - "authors": [ - "Andriykopanytsia", - "Base", - "Olvin", - "Steve.rusyn", - "SteveR" - ] - }, - "index.newPad": "Створити", - "index.createOpenPad": "або створити/відкрити документ з назвою:", - "pad.toolbar.bold.title": "Напівжирний (Ctrl-B)", - "pad.toolbar.italic.title": "Курсив (Ctrl-I)", - "pad.toolbar.underline.title": "Підкреслення (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Закреслення", - "pad.toolbar.ol.title": "Упорядкований список", - "pad.toolbar.ul.title": "Неупорядкований список", - "pad.toolbar.indent.title": "Відступ", - "pad.toolbar.unindent.title": "Виступ", - "pad.toolbar.undo.title": "Скасувати (Ctrl-Z)", - "pad.toolbar.redo.title": "Повторити (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Очистити кольори документу", - "pad.toolbar.import_export.title": "Імпорт/Експорт з використанням різних форматів файлів", - "pad.toolbar.timeslider.title": "Шкала часу", - "pad.toolbar.savedRevision.title": "Зберегти версію", - "pad.toolbar.settings.title": "Налаштування", - "pad.toolbar.embed.title": "Поділитись та вбудувати цей документ", - "pad.toolbar.showusers.title": "Показати користувачів цього документу", - "pad.colorpicker.save": "Зберегти", - "pad.colorpicker.cancel": "Скасувати", - "pad.loading": "Завантаження…", - "pad.passwordRequired": "Вам необхідний пароль для доступу до цього документу", - "pad.permissionDenied": "Ви не має дозволу для доступу до цього документу", - "pad.wrongPassword": "Неправильний пароль", - "pad.settings.padSettings": "Налаштування документу", - "pad.settings.myView": "Мій Вигляд", - "pad.settings.stickychat": "Завжди відображувати чат", - "pad.settings.colorcheck": "Кольори документу", - "pad.settings.linenocheck": "Номери рядків", - "pad.settings.rtlcheck": "Читати вміст з права на ліво?", - "pad.settings.fontType": "Тип шрифту:", - "pad.settings.fontType.normal": "Звичайний", - "pad.settings.fontType.monospaced": "Моноширинний", - "pad.settings.globalView": "Загальний вигляд", - "pad.settings.language": "Мова:", - "pad.importExport.import_export": "Імпорт/Експорт", - "pad.importExport.import": "Завантажити будь-який текстовий файл або документ", - "pad.importExport.importSuccessful": "Успішно!", - "pad.importExport.export": "Експортувати поточний документ як:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Звичайний текст", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF (документ OpenOffice)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Ви можете імпортувати лище формати простого тексту або html. Для більш просунутих способів імпорту \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Eвстановіть abiword\u003C/a\u003E.", - "pad.modals.connected": "З'єднано.", - "pad.modals.reconnecting": "Перепідлючення до Вашого документу..", - "pad.modals.forcereconnect": "Примусове перепідключення", - "pad.modals.userdup": "Відкрито в іншому вікні", - "pad.modals.userdup.explanation": "Документ, можливо, відкрито більш ніж в одному вікні браузера на цьому комп'ютері.", - "pad.modals.userdup.advice": "Перепідключитись використовуючи це вікно.", - "pad.modals.unauth": "Не авторизовано", - "pad.modals.unauth.explanation": "Ваші права було змінено під час перегляду цієї сторінк. Спробуйте перепідключитись.", - "pad.modals.looping.explanation": "Проблеми зв'єзку з сервером синхронізації.", - "pad.modals.looping.cause": "Можливо, підключились через несумісний брандмауер або проксі-сервер.", - "pad.modals.initsocketfail": "Сервер недоступний.", - "pad.modals.initsocketfail.explanation": "Не вдалося підключитися до сервера синхронізації.", - "pad.modals.initsocketfail.cause": "Ймовірно, це пов'язано з Вашим браузером або інтернет-з'єднанням.", - "pad.modals.slowcommit.explanation": "Сервер не відповідає.", - "pad.modals.slowcommit.cause": "Це може бути через проблем з підключенням до мережі.", - "pad.modals.badChangeset.explanation": "Редагування, яке ви зробили, було класифіковане як незаконний шлях доступу до сервера синхронізації.", - "pad.modals.badChangeset.cause": "Причиною може бути неправильна конфігурація сервера або інші непередбачувані поведінки. Зверніться до адміністратора служби, якщо ви відчуваєте, що це помилка. Спробуйте підключитися повторно для того, щоб продовжити редагування.", - "pad.modals.corruptPad.explanation": "Пошкоджено документ, до якого ви хочете одержати доступ.", - "pad.modals.corruptPad.cause": "Це може бути через неправильну конфігурацію сервера або іншу непередбачувану поведінку. Зверніться до адміністратора служби.", - "pad.modals.deleted": "Вилучено.", - "pad.modals.deleted.explanation": "Цей документ було вилучено.", - "pad.modals.disconnected": "Вас було від'єднано.", - "pad.modals.disconnected.explanation": "З'єднання з сервером втрачено", - "pad.modals.disconnected.cause": "Сервер, можливо, недоступний. Будь ласка, повідомте адміністратора служби, якщо це повторюватиметься.", - "pad.share": "Поділитись", - "pad.share.readonly": "Тільки читання", - "pad.share.link": "Посилання", - "pad.share.emebdcode": "Вставити URL", - "pad.chat": "Чат", - "pad.chat.title": "Відкрити чат для цього документу.", - "pad.chat.loadmessages": "Завантажити більше повідомлень", - "timeslider.pageTitle": "Часова шкала {{appTitle}}", - "timeslider.toolbar.returnbutton": "Повернутись до документу", - "timeslider.toolbar.authors": "Автори:", - "timeslider.toolbar.authorsList": "Немає авторів", - "timeslider.toolbar.exportlink.title": "Експорт", - "timeslider.exportCurrent": "Експортувати поточну версію як:", - "timeslider.version": "Версія {{version}}", - "timeslider.saved": "Збережено {{month}} {{day}}, {{year}}", - "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Січень", - "timeslider.month.february": "Лютий", - "timeslider.month.march": "Березень", - "timeslider.month.april": "Квітень", - "timeslider.month.may": "Травень", - "timeslider.month.june": "Червень", - "timeslider.month.july": "Липень", - "timeslider.month.august": "Серпень", - "timeslider.month.september": "Вересень", - "timeslider.month.october": "Жовтень", - "timeslider.month.november": "Листопад", - "timeslider.month.december": "Грудень", - "timeslider.unnamedauthors": "{{num}} {[plural(num) one: безіменний автор, few: безіменні автори, many: безіменних авторів, other: безіменних авторів]}", - "pad.savedrevs.marked": "Цю версію помічено збереженою версією", - "pad.userlist.entername": "Введіть Ваше ім'я", - "pad.userlist.unnamed": "безіменний", - "pad.userlist.guest": "Гість", - "pad.userlist.deny": "Заборонити", - "pad.userlist.approve": "Підтвердити", - "pad.editbar.clearcolors": "Очистити кольори у всьому документі?", - "pad.impexp.importbutton": "Імпортувати зараз", - "pad.impexp.importing": "Імпорт...", - "pad.impexp.confirmimport": "Імпортування файлу перезапише поточний текст документу. Ви дійсно хочете продовжити?", - "pad.impexp.convertFailed": "Ми не можемо імпортувати цей файл. Будь ласка, використайте інший формат документу, або прямо скопіюйте та вставте", - "pad.impexp.uploadFailed": "Завантаження не вдалось, будь ласка, спробуйте знову", - "pad.impexp.importfailed": "Помилка при імпортуванні", - "pad.impexp.copypaste": "Будь ласка, скопіюйте та вставте", - "pad.impexp.exportdisabled": "Експорт у формат {{type}} вимкнено. Будь ласка, зв'яжіться із Вашим системним адміністратором за деталями." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Andriykopanytsia", + "Base", + "Olvin", + "Steve.rusyn", + "SteveR", + "Lxlalexlxl" + ] + }, + "index.newPad": "Створити", + "index.createOpenPad": "або створити/відкрити документ з назвою:", + "pad.toolbar.bold.title": "Напівжирний (Ctrl-B)", + "pad.toolbar.italic.title": "Курсив (Ctrl-I)", + "pad.toolbar.underline.title": "Підкреслення (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Закреслення (Ctrl+5)", + "pad.toolbar.ol.title": "Упорядкований список (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Неупорядкований список (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Відступ (TAB)", + "pad.toolbar.unindent.title": "Виступ (Shift+TAB)", + "pad.toolbar.undo.title": "Скасувати (Ctrl-Z)", + "pad.toolbar.redo.title": "Повторити (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Очистити кольори документу (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Імпорт/Експорт з використанням різних форматів файлів", + "pad.toolbar.timeslider.title": "Шкала часу", + "pad.toolbar.savedRevision.title": "Зберегти версію", + "pad.toolbar.settings.title": "Налаштування", + "pad.toolbar.embed.title": "Поділитись та вбудувати цей документ", + "pad.toolbar.showusers.title": "Показати користувачів цього документу", + "pad.colorpicker.save": "Зберегти", + "pad.colorpicker.cancel": "Скасувати", + "pad.loading": "Завантаження…", + "pad.noCookie": "Реп'яшки не знайдено. Будь-ласка, увімкніть реп'яшки у вашому браузері!", + "pad.passwordRequired": "Вам необхідний пароль для доступу до цього документу", + "pad.permissionDenied": "Ви не має дозволу для доступу до цього документу", + "pad.wrongPassword": "Неправильний пароль", + "pad.settings.padSettings": "Налаштування документу", + "pad.settings.myView": "Мій Вигляд", + "pad.settings.stickychat": "Завжди відображувати чат", + "pad.settings.chatandusers": "Показати чат і користувачів", + "pad.settings.colorcheck": "Кольори документу", + "pad.settings.linenocheck": "Номери рядків", + "pad.settings.rtlcheck": "Читати вміст з права на ліво?", + "pad.settings.fontType": "Тип шрифту:", + "pad.settings.fontType.normal": "Звичайний", + "pad.settings.fontType.monospaced": "Моноширинний", + "pad.settings.globalView": "Загальний вигляд", + "pad.settings.language": "Мова:", + "pad.importExport.import_export": "Імпорт/Експорт", + "pad.importExport.import": "Завантажити будь-який текстовий файл або документ", + "pad.importExport.importSuccessful": "Успішно!", + "pad.importExport.export": "Експортувати поточний документ як:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Звичайний текст", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (документ OpenOffice)", + "pad.importExport.abiword.innerHTML": "Ви можете імпортувати лище формати простого тексту або html. Для більш просунутих способів імпорту встановіть abiword.", + "pad.modals.connected": "З'єднано.", + "pad.modals.reconnecting": "Перепідлючення до Вашого документу..", + "pad.modals.forcereconnect": "Примусове перепідключення", + "pad.modals.userdup": "Відкрито в іншому вікні", + "pad.modals.userdup.explanation": "Документ, можливо, відкрито більш ніж в одному вікні браузера на цьому комп'ютері.", + "pad.modals.userdup.advice": "Перепідключитись використовуючи це вікно.", + "pad.modals.unauth": "Не авторизовано", + "pad.modals.unauth.explanation": "Ваші права було змінено під час перегляду цієї сторінк. Спробуйте перепідключитись.", + "pad.modals.looping.explanation": "Проблеми зв'єзку з сервером синхронізації.", + "pad.modals.looping.cause": "Можливо, підключились через несумісний брандмауер або проксі-сервер.", + "pad.modals.initsocketfail": "Сервер недоступний.", + "pad.modals.initsocketfail.explanation": "Не вдалося підключитися до сервера синхронізації.", + "pad.modals.initsocketfail.cause": "Ймовірно, це пов'язано з Вашим браузером або інтернет-з'єднанням.", + "pad.modals.slowcommit.explanation": "Сервер не відповідає.", + "pad.modals.slowcommit.cause": "Це може бути через проблем з підключенням до мережі.", + "pad.modals.badChangeset.explanation": "Редагування, яке ви зробили, було класифіковане як незаконний шлях доступу до сервера синхронізації.", + "pad.modals.badChangeset.cause": "Причиною може бути неправильна конфігурація сервера або інші непередбачувані поведінки. Зверніться до адміністратора служби, якщо ви відчуваєте, що це помилка. Спробуйте підключитися повторно для того, щоб продовжити редагування.", + "pad.modals.corruptPad.explanation": "Пошкоджено документ, до якого ви хочете одержати доступ.", + "pad.modals.corruptPad.cause": "Це може бути через неправильну конфігурацію сервера або іншу непередбачувану поведінку. Зверніться до адміністратора служби.", + "pad.modals.deleted": "Вилучено.", + "pad.modals.deleted.explanation": "Цей документ було вилучено.", + "pad.modals.disconnected": "Вас було від'єднано.", + "pad.modals.disconnected.explanation": "З'єднання з сервером втрачено", + "pad.modals.disconnected.cause": "Сервер, можливо, недоступний. Будь ласка, повідомте адміністратора служби, якщо це повторюватиметься.", + "pad.share": "Поділитись", + "pad.share.readonly": "Тільки читання", + "pad.share.link": "Посилання", + "pad.share.emebdcode": "Вставити URL", + "pad.chat": "Чат", + "pad.chat.title": "Відкрити чат для цього документу.", + "pad.chat.loadmessages": "Завантажити більше повідомлень", + "timeslider.pageTitle": "Часова шкала {{appTitle}}", + "timeslider.toolbar.returnbutton": "Повернутись до документу", + "timeslider.toolbar.authors": "Автори:", + "timeslider.toolbar.authorsList": "Немає авторів", + "timeslider.toolbar.exportlink.title": "Експорт", + "timeslider.exportCurrent": "Експортувати поточну версію як:", + "timeslider.version": "Версія {{version}}", + "timeslider.saved": "Збережено {{month}} {{day}}, {{year}}", + "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Січень", + "timeslider.month.february": "Лютий", + "timeslider.month.march": "Березень", + "timeslider.month.april": "Квітень", + "timeslider.month.may": "Травень", + "timeslider.month.june": "Червень", + "timeslider.month.july": "Липень", + "timeslider.month.august": "Серпень", + "timeslider.month.september": "Вересень", + "timeslider.month.october": "Жовтень", + "timeslider.month.november": "Листопад", + "timeslider.month.december": "Грудень", + "timeslider.unnamedauthors": "{{num}} {[plural(num) one: безіменний автор, few: безіменні автори, many: безіменних авторів, other: безіменних авторів]}", + "pad.savedrevs.marked": "Цю версію помічено збереженою версією", + "pad.userlist.entername": "Введіть Ваше ім'я", + "pad.userlist.unnamed": "безіменний", + "pad.userlist.guest": "Гість", + "pad.userlist.deny": "Заборонити", + "pad.userlist.approve": "Підтвердити", + "pad.editbar.clearcolors": "Очистити кольори у всьому документі?", + "pad.impexp.importbutton": "Імпортувати зараз", + "pad.impexp.importing": "Імпорт...", + "pad.impexp.confirmimport": "Імпортування файлу перезапише поточний текст документу. Ви дійсно хочете продовжити?", + "pad.impexp.convertFailed": "Ми не можемо імпортувати цей файл. Будь ласка, використайте інший формат документу, або прямо скопіюйте та вставте", + "pad.impexp.uploadFailed": "Завантаження не вдалось, будь ласка, спробуйте знову", + "pad.impexp.importfailed": "Помилка при імпортуванні", + "pad.impexp.copypaste": "Будь ласка, скопіюйте та вставте", + "pad.impexp.exportdisabled": "Експорт у формат {{type}} вимкнено. Будь ласка, зв'яжіться із Вашим системним адміністратором за деталями." +} diff --git a/sources/src/locales/vi.json b/sources/src/locales/vi.json old mode 100644 new mode 100755 index e85a290..da0baf5 --- a/sources/src/locales/vi.json +++ b/sources/src/locales/vi.json @@ -1,124 +1,124 @@ { - "@metadata": { - "authors": [ - "Baonguyen21022003", - "Minh Nguyen", - "Tuankiet65" - ] - }, - "index.newPad": "Tạo một Pad mới", - "index.createOpenPad": "hay tạo/mở một Pad với tên:", - "pad.toolbar.bold.title": "In đậm (Ctrl-B)", - "pad.toolbar.italic.title": "In nghiêng (Ctrl-I)", - "pad.toolbar.underline.title": "Gạch chân (Ctrl-U)", - "pad.toolbar.strikethrough.title": "Gạch ngang", - "pad.toolbar.ol.title": "Danh sách Có Đánh số", - "pad.toolbar.ul.title": "Danh sách Không Đánh số", - "pad.toolbar.indent.title": "Tăng lề (TAB)", - "pad.toolbar.unindent.title": "Giảm lề (Shift+TAB)", - "pad.toolbar.undo.title": "Hoàn tác (Ctrl-Z)", - "pad.toolbar.redo.title": "Làm lại (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "Xóa Màu chỉ Tác giả", - "pad.toolbar.import_export.title": "Xuất/Nhập từ/đến các định dạng file khác nhau", - "pad.toolbar.timeslider.title": "Thanh thời gian", - "pad.toolbar.savedRevision.title": "Lưu Phiên bản", - "pad.toolbar.settings.title": "Thiết lập", - "pad.toolbar.embed.title": "Chia sẻ và Nhúng pad này", - "pad.toolbar.showusers.title": "Hiện các người dùng trên pad này", - "pad.colorpicker.save": "Lưu", - "pad.colorpicker.cancel": "Hủy bỏ", - "pad.loading": "Đang tải…", - "pad.passwordRequired": "Bạn cần mật khẩu để truy cập pad này", - "pad.permissionDenied": "Bạn không có quyền truy cập pad này.", - "pad.wrongPassword": "Bạn đã nhập sai mật khẩu", - "pad.settings.padSettings": "Tùy chọn Pad", - "pad.settings.myView": "Chỉ có tôi", - "pad.settings.stickychat": "Luân hiện cửa sổ trò chuyện trên màn hình", - "pad.settings.colorcheck": "Màu chỉ tác giả", - "pad.settings.linenocheck": "Số dòng", - "pad.settings.rtlcheck": "Đọc nội dung từ phải sang trái?", - "pad.settings.fontType": "Kiểu phông chữ:", - "pad.settings.fontType.normal": "Thường", - "pad.settings.fontType.monospaced": "Monospace", - "pad.settings.globalView": "Toàn cầu", - "pad.settings.language": "Ngôn ngữ:", - "pad.importExport.import_export": "Xuất/Nhập", - "pad.importExport.import": "Tải lên bất kỳ tập tin văn bản hoặc tài liệu", - "pad.importExport.importSuccessful": "Thành công!", - "pad.importExport.export": "Xuất pad hiện tại ra định dạng:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "Văn bản thuần túy", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "Bạn chỉ có thể nhập vào từ văn bản thuần túy hay định dạng HTML. Nếu muốn có nhiều chức năng nhập hơn xin hãy \u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003Ecài đặt abiword\u003C/a\u003E.", - "pad.modals.connected": "Đã kết nối lại.", - "pad.modals.reconnecting": "Kết nối lại tới pad của bạn", - "pad.modals.forcereconnect": "Ép kết nối lại", - "pad.modals.userdup": "Mở trong cửa sổ khác", - "pad.modals.userdup.explanation": "Pad này dường như được mở trên hơn một cửa sổ trình duyệt trên máy tính này.", - "pad.modals.userdup.advice": "Kết nối lại để sử dụng cửa sổ này.", - "pad.modals.unauth": "Không có quyền", - "pad.modals.unauth.explanation": "Quyền của bạn đã thay đổi trong khi bạn đang xem trang này. Hãy thử kết nối lại.", - "pad.modals.looping.explanation": "Có vấn đề khi giao tiếp với máy chủ đồng bộ", - "pad.modals.looping.cause": "Có thể bạn đã kết nối thông qua một tường lửa hay proxy không thích hợp", - "pad.modals.initsocketfail": "Không thể tiếp cận máy chủ", - "pad.modals.initsocketfail.explanation": "Không thể kết nối đến máy chủ đồng bộ.", - "pad.modals.initsocketfail.cause": "Điều này có thể là do một vấn đề với trình duyệt của bạn hay đường truyền internet của bạn.", - "pad.modals.slowcommit.explanation": "Máy chủ không phản hồi.", - "pad.modals.slowcommit.cause": "Điều này có thể là do vấn đề về kết nối mạng.", - "pad.modals.badChangeset.explanation": "Chỉnh sửa bạn đã thực hiện là bất hợp pháp phân loại bởi máy chủ đồng bộ hóa.", - "pad.modals.badChangeset.cause": "Điều này có thể là do một cấu hình máy chủ sai hoặc một số hành vi không mong muốn khác. Xin vui lòng liên hệ với quản trị viên dịch vụ, nếu bạn cảm thấy đây là một lỗi. Cố gắng kết nối lại để tiếp tục chỉnh sửa.", - "pad.modals.corruptPad.explanation": "Các phím bạn đang cố truy cập bị hỏng.", - "pad.modals.corruptPad.cause": "Điều này có thể là do một cấu hình máy chủ sai hoặc một số hành vi không mong muốn khác. Xin vui lòng liên hệ với người quản trị dịch vụ.", - "pad.modals.deleted": "Đã xóa", - "pad.modals.deleted.explanation": "Pad này đã được gỡ", - "pad.modals.disconnected": "Bạn đã ngắt kết nối", - "pad.modals.disconnected.explanation": "Kết nối tới máy chủ đã bị mất", - "pad.modals.disconnected.cause": "Hệ phục vụ có thể không sẵn dùng. Xin vui lòng thông báo cho người quản trị dịch vụ nếu điều này tiếp tục xảy ra.", - "pad.share": "Chia sẻ pad này", - "pad.share.readonly": "Chỉ đọc", - "pad.share.link": "Liên kết", - "pad.share.emebdcode": "URL nhúng", - "pad.chat": "Trò chuyện", - "pad.chat.title": "Mở trò chuyện cho pad này.", - "pad.chat.loadmessages": "Tải thêm tin nhắn", - "timeslider.pageTitle": "Thanh thời gian của {{appTitle}}", - "timeslider.toolbar.returnbutton": "Trở về pad", - "timeslider.toolbar.authors": "Tác giả:", - "timeslider.toolbar.authorsList": "Không có tác giả", - "timeslider.toolbar.exportlink.title": "Xuất", - "timeslider.exportCurrent": "Xuất phiên bản hiện tại thành:", - "timeslider.version": "Phiên bản {{version}}", - "timeslider.saved": "Đã lưu vào ngày {{day}} {{month}} năm {{year}}", - "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "Tháng Giêng", - "timeslider.month.february": "Tháng Hai", - "timeslider.month.march": "Tháng Ba", - "timeslider.month.april": "Tháng Tư", - "timeslider.month.may": "Tháng Năm", - "timeslider.month.june": "Tháng Sáu", - "timeslider.month.july": "Tháng Bảy", - "timeslider.month.august": "Tháng Tám", - "timeslider.month.september": "Tháng Chín", - "timeslider.month.october": "Tháng Mười", - "timeslider.month.november": "Tháng Mười Một", - "timeslider.month.december": "Tháng Mười Hai", - "timeslider.unnamedauthors": "Không tên {{in a}} {[plural(num) một: tác giả, khác: tác giả]}", - "pad.savedrevs.marked": "Phiên bản này đã được đánh dấu là một phiên bản đã lưu", - "pad.userlist.entername": "Nhập tên của bạn", - "pad.userlist.unnamed": "Không tên", - "pad.userlist.guest": "Khách", - "pad.userlist.deny": "Chặn", - "pad.userlist.approve": "Chấp nhận", - "pad.editbar.clearcolors": "Xóa màu chỉ tác giả trên toàn bộ tài liệu?", - "pad.impexp.importbutton": "Nhập ngay bây giờ", - "pad.impexp.importing": "Đang nhập…", - "pad.impexp.confirmimport": "Nhập một tập tin sẽ ghi đè nội dung hiện tại của pad. Bạn có muốn làm như vậy không?", - "pad.impexp.convertFailed": "Chúng tôi không thể nhập tập tin này. Hãy sử dụng định dạng tập tin khác hay sao chéo và dán một cách thủ công.", - "pad.impexp.uploadFailed": "Tải lên không thành công, vui lòng thử lại", - "pad.impexp.importfailed": "Nhập thất bại", - "pad.impexp.copypaste": "Xin vui lòng sao chép và dán", - "pad.impexp.exportdisabled": "Xuất ra định dạng {{type}} đã bị vô hiệu hóa. Xin hãy liên hệ với quản trị viên hệ thống để biết thêm thông tin chi tiết." -} \ No newline at end of file + "@metadata": { + "authors": [ + "Baonguyen21022003", + "Minh Nguyen", + "Tuankiet65", + "Max20091" + ] + }, + "index.newPad": "Tạo một Pad mới", + "index.createOpenPad": "hay tạo/mở một Pad với tên:", + "pad.toolbar.bold.title": "In đậm (Ctrl-B)", + "pad.toolbar.italic.title": "In nghiêng (Ctrl-I)", + "pad.toolbar.underline.title": "Gạch chân (Ctrl-U)", + "pad.toolbar.strikethrough.title": "Gạch ngang (Ctrl+5)", + "pad.toolbar.ol.title": "Danh sách Có Đánh số (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Danh sách Không Đánh số (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Tăng lề (TAB)", + "pad.toolbar.unindent.title": "Giảm lề (Shift+TAB)", + "pad.toolbar.undo.title": "Hoàn tác (Ctrl-Z)", + "pad.toolbar.redo.title": "Làm lại (Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "Xóa Màu chỉ Tác giả", + "pad.toolbar.import_export.title": "Xuất/Nhập từ/đến các định dạng file khác nhau", + "pad.toolbar.timeslider.title": "Thanh thời gian", + "pad.toolbar.savedRevision.title": "Lưu Phiên bản", + "pad.toolbar.settings.title": "Thiết lập", + "pad.toolbar.embed.title": "Chia sẻ và Nhúng pad này", + "pad.toolbar.showusers.title": "Hiện các người dùng trên pad này", + "pad.colorpicker.save": "Lưu", + "pad.colorpicker.cancel": "Hủy bỏ", + "pad.loading": "Đang tải…", + "pad.passwordRequired": "Bạn cần mật khẩu để truy cập pad này", + "pad.permissionDenied": "Bạn không có quyền truy cập pad này.", + "pad.wrongPassword": "Bạn đã nhập sai mật khẩu", + "pad.settings.padSettings": "Tùy chọn Pad", + "pad.settings.myView": "Chỉ có tôi", + "pad.settings.stickychat": "Luân hiện cửa sổ trò chuyện trên màn hình", + "pad.settings.colorcheck": "Màu chỉ tác giả", + "pad.settings.linenocheck": "Số dòng", + "pad.settings.rtlcheck": "Đọc nội dung từ phải sang trái?", + "pad.settings.fontType": "Kiểu phông chữ:", + "pad.settings.fontType.normal": "Thường", + "pad.settings.fontType.monospaced": "Monospace", + "pad.settings.globalView": "Toàn cầu", + "pad.settings.language": "Ngôn ngữ:", + "pad.importExport.import_export": "Xuất/Nhập", + "pad.importExport.import": "Tải lên bất kỳ tập tin văn bản hoặc tài liệu", + "pad.importExport.importSuccessful": "Thành công!", + "pad.importExport.export": "Xuất pad hiện tại ra định dạng:", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Văn bản thuần túy", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF", + "pad.importExport.abiword.innerHTML": "Bạn chỉ có thể nhập vào từ văn bản thuần túy hay định dạng HTML. Nếu muốn có nhiều chức năng nhập hơn xin hãy cài đặt abiword.", + "pad.modals.connected": "Đã kết nối lại.", + "pad.modals.reconnecting": "Kết nối lại tới pad của bạn", + "pad.modals.forcereconnect": "Ép kết nối lại", + "pad.modals.userdup": "Mở trong cửa sổ khác", + "pad.modals.userdup.explanation": "Pad này dường như được mở trên hơn một cửa sổ trình duyệt trên máy tính này.", + "pad.modals.userdup.advice": "Kết nối lại để sử dụng cửa sổ này.", + "pad.modals.unauth": "Không có quyền", + "pad.modals.unauth.explanation": "Quyền của bạn đã thay đổi trong khi bạn đang xem trang này. Hãy thử kết nối lại.", + "pad.modals.looping.explanation": "Có vấn đề khi giao tiếp với máy chủ đồng bộ", + "pad.modals.looping.cause": "Có thể bạn đã kết nối thông qua một tường lửa hay proxy không thích hợp", + "pad.modals.initsocketfail": "Không thể tiếp cận máy chủ", + "pad.modals.initsocketfail.explanation": "Không thể kết nối đến máy chủ đồng bộ.", + "pad.modals.initsocketfail.cause": "Điều này có thể là do một vấn đề với trình duyệt của bạn hay đường truyền internet của bạn.", + "pad.modals.slowcommit.explanation": "Máy chủ không phản hồi.", + "pad.modals.slowcommit.cause": "Điều này có thể là do vấn đề về kết nối mạng.", + "pad.modals.badChangeset.explanation": "Chỉnh sửa bạn đã thực hiện là bất hợp pháp phân loại bởi máy chủ đồng bộ hóa.", + "pad.modals.badChangeset.cause": "Điều này có thể là do một cấu hình máy chủ sai hoặc một số hành vi không mong muốn khác. Xin vui lòng liên hệ với quản trị viên dịch vụ, nếu bạn cảm thấy đây là một lỗi. Cố gắng kết nối lại để tiếp tục chỉnh sửa.", + "pad.modals.corruptPad.explanation": "Các phím bạn đang cố truy cập bị hỏng.", + "pad.modals.corruptPad.cause": "Điều này có thể là do một cấu hình máy chủ sai hoặc một số hành vi không mong muốn khác. Xin vui lòng liên hệ với người quản trị dịch vụ.", + "pad.modals.deleted": "Đã xóa", + "pad.modals.deleted.explanation": "Pad này đã được gỡ", + "pad.modals.disconnected": "Bạn đã ngắt kết nối", + "pad.modals.disconnected.explanation": "Kết nối tới máy chủ đã bị mất", + "pad.modals.disconnected.cause": "Hệ phục vụ có thể không sẵn dùng. Xin vui lòng thông báo cho người quản trị dịch vụ nếu điều này tiếp tục xảy ra.", + "pad.share": "Chia sẻ pad này", + "pad.share.readonly": "Chỉ đọc", + "pad.share.link": "Liên kết", + "pad.share.emebdcode": "URL nhúng", + "pad.chat": "Trò chuyện", + "pad.chat.title": "Mở trò chuyện cho pad này.", + "pad.chat.loadmessages": "Tải thêm tin nhắn", + "timeslider.pageTitle": "Thanh thời gian của {{appTitle}}", + "timeslider.toolbar.returnbutton": "Trở về pad", + "timeslider.toolbar.authors": "Tác giả:", + "timeslider.toolbar.authorsList": "Không có tác giả", + "timeslider.toolbar.exportlink.title": "Xuất", + "timeslider.exportCurrent": "Xuất phiên bản hiện tại thành:", + "timeslider.version": "Phiên bản {{version}}", + "timeslider.saved": "Đã lưu vào ngày {{day}} {{month}} năm {{year}}", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Tháng Giêng", + "timeslider.month.february": "Tháng Hai", + "timeslider.month.march": "Tháng Ba", + "timeslider.month.april": "Tháng Tư", + "timeslider.month.may": "Tháng Năm", + "timeslider.month.june": "Tháng Sáu", + "timeslider.month.july": "Tháng Bảy", + "timeslider.month.august": "Tháng Tám", + "timeslider.month.september": "Tháng Chín", + "timeslider.month.october": "Tháng Mười", + "timeslider.month.november": "Tháng Mười Một", + "timeslider.month.december": "Tháng Mười Hai", + "timeslider.unnamedauthors": "Không tên {{in a}} {[plural(num) một: tác giả, khác: tác giả]}", + "pad.savedrevs.marked": "Phiên bản này đã được đánh dấu là một phiên bản đã lưu", + "pad.userlist.entername": "Nhập tên của bạn", + "pad.userlist.unnamed": "Không tên", + "pad.userlist.guest": "Khách", + "pad.userlist.deny": "Chặn", + "pad.userlist.approve": "Chấp nhận", + "pad.editbar.clearcolors": "Xóa màu chỉ tác giả trên toàn bộ tài liệu?", + "pad.impexp.importbutton": "Nhập ngay bây giờ", + "pad.impexp.importing": "Đang nhập…", + "pad.impexp.confirmimport": "Nhập một tập tin sẽ ghi đè nội dung hiện tại của pad. Bạn có muốn làm như vậy không?", + "pad.impexp.convertFailed": "Chúng tôi không thể nhập tập tin này. Hãy sử dụng định dạng tập tin khác hay sao chéo và dán một cách thủ công.", + "pad.impexp.uploadFailed": "Tải lên không thành công, vui lòng thử lại", + "pad.impexp.importfailed": "Nhập thất bại", + "pad.impexp.copypaste": "Xin vui lòng sao chép và dán", + "pad.impexp.exportdisabled": "Xuất ra định dạng {{type}} đã bị vô hiệu hóa. Xin hãy liên hệ với quản trị viên hệ thống để biết thêm thông tin chi tiết." +} diff --git a/sources/src/locales/zh-hans.json b/sources/src/locales/zh-hans.json old mode 100644 new mode 100755 index 642f3be..31b7f7f --- a/sources/src/locales/zh-hans.json +++ b/sources/src/locales/zh-hans.json @@ -1,131 +1,136 @@ { - "@metadata": { - "authors": [ - "Dimension", - "Hydra", - "Hzy980512", - "Liuxinyu970226", - "Qiyue2001", - "Shangkuanlc", - "Shizhao", - "Yfdyh000", - "乌拉跨氪", - "燃玉" - ] - }, - "index.newPad": "新记事本", - "index.createOpenPad": "或者创建/打开带名字的记事本:", - "pad.toolbar.bold.title": "粗体(Ctrl-B)", - "pad.toolbar.italic.title": "斜体 (Ctrl-I)", - "pad.toolbar.underline.title": "下划线(Ctrl-U)", - "pad.toolbar.strikethrough.title": "删除线", - "pad.toolbar.ol.title": "有序列表", - "pad.toolbar.ul.title": "无序列表", - "pad.toolbar.indent.title": "增加缩进(TAB)", - "pad.toolbar.unindent.title": "减少缩进(Shift+TAB)", - "pad.toolbar.undo.title": "撤消 (Ctrl-Z)", - "pad.toolbar.redo.title": "重做 (Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "清除作者颜色", - "pad.toolbar.import_export.title": "从不同的文件格式导入/导出", - "pad.toolbar.timeslider.title": "时间轴", - "pad.toolbar.savedRevision.title": "保存修订", - "pad.toolbar.settings.title": "设置", - "pad.toolbar.embed.title": "共享并嵌入此记事本", - "pad.toolbar.showusers.title": "显示此记事本上的用户", - "pad.colorpicker.save": "保存", - "pad.colorpicker.cancel": "取消", - "pad.loading": "载入中……", - "pad.passwordRequired": "您需要密码才能访问这个记事本", - "pad.permissionDenied": "您没有访问这个记事本的权限", - "pad.wrongPassword": "您的密码错了", - "pad.settings.padSettings": "记事本设置", - "pad.settings.myView": "我的视窗", - "pad.settings.stickychat": "总是显示聊天屏幕", - "pad.settings.colorcheck": "作者颜色", - "pad.settings.linenocheck": "行号", - "pad.settings.rtlcheck": "从右到左阅读内容吗?", - "pad.settings.fontType": "字体类型:", - "pad.settings.fontType.normal": "正常", - "pad.settings.fontType.monospaced": "等宽字体", - "pad.settings.globalView": "所有人视窗", - "pad.settings.language": "语言:", - "pad.importExport.import_export": "导入/导出", - "pad.importExport.import": "上载任何文本文件或档案", - "pad.importExport.importSuccessful": "成功!", - "pad.importExport.export": "当前记事本导出为:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "纯文本", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF(开放文档格式)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "您只能导入纯文本或HTML格式。\u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003E安裝abiword\u003C/a\u003E取得更多高级的导入功能。", - "pad.modals.connected": "已连接。", - "pad.modals.reconnecting": "重新连接到您的记事本...", - "pad.modals.forcereconnect": "强制重新连接", - "pad.modals.userdup": "在另一个窗口中打开", - "pad.modals.userdup.explanation": "此记事本似乎在本电脑上的多个浏览器窗口中打开。", - "pad.modals.userdup.advice": "重新连接,使用此窗口。", - "pad.modals.unauth": "未授权", - "pad.modals.unauth.explanation": "您的权限在查看此页面时已改变。尝试重新连接。", - "pad.modals.looping.explanation": "与同步服务器的通信出现问题。", - "pad.modals.looping.cause": "也许您是通过不兼容的防火墙或代理服务器连接。", - "pad.modals.initsocketfail": "无法访问服务器。", - "pad.modals.initsocketfail.explanation": "无法连接到同步服务器。", - "pad.modals.initsocketfail.cause": "这可能是由于您的浏览器或您的互联网连接的问题。", - "pad.modals.slowcommit.explanation": "服务器没有响应。", - "pad.modals.slowcommit.cause": "这可能是由于网络连接问题。", - "pad.modals.badChangeset.explanation": "您的一个编辑被同步服务器分类为非法。", - "pad.modals.badChangeset.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。如果您认为这是错误,请联系服务管理员。要继续编辑,请尝试重新连接。", - "pad.modals.corruptPad.explanation": "您试图连接的平板已损坏。", - "pad.modals.corruptPad.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。请联系服务管理员。", - "pad.modals.deleted": "已刪除。", - "pad.modals.deleted.explanation": "此记事本已被移除。", - "pad.modals.disconnected": "你已断开连接。", - "pad.modals.disconnected.explanation": "到服务器的连接已丢失", - "pad.modals.disconnected.cause": "服务器可能无法使用。若此情况持续发生,请通知服务器管理员。", - "pad.share": "分享此记事本", - "pad.share.readonly": "只读", - "pad.share.link": "链接", - "pad.share.emebdcode": "嵌入网址", - "pad.chat": "聊天", - "pad.chat.title": "打开此记事本的聊天窗口。", - "pad.chat.loadmessages": "加载更多信息", - "timeslider.pageTitle": "{{appTitle}} 时间轴", - "timeslider.toolbar.returnbutton": "返回记事本", - "timeslider.toolbar.authors": "作者:", - "timeslider.toolbar.authorsList": "没有作者", - "timeslider.toolbar.exportlink.title": "导出", - "timeslider.exportCurrent": "当前版本导出为:", - "timeslider.version": "版本 {{version}}", - "timeslider.saved": "在{{year}}年{{month}}{{day}}日保存", - "timeslider.dateformat": "{{year}}年{{month}}{{day}}日 {{hours}}时:{{minutes}}分:{{seconds}}秒", - "timeslider.month.january": "一月", - "timeslider.month.february": "二月", - "timeslider.month.march": "三月", - "timeslider.month.april": "四月", - "timeslider.month.may": "五月", - "timeslider.month.june": "六月", - "timeslider.month.july": "七月", - "timeslider.month.august": "八月", - "timeslider.month.september": "九月", - "timeslider.month.october": "十月", - "timeslider.month.november": "十一月", - "timeslider.month.december": "十二月", - "timeslider.unnamedauthors": "{{num}}个匿名作者", - "pad.savedrevs.marked": "这一修订现在被标记为已保存的修订版本", - "pad.userlist.entername": "输入您的姓名", - "pad.userlist.unnamed": "匿名", - "pad.userlist.guest": "访客", - "pad.userlist.deny": "拒绝", - "pad.userlist.approve": "批准", - "pad.editbar.clearcolors": "清除整个文档的作者颜色吗?", - "pad.impexp.importbutton": "现在导入", - "pad.impexp.importing": "正在导入...", - "pad.impexp.confirmimport": "导入的文件将覆盖记事本的当前文本。你确定要继续吗?", - "pad.impexp.convertFailed": "我们无法导入此文档。请使用他文档格式或手动复制贴上。", - "pad.impexp.uploadFailed": "上载失败,请重试", - "pad.impexp.importfailed": "导入失败", - "pad.impexp.copypaste": "请复制粘贴", - "pad.impexp.exportdisabled": "{{type}} 格式的导出被禁用。有关详情,请与您的系统管理员联系。" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Dimension", + "Hydra", + "Hzy980512", + "Liuxinyu970226", + "Qiyue2001", + "Shangkuanlc", + "Shizhao", + "Yfdyh000", + "乌拉跨氪", + "燃玉", + "JuneAugust" + ] + }, + "index.newPad": "新记事本", + "index.createOpenPad": "或者创建/打开带名字的记事本:", + "pad.toolbar.bold.title": "粗体(Ctrl-B)", + "pad.toolbar.italic.title": "斜体(Ctrl-I)", + "pad.toolbar.underline.title": "下划线(Ctrl-U)", + "pad.toolbar.strikethrough.title": "删除线(Ctrl+5)", + "pad.toolbar.ol.title": "有序列表(Ctrl+Shift+N)", + "pad.toolbar.ul.title": "无序列表(Ctrl+Shift+L)", + "pad.toolbar.indent.title": "增加缩进(TAB)", + "pad.toolbar.unindent.title": "减少缩进(Shift+TAB)", + "pad.toolbar.undo.title": "撤消(Ctrl-Z)", + "pad.toolbar.redo.title": "重做(Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "清除作者颜色(Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "从不同的文件格式导入/导出", + "pad.toolbar.timeslider.title": "时间轴", + "pad.toolbar.savedRevision.title": "保存修订", + "pad.toolbar.settings.title": "设置", + "pad.toolbar.embed.title": "共享并嵌入此记事本", + "pad.toolbar.showusers.title": "显示此记事本上的用户", + "pad.colorpicker.save": "保存", + "pad.colorpicker.cancel": "取消", + "pad.loading": "载入中……", + "pad.noCookie": "无法找到Cookie。请在您的浏览器中允许Cookie!", + "pad.passwordRequired": "您需要密码才能访问这个记事本", + "pad.permissionDenied": "您没有访问这个记事本的权限", + "pad.wrongPassword": "您的密码错了", + "pad.settings.padSettings": "记事本设置", + "pad.settings.myView": "我的视窗", + "pad.settings.stickychat": "总是显示聊天屏幕", + "pad.settings.chatandusers": "显示聊天和用户", + "pad.settings.colorcheck": "作者颜色", + "pad.settings.linenocheck": "行号", + "pad.settings.rtlcheck": "从右到左阅读内容吗?", + "pad.settings.fontType": "字体类型:", + "pad.settings.fontType.normal": "正常", + "pad.settings.fontType.monospaced": "等宽字体", + "pad.settings.globalView": "所有人视窗", + "pad.settings.language": "语言:", + "pad.importExport.import_export": "导入/导出", + "pad.importExport.import": "上载任何文本文件或档案", + "pad.importExport.importSuccessful": "成功!", + "pad.importExport.export": "当前记事本导出为:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "纯文本", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF(开放文档格式)", + "pad.importExport.abiword.innerHTML": "您只能导入纯文本或HTML格式。安裝abiword取得更多高级的导入功能。", + "pad.modals.connected": "已连接。", + "pad.modals.reconnecting": "重新连接到您的记事本...", + "pad.modals.forcereconnect": "强制重新连接", + "pad.modals.userdup": "在另一个窗口中打开", + "pad.modals.userdup.explanation": "此记事本似乎在本电脑上的多个浏览器窗口中打开。", + "pad.modals.userdup.advice": "重新连接,使用此窗口。", + "pad.modals.unauth": "未授权", + "pad.modals.unauth.explanation": "您的权限在查看此页面时已改变。尝试重新连接。", + "pad.modals.looping.explanation": "与同步服务器的通信出现问题。", + "pad.modals.looping.cause": "也许您是通过不兼容的防火墙或代理服务器连接。", + "pad.modals.initsocketfail": "无法访问服务器。", + "pad.modals.initsocketfail.explanation": "无法连接到同步服务器。", + "pad.modals.initsocketfail.cause": "这可能是由于您的浏览器或您的互联网连接的问题。", + "pad.modals.slowcommit.explanation": "服务器没有响应。", + "pad.modals.slowcommit.cause": "这可能是由于网络连接问题。", + "pad.modals.badChangeset.explanation": "您的一个编辑被同步服务器分类为非法。", + "pad.modals.badChangeset.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。如果您认为这是错误,请联系服务管理员。要继续编辑,请尝试重新连接。", + "pad.modals.corruptPad.explanation": "您试图连接的记事本已损坏。", + "pad.modals.corruptPad.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。请联系服务管理员。", + "pad.modals.deleted": "已刪除。", + "pad.modals.deleted.explanation": "此记事本已被移除。", + "pad.modals.disconnected": "你已断开连接。", + "pad.modals.disconnected.explanation": "到服务器的连接已丢失", + "pad.modals.disconnected.cause": "服务器可能无法使用。若此情况持续发生,请通知服务器管理员。", + "pad.share": "分享此记事本", + "pad.share.readonly": "只读", + "pad.share.link": "链接", + "pad.share.emebdcode": "嵌入网址", + "pad.chat": "聊天", + "pad.chat.title": "打开此记事本的聊天窗口。", + "pad.chat.loadmessages": "加载更多信息", + "timeslider.pageTitle": "{{appTitle}} 时间轴", + "timeslider.toolbar.returnbutton": "返回记事本", + "timeslider.toolbar.authors": "作者:", + "timeslider.toolbar.authorsList": "没有作者", + "timeslider.toolbar.exportlink.title": "导出", + "timeslider.exportCurrent": "当前版本导出为:", + "timeslider.version": "版本 {{version}}", + "timeslider.saved": "在{{year}}年{{month}}{{day}}日保存", + "timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}{{minutes}}{{seconds}}", + "timeslider.month.january": "1月", + "timeslider.month.february": "2月", + "timeslider.month.march": "3月", + "timeslider.month.april": "4月", + "timeslider.month.may": "5月", + "timeslider.month.june": "6月", + "timeslider.month.july": "7月", + "timeslider.month.august": "8月", + "timeslider.month.september": "9月", + "timeslider.month.october": "10月", + "timeslider.month.november": "11月", + "timeslider.month.december": "12月", + "timeslider.unnamedauthors": "{{num}}个匿名作者", + "pad.savedrevs.marked": "这一修订现在被标记为已保存的修订版本", + "pad.savedrevs.timeslider": "您可以使用时间滑块查阅已保存的版本", + "pad.userlist.entername": "输入您的姓名", + "pad.userlist.unnamed": "匿名", + "pad.userlist.guest": "访客", + "pad.userlist.deny": "拒绝", + "pad.userlist.approve": "批准", + "pad.editbar.clearcolors": "清除整个文档的作者颜色吗?", + "pad.impexp.importbutton": "现在导入", + "pad.impexp.importing": "正在导入...", + "pad.impexp.confirmimport": "导入的文件将覆盖记事本的当前文本。你确定要继续吗?", + "pad.impexp.convertFailed": "我们无法导入此文档。请使用其他文档格式或手动复制贴上。", + "pad.impexp.padHasData": "我们无法导入此文件,因为此记事本已经变更,请导入到一个新的记事本中", + "pad.impexp.uploadFailed": "上载失败,请重试", + "pad.impexp.importfailed": "导入失败", + "pad.impexp.copypaste": "请复制粘贴", + "pad.impexp.exportdisabled": "{{type}} 格式的导出被禁用。有关详情,请与您的系统管理员联系。" +} diff --git a/sources/src/locales/zh-hant.json b/sources/src/locales/zh-hant.json old mode 100644 new mode 100755 index 6950226..48dd577 --- a/sources/src/locales/zh-hant.json +++ b/sources/src/locales/zh-hant.json @@ -1,126 +1,130 @@ { - "@metadata": { - "authors": [ - "Justincheng12345", - "Liuxinyu970226", - "Shangkuanlc", - "Shirayuki", - "Simon Shek" - ] - }, - "index.newPad": "新Pad", - "index.createOpenPad": "或創建/開啟以下名稱的pad:", - "pad.toolbar.bold.title": "粗體(Ctrl-B)", - "pad.toolbar.italic.title": "斜體(Ctrl-I)", - "pad.toolbar.underline.title": "底線(Ctrl-U)", - "pad.toolbar.strikethrough.title": "刪除線", - "pad.toolbar.ol.title": "有序清單", - "pad.toolbar.ul.title": "無序清單", - "pad.toolbar.indent.title": "縮排(TAB)", - "pad.toolbar.unindent.title": "凸排(Shift+TAB)", - "pad.toolbar.undo.title": "撤銷(Ctrl-Z)", - "pad.toolbar.redo.title": "重做(Ctrl-Y)", - "pad.toolbar.clearAuthorship.title": "清除協作者顏色區別", - "pad.toolbar.import_export.title": "以其他檔案格式匯入/匯出", - "pad.toolbar.timeslider.title": "時間軸", - "pad.toolbar.savedRevision.title": "儲存修訂", - "pad.toolbar.settings.title": "設定", - "pad.toolbar.embed.title": "分享和嵌入此pad", - "pad.toolbar.showusers.title": "顯示此pad的用戶", - "pad.colorpicker.save": "儲存", - "pad.colorpicker.cancel": "取消", - "pad.loading": "載入中...", - "pad.passwordRequired": "您需要密碼才能訪問這個pad", - "pad.permissionDenied": "你沒有訪問這個pad的權限", - "pad.wrongPassword": "密碼錯誤", - "pad.settings.padSettings": "Pad設定", - "pad.settings.myView": "我的視窗", - "pad.settings.stickychat": "永遠在屏幕上顯示聊天", - "pad.settings.colorcheck": "協作者顏色", - "pad.settings.linenocheck": "行號", - "pad.settings.rtlcheck": "從右至左讀取內容?", - "pad.settings.fontType": "字體類型:", - "pad.settings.fontType.normal": "正常", - "pad.settings.fontType.monospaced": "等寬", - "pad.settings.globalView": "所有人的視窗", - "pad.settings.language": "語言:", - "pad.importExport.import_export": "匯入/匯出", - "pad.importExport.import": "上載任何文字檔或文檔", - "pad.importExport.importSuccessful": "完成!", - "pad.importExport.export": "匯出當前pad為:", - "pad.importExport.exporthtml": "HTML", - "pad.importExport.exportplain": "純文字", - "pad.importExport.exportword": "Microsoft Word", - "pad.importExport.exportpdf": "PDF", - "pad.importExport.exportopen": "ODF(開放文件格式)", - "pad.importExport.exportdokuwiki": "DokuWiki", - "pad.importExport.abiword.innerHTML": "您只可以純文字或html格式檔匯入。\u003Ca href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-SLES-with-AbiWord\"\u003E安裝abiword\u003C/a\u003E取得更多進階的匯入功能。", - "pad.modals.connected": "已連線。", - "pad.modals.reconnecting": "重新連接到您的pad...", - "pad.modals.forcereconnect": "強制重新連線", - "pad.modals.userdup": "在另一個視窗中開啟", - "pad.modals.userdup.explanation": "此pad似乎在此電腦上的多個瀏覽器視窗中開啟。", - "pad.modals.userdup.advice": "重新連接到此視窗。", - "pad.modals.unauth": "未授權", - "pad.modals.unauth.explanation": "您的權限在查看此頁時發生更改。請嘗試重新連接。", - "pad.modals.looping.explanation": "與同步伺服器間有通信問題。", - "pad.modals.looping.cause": "也許您是通過不相容的防火牆或代理伺服器連線。", - "pad.modals.initsocketfail": "無法訪問伺服器。", - "pad.modals.initsocketfail.explanation": "無法連接到同步伺服器。", - "pad.modals.initsocketfail.cause": "這可能是因為瀏覽器或網際網路連線問題所造成。", - "pad.modals.slowcommit.explanation": "伺服器沒有回應。", - "pad.modals.slowcommit.cause": "這可能是因為網路連線問題所造成。", - "pad.modals.badChangeset.explanation": "您的一個編輯被同步伺服器類為非法。", - "pad.modals.badChangeset.cause": "這可能由於伺服器的配置錯誤或遇到意外問題。若您認為這是錯誤,請聯繫伺服器管理員。如要繼續編輯,請嘗試重新連接。", - "pad.modals.corruptPad.explanation": "您試圖訪問的平板已損壞。", - "pad.modals.corruptPad.cause": "這可能由於伺服器的配置錯誤或遇到意外問題。請聯繫伺服器管理員。", - "pad.modals.deleted": "已刪除。", - "pad.modals.deleted.explanation": "此pad已被移除。", - "pad.modals.disconnected": "您已中斷連線。", - "pad.modals.disconnected.explanation": "伺服器連接曾中斷", - "pad.modals.disconnected.cause": "伺服器可能無法使用。若此情況持續發生,請通知伺服器管理員。", - "pad.share": "分享此pad", - "pad.share.readonly": "唯讀", - "pad.share.link": "連結", - "pad.share.emebdcode": "嵌入網址", - "pad.chat": "聊天功能", - "pad.chat.title": "打開pad聊天功能", - "pad.chat.loadmessages": "載入更多訊息", - "timeslider.pageTitle": "{{appTitle}}時間軸", - "timeslider.toolbar.returnbutton": "返回到pad", - "timeslider.toolbar.authors": "協作者:", - "timeslider.toolbar.authorsList": "無協作者", - "timeslider.toolbar.exportlink.title": "匯出", - "timeslider.exportCurrent": "匯出當前版本為:", - "timeslider.version": "版本{{version}}", - "timeslider.saved": "{{year}}年{{month}}月{{day}}日儲存", - "timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}:{{minutes}}:{{seconds}}", - "timeslider.month.january": "1月", - "timeslider.month.february": "2月", - "timeslider.month.march": "3月", - "timeslider.month.april": "4月", - "timeslider.month.may": "5月", - "timeslider.month.june": "6月", - "timeslider.month.july": "7月", - "timeslider.month.august": "8月", - "timeslider.month.september": "9月", - "timeslider.month.october": "10月", - "timeslider.month.november": "11月", - "timeslider.month.december": "12月", - "timeslider.unnamedauthors": "{{num}}匿名{[plural(num) 作者]}", - "pad.savedrevs.marked": "標記此修訂版本為已儲存修訂版本。", - "pad.userlist.entername": "輸入您的姓名", - "pad.userlist.unnamed": "未命名", - "pad.userlist.guest": "訪客", - "pad.userlist.deny": "拒絕", - "pad.userlist.approve": "批准", - "pad.editbar.clearcolors": "清除整個文檔的協作者顏色區別嗎?", - "pad.impexp.importbutton": "現在匯入", - "pad.impexp.importing": "匯入中...", - "pad.impexp.confirmimport": "匯入的檔案將會覆蓋pad內目前的文字。您確定要繼續嗎?", - "pad.impexp.convertFailed": "未能匯入此檔案。請以其他檔案格式或手動複製貼上匯入。", - "pad.impexp.uploadFailed": "上載失敗,請重試", - "pad.impexp.importfailed": "匯入失敗", - "pad.impexp.copypaste": "請複製貼上", - "pad.impexp.exportdisabled": "{{type}}格式的匯出被禁用。有關詳情,請與您的系統管理員聯繫。" -} \ No newline at end of file + "@metadata": { + "authors": [ + "Justincheng12345", + "Liuxinyu970226", + "Shangkuanlc", + "Shirayuki", + "Simon Shek", + "LNDDYL", + "Wehwei" + ] + }, + "index.newPad": "新Pad", + "index.createOpenPad": "或創建/開啟以下名稱的pad:", + "pad.toolbar.bold.title": "粗體(Ctrl-B)", + "pad.toolbar.italic.title": "斜體(Ctrl-I)", + "pad.toolbar.underline.title": "底線(Ctrl-U)", + "pad.toolbar.strikethrough.title": "刪除線(Ctrl+5)", + "pad.toolbar.ol.title": "有序清單(Ctrl+Shift+N)", + "pad.toolbar.ul.title": "無序清單(Ctrl+Shift+L)", + "pad.toolbar.indent.title": "縮排(TAB)", + "pad.toolbar.unindent.title": "凸排(Shift+TAB)", + "pad.toolbar.undo.title": "撤銷(Ctrl-Z)", + "pad.toolbar.redo.title": "重做(Ctrl-Y)", + "pad.toolbar.clearAuthorship.title": "清除協作者顏色區別 (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "以其他檔案格式匯入/匯出", + "pad.toolbar.timeslider.title": "時間軸", + "pad.toolbar.savedRevision.title": "儲存修訂", + "pad.toolbar.settings.title": "設定", + "pad.toolbar.embed.title": "分享和嵌入此pad", + "pad.toolbar.showusers.title": "顯示此pad的用戶", + "pad.colorpicker.save": "儲存", + "pad.colorpicker.cancel": "取消", + "pad.loading": "載入中...", + "pad.noCookie": "找不到 Cookie。請讓你的瀏覽器允許 Cookie!", + "pad.passwordRequired": "您需要密碼才能訪問這個pad", + "pad.permissionDenied": "你沒有訪問這個pad的權限", + "pad.wrongPassword": "密碼錯誤", + "pad.settings.padSettings": "Pad設定", + "pad.settings.myView": "我的視窗", + "pad.settings.stickychat": "永遠在屏幕上顯示聊天", + "pad.settings.chatandusers": "顯示聊天及用戶", + "pad.settings.colorcheck": "協作者顏色", + "pad.settings.linenocheck": "行號", + "pad.settings.rtlcheck": "從右至左讀取內容?", + "pad.settings.fontType": "字體類型:", + "pad.settings.fontType.normal": "正常", + "pad.settings.fontType.monospaced": "等寬", + "pad.settings.globalView": "所有人的視窗", + "pad.settings.language": "語言:", + "pad.importExport.import_export": "匯入/匯出", + "pad.importExport.import": "上載任何文字檔或文件", + "pad.importExport.importSuccessful": "完成!", + "pad.importExport.export": "匯出當前pad為:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "純文字", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF(開放文件格式)", + "pad.importExport.abiword.innerHTML": "您只可以純文字或html格式檔匯入。安裝abiword取得更多進階的匯入功能。", + "pad.modals.connected": "已連線。", + "pad.modals.reconnecting": "重新連接到您的pad...", + "pad.modals.forcereconnect": "強制重新連線", + "pad.modals.userdup": "在另一個視窗中開啟", + "pad.modals.userdup.explanation": "此pad似乎在此電腦上的多個瀏覽器視窗中開啟。", + "pad.modals.userdup.advice": "重新連接到此視窗。", + "pad.modals.unauth": "未授權", + "pad.modals.unauth.explanation": "您的權限在查看此頁時發生更改。請嘗試重新連接。", + "pad.modals.looping.explanation": "與同步伺服器間有通信問題。", + "pad.modals.looping.cause": "也許您是通過不相容的防火牆或代理伺服器連線。", + "pad.modals.initsocketfail": "無法訪問伺服器。", + "pad.modals.initsocketfail.explanation": "無法連接到同步伺服器。", + "pad.modals.initsocketfail.cause": "這可能是因為瀏覽器或網際網路連線問題所造成。", + "pad.modals.slowcommit.explanation": "伺服器沒有回應。", + "pad.modals.slowcommit.cause": "這可能是因為網路連線問題所造成。", + "pad.modals.badChangeset.explanation": "您的一個編輯被同步伺服器類為非法。", + "pad.modals.badChangeset.cause": "這可能由於伺服器的配置錯誤或遇到意外問題。若您認為這是錯誤,請聯繫伺服器管理員。如要繼續編輯,請嘗試重新連接。", + "pad.modals.corruptPad.explanation": "您試圖存取的平板已損壞。", + "pad.modals.corruptPad.cause": "這可能由於伺服器的配置錯誤或遇到意外問題。請聯繫伺服器管理員。", + "pad.modals.deleted": "已刪除。", + "pad.modals.deleted.explanation": "此pad已被移除。", + "pad.modals.disconnected": "您已中斷連線。", + "pad.modals.disconnected.explanation": "伺服器連接曾中斷", + "pad.modals.disconnected.cause": "伺服器可能無法使用。若此情況持續發生,請通知伺服器管理員。", + "pad.share": "分享此pad", + "pad.share.readonly": "唯讀", + "pad.share.link": "連結", + "pad.share.emebdcode": "嵌入網址", + "pad.chat": "聊天功能", + "pad.chat.title": "打開pad聊天功能", + "pad.chat.loadmessages": "載入更多訊息", + "timeslider.pageTitle": "{{appTitle}}時間軸", + "timeslider.toolbar.returnbutton": "返回到pad", + "timeslider.toolbar.authors": "協作者:", + "timeslider.toolbar.authorsList": "無協作者", + "timeslider.toolbar.exportlink.title": "匯出", + "timeslider.exportCurrent": "匯出當前版本為:", + "timeslider.version": "版本{{version}}", + "timeslider.saved": "{{year}}年{{month}}{{day}}日儲存", + "timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "1月", + "timeslider.month.february": "二月", + "timeslider.month.march": "3月", + "timeslider.month.april": "4月", + "timeslider.month.may": "5月", + "timeslider.month.june": "6月", + "timeslider.month.july": "7月", + "timeslider.month.august": "八月", + "timeslider.month.september": "9月", + "timeslider.month.october": "10月", + "timeslider.month.november": "11月", + "timeslider.month.december": "12月", + "timeslider.unnamedauthors": "{{num}}匿名{[plural(num) 作者]}", + "pad.savedrevs.marked": "標記此修訂版本為已儲存修訂版本。", + "pad.userlist.entername": "輸入您的姓名", + "pad.userlist.unnamed": "未命名", + "pad.userlist.guest": "訪客", + "pad.userlist.deny": "拒絕", + "pad.userlist.approve": "批准", + "pad.editbar.clearcolors": "清除整個文檔的協作者顏色區別嗎?", + "pad.impexp.importbutton": "現在匯入", + "pad.impexp.importing": "匯入中...", + "pad.impexp.confirmimport": "匯入的檔案將會覆蓋pad內目前的文字。您確定要繼續嗎?", + "pad.impexp.convertFailed": "未能匯入此檔案。請以其他檔案格式或手動複製貼上匯入。", + "pad.impexp.uploadFailed": "上載失敗,請重試", + "pad.impexp.importfailed": "匯入失敗", + "pad.impexp.copypaste": "請複製貼上", + "pad.impexp.exportdisabled": "{{type}}格式的匯出被禁用。有關詳情,請與您的系統管理員聯繫。" +} diff --git a/sources/src/node/README.md b/sources/src/node/README.md old mode 100644 new mode 100755 diff --git a/sources/src/node/db/API.js b/sources/src/node/db/API.js old mode 100644 new mode 100755 index 98bc802..97d5162 --- a/sources/src/node/db/API.js +++ b/sources/src/node/db/API.js @@ -187,7 +187,12 @@ exports.getRevisionChangeset = function(padID, rev, callback) //the client wants the latest changeset, lets return it to him else { - callback(null, {"changeset": pad.getRevisionChangeset(pad.getHeadRevisionNumber())}); + pad.getRevisionChangeset(pad.getHeadRevisionNumber(), function(err, changeset) + { + if(ERR(err, callback)) return; + + callback(null, changeset); + }) } }); } @@ -258,7 +263,7 @@ exports.getText = function(padID, rev, callback) { if(ERR(err, callback)) return; - data = {text: atext.text}; + var data = {text: atext.text}; callback(null, data); }) @@ -363,7 +368,7 @@ exports.getHTML = function(padID, rev, callback) if(ERR(err, callback)) return; html = "" +html; // adds HTML head html += ""; - data = {html: html}; + var data = {html: html}; callback(null, data); }); } @@ -375,7 +380,7 @@ exports.getHTML = function(padID, rev, callback) if(ERR(err, callback)) return; html = "" +html; // adds HTML head html += ""; - data = {html: html}; + var data = {html: html}; callback(null, data); }); } @@ -405,11 +410,16 @@ exports.setHTML = function(padID, html, callback) if(ERR(err, callback)) return; // add a new changeset with the new html to the pad - importHtml.setPadHTML(pad, cleanText(html), callback); - - //update the clients on the pad - padMessageHandler.updatePadClients(pad, callback); - + importHtml.setPadHTML(pad, cleanText(html), function(e){ + if(e){ + callback(new customError("HTML is malformed","apierror")); + return; + }else{ + //update the clients on the pad + padMessageHandler.updatePadClients(pad, callback); + return; + } + }); }); } @@ -422,8 +432,8 @@ getChatHistory(padId, start, end), returns a part of or the whole chat-history o Example returns: -{"code":0,"message":"ok","data":{"messages":[{"text":"foo","userId":"a.foo","time":1359199533759,"userName":"test"}, - {"text":"bar","userId":"a.foo","time":1359199534622,"userName":"test"}]}} +{"code":0,"message":"ok","data":{"messages":[{"text":"foo","authorID":"a.foo","time":1359199533759,"userName":"test"}, + {"text":"bar","authorID":"a.foo","time":1359199534622,"userName":"test"}]}} {code: 1, message:"start is higher or equal to the current chatHead", data: null} @@ -484,6 +494,33 @@ exports.getChatHistory = function(padID, start, end, callback) }); } +/** +appendChatMessage(padID, text, authorID, time), creates a chat message for the pad id, time is a timestamp + +Example returns: + +{code: 0, message:"ok", data: null +{code: 1, message:"padID does not exist", data: null} +*/ +exports.appendChatMessage = function(padID, text, authorID, time, callback) +{ + //text is required + if(typeof text != "string") + { + callback(new customError("text is no string","apierror")); + return; + } + + //get the pad + getPadSafe(padID, true, function(err, pad) + { + if(ERR(err, callback)) return; + + pad.appendChatMessage(text, authorID, parseInt(time)); + callback(); + }); +} + /*****************/ /**PAD FUNCTIONS */ /*****************/ @@ -507,6 +544,117 @@ exports.getRevisionsCount = function(padID, callback) }); } +/** +getSavedRevisionsCount(padID) returns the number of saved revisions of this pad + +Example returns: + +{code: 0, message:"ok", data: {savedRevisions: 42}} +{code: 1, message:"padID does not exist", data: null} +*/ +exports.getSavedRevisionsCount = function(padID, callback) +{ + //get the pad + getPadSafe(padID, true, function(err, pad) + { + if(ERR(err, callback)) return; + + callback(null, {savedRevisions: pad.getSavedRevisionsNumber()}); + }); +} + +/** +listSavedRevisions(padID) returns the list of saved revisions of this pad + +Example returns: + +{code: 0, message:"ok", data: {savedRevisions: [2, 42, 1337]}} +{code: 1, message:"padID does not exist", data: null} +*/ +exports.listSavedRevisions = function(padID, callback) +{ + //get the pad + getPadSafe(padID, true, function(err, pad) + { + if(ERR(err, callback)) return; + + callback(null, {savedRevisions: pad.getSavedRevisionsList()}); + }); +} + +/** +saveRevision(padID) returns the list of saved revisions of this pad + +Example returns: + +{code: 0, message:"ok", data: null} +{code: 1, message:"padID does not exist", data: null} +*/ +exports.saveRevision = function(padID, rev, callback) +{ + //check if rev is set + if(typeof rev == "function") + { + callback = rev; + rev = undefined; + } + + //check if rev is a number + if(rev !== undefined && typeof rev != "number") + { + //try to parse the number + if(!isNaN(parseInt(rev))) + { + rev = parseInt(rev); + } + else + { + callback(new customError("rev is not a number", "apierror")); + return; + } + } + + //ensure this is not a negativ number + if(rev !== undefined && rev < 0) + { + callback(new customError("rev is a negativ number","apierror")); + return; + } + + //ensure this is not a float value + if(rev !== undefined && !is_int(rev)) + { + callback(new customError("rev is a float value","apierror")); + return; + } + + //get the pad + getPadSafe(padID, true, function(err, pad) + { + if(ERR(err, callback)) return; + + //the client asked for a special revision + if(rev !== undefined) + { + //check if this is a valid revision + if(rev > pad.getHeadRevisionNumber()) + { + callback(new customError("rev is higher than the head revision of the pad","apierror")); + return; + } + } else { + rev = pad.getHeadRevisionNumber(); + } + + authorManager.createAuthor('API', function(err, author) { + if(ERR(err, callback)) return; + + pad.addSavedRevision(rev, author.authorID, 'Saved through API call'); + callback(); + }); + }); +} + /** getLastEdited(padID) returns the timestamp of the last revision of the pad @@ -539,12 +687,21 @@ Example returns: exports.createPad = function(padID, text, callback) { //ensure there is no $ in the padID - if(padID && padID.indexOf("$") != -1) + if(padID) { - callback(new customError("createPad can't create group pads","apierror")); - return; + if(padID.indexOf("$") != -1) + { + callback(new customError("createPad can't create group pads","apierror")); + return; + } + //check for url special characters + else if(padID.match(/(\/|\?|&|#)/)) + { + callback(new customError("malformed padID: Remove special characters","apierror")); + return; + } } - + //create pad getPadSafe(padID, false, text, function(err) { @@ -570,6 +727,117 @@ exports.deletePad = function(padID, callback) pad.remove(callback); }); } +/** + restoreRevision(padID, [rev]) Restores revision from past as new changeset + + Example returns: + + {code:0, message:"ok", data:null} + {code: 1, message:"padID does not exist", data: null} + */ +exports.restoreRevision = function (padID, rev, callback) +{ + var Changeset = require("ep_etherpad-lite/static/js/Changeset"); + var padMessage = require("ep_etherpad-lite/node/handler/PadMessageHandler.js"); + + //check if rev is a number + if (rev !== undefined && typeof rev != "number") + { + //try to parse the number + if (!isNaN(parseInt(rev))) + { + rev = parseInt(rev); + } + else + { + callback(new customError("rev is not a number", "apierror")); + return; + } + } + + //ensure this is not a negativ number + if (rev !== undefined && rev < 0) + { + callback(new customError("rev is a negativ number", "apierror")); + return; + } + + //ensure this is not a float value + if (rev !== undefined && !is_int(rev)) + { + callback(new customError("rev is a float value", "apierror")); + return; + } + + //get the pad + getPadSafe(padID, true, function (err, pad) + { + if (ERR(err, callback)) return; + + + //check if this is a valid revision + if (rev > pad.getHeadRevisionNumber()) + { + callback(new customError("rev is higher than the head revision of the pad", "apierror")); + return; + } + + pad.getInternalRevisionAText(rev, function (err, atext) + { + if (ERR(err, callback)) return; + + var oldText = pad.text(); + atext.text += "\n"; + function eachAttribRun(attribs, func) + { + var attribsIter = Changeset.opIterator(attribs); + var textIndex = 0; + var newTextStart = 0; + var newTextEnd = atext.text.length; + while (attribsIter.hasNext()) + { + var op = attribsIter.next(); + var nextIndex = textIndex + op.chars; + if (!(nextIndex <= newTextStart || textIndex >= newTextEnd)) + { + func(Math.max(newTextStart, textIndex), Math.min(newTextEnd, nextIndex), op.attribs); + } + textIndex = nextIndex; + } + } + + // create a new changeset with a helper builder object + var builder = Changeset.builder(oldText.length); + + // assemble each line into the builder + eachAttribRun(atext.attribs, function (start, end, attribs) + { + builder.insert(atext.text.substring(start, end), attribs); + }); + + var lastNewlinePos = oldText.lastIndexOf('\n'); + if (lastNewlinePos < 0) + { + builder.remove(oldText.length - 1, 0); + } else + { + builder.remove(lastNewlinePos, oldText.match(/\n/g).length - 1); + builder.remove(oldText.length - lastNewlinePos - 1, 0); + } + + var changeset = builder.toString(); + + //append the changeset + pad.appendRevision(changeset); + // + padMessage.updatePadClients(pad, function () + { + }); + callback(null, null); + }); + + }); +}; /** copyPad(sourceID, destinationID[, force=false]) copies a pad. If force is true, @@ -635,6 +903,32 @@ exports.getReadOnlyID = function(padID, callback) }); } +/** +getPadID(roID) returns the padID of a pad based on the readonlyID(roID) + +Example returns: + +{code: 0, message:"ok", data: {padID: padID}} +{code: 1, message:"padID does not exist", data: null} +*/ +exports.getPadID = function(roID, callback) +{ + //get the PadId + readOnlyManager.getPadId(roID, function(err, retrievedPadID) + { + if(ERR(err, callback)) return; + + if(retrievedPadID == null) + { + callback(new customError("padID does not exist","apierror")); + } + else + { + callback(null, {padID: retrievedPadID}); + } + }); +} + /** setPublicStatus(padID, publicStatus) sets a boolean for the public status of a pad diff --git a/sources/src/node/db/AuthorManager.js b/sources/src/node/db/AuthorManager.js old mode 100644 new mode 100755 index 5ba608e..e0f569e --- a/sources/src/node/db/AuthorManager.js +++ b/sources/src/node/db/AuthorManager.js @@ -21,7 +21,6 @@ var ERR = require("async-stacktrace"); var db = require("./DB").db; -var async = require("async"); var customError = require("../utils/customError"); var randomString = require('ep_etherpad-lite/static/js/pad_utils').randomString; diff --git a/sources/src/node/db/DB.js b/sources/src/node/db/DB.js old mode 100644 new mode 100755 diff --git a/sources/src/node/db/GroupManager.js b/sources/src/node/db/GroupManager.js old mode 100644 new mode 100755 diff --git a/sources/src/node/db/Pad.js b/sources/src/node/db/Pad.js old mode 100644 new mode 100755 index c7e0d50..e70628b --- a/sources/src/node/db/Pad.js +++ b/sources/src/node/db/Pad.js @@ -54,6 +54,21 @@ Pad.prototype.getHeadRevisionNumber = function getHeadRevisionNumber() { return this.head; }; +Pad.prototype.getSavedRevisionsNumber = function getSavedRevisionsNumber() { + return this.savedRevisions.length; +}; + +Pad.prototype.getSavedRevisionsList = function getSavedRevisionsList() { + var savedRev = new Array(); + for(var rev in this.savedRevisions){ + savedRev.push(this.savedRevisions[rev].revNum); + } + savedRev.sort(function(a, b) { + return a - b; + }); + return savedRev; +}; + Pad.prototype.getPublicStatus = function getPublicStatus() { return this.publicStatus; }; @@ -84,33 +99,33 @@ Pad.prototype.appendRevision = function appendRevision(aChangeset, author) { db.set("pad:"+this.id+":revs:"+newRev, newRevData); this.saveToDatabase(); - + // set the author to pad if(author) authorManager.addPad(author, this.id); - + if (this.head == 0) { hooks.callAll("padCreate", {'pad':this}); } else { hooks.callAll("padUpdate", {'pad':this}); - } + } }; //save all attributes to the database Pad.prototype.saveToDatabase = function saveToDatabase(){ var dbObject = {}; - + for(var attr in this){ if(typeof this[attr] === "function") continue; if(attributeBlackList.indexOf(attr) !== -1) continue; - + dbObject[attr] = this[attr]; - + if(jsonableList.indexOf(attr) !== -1){ dbObject[attr] = dbObject[attr].toJsonable(); } } - + db.set("pad:"+this.id, dbObject); } @@ -135,7 +150,7 @@ Pad.prototype.getRevisionDate = function getRevisionDate(revNum, callback) { Pad.prototype.getAllAuthors = function getAllAuthors() { var authors = []; - for(key in this.pool.numToAttrib) + for(var key in this.pool.numToAttrib) { if(this.pool.numToAttrib[key][0] == "author" && this.pool.numToAttrib[key][1] != "") { @@ -275,7 +290,7 @@ Pad.prototype.setText = function setText(newText) { var oldText = this.text(); //create the changeset - var changeset = Changeset.makeSplice(oldText, 0, oldText.length-1, newText); + var changeset = Changeset.makeSplice(oldText, 0, oldText.length, newText); //append the changeset this.appendRevision(changeset); @@ -337,9 +352,9 @@ Pad.prototype.getChatMessages = function getChatMessages(start, end, callback) { neededEntries.push({entryNum:i, order: order}); order++; } - + var _this = this; - + //get all entries out of the database var entries = []; async.forEach(neededEntries, function(entryObject, callback) @@ -412,6 +427,7 @@ Pad.prototype.init = function init(text, callback) { Pad.prototype.copy = function copy(destinationID, force, callback) { var sourceID = this.id; var _this = this; + var destGroupID; // make force optional if (typeof force == "function") { @@ -434,12 +450,13 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { // if it's a group pad, let's make sure the group exists. function(callback) { - if (destinationID.indexOf("$") != -1) - { - groupManager.doesGroupExist(destinationID.split("$")[0], function (err, exists) + if (destinationID.indexOf("$") != -1) + { + destGroupID = destinationID.split("$")[0] + groupManager.doesGroupExist(destGroupID, function (err, exists) { if(ERR(err, callback)) return; - + //group does not exist if(exists == false) { @@ -459,20 +476,19 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { // if the pad exists, we should abort, unless forced. function(callback) { - console.log("destinationID", destinationID, force); - padManager.doesPadExists(destinationID, function (err, exists) + padManager.doesPadExists(destinationID, function (err, exists) { if(ERR(err, callback)) return; - + if(exists == true) { if (!force) { - console.log("erroring out without force"); + console.error("erroring out without force"); callback(new customError("destinationID already exists","apierror")); - console.log("erroring out without force - after"); + console.error("erroring out without force - after"); return; - } + } else // exists and forcing { padManager.getPad(destinationID, function(err, pad) { @@ -481,7 +497,7 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { }); } } - else + else { callback(); } @@ -493,6 +509,7 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { db.get("pad:"+sourceID, function(err, pad) { db.set("pad:"+destinationID, pad); }); + callback(); }, //copy all relations @@ -518,12 +535,9 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { function(callback) { var revHead = _this.head; - //console.log(revHead); for(var i=0;i<=revHead;i++) { db.get("pad:"+sourceID+":revs:"+i, function (err, rev) { - //console.log("HERE"); - if (ERR(err, callback)) return; db.set("pad:"+destinationID+":revs:"+i, rev); }); @@ -535,10 +549,8 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { function(callback) { var authorIDs = _this.getAllAuthors(); - authorIDs.forEach(function (authorID) { - console.log("authors"); authorManager.addPad(authorID, destinationID); }); @@ -547,6 +559,15 @@ Pad.prototype.copy = function copy(destinationID, force, callback) { // parallel ], callback); }, + function(callback) { + // Group pad? Add it to the group's list + if(destGroupID) db.setSub("group:" + destGroupID, ["pads", destinationID], 1); + + // Initialize the new pad (will update the listAllPads cache) + setTimeout(function(){ + padManager.getPad(destinationID, null, callback) // this runs too early. + },10); + } // series ], function(err) { @@ -680,11 +701,11 @@ Pad.prototype.isPasswordProtected = function isPasswordProtected() { Pad.prototype.addSavedRevision = function addSavedRevision(revNum, savedById, label) { //if this revision is already saved, return silently for(var i in this.savedRevisions){ - if(this.savedRevisions.revNum === revNum){ + if(this.savedRevisions[i] && this.savedRevisions[i].revNum === revNum){ return; } } - + //build the saved revision object var savedRevision = {}; savedRevision.revNum = revNum; @@ -692,7 +713,7 @@ Pad.prototype.addSavedRevision = function addSavedRevision(revNum, savedById, la savedRevision.label = label || "Revision " + revNum; savedRevision.timestamp = new Date().getTime(); savedRevision.id = randomString(10); - + //save this new saved revision this.savedRevisions.push(savedRevision); this.saveToDatabase(); diff --git a/sources/src/node/db/PadManager.js b/sources/src/node/db/PadManager.js old mode 100644 new mode 100755 diff --git a/sources/src/node/db/ReadOnlyManager.js b/sources/src/node/db/ReadOnlyManager.js old mode 100644 new mode 100755 diff --git a/sources/src/node/db/SecurityManager.js b/sources/src/node/db/SecurityManager.js old mode 100644 new mode 100755 index 6388f09..6fae57f --- a/sources/src/node/db/SecurityManager.js +++ b/sources/src/node/db/SecurityManager.js @@ -20,7 +20,6 @@ var ERR = require("async-stacktrace"); -var db = require("./DB").db; var async = require("async"); var authorManager = require("./AuthorManager"); var padManager = require("./PadManager"); @@ -223,6 +222,12 @@ exports.checkAccess = function (padID, sessionCookie, token, password, callback) //--> grant access statusObject = {accessStatus: "grant", authorID: sessionAuthor}; } + //- the setting to bypass password validation is set + else if(settings.sessionNoPassword) + { + //--> grant access + statusObject = {accessStatus: "grant", authorID: sessionAuthor}; + } //- the pad is password protected and password is correct else if(isPasswordProtected && passwordStatus == "correct") { diff --git a/sources/src/node/db/SessionManager.js b/sources/src/node/db/SessionManager.js old mode 100644 new mode 100755 index 71315ad..f8000e4 --- a/sources/src/node/db/SessionManager.js +++ b/sources/src/node/db/SessionManager.js @@ -351,7 +351,15 @@ function listSessionsWithDBKey (dbkey, callback) { exports.getSessionInfo(sessionID, function(err, sessionInfo) { - if(ERR(err, callback)) return; + if (err == "apierror: sessionID does not exist") + { + console.warn("Found bad session " + sessionID + " in " + dbkey + "."); + } + else if(ERR(err, callback)) + { + return; + } + sessions[sessionID] = sessionInfo; callback(); }); diff --git a/sources/src/node/db/SessionStore.js b/sources/src/node/db/SessionStore.js old mode 100644 new mode 100755 index 52a504f..9740469 --- a/sources/src/node/db/SessionStore.js +++ b/sources/src/node/db/SessionStore.js @@ -4,9 +4,7 @@ * This is not used for authors that are created via the API at current */ -var Store = require('ep_etherpad-lite/node_modules/connect/lib/middleware/session/store'), - utils = require('ep_etherpad-lite/node_modules/connect/lib/utils'), - Session = require('ep_etherpad-lite/node_modules/connect/lib/middleware/session/session'), +var Store = require('ep_etherpad-lite/node_modules/express-session').Store, db = require('ep_etherpad-lite/node/db/DB').db, log4js = require('ep_etherpad-lite/node_modules/log4js'), messageLogger = log4js.getLogger("SessionStore"); diff --git a/sources/src/node/easysync_tests.js b/sources/src/node/easysync_tests.js old mode 100644 new mode 100755 diff --git a/sources/src/node/eejs/examples/bar.ejs b/sources/src/node/eejs/examples/bar.ejs old mode 100644 new mode 100755 diff --git a/sources/src/node/eejs/examples/foo.ejs b/sources/src/node/eejs/examples/foo.ejs old mode 100644 new mode 100755 diff --git a/sources/src/node/eejs/index.js b/sources/src/node/eejs/index.js old mode 100644 new mode 100755 index 48185d8..9d03284 --- a/sources/src/node/eejs/index.js +++ b/sources/src/node/eejs/index.js @@ -26,7 +26,7 @@ var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks.js"); var resolve = require("resolve"); exports.info = { - buf_stack: [], + __output_stack: [], block_stack: [], file_stack: [], args: [] @@ -41,27 +41,27 @@ function createBlockId(name) { } exports._init = function (b, recursive) { - exports.info.buf_stack.push(exports.info.buf); - exports.info.buf = b; + exports.info.__output_stack.push(exports.info.__output); + exports.info.__output = b; } exports._exit = function (b, recursive) { getCurrentFile().inherit.forEach(function (item) { exports._require(item.name, item.args); }); - exports.info.buf = exports.info.buf_stack.pop(); + exports.info.__output = exports.info.__output_stack.pop(); } exports.begin_capture = function() { - exports.info.buf_stack.push(exports.info.buf.concat()); - exports.info.buf.splice(0, exports.info.buf.length); + exports.info.__output_stack.push(exports.info.__output.concat()); + exports.info.__output.splice(0, exports.info.__output.length); } exports.end_capture = function () { - var res = exports.info.buf.join(""); - exports.info.buf.splice.apply( - exports.info.buf, - [0, exports.info.buf.length].concat(exports.info.buf_stack.pop())); + var res = exports.info.__output.join(""); + exports.info.__output.splice.apply( + exports.info.__output, + [0, exports.info.__output.length].concat(exports.info.__output_stack.pop())); return res; } @@ -71,7 +71,7 @@ exports.begin_define_block = function (name) { } exports.end_define_block = function () { - content = exports.end_capture(); + var content = exports.end_capture(); return content; } @@ -80,7 +80,7 @@ exports.end_block = function () { var renderContext = exports.info.args[exports.info.args.length-1]; var args = {content: exports.end_define_block(), renderContext: renderContext}; hooks.callAll("eejsBlock_" + name, args); - exports.info.buf.push(args.content); + exports.info.__output.push(args.content); } exports.begin_block = exports.begin_define_block; @@ -114,7 +114,7 @@ exports.require = function (name, args, mod) { args.e = exports; args.require = require; - var template = '<% e._init(buf); %>' + fs.readFileSync(ejspath).toString() + '<% e._exit(); %>'; + var template = '<% e._init(__output); %>' + fs.readFileSync(ejspath).toString() + '<% e._exit(); %>'; exports.info.args.push(args); exports.info.file_stack.push({path: ejspath, inherit: []}); @@ -127,5 +127,5 @@ exports.require = function (name, args, mod) { } exports._require = function (name, args) { - exports.info.buf.push(exports.require(name, args)); + exports.info.__output.push(exports.require(name, args)); } diff --git a/sources/src/node/handler/APIHandler.js b/sources/src/node/handler/APIHandler.js old mode 100644 new mode 100755 index 62025c5..b4d2420 --- a/sources/src/node/handler/APIHandler.js +++ b/sources/src/node/handler/APIHandler.js @@ -300,10 +300,154 @@ var version = , "getChatHistory" : ["padID", "start", "end"] , "getChatHead" : ["padID"] } +, "1.2.10": + { "createGroup" : [] + , "createGroupIfNotExistsFor" : ["groupMapper"] + , "deleteGroup" : ["groupID"] + , "listPads" : ["groupID"] + , "listAllPads" : [] + , "createDiffHTML" : ["padID", "startRev", "endRev"] + , "createPad" : ["padID", "text"] + , "createGroupPad" : ["groupID", "padName", "text"] + , "createAuthor" : ["name"] + , "createAuthorIfNotExistsFor": ["authorMapper" , "name"] + , "listPadsOfAuthor" : ["authorID"] + , "createSession" : ["groupID", "authorID", "validUntil"] + , "deleteSession" : ["sessionID"] + , "getSessionInfo" : ["sessionID"] + , "listSessionsOfGroup" : ["groupID"] + , "listSessionsOfAuthor" : ["authorID"] + , "getText" : ["padID", "rev"] + , "setText" : ["padID", "text"] + , "getHTML" : ["padID", "rev"] + , "setHTML" : ["padID", "html"] + , "getAttributePool" : ["padID"] + , "getRevisionsCount" : ["padID"] + , "getRevisionChangeset" : ["padID", "rev"] + , "getLastEdited" : ["padID"] + , "deletePad" : ["padID"] + , "copyPad" : ["sourceID", "destinationID", "force"] + , "movePad" : ["sourceID", "destinationID", "force"] + , "getReadOnlyID" : ["padID"] + , "getPadID" : ["roID"] + , "setPublicStatus" : ["padID", "publicStatus"] + , "getPublicStatus" : ["padID"] + , "setPassword" : ["padID", "password"] + , "isPasswordProtected" : ["padID"] + , "listAuthorsOfPad" : ["padID"] + , "padUsersCount" : ["padID"] + , "getAuthorName" : ["authorID"] + , "padUsers" : ["padID"] + , "sendClientsMessage" : ["padID", "msg"] + , "listAllGroups" : [] + , "checkToken" : [] + , "getChatHistory" : ["padID"] + , "getChatHistory" : ["padID", "start", "end"] + , "getChatHead" : ["padID"] + } +, "1.2.11": + { "createGroup" : [] + , "createGroupIfNotExistsFor" : ["groupMapper"] + , "deleteGroup" : ["groupID"] + , "listPads" : ["groupID"] + , "listAllPads" : [] + , "createDiffHTML" : ["padID", "startRev", "endRev"] + , "createPad" : ["padID", "text"] + , "createGroupPad" : ["groupID", "padName", "text"] + , "createAuthor" : ["name"] + , "createAuthorIfNotExistsFor": ["authorMapper" , "name"] + , "listPadsOfAuthor" : ["authorID"] + , "createSession" : ["groupID", "authorID", "validUntil"] + , "deleteSession" : ["sessionID"] + , "getSessionInfo" : ["sessionID"] + , "listSessionsOfGroup" : ["groupID"] + , "listSessionsOfAuthor" : ["authorID"] + , "getText" : ["padID", "rev"] + , "setText" : ["padID", "text"] + , "getHTML" : ["padID", "rev"] + , "setHTML" : ["padID", "html"] + , "getAttributePool" : ["padID"] + , "getRevisionsCount" : ["padID"] + , "getSavedRevisionsCount" : ["padID"] + , "listSavedRevisions" : ["padID"] + , "saveRevision" : ["padID", "rev"] + , "getRevisionChangeset" : ["padID", "rev"] + , "getLastEdited" : ["padID"] + , "deletePad" : ["padID"] + , "copyPad" : ["sourceID", "destinationID", "force"] + , "movePad" : ["sourceID", "destinationID", "force"] + , "getReadOnlyID" : ["padID"] + , "getPadID" : ["roID"] + , "setPublicStatus" : ["padID", "publicStatus"] + , "getPublicStatus" : ["padID"] + , "setPassword" : ["padID", "password"] + , "isPasswordProtected" : ["padID"] + , "listAuthorsOfPad" : ["padID"] + , "padUsersCount" : ["padID"] + , "getAuthorName" : ["authorID"] + , "padUsers" : ["padID"] + , "sendClientsMessage" : ["padID", "msg"] + , "listAllGroups" : [] + , "checkToken" : [] + , "getChatHistory" : ["padID"] + , "getChatHistory" : ["padID", "start", "end"] + , "getChatHead" : ["padID"] + , "restoreRevision" : ["padID", "rev"] + } +, "1.2.12": + { "createGroup" : [] + , "createGroupIfNotExistsFor" : ["groupMapper"] + , "deleteGroup" : ["groupID"] + , "listPads" : ["groupID"] + , "listAllPads" : [] + , "createDiffHTML" : ["padID", "startRev", "endRev"] + , "createPad" : ["padID", "text"] + , "createGroupPad" : ["groupID", "padName", "text"] + , "createAuthor" : ["name"] + , "createAuthorIfNotExistsFor": ["authorMapper" , "name"] + , "listPadsOfAuthor" : ["authorID"] + , "createSession" : ["groupID", "authorID", "validUntil"] + , "deleteSession" : ["sessionID"] + , "getSessionInfo" : ["sessionID"] + , "listSessionsOfGroup" : ["groupID"] + , "listSessionsOfAuthor" : ["authorID"] + , "getText" : ["padID", "rev"] + , "setText" : ["padID", "text"] + , "getHTML" : ["padID", "rev"] + , "setHTML" : ["padID", "html"] + , "getAttributePool" : ["padID"] + , "getRevisionsCount" : ["padID"] + , "getSavedRevisionsCount" : ["padID"] + , "listSavedRevisions" : ["padID"] + , "saveRevision" : ["padID", "rev"] + , "getRevisionChangeset" : ["padID", "rev"] + , "getLastEdited" : ["padID"] + , "deletePad" : ["padID"] + , "copyPad" : ["sourceID", "destinationID", "force"] + , "movePad" : ["sourceID", "destinationID", "force"] + , "getReadOnlyID" : ["padID"] + , "getPadID" : ["roID"] + , "setPublicStatus" : ["padID", "publicStatus"] + , "getPublicStatus" : ["padID"] + , "setPassword" : ["padID", "password"] + , "isPasswordProtected" : ["padID"] + , "listAuthorsOfPad" : ["padID"] + , "padUsersCount" : ["padID"] + , "getAuthorName" : ["authorID"] + , "padUsers" : ["padID"] + , "sendClientsMessage" : ["padID", "msg"] + , "listAllGroups" : [] + , "checkToken" : [] + , "appendChatMessage" : ["padID", "text", "authorID", "time"] + , "getChatHistory" : ["padID"] + , "getChatHistory" : ["padID", "start", "end"] + , "getChatHead" : ["padID"] + , "restoreRevision" : ["padID", "rev"] + } }; // set the latest available API version here -exports.latestApiVersion = '1.2.9'; +exports.latestApiVersion = '1.2.12'; // exports the versions so it can be used by the new Swagger endpoint exports.version = version; @@ -359,6 +503,7 @@ exports.handle = function(apiVersion, functionName, fields, req, res) if(fields["apikey"] != apikey.trim()) { + res.statusCode = 401; res.send({code: 4, message: "no or wrong API Key", data: null}); return; } diff --git a/sources/src/node/handler/ExportHandler.js b/sources/src/node/handler/ExportHandler.js old mode 100644 new mode 100755 index 8ff5bc4..f20e871 --- a/sources/src/node/handler/ExportHandler.js +++ b/sources/src/node/handler/ExportHandler.js @@ -4,6 +4,7 @@ /* * 2011 Peter 'Pita' Martischka (Primary Technology Ltd) + * 2014 John McLear (Etherpad Foundation / McLear Ltd) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,12 +22,12 @@ var ERR = require("async-stacktrace"); var exporthtml = require("../utils/ExportHtml"); var exporttxt = require("../utils/ExportTxt"); -var exportdokuwiki = require("../utils/ExportDokuWiki"); -var padManager = require("../db/PadManager"); +var exportEtherpad = require("../utils/ExportEtherpad"); var async = require("async"); var fs = require("fs"); var settings = require('../utils/Settings'); var os = require('os'); +var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks"); //load abiword only if its enabled if(settings.abiword != null) @@ -45,175 +46,176 @@ if(os.type().indexOf("Windows") > -1) */ exports.doExport = function(req, res, padId, type) { - //tell the browser that this is a downloadable file - res.attachment(padId + "." + type); + var fileName = padId; - //if this is a plain text export, we can do this directly - // We have to over engineer this because tabs are stored as attributes and not plain text + // allow fileName to be overwritten by a hook, the type type is kept static for security reasons + hooks.aCallFirst("exportFileName", padId, + function(err, hookFileName){ + // if fileName is set then set it to the padId, note that fileName is returned as an array. + if(hookFileName.length) fileName = hookFileName; - if(type == "txt") - { - var txt; - var randNum; - var srcFile, destFile; - - async.series([ - //render the txt document - function(callback) - { - exporttxt.getPadTXTDocument(padId, req.params.rev, false, function(err, _txt) - { - if(ERR(err, callback)) return; - txt = _txt; - callback(); - }); - }, - //decide what to do with the txt export - function(callback) - { - //if this is a txt export, we can send this from here directly - res.send(txt); - callback("stop"); - }, - //send the convert job to abiword - function(callback) - { - //ensure html can be collected by the garbage collector - txt = null; - - destFile = tempDirectory + "/eplite_export_" + randNum + "." + type; - abiword.convertFile(srcFile, destFile, type, callback); - }, - //send the file - function(callback) - { - res.sendfile(destFile, null, callback); - }, - //clean up temporary files - function(callback) - { - async.parallel([ - function(callback) - { - fs.unlink(srcFile, callback); - }, - function(callback) - { - //100ms delay to accomidate for slow windows fs - if(os.type().indexOf("Windows") > -1) - { - setTimeout(function() - { - fs.unlink(destFile, callback); - }, 100); - } - else - { - fs.unlink(destFile, callback); - } + //tell the browser that this is a downloadable file + res.attachment(fileName + "." + type); + + //if this is a plain text export, we can do this directly + // We have to over engineer this because tabs are stored as attributes and not plain text + if(type == "etherpad"){ + exportEtherpad.getPadRaw(padId, function(err, pad){ + if(!err){ + res.send(pad); + // return; } - ], callback); - } - ], function(err) - { - if(err && err != "stop") ERR(err); - }) - } - else if(type == 'dokuwiki') - { - var randNum; - var srcFile, destFile; - - async.series([ - //render the dokuwiki document - function(callback) - { - exportdokuwiki.getPadDokuWikiDocument(padId, req.params.rev, function(err, dokuwiki) - { - res.send(dokuwiki); - callback("stop"); }); - }, - ], function(err) - { - if(err && err != "stop") throw err; - }); - } - else - { - var html; - var randNum; - var srcFile, destFile; - - async.series([ - //render the html document - function(callback) - { - exporthtml.getPadHTMLDocument(padId, req.params.rev, false, function(err, _html) - { - if(ERR(err, callback)) return; - html = _html; - callback(); - }); - }, - //decide what to do with the html export - function(callback) - { - //if this is a html export, we can send this from here directly - if(type == "html") - { - res.send(html); - callback("stop"); - } - else //write the html export to a file - { - randNum = Math.floor(Math.random()*0xFFFFFFFF); - srcFile = tempDirectory + "/eplite_export_" + randNum + ".html"; - fs.writeFile(srcFile, html, callback); - } - }, - //send the convert job to abiword - function(callback) - { - //ensure html can be collected by the garbage collector - html = null; - - destFile = tempDirectory + "/eplite_export_" + randNum + "." + type; - abiword.convertFile(srcFile, destFile, type, callback); - }, - //send the file - function(callback) - { - res.sendfile(destFile, null, callback); - }, - //clean up temporary files - function(callback) - { - async.parallel([ - function(callback) - { - fs.unlink(srcFile, callback); - }, - function(callback) - { - //100ms delay to accomidate for slow windows fs - if(os.type().indexOf("Windows") > -1) - { - setTimeout(function() - { - fs.unlink(destFile, callback); - }, 100); - } - else - { - fs.unlink(destFile, callback); - } - } - ], callback); } - ], function(err) - { - if(err && err != "stop") ERR(err); - }) - } + else if(type == "txt") + { + var txt; + var randNum; + var srcFile, destFile; + + async.series([ + //render the txt document + function(callback) + { + exporttxt.getPadTXTDocument(padId, req.params.rev, false, function(err, _txt) + { + if(ERR(err, callback)) return; + txt = _txt; + callback(); + }); + }, + //decide what to do with the txt export + function(callback) + { + //if this is a txt export, we can send this from here directly + res.send(txt); + callback("stop"); + }, + //send the convert job to abiword + function(callback) + { + //ensure html can be collected by the garbage collector + txt = null; + + destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type; + abiword.convertFile(srcFile, destFile, type, callback); + }, + //send the file + function(callback) + { + res.sendFile(destFile, null, callback); + }, + //clean up temporary files + function(callback) + { + async.parallel([ + function(callback) + { + fs.unlink(srcFile, callback); + }, + function(callback) + { + //100ms delay to accomidate for slow windows fs + if(os.type().indexOf("Windows") > -1) + { + setTimeout(function() + { + fs.unlink(destFile, callback); + }, 100); + } + else + { + fs.unlink(destFile, callback); + } + } + ], callback); + } + ], function(err) + { + if(err && err != "stop") ERR(err); + }) + } + else + { + var html; + var randNum; + var srcFile, destFile; + + async.series([ + //render the html document + function(callback) + { + exporthtml.getPadHTMLDocument(padId, req.params.rev, false, function(err, _html) + { + if(ERR(err, callback)) return; + html = _html; + callback(); + }); + }, + //decide what to do with the html export + function(callback) + { + //if this is a html export, we can send this from here directly + if(type == "html") + { + // do any final changes the plugin might want to make cake + hooks.aCallFirst("exportHTMLSend", html, function(err, newHTML){ + if(newHTML.length) html = newHTML; + res.send(html); + callback("stop"); + }); + } + else //write the html export to a file + { + randNum = Math.floor(Math.random()*0xFFFFFFFF); + srcFile = tempDirectory + "/etherpad_export_" + randNum + ".html"; + fs.writeFile(srcFile, html, callback); + } + }, + //send the convert job to abiword + function(callback) + { + //ensure html can be collected by the garbage collector + html = null; + + destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type; + abiword.convertFile(srcFile, destFile, type, callback); + }, + //send the file + function(callback) + { + res.sendFile(destFile, null, callback); + }, + //clean up temporary files + function(callback) + { + async.parallel([ + function(callback) + { + fs.unlink(srcFile, callback); + }, + function(callback) + { + //100ms delay to accomidate for slow windows fs + if(os.type().indexOf("Windows") > -1) + { + setTimeout(function() + { + fs.unlink(destFile, callback); + }, 100); + } + else + { + fs.unlink(destFile, callback); + } + } + ], callback); + } + ], function(err) + { + if(err && err != "stop") ERR(err); + }) + } + } + ); }; diff --git a/sources/src/node/handler/ImportHandler.js b/sources/src/node/handler/ImportHandler.js old mode 100644 new mode 100755 index f58076b..026ce02 --- a/sources/src/node/handler/ImportHandler.js +++ b/sources/src/node/handler/ImportHandler.js @@ -5,6 +5,7 @@ /* * 2011 Peter 'Pita' Martischka (Primary Technology Ltd) * 2012 Iván Eixarch + * 2014 John McLear (Etherpad Foundation / McLear Ltd) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +30,7 @@ var ERR = require("async-stacktrace") , formidable = require('formidable') , os = require("os") , importHtml = require("../utils/ImportHtml") + , importEtherpad = require("../utils/ImportEtherpad") , log4js = require("log4js") , hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks.js"); @@ -53,7 +55,8 @@ exports.doImport = function(req, res, padId) var srcFile, destFile , pad , text - , importHandledByPlugin; + , importHandledByPlugin + , directDatabaseAccess; var randNum = Math.floor(Math.random()*0xFFFFFFFF); @@ -83,7 +86,7 @@ exports.doImport = function(req, res, padId) //this allows us to accept source code files like .c or .java function(callback) { var fileEnding = path.extname(srcFile).toLowerCase() - , knownFileEndings = [".txt", ".doc", ".docx", ".pdf", ".odt", ".html", ".htm"] + , knownFileEndings = [".txt", ".doc", ".docx", ".pdf", ".odt", ".html", ".htm", ".etherpad"] , fileEndingKnown = (knownFileEndings.indexOf(fileEnding) > -1); //if the file ending is known, continue as normal @@ -92,29 +95,61 @@ exports.doImport = function(req, res, padId) } //we need to rename this file with a .txt ending else { - var oldSrcFile = srcFile; - srcFile = path.join(path.dirname(srcFile),path.basename(srcFile, fileEnding)+".txt"); - fs.rename(oldSrcFile, srcFile, callback); + if(settings.allowUnknownFileEnds === true){ + var oldSrcFile = srcFile; + srcFile = path.join(path.dirname(srcFile),path.basename(srcFile, fileEnding)+".txt"); + fs.rename(oldSrcFile, srcFile, callback); + }else{ + console.warn("Not allowing unknown file type to be imported", fileEnding); + callback("uploadFailed"); + } } }, function(callback){ - destFile = path.join(tmpDirectory, "eplite_import_" + randNum + ".htm"); + destFile = path.join(tmpDirectory, "etherpad_import_" + randNum + ".htm"); // Logic for allowing external Import Plugins hooks.aCallAll("import", {srcFile: srcFile, destFile: destFile}, function(err, result){ if(ERR(err, callback)) return callback(); if(result.length > 0){ // This feels hacky and wrong.. importHandledByPlugin = true; - callback(); - }else{ - callback(); } + callback(); }); }, + function(callback) { + var fileEnding = path.extname(srcFile).toLowerCase() + var fileIsEtherpad = (fileEnding === ".etherpad"); + + if(fileIsEtherpad){ + // we do this here so we can see if the pad has quit ea few edits + padManager.getPad(padId, function(err, _pad){ + var headCount = _pad.head; + if(headCount >= 10){ + apiLogger.warn("Direct database Import attempt of a pad that already has content, we wont be doing this") + return callback("padHasData"); + }else{ + fs.readFile(srcFile, "utf8", function(err, _text){ + directDatabaseAccess = true; + importEtherpad.setPadRaw(padId, _text, function(err){ + callback(); + }); + }); + } + }); + }else{ + callback(); + } + }, //convert file to html function(callback) { - if(!importHandledByPlugin){ - if (abiword) { + if(!importHandledByPlugin && !directDatabaseAccess){ + var fileEnding = path.extname(srcFile).toLowerCase(); + var fileIsHTML = (fileEnding === ".html" || fileEnding === ".htm"); + var fileIsTXT = (fileEnding === ".txt"); + if (fileIsTXT) abiword = false; // Don't use abiword for text files + // See https://github.com/ether/etherpad-lite/issues/2572 + if (abiword && !fileIsHTML) { abiword.convertFile(srcFile, destFile, "htm", function(err) { //catch convert errors if(err) { @@ -134,7 +169,7 @@ exports.doImport = function(req, res, padId) }, function(callback) { - if (!abiword) { + if (!abiword && !directDatabaseAccess){ // Read the file with no encoding for raw buffer access. fs.readFile(destFile, function(err, buf) { if (err) throw err; @@ -168,66 +203,101 @@ exports.doImport = function(req, res, padId) //read the text function(callback) { - fs.readFile(destFile, "utf8", function(err, _text){ - if(ERR(err, callback)) return; - text = _text; - // Title needs to be stripped out else it appends it to the pad.. - text = text.replace("", "<!-- <title>"); - text = text.replace("","-->"); + if(!directDatabaseAccess){ + fs.readFile(destFile, "utf8", function(err, _text){ + if(ERR(err, callback)) return; + text = _text; + // Title needs to be stripped out else it appends it to the pad.. + text = text.replace("", "<!-- <title>"); + text = text.replace("","-->"); - //node on windows has a delay on releasing of the file lock. - //We add a 100ms delay to work around this - if(os.type().indexOf("Windows") > -1){ - setTimeout(function() {callback();}, 100); - } else { - callback(); - } - }); + //node on windows has a delay on releasing of the file lock. + //We add a 100ms delay to work around this + if(os.type().indexOf("Windows") > -1){ + setTimeout(function() {callback();}, 100); + } else { + callback(); + } + }); + }else{ + callback(); + } }, //change text of the pad and broadcast the changeset function(callback) { - var fileEnding = path.extname(srcFile).toLowerCase(); - if (abiword || fileEnding == ".htm" || fileEnding == ".html") { - try{ - importHtml.setPadHTML(pad, text); - }catch(e){ - apiLogger.warn("Error importing, possibly caused by malformed HTML"); + if(!directDatabaseAccess){ + var fileEnding = path.extname(srcFile).toLowerCase(); + if (importHandledByPlugin || abiword || fileEnding == ".htm" || fileEnding == ".html") { + importHtml.setPadHTML(pad, text, function(e){ + if(e) apiLogger.warn("Error importing, possibly caused by malformed HTML"); + }); + } else { + pad.setText(text); } - } else { - pad.setText(text); } - padMessageHandler.updatePadClients(pad, callback); + + // Load the Pad into memory then brodcast updates to all clients + padManager.unloadPad(padId); + padManager.getPad(padId, function(err, _pad){ + var pad = _pad; + padManager.unloadPad(padId); + // direct Database Access means a pad user should perform a switchToPad + // and not attempt to recieve updated pad data.. + if(!directDatabaseAccess){ + padMessageHandler.updatePadClients(pad, function(){ + callback(); + }); + }else{ + callback(); + } + }); + }, //clean up temporary files function(callback) { - //for node < 0.7 compatible - var fileExists = fs.exists || path.exists; - async.parallel([ - function(callback){ - fileExists (srcFile, function(exist) { (exist)? fs.unlink(srcFile, callback): callback(); }); - }, - function(callback){ - fileExists (destFile, function(exist) { (exist)? fs.unlink(destFile, callback): callback(); }); - } - ], callback); + if(!directDatabaseAccess){ + //for node < 0.7 compatible + var fileExists = fs.exists || path.exists; + async.parallel([ + function(callback){ + fileExists (srcFile, function(exist) { (exist)? fs.unlink(srcFile, callback): callback(); }); + }, + function(callback){ + fileExists (destFile, function(exist) { (exist)? fs.unlink(destFile, callback): callback(); }); + } + ], callback); + }else{ + callback(); + } } ], function(err) { - var status = "ok"; //check for known errors and replace the status - if(err == "uploadFailed" || err == "convertFailed") + if(err == "uploadFailed" || err == "convertFailed" || err == "padHasData") { status = err; err = null; } ERR(err); - + //close the connection - res.send("", 200); + res.send( + " \ + \ + \ + " + ); }); } diff --git a/sources/src/node/handler/PadMessageHandler.js b/sources/src/node/handler/PadMessageHandler.js old mode 100644 new mode 100755 index 26eb17a..e15af1a --- a/sources/src/node/handler/PadMessageHandler.js +++ b/sources/src/node/handler/PadMessageHandler.js @@ -37,6 +37,7 @@ var _ = require('underscore'); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks.js"); var channels = require("channels"); var stats = require('../stats'); +var remoteAddress = require("../utils/RemoteAddress").remoteAddress; /** * A associative array that saves informations about a session @@ -93,8 +94,18 @@ exports.handleConnect = function(client) */ exports.kickSessionsFromPad = function(padID) { + if(typeof socketio.sockets['clients'] !== 'function') + return; + //skip if there is nobody on this pad - if(socketio.sockets.clients(padID).length == 0) + var roomClients = [], room = socketio.sockets.adapter.rooms[padID]; + if (room) { + for (var id in room) { + roomClients.push(socketio.sockets.adapter.nsp.connected[id]); + } + } + + if(roomClients.length == 0) return; //disconnect everyone from this pad @@ -115,14 +126,16 @@ exports.handleDisconnect = function(client) //if this connection was already etablished with a handshake, send a disconnect message to the others if(session && session.author) { - client.get('remoteAddress', function(er, ip) { - //Anonymize the IP address if IP logging is disabled - if(settings.disableIPlogging) { - ip = 'ANONYMOUS'; - } - accessLogger.info('[LEAVE] Pad "'+session.padId+'": Author "'+session.author+'" on client '+client.id+' with IP "'+ip+'" left the pad') - }) + // Get the IP address from our persistant object + var ip = remoteAddress[client.id]; + + // Anonymize the IP address if IP logging is disabled + if(settings.disableIPlogging) { + ip = 'ANONYMOUS'; + } + + accessLogger.info('[LEAVE] Pad "'+session.padId+'": Author "'+session.author+'" on client '+client.id+' with IP "'+ip+'" left the pad') //get the author color out of the db authorManager.getAuthorColorId(session.author, function(err, color) @@ -145,6 +158,9 @@ exports.handleDisconnect = function(client) //Go trough all user that are still on the pad, and send them the USER_LEAVE message client.broadcast.to(session.padId).json.send(messageToTheOtherUsers); + + // Allow plugins to hook into users leaving the pad + hooks.callAll("userLeave", session); }); } @@ -217,6 +233,8 @@ exports.handleMessage = function(client, message) } else { messageLogger.warn("Dropped message, unknown COLLABROOM Data Type " + message.data.type); } + } else if(message.type == "SWITCH_TO_PAD") { + handleSwitchToPad(client, message); } else { messageLogger.warn("Dropped message, unknown Message Type " + message.type); } @@ -230,18 +248,7 @@ exports.handleMessage = function(client, message) { // client tried to auth for the first time (first msg from the client) if(message.type == "CLIENT_READY") { - // Remember this information since we won't - // have the cookie in further socket.io messages. - // This information will be used to check if - // the sessionId of this connection is still valid - // since it could have been deleted by the API. - sessioninfos[client.id].auth = - { - sessionID: message.sessionID, - padID: message.padId, - token : message.token, - password: message.password - }; + createSessionInfo(client, message); } // Note: message.sessionID is an entirely different kind of @@ -250,11 +257,10 @@ exports.handleMessage = function(client, message) // FIXME: Use a hook instead // FIXME: Allow to override readwrite access with readonly - // FIXME: A message might arrive but wont have an auth object, this is obviously bad so we should deny it // Simulate using the load testing tool if(!sessioninfos[client.id].auth){ console.error("Auth was never applied to a session. If you are using the stress-test tool then restart Etherpad and the Stress test tool.") - callback(); + return; }else{ var auth = sessioninfos[client.id].auth; var checkAccessCallback = function(err, statusObject) @@ -490,14 +496,19 @@ function handleSuggestUserName(client, message) return; } - var padId = sessioninfos[client.id].padId, - clients = socketio.sockets.clients(padId); + var padId = sessioninfos[client.id].padId; + var roomClients = [], room = socketio.sockets.adapter.rooms[padId]; + if (room) { + for (var id in room) { + roomClients.push(socketio.sockets.adapter.nsp.connected[id]); + } + } //search the author and send him this message - for(var i = 0; i < clients.length; i++) { - var session = sessioninfos[clients[i].id]; + for(var i = 0; i < roomClients.length; i++) { + var session = sessioninfos[roomClients[i].id]; if(session && session.author == message.data.payload.unnamedId) { - clients[i].json.send(message); + roomClients[i].json.send(message); break; } } @@ -645,12 +656,17 @@ function handleUserChanges(data, cb) , op while(iterator.hasNext()) { op = iterator.next() - if(op.opcode != '+') continue; + + //+ can add text with attribs + //= can change or add attribs + //- can have attribs, but they are discarded and don't show up in the attribs - but do show up in the pool + op.attribs.split('*').forEach(function(attr) { if(!attr) return attr = wireApool.getAttrib(attr) if(!attr) return - if('author' == attr[0] && attr[1] != thisSession.author) throw new Error("Trying to submit changes as another author in changeset "+changeset); + //the empty author is used in the clearAuthorship functionality so this should be the only exception + if('author' == attr[0] && (attr[1] != thisSession.author && attr[1] != '')) throw new Error("Trying to submit changes as another author in changeset "+changeset); }) } @@ -691,6 +707,14 @@ function handleUserChanges(data, cb) // and can be applied after "c". try { + // a changeset can be based on an old revision with the same changes in it + // prevent eplite from accepting it TODO: better send the client a NEW_CHANGES + // of that revision + if(baseRev+1 == r && c == changeset) { + client.json.send({disconnect:"badChangeset"}); + stats.meter('failedChangesets').mark(); + return callback(new Error("Won't apply USER_CHANGES, because it contains an already accepted changeset")); + } changeset = Changeset.follow(c, changeset, false, apool); }catch(e){ client.json.send({disconnect:"badChangeset"}); @@ -721,7 +745,16 @@ function handleUserChanges(data, cb) return callback(new Error("Can't apply USER_CHANGES "+changeset+" with oldLen " + Changeset.oldLen(changeset) + " to document of length " + prevText.length)); } - pad.appendRevision(changeset, thisSession.author); + try + { + pad.appendRevision(changeset, thisSession.author); + } + catch(e) + { + client.json.send({disconnect:"badChangeset"}); + stats.meter('failedChangesets').mark(); + return callback(e) + } var correctionChangeset = _correctMarkersInPad(pad.atext, pad.pool); if (correctionChangeset) { @@ -750,7 +783,13 @@ function handleUserChanges(data, cb) exports.updatePadClients = function(pad, callback) { //skip this step if noone is on this pad - var roomClients = socketio.sockets.clients(pad.id); + var roomClients = [], room = socketio.sockets.adapter.rooms[pad.id]; + if (room) { + for (var id in room) { + roomClients.push(socketio.sockets.adapter.nsp.connected[id]); + } + } + if(roomClients.length==0) return callback(); @@ -763,10 +802,8 @@ exports.updatePadClients = function(pad, callback) var revCache = {}; //go trough all sessions on this pad - async.forEach(roomClients, function(client, callback) - { + async.forEach(roomClients, function(client, callback){ var sid = client.id; - //https://github.com/caolan/async#whilst //send them all new changesets async.whilst( @@ -813,10 +850,10 @@ exports.updatePadClients = function(pad, callback) client.json.send(wireMsg); } - - sessioninfos[sid].time = currentTime; - sessioninfos[sid].rev = r; - + if(sessioninfos[sid]){ + sessioninfos[sid].time = currentTime; + sessioninfos[sid].rev = r; + } callback(null); } ], callback); @@ -872,6 +909,48 @@ function _correctMarkersInPad(atext, apool) { return builder.toString(); } +function handleSwitchToPad(client, message) +{ + // clear the session and leave the room + var currentSession = sessioninfos[client.id]; + var padId = currentSession.padId; + var roomClients = [], room = socketio.sockets.adapter.rooms[padId]; + if (room) { + for (var id in room) { + roomClients.push(socketio.sockets.adapter.nsp.connected[id]); + } + } + + for(var i = 0; i < roomClients.length; i++) { + var sinfo = sessioninfos[roomClients[i].id]; + if(sinfo && sinfo.author == currentSession.author) { + // fix user's counter, works on page refresh or if user closes browser window and then rejoins + sessioninfos[roomClients[i].id] = {}; + roomClients[i].leave(padId); + } + } + + // start up the new pad + createSessionInfo(client, message); + handleClientReady(client, message); +} + +function createSessionInfo(client, message) +{ + // Remember this information since we won't + // have the cookie in further socket.io messages. + // This information will be used to check if + // the sessionId of this connection is still valid + // since it could have been deleted by the API. + sessioninfos[client.id].auth = + { + sessionID: message.sessionID, + padID: message.padId, + token : message.token, + password: message.password + }; +} + /** * Handles a CLIENT_READY. A CLIENT_READY is the first message from the client to the server. The Client sends his token * and the pad it wants to enter. The Server answers with the inital values (clientVars) of the pad @@ -995,6 +1074,11 @@ function handleClientReady(client, message) { authorManager.getAuthor(authorId, function(err, author) { + if(!author && !err) + { + messageLogger.error("There is no author for authorId:", authorId); + return callback(); + } if(ERR(err, callback)) return; historicalAuthorData[authorId] = {name: author.name, colorId: author.colorId}; // Filter author attribs (e.g. don't send author's pads to all clients) callback(); @@ -1012,7 +1096,13 @@ function handleClientReady(client, message) return callback(); //Check if this author is already on the pad, if yes, kick the other sessions! - var roomClients = socketio.sockets.clients(padIds.padId); + var roomClients = [], room = socketio.sockets.adapter.rooms[pad.id]; + if (room) { + for (var id in room) { + roomClients.push(socketio.sockets.adapter.nsp.connected[id]); + } + } + for(var i = 0; i < roomClients.length; i++) { var sinfo = sessioninfos[roomClients[i].id]; if(sinfo && sinfo.author == author) { @@ -1029,19 +1119,19 @@ function handleClientReady(client, message) sessioninfos[client.id].readonly = padIds.readonly; //Log creation/(re-)entering of a pad - client.get('remoteAddress', function(er, ip) { - //Anonymize the IP address if IP logging is disabled - if(settings.disableIPlogging) { - ip = 'ANONYMOUS'; - } + var ip = remoteAddress[client.id]; - if(pad.head > 0) { - accessLogger.info('[ENTER] Pad "'+padIds.padId+'": Client '+client.id+' with IP "'+ip+'" entered the pad'); - } - else if(pad.head == 0) { - accessLogger.info('[CREATE] Pad "'+padIds.padId+'": Client '+client.id+' with IP "'+ip+'" created the pad'); - } - }) + //Anonymize the IP address if IP logging is disabled + if(settings.disableIPlogging) { + ip = 'ANONYMOUS'; + } + + if(pad.head > 0) { + accessLogger.info('[ENTER] Pad "'+padIds.padId+'": Client '+client.id+' with IP "'+ip+'" entered the pad'); + } + else if(pad.head == 0) { + accessLogger.info('[CREATE] Pad "'+padIds.padId+'": Client '+client.id+' with IP "'+ip+'" created the pad'); + } //If this is a reconnect, we don't have to send the client the ClientVars again if(message.reconnect == true) @@ -1092,6 +1182,7 @@ function handleClientReady(client, message) "userIsGuest": true, "userColor": authorColorId, "padId": message.padId, + "padOptions": settings.padOptions, "initialTitle": "Pad: " + message.padId, "opts": {}, // tell the client the number of the latest chat-message, which will be @@ -1162,7 +1253,14 @@ function handleClientReady(client, message) client.broadcast.to(padIds.padId).json.send(messageToTheOtherUsers); //Run trough all sessions of this pad - async.forEach(socketio.sockets.clients(padIds.padId), function(roomClient, callback) + var roomClients = [], room = socketio.sockets.adapter.rooms[pad.id]; + if (room) { + for (var id in room) { + roomClients.push(socketio.sockets.adapter.nsp.connected[id]); + } + } + + async.forEach(roomClients, function(roomClient, callback) { var author; @@ -1537,10 +1635,15 @@ function composePadChangesets(padId, startNum, endNum, callback) changeset = changesets[startNum]; var pool = pad.apool(); - for(var r=startNum+1;r' + real_url + ''); + res.status(302).send('You should be redirected to ' + real_url + ''); } //the pad id was fine, so just render it else diff --git a/sources/src/node/hooks/express/socketio.js b/sources/src/node/hooks/express/socketio.js old mode 100644 new mode 100755 index 524bab3..23622f3 --- a/sources/src/node/hooks/express/socketio.js +++ b/sources/src/node/hooks/express/socketio.js @@ -1,26 +1,37 @@ -var log4js = require('log4js'); -var socketio = require('socket.io'); var settings = require('../../utils/Settings'); +var socketio = require('socket.io'); var socketIORouter = require("../../handler/SocketIORouter"); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks"); var webaccess = require("ep_etherpad-lite/node/hooks/express/webaccess"); var padMessageHandler = require("../../handler/PadMessageHandler"); -var connect = require('connect'); +var cookieParser = require('cookie-parser'); +var sessionModule = require('express-session'); exports.expressCreateServer = function (hook_name, args, cb) { //init socket.io and redirect all requests to the MessageHandler - var io = socketio.listen(args.server); + // there shouldn't be a browser that isn't compatible to all + // transports in this list at once + // e.g. XHR is disabled in IE by default, so in IE it should use jsonp-polling + var io = socketio({ + transports: settings.socketTransportProtocols + }).listen(args.server); /* Require an express session cookie to be present, and load the * session. See http://www.danielbaulig.de/socket-ioexpress for more * info */ - io.set('authorization', function (data, accept) { - if (!data.headers.cookie) return accept('No session cookie transmitted.', false); + var cookieParserFn = cookieParser(webaccess.secret, {}); - // Use connect's cookie parser, because it knows how to parse signed cookies - connect.cookieParser(webaccess.secret)(data, {}, function(err){ + io.use(function(socket, accept) { + var data = socket.request; + // Use a setting if we want to allow load Testing + if(!data.headers.cookie && settings.loadTest){ + accept(null, true); + }else{ + if (!data.headers.cookie) return accept('No session cookie transmitted.', false); + } + cookieParserFn(data, {}, function(err){ if(err) { console.error(err); accept("Couldn't parse request cookies. ", false); @@ -30,41 +41,23 @@ exports.expressCreateServer = function (hook_name, args, cb) { data.sessionID = data.signedCookies.express_sid; args.app.sessionStore.get(data.sessionID, function (err, session) { if (err || !session) return accept('Bad session / session has expired', false); - data.session = new connect.middleware.session.Session(data, session); + data.session = new sessionModule.Session(data, session); accept(null, true); }); }); }); - // there shouldn't be a browser that isn't compatible to all - // transports in this list at once - // e.g. XHR is disabled in IE by default, so in IE it should use jsonp-polling - io.set('transports', settings.socketTransportProtocols ); - - var socketIOLogger = log4js.getLogger("socket.io"); - io.set('logger', { - debug: function (str) - { - socketIOLogger.debug.apply(socketIOLogger, arguments); - }, - info: function (str) - { - socketIOLogger.info.apply(socketIOLogger, arguments); - }, - warn: function (str) - { - socketIOLogger.warn.apply(socketIOLogger, arguments); - }, - error: function (str) - { - socketIOLogger.error.apply(socketIOLogger, arguments); - }, - }); + // var socketIOLogger = log4js.getLogger("socket.io"); + // Debug logging now has to be set at an environment level, this is stupid. + // https://github.com/Automattic/socket.io/wiki/Migrating-to-1.0 + // This debug logging environment is set in Settings.js //minify socket.io javascript - if(settings.minify) - io.enable('browser client minification'); - + // Due to a shitty decision by the SocketIO team minification is + // no longer available, details available at: + // http://stackoverflow.com/questions/23981741/minify-socket-io-socket-io-js-with-1-0 + // if(settings.minify) io.enable('browser client minification'); + //Initalize the Socket.IO Router socketIORouter.setSocketIO(io); socketIORouter.addComponent("pad", padMessageHandler); diff --git a/sources/src/node/hooks/express/specialpages.js b/sources/src/node/hooks/express/specialpages.js old mode 100644 new mode 100755 index 063328f..0370c4f --- a/sources/src/node/hooks/express/specialpages.js +++ b/sources/src/node/hooks/express/specialpages.js @@ -19,13 +19,13 @@ exports.expressCreateServer = function (hook_name, args, cb) { args.app.get('/robots.txt', function(req, res) { var filePath = path.normalize(__dirname + "/../../../static/custom/robots.txt"); - res.sendfile(filePath, function(err) + res.sendFile(filePath, function(err) { //there is no custom favicon, send the default robots.txt which dissallows all if(err) { filePath = path.normalize(__dirname + "/../../../static/robots.txt"); - res.sendfile(filePath); + res.sendFile(filePath); } }); }); @@ -60,13 +60,13 @@ exports.expressCreateServer = function (hook_name, args, cb) { args.app.get( /\/favicon.ico$/, function(req, res) { var filePath = path.normalize(__dirname + "/../../../static/custom/favicon.ico"); - res.sendfile(filePath, function(err) + res.sendFile(filePath, function(err) { //there is no custom favicon, send the default favicon if(err) { filePath = path.normalize(__dirname + "/../../../static/favicon.ico"); - res.sendfile(filePath); + res.sendFile(filePath); } }); }); diff --git a/sources/src/node/hooks/express/static.js b/sources/src/node/hooks/express/static.js old mode 100644 new mode 100755 index 7d654c1..34fce29 --- a/sources/src/node/hooks/express/static.js +++ b/sources/src/node/hooks/express/static.js @@ -1,18 +1,15 @@ -var path = require('path'); var minify = require('../../utils/Minify'); var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins"); var CachingMiddleware = require('../../utils/caching_middleware'); var settings = require("../../utils/Settings"); -var Yajsml = require('yajsml'); -var fs = require("fs"); -var ERR = require("async-stacktrace"); +var Yajsml = require('etherpad-yajsml'); var _ = require("underscore"); exports.expressCreateServer = function (hook_name, args, cb) { // Cache both minified and static. var assetCache = new CachingMiddleware; - args.app.all('/(javascripts|static)/*', assetCache.handle); + args.app.all(/\/javascripts\/(.*)/, assetCache.handle); // Minify will serve static files compressed (minify enabled). It also has // file-specific hacks for ace/require-kernel/etc. @@ -33,7 +30,8 @@ exports.expressCreateServer = function (hook_name, args, cb) { Yajsml.associators.associationsForSimpleMapping(minify.tar); var associator = new StaticAssociator(associations); jsServer.setAssociator(associator); - args.app.use(jsServer); + + args.app.use(jsServer.handle.bind(jsServer)); // serve plugin definitions // not very static, but served here so that client can do require("pluginfw/static/js/plugin-definitions.js"); diff --git a/sources/src/node/hooks/express/swagger.js b/sources/src/node/hooks/express/swagger.js old mode 100644 new mode 100755 index e8daa61..f606eb8 --- a/sources/src/node/hooks/express/swagger.js +++ b/sources/src/node/hooks/express/swagger.js @@ -1,4 +1,3 @@ -var log4js = require('log4js'); var express = require('express'); var apiHandler = require('../../handler/APIHandler'); var apiCaller = require('./apicalls').apiCaller; @@ -285,6 +284,10 @@ var API = { } }, "response": {"chatHead":{"type":"Message"}} + }, + "appendChatMessage": { + "func": "appendChatMessage", + "description": "appends a chat message" } } }; @@ -356,7 +359,17 @@ exports.expressCreateServer = function (hook_name, args, cb) { args.app.use(basePath, subpath); - swagger.setAppHandler(subpath); + //hack! + var swagger_temp = swagger + swagger = swagger.createNew(subpath); + swagger.params = swagger_temp.params + swagger.queryParam = swagger_temp.queryParam + swagger.pathParam = swagger_temp.pathParam + swagger.bodyParam = swagger_temp.bodyParam + swagger.formParam = swagger_temp.formParam + swagger.headerParam = swagger_temp.headerParam + swagger.error = swagger_temp.error + //swagger.setAppHandler(subpath); swagger.addModels(swaggerModels); diff --git a/sources/src/node/hooks/express/tests.js b/sources/src/node/hooks/express/tests.js old mode 100644 new mode 100755 index 3157d68..d0dcc0c --- a/sources/src/node/hooks/express/tests.js +++ b/sources/src/node/hooks/express/tests.js @@ -23,6 +23,10 @@ exports.expressCreateServer = function (hook_name, args, cb) { }); + + // path.join seems to normalize by default, but we'll just be explicit + var rootTestFolder = path.normalize(path.join(npm.root, "../tests/frontend/")); + var url2FilePath = function(url){ var subPath = url.substr("/tests/frontend".length); if (subPath == ""){ @@ -30,8 +34,11 @@ exports.expressCreateServer = function (hook_name, args, cb) { } subPath = subPath.split("?")[0]; - var filePath = path.normalize(npm.root + "/../tests/frontend/") - filePath += subPath.replace("..", ""); + var filePath = path.normalize(path.join(rootTestFolder, subPath)); + // make sure we jail the paths to the test folder, otherwise serve index + if (filePath.indexOf(rootTestFolder) !== 0) { + filePath = path.join(rootTestFolder, "index.html"); + } return filePath; } @@ -50,7 +57,7 @@ exports.expressCreateServer = function (hook_name, args, cb) { args.app.get('/tests/frontend/*', function (req, res) { var filePath = url2FilePath(req.url); - res.sendfile(filePath); + res.sendFile(filePath); }); args.app.get('/tests/frontend', function (req, res) { diff --git a/sources/src/node/hooks/express/webaccess.js b/sources/src/node/hooks/express/webaccess.js old mode 100644 new mode 100755 index 6998853..2cafd27 --- a/sources/src/node/hooks/express/webaccess.js +++ b/sources/src/node/hooks/express/webaccess.js @@ -2,10 +2,11 @@ var express = require('express'); var log4js = require('log4js'); var httpLogger = log4js.getLogger("http"); var settings = require('../../utils/Settings'); -var randomString = require('ep_etherpad-lite/static/js/pad_utils').randomString; var hooks = require('ep_etherpad-lite/static/js/pluginfw/hooks'); var ueberStore = require('../../db/SessionStore'); -var stats = require('ep_etherpad-lite/node/stats') +var stats = require('ep_etherpad-lite/node/stats'); +var sessionModule = require('express-session'); +var cookieParser = require('cookie-parser'); //checks for basic http auth exports.basicAuth = function (req, res, next) { @@ -57,10 +58,10 @@ exports.basicAuth = function (req, res, next) { res.header('WWW-Authenticate', 'Basic realm="Protected Area"'); if (req.headers.authorization) { setTimeout(function () { - res.send(401, 'Authentication required'); + res.status(401).send('Authentication required'); }, 1000); } else { - res.send(401, 'Authentication required'); + res.status(401).send('Authentication required'); } })); } @@ -76,7 +77,7 @@ exports.basicAuth = function (req, res, next) { Note that the process could stop already in step 3 with a redirect to login page. */ - + authorize(function (ok) { if (ok) return next(); authenticate(function (ok) { @@ -118,9 +119,10 @@ exports.expressConfigure = function (hook_name, args, cb) { exports.secret = settings.sessionKey; // Isn't this being reset each time the server spawns? } - args.app.use(express.cookieParser(exports.secret)); args.app.sessionStore = exports.sessionStore; - args.app.use(express.session({secret: exports.secret, store: args.app.sessionStore, key: 'express_sid' })); + args.app.use(sessionModule({secret: exports.secret, store: args.app.sessionStore, resave: true, saveUninitialized: true, name: 'express_sid' })); + + args.app.use(cookieParser(settings.sessionKey, {})); args.app.use(exports.basicAuth); } diff --git a/sources/src/node/hooks/i18n.js b/sources/src/node/hooks/i18n.js old mode 100644 new mode 100755 index 62631b9..1d28b54 --- a/sources/src/node/hooks/i18n.js +++ b/sources/src/node/hooks/i18n.js @@ -1,7 +1,6 @@ var languages = require('languages4translatewiki') , fs = require('fs') , path = require('path') - , express = require('express') , _ = require('underscore') , npm = require('npm') , plugins = require('ep_etherpad-lite/static/js/pluginfw/plugins.js').plugins @@ -92,7 +91,7 @@ exports.expressCreateServer = function(n, args) { res.setHeader('Content-Type', 'application/json; charset=utf-8'); res.send('{"'+locale+'":'+JSON.stringify(locales[locale])+'}'); } else { - res.send(404, 'Language not available'); + res.status(404).send('Language not available'); } }) diff --git a/sources/src/node/padaccess.js b/sources/src/node/padaccess.js old mode 100644 new mode 100755 index d878091..1f2e883 --- a/sources/src/node/padaccess.js +++ b/sources/src/node/padaccess.js @@ -3,10 +3,6 @@ var securityManager = require('./db/SecurityManager'); //checks for padAccess module.exports = function (req, res, callback) { - - // FIXME: Why is this ever undefined?? - if (req.cookies === undefined) req.cookies = {}; - securityManager.checkAccess(req.params.pad, req.cookies.sessionID, req.cookies.token, req.cookies.password, function(err, accessObj) { if(ERR(err, callback)) return; @@ -15,7 +11,7 @@ module.exports = function (req, res, callback) { callback(); //no access } else { - res.send(403, "403 - Can't touch this"); + res.status(403).send("403 - Can't touch this"); } }); } diff --git a/sources/src/node/server.js b/sources/src/node/server.js index 605ce84..2952da5 100755 --- a/sources/src/node/server.js +++ b/sources/src/node/server.js @@ -67,7 +67,7 @@ async.waterfall([ }, function (callback) { - console.info("Installed plugins: " + plugins.formatPlugins()); + console.info("Installed plugins: " + plugins.formatPluginsWithVersion()); console.debug("Installed parts:\n" + plugins.formatParts()); console.debug("Installed hooks:\n" + plugins.formatHooks()); diff --git a/sources/src/node/stats.js b/sources/src/node/stats.js old mode 100644 new mode 100755 diff --git a/sources/src/node/utils/Abiword.js b/sources/src/node/utils/Abiword.js old mode 100644 new mode 100755 index 5f12bd9..1d9ac5d --- a/sources/src/node/utils/Abiword.js +++ b/sources/src/node/utils/Abiword.js @@ -18,7 +18,6 @@ * limitations under the License. */ -var util = require('util'); var spawn = require('child_process').spawn; var async = require("async"); var settings = require("./Settings"); diff --git a/sources/src/node/utils/Cli.js b/sources/src/node/utils/Cli.js old mode 100644 new mode 100755 diff --git a/sources/src/node/utils/ExportDokuWiki.js b/sources/src/node/utils/ExportDokuWiki.js deleted file mode 100644 index f5d2d17..0000000 --- a/sources/src/node/utils/ExportDokuWiki.js +++ /dev/null @@ -1,350 +0,0 @@ -/** - * Copyright 2011 Adrian Lang - * - * 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. - */ - -var async = require("async"); - -var Changeset = require("ep_etherpad-lite/static/js/Changeset"); -var padManager = require("../db/PadManager"); - -function getPadDokuWiki(pad, revNum, callback) -{ - var atext = pad.atext; - var dokuwiki; - async.waterfall([ - // fetch revision atext - - - function (callback) - { - if (revNum != undefined) - { - pad.getInternalRevisionAText(revNum, function (err, revisionAtext) - { - atext = revisionAtext; - callback(err); - }); - } - else - { - callback(null); - } - }, - - // convert atext to dokuwiki text - - function (callback) - { - dokuwiki = getDokuWikiFromAtext(pad, atext); - callback(null); - }], - // run final callback - - - function (err) - { - callback(err, dokuwiki); - }); -} - -function getDokuWikiFromAtext(pad, atext) -{ - var apool = pad.apool(); - var textLines = atext.text.slice(0, -1).split('\n'); - var attribLines = Changeset.splitAttributionLines(atext.attribs, atext.text); - - var tags = ['======', '=====', '**', '//', '__', 'del>']; - var props = ['heading1', 'heading2', 'bold', 'italic', 'underline', 'strikethrough']; - var anumMap = {}; - - props.forEach(function (propName, i) - { - var propTrueNum = apool.putAttrib([propName, true], true); - if (propTrueNum >= 0) - { - anumMap[propTrueNum] = i; - } - }); - - function getLineDokuWiki(text, attribs) - { - var propVals = [false, false, false]; - var ENTER = 1; - var STAY = 2; - var LEAVE = 0; - - // Use order of tags (b/i/u) as order of nesting, for simplicity - // and decent nesting. For example, - // Just bold Bold and italics Just italics - // becomes - // Just bold Bold and italics Just italics - var taker = Changeset.stringIterator(text); - var assem = Changeset.stringAssembler(); - - function emitOpenTag(i) - { - if (tags[i].indexOf('>') !== -1) { - assem.append('<'); - } - assem.append(tags[i]); - } - - function emitCloseTag(i) - { - if (tags[i].indexOf('>') !== -1) { - assem.append(' bold, etc. - if (!propVals[i]) - { - propVals[i] = ENTER; - propChanged = true; - } - else - { - propVals[i] = STAY; - } - } - }); - for (var i = 0; i < propVals.length; i++) - { - if (propVals[i] === true) - { - propVals[i] = LEAVE; - propChanged = true; - } - else if (propVals[i] === STAY) - { - propVals[i] = true; // set it back - } - } - // now each member of propVal is in {false,LEAVE,ENTER,true} - // according to what happens at start of span - if (propChanged) - { - // leaving bold (e.g.) also leaves italics, etc. - var left = false; - for (var i = 0; i < propVals.length; i++) - { - var v = propVals[i]; - if (!left) - { - if (v === LEAVE) - { - left = true; - } - } - else - { - if (v === true) - { - propVals[i] = STAY; // tag will be closed and re-opened - } - } - } - - for (var i = propVals.length - 1; i >= 0; i--) - { - if (propVals[i] === LEAVE) - { - emitCloseTag(i); - propVals[i] = false; - } - else if (propVals[i] === STAY) - { - emitCloseTag(i); - } - } - for (var i = 0; i < propVals.length; i++) - { - if (propVals[i] === ENTER || propVals[i] === STAY) - { - emitOpenTag(i); - propVals[i] = true; - } - } - // propVals is now all {true,false} again - } // end if (propChanged) - var chars = o.chars; - if (o.lines) - { - chars--; // exclude newline at end of line, if present - } - var s = taker.take(chars); - - assem.append(_escapeDokuWiki(s)); - } // end iteration over spans in line - for (var i = propVals.length - 1; i >= 0; i--) - { - if (propVals[i]) - { - emitCloseTag(i); - propVals[i] = false; - } - } - } // end processNextChars - if (urls) - { - urls.forEach(function (urlData) - { - var startIndex = urlData[0]; - var url = urlData[1]; - var urlLength = url.length; - processNextChars(startIndex - idx); - assem.append('[['); - - // Do not use processNextChars since a link does not contain syntax and - // needs no escaping - var iter = Changeset.opIterator(Changeset.subattribution(attribs, idx, idx + urlLength)); - idx += urlLength; - assem.append(taker.take(iter.next().chars)); - - assem.append(']]'); - }); - } - processNextChars(text.length - idx); - - return assem.toString() + "\n"; - } // end getLineDokuWiki - var pieces = []; - - for (var i = 0; i < textLines.length; i++) - { - var line = _analyzeLine(textLines[i], attribLines[i], apool); - var lineContent = getLineDokuWiki(line.text, line.aline); - - if (line.listLevel && lineContent) - { - if (line.listTypeName == "number") - { - pieces.push(new Array(line.listLevel + 1).join(' ') + ' - '); - } else { - pieces.push(new Array(line.listLevel + 1).join(' ') + '* '); - } - } - pieces.push(lineContent); - } - - return pieces.join(''); -} - -function _analyzeLine(text, aline, apool) -{ - var line = {}; - - // identify list - var lineMarker = 0; - line.listLevel = 0; - if (aline) - { - var opIter = Changeset.opIterator(aline); - if (opIter.hasNext()) - { - var listType = Changeset.opAttributeValue(opIter.next(), 'list', apool); - if (listType) - { - lineMarker = 1; - listType = /([a-z]+)([12345678])/.exec(listType); - if (listType) - { - line.listTypeName = listType[1]; - line.listLevel = Number(listType[2]); - } - } - } - } - if (lineMarker) - { - line.text = text.substring(1); - line.aline = Changeset.subattribution(aline, 1); - } - else - { - line.text = text; - line.aline = aline; - } - - return line; -} - -exports.getPadDokuWikiDocument = function (padId, revNum, callback) -{ - padManager.getPad(padId, function (err, pad) - { - if (err) - { - callback(err); - return; - } - - getPadDokuWiki(pad, revNum, callback); - }); -}; - -function _escapeDokuWiki(s) -{ - s = s.replace(/(\/\/|\*\*|__)/g, '%%$1%%'); - return s; -} - -// copied from ACE -var _REGEX_WORDCHAR = /[\u0030-\u0039\u0041-\u005A\u0061-\u007A\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF\u0100-\u1FFF\u3040-\u9FFF\uF900-\uFDFF\uFE70-\uFEFE\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFDC]/; -var _REGEX_SPACE = /\s/; -var _REGEX_URLCHAR = new RegExp('(' + /[-:@a-zA-Z0-9_.,~%+\/\\?=&#;()$]/.source + '|' + _REGEX_WORDCHAR.source + ')'); -var _REGEX_URL = new RegExp(/(?:(?:https?|s?ftp|ftps|file|smb|afp|nfs|(x-)?man|gopher|txmt):\/\/|mailto:)/.source + _REGEX_URLCHAR.source + '*(?![:.,;])' + _REGEX_URLCHAR.source, 'g'); - -// returns null if no URLs, or [[startIndex1, url1], [startIndex2, url2], ...] - - -function _findURLs(text) -{ - _REGEX_URL.lastIndex = 0; - var urls = null; - var execResult; - while ((execResult = _REGEX_URL.exec(text))) - { - urls = (urls || []); - var startIndex = execResult.index; - var url = execResult[0]; - urls.push([startIndex, url]); - } - - return urls; -} diff --git a/sources/src/node/utils/ExportEtherpad.js b/sources/src/node/utils/ExportEtherpad.js new file mode 100755 index 0000000..46ae0d7 --- /dev/null +++ b/sources/src/node/utils/ExportEtherpad.js @@ -0,0 +1,79 @@ +/** + * 2014 John McLear (Etherpad Foundation / McLear 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. + */ + + +var async = require("async"); +var db = require("../db/DB").db; +var ERR = require("async-stacktrace"); + +exports.getPadRaw = function(padId, callback){ + async.waterfall([ + function(cb){ + + // Get the Pad + db.findKeys("pad:"+padId, null, function(err,padcontent){ + if(!err){ + cb(err, padcontent); + } + }) + }, + function(padcontent,cb){ + + // Get the Pad available content keys + db.findKeys("pad:"+padId+":*", null, function(err,records){ + if(!err){ + for (var key in padcontent) { records.push(padcontent[key]);} + cb(err, records); + } + }) + }, + function(records, cb){ + var data = {}; + + async.forEachSeries(Object.keys(records), function(key, r){ + + // For each piece of info about a pad. + db.get(records[key], function(err, entry){ + data[records[key]] = entry; + + // Get the Pad Authors + if(entry.pool && entry.pool.numToAttrib){ + var authors = entry.pool.numToAttrib; + async.forEachSeries(Object.keys(authors), function(k, c){ + if(authors[k][0] === "author"){ + var authorId = authors[k][1]; + + // Get the author info + db.get("globalAuthor:"+authorId, function(e, authorEntry){ + if(authorEntry && authorEntry.padIDs) authorEntry.padIDs = padId; + if(!e) data["globalAuthor:"+authorId] = authorEntry; + }); + + } + // console.log("authorsK", authors[k]); + c(null); + }); + } + r(null); // callback; + }); + }, function(err){ + cb(err, data); + }) + } + ], function(err, data){ + callback(null, data); + }); +} diff --git a/sources/src/node/utils/ExportHelper.js b/sources/src/node/utils/ExportHelper.js old mode 100644 new mode 100755 index 136896f..297c2d7 --- a/sources/src/node/utils/ExportHelper.js +++ b/sources/src/node/utils/ExportHelper.js @@ -18,12 +18,7 @@ * limitations under the License. */ -var async = require("async"); var Changeset = require("ep_etherpad-lite/static/js/Changeset"); -var padManager = require("../db/PadManager"); -var ERR = require("async-stacktrace"); -var Security = require('ep_etherpad-lite/static/js/security'); -var hooks = require('ep_etherpad-lite/static/js/pluginfw/hooks'); exports.getPadPlainText = function(pad, revNum){ var atext = ((revNum !== undefined) ? pad.getInternalRevisionAText(revNum) : pad.atext()); @@ -60,7 +55,7 @@ exports._analyzeLine = function(text, aline, apool){ var listType = Changeset.opAttributeValue(opIter.next(), 'list', apool); if (listType){ lineMarker = 1; - listType = /([a-z]+)([12345678])/.exec(listType); + listType = /([a-z]+)([0-9]+)/.exec(listType); if (listType){ line.listTypeName = listType[1]; line.listLevel = Number(listType[2]); diff --git a/sources/src/node/utils/ExportHtml.js b/sources/src/node/utils/ExportHtml.js old mode 100644 new mode 100755 index 01920da..9e1ba12 --- a/sources/src/node/utils/ExportHtml.js +++ b/sources/src/node/utils/ExportHtml.js @@ -30,8 +30,6 @@ function getPadHTML(pad, revNum, callback) var html; async.waterfall([ // fetch revision atext - - function (callback) { if (revNum != undefined) @@ -78,6 +76,14 @@ function getHTMLFromAtext(pad, atext, authorColors) var tags = ['h1', 'h2', 'strong', 'em', 'u', 's']; var props = ['heading1', 'heading2', 'bold', 'italic', 'underline', 'strikethrough']; + + hooks.aCallAll("exportHtmlAdditionalTags", pad, function(err, newProps){ + newProps.forEach(function (propName, i){ + tags.push(propName); + props.push(propName); + }); + }); + // holds a map of used styling attributes (*1, *2, etc) in the apool // and maps them to an index in props // *3:2 -> the attribute *3 means strong @@ -297,10 +303,12 @@ function getHTMLFromAtext(pad, atext, authorColors) // want to deal gracefully with blank lines. // => keeps track of the parents level of indentation var lists = []; // e.g. [[1,'bullet'], [3,'bullet'], ...] + var listLevels = [] for (var i = 0; i < textLines.length; i++) { var line = _analyzeLine(textLines[i], attribLines[i], apool); var lineContent = getLineHTML(line.text, line.aline); + listLevels.push(line.listLevel) if (line.listLevel)//If we are inside a list { @@ -320,13 +328,27 @@ function getHTMLFromAtext(pad, atext, authorColors) if (whichList >= lists.length)//means we are on a deeper level of indentation than the previous line { + if(lists.length > 0){ + pieces.push('') + } lists.push([line.listLevel, line.listTypeName]); + + // if there is a previous list we need to open x tags, where x is the difference of the levels + // if there is no previous list we need to open x tags, where x is the wanted level + var toOpen = lists.length > 1 ? line.listLevel - lists[lists.length - 2][0] - 1 : line.listLevel - 1 + if(line.listTypeName == "number") { + if(toOpen > 0){ + pieces.push(new Array(toOpen + 1).join('
    ')) + } pieces.push('
    1. ', lineContent || '
      '); } else { + if(toOpen > 0){ + pieces.push(new Array(toOpen + 1).join('
        ')) + } pieces.push('
        • ', lineContent || '
          '); } } @@ -355,44 +377,50 @@ function getHTMLFromAtext(pad, atext, authorColors) pieces.push('

          '); } }*/ - else//means we are getting closer to the lowest level of indentation + else//means we are getting closer to the lowest level of indentation or are at the same level { - while (whichList < lists.length - 1) - { + var toClose = lists.length > 0 ? listLevels[listLevels.length - 2] - line.listLevel : 0 + if( toClose > 0){ + pieces.push('
        • ') if(lists[lists.length - 1][1] == "number") { - pieces.push('
    '); + pieces.push(new Array(toClose+1).join('
')) + pieces.push('
  • ', lineContent || '
    '); } else { - pieces.push('
  • '); + pieces.push(new Array(toClose+1).join('')) + pieces.push('
  • ', lineContent || '
    '); } - lists.length--; + lists = lists.slice(0,whichList+1) + } else { + pieces.push('
  • ', lineContent || '
    '); } - pieces.push('
  • ', lineContent || '
    '); } } - else//outside any list + else//outside any list, need to close line.listLevel of lists { - while (lists.length > 0)//if was in a list: close it before - { - if(lists[lists.length - 1][1] == "number") - { + if(lists.length > 0){ + if(lists[lists.length - 1][1] == "number"){ pieces.push('
  • '); - } - else - { + pieces.push(new Array(listLevels[listLevels.length - 2]).join('')) + } else { pieces.push(''); + pieces.push(new Array(listLevels[listLevels.length - 2]).join('')) } - lists.length--; } - var lineContentFromHook = hooks.callAllStr("getLineHTMLForExport", - { + lists = [] + + var context = { line: line, + lineContent: lineContent, apool: apool, attribLine: attribLines[i], text: textLines[i] - }, " ", " ", ""); + } + + var lineContentFromHook = hooks.callAllStr("getLineHTMLForExport", context, " ", " ", ""); + if (lineContentFromHook) { pieces.push(lineContentFromHook, ''); @@ -425,37 +453,120 @@ exports.getPadHTMLDocument = function (padId, revNum, noDocType, callback) { if(ERR(err, callback)) return; - var head = - (noDocType ? '' : '\n') + - '\n' + (noDocType ? '' : '\n' + - '' + Security.escapeHTML(padId) + '\n' + - '\n' + - '\n' + '\n') + - ''; + var stylesForExportCSS = ""; + // Include some Styles into the Head for Export + hooks.aCallAll("stylesForExport", padId, function(err, stylesForExport){ + stylesForExport.forEach(function(css){ + stylesForExportCSS += css; + }); + // Core inclusion of head etc. + var head = + (noDocType ? '' : '\n') + + '\n' + (noDocType ? '' : '\n' + + '' + Security.escapeHTML(padId) + '\n' + + '\n' + + '\n' + '\n') + + ''; + var foot = '\n\n'; + + getPadHTML(pad, revNum, function (err, html) + { + if(ERR(err, callback)) return; + callback(null, head + html + foot); + }); }); }); }; - // copied from ACE var _REGEX_WORDCHAR = /[\u0030-\u0039\u0041-\u005A\u0061-\u007A\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF\u0100-\u1FFF\u3040-\u9FFF\uF900-\uFDFF\uFE70-\uFEFE\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFDC]/; var _REGEX_SPACE = /\s/; diff --git a/sources/src/node/utils/ExportTxt.js b/sources/src/node/utils/ExportTxt.js old mode 100644 new mode 100755 index f0b6274..a6bec4a --- a/sources/src/node/utils/ExportTxt.js +++ b/sources/src/node/utils/ExportTxt.js @@ -22,9 +22,6 @@ var async = require("async"); var Changeset = require("ep_etherpad-lite/static/js/Changeset"); var padManager = require("../db/PadManager"); var ERR = require("async-stacktrace"); -var Security = require('ep_etherpad-lite/static/js/security'); -var hooks = require('ep_etherpad-lite/static/js/pluginfw/hooks'); -var getPadPlainText = require('./ExportHelper').getPadPlainText; var _analyzeLine = require('./ExportHelper')._analyzeLine; // This is slightly different than the HTML method as it passes the output to getTXTFromAText @@ -82,7 +79,6 @@ function getTXTFromAtext(pad, atext, authorColors) var textLines = atext.text.slice(0, -1).split('\n'); var attribLines = Changeset.splitAttributionLines(atext.attribs, atext.text); - var tags = ['h1', 'h2', 'strong', 'em', 'u', 's']; var props = ['heading1', 'heading2', 'bold', 'italic', 'underline', 'strikethrough']; var anumMap = {}; var css = ""; @@ -110,7 +106,6 @@ function getTXTFromAtext(pad, atext, authorColors) // Just bold Bold and italics Just italics var taker = Changeset.stringIterator(text); var assem = Changeset.stringAssembler(); - var openTags = []; var idx = 0; @@ -250,7 +245,6 @@ function getTXTFromAtext(pad, atext, authorColors) // so we want to do something reasonable there. We also // want to deal gracefully with blank lines. // => keeps track of the parents level of indentation - var lists = []; // e.g. [[1,'bullet'], [3,'bullet'], ...] for (var i = 0; i < textLines.length; i++) { var line = _analyzeLine(textLines[i], attribLines[i], apool); diff --git a/sources/src/node/utils/ImportEtherpad.js b/sources/src/node/utils/ImportEtherpad.js new file mode 100755 index 0000000..bf1129c --- /dev/null +++ b/sources/src/node/utils/ImportEtherpad.js @@ -0,0 +1,74 @@ +/** + * 2014 John McLear (Etherpad Foundation / McLear 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. + */ + +var log4js = require('log4js'); +var async = require("async"); +var db = require("../db/DB").db; + +exports.setPadRaw = function(padId, records, callback){ + records = JSON.parse(records); + + async.eachSeries(Object.keys(records), function(key, cb){ + var value = records[key] + + if(!value){ + return setImmediate(cb); + } + + // Author data + if(value.padIDs){ + // rewrite author pad ids + value.padIDs[padId] = 1; + var newKey = key; + + // Does this author already exist? + db.get(key, function(err, author){ + if(author){ + // Yes, add the padID to the author.. + if( Object.prototype.toString.call(author) === '[object Array]'){ + author.padIDs.push(padId); + } + value = author; + }else{ + // No, create a new array with the author info in + value.padIDs = [padId]; + } + }); + + // Not author data, probably pad data + }else{ + // we can split it to look to see if its pad data + var oldPadId = key.split(":"); + + // we know its pad data.. + if(oldPadId[0] === "pad"){ + + // so set the new pad id for the author + oldPadId[1] = padId; + + // and create the value + var newKey = oldPadId.join(":"); // create the new key + } + + } + // Write the value to the server + db.set(newKey, value); + + setImmediate(cb); + }, function(){ + callback(null, true); + }); +} diff --git a/sources/src/node/utils/ImportHtml.js b/sources/src/node/utils/ImportHtml.js old mode 100644 new mode 100755 index abba2ac..d71e272 --- a/sources/src/node/utils/ImportHtml.js +++ b/sources/src/node/utils/ImportHtml.js @@ -14,25 +14,22 @@ * limitations under the License. */ -var jsdom = require('jsdom-nocontextifiy').jsdom; var log4js = require('log4js'); - - var Changeset = require("ep_etherpad-lite/static/js/Changeset"); var contentcollector = require("ep_etherpad-lite/static/js/contentcollector"); +var cheerio = require("cheerio"); function setPadHTML(pad, html, callback) { var apiLogger = log4js.getLogger("ImportHtml"); - // Parse the incoming HTML with jsdom - try{ - var doc = jsdom(html.replace(/>\n+<')); - }catch(e){ - apiLogger.warn("Error importing, possibly caused by malformed HTML"); - var doc = jsdom("
    Error during import, possibly malformed HTML
    "); - } + var $ = cheerio.load(html); + // Appends a line break, used by Etherpad to ensure a caret is available + // below the last line of an import + $('body').append("

    "); + + var doc = $('html')[0]; apiLogger.debug('html:'); apiLogger.debug(html); @@ -40,10 +37,10 @@ function setPadHTML(pad, html, callback) // using the content collector object var cc = contentcollector.makeContentCollector(true, null, pad.pool); try{ // we use a try here because if the HTML is bad it will blow up - cc.collectContent(doc.childNodes[0]); + cc.collectContent(doc); }catch(e){ apiLogger.warn("HTML was not properly formed", e); - return; // We don't process the HTML because it was bad.. + return callback(e); // We don't process the HTML because it was bad.. } var result = cc.finish(); @@ -92,8 +89,9 @@ function setPadHTML(pad, html, callback) // the changeset is ready! var theChangeset = builder.toString(); apiLogger.debug('The changeset: ' + theChangeset); - pad.setText(""); + pad.setText("\n"); pad.appendRevision(theChangeset); + callback(null); } exports.setPadHTML = setPadHTML; diff --git a/sources/src/node/utils/Minify.js b/sources/src/node/utils/Minify.js old mode 100644 new mode 100755 index 58d08b3..ee8f5f4 --- a/sources/src/node/utils/Minify.js +++ b/sources/src/node/utils/Minify.js @@ -23,12 +23,12 @@ var ERR = require("async-stacktrace"); var settings = require('./Settings'); var async = require('async'); var fs = require('fs'); -var cleanCSS = require('clean-css'); +var CleanCSS = require('clean-css'); var jsp = require("uglify-js").parser; var pro = require("uglify-js").uglify; var path = require('path'); var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins"); -var RequireKernel = require('require-kernel'); +var RequireKernel = require('etherpad-require-kernel'); var urlutil = require('url'); var ROOT_DIR = path.normalize(__dirname + "/../../static/"); @@ -143,9 +143,11 @@ function minify(req, res, next) // No relative paths, especially if they may go up the file hierarchy. filename = path.normalize(path.join(ROOT_DIR, filename)); + filename = filename.replace(/\.\./g, '') + if (filename.indexOf(ROOT_DIR) == 0) { filename = filename.slice(ROOT_DIR.length); - filename = filename.replace(/\\/g, '/'); // Windows (safe generally?) + filename = filename.replace(/\\/g, '/') } else { res.writeHead(404, {}); res.end(); @@ -166,7 +168,7 @@ function minify(req, res, next) var plugin = plugins.plugins[library]; var pluginPath = plugin.package.realPath; filename = path.relative(ROOT_DIR, pluginPath + libraryPath); - filename = filename.replace(/\\/g, '/'); // Windows (safe generally?) + filename = filename.replace(/\\/g, '/'); // windows path fix } else if (LIBRARY_WHITELIST.indexOf(library) != -1) { // Go straight into node_modules // Avoid `require.resolve()`, since 'mustache' and 'mustache/index.js' @@ -261,7 +263,6 @@ function getAceFile(callback) { // them into the file. async.forEach(founds, function (item, callback) { var filename = item.match(/"([^"]*)"/)[1]; - var request = require('request'); var baseURI = 'http://localhost:' + settings.port; var resourceURI = baseURI + path.normalize(path.join('/static/', filename)); @@ -411,7 +412,8 @@ function compressJS(values) function compressCSS(values) { var complete = values.join("\n"); - return cleanCSS.process(complete); + var minimized = new CleanCSS().minify(complete).styles; + return minimized; } exports.minify = minify; diff --git a/sources/src/node/utils/RemoteAddress.js b/sources/src/node/utils/RemoteAddress.js new file mode 100755 index 0000000..86a4a5b --- /dev/null +++ b/sources/src/node/utils/RemoteAddress.js @@ -0,0 +1 @@ +exports.remoteAddress = {}; diff --git a/sources/src/node/utils/Settings.js b/sources/src/node/utils/Settings.js old mode 100644 new mode 100755 index 4c6b7ea..b7d1f0b --- a/sources/src/node/utils/Settings.js +++ b/sources/src/node/utils/Settings.js @@ -27,7 +27,8 @@ var npm = require("npm/lib/npm.js"); var jsonminify = require("jsonminify"); var log4js = require("log4js"); var randomString = require("./randomstring"); - +var suppressDisableMsg = " -- To suppress these warning messages change suppressErrorsInPadText to true in your settings.json\n"; +var _ = require("underscore"); /* Root path of the installation */ exports.root = path.normalize(path.join(npm.dir, "..")); @@ -54,6 +55,11 @@ exports.ip = "0.0.0.0"; */ exports.port = process.env.PORT || 9001; +/** + * Should we suppress Error messages from being in Pad Contents + */ +exports.suppressErrorsInPadText = false; + /** * The SSL signed server key and the Certificate Authority's own certificate * default case: ep-lite does *not* use SSL. A signed server key is not required in this case. @@ -79,6 +85,23 @@ exports.dbSettings = { "filename" : path.join(exports.root, "dirty.db") }; */ exports.defaultPadText = "Welcome to Etherpad!\n\nThis pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!\n\nEtherpad on Github: http:\/\/j.mp/ep-lite\n"; +/** + * The default Pad Settings for a user (Can be overridden by changing the setting + */ +exports.padOptions = { + "noColors": false, + "showControls": true, + "showChat": true, + "showLineNumbers": true, + "useMonospaceFont": false, + "userName": false, + "userColor": false, + "rtl": false, + "alwaysShowChat": false, + "chatAndUsers": false, + "lang": "en-gb" +} + /** * The toolbar buttons and order. */ @@ -95,7 +118,7 @@ exports.toolbar = { ["showusers"] ], timeslider: [ - ["timeslider_export", "timeslider_returnToPad"] + ["timeslider_export", "timeslider_settings", "timeslider_returnToPad"] ] } @@ -109,6 +132,11 @@ exports.requireSession = false; */ exports.editOnly = false; +/** + * A flag that bypasses password prompts for users with valid sessions + */ +exports.sessionNoPassword = false; + /** * Max age that responses will have (affects caching layer). */ @@ -124,6 +152,11 @@ exports.minify = true; */ exports.abiword = null; +/** + * Should we support none natively supported file types on import? + */ +exports.allowUnknownFileEnds = true; + /** * The log level of log4js */ @@ -134,6 +167,11 @@ exports.loglevel = "INFO"; */ exports.disableIPlogging = false; +/** + * Disable Load Testing + */ +exports.loadTest = false; + /* * log4js appender configuration */ @@ -169,11 +207,39 @@ exports.abiwordAvailable = function() } }; +// Provide git version if available +exports.getGitCommit = function() { + var version = ""; + try + { + var rootPath = path.resolve(npm.dir, '..'); + var ref = fs.readFileSync(rootPath + "/.git/HEAD", "utf-8"); + var refPath = rootPath + "/.git/" + ref.substring(5, ref.indexOf("\n")); + version = fs.readFileSync(refPath, "utf-8"); + version = version.substring(0, 7); + } + catch(e) + { + console.warn("Can't get git version for server header\n" + e.message) + } + return version; +} + +// Return etherpad version from package.json +exports.getEpVersion = function() { + return require('ep_etherpad-lite/package.json').version; +} + exports.reloadSettings = function reloadSettings() { // Discover where the settings file lives var settingsFilename = argv.settings || "settings.json"; - settingsFilename = path.resolve(path.join(exports.root, settingsFilename)); + if (path.resolve(settingsFilename)===settingsFilename) { + settingsFilename = path.resolve(settingsFilename); + } else { + settingsFilename = path.resolve(path.join(exports.root, settingsFilename)); + } + var settingsStr; try{ //read the settings sync @@ -207,7 +273,11 @@ exports.reloadSettings = function reloadSettings() { //or it's a settings hash, specific to a plugin if(exports[i] !== undefined || i.indexOf('ep_')==0) { - exports[i] = settings[i]; + if (_.isObject(settings[i]) && !_.isArray(settings[i])) { + exports[i] = _.defaults(settings[i], exports[i]); + } else { + exports[i] = settings[i]; + } } //this setting is unkown, output a warning and throw it away else @@ -218,17 +288,47 @@ exports.reloadSettings = function reloadSettings() { log4js.configure(exports.logconfig);//Configure the logging appenders log4js.setGlobalLogLevel(exports.loglevel);//set loglevel + process.env['DEBUG'] = 'socket.io:' + exports.loglevel; // Used by SocketIO for Debug log4js.replaceConsole(); - if(!exports.sessionKey){ // If the secretKey isn't set we also create yet another unique value here - exports.sessionKey = randomString(32); - console.warn("You need to set a sessionKey value in settings.json, this will allow your users to reconnect to your Etherpad Instance if your instance restarts"); + if(exports.abiword){ + // Check abiword actually exists + if(exports.abiword != null) + { + fs.exists(exports.abiword, function(exists) { + if (!exists) { + var abiwordError = "Abiword does not exist at this path, check your settings file"; + if(!exports.suppressErrorsInPadText){ + exports.defaultPadText = exports.defaultPadText + "\nError: " + abiwordError + suppressDisableMsg; + } + console.error(abiwordError); + exports.abiword = null; + } + }); + } + } + + if (!exports.sessionKey) { + try { + exports.sessionKey = fs.readFileSync("./SESSIONKEY.txt","utf8"); + } catch(e) { + exports.sessionKey = randomString(32); + fs.writeFileSync("./SESSIONKEY.txt",exports.sessionKey,"utf8"); + } + } else { + console.warn("Declaring the sessionKey in the settings.json is deprecated. This value is auto-generated now. Please remove the setting from the file."); } if(exports.dbType === "dirty"){ - console.warn("DirtyDB is used. This is fine for testing but not recommended for production."); + var dirtyWarning = "DirtyDB is used. This is fine for testing but not recommended for production."; + if(!exports.suppressErrorsInPadText){ + exports.defaultPadText = exports.defaultPadText + "\nWarning: " + dirtyWarning + suppressDisableMsg; + } + console.warn(dirtyWarning); } }; // initially load settings exports.reloadSettings(); + + diff --git a/sources/src/node/utils/caching_middleware.js b/sources/src/node/utils/caching_middleware.js old mode 100644 new mode 100755 index d30dc39..9713435 --- a/sources/src/node/utils/caching_middleware.js +++ b/sources/src/node/utils/caching_middleware.js @@ -19,7 +19,6 @@ var Buffer = require('buffer').Buffer; var fs = require('fs'); var path = require('path'); var zlib = require('zlib'); -var util = require('util'); var settings = require('./Settings'); var semver = require('semver'); diff --git a/sources/src/node/utils/customError.js b/sources/src/node/utils/customError.js old mode 100644 new mode 100755 diff --git a/sources/src/node/utils/padDiff.js b/sources/src/node/utils/padDiff.js old mode 100644 new mode 100755 index 88fa5cb..24d5bb0 --- a/sources/src/node/utils/padDiff.js +++ b/sources/src/node/utils/padDiff.js @@ -101,8 +101,12 @@ PadDiff.prototype._createClearStartAtext = function(rev, callback){ return callback(err); } + try { //apply the clearAuthorship changeset var newAText = Changeset.applyToAText(changeset, atext, self._pad.pool); + } catch(err) { + return callback(err) + } callback(null, newAText); }); @@ -209,10 +213,14 @@ PadDiff.prototype._createDiffAtext = function(callback) { if(superChangeset){ var deletionChangeset = self._createDeletionChangeset(superChangeset,atext,self._pad.pool); - //apply the superChangeset, which includes all addings - atext = Changeset.applyToAText(superChangeset,atext,self._pad.pool); - //apply the deletionChangeset, which adds a deletions - atext = Changeset.applyToAText(deletionChangeset,atext,self._pad.pool); + try { + //apply the superChangeset, which includes all addings + atext = Changeset.applyToAText(superChangeset,atext,self._pad.pool); + //apply the deletionChangeset, which adds a deletions + atext = Changeset.applyToAText(deletionChangeset,atext,self._pad.pool); + } catch(err) { + return callback(err) + } } callback(err, atext); diff --git a/sources/src/node/utils/randomstring.js b/sources/src/node/utils/randomstring.js old mode 100644 new mode 100755 diff --git a/sources/src/node/utils/tar.json b/sources/src/node/utils/tar.json old mode 100644 new mode 100755 index 70001f8..05d764a --- a/sources/src/node/utils/tar.json +++ b/sources/src/node/utils/tar.json @@ -2,6 +2,7 @@ "pad.js": [ "pad.js" , "pad_utils.js" + , "browser.js" , "pad_cookie.js" , "pad_editor.js" , "pad_editbar.js" @@ -24,6 +25,7 @@ , "colorutils.js" , "draggable.js" , "pad_utils.js" + , "browser.js" , "pad_cookie.js" , "pad_editor.js" , "pad_editbar.js" @@ -42,6 +44,7 @@ ] , "ace2_inner.js": [ "ace2_inner.js" + , "browser.js" , "AttributePool.js" , "Changeset.js" , "ChangesetUtils.js" @@ -58,6 +61,7 @@ ] , "ace2_common.js": [ "ace2_common.js" + , "browser.js" , "jquery.js" , "rjquery.js" , "$async.js" diff --git a/sources/src/node/utils/toolbar.js b/sources/src/node/utils/toolbar.js old mode 100644 new mode 100755 index a4ee202..07b8649 --- a/sources/src/node/utils/toolbar.js +++ b/sources/src/node/utils/toolbar.js @@ -4,7 +4,6 @@ var _ = require("underscore") , tagAttributes , tag - , defaultButtons , Button , ButtonsGroup , Separator @@ -99,13 +98,15 @@ _.extend(Button.prototype, { "data-key": this.attributes.command, }; return tag("li", liAttributes, - tag("a", { "class": this.grouping }, - tag("span", { "class": " "+ this.attributes.class, "data-l10n-id": this.attributes.localizationId }) + tag("a", { "class": this.grouping, "data-l10n-id": this.attributes.localizationId }, + tag("button", { "class": " "+ this.attributes.class, "data-l10n-id": this.attributes.localizationId }) ) ); } }); + + SelectButton = function (attributes) { this.attributes = attributes; this.options = []; @@ -122,8 +123,7 @@ _.extend(SelectButton.prototype, Button.prototype, { }, select: function (attributes) { - var self = this - , options = []; + var options = []; _.each(this.options, function (opt) { var a = _.extend({ @@ -203,13 +203,19 @@ module.exports = { settings: defaultButtonAttributes("settings"), embed: defaultButtonAttributes("embed"), showusers: defaultButtonAttributes("showusers"), - + timeslider_export: { command: "import_export", localizationId: "timeslider.toolbar.exportlink.title", class: "buttonicon buttonicon-import_export" }, - + + timeslider_settings: { + command: "settings", + localizationId: "pad.toolbar.settings.title", + class: "buttonicon buttonicon-settings" + }, + timeslider_returnToPad: { command: "timeslider_returnToPad", localizationId: "timeslider.toolbar.returnbutton", diff --git a/sources/src/package.json b/sources/src/package.json old mode 100644 new mode 100755 index f47ec47..bfd3f26 --- a/sources/src/package.json +++ b/sources/src/package.json @@ -1,56 +1,59 @@ { "name" : "ep_etherpad-lite", "description" : "A Etherpad based on node.js", - "homepage" : "https://github.com/ether/etherpad-lite", + "homepage" : "http://etherpad.org", "keywords" : ["etherpad", "realtime", "collaborative", "editor"], - "author" : "Peter 'Pita' Martischka - Primary Technology Ltd", + "author" : "Etherpad Foundation", "contributors" : [ { "name": "John McLear" }, { "name": "Hans Pinckaers" }, { "name": "Robin Buse" }, - { "name": "Marcel Klehr" } + { "name": "Marcel Klehr" }, + { "name": "Peter Martischka" } ], "dependencies" : { - "yajsml" : "1.1.6", - "request" : "2.9.100", - "require-kernel" : "1.0.5", - "resolve" : "0.2.x", - "socket.io" : "0.9.x", - "ueberDB" : "0.2.x", - "express" : "3.1.0", - "async" : "0.1.x", - "connect" : "2.7.x", - "clean-css" : "0.3.2", - "uglify-js" : "1.2.5", - "formidable" : "1.0.9", - "log4js" : "0.6.6", - "nodemailer" : "0.3.x", - "jsdom-nocontextifiy" : "0.2.10", + "etherpad-yajsml" : "0.0.2", + "request" : "2.55.0", + "etherpad-require-kernel" : "1.0.9", + "resolve" : "1.1.6", + "socket.io" : "1.3.5", + "ueberDB" : "0.2.15", + "express" : "4.12.3", + "express-session" : "1.11.1", + "cookie-parser" : "1.3.4", + "async" : "0.9.0", + "clean-css" : "3.1.9", + "uglify-js" : "2.4.19", + "formidable" : "1.0.17", + "log4js" : "0.6.22", + "cheerio" : "0.19.0", "async-stacktrace" : "0.0.2", - "npm" : "1.4.x", - "ejs" : "0.6.1", - "graceful-fs" : "1.1.5", - "slide" : "1.1.3", - "semver" : "1.0.13", + "npm" : "2.7.6", + "ejs" : "2.3.1", + "graceful-fs" : "3.0.6", + "slide" : "1.1.6", + "semver" : "4.3.3", "security" : "1.0.0", "tinycon" : "0.0.1", - "underscore" : "1.3.1", - "unorm" : "1.0.0", + "underscore" : "1.8.3", + "unorm" : "1.3.3", "languages4translatewiki" : "0.1.3", - "swagger-node-express" : "1.2.3", - "channels" : "0.0.x", - "jsonminify" : "0.2.2", - "measured" : "0.1.3" + "swagger-node-express" : "2.1.3", + "channels" : "0.0.4", + "jsonminify" : "0.2.3", + "measured" : "1.0.0", + "mocha" : "2.2.4", + "supertest" : "0.15.0" }, "bin": { "etherpad-lite": "./node/server.js" }, "devDependencies": { - "wd" : "0.0.31" + "wd" : "0.3.11" }, - "engines" : { "node" : ">=0.6.3", + "engines" : { "node" : ">=0.10.0", "npm" : ">=1.0" }, "repository" : { "type" : "git", "url" : "http://github.com/ether/etherpad-lite.git" }, - "version" : "1.4.0" + "version" : "1.5.6" } diff --git a/sources/src/static/css/admin.css b/sources/src/static/css/admin.css old mode 100644 new mode 100755 diff --git a/sources/src/static/css/iframe_editor.css b/sources/src/static/css/iframe_editor.css old mode 100644 new mode 100755 index beec497..2824a10 --- a/sources/src/static/css/iframe_editor.css +++ b/sources/src/static/css/iframe_editor.css @@ -11,7 +11,10 @@ span { cursor: auto; } background: #acf; } -a { cursor: pointer !important; } +a { + cursor: pointer !important; + white-space:pre-wrap; +} ul, ol, li { padding: 0; @@ -28,6 +31,14 @@ ul.list-bullet5 { margin-left: 7.5em; } ul.list-bullet6 { margin-left: 9em; } ul.list-bullet7 { margin-left: 10.5em; } ul.list-bullet8 { margin-left: 12em; } +ul.list-bullet9 { margin-left: 13.5em; } +ul.list-bullet10 { margin-left: 15em; } +ul.list-bullet11 { margin-left: 16.5em; } +ul.list-bullet12 { margin-left: 18em; } +ul.list-bullet13 { margin-left: 19.5em; } +ul.list-bullet14 { margin-left: 21em; } +ul.list-bullet15 { margin-left: 22.5em; } +ul.list-bullet16 { margin-left: 24em; } ul { list-style-type: disc; } ul.list-bullet1 { list-style-type: disc; } @@ -38,6 +49,14 @@ ul.list-bullet5 { list-style-type: circle; } ul.list-bullet6 { list-style-type: square; } ul.list-bullet7 { list-style-type: disc; } ul.list-bullet8 { list-style-type: circle; } +ul.list-bullet9 { list-style-type: disc; } +ul.list-bullet10 { list-style-type: circle; } +ul.list-bullet11 { list-style-type: square; } +ul.list-bullet12 { list-style-type: disc; } +ul.list-bullet13 { list-style-type: circle; } +ul.list-bullet14 { list-style-type: square; } +ul.list-bullet15 { list-style-type: disc; } +ul.list-bullet16 { list-style-type: circle; } ul.list-indent1 { margin-left: 1.5em; } ul.list-indent2 { margin-left: 3em; } @@ -47,15 +66,19 @@ ul.list-indent5 { margin-left: 7.5em; } ul.list-indent6 { margin-left: 9em; } ul.list-indent7 { margin-left: 10.5em; } ul.list-indent8 { margin-left: 12em; } +ul.list-indent9 { margin-left: 13.5em; } +ul.list-indent10 { margin-left: 15em; } +ul.list-indent11 { margin-left: 16.5em; } +ul.list-indent12 { margin-left: 18em; } +ul.list-indent13 { margin-left: 19.5em; } +ul.list-indent14 { margin-left: 21em; } +ul.list-indent15 { margin-left: 22.5em; } +ul.list-indent16 { margin-left: 24em; } -ul.list-indent1 { list-style-type: none; } -ul.list-indent2 { list-style-type: none; } -ul.list-indent3 { list-style-type: none; } -ul.list-indent4 { list-style-type: none; } -ul.list-indent5 { list-style-type: none; } -ul.list-indent6 { list-style-type: none; } -ul.list-indent7 { list-style-type: none; } -ul.list-indent8 { list-style-type: none; } +ul.list-indent1, ul.list-indent2, ul.list-indent3, ul.list-indent4, ul.list-indent5, +ul.list-indent6, ul.list-indent7, ul.list-indent8, ul.list-indent9, ul.list-indent10, +ul.list-indent11, ul.list-indent12, ul.list-indent13, +ul.list-indent14, ul.list-indent15, ul.list-indent16 { list-style-type: none; } body { margin: 0; @@ -70,15 +93,35 @@ body.grayedout { background-color: #eee !important } #innerdocbody { font-size: 12px; /* overridden by body.style */ - font-family: monospace; /* overridden by body.style */ + font-family:Arial, sans-serif; /* overridden by body.style */ line-height: 16px; /* overridden by body.style */ } body.doesWrap { - white-space: pre-wrap; /*Must be pre-wrap to keep trailing spaces. Otherwise you get a zombie caret, walking around your screen (see #1766) */ + /* white-space: pre-wrap; */ + + /* + Must be pre-wrap to keep trailing spaces. Otherwise you get a zombie caret, + walking around your screen (see #1766). + WARNING: Enabling this causes Paste as plain text in Chrome to remove line breaks + this is probably undesirable + WARNING: This causes copy & paste events to lose bold etc. attributes + NOTE: The walking-zombie caret issue seems to have been fixed in FF upstream + so let's try diabling pre-wrap and see how we get on now. + For more details see: https://github.com/ether/etherpad-lite/issues/2574 + */ word-wrap: break-word; /* fix for issue #1648 - firefox not wrapping long lines (without spaces) correctly */ } +.noprewrap{ + white-space: normal; +} + +body.doesWrap:not(.noprewrap) > div{ + /* Related to #1766 */ + white-space: pre-wrap; +} + #innerdocbody { padding-top: 1px; /* important for some reason? */ padding-right: 10px; @@ -171,8 +214,9 @@ ol { list-style-type: decimal; } +/* Fixes #2223 and #1836 */ ol > li { - display:inline; + display:block; } /* Set the indentation */ @@ -184,6 +228,14 @@ ol.list-number5{ text-indent: 40px; } ol.list-number6{ text-indent: 50px; } ol.list-number7{ text-indent: 60px; } ol.list-number8{ text-indent: 70px; } +ol.list-number9{ text-indent: 80px; } +ol.list-number10{ text-indent: 90px; } +ol.list-number11{ text-indent: 100px; } +ol.list-number12{ text-indent: 110px; } +ol.list-number13{ text-indent: 120px; } +ol.list-number14{ text-indent: 130px; } +ol.list-number15{ text-indent: 140px; } +ol.list-number16{ text-indent: 150px; } /* Add styling to the first item in a list */ @@ -195,6 +247,14 @@ ol.list-number8{ text-indent: 70px; } .list-start-number6 { counter-reset: sixth; } .list-start-number7 { counter-reset: seventh; } .list-start-number8 { counter-reset: eighth; } +.list-start-number9 { counter-reset: ninth; } +.list-start-number10 { counter-reset: tenth; } +.list-start-number11 { counter-reset: eleventh; } +.list-start-number12 { counter-reset: twelth; } +.list-start-number13 { counter-reset: thirteenth; } +.list-start-number14 { counter-reset: fourteenth; } +.list-start-number15 { counter-reset: fifteenth; } +.list-start-number16 { counter-reset: sixteenth; } /* The behavior for incrementing and the prefix */ .list-number1 li:before { @@ -233,6 +293,47 @@ ol.list-number8{ text-indent: 70px; } } .list-number8 li:before { - content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(eighth) ". " ; + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(seventh) "." counter(eighth) ". " ; counter-increment: eighth 1; } + +.list-number9 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(seventh) "." counter(eighth) "." counter(ninth) ". "; + counter-increment: ninth 1; +} + +.list-number10 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(seventh) "." counter(eighth) "." counter(ninth) "." counter(tenth) ". "; + counter-increment: tenth 1; +} + +.list-number11 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(seventh) "." counter(eighth) "." counter(ninth) "." counter(tenth) "." counter(eleventh) ". "; + counter-increment: eleventh 1; +} + +.list-number12 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(seventh) "." counter(eighth) "." counter(ninth) "." counter(tenth) "." counter(eleventh) "." counter(twelth) ". "; + counter-increment: twelth 1; +} + +.list-number13 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(seventh) "." counter(eighth) "." counter(ninth) "." counter(tenth) "." counter(eleventh) "." counter(twelth) "." counter(thirteenth) ". "; + counter-increment: thirteenth 1; +} + +.list-number14 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(eighth) "." counter(ninth) "." counter(tenth) "." counter(eleventh) "." counter(twelth) "." counter(thirteenth) "." counter(fourteenth) ". "; + counter-increment: fourteenth 1; +} + +.list-number15 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(eighth) "." counter(ninth) "." counter(tenth) "." counter(eleventh) "." counter(twelth) "." counter(thirteenth) "." counter(fourteenth) "." counter(fifteenth) ". "; + counter-increment: fifteenth 1; +} + +.list-number16 li:before { + content: counter(first) "." counter(second) "." counter(third) "." counter(fourth) "." counter(fifth) "." counter(sixth) "." counter(eighth) "." counter(ninth) "." counter(tenth) "." counter(eleventh) "." counter(twelth) "." counter(thirteenth) "." counter(fourteenth) "." counter(fifteenth) "." counter(sixteenth) ". "; + counter-increment: fixteenth 1; +} + diff --git a/sources/src/static/css/pad.css b/sources/src/static/css/pad.css old mode 100644 new mode 100755 index 4053ebb..49a54fb --- a/sources/src/static/css/pad.css +++ b/sources/src/static/css/pad.css @@ -59,7 +59,7 @@ a img { height: 32px; } .toolbar ul { - position: relative; + position: absolute; list-style: none; padding-right: 3px; padding-left: 1px; @@ -67,12 +67,10 @@ a img { overflow: hidden; float: left } -.toolbar ul.menu_right { - float: right -} .toolbar ul li { float: left; margin-left: 2px; + height:32px; } .toolbar ul li.separator { border: inherit; @@ -80,6 +78,7 @@ a img { visibility: hidden; width: 0px; padding: 5px; + height:22px; } .toolbar ul li a:hover { text-decoration: none; @@ -103,6 +102,17 @@ a img { -moz-box-shadow: 0 0 8px rgba(0,0,0,.1) inset; box-shadow: 0 0 8px rgba(0,0,0,.1) inset; } +.toolbar ul li .activeButton { + background: #eee; + background: -webkit-linear-gradient(#ddd, #fff); + background: -moz-linear-gradient(#ddd, #fff); + background: -o-linear-gradient(#ddd, #fff); + background: -ms-linear-gradient(#ddd, #fff); + background: linear-gradient(#ddd, #fff); + -webkit-box-shadow: 0 0 8px rgba(0,0,0,.1) inset; + -moz-box-shadow: 0 0 8px rgba(0,0,0,.1) inset; + box-shadow: 0 0 8px rgba(0,0,0,.1) inset; +} .toolbar ul li a { background: #fff; background: -webkit-linear-gradient(#fff, #f0f0f0); @@ -127,9 +137,24 @@ a img { top: 1px; } .toolbar ul li a .buttontext { - color: #222; + color: #666; font-size: 14px; + border:none; + background:none; + margin-top:1px; + color:#666; } + +.buttontext::-moz-focus-inner { + padding: 0; + border: 0; +} + +.buttontext:focus{ + /* Not sure why important is required here but it is */ + border: 1px solid #666 !important; +} + .toolbar ul li a.grouped-left { border-radius: 3px 0 0 3px; } @@ -160,16 +185,30 @@ a img { border: 1px solid #ccc; outline: none; } -#usericon a { +.toolbar ul.menu_left { + left:0px; + right:250px; +} + +.toolbar ul.menu_right { + right:0px; +} + +li[data-key=showusers] > a { min-width: 30px; text-align: left; } -#usericon a #online_count { +li[data-key=showusers] > a #online_count { color: #777; - font-size: 10px; + font-size: 11px; position: relative; top: 2px; + padding-left: 2px; } +#editbar{ + display:none; +} + #editorcontainer { position: absolute; top: 37px; /* + 1px border */ @@ -209,6 +248,41 @@ a img { padding:10px; } +.loadingAnimation{ + -webkit-animation: loadingAnimation 2s infinite linear; + animation: loadingAnimation 2s infinite linear; + font-family: "fontawesome-etherpad"; + font-size:24px; + z-index:150; + width:25px; + height:25px; +} + +.loadingAnimation:before{ + content: "\e80e"; +} + +@-webkit-keyframes loadingAnimation { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@keyframes loadingAnimation { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} + #editorcontainerbox { position: absolute; bottom: 0; @@ -311,7 +385,7 @@ a img { border-radius: 5px; } #myusernameform { - margin-left: 35px + margin-left: 30px } #myusernameedit { font-size: 1.3em; @@ -320,7 +394,7 @@ a img { height: 18px; margin: 0; border: 0; - width: 117px; + width: 122px; background: transparent; } #myusernameform input.editable { @@ -386,6 +460,12 @@ table#otheruserstable { height: 13px; overflow: hidden; margin: 0 4px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } .usertdswatch { width: 1% @@ -596,38 +676,49 @@ table#otheruserstable { margin-top: 4px; background-repeat: no-repeat; padding-left: 25px; - background-image: url("../../static/img/etherpad_lite_icons.png"); color: #333; text-decoration: none; padding-bottom:2px; + display:inline; + padding-left:5px; + font-family: "Arial"; } -#exporthtml { - background-position: 0px -299px +.exportlink{ + font-family: "fontawesome-etherpad"; + display:block; + margin:5px; + color:#666; } -#exportplain { - background-position: 0px -395px +#exporthtmla:before { + content: "\e826"; } -#exportword { - background-position: 0px -275px +#exportplaina:before { + content: "\e802"; } -#exportpdf { - background-position: 0px -371px +#exportworda:before { + content: "\e804"; } -#exportopen { - background-position: 0px -347px +#exportpdfa:before { + content: "\e803"; } -#exportdokuwiki { - background-position: 0px -459px +#exportetherpada:before { + content: "\e806"; +} +#exportopena:before { + content: "\e805"; } /* hidden element */ #importstatusball, -#importarrow, #importmessagesuccess, #importmessageabiword { display: none; } +.throbbold{ + font-weight:bold; +} + #importmessageabiword { color: #900; font-size: small; @@ -637,9 +728,6 @@ table#otheruserstable { margin-top: 12px; padding:2px 4px 2px 4px; } -#importstatusball { - height: 50px -} #chatthrob { display: none; position: absolute; @@ -664,64 +752,80 @@ table#otheruserstable { .buttonicon { width: 16px; height: 16px; - background-image: url('../../static/img/etherpad_lite_icons.png'); - background-repeat: no-repeat; display: inline-block; vertical-align: middle; + border: none; + padding: 0; + background: none; + font-family: "fontawesome-etherpad"; + font-size: 15px; + font-style: normal; + font-weight: normal; + color: #666; + cursor: pointer; } -.buttonicon-bold { - background-position: 0px -116px + +.buttonicon::-moz-focus-inner { + padding: 0; + border: 0 } -.buttonicon-italic { - background-position: 0px 0px + +.buttonicon:focus{ + border: 1px solid #666; } -.buttonicon-underline { - background-position: 0px -236px +.buttonicon-bold:before { + content: "\e81c"; } -.buttonicon-strikethrough { - background-position: 0px -200px +.buttonicon-italic:before { + content: "\e81d"; } -.buttonicon-insertorderedlist { - background-position: 0px -477px +.buttonicon-underline:before { + content: "\e817"; } -.buttonicon-insertunorderedlist { - background-position: 0px -34px +.buttonicon-strikethrough:before { + content: "\e818"; } -.buttonicon-indent { - background-position: 0px -52px +.buttonicon-insertorderedlist:before { + content: "\e816"; } -.buttonicon-outdent { - background-position: 0px -134px +.buttonicon-insertunorderedlist:before { + content: "\e815"; } -.buttonicon-undo { - background-position: 0px -255px +.buttonicon-indent:before { + content: "\e814"; } -.buttonicon-redo { - background-position: 0px -166px +.buttonicon-outdent:before { + content: "\e813"; } -.buttonicon-clearauthorship { - background-position: 0px -86px +.buttonicon-undo:before { + content: "\e823"; } -.buttonicon-settings { - background-position: 0px -436px +.buttonicon-redo:before { + content: "\e824"; } -.buttonicon-import_export { - background-position: 0px -68px +.buttonicon-clearauthorship:before { + content: "\e80d"; } -.buttonicon-embed { - background-position: 0px -18px +.buttonicon-settings:before { + content: "\e833"; } -.buttonicon-history { - background-position: 0px -218px +.buttonicon-import_export:before { + content: "\e834"; } -.buttonicon-chat { - background-position: 0px -102px; +.buttonicon-embed:before { + content: "\e827"; } -.buttonicon-showusers { - background-position: 0px -183px; +.buttonicon-history:before { + content: "\e837"; } -.buttonicon-savedRevision { - background-position: 0px -493px +.buttonicon-chat:before { + content: "\e829"; +} +.buttonicon-showusers:before { + content: "\e808"; +} +.buttonicon-savedRevision:before { + content: "\e835"; } #focusprotector { z-index: 100; @@ -736,9 +840,6 @@ table#otheruserstable { opacity: 0.01; display: none; } -#online_count { - color: #888; -} .rtl { direction: RTL } @@ -759,6 +860,7 @@ input[type=checkbox] { padding: 10px; border-radius: 0 0 6px 6px; border: 1px solid #ccc; + border-top: none; background: #f7f7f7; background: -webkit-linear-gradient(#F7F7F7, #EEE); background: -moz-linear-gradient(#F7F7F7, #EEE); @@ -812,14 +914,15 @@ input[type=checkbox] { } .column { float: left; + width:50%; } #settings, -#importexport, +#import_export, #embed, #connectivity, #users { position: absolute; - top: 36px; + top: 38px; right: 20px; display: none; z-index: 500; @@ -836,13 +939,47 @@ input[type=checkbox] { border-left: 1px solid #ccc !important; width: 185px !important; } -@media screen and (max-width: 600px) { - .toolbar ul li.separator { - display: none; - } - .toolbar ul li a { - padding: 4px 1px - } +.chatAndUsers{ + display:block !important; + right:0px !important; + border-radius:0px !important; + width:182px !important; +/* Below makes UI look weird when X makes editbar flow onto two lines */ +/* margin:2px 0 0 0 !important;*/ + border: none !important; + border-bottom: 1px solid #ccc !important; + height:155px !important; + border-left: 1px solid #ccc !important; +} +.chatAndUsers > #otherusers{ + max-height: 100px; + overflow-y: auto; +} +.chatAndUsersChat > div > #titlecross{ + display:none; +} +.chatAndUsersChat{ + bottom:0px !important; + padding:0 !important; + margin: 165px 0px 0px 0px; + right:0 !important; + width:182px !important; + border: none !important; + padding:5px !important; + border-left: 1px solid #ccc !important; +} + +@media screen and (max-width: 600px) { + .toolbar ul li.separator { + display: none; + } + .toolbar ul li a { + padding: 4px 1px + } + .toolbar ul.menu_left { + left:0px; + right:150px; + } } @media all and (max-width: 400px){ #gritter-notice-wrapper{ @@ -854,7 +991,7 @@ input[type=checkbox] { left:0px; right:0px; color:#000; - } + } .gritter-close { display:block !important; left: auto !important; @@ -882,15 +1019,19 @@ input[type=checkbox] { .gritter-item-wrapper > div{ background: none; } - #editorcontainer { + #editorcontainer { top: 68px; } - #editbar { + #editbar { height: 62px; } - .toolbar ul.menu_right { - float: left; - margin-top:2px; + .toolbar ul.menu_left { + left:0px; + right:100px; + } + + .toolbar ul.menu_right { + right:0px; } .popup { width:100%; @@ -898,19 +1039,29 @@ input[type=checkbox] { top: 72px !important; } } + +/* Mobile devices */ @media only screen and (min-device-width: 320px) and (max-device-width: 720px) { #users { - top: 36px; - bottom: 40px; - border-radius: none; + top: auto; + right:0px !important; + bottom: 33px; + border-radius: 0px !important; + height: 55px !important; + overflow: auto; } #mycolorpicker { left: -73px; + top:auto !important; + bottom:33px !important; /* #mycolorpicker: width -#users: width */; } #editorcontainer { margin-bottom: 33px } + .toolbar ul.menu_left { + right:0px; + } .toolbar ul.menu_right { background: #f7f7f7; background: -webkit-linear-gradient(#f7f7f7, #f1f1f1 80%); @@ -919,6 +1070,7 @@ input[type=checkbox] { background: -ms-linear-gradient(#f7f7f7, #f1f1f1 80%); background: linear-gradient(#f7f7f7, #f1f1f1 80%); width: 100%; + right:0px !important; overflow: hidden; height: 32px; position: fixed; @@ -938,8 +1090,16 @@ input[type=checkbox] { .toolbar ul li a.selected { background: none !important } - #chaticon, #timesliderlink { - display: none !important + li[data-key="showusers"] > a { + + margin-top:-10px; + padding-top:2px !important; + line-height:20px; + vertical-align:top !important; + } + #chaticon { + position:absolute; + right:48px; } .popup { -webkit-border-radius: 0; @@ -952,11 +1112,11 @@ input[type=checkbox] { width: 100%; } #settings, - #importexport, + #import_export, #connectivity, #embed { + top:auto; left: 0; - top: 0; bottom: 33px; right: 0; } @@ -966,6 +1126,15 @@ input[type=checkbox] { #online_count { line-height: 24px } + #chatbox{ + position:absolute; + bottom:33px !important; + margin: 65px 0 0 0; + } + #gritter-notice-wrapper{ + bottom:43px !important; + right:10px !important; + } } #passwordRequired{ @@ -980,6 +1149,10 @@ input[type=checkbox] { display:none; } +#noCookie{ + display:none; +} + /* gritter stuff */ #gritter-notice-wrapper { position:fixed; @@ -987,6 +1160,7 @@ input[type=checkbox] { right:20px; width:301px; z-index:9999; + background-color:#666; } #gritter-notice-wrapper.bottom-right { top: auto; @@ -1000,14 +1174,12 @@ input[type=checkbox] { } .gritter-top { - background:url(../../static/img/gritter.png) no-repeat left -30px; height:10px; } .hover .gritter-top { background-position:right -30px; } .gritter-bottom { - background:url(../../static/img/gritter.png) no-repeat left bottom; height:8px; margin:0; } @@ -1016,7 +1188,6 @@ input[type=checkbox] { } .gritter-item { display:block; - background:url(../../static/img/gritter.png) no-repeat left -40px; color:#eee; padding:2px 11px 8px 11px; font-size: 11px; @@ -1034,7 +1205,6 @@ input[type=checkbox] { position:absolute; top:5px; left:3px; - background:url('../../static/img/gritter.png') no-repeat left top; cursor:pointer; width:30px; height:30px; @@ -1069,16 +1239,56 @@ input[type=checkbox] { .gritter-light .gritter-title { text-shadow: none; } - /* End of gritter stuff */ -.activeButton{ - background: #eee; - background: -webkit-linear-gradient(#ddd, #fff); - background: -moz-linear-gradient(#ddd, #fff); - background: -o-linear-gradient(#ddd, #fff); - background: -ms-linear-gradient(#ddd, #fff); - background: linear-gradient(#ddd, #fff); - -webkit-box-shadow: 0 0 8px rgba(0,0,0,.1) inset; - -moz-box-shadow: 0 0 8px rgba(0,0,0,.1) inset; - box-shadow: 0 0 8px rgba(0,0,0,.1) inset; + +@font-face { + font-family: opendyslexic; + src: url("../../static/font/opendyslexic.otf") format("opentype"); } + +@font-face { + font-family: "fontawesome-etherpad"; + src:url("../font/fontawesome-etherpad.eot"); + src:url("../font/fontawesome-etherpad.eot?#iefix") format("embedded-opentype"), + url("../font/fontawesome-etherpad.woff") format("woff"), + url("../font/fontawesome-etherpad.ttf") format("truetype"), + url("../font/fontawesome-etherpad.svg#fontawesome-etherpad") format("svg"); + font-weight: normal; + font-style: normal; + +} + +[data-icon]:before { + font-family: "fontawesome-etherpad" !important; + content: attr(data-icon); + font-style: normal !important; + font-weight: normal !important; + font-variant: normal !important; + text-transform: none !important; + speak: none; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +[class^="icon-"]:before, +[class*=" icon-"]:before { + font-family: "fontawesome-etherpad" !important; + font-style: normal !important; + font-weight: normal !important; + font-variant: normal !important; + text-transform: none !important; + speak: none; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.hideControlsEditor{ + top:0px !important; +} +.hideControlsEditbar{ + display:none !important; +} + + diff --git a/sources/src/static/css/timeslider.css b/sources/src/static/css/timeslider.css old mode 100644 new mode 100755 index f97d4f2..9f4e468 --- a/sources/src/static/css/timeslider.css +++ b/sources/src/static/css/timeslider.css @@ -14,14 +14,14 @@ top: 0; } #timeslider-left { - background-image: url(../../static/img/timeslider_left.png); + background-color:#fff; height: 63px; left: 0; position: absolute; width: 134px; } #timeslider-right { - background-image: url(../../static/img/timeslider_right.png); + background-color:#fff; height: 63px; position: absolute; right: 0; @@ -29,7 +29,6 @@ width: 155px; } #timeslider { - background-image: url(../../static/img/timeslider_background.png); height: 63px; margin: 0 9px; -webkit-touch-callout: none; @@ -38,6 +37,8 @@ -moz-user-select: none; -ms-user-select: none; user-select: none; + background-color:#fff; + /* bgcolor is reuqired so you can't see pad content behind it */ } #timeslider #timeslider-slider { height: 61px; @@ -50,7 +51,7 @@ -webkit-user-select: none; -moz-user-select: none; user-select: none; - background-image: url(../../static/img/crushed_current_location.png); + background-color: #666; cursor: pointer; height: 61px; left: 0; @@ -63,74 +64,114 @@ -moz-user-select: none; user-select: none; cursor: pointer; - height: 35px; + height: 60px; margin-left: 5px; margin-right: 150px; position: relative; - top: 20px; + top: 0px; } + #playpause_button, #playpause_button_icon { - height: 47px; + height: 44px; position: absolute; - width: 47px; + width: 44px; + text-align:center; + vertical-align:middle; + background:none; } #playpause_button { - background-image: url(../../static/img/crushed_button_undepressed.png); right: 77px; top: 9px; + height:50px; + height:50px; + background: background-linear-gradient( #F7F7F7, #F1F1F1 80%) repeat scroll 0 0 transparent; + border-radius:24px; + cursor:hand; } +#playpause_button_icon:before { + line-height:44px; + padding-left:2px; + font-family: fontawesome-etherpad; + content: "\e82c"; + font-size:24px; + color:#666; +} + #playpause_button_icon { - background-image: url(../../static/img/play.png); left: 0; top: 0; + border-radius:48px; + border: solid 1px #666; } -.pause#playpause_button_icon { - background-image: url(../../static/img/pause.png) +.pause:before { + line-height:44px; + padding-left:2px; + font-family: fontawesome-etherpad; + content: "\e82e" !important; + font-size:24px; + color:#666; + padding-left:0 !important; } #leftstar, #rightstar, #leftstep, #rightstep { - background: url(../../static/img/stepper_buttons.png) 0 0 no-repeat; - height: 21px; + background-color: white; overflow: hidden; position: absolute; } -#leftstar { - background-position: 0 -44px; - right: 34px; - top: 8px; - width: 30px; + +.stepper{ + font-family: fontawesome-etherpad; + border-radius:2px; + border: #666 solid 1px; +/* line-height:18px; */ + text-align:center; + height:22px; + color:#666; } -#rightstar { - background-position: -29px -44px; - right: 5px; - top: 8px; - width: 29px; + +stepper:active{ + color:#000; } + #leftstep { - background-position: 0 -22px; - right: 34px; + right: 38px; top: 20px; - width: 30px; + width: 25px; } +#leftstep:before{ + content: '\e821'; + vertical-align:middle; +} +#rightstep:before{ + content: "\e822"; + vertical-align:middle; +} + #rightstep { - background-position: -29px -22px; - right: 5px; + right: 12px; top: 20px; - width: 30px; + width: 25px; +} +.star:before{ + font-family: fontawesome-etherpad; + content: "\e835"; + vertical-align:middle; + font-size:16px; } #timeslider .star { - background-image: url(../../static/img/star.png); cursor: pointer; height: 16px; position: absolute; - top: 40px; + top: 25px; width: 15px; } #timeslider #timer { - color: #fff; + background: linear-gradient(#F7F7F7, #F1F1F1 80%) repeat scroll 0% 0% transparent; + padding:2px; + border-radius:2px; font-family: Arial, sans-serif; font-size: 11px; left: 7px; @@ -154,21 +195,27 @@ -ms-user-select: none; user-select: none; } -#editbarright { - float: right +.editbarright { + float: right; + text-align: right; + height: 30px !important; } -#settings, -#importexport, -#embed, -#connectivity, -#users { - top: 62px; +.toolbar ul{ + position:relative; + float:right; + height:30px; } -#importexport .popup { - width: 185px +#import_export, #settings{ + top: 115px; + position: fixed; } -#importexport { - top: 118px; +#import_export .popup { + width: 183px; + border-top: none; + border-right: none; + border-radius: 0 0 0 6px; +} +#import_export { width: 185px; } .timeslider-bar { @@ -185,8 +232,7 @@ .timeslider-bar #editbar { border-bottom: none; float: right; - width: 170px; - width: initial; + width: 180px; } .timeslider-bar h1 { margin: 5px @@ -287,16 +333,19 @@ OL { .list-number6 { list-style-type: lower-roman } -/* IE 6/7 fixes */ -* HTML #ui-slider-handle { - background-image: url(../../static/img/current_location.gif) + +button{ + margin:0; + padding:0; + cursor:pointer; } -* HTML #timeslider .star { - background-image: url(../../static/img/star.gif) + +button::-moz-focus-inner { + padding: 0; + border: 0 } -* HTML #playpause_button_icon { - background-image: url(../../static/img/play.gif) -} -* HTML .pause#playpause_button_icon { - background-image: url(../../static/img/pause.gif) + +button:focus{ + border: 1px solid #666; } + diff --git a/sources/src/static/custom/.gitignore b/sources/src/static/custom/.gitignore old mode 100644 new mode 100755 diff --git a/sources/src/static/custom/css.template b/sources/src/static/custom/css.template old mode 100644 new mode 100755 diff --git a/sources/src/static/custom/js.template b/sources/src/static/custom/js.template old mode 100644 new mode 100755 diff --git a/sources/src/static/favicon.ico b/sources/src/static/favicon.ico old mode 100644 new mode 100755 index df7b628..938e955 Binary files a/sources/src/static/favicon.ico and b/sources/src/static/favicon.ico differ diff --git a/sources/src/static/font/config.json b/sources/src/static/font/config.json new file mode 100755 index 0000000..34231cc --- /dev/null +++ b/sources/src/static/font/config.json @@ -0,0 +1,346 @@ +{ + "name": "fontawesome-etherpad", + "css_prefix_text": "icon-", + "css_use_suffix": false, + "hinting": true, + "units_per_em": 1000, + "ascent": 850, + "glyphs": [ + { + "uid": "bf882b30900da12fca090d9796bc3030", + "css": "mail", + "code": 59402, + "src": "fontawesome" + }, + { + "uid": "474656633f79ea2f1dad59ff63f6bf07", + "css": "star", + "code": 59446, + "src": "fontawesome" + }, + { + "uid": "d17030afaecc1e1c22349b99f3c4992a", + "css": "star-empty", + "code": 59445, + "src": "fontawesome" + }, + { + "uid": "8b80d36d4ef43889db10bc1f0dc9a862", + "css": "user", + "code": 59401, + "src": "fontawesome" + }, + { + "uid": "31972e4e9d080eaa796290349ae6c1fd", + "css": "users", + "code": 59400, + "src": "fontawesome" + }, + { + "uid": "0f99ab40ab0b4d64a74f2d0deeb03e42", + "css": "videocam", + "code": 59403, + "src": "fontawesome" + }, + { + "uid": "381da2c2f7fd51f8de877c044d7f439d", + "css": "picture", + "code": 59404, + "src": "fontawesome" + }, + { + "uid": "7fd683b2c518ceb9e5fa6757f2276faa", + "css": "eye-off", + "code": 59405, + "src": "fontawesome" + }, + { + "uid": "7034e4d22866af82bef811f52fb1ba46", + "css": "code", + "code": 59431, + "src": "fontawesome" + }, + { + "uid": "7277ded7695b2a307a5f9d50097bb64c", + "css": "print", + "code": 59393, + "src": "fontawesome" + }, + { + "uid": "dcedf50ab1ede3283d7a6c70e2fe32f3", + "css": "chat", + "code": 59432, + "src": "fontawesome" + }, + { + "uid": "9c1376672bb4f1ed616fdd78a23667e9", + "css": "comment-empty", + "code": 59433, + "src": "fontawesome" + }, + { + "uid": "f48ae54adfb27d8ada53d0fd9e34ee10", + "css": "trash-empty", + "code": 59434, + "src": "fontawesome" + }, + { + "uid": "1b5a5d7b7e3c71437f5a26befdd045ed", + "css": "doc", + "code": 59394, + "src": "fontawesome" + }, + { + "uid": "9daa1fdf0838118518a7e22715e83abc", + "css": "file-pdf", + "code": 59395, + "src": "fontawesome" + }, + { + "uid": "310ffd629da85142bc8669f010556f2d", + "css": "file-word", + "code": 59396, + "src": "fontawesome" + }, + { + "uid": "f761c3bbe16ba2d332914ecb28e7a042", + "css": "file-excel", + "code": 59397, + "src": "fontawesome" + }, + { + "uid": "edcd4022de8d8df266ef7c42d2658ca5", + "css": "file-powerpoint", + "code": 59398, + "src": "fontawesome" + }, + { + "uid": "3c961c1a8d874815856fc6637dc5a13c", + "css": "file-image", + "code": 59399, + "src": "fontawesome" + }, + { + "uid": "26613a2e6bc41593c54bead46f8c8ee3", + "css": "file-code", + "code": 59430, + "src": "fontawesome" + }, + { + "uid": "e99461abfef3923546da8d745372c995", + "css": "cog", + "code": 59443, + "src": "fontawesome" + }, + { + "uid": "19c50c52858a81de58f9db488aba77bc", + "css": "mic", + "code": 59435, + "src": "fontawesome" + }, + { + "uid": "598a5f2bcf3521d1615de8e1881ccd17", + "css": "clock", + "code": 59447, + "src": "fontawesome" + }, + { + "uid": "bc71f4c6e53394d5ba46b063040014f1", + "css": "cw", + "code": 59428, + "src": "fontawesome" + }, + { + "uid": "f9c3205df26e7778abac86183aefdc99", + "css": "ccw", + "code": 59427, + "src": "fontawesome" + }, + { + "uid": "a73c5deb486c8d66249811642e5d719a", + "css": "arrows-cw", + "code": 59429, + "src": "fontawesome" + }, + { + "uid": "6020aff067fc3c119cdd75daa5249220", + "css": "exchange", + "code": 59444, + "src": "fontawesome" + }, + { + "uid": "ce06b5805120d0c2f8d60cd3f1a4fdb5", + "css": "play", + "code": 59436, + "src": "fontawesome" + }, + { + "uid": "b624a1e512819d410ddbee84e6918b9d", + "css": "stop", + "code": 59437, + "src": "fontawesome" + }, + { + "uid": "0b28050bac9d3facf2f0226db643ece0", + "css": "pause", + "code": 59438, + "src": "fontawesome" + }, + { + "uid": "c47efa0e3e74f6ba4c2562c1258fff1f", + "css": "to-end", + "code": 59426, + "src": "fontawesome" + }, + { + "uid": "12052b30d23a1a70d6b32962d5464cae", + "css": "to-start", + "code": 59425, + "src": "fontawesome" + }, + { + "uid": "f9cbf7508cd04145ade2800169959eef", + "css": "font", + "code": 59419, + "src": "fontawesome" + }, + { + "uid": "02cca871bb69da75e8ee286b7055832c", + "css": "bold", + "code": 59420, + "src": "fontawesome" + }, + { + "uid": "a8cb1c217f02b073db3670c061cc54d2", + "css": "italic", + "code": 59421, + "src": "fontawesome" + }, + { + "uid": "0c708edd8fae2376b3370aa56d40cf9e", + "css": "header", + "code": 59422, + "src": "fontawesome" + }, + { + "uid": "c009d417f87d6a27bb5a1cefd30b6cbd", + "css": "text-height", + "code": 59423, + "src": "fontawesome" + }, + { + "uid": "13a971bcccd2dda26d4d4eccd8593f8a", + "css": "text-width", + "code": 59424, + "src": "fontawesome" + }, + { + "uid": "f4f0e849b805be1f6d76b65581cb3b8b", + "css": "align-left", + "code": 59392, + "src": "fontawesome" + }, + { + "uid": "ae6336c46d73af999fe7460c089abb4d", + "css": "align-center", + "code": 59407, + "src": "fontawesome" + }, + { + "uid": "e1e7306b47c3c5e6faecce9d32571381", + "css": "align-right", + "code": 59408, + "src": "fontawesome" + }, + { + "uid": "25a81737628d1e654a30ad412d7d6dd7", + "css": "align-justify", + "code": 59409, + "src": "fontawesome" + }, + { + "uid": "48b87105bd38c20315f1b705b8c7b38c", + "css": "list", + "code": 59410, + "src": "fontawesome" + }, + { + "uid": "594e9271c08ff732c04b3bf3117b9040", + "css": "indent-left", + "code": 59411, + "src": "fontawesome" + }, + { + "uid": "4d2dfc45d8176b1f26aed973fa84a91e", + "css": "indent-right", + "code": 59412, + "src": "fontawesome" + }, + { + "uid": "a2a74f5e7b7d9ba054897d8c795a326a", + "css": "list-bullet", + "code": 59413, + "src": "fontawesome" + }, + { + "uid": "f6766a8b042c2453a4e153af03294383", + "css": "list-numbered", + "code": 59414, + "src": "fontawesome" + }, + { + "uid": "61c242c9e2134d5864d7fdd57b3c9289", + "css": "strike", + "code": 59416, + "src": "fontawesome" + }, + { + "uid": "d4a4a38a40b728f46dad1de4ac950231", + "css": "underline", + "code": 59415, + "src": "fontawesome" + }, + { + "uid": "4e88371fb8857dacc1f66afe6314e426", + "css": "superscript", + "code": 59417, + "src": "fontawesome" + }, + { + "uid": "3d1c929dbc966992185ce749548c1b2c", + "css": "subscript", + "code": 59418, + "src": "fontawesome" + }, + { + "uid": "9396b2d8849e0213a0f11c5fd7fcc522", + "css": "tasks", + "code": 59442, + "src": "fontawesome" + }, + { + "uid": "0bda4bc779d4c32623dec2e43bd67ee8", + "css": "gauge", + "code": 59439, + "src": "fontawesome" + }, + { + "uid": "cda0cdcfd38f5f1d9255e722dad42012", + "css": "spinner", + "code": 59406, + "src": "fontawesome" + }, + { + "uid": "fa9a0b7e788c2d78e24cef1de6b70e80", + "css": "brush", + "code": 59440, + "src": "fontawesome" + }, + { + "uid": "be13b8c668eb18839d5d53107725f1de", + "css": "slideshare", + "code": 59441, + "src": "fontawesome" + } + ] +} \ No newline at end of file diff --git a/sources/src/static/font/fontawesome-etherpad.eot b/sources/src/static/font/fontawesome-etherpad.eot new file mode 100755 index 0000000..fb65168 Binary files /dev/null and b/sources/src/static/font/fontawesome-etherpad.eot differ diff --git a/sources/src/static/font/fontawesome-etherpad.svg b/sources/src/static/font/fontawesome-etherpad.svg new file mode 100755 index 0000000..4033c4d --- /dev/null +++ b/sources/src/static/font/fontawesome-etherpad.svg @@ -0,0 +1,67 @@ + + + +Copyright (C) 2014 by original authors @ fontello.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sources/src/static/font/fontawesome-etherpad.ttf b/sources/src/static/font/fontawesome-etherpad.ttf new file mode 100755 index 0000000..f2fe398 Binary files /dev/null and b/sources/src/static/font/fontawesome-etherpad.ttf differ diff --git a/sources/src/static/font/fontawesome-etherpad.woff b/sources/src/static/font/fontawesome-etherpad.woff new file mode 100755 index 0000000..98de9c3 Binary files /dev/null and b/sources/src/static/font/fontawesome-etherpad.woff differ diff --git a/sources/src/static/font/opendyslexic.otf b/sources/src/static/font/opendyslexic.otf new file mode 100755 index 0000000..1a7c9d4 Binary files /dev/null and b/sources/src/static/font/opendyslexic.otf differ diff --git a/sources/src/static/img/backgrad.gif b/sources/src/static/img/backgrad.gif deleted file mode 100644 index 8fee1a5..0000000 Binary files a/sources/src/static/img/backgrad.gif and /dev/null differ diff --git a/sources/src/static/img/connectingbar.gif b/sources/src/static/img/connectingbar.gif deleted file mode 100644 index 5e54d69..0000000 Binary files a/sources/src/static/img/connectingbar.gif and /dev/null differ diff --git a/sources/src/static/img/crushed_button_depressed.png b/sources/src/static/img/crushed_button_depressed.png deleted file mode 100644 index d75dcce..0000000 Binary files a/sources/src/static/img/crushed_button_depressed.png and /dev/null differ diff --git a/sources/src/static/img/crushed_button_undepressed.png b/sources/src/static/img/crushed_button_undepressed.png deleted file mode 100644 index d86e3f3..0000000 Binary files a/sources/src/static/img/crushed_button_undepressed.png and /dev/null differ diff --git a/sources/src/static/img/crushed_current_location.png b/sources/src/static/img/crushed_current_location.png deleted file mode 100644 index 76e0835..0000000 Binary files a/sources/src/static/img/crushed_current_location.png and /dev/null differ diff --git a/sources/src/static/img/etherpad_lite_icons.png b/sources/src/static/img/etherpad_lite_icons.png deleted file mode 100644 index 27867d4..0000000 Binary files a/sources/src/static/img/etherpad_lite_icons.png and /dev/null differ diff --git a/sources/src/static/img/fileicons.gif b/sources/src/static/img/fileicons.gif deleted file mode 100644 index c03b603..0000000 Binary files a/sources/src/static/img/fileicons.gif and /dev/null differ diff --git a/sources/src/static/img/gritter.png b/sources/src/static/img/gritter.png deleted file mode 100644 index 0ca3bc0..0000000 Binary files a/sources/src/static/img/gritter.png and /dev/null differ diff --git a/sources/src/static/img/leftarrow.png b/sources/src/static/img/leftarrow.png deleted file mode 100644 index 1bec128..0000000 Binary files a/sources/src/static/img/leftarrow.png and /dev/null differ diff --git a/sources/src/static/img/loading.gif b/sources/src/static/img/loading.gif deleted file mode 100644 index bb42be5..0000000 Binary files a/sources/src/static/img/loading.gif and /dev/null differ diff --git a/sources/src/static/img/pause.png b/sources/src/static/img/pause.png deleted file mode 100644 index 657782c..0000000 Binary files a/sources/src/static/img/pause.png and /dev/null differ diff --git a/sources/src/static/img/play.png b/sources/src/static/img/play.png deleted file mode 100644 index 19afe03..0000000 Binary files a/sources/src/static/img/play.png and /dev/null differ diff --git a/sources/src/static/img/roundcorner_left.gif b/sources/src/static/img/roundcorner_left.gif deleted file mode 100644 index 000de75..0000000 Binary files a/sources/src/static/img/roundcorner_left.gif and /dev/null differ diff --git a/sources/src/static/img/roundcorner_right.gif b/sources/src/static/img/roundcorner_right.gif deleted file mode 100644 index 97acfbf..0000000 Binary files a/sources/src/static/img/roundcorner_right.gif and /dev/null differ diff --git a/sources/src/static/img/star.png b/sources/src/static/img/star.png deleted file mode 100644 index e0c7099..0000000 Binary files a/sources/src/static/img/star.png and /dev/null differ diff --git a/sources/src/static/img/stepper_buttons.png b/sources/src/static/img/stepper_buttons.png deleted file mode 100644 index e011a45..0000000 Binary files a/sources/src/static/img/stepper_buttons.png and /dev/null differ diff --git a/sources/src/static/img/timeslider_background.png b/sources/src/static/img/timeslider_background.png deleted file mode 100644 index 851af4e..0000000 Binary files a/sources/src/static/img/timeslider_background.png and /dev/null differ diff --git a/sources/src/static/img/timeslider_left.png b/sources/src/static/img/timeslider_left.png deleted file mode 100644 index 48a9b0e..0000000 Binary files a/sources/src/static/img/timeslider_left.png and /dev/null differ diff --git a/sources/src/static/img/timeslider_right.png b/sources/src/static/img/timeslider_right.png deleted file mode 100644 index 1a1b268..0000000 Binary files a/sources/src/static/img/timeslider_right.png and /dev/null differ diff --git a/sources/src/static/js/AttributeManager.js b/sources/src/static/js/AttributeManager.js old mode 100644 new mode 100755 index 2d523f6..3f46490 --- a/sources/src/static/js/AttributeManager.js +++ b/sources/src/static/js/AttributeManager.js @@ -96,6 +96,85 @@ AttributeManager.prototype = _(AttributeManager.prototype).extend({ return ''; }, + /* + Gets all attributes on a line + @param lineNum: the number of the line to get the attribute for + */ + getAttributesOnLine: function(lineNum){ + // get attributes of first char of line + var aline = this.rep.alines[lineNum]; + var attributes = [] + if (aline) + { + var opIter = Changeset.opIterator(aline) + , op + if (opIter.hasNext()) + { + op = opIter.next() + if(!op.attribs) return [] + + Changeset.eachAttribNumber(op.attribs, function(n) { + attributes.push([this.rep.apool.getAttribKey(n), this.rep.apool.getAttribValue(n)]) + }.bind(this)) + return attributes; + } + } + return []; + }, + + /* + Gets all attributes at a position containing line number and column + @param lineNumber starting with zero + @param column starting with zero + returns a list of attributes in the format + [ ["key","value"], ["key","value"], ... ] + */ + getAttributesOnPosition: function(lineNumber, column){ + // get all attributes of the line + var aline = this.rep.alines[lineNumber]; + + if (!aline) { + return []; + } + // iterate through all operations of a line + var opIter = Changeset.opIterator(aline); + + // we need to sum up how much characters each operations take until the wanted position + var currentPointer = 0; + var attributes = []; + var currentOperation; + + while (opIter.hasNext()) { + currentOperation = opIter.next(); + currentPointer = currentPointer + currentOperation.chars; + + if (currentPointer > column) { + // we got the operation of the wanted position, now collect all its attributes + Changeset.eachAttribNumber(currentOperation.attribs, function (n) { + attributes.push([ + this.rep.apool.getAttribKey(n), + this.rep.apool.getAttribValue(n) + ]); + }.bind(this)); + + // skip the loop + return attributes; + } + } + return attributes; + + }, + + /* + Gets all attributes at caret position + if the user selected a range, the start of the selection is taken + returns a list of attributes in the format + [ ["key","value"], ["key","value"], ... ] + */ + getAttributesOnCaret: function(){ + return this.getAttributesOnPosition(this.rep.selStart[0], this.rep.selStart[1]); + }, + /* Sets a specified attribute on a line @param lineNum: the number of the line to set the attribute for @@ -127,38 +206,58 @@ AttributeManager.prototype = _(AttributeManager.prototype).extend({ return this.applyChangeset(builder); }, - /* - Removes a specified attribute on a line - @param lineNum: the number of the affected line - @param attributeKey: the name of the attribute to remove, e.g. list - + /** + * Removes a specified attribute on a line + * @param lineNum the number of the affected line + * @param attributeName the name of the attribute to remove, e.g. list + * @param attributeValue if given only attributes with equal value will be removed */ - removeAttributeOnLine: function(lineNum, attributeName, attributeValue){ - - var loc = [0,0]; - var builder = Changeset.builder(this.rep.lines.totalWidth()); - var hasMarker = this.lineHasMarker(lineNum); - - if(hasMarker){ - ChangesetUtils.buildKeepRange(this.rep, builder, loc, (loc = [lineNum, 0])); - ChangesetUtils.buildRemoveRange(this.rep, builder, loc, (loc = [lineNum, 1])); + removeAttributeOnLine: function(lineNum, attributeName, attributeValue){ + var builder = Changeset.builder(this.rep.lines.totalWidth()); + var hasMarker = this.lineHasMarker(lineNum); + var found = false; + + var attribs = _(this.getAttributesOnLine(lineNum)).map(function (attrib) { + if (attrib[0] === attributeName && (!attributeValue || attrib[0] === attributeValue)){ + found = true; + return [attributeName, '']; } - - return this.applyChangeset(builder); - }, + return attrib; + }); + + if (!found) { + return; + } + + ChangesetUtils.buildKeepToStartOfRange(this.rep, builder, [lineNum, 0]); + + var countAttribsWithMarker = _.chain(attribs).filter(function(a){return !!a[1];}) + .map(function(a){return a[0];}).difference(['author', 'lmkr', 'insertorder', 'start']).size().value(); + + //if we have marker and any of attributes don't need to have marker. we need delete it + if(hasMarker && !countAttribsWithMarker){ + ChangesetUtils.buildRemoveRange(this.rep, builder, [lineNum, 0], [lineNum, 1]); + }else{ + ChangesetUtils.buildKeepRange(this.rep, builder, [lineNum, 0], [lineNum, 1], attribs, this.rep.apool); + } + + return this.applyChangeset(builder); + }, /* - Sets a specified attribute on a line - @param lineNum: the number of the line to set the attribute for - @param attributeKey: the name of the attribute to set, e.g. list - @param attributeValue: an optional parameter to pass to the attribute (e.g. indention level) + Toggles a line attribute for the specified line number + If a line attribute with the specified name exists with any value it will be removed + Otherwise it will be set to the given value + @param lineNum: the number of the line to toggle the attribute for + @param attributeKey: the name of the attribute to toggle, e.g. list + @param attributeValue: the value to pass to the attribute (e.g. indention level) */ toggleAttributeOnLine: function(lineNum, attributeName, attributeValue) { - return this.getAttributeOnLine(attributeName) ? + return this.getAttributeOnLine(lineNum, attributeName) ? this.removeAttributeOnLine(lineNum, attributeName) : this.setAttributeOnLine(lineNum, attributeName, attributeValue); } }); -module.exports = AttributeManager; \ No newline at end of file +module.exports = AttributeManager; diff --git a/sources/src/static/js/AttributePool.js b/sources/src/static/js/AttributePool.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/Changeset.js b/sources/src/static/js/Changeset.js old mode 100644 new mode 100755 index 355bef4..04a0551 --- a/sources/src/static/js/Changeset.js +++ b/sources/src/static/js/Changeset.js @@ -260,13 +260,13 @@ exports.checkRep = function (cs) { break; case '-': oldPos += o.chars; - exports.assert(oldPos < oldLen, oldPos, " >= ", oldLen, " in ", cs); + exports.assert(oldPos <= oldLen, oldPos, " > ", oldLen, " in ", cs); break; case '+': { calcNewLen += o.chars; numInserted += o.chars; - exports.assert(calcNewLen < newLen, calcNewLen, " >= ", newLen, " in ", cs); + exports.assert(calcNewLen <= newLen, calcNewLen, " > ", newLen, " in ", cs); break; } } @@ -507,6 +507,11 @@ exports.opAssembler = function () { */ exports.stringIterator = function (str) { var curIndex = 0; + // newLines is the number of \n between curIndex and str.length + var newLines = str.split("\n").length - 1 + function getnewLines(){ + return newLines + } function assertRemaining(n) { exports.assert(n <= remaining(), "!(", n, " <= ", remaining(), ")"); @@ -515,6 +520,7 @@ exports.stringIterator = function (str) { function take(n) { assertRemaining(n); var s = str.substr(curIndex, n); + newLines -= s.split("\n").length - 1 curIndex += n; return s; } @@ -537,7 +543,8 @@ exports.stringIterator = function (str) { take: take, skip: skip, remaining: remaining, - peek: peek + peek: peek, + newlines: getnewLines }; }; @@ -913,12 +920,27 @@ exports.applyToText = function (cs, str) { var op = csIter.next(); switch (op.opcode) { case '+': + //op is + and op.lines 0: no newlines must be in op.chars + //op is + and op.lines >0: op.chars must include op.lines newlines + if(op.lines != bankIter.peek(op.chars).split("\n").length - 1){ + throw new Error("newline count is wrong in op +; cs:"+cs+" and text:"+str); + } assem.append(bankIter.take(op.chars)); break; case '-': + //op is - and op.lines 0: no newlines must be in the deleted string + //op is - and op.lines >0: op.lines newlines must be in the deleted string + if(op.lines != strIter.peek(op.chars).split("\n").length - 1){ + throw new Error("newline count is wrong in op -; cs:"+cs+" and text:"+str); + } strIter.skip(op.chars); break; case '=': + //op is = and op.lines 0: no newlines must be in the copied string + //op is = and op.lines >0: op.lines newlines must be in the copied string + if(op.lines != strIter.peek(op.chars).split("\n").length - 1){ + throw new Error("newline count is wrong in op =; cs:"+cs+" and text:"+str); + } assem.append(strIter.take(op.chars)); break; } @@ -1216,7 +1238,7 @@ exports.mutateAttributionLines = function (cs, lines, pool) { } } - exports.assert(!lineAssem, "line assembler not finished"); + exports.assert(!lineAssem, "line assembler not finished:"+cs); mut.close(); //dmesg("-> "+lines.toSource()); @@ -1386,8 +1408,8 @@ exports.makeSplice = function (oldFullText, spliceStart, numRemoved, newText, op if (spliceStart >= oldLen) { spliceStart = oldLen - 1; } - if (numRemoved > oldFullText.length - spliceStart - 1) { - numRemoved = oldFullText.length - spliceStart - 1; + if (numRemoved > oldFullText.length - spliceStart) { + numRemoved = oldFullText.length - spliceStart; } var oldText = oldFullText.substring(spliceStart, spliceStart + numRemoved); var newLen = oldLen + newText.length - oldText.length; diff --git a/sources/src/static/js/ChangesetUtils.js b/sources/src/static/js/ChangesetUtils.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/ace.js b/sources/src/static/js/ace.js old mode 100644 new mode 100755 index addc412..c446939 --- a/sources/src/static/js/ace.js +++ b/sources/src/static/js/ace.js @@ -265,7 +265,7 @@ plugins.ensure(function () {\n\ iframeHTML: iframeHTML }); - iframeHTML.push(' '); + iframeHTML.push(' '); // Expose myself to global for my child frame. var thisFunctionsName = "ChildAccessibleAce2Editor"; @@ -279,6 +279,7 @@ window.onload = function () {\n\ setTimeout(function () {\n\ var iframe = document.createElement("IFRAME");\n\ iframe.name = "ace_inner";\n\ + iframe.title = "pad";\n\ iframe.scrolling = "no";\n\ var outerdocbody = document.getElementById("outerdocbody");\n\ iframe.frameBorder = 0;\n\ @@ -319,6 +320,7 @@ window.onload = function () {\n\ var outerFrame = document.createElement("IFRAME"); outerFrame.name = "ace_outer"; outerFrame.frameBorder = 0; // for IE + outerFrame.title = "Ether"; info.frame = outerFrame; document.getElementById(containerId).appendChild(outerFrame); diff --git a/sources/src/static/js/ace2_common.js b/sources/src/static/js/ace2_common.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/ace2_inner.js b/sources/src/static/js/ace2_inner.js old mode 100644 new mode 100755 index 07a9b97..5790782 --- a/sources/src/static/js/ace2_inner.js +++ b/sources/src/static/js/ace2_inner.js @@ -21,6 +21,17 @@ */ var _, $, jQuery, plugins, Ace2Common; +var browser = require('./browser').browser; +if(browser.msie){ + // Honestly fuck IE royally. + // Basically every hack we have since V11 causes a problem + if(parseInt(browser.version) >= 11){ + delete browser.msie; + browser.chrome = true; + browser.modernIE = true; + } +} + Ace2Common = require('./ace2_common'); plugins = require('ep_etherpad-lite/static/js/pluginfw/client_plugins'); @@ -28,15 +39,13 @@ $ = jQuery = require('./rjquery').$; _ = require("./underscore"); var isNodeText = Ace2Common.isNodeText, - browser = $.browser, getAssoc = Ace2Common.getAssoc, setAssoc = Ace2Common.setAssoc, isTextNode = Ace2Common.isTextNode, binarySearchInfinite = Ace2Common.binarySearchInfinite, htmlPrettyEscape = Ace2Common.htmlPrettyEscape, noop = Ace2Common.noop; - var hooks = require('./pluginfw/hooks'); - +var hooks = require('./pluginfw/hooks'); function Ace2Inner(){ @@ -58,7 +67,7 @@ function Ace2Inner(){ var isSetUp = false; var THE_TAB = ' '; //4 - var MAX_LIST_LEVEL = 8; + var MAX_LIST_LEVEL = 16; var LINE_NUMBER_PADDING_RIGHT = 4; var LINE_NUMBER_PADDING_LEFT = 4; @@ -152,7 +161,6 @@ function Ace2Inner(){ var dmesg = noop; window.dmesg = noop; - var scheduler = parent; // hack for opera required var textFace = 'monospace'; @@ -597,6 +605,16 @@ function Ace2Inner(){ fixView(); }); }, 0); + + // Chrome can't handle the truth.. If CSS rule white-space:pre-wrap + // is true then any paste event will insert two lines.. + // Sadly this will mean you get a walking Caret in Chrome when clicking on a URL + // So this has to be set to pre-wrap ;( + // We need to file a bug w/ the Chromium team. + if(browser.chrome){ + $("#innerdocbody").addClass("noprewrap"); + } + } function setStyled(newVal) @@ -1348,7 +1366,7 @@ function Ace2Inner(){ // (from how it looks in our representation) and record them in a way // that can be used to "normalize" the document (apply the changes to our // representation, and put the DOM in a canonical form). - //top.console.log("observeChangesAroundNode(%o)", node); + // top.console.log("observeChangesAroundNode(%o)", node); var cleanNode; var hasAdjacentDirtyness; if (!isNodeDirty(node)) @@ -1600,7 +1618,7 @@ function Ace2Inner(){ if (linesWrapped > 0) { - if(!browser.ie){ + if(!browser.msie){ // chrome decides in it's infinite wisdom that its okay to put the browsers visisble window in the middle of the span // an outcome of this is that the first chars of the string are no longer visible to the user.. Yay chrome.. // Move the browsers visible area to the left hand side of the span @@ -1905,6 +1923,11 @@ function Ace2Inner(){ if (charsLeft === 0) { var index = 0; + + if (browser.msie && parseInt(browser.version) >= 11) { + browser.msie = false; // Temp fix to resolve enter and backspace issues.. + // Note that this makes MSIE behave like modern browsers.. + } if (browser.msie && line == (rep.lines.length() - 1) && lineNode.childNodes.length === 0) { // best to stay at end of last empty div in IE @@ -1959,7 +1982,11 @@ function Ace2Inner(){ function nodeText(n) { - return n.innerText || n.textContent || n.nodeValue || ''; + if (browser.msie) { + return n.innerText; + } else { + return n.textContent || n.nodeValue || ''; + } } function getLineAndCharForPoint(point) @@ -2306,74 +2333,72 @@ function Ace2Inner(){ } editorInfo.ace_setAttributeOnSelection = setAttributeOnSelection; + function getAttributeOnSelection(attributeName){ - if (!(rep.selStart && rep.selEnd)) return; - var selectionAllHasIt = true; + if (!(rep.selStart && rep.selEnd)) return + var withIt = Changeset.makeAttribsString('+', [ [attributeName, 'true'] ], rep.apool); var withItRegex = new RegExp(withIt.replace(/\*/g, '\\*') + "(\\*|$)"); - function hasIt(attribs) { return withItRegex.test(attribs); } - var selStartLine = rep.selStart[0]; - var selEndLine = rep.selEnd[0]; - for (var n = selStartLine; n <= selEndLine; n++) - { - var opIter = Changeset.opIterator(rep.alines[n]); - var indexIntoLine = 0; - var selectionStartInLine = 0; - var selectionEndInLine = rep.lines.atIndex(n).text.length; // exclude newline - if(rep.lines.atIndex(n).text.length == 0){ - return false; // If the line length is 0 we basically treat it as having no formatting + return rangeHasAttrib(rep.selStart, rep.selEnd) + + function rangeHasAttrib(selStart, selEnd) { + // if range is collapsed -> no attribs in range + if(selStart[1] == selEnd[1] && selStart[0] == selEnd[0]) return false + + if(selStart[0] != selEnd[0]) { // -> More than one line selected + var hasAttrib = true + + // from selStart to the end of the first line + hasAttrib = hasAttrib && rangeHasAttrib(selStart, [selStart[0], rep.lines.atIndex(selStart[0]).text.length]) + + // for all lines in between + for(var n=selStart[0]+1; n < selEnd[0]; n++) { + hasAttrib = hasAttrib && rangeHasAttrib([n, 0], [n, rep.lines.atIndex(n).text.length]) + } + + // for the last, potentially partial, line + hasAttrib = hasAttrib && rangeHasAttrib([selEnd[0], 0], [selEnd[0], selEnd[1]]) + + return hasAttrib } - if(rep.selStart[1] == rep.selEnd[1] && rep.selStart[1] == rep.lines.atIndex(n).text.length){ - return false; // If we're at the end of a line we treat it as having no formatting - } - if(rep.selStart[1] == 0 && rep.selEnd[1] == 0){ - rep.selEnd[1] == 1; - } - if(rep.selEnd[1] == -1){ - rep.selEnd[1] = 1; // sometimes rep.selEnd is -1, not sure why.. When it is we should look at the first char - } - if (n == selStartLine) - { - selectionStartInLine = rep.selStart[1]; - } - if (n == selEndLine) - { - selectionEndInLine = rep.selEnd[1]; - } - while (opIter.hasNext()) - { + + // Logic tells us we now have a range on a single line + + var lineNum = selStart[0] + , start = selStart[1] + , end = selEnd[1] + , hasAttrib = true + + // Iterate over attribs on this line + + var opIter = Changeset.opIterator(rep.alines[lineNum]) + , indexIntoLine = 0 + + while (opIter.hasNext()) { var op = opIter.next(); var opStartInLine = indexIntoLine; var opEndInLine = opStartInLine + op.chars; - if (!hasIt(op.attribs)) - { + if (!hasIt(op.attribs)) { // does op overlap selection? - if (!(opEndInLine <= selectionStartInLine || opStartInLine >= selectionEndInLine)) - { - selectionAllHasIt = false; + if (!(opEndInLine <= start || opStartInLine >= end)) { + hasAttrib = false; // since it's overlapping but hasn't got the attrib -> range hasn't got it break; } } indexIntoLine = opEndInLine; } - if (!selectionAllHasIt) - { - break; - } - } - if(selectionAllHasIt){ - return true; - }else{ - return false; + + return hasAttrib } } + editorInfo.ace_getAttributeOnSelection = getAttributeOnSelection; function toggleAttributeOnSelection(attributeName) @@ -2935,7 +2960,6 @@ function Ace2Inner(){ { return ""; }; - return result; } else @@ -3279,6 +3303,15 @@ function Ace2Inner(){ return [rep.lines.offsetOfIndex(lineRange[0]), rep.lines.offsetOfIndex(lineRange[1])]; } + function handleCut(evt) + { + inCallStackIfNecessary("handleCut", function() + { + doDeleteKey(evt); + }); + return true; + } + function handleClick(evt) { inCallStackIfNecessary("handleClick", function() @@ -3333,7 +3366,7 @@ function Ace2Inner(){ if (listType) { var text = rep.lines.atIndex(lineNum).text; - listType = /([a-z]+)([12345678])/.exec(listType); + listType = /([a-z]+)([0-9]+)/.exec(listType); var type = listType[1]; var level = Number(listType[2]); @@ -3385,7 +3418,7 @@ function Ace2Inner(){ var level = 0; if (listType) { - listType = /([a-z]+)([12345678])/.exec(listType); + listType = /([a-z]+)([0-9]+)/.exec(listType); if (listType) { t = listType[1]; @@ -3559,7 +3592,7 @@ function Ace2Inner(){ // On Mac and Linux, move right moves to end of word and move left moves to start; // on Windows, always move to start of word. // On Windows, Firefox and IE disagree on whether to stop for punctuation (FF says no). - if (browser.windows && forwardNotBack) + if (browser.msie && forwardNotBack) { while ((!isDone()) && isWordChar(nextChar())) { @@ -3593,6 +3626,8 @@ function Ace2Inner(){ var charCode = evt.charCode; var keyCode = evt.keyCode; var which = evt.which; + var altKey = evt.altKey; + var shiftKey = evt.shiftKey; // prevent ESC key if (keyCode == 27) @@ -3600,6 +3635,26 @@ function Ace2Inner(){ evt.preventDefault(); return; } + // Is caret potentially hidden by the chat button? + var myselection = document.getSelection(); // get the current caret selection + var caretOffsetTop = myselection.focusNode.parentNode.offsetTop | myselection.focusNode.offsetTop; // get the carets selection offset in px IE 214 + + if(myselection.focusNode.wholeText){ // Is there any content? If not lineHeight will report wrong.. + var lineHeight = myselection.focusNode.parentNode.offsetHeight; // line height of populated links + }else{ + var lineHeight = myselection.focusNode.offsetHeight; // line height of blank lines + } + + var heightOfChatIcon = parent.parent.$('#chaticon').height(); // height of the chat icon button + lineHeight = (lineHeight *2) + heightOfChatIcon; + var viewport = getViewPortTopBottom(); + var viewportHeight = viewport.bottom - viewport.top - lineHeight; + var relCaretOffsetTop = caretOffsetTop - viewport.top; // relative Caret Offset Top to viewport + if (viewportHeight < relCaretOffsetTop){ + parent.parent.$("#chaticon").css("opacity",".3"); // make chaticon opacity low when user types near it + }else{ + parent.parent.$("#chaticon").css("opacity","1"); // make chaticon opacity back to full (so fully visible) + } //dmesg("keyevent type: "+type+", which: "+which); // Don't take action based on modifier keys going up and down. @@ -3614,11 +3669,9 @@ function Ace2Inner(){ if (keyCode == 13 && browser.opera && (type == "keypress")){ return; // This stops double enters in Opera but double Tabs still show on single tab keypress, adding keyCode == 9 to this doesn't help as the event is fired twice } - var specialHandled = false; var isTypeForSpecialKey = ((browser.msie || browser.safari || browser.chrome) ? (type == "keydown") : (type == "keypress")); var isTypeForCmdKey = ((browser.msie || browser.safari || browser.chrome) ? (type == "keydown") : (type == "keypress")); - var stopped = false; inCallStackIfNecessary("handleKeyEvent", function() @@ -3632,6 +3685,11 @@ function Ace2Inner(){ stopped = true; } } + else if (evt.key === "Dead"){ + // If it's a dead key we don't want to do any Etherpad behavior. + stopped = true; + return true; + } else if (type == "keydown") { outsideKeyDown(evt); @@ -3646,6 +3704,101 @@ function Ace2Inner(){ evt:evt }); specialHandled = (specialHandledInHook&&specialHandledInHook.length>0)?specialHandledInHook[0]:specialHandled; + if ((!specialHandled) && altKey && isTypeForSpecialKey && keyCode == 120){ + // Alt F9 focuses on the File Menu and/or editbar. + // Note that while most editors use Alt F10 this is not desirable + // As ubuntu cannot use Alt F10.... + // Focus on the editbar. -- TODO: Move Focus back to previous state (we know it so we can use it) + var firstEditbarElement = parent.parent.$('#editbar').children("ul").first().children().first().children().first().children().first(); + $(this).blur(); + firstEditbarElement.focus(); + evt.preventDefault(); + } + if ((!specialHandled) && altKey && keyCode == 67 && type === "keydown"){ + // Alt c focuses on the Chat window + $(this).blur(); + parent.parent.chat.show(); + parent.parent.$("#chatinput").focus(); + evt.preventDefault(); + } + if ((!specialHandled) && evt.ctrlKey && shiftKey && keyCode == 50 && type === "keydown"){ + // Control-Shift-2 shows a gritter popup showing a line author + var lineNumber = rep.selEnd[0]; + var alineAttrs = rep.alines[lineNumber]; + var apool = rep.apool; + + // TODO: support selection ranges + // TODO: Still work when authorship colors have been cleared + // TODO: i18n + // TODO: There appears to be a race condition or so. + + var author = null; + if (alineAttrs) { + var authors = []; + var authorNames = []; + var opIter = Changeset.opIterator(alineAttrs); + + while (opIter.hasNext()){ + var op = opIter.next(); + authorId = Changeset.opAttributeValue(op, 'author', apool); + + // Only push unique authors and ones with values + if(authors.indexOf(authorId) === -1 && authorId !== ""){ + authors.push(authorId); + } + + } + + } + + // No author information is available IE on a new pad. + if(authors.length === 0){ + var authorString = "No author information is available"; + } + else{ + // Known authors info, both current and historical + var padAuthors = parent.parent.pad.userList(); + var authorObj = {}; + authors.forEach(function(authorId){ + padAuthors.forEach(function(padAuthor){ + // If the person doing the lookup is the author.. + if(padAuthor.userId === authorId){ + if(parent.parent.clientVars.userId === authorId){ + authorObj = { + name: "Me" + } + }else{ + authorObj = padAuthor; + } + } + }); + if(!authorObj){ + author = "Unknown"; + return; + } + author = authorObj.name; + if(!author) author = "Unknown"; + authorNames.push(author); + }) + } + if(authors.length === 1){ + var authorString = "The author of this line is " + authorNames; + } + if(authors.length > 1){ + var authorString = "The authors of this line are " + authorNames.join(" & "); + } + + parent.parent.$.gritter.add({ + // (string | mandatory) the heading of the notification + title: 'Line Authors', + // (string | mandatory) the text inside the notification + text: authorString, + // (bool | optional) if you want it to fade out on its own or just sit there + sticky: false, + // (int | optional) the time you want it to be alive for before fading out + time: '4000' + }); + } if ((!specialHandled) && isTypeForSpecialKey && keyCode == 8) { // "delete" key; in mozilla, if we're at the beginning of a line, normalize now, @@ -3674,7 +3827,7 @@ function Ace2Inner(){ }, 0); specialHandled = true; } - if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "s" && (evt.metaKey || evt.ctrlKey)) /* Do a saved revision on ctrl S */ + if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "s" && (evt.metaKey || evt.ctrlKey) && !evt.altKey) /* Do a saved revision on ctrl S */ { evt.preventDefault(); var originalBackground = parent.parent.$('#revisionlink').css("background") @@ -3741,6 +3894,36 @@ function Ace2Inner(){ toggleAttributeOnSelection('underline'); specialHandled = true; } + if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "5" && (evt.metaKey || evt.ctrlKey) && evt.altKey !== true) + { + // cmd-5 (strikethrough) + fastIncorp(13); + evt.preventDefault(); + toggleAttributeOnSelection('strikethrough'); + specialHandled = true; + } + if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "l" && (evt.metaKey || evt.ctrlKey) && evt.shiftKey) + { + // cmd-shift-L (unorderedlist) + fastIncorp(9); + evt.preventDefault(); + doInsertUnorderedList() + specialHandled = true; + } + if ((!specialHandled) && isTypeForCmdKey && (String.fromCharCode(which).toLowerCase() == "n" || String.fromCharCode(which) == 1) && (evt.metaKey || evt.ctrlKey) && evt.shiftKey) + { + // cmd-shift-N (orderedlist) + fastIncorp(9); + evt.preventDefault(); + doInsertOrderedList() + specialHandled = true; + } + if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "c" && (evt.metaKey || evt.ctrlKey) && evt.shiftKey) { + // cmd-shift-C (clearauthorship) + fastIncorp(9); + evt.preventDefault(); + CMDS.clearauthorship(); + } if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "h" && (evt.ctrlKey)) { // cmd-H (backspace) @@ -3792,8 +3975,11 @@ function Ace2Inner(){ } updateBrowserSelectionFromRep(); var myselection = document.getSelection(); // get the current caret selection, can't use rep. here because that only gives us the start position not the current - var caretOffsetTop = myselection.focusNode.parentNode.offsetTop | myselection.focusNode.offsetTop; // get the carets selection offset in px IE 214 - // top.console.log(caretOffsetTop); + var caretOffsetTop = myselection.focusNode.parentNode.offsetTop || myselection.focusNode.offsetTop; // get the carets selection offset in px IE 214 + + // sometimes the first selection is -1 which causes problems (Especially with ep_page_view) + // so use focusNode.offsetTop value. + if(caretOffsetTop === -1) caretOffsetTop = myselection.focusNode.offsetTop; setScrollY(caretOffsetTop); // set the scrollY offset of the viewport on the document }, 200); @@ -3801,7 +3987,7 @@ function Ace2Inner(){ /* Attempt to apply some sanity to cursor handling in Chrome after a copy / paste event We have to do this the way we do because rep. doesn't hold the value for keyheld events IE if the user presses and holds the arrow key .. Sorry if this is ugly, blame Chrome's weird handling of viewports after new content is added*/ - if((evt.which == 37 || evt.which == 38 || evt.which == 39 || evt.which == 40) && $.browser.chrome){ + if((evt.which == 37 || evt.which == 38 || evt.which == 39 || evt.which == 40) && browser.chrome){ var viewport = getViewPortTopBottom(); var myselection = document.getSelection(); // get the current caret selection, can't use rep. here because that only gives us the start position not the current var caretOffsetTop = myselection.focusNode.parentNode.offsetTop || myselection.focusNode.offsetTop; // get the carets selection offset in px IE 214 @@ -3818,7 +4004,7 @@ function Ace2Inner(){ // top.console.log(caretOffsetTop, viewport.top, caretOffsetTopBottom, viewport.bottom); var caretIsNotVisible = (caretOffsetTop < viewport.top || caretOffsetTopBottom >= viewport.bottom); // Is the Caret Visible to the user? // Expect some weird behavior caretOffsetTopBottom is greater than viewport.bottom on a keypress down - var offsetTopSamePlace = caretOffsetTop == viewport.top; // sometimes moving key left & up leaves the caret at the same point as the viewport.top, technically the caret is visible but it's not fully visible so we should move to it + var offsetTopSamePlace = caretOffsetTop == viewport.top; // sometimes moving key left & up leaves the caret at the same point as the viewport.top, technically the caret is visible but it's not fully visible so we should move to it if(offsetTopSamePlace && (evt.which == 37 || evt.which == 38)){ var newY = caretOffsetTop; setScrollY(newY); @@ -3835,10 +4021,10 @@ function Ace2Inner(){ // only move the viewport if we're at the bottom of the viewport, if we hit down any other time the viewport shouldn't change // NOTE: This behavior only fires if Chrome decides to break the page layout after a paste, it's annoying but nothing I can do var selection = getSelection(); - top.console.log("line #", rep.selStart[0]); // the line our caret is on - top.console.log("firstvisible", visibleLineRange[0]); // the first visiblel ine - top.console.log("lastVisible", visibleLineRange[1]); // the last visible line - top.console.log(rep.selStart[0], visibleLineRange[1], rep.selStart[0], visibleLineRange[0]); + // top.console.log("line #", rep.selStart[0]); // the line our caret is on + // top.console.log("firstvisible", visibleLineRange[0]); // the first visiblel ine + // top.console.log("lastVisible", visibleLineRange[1]); // the last visible line + // top.console.log(rep.selStart[0], visibleLineRange[1], rep.selStart[0], visibleLineRange[0]); var newY = viewport.top + lineHeight; } if(newY){ @@ -3872,7 +4058,7 @@ function Ace2Inner(){ } // Is part of multi-keystroke international character on Firefox Mac - var isFirefoxHalfCharacter = (browser.mozilla && evt.altKey && charCode === 0 && keyCode === 0); + var isFirefoxHalfCharacter = (browser.firefox && evt.altKey && charCode === 0 && keyCode === 0); // Is part of multi-keystroke international character on Safari Mac var isSafariHalfCharacter = (browser.safari && evt.altKey && keyCode == 229); @@ -4187,12 +4373,6 @@ function Ace2Inner(){ end.collapse(false); selection.startPoint = pointFromCollapsedRange(start); selection.endPoint = pointFromCollapsedRange(end); -/*if ((!selection.startPoint.node.isText) && (!selection.endPoint.node.isText)) { - console.log(selection.startPoint.node.uniqueId()+","+ - selection.startPoint.index+" / "+ - selection.endPoint.node.uniqueId()+","+ - selection.endPoint.index); -}*/ } return selection; } @@ -4604,7 +4784,7 @@ function Ace2Inner(){ setIfNecessary(iframe.style, "width", newWidth + "px"); setIfNecessary(sideDiv.style, "height", newHeight + "px"); } - if (browser.mozilla) + if (browser.firefox) { if (!doesWrap) { @@ -4775,14 +4955,30 @@ function Ace2Inner(){ $(document).on("keypress", handleKeyEvent); $(document).on("keyup", handleKeyEvent); $(document).on("click", handleClick); + + // Disabled: https://github.com/ether/etherpad-lite/issues/2546 + // Will break OL re-numbering: https://github.com/ether/etherpad-lite/pull/2533 + // $(document).on("cut", handleCut); + $(root).on("blur", handleBlur); if (browser.msie) { $(document).on("click", handleIEOuterClick); } if (browser.msie) $(root).on("paste", handleIEPaste); + + // Don't paste on middle click of links + $(root).on("paste", function(e){ + // TODO: this breaks pasting strings into URLS when using + // Control C and Control V -- the Event is never available + // here.. :( + if(e.target.a || e.target.localName === "a"){ + e.preventDefault(); + } + }) + // CompositionEvent is not implemented below IE version 8 - if ( !(browser.msie && browser.version < 9) && document.documentElement) + if ( !(browser.msie && parseInt(browser.version <= 9)) && document.documentElement) { $(document.documentElement).on("compositionstart", handleCompositionEvent); $(document.documentElement).on("compositionend", handleCompositionEvent); @@ -4999,6 +5195,7 @@ function Ace2Inner(){ { if(listType == ''){ documentAttributeManager.removeAttributeOnLine(lineNum, listAttributeName); + documentAttributeManager.removeAttributeOnLine(lineNum, 'start'); }else{ documentAttributeManager.setAttributeOnLine(lineNum, listAttributeName, listType); } @@ -5020,7 +5217,7 @@ function Ace2Inner(){ { return null; } - type = /([a-z]+)[12345678]/.exec(type); + type = /([a-z]+)[0-9]+/.exec(type); if(type[1] == "indent") { return null; @@ -5029,7 +5226,7 @@ function Ace2Inner(){ //2-find the first line of the list while(lineNum-1 >= 0 && (type=getLineListType(lineNum-1))) { - type = /([a-z]+)[12345678]/.exec(type); + type = /([a-z]+)[0-9]+/.exec(type); if(type[1] == "indent") break; lineNum--; @@ -5038,7 +5235,7 @@ function Ace2Inner(){ //3-renumber every list item of the same level from the beginning, level 1 //IMPORTANT: never skip a level because there imbrication may be arbitrary var builder = Changeset.builder(rep.lines.totalWidth()); - loc = [0,0]; + var loc = [0,0]; function applyNumberList(line, level) { //init @@ -5049,7 +5246,7 @@ function Ace2Inner(){ while(listType = getLineListType(line)) { //apply new num - listType = /([a-z]+)([12345678])/.exec(listType); + listType = /([a-z]+)([0-9]+)/.exec(listType); curLevel = Number(listType[2]); if(isNaN(curLevel) || listType[0] == "indent") { @@ -5117,7 +5314,7 @@ function Ace2Inner(){ { var t = ''; var level = 0; - var listType = /([a-z]+)([12345678])/.exec(getLineListType(n)); + var listType = /([a-z]+)([0-9]+)/.exec(getLineListType(n)); if (listType) { t = listType[1]; @@ -5244,20 +5441,9 @@ function Ace2Inner(){ { var body = doc.getElementById("innerdocbody"); root = body; // defined as a var in scope outside - if (browser.mozilla) $(root).addClass("mozilla"); + if (browser.firefox) $(root).addClass("mozilla"); if (browser.safari) $(root).addClass("safari"); if (browser.msie) $(root).addClass("msie"); - if (browser.msie) - { - // cache CSS background images - try - { - doc.execCommand("BackgroundImageCache", false, true); - } - catch (e) - { /* throws an error in some IE 6 but not others! */ - } - } setClassPresence(root, "authorColors", true); setClassPresence(root, "doesWrap", doesWrap); diff --git a/sources/src/static/js/admin/jquery.autosize.js b/sources/src/static/js/admin/jquery.autosize.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/admin/minify.json.js b/sources/src/static/js/admin/minify.json.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/admin/plugins.js b/sources/src/static/js/admin/plugins.js old mode 100644 new mode 100755 index e6c7a12..d337da0 --- a/sources/src/static/js/admin/plugins.js +++ b/sources/src/static/js/admin/plugins.js @@ -10,7 +10,8 @@ $(document).ready(function () { resource = baseURL.substring(1) + "socket.io"; //connect - socket = io.connect(url, {resource : resource}).of("/pluginfw/installer"); + var room = url + "pluginfw/installer"; + socket = io.connect(room, {resource : resource}); function search(searchTerm, limit) { if(search.searchTerm != searchTerm) { @@ -25,12 +26,11 @@ $(document).ready(function () { $('#search-progress').show() search.messages.show('fetching') - storeScrollPosition() search.searching = true } search.searching = false; search.offset = 0; - search.limit = 25; + search.limit = 999; search.results = []; search.sortBy = 'name'; search.sortDir = /*DESC?*/true; @@ -42,7 +42,7 @@ $(document).ready(function () { $('.search-results .messages .'+msg+' *').show() }, hide: function(msg) { - //$('.search-results .messages').hide() + $('.search-results .messages').hide() $('.search-results .messages .'+msg+'').hide() $('.search-results .messages .'+msg+' *').hide() } @@ -103,33 +103,16 @@ $(document).ready(function () { }) } - // Infinite scroll - var scrollPosition - function storeScrollPosition() { - scrollPosition = $(window).scrollTop() - } - function restoreScrollPosition() { - setTimeout(function() { - $(window).scrollTop(scrollPosition) - }, 0) - } - - $(window).scroll(checkInfiniteScroll) - function checkInfiniteScroll() { - if(search.end || search.searching) return;// don't keep requesting if there are no more results - setTimeout(function() { - try{ - var top = $('.results>tr:last').offset().top - if($(window).scrollTop()+$(window).height() > top) search(search.searchTerm) - }catch(e){} - }, 1) - } - function updateHandlers() { // Search $("#search-query").unbind('keyup').keyup(function () { search($("#search-query").val()); }); + + // Prevent form submit + $('#search-query').parent().bind('submit', function() { + return false; + }); // update & install $(".do-install, .do-update").unbind('click').click(function (e) { @@ -158,14 +141,14 @@ $(document).ready(function () { // Sort $('.sort.up').unbind('click').click(function() { - search.sortBy = $(this).text().toLowerCase(); + search.sortBy = $(this).attr('data-label').toLowerCase(); search.sortDir = false; search.offset = 0; search(search.searchTerm, search.results.length); search.results = []; }) $('.sort.down, .sort.none').unbind('click').click(function() { - search.sortBy = $(this).text().toLowerCase(); + search.sortBy = $(this).attr('data-label').toLowerCase(); search.sortDir = true; search.offset = 0; search(search.searchTerm, search.results.length); @@ -175,6 +158,7 @@ $(document).ready(function () { socket.on('results:search', function (data) { if(!data.results.length) search.end = true; + if(data.query.offset == 0) search.results = []; search.messages.hide('nothing-found') search.messages.hide('fetching') $("#search-query").removeAttr('disabled') @@ -202,8 +186,6 @@ $(document).ready(function () { } search.messages.hide('fetching') $('#search-progress').hide() - restoreScrollPosition() - checkInfiniteScroll() search.searching = false }); @@ -243,6 +225,9 @@ $(document).ready(function () { socket.on('finished:install', function(data) { if(data.error) { + if(data.code === "EPEERINVALID"){ + alert("This plugin requires that you update Etherpad so it can operate in it's true glory"); + } alert('An error occured while installing '+data.plugin+' \n'+data.error) $('#installed-plugins .'+data.plugin).remove() } diff --git a/sources/src/static/js/admin/settings.js b/sources/src/static/js/admin/settings.js old mode 100644 new mode 100755 index fb3f2e9..8a4473d --- a/sources/src/static/js/admin/settings.js +++ b/sources/src/static/js/admin/settings.js @@ -9,7 +9,8 @@ $(document).ready(function () { resource = baseURL.substring(1) + "socket.io"; //connect - socket = io.connect(url, {resource : resource}).of("/settings"); + var room = url + "settings"; + socket = io.connect(room, {resource : resource}); socket.on('settings', function (settings) { diff --git a/sources/src/static/js/broadcast.js b/sources/src/static/js/broadcast.js old mode 100644 new mode 100755 index d4bda11..817155b --- a/sources/src/static/js/broadcast.js +++ b/sources/src/static/js/broadcast.js @@ -27,6 +27,7 @@ var Changeset = require('./Changeset'); var linestylefilter = require('./linestylefilter').linestylefilter; var colorutils = require('./colorutils').colorutils; var _ = require('./underscore'); +var hooks = require('./pluginfw/hooks'); // These parameters were global, now they are injected. A reference to the // Timeslider controller would probably be more appropriate. @@ -65,18 +66,6 @@ function loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, Bro } } - // for IE - if ($.browser.msie) - { - try - { - document.execCommand("BackgroundImageCache", false, true); - } - catch (e) - {} - } - - //var socket; var channelState = "DISCONNECTED"; @@ -384,22 +373,10 @@ function loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, Bro } if (changeset) applyChangeset(changeset, path.rev, true, timeDelta); - - if (BroadcastSlider.getSliderLength() > 10000) - { - var start = (Math.floor((newRevision) / 10000) * 10000); // revision 0 to 10 - changesetLoader.queueUp(start, 100); - } - - if (BroadcastSlider.getSliderLength() > 1000) - { - var start = (Math.floor((newRevision) / 1000) * 1000); // (start from -1, go to 19) + 1 - changesetLoader.queueUp(start, 10); - } - - start = (Math.floor((newRevision) / 100) * 100); - - changesetLoader.queueUp(start, 1, update); + // Loading changeset history for new revision + loadChangesetsForRevision(newRevision, update); + // Loading changeset history for old revision (to make diff between old and new revision) + loadChangesetsForRevision(padContents.currentRevision - 1); } var authors = _.map(padContents.getActiveAuthors(), function(name){ @@ -407,6 +384,24 @@ function loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, Bro }); BroadcastSlider.setAuthors(authors); } + + function loadChangesetsForRevision(revision, callback) { + if (BroadcastSlider.getSliderLength() > 10000) + { + var start = (Math.floor((revision) / 10000) * 10000); // revision 0 to 10 + changesetLoader.queueUp(start, 100); + } + + if (BroadcastSlider.getSliderLength() > 1000) + { + var start = (Math.floor((revision) / 1000) * 1000); // (start from -1, go to 19) + 1 + changesetLoader.queueUp(start, 10); + } + + start = (Math.floor((revision) / 100) * 100); + + changesetLoader.queueUp(start, 1, callback); + } changesetLoader = { running: false, @@ -482,7 +477,7 @@ function loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, Bro var astart = start + i * granularity - 1; // rev -1 is a blank single line var aend = start + (i + 1) * granularity - 1; // totalRevs is the most recent revision if (aend > data.actualEndNum - 1) aend = data.actualEndNum - 1; - debugLog("adding changeset:", astart, aend); + //debugLog("adding changeset:", astart, aend); var forwardcs = Changeset.moveOpsToNewPool(data.forwardsChangesets[i], pool, padContents.apool); var backwardcs = Changeset.moveOpsToNewPool(data.backwardsChangesets[i], pool, padContents.apool); revisionInfo.addChangeset(astart, aend, forwardcs, backwardcs, data.timeDeltas[i]); @@ -528,6 +523,7 @@ function loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, Bro var savedRev = obj.savedRev; BroadcastSlider.addSavedRevision(savedRev.revNum, savedRev); } + hooks.callAll('handleClientTimesliderMessage_' + obj.type, {payload: obj}); } else if(obj.type == "CHANGESET_REQ") { diff --git a/sources/src/static/js/broadcast_revisions.js b/sources/src/static/js/broadcast_revisions.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/broadcast_slider.js b/sources/src/static/js/broadcast_slider.js old mode 100644 new mode 100755 index 8179b7b..2299bba --- a/sources/src/static/js/broadcast_slider.js +++ b/sources/src/static/js/broadcast_slider.js @@ -29,6 +29,9 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) { var BroadcastSlider; + // Hack to ensure timeslider i18n values are in + $("[data-key='timeslider_returnToPad'] > a > span").html(html10n.get("timeslider.toolbar.returnbutton")); + (function() { // wrap this code in its own namespace var sliderLength = 1000; @@ -163,6 +166,7 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) padmodals.showModal("disconnected"); } + // Throttle seems like overkill here... Not sure why we do it! var fixPadHeight = _.throttle(function(){ var height = $('#timeslider-top').height(); $('#editorcontainerbox').css({marginTop: height}); @@ -177,23 +181,26 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) var colorsAnonymous = []; _.each(authors, function(author) { - var authorColor = clientVars.colorPalette[author.colorId] || author.colorId; - if (author.name) + if(author) { - if (numNamed !== 0) authorsList.append(', '); - - $('') - .text(author.name || "unnamed") - .css('background-color', authorColor) - .addClass('author') - .appendTo(authorsList); + var authorColor = clientVars.colorPalette[author.colorId] || author.colorId; + if (author.name) + { + if (numNamed !== 0) authorsList.append(', '); + + $('') + .text(author.name || "unnamed") + .css('background-color', authorColor) + .addClass('author') + .appendTo(authorsList); - numNamed++; - } - else - { - numAnonymous++; - if(authorColor) colorsAnonymous.push(authorColor); + numNamed++; + } + else + { + numAnonymous++; + if(authorColor) colorsAnonymous.push(authorColor); + } } }); if (numAnonymous > 0) @@ -284,6 +291,11 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) $(document).keyup(function(e) { + // If focus is on editbar, don't do anything + var target = $(':focus'); + if($(target).parents(".toolbar").length === 1){ + return; + } var code = -1; if (!e) var e = window.event; if (e.keyCode) code = e.keyCode; @@ -324,7 +336,6 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) } } else if (code == 32) playpause(); - }); $(window).resize(function() @@ -334,7 +345,6 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) $("#ui-slider-bar").mousedown(function(evt) { - setSliderPosition(Math.floor((evt.clientX - $("#ui-slider-bar").offset().left) * sliderLength / 742)); $("#ui-slider-handle").css('left', (evt.clientX - $("#ui-slider-bar").offset().left)); $("#ui-slider-handle").trigger(evt); }); @@ -380,16 +390,16 @@ function loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded) { var self = this; - $(self).css('background-image', 'url(/static/img/crushed_button_depressed.png)'); + // $(self).css('background-image', 'url(/static/img/crushed_button_depressed.png)'); $(self).mouseup(function(evt2) { - $(self).css('background-image', 'url(/static/img/crushed_button_undepressed.png)'); + // $(self).css('background-image', 'url(/static/img/crushed_button_undepressed.png)'); $(self).unbind('mouseup'); BroadcastSlider.playpause(); }); $(document).mouseup(function(evt2) { - $(self).css('background-image', 'url(/static/img/crushed_button_undepressed.png)'); + // $(self).css('background-image', 'url(/static/img/crushed_button_undepressed.png)'); $(document).unbind('mouseup'); }); }); diff --git a/sources/src/static/js/browser.js b/sources/src/static/js/browser.js new file mode 100755 index 0000000..f763963 --- /dev/null +++ b/sources/src/static/js/browser.js @@ -0,0 +1,240 @@ +/*! + * Bowser - a browser detector + * https://github.com/ded/bowser + * MIT License | (c) Dustin Diaz 2014 + */ + +!function (name, definition) { + if (typeof module != 'undefined' && module.exports) module.exports['browser'] = definition() + else if (typeof define == 'function' && define.amd) define(definition) + else this[name] = definition() +}('bowser', function () { + /** + * See useragents.js for examples of navigator.userAgent + */ + + var t = true + + function detect(ua) { + + function getFirstMatch(regex) { + var match = ua.match(regex); + return (match && match.length > 1 && match[1]) || ''; + } + + var iosdevice = getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase() + , likeAndroid = /like android/i.test(ua) + , android = !likeAndroid && /android/i.test(ua) + , versionIdentifier = getFirstMatch(/version\/(\d+(\.\d+)?)/i) + , tablet = /tablet/i.test(ua) + , mobile = !tablet && /[^-]mobi/i.test(ua) + , result + + if (/opera|opr/i.test(ua)) { + result = { + name: 'Opera' + , opera: t + , version: versionIdentifier || getFirstMatch(/(?:opera|opr)[\s\/](\d+(\.\d+)?)/i) + } + } + else if (/windows phone/i.test(ua)) { + result = { + name: 'Windows Phone' + , windowsphone: t + , msie: t + , version: getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i) + } + } + else if (/msie|trident/i.test(ua)) { + result = { + name: 'Internet Explorer' + , msie: t + , version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i) + } + } + else if (/chrome|crios|crmo/i.test(ua)) { + result = { + name: 'Chrome' + , chrome: t + , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i) + } + } + else if (iosdevice) { + result = { + name : iosdevice == 'iphone' ? 'iPhone' : iosdevice == 'ipad' ? 'iPad' : 'iPod' + } + // WTF: version is not part of user agent in web apps + if (versionIdentifier) { + result.version = versionIdentifier + } + } + else if (/sailfish/i.test(ua)) { + result = { + name: 'Sailfish' + , sailfish: t + , version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i) + } + } + else if (/seamonkey\//i.test(ua)) { + result = { + name: 'SeaMonkey' + , seamonkey: t + , version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i) + } + } + else if (/firefox|iceweasel/i.test(ua)) { + result = { + name: 'Firefox' + , firefox: t + , version: getFirstMatch(/(?:firefox|iceweasel)[ \/](\d+(\.\d+)?)/i) + } + if (/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)) { + result.firefoxos = t + } + } + else if (/silk/i.test(ua)) { + result = { + name: 'Amazon Silk' + , silk: t + , version : getFirstMatch(/silk\/(\d+(\.\d+)?)/i) + } + } + else if (android) { + result = { + name: 'Android' + , version: versionIdentifier + } + } + else if (/phantom/i.test(ua)) { + result = { + name: 'PhantomJS' + , phantom: t + , version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i) + } + } + else if (/blackberry|\bbb\d+/i.test(ua) || /rim\stablet/i.test(ua)) { + result = { + name: 'BlackBerry' + , blackberry: t + , version: versionIdentifier || getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i) + } + } + else if (/(web|hpw)os/i.test(ua)) { + result = { + name: 'WebOS' + , webos: t + , version: versionIdentifier || getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i) + }; + /touchpad\//i.test(ua) && (result.touchpad = t) + } + else if (/bada/i.test(ua)) { + result = { + name: 'Bada' + , bada: t + , version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i) + }; + } + else if (/tizen/i.test(ua)) { + result = { + name: 'Tizen' + , tizen: t + , version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || versionIdentifier + }; + } + else if (/safari/i.test(ua)) { + result = { + name: 'Safari' + , safari: t + , version: versionIdentifier + } + } + else result = {} + + // set webkit or gecko flag for browsers based on these engines + if (/(apple)?webkit/i.test(ua)) { + result.name = result.name || "Webkit" + result.webkit = t + if (!result.version && versionIdentifier) { + result.version = versionIdentifier + } + } else if (!result.opera && /gecko\//i.test(ua)) { + result.name = result.name || "Gecko" + result.gecko = t + result.version = result.version || getFirstMatch(/gecko\/(\d+(\.\d+)?)/i) + } + + // set OS flags for platforms that have multiple browsers + if (android || result.silk) { + result.android = t + } else if (iosdevice) { + result[iosdevice] = t + result.ios = t + } + + // OS version extraction + var osVersion = ''; + if (iosdevice) { + osVersion = getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i); + osVersion = osVersion.replace(/[_\s]/g, '.'); + } else if (android) { + osVersion = getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i); + } else if (result.windowsphone) { + osVersion = getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i); + } else if (result.webos) { + osVersion = getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i); + } else if (result.blackberry) { + osVersion = getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i); + } else if (result.bada) { + osVersion = getFirstMatch(/bada\/(\d+(\.\d+)*)/i); + } else if (result.tizen) { + osVersion = getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i); + } + if (osVersion) { + result.osversion = osVersion; + } + + // device type extraction + var osMajorVersion = osVersion.split('.')[0]; + if (tablet || iosdevice == 'ipad' || (android && (osMajorVersion == 3 || (osMajorVersion == 4 && !mobile))) || result.silk) { + result.tablet = t + } else if (mobile || iosdevice == 'iphone' || iosdevice == 'ipod' || android || result.blackberry || result.webos || result.bada) { + result.mobile = t + } + + // Graded Browser Support + // http://developer.yahoo.com/yui/articles/gbs + if ((result.msie && result.version >= 10) || + (result.chrome && result.version >= 20) || + (result.firefox && result.version >= 20.0) || + (result.safari && result.version >= 6) || + (result.opera && result.version >= 10.0) || + (result.ios && result.osversion && result.osversion.split(".")[0] >= 6) || + (result.blackberry && result.version >= 10.1) + ) { + result.a = t; + } + else if ((result.msie && result.version < 10) || + (result.chrome && result.version < 20) || + (result.firefox && result.version < 20.0) || + (result.safari && result.version < 6) || + (result.opera && result.version < 10.0) || + (result.ios && result.osversion && result.osversion.split(".")[0] < 6) + ) { + result.c = t + } else result.x = t + + return result + } + + var bowser = detect(typeof navigator !== 'undefined' ? navigator.userAgent : '') + + + /* + * Set our detect method to the main bowser object so we can + * reuse it to test other user agents. + * This is needed to implement future tests. + */ + bowser._detect = detect; + + return bowser +}); diff --git a/sources/src/static/js/changesettracker.js b/sources/src/static/js/changesettracker.js old mode 100644 new mode 100755 index f3efc40..fe362c4 --- a/sources/src/static/js/changesettracker.js +++ b/sources/src/static/js/changesettracker.js @@ -179,7 +179,7 @@ function makeChangesetTracker(scheduler, apool, aceCallbacksProvider) // We need to replace all author attribs with thisSession.author, in case they copy/pasted or otherwise inserted other peoples changes if(apool.numToAttrib){ for (var attr in apool.numToAttrib){ - if (apool.numToAttrib[attr][0] == 'author' && apool.numToAttrib[attr][1] == authorId) authorAttr = Number(attr).toString(36) + if (apool.numToAttrib[attr][0] == 'author' && apool.numToAttrib[attr][1] == authorId) var authorAttr = Number(attr).toString(36) } // Replace all added 'author' attribs with the value of the current user diff --git a/sources/src/static/js/chat.js b/sources/src/static/js/chat.js old mode 100644 new mode 100755 index 65fc8dd..fa087ee --- a/sources/src/static/js/chat.js +++ b/sources/src/static/js/chat.js @@ -18,10 +18,12 @@ var padutils = require('./pad_utils').padutils; var padcookie = require('./pad_cookie').padcookie; var Tinycon = require('tinycon/tinycon'); var hooks = require('./pluginfw/hooks'); +var padeditor = require('./pad_editor').padeditor; var chat = (function() { var isStuck = false; + var userAndChat = false; var gotInitialMessages = false; var historyPointer = 0; var chatMentions = 0; @@ -35,13 +37,19 @@ var chat = (function() chatMentions = 0; Tinycon.setBubble(0); }, + focus: function () + { + setTimeout(function(){ + $("#chatinput").focus(); + },100); + }, stickToScreen: function(fromInitialCall) // Make chat stick to right hand side of screen { chat.show(); if(!isStuck || fromInitialCall) { // Stick it to padcookie.setPref("chatAlwaysVisible", true); $('#chatbox').addClass("stickyChat"); - $('#chattext').css({"top":"0px"}); + $('#titlesticky').hide(); $('#editorcontainer').css({"right":"192px"}); $('.stickyChat').css("top",$('#editorcontainer').offset().top+"px"); isStuck = true; @@ -49,24 +57,54 @@ var chat = (function() padcookie.setPref("chatAlwaysVisible", false); $('.stickyChat').css("top", "auto"); $('#chatbox').removeClass("stickyChat"); - $('#chattext').css({"top":"25px"}); + $('#titlesticky').show(); $('#editorcontainer').css({"right":"0px"}); isStuck = false; } }, + chatAndUsers: function(fromInitialCall) + { + var toEnable = $('#options-chatandusers').is(":checked"); + if(toEnable || !userAndChat || fromInitialCall){ + padcookie.setPref("chatAndUsers", true); + chat.stickToScreen(true); + $('#options-stickychat').prop('checked', true) + $('#options-chatandusers').prop('checked', true) + $('#options-stickychat').prop("disabled", "disabled"); + $('#users').addClass("chatAndUsers"); + $("#chatbox").addClass("chatAndUsersChat"); + // redraw + userAndChat = true; + padeditbar.redrawHeight() + }else{ + padcookie.setPref("chatAndUsers", false); + $('#options-stickychat').prop("disabled", false); + $('#users').removeClass("chatAndUsers"); + $("#chatbox").removeClass("chatAndUsersChat"); + } + }, hide: function () { - $("#chatcounter").text("0"); - $("#chaticon").show(); - $("#chatbox").hide(); - $.gritter.removeAll(); - $("#gritter-notice-wrapper").show(); + // decide on hide logic based on chat window being maximized or not + if ($('#options-stickychat').prop('checked')) { + chat.stickToScreen(); + $('#options-stickychat').prop('checked', false); + } + else { + $("#chatcounter").text("0"); + $("#chaticon").show(); + $("#chatbox").hide(); + $.gritter.removeAll(); + $("#gritter-notice-wrapper").show(); + } }, scrollDown: function() { if($('#chatbox').css("display") != "none"){ if(!self.lastMessage || !self.lastMessage.position() || self.lastMessage.position().top < $('#chattext').height()) { - $('#chattext').animate({scrollTop: $('#chattext')[0].scrollHeight}, "slow"); + // if we use a slow animate here we can have a race condition when a users focus can not be moved away + // from the last message recieved. + $('#chattext').animate({scrollTop: $('#chattext')[0].scrollHeight}, { duration: 400, queue: false }); self.lastMessage = $('#chattext > p').eq(-1); } } @@ -174,8 +212,29 @@ var chat = (function() init: function(pad) { this._pad = pad; - $("#chatinput").keypress(function(evt) - { + $("#chatinput").on("keydown", function(evt){ + // If the event is Alt C or Escape & we're already in the chat menu + // Send the users focus back to the pad + if((evt.altKey == true && evt.which === 67) || evt.which === 27){ + // If we're in chat already.. + $(':focus').blur(); // required to do not try to remove! + padeditor.ace.focus(); // Sends focus back to pad + evt.preventDefault(); + return false; + } + }); + + $('body:not(#chatinput)').on("keypress", function(evt){ + if (evt.altKey && evt.which == 67){ + // Alt c focuses on the Chat window + $(this).blur(); + chat.show(); + $("#chatinput").focus(); + evt.preventDefault(); + } + }); + + $("#chatinput").keypress(function(evt){ //if the user typed enter, fire the send if(evt.which == 13 || evt.which == 10) { diff --git a/sources/src/static/js/collab_client.js b/sources/src/static/js/collab_client.js old mode 100644 new mode 100755 index 146ec51..ad49352 --- a/sources/src/static/js/collab_client.js +++ b/sources/src/static/js/collab_client.js @@ -81,8 +81,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad) onServerMessage: function() {} }; - - if ($.browser.mozilla) + if (browser.firefox) { // Prevent "escape" from taking effect and canceling a comet connection; // doesn't work if focus is on an iframe. @@ -152,6 +151,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad) // apply msgQueue changeset. if (msgQueue.length != 0) { + var msg; while (msg = msgQueue.shift()) { var newRev = msg.newRev; rev=newRev; @@ -274,12 +274,12 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad) // When inInternationalComposition, msg pushed msgQueue. if (msgQueue.length > 0 || editor.getInInternationalComposition()) { - if (msgQueue.length > 0) oldRev = msgQueue[msgQueue.length - 1].newRev; + if (msgQueue.length > 0) var oldRev = msgQueue[msgQueue.length - 1].newRev; else oldRev = rev; if (newRev != (oldRev + 1)) { - parent.parent.console.warn("bad message revision on NEW_CHANGES: " + newRev + " not " + (oldRev + 1)); + window.console.warn("bad message revision on NEW_CHANGES: " + newRev + " not " + (oldRev + 1)); // setChannelState("DISCONNECTED", "badmessage_newchanges"); return; } @@ -289,7 +289,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad) if (newRev != (rev + 1)) { - parent.parent.console.warn("bad message revision on NEW_CHANGES: " + newRev + " not " + (rev + 1)); + window.console.warn("bad message revision on NEW_CHANGES: " + newRev + " not " + (rev + 1)); // setChannelState("DISCONNECTED", "badmessage_newchanges"); return; } @@ -303,7 +303,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad) { if (newRev != (msgQueue[msgQueue.length - 1].newRev + 1)) { - parent.parent.console.warn("bad message revision on ACCEPT_COMMIT: " + newRev + " not " + (msgQueue[msgQueue.length - 1][0] + 1)); + window.console.warn("bad message revision on ACCEPT_COMMIT: " + newRev + " not " + (msgQueue[msgQueue.length - 1][0] + 1)); // setChannelState("DISCONNECTED", "badmessage_acceptcommit"); return; } @@ -313,7 +313,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad) if (newRev != (rev + 1)) { - parent.parent.console.warn("bad message revision on ACCEPT_COMMIT: " + newRev + " not " + (rev + 1)); + window.console.warn("bad message revision on ACCEPT_COMMIT: " + newRev + " not " + (rev + 1)); // setChannelState("DISCONNECTED", "badmessage_acceptcommit"); return; } diff --git a/sources/src/static/js/colorutils.js b/sources/src/static/js/colorutils.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/contentcollector.js b/sources/src/static/js/contentcollector.js old mode 100644 new mode 100755 index ee0a1c2..5c1e8ef --- a/sources/src/static/js/contentcollector.js +++ b/sources/src/static/js/contentcollector.js @@ -23,7 +23,7 @@ * limitations under the License. */ -var _MAX_LIST_LEVEL = 8; +var _MAX_LIST_LEVEL = 16; var UNorm = require('unorm'); var Changeset = require('./Changeset'); @@ -32,12 +32,13 @@ var _ = require('./underscore'); function sanitizeUnicode(s) { - return UNorm.nfc(s).replace(/[\uffff\ufffe\ufeff\ufdd0-\ufdef\ud800-\udfff]/g, '?'); + return UNorm.nfc(s); } -function makeContentCollector(collectStyles, browser, apool, domInterface, className2Author) +function makeContentCollector(collectStyles, abrowser, apool, domInterface, className2Author) { - browser = browser || {}; + abrowser = abrowser || {}; + // I don't like the above. var dom = domInterface || { isNodeText: function(n) @@ -54,10 +55,14 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class }, nodeNumChildren: function(n) { + if(n.childNodes == null) return 0; return n.childNodes.length; }, nodeChild: function(n, i) { + if(n.childNodes.item == null){ + return n.childNodes[i]; + } return n.childNodes.item(i); }, nodeProp: function(n, p) @@ -66,7 +71,9 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class }, nodeAttr: function(n, a) { - return n.getAttribute(a); + if(n.getAttribute != null) return n.getAttribute(a); + if(n.attribs != null) return n.attribs[a]; + return null; }, optNodeInnerHTML: function(n) { @@ -81,6 +88,10 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class "li": 1 }; + _.each(hooks.callAll('ccRegisterBlockElements'), function(element){ + _blockElems[element] = 1; + }); + function isBlockElement(n) { return !!_blockElems[(dom.nodeTagName(n) || "").toLowerCase()]; @@ -89,7 +100,7 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class function textify(str) { return sanitizeUnicode( - str.replace(/[\n\r ]/g, ' ').replace(/\xa0/g, ' ').replace(/\t/g, ' ')); + str.replace(/\n/g, '').replace(/[\n\r ]/g, ' ').replace(/\xa0/g, ' ').replace(/\t/g, ' ')); } function getAssoc(node, name) @@ -287,7 +298,23 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class { if (state.attribs[a]) { - lst.push([a, 'true']); + // The following splitting of the attribute name is a workaround + // to enable the content collector to store key-value attributes + // see https://github.com/ether/etherpad-lite/issues/2567 for more information + // in long term the contentcollector should be refactored to get rid of this workaround + var ATTRIBUTE_SPLIT_STRING = "::"; + + // see if attributeString is splittable + var attributeSplits = a.split(ATTRIBUTE_SPLIT_STRING); + if (attributeSplits.length > 1) { + // the attribute name follows the convention key::value + // so save it as a key value attribute + lst.push([attributeSplits[0], attributeSplits[1]]); + } else { + // the "normal" case, the attribute is just a switch + // so set it true + lst.push([a, 'true']); + } } } if (state.authorLevel > 0) @@ -314,7 +341,6 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class return [key, value]; }) ); - lines.appendText('*', Changeset.makeAttribsString('+', attributes , apool)); } cc.startNewLine = function(state) @@ -452,8 +478,23 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class else { var tname = (dom.nodeTagName(node) || "").toLowerCase(); + + if (tname == "img"){ + var collectContentImage = hooks.callAll('collectContentImage', { + cc: cc, + state: state, + tname: tname, + styl: styl, + cls: cls, + node: node + }); + }else{ + // THIS SEEMS VERY HACKY! -- Please submit a better fix! + delete state.lineAttributes.img + } + if (tname == "br") - { + { this.breakLine = true; var tvalue = dom.nodeAttr(node, 'value'); var induceLineBreak = hooks.callAll('collectContentLineBreak', { @@ -476,10 +517,9 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class else if (!isEmpty) { var styl = dom.nodeAttr(node, "style"); - var cls = dom.nodeProp(node, "className"); - + var cls = dom.nodeAttr(node, "class"); var isPre = (tname == "pre"); - if ((!isPre) && browser.safari) + if ((!isPre) && abrowser.safari) { isPre = (styl && /\bwhite-space:\s*pre\b/i.exec(styl)); } @@ -513,14 +553,44 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class } if (tname == "ul" || tname == "ol") { - var type; - var rr = cls && /(?:^| )list-([a-z]+[12345678])\b/.exec(cls); - type = rr && rr[1] || (tname == "ul" ? "bullet" : "number") + String(Math.min(_MAX_LIST_LEVEL, (state.listNesting || 0) + 1)); + if(node.attribs){ + var type = node.attribs.class; + }else{ + var type = null; + } + var rr = cls && /(?:^| )list-([a-z]+[0-9]+)\b/.exec(cls); + // lists do not need to have a type, so before we make a wrong guess, check if we find a better hint within the node's children + if(!rr && !type){ + for (var i in node.children){ + if(node.children[i] && node.children[i].name=='ul'){ + type = node.children[i].attribs.class + if(type){ + break + } + } + } + } + if(rr && rr[1]){ + type = rr[1] + } else { + if(tname == "ul"){ + if((type && type.match("indent")) || (node.attribs && node.attribs.class && node.attribs.class.match("indent"))){ + type = "indent" + } else { + type = "bullet" + } + } else { + type = "number" + } + type = type + String(Math.min(_MAX_LIST_LEVEL, (state.listNesting || 0) + 1)); + } oldListTypeOrNull = (_enterList(state, type) || 'none'); } else if ((tname == "div" || tname == "p") && cls && cls.match(/(?:^| )ace-line\b/)) { - oldListTypeOrNull = (_enterList(state, type) || 'none'); + // This has undesirable behavior in Chrome but is right in other browsers. + // See https://github.com/ether/etherpad-lite/issues/2412 for reasoning + if(!abrowser.chrome) oldListTypeOrNull = (_enterList(state, type) || 'none'); } if (className2Author && cls) { @@ -577,7 +647,7 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class } } } - if (!browser.msie) + if (!abrowser.msie) { _reachBlockPoint(node, 1, state); } @@ -592,13 +662,11 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class _ensureColumnZero(state); } } - - if (browser.msie) + if (abrowser.msie) { // in IE, a point immediately after a DIV appears on the next line _reachBlockPoint(node, 1, state); } - state.localAttribs = localAttribs; }; // can pass a falsy value for end of doc @@ -663,7 +731,7 @@ function makeContentCollector(collectStyles, browser, apool, domInterface, class { //var semiloc = oldString.lastIndexOf(';', lineLimit-1); //var lengthToTake = (semiloc >= 0 ? (semiloc+1) : lineLimit); - lengthToTake = lineLimit; + var lengthToTake = lineLimit; newStrings.push(oldString.substring(0, lengthToTake)); oldString = oldString.substring(lengthToTake); newAttribStrings.push(Changeset.subattribution(oldAttribString, 0, lengthToTake)); diff --git a/sources/src/static/js/cssmanager.js b/sources/src/static/js/cssmanager.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/domline.js b/sources/src/static/js/domline.js old mode 100644 new mode 100755 index b1927b1..03f1b9c --- a/sources/src/static/js/domline.js +++ b/sources/src/static/js/domline.js @@ -65,7 +65,6 @@ domline.createDomLine = function(nonEmpty, doesWrap, optBrowser, optDocument) lineMarker: 0 }; - var browser = (optBrowser || {}); var document = optDocument; if (document) @@ -93,8 +92,10 @@ domline.createDomLine = function(nonEmpty, doesWrap, optBrowser, optDocument) var perTextNodeProcess = (doesWrap ? _.identity : processSpaces); var perHtmlLineProcess = (doesWrap ? processSpaces : _.identity); var lineClass = 'ace-line'; + result.appendSpan = function(txt, cls) { + var processedMarker = false; // Handle lineAttributeMarker, if present if (cls.indexOf(lineAttributeMarker) >= 0) @@ -225,7 +226,7 @@ domline.createDomLine = function(nonEmpty, doesWrap, optBrowser, optDocument) { newHTML += ' '; } - else if (!browser.msie) + else if (!optBrowser.msie) { newHTML += '
    '; } diff --git a/sources/src/static/js/excanvas.js b/sources/src/static/js/excanvas.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/farbtastic.js b/sources/src/static/js/farbtastic.js old mode 100644 new mode 100755 index 114c4d7..8a61627 --- a/sources/src/static/js/farbtastic.js +++ b/sources/src/static/js/farbtastic.js @@ -170,7 +170,7 @@ $._farbtastic = function (container, options) { // New color color2 = fb.pack(fb.HSLToRGB([d2, 1, 0.5])); if (i > 0) { - if ($.browser.msie) { + if (browser.msie) { // IE's gradient calculations mess up the colors. Correct along the diagonals. var corr = (1 + Math.min(Math.abs(Math.tan(angle1)), Math.abs(Math.tan(Math.PI / 2 - angle1)))) / n; color1 = fb.pack(fb.HSLToRGB([d1 - 0.15 * corr, 1, 0.5])); @@ -254,7 +254,7 @@ $._farbtastic = function (container, options) { fb.ctxMask.drawImage(buffer, 0, 0, sz + 1, sz + 1, -sq, -sq, sq * 2, sq * 2); } // Method #2: drawing commands (old Canvas). - else if (!$.browser.msie) { + else if (!browser.msie) { // Render directly at half-resolution var sz = Math.floor(size / 2); calculateMask(sz, sz, function (x, y, c, a) { diff --git a/sources/src/static/js/gritter.js b/sources/src/static/js/gritter.js old mode 100644 new mode 100755 index 9778707..7f8c5b6 --- a/sources/src/static/js/gritter.js +++ b/sources/src/static/js/gritter.js @@ -78,7 +78,7 @@ _tpl_close: '
    ', _tpl_title: '[[title]]', _tpl_item: '', - _tpl_wrap: '
    ', + _tpl_wrap: '
    ', /** * Add a gritter notification to the screen diff --git a/sources/src/static/js/html10n.js b/sources/src/static/js/html10n.js old mode 100644 new mode 100755 index 49a0a80..44abd7a --- a/sources/src/static/js/html10n.js +++ b/sources/src/static/js/html10n.js @@ -23,28 +23,16 @@ window.html10n = (function(window, document, undefined) { // fix console - var console = window.console - function interceptConsole(method){ - if (!console) return function() {} - - var original = console[method] - - // do sneaky stuff - if (original.bind){ - // Do this for normal browsers - return original.bind(console) - }else{ - return function() { - // Do this for IE - var message = Array.prototype.slice.apply(arguments).join(' ') - original(message) - } + (function() { + var noop = function() {}; + var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"]; + var console = (window.console = window.console || {}); + for (var i = 0; i < names.length; ++i) { + if (!console[names[i]]) { + console[names[i]] = noop; } - } - var consoleLog = interceptConsole('log') - , consoleWarn = interceptConsole('warn') - , consoleError = interceptConsole('warn') - + } + }()); // fix Array#forEach in IE // taken from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach @@ -148,7 +136,7 @@ window.html10n = (function(window, document, undefined) { for (var i=0, n=this.resources.length; i < n; i++) { this.fetch(this.resources[i], lang, function(e) { reqs++; - if(e) consoleWarn(e) + if(e) console.warn(e) if (reqs < n) return;// Call back once all reqs are completed cb && cb() @@ -647,7 +635,7 @@ window.html10n = (function(window, document, undefined) { // return a function that gives the plural form name for a given integer var index = locales2rules[lang.replace(/-.*$/, '')]; if (!(index in pluralRules)) { - consoleWarn('plural form unknown for [' + lang + ']'); + console.warn('plural form unknown for [' + lang + ']'); return function() { return 'other'; }; } return pluralRules[index]; @@ -693,9 +681,9 @@ window.html10n = (function(window, document, undefined) { // Expand two-part locale specs var i=0 langs.forEach(function(lang) { - if(!lang) return - langs[i++] = lang - if(~lang.indexOf('-')) langs[i++] = lang.substr(0, lang.indexOf('-')) + if(!lang) return; + langs[i++] = lang; + if(~lang.indexOf('-')) langs[i++] = lang.substr(0, lang.indexOf('-')); }) this.build(langs, function(er, translations) { @@ -727,7 +715,7 @@ window.html10n = (function(window, document, undefined) { var i = 0 , n = list.length iterator(list[i], i, function each(err) { - if(err) consoleLog(err) + if(err) console.error(err) i++ if (i < n) return iterator(list[i],i, each); cb() @@ -750,8 +738,8 @@ window.html10n = (function(window, document, undefined) { html10n.get = function(id, args) { var translations = html10n.translations - if(!translations) return consoleWarn('No translations available (yet)') - if(!translations[id]) return consoleWarn('Could not find string '+id) + if(!translations) return console.warn('No translations available (yet)') + if(!translations[id]) return console.warn('Could not find string '+id) // apply macros var str = translations[id] @@ -781,7 +769,7 @@ window.html10n = (function(window, document, undefined) { } else if (arg in translations) { sub = translations[arg] } else { - consoleWarn('Could not find argument {{' + arg + '}}') + console.warn('Could not find argument {{' + arg + '}}') return str } @@ -840,7 +828,7 @@ window.html10n = (function(window, document, undefined) { str.id = node.getAttribute('data-l10n-id') if (!str.id) return - if(!translations[str.id]) return consoleWarn('Couldn\'t find translation key '+str.id) + if(!translations[str.id]) return console.warn('Couldn\'t find translation key '+str.id) // get args if(window.JSON) { @@ -849,7 +837,7 @@ window.html10n = (function(window, document, undefined) { try{ str.args = eval(node.getAttribute('data-l10n-args')) }catch(e) { - consoleWarn('Couldn\'t parse args for '+str.id) + console.warn('Couldn\'t parse args for '+str.id) } } @@ -887,7 +875,7 @@ window.html10n = (function(window, document, undefined) { } } if (!found) { - consoleWarn('Unexpected error: could not translate element content for key '+str.id, node) + console.warn('Unexpected error: could not translate element content for key '+str.id, node) } } } diff --git a/sources/src/static/js/jquery_browser.js b/sources/src/static/js/jquery_browser.js deleted file mode 100644 index 0d61e0d..0000000 --- a/sources/src/static/js/jquery_browser.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - Copied from jQuery 1.8, the last jquery version with browser recognition support -*/ - -(function(){ - // Use of jQuery.browser is frowned upon. - // More details: http://api.jquery.com/jQuery.browser - // jQuery.uaMatch maintained for back-compat - var uaMatch = function( ua ) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) || - /(webkit)[ \/]([\w.]+)/.exec( ua ) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) || - /(msie) ([\w.]+)/.exec( ua ) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; - }; - - var userAgent = navigator.userAgent; - var matched = uaMatch(userAgent); - var browser = {}; - - if ( matched.browser ) { - browser[ matched.browser ] = true; - browser.version = matched.version; - } - - // Chrome is Webkit, but Webkit is also Safari. - if ( browser.chrome ) { - browser.webkit = true; - } else if ( browser.webkit ) { - browser.safari = true; - } - - //custom extensions, the original jquery didn't have these - browser.windows = /windows/i.test(userAgent); - browser.mobile = /mobile/i.test(userAgent) || /android/i.test(userAgent); - - if(typeof exports !== 'undefined'){ - exports.browser = browser; - } else{ - $.browser = browser; - } -})(); \ No newline at end of file diff --git a/sources/src/static/js/json2.js b/sources/src/static/js/json2.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/l10n.js b/sources/src/static/js/l10n.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/linestylefilter.js b/sources/src/static/js/linestylefilter.js old mode 100644 new mode 100755 index cb1ee1d..17ab993 --- a/sources/src/static/js/linestylefilter.js +++ b/sources/src/static/js/linestylefilter.js @@ -34,7 +34,6 @@ var linestylefilter = {}; var _ = require('./underscore'); var AttributeManager = require('./AttributeManager'); - linestylefilter.ATTRIB_CLASSES = { 'bold': 'tag:b', 'italic': 'tag:i', @@ -59,6 +58,13 @@ linestylefilter.getAuthorClassName = function(author) linestylefilter.getLineStyleFilter = function(lineLength, aline, textAndClassFunc, apool) { + // Plugin Hook to add more Attrib Classes + hooks.aCallAll('aceAttribClasses', linestylefilter.ATTRIB_CLASSES, function(err, ATTRIB_CLASSES){ + if(ATTRIB_CLASSES.length >= 1){ + linestylefilter.ATTRIB_CLASSES = ATTRIB_CLASSES[0]; + } + }); + if (lineLength == 0) return textAndClassFunc; var nextAfterAuthorColors = textAndClassFunc; @@ -312,20 +318,20 @@ linestylefilter.textAndClassFuncSplitter = function(func, splitPointsOpt) return spanHandler; }; -linestylefilter.getFilterStack = function(lineText, textAndClassFunc, browser) +linestylefilter.getFilterStack = function(lineText, textAndClassFunc, abrowser) { var func = linestylefilter.getURLFilter(lineText, textAndClassFunc); var hookFilters = hooks.callAll("aceGetFilterStack", { linestylefilter: linestylefilter, - browser: browser + browser: abrowser }); _.map(hookFilters ,function(hookFilter) { func = hookFilter(lineText, func); }); - if (browser !== undefined && browser.msie) + if (abrowser !== undefined && abrowser.msie) { // IE7+ will take an e-mail address like and linkify it to foo@bar.com. // We then normalize it back to text with no angle brackets. It's weird. So always diff --git a/sources/src/static/js/pad.js b/sources/src/static/js/pad.js old mode 100644 new mode 100755 index 73fcd3d..e395140 --- a/sources/src/static/js/pad.js +++ b/sources/src/static/js/pad.js @@ -43,7 +43,6 @@ var padsavedrevs = require('./pad_savedrevs'); var paduserlist = require('./pad_userlist').paduserlist; var padutils = require('./pad_utils').padutils; var colorutils = require('./colorutils').colorutils; - var createCookie = require('./pad_utils').createCookie; var readCookie = require('./pad_utils').readCookie; var randomString = require('./pad_utils').randomString; @@ -51,6 +50,8 @@ var gritter = require('./gritter').gritter; var hooks = require('./pluginfw/hooks'); +var receivedClientVars = false; + function createCookie(name, value, days, path){ /* Warning Internet Explorer doesn't use this it uses the one from pad_utils.js */ if (days) { @@ -67,7 +68,7 @@ function createCookie(name, value, days, path){ /* Warning Internet Explorer doe } //Check if the browser is IE and if so make sure the full path is set in the cookie - if(navigator.appName=='Microsoft Internet Explorer'){ + if((navigator.appName == 'Microsoft Internet Explorer') || ((navigator.appName == 'Netscape') && (new RegExp("Trident/.*rv:([0-9]{1,}[\.0-9]{0,})").exec(navigator.userAgent) != null))){ document.cookie = name + "=" + value + expires + "; path="+document.location; } else{ @@ -109,7 +110,7 @@ function randomString() // callback: the function to call when all above succeeds, `val` is the value supplied by the user var getParameters = [ { name: "noColors", checkVal: "true", callback: function(val) { settings.noColors = true; $('#clearAuthorship').hide(); } }, - { name: "showControls", checkVal: "false", callback: function(val) { $('#editbar').hide(); $('#editorcontainer').css({"top":"0px"}); } }, + { name: "showControls", checkVal: "false", callback: function(val) { $('#editbar').addClass('hideControlsEditbar'); $('#editorcontainer').addClass('hideControlsEditor'); } }, { name: "showChat", checkVal: "false", callback: function(val) { $('#chaticon').hide(); } }, { name: "showLineNumbers", checkVal: "false", callback: function(val) { settings.LineNumbersDisabled = true; } }, { name: "useMonospaceFont", checkVal: "true", callback: function(val) { settings.useMonospaceFontGlobal = true; } }, @@ -119,11 +120,24 @@ var getParameters = [ { name: "userColor", checkVal: null, callback: function(val) { settings.globalUserColor = decodeURIComponent(val); } }, { name: "rtl", checkVal: "true", callback: function(val) { settings.rtlIsTrue = true } }, { name: "alwaysShowChat", checkVal: "true", callback: function(val) { chat.stickToScreen(); } }, + { name: "chatAndUsers", checkVal: "true", callback: function(val) { chat.chatAndUsers(); } }, { name: "lang", checkVal: null, callback: function(val) { window.html10n.localize([val, 'en']); } } ]; function getParams() { + // Tries server enforced options first.. + for(var i = 0; i < getParameters.length; i++) + { + var setting = getParameters[i]; + var value = clientVars.padOptions[setting.name]; + if(value.toString() === setting.checkVal) + { + setting.callback(value); + } + } + + // Then URL applied stuff var params = getUrlVars() for(var i = 0; i < getParameters.length; i++) @@ -160,6 +174,49 @@ function savePassword() return false; } +function sendClientReady(isReconnect, messageType) +{ + messageType = typeof messageType !== 'undefined' ? messageType : 'CLIENT_READY'; + var padId = document.location.pathname.substring(document.location.pathname.lastIndexOf("/") + 1); + padId = decodeURIComponent(padId); // unescape neccesary due to Safari and Opera interpretation of spaces + + if(!isReconnect) + { + var titleArray = document.title.split('|'); + var title = titleArray[titleArray.length - 1]; + document.title = padId.replace(/_+/g, ' ') + " | " + title; + } + + var token = readCookie("token"); + if (token == null) + { + token = "t." + randomString(); + createCookie("token", token, 60); + } + + var sessionID = decodeURIComponent(readCookie("sessionID")); + var password = readCookie("password"); + + var msg = { + "component": "pad", + "type": messageType, + "padId": padId, + "sessionID": sessionID, + "password": password, + "token": token, + "protocolVersion": 2 + }; + + //this is a reconnect, lets tell the server our revisionnumber + if(isReconnect == true) + { + msg.client_rev=pad.collabClient.getCurrentRevisionNumber(); + msg.reconnect=true; + } + + socket.json.send(msg); +} + function handshake() { var loc = document.location; @@ -171,49 +228,13 @@ function handshake() var resource = exports.baseURL.substring(1) + "socket.io"; //connect socket = pad.socket = io.connect(url, { - resource: resource, + // Allow deployers to host Etherpad on a non-root path + 'path': exports.baseURL + "socket.io", + 'resource': resource, 'max reconnection attempts': 3, 'sync disconnect on unload' : false }); - function sendClientReady(isReconnect) - { - var padId = document.location.pathname.substring(document.location.pathname.lastIndexOf("/") + 1); - padId = decodeURIComponent(padId); // unescape neccesary due to Safari and Opera interpretation of spaces - - if(!isReconnect) - document.title = padId.replace(/_+/g, ' ') + " | " + document.title; - - var token = readCookie("token"); - if (token == null) - { - token = "t." + randomString(); - createCookie("token", token, 60); - } - - var sessionID = decodeURIComponent(readCookie("sessionID")); - var password = readCookie("password"); - - var msg = { - "component": "pad", - "type": "CLIENT_READY", - "padId": padId, - "sessionID": sessionID, - "password": password, - "token": token, - "protocolVersion": 2 - }; - - //this is a reconnect, lets tell the server our revisionnumber - if(isReconnect == true) - { - msg.client_rev=pad.collabClient.getCurrentRevisionNumber(); - msg.reconnect=true; - } - - socket.json.send(msg); - }; - var disconnectTimeout; socket.once('connect', function () { @@ -228,7 +249,7 @@ function handshake() } pad.collabClient.setChannelState("CONNECTED"); - sendClientReady(true); + pad.sendClientReady(true); }); socket.on('disconnect', function (reason) { @@ -246,7 +267,6 @@ function handshake() } }); - var receivedClientVars = false; var initalized = false; socket.on('message', function(obj) @@ -286,7 +306,7 @@ function handshake() } //if we haven't recieved the clientVars yet, then this message should it be - else if (!receivedClientVars) + else if (!receivedClientVars && obj.type == "CLIENT_VARS") { //log the message if (window.console) console.log(obj); @@ -386,7 +406,6 @@ var pad = { diagnosticInfo: {}, initTime: 0, clientTimeOffset: null, - preloadedImages: false, padOptions: {}, // these don't require init; clientVars should all go through here @@ -426,6 +445,35 @@ var pad = { { return pad.myUserInfo.name; }, + userList: function() + { + return paduserlist.users(); + }, + sendClientReady: function(isReconnect, messageType) + { + messageType = typeof messageType !== 'undefined' ? messageType : 'CLIENT_READY'; + sendClientReady(isReconnect, messageType); + }, + switchToPad: function(padId) + { + var newHref = new RegExp(/.*\/p\/[^\/]+/).exec(document.location.pathname) || clientVars.padId; + newHref = newHref[0]; + if (options != null){ + newHref = newHref + '?' + options; + } + + if(window.history && window.history.pushState) + { + $('#chattext p').remove(); //clear the chat messages + window.history.pushState("", "", newHref); + receivedClientVars = false; + sendClientReady(false, 'SWITCH_TO_PAD'); + } + else // fallback + { + window.location.href = newHref; + } + }, sendClientMessage: function(msg) { pad.collabClient.sendClientMessage(msg); @@ -440,8 +488,17 @@ var pad = { { // start the custom js if (typeof customStart == "function") customStart(); - getParams(); handshake(); + + // To use etherpad you have to allow cookies. + // This will check if the creation of a test-cookie has success. + // Otherwise it shows up a message to the user. + createCookie("test", "test"); + if (!readCookie("test")) + { + $('#loading').hide(); + $('#noCookie').show(); + } }); }, _afterHandshake: function() @@ -450,17 +507,19 @@ var pad = { //initialize the chat chat.init(this); + getParams(); + padcookie.init(); // initialize the cookies pad.initTime = +(new Date()); pad.padOptions = clientVars.initialOptions; - if ((!$.browser.msie) && (!($.browser.mozilla && $.browser.version.indexOf("1.8.") == 0))) + if ((!browser.msie) && (!(browser.firefox && browser.version.indexOf("1.8.") == 0))) { document.domain = document.domain; // for comet } // for IE - if ($.browser.msie) + if (browser.msie) { try { @@ -522,9 +581,31 @@ var pad = { chat.stickToScreen(true); // stick it to the screen $('#options-stickychat').prop("checked", true); // set the checkbox to on } + if(padcookie.getPref("chatAndUsers")){ // if we have a cookie for always showing chat then show it + chat.chatAndUsers(true); // stick it to the screen + $('#options-chatandusers').prop("checked", true); // set the checkbox to on + } if(padcookie.getPref("showAuthorshipColors") == false){ pad.changeViewOption('showAuthorColors', false); } + if(padcookie.getPref("showLineNumbers") == false){ + pad.changeViewOption('showLineNumbers', false); + } + if(padcookie.getPref("rtlIsTrue") == true){ + pad.changeViewOption('rtlIsTrue', true); + } + + var fonts = ['useMonospaceFont', 'useOpenDyslexicFont', 'useComicSansFont', 'useCourierNewFont', 'useGeorgiaFont', 'useImpactFont', + 'useLucidaFont', 'useLucidaSansFont', 'usePalatinoFont', 'useTahomaFont', 'useTimesNewRomanFont', + 'useTrebuchetFont', 'useVerdanaFont', 'useSymbolFont', 'useWebdingsFont', 'useWingDingsFont', 'useSansSerifFont', + 'useSerifFont']; + + $.each(fonts, function(i, font){ + if(padcookie.getPref(font) == true){ + pad.changeViewOption(font, true); + } + }) + hooks.aCallAll("postAceInit", {ace: padeditor.ace, pad: pad}); } }, @@ -575,6 +656,7 @@ var pad = { for (var k in opts.view) { pad.padOptions.view[k] = opts.view[k]; + padcookie.setPref(k, opts.view[k]); } padeditor.setViewOptions(pad.padOptions.view); } @@ -728,23 +810,12 @@ var pad = { }, handleIsFullyConnected: function(isConnected, isInitialConnect) { - // load all images referenced from CSS, one at a time, - // starting one second after connection is first established. - if (isConnected && !pad.preloadedImages) - { - window.setTimeout(function() - { - if (!pad.preloadedImages) - { - pad.preloadImages(); - pad.preloadedImages = true; - } - }, 1000); - } - pad.determineChatVisibility(isConnected && !isInitialConnect); + pad.determineChatAndUsersVisibility(isConnected && !isInitialConnect); pad.determineAuthorshipColorsVisibility(); - + setTimeout(function(){ + padeditbar.toggleDropDown("none"); + }, 1000); }, determineChatVisibility: function(asNowConnectedFeedback){ var chatVisCookie = padcookie.getPref('chatAlwaysVisible'); @@ -756,6 +827,16 @@ var pad = { $('#options-stickychat').prop("checked", false); // set the checkbox for off } }, + determineChatAndUsersVisibility: function(asNowConnectedFeedback){ + var chatAUVisCookie = padcookie.getPref('chatAndUsersVisible'); + if(chatAUVisCookie){ // if the cookie is set for chat always visible + chat.chatAndUsers(true); // stick it to the screen + $('#options-chatandusers').prop("checked", true); // set the checkbox to on + } + else{ + $('#options-chatandusers').prop("checked", false); // set the checkbox for off + } + }, determineAuthorshipColorsVisibility: function(){ var authColCookie = padcookie.getPref('showAuthorshipColors'); if (authColCookie){ @@ -837,34 +918,6 @@ var pad = { { pad.collabClient.addHistoricalAuthors(data); } - }, - preloadImages: function() - { - var images = ["../static/img/connectingbar.gif"]; - - function loadNextImage() - { - if (images.length == 0) - { - return; - } - var img = new Image(); - img.src = images.shift(); - if (img.complete) - { - scheduleLoadNextImage(); - } - else - { - $(img).bind('error load onreadystatechange', scheduleLoadNextImage); - } - } - - function scheduleLoadNextImage() - { - window.setTimeout(loadNextImage, 0); - } - scheduleLoadNextImage(); } }; @@ -937,4 +990,3 @@ exports.handshake = handshake; exports.pad = pad; exports.init = init; exports.alertBar = alertBar; - diff --git a/sources/src/static/js/pad_connectionstatus.js b/sources/src/static/js/pad_connectionstatus.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/pad_cookie.js b/sources/src/static/js/pad_cookie.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/pad_editbar.js b/sources/src/static/js/pad_editbar.js old mode 100644 new mode 100755 index 9d42cba..e418969 --- a/sources/src/static/js/pad_editbar.js +++ b/sources/src/static/js/pad_editbar.js @@ -63,6 +63,7 @@ ToolbarItem.prototype.bind = function (callback) { if (self.isButton()) { self.$el.click(function (event) { + $(':focus').blur(); callback(self.getCommand(), self); event.preventDefault(); }); @@ -140,15 +141,29 @@ var padeditbar = (function() init: function() { var self = this; self.dropdowns = []; - + // Listen for resize events (sucks but needed as iFrame ace_inner has to be position absolute + // A CSS fix for this would be nice but I'm not sure how we'd do it. + $(window).resize(function(){ + self.redrawHeight(); + }); + $("#editbar .editbarbutton").attr("unselectable", "on"); // for IE $("#editbar").removeClass("disabledtoolbar").addClass("enabledtoolbar"); $("#editbar [data-key]").each(function () { + $(this).unbind("click"); (new ToolbarItem($(this))).bind(function (command, item) { self.triggerCommand(command, item); }); }); + $('body:not(#editorcontainerbox)').on("keydown", function(evt){ + bodyKeyEvent(evt); + }); + + $('#editbar').show(); + + this.redrawHeight(); + registerDefaultCommands(self); hooks.callAll("postToolbarInit", { @@ -170,6 +185,33 @@ var padeditbar = (function() this.commands[cmd] = callback; return this; }, + redrawHeight: function(){ + var editbarHeight = $('.menu_left').height() + 1 + "px"; + var containerTop = $('.menu_left').height() + 6 + "px"; + $('#editbar').css("height", editbarHeight); + + $('#editorcontainer').css("top", containerTop); + + // make sure pop ups are in the right place + if($('#editorcontainer').offset()){ + $('.popup').css("top", $('#editorcontainer').offset().top + "px"); + } + + // If sticky chat is enabled.. + if($('#options-stickychat').is(":checked")){ + if($('#editorcontainer').offset()){ + $('#chatbox').css("top", $('#editorcontainer').offset().top + "px"); + } + }; + + // If chat and Users is enabled.. + if($('#options-chatandusers').is(":checked")){ + if($('#editorcontainer').offset()){ + $('#users').css("top", $('#editorcontainer').offset().top + "px"); + } + } + + }, registerDropdownCommand: function (cmd, dropdown) { dropdown = dropdown || cmd; self.dropdowns.push(dropdown) @@ -206,7 +248,7 @@ var padeditbar = (function() if(module.css('display') != "none") { - $("#" + self.dropdowns[i] + "link").removeClass("selected"); + $("li[data-key=" + self.dropdowns[i] + "] > a").removeClass("selected"); module.slideUp("fast", cb); returned = true; } @@ -223,12 +265,12 @@ var padeditbar = (function() if(module.css('display') != "none") { - $("#" + self.dropdowns[i] + "link").removeClass("selected"); + $("li[data-key=" + self.dropdowns[i] + "] > a").removeClass("selected"); module.slideUp("fast"); } else if(self.dropdowns[i]==moduleName) { - $("#" + self.dropdowns[i] + "link").addClass("selected"); + $("li[data-key=" + self.dropdowns[i] + "] > a").addClass("selected"); module.slideDown("fast", cb); } } @@ -263,6 +305,72 @@ var padeditbar = (function() } }; + var editbarPosition = 0; + + function bodyKeyEvent(evt){ + + // If the event is Alt F9 or Escape & we're already in the editbar menu + // Send the users focus back to the pad + if((evt.keyCode === 120 && evt.altKey) || evt.keyCode === 27){ + if($(':focus').parents(".toolbar").length === 1){ + // If we're in the editbar already.. + // Close any dropdowns we have open.. + padeditbar.toggleDropDown("none"); + // Check we're on a pad and not on the timeslider + // Or some other window I haven't thought about! + if(typeof pad === 'undefined'){ + // Timeslider probably.. + // Shift focus away from any drop downs + $(':focus').blur(); // required to do not try to remove! + $('#padmain').focus(); // Focus back onto the pad + }else{ + // Shift focus away from any drop downs + $(':focus').blur(); // required to do not try to remove! + padeditor.ace.focus(); // Sends focus back to pad + // The above focus doesn't always work in FF, you have to hit enter afterwards + evt.preventDefault(); + } + }else{ + // Focus on the editbar :) + var firstEditbarElement = parent.parent.$('#editbar').children("ul").first().children().first().children().first().children().first(); + $(this).blur(); + firstEditbarElement.focus(); + evt.preventDefault(); + } + } + // Are we in the toolbar?? + if($(':focus').parents(".toolbar").length === 1){ + // On arrow keys go to next/previous button item in editbar + if(evt.keyCode !== 39 && evt.keyCode !== 37) return; + + // Get all the focusable items in the editbar + var focusItems = $('#editbar').find('button, select'); + + // On left arrow move to next button in editbar + if(evt.keyCode === 37){ + // If a dropdown is visible or we're in an input don't move to the next button + if($('.popup').is(":visible") || evt.target.localName === "input") return; + + editbarPosition--; + // Allow focus to shift back to end of row and start of row + if(editbarPosition === -1) editbarPosition = focusItems.length -1; + $(focusItems[editbarPosition]).focus() + } + + // On right arrow move to next button in editbar + if(evt.keyCode === 39){ + // If a dropdown is visible or we're in an input don't move to the next button + if($('.popup').is(":visible") || evt.target.localName === "input") return; + + editbarPosition++; + // Allow focus to shift back to end of row and start of row + if(editbarPosition >= focusItems.length) editbarPosition = 0; + $(focusItems[editbarPosition]).focus(); + } + } + + } + function aceAttributeCommand(cmd, ace) { ace.ace_toggleAttributeOnSelection(cmd); } @@ -271,13 +379,39 @@ var padeditbar = (function() toolbar.registerDropdownCommand("showusers", "users"); toolbar.registerDropdownCommand("settings"); toolbar.registerDropdownCommand("connectivity"); - toolbar.registerDropdownCommand("import_export", "importexport"); + toolbar.registerDropdownCommand("import_export"); toolbar.registerDropdownCommand("embed"); + toolbar.registerCommand("settings", function () { + toolbar.toggleDropDown("settings", function(){ + $('#options-stickychat').focus(); + }); + }); + + toolbar.registerCommand("import_export", function () { + toolbar.toggleDropDown("import_export", function(){ + // If Import file input exists then focus on it.. + if($('#importfileinput').length !== 0){ + setTimeout(function(){ + $('#importfileinput').focus(); + }, 100); + }else{ + $('.exportlink').first().focus(); + } + }); + }); + + toolbar.registerCommand("showusers", function () { + toolbar.toggleDropDown("users", function(){ + $('#myusernameedit').focus(); + }); + }); + toolbar.registerCommand("embed", function () { toolbar.setEmbedLinks(); - $('#linkinput').focus().select(); - toolbar.toggleDropDown("embed"); + toolbar.toggleDropDown("embed", function(){ + $('#linkinput').focus().select(); + }); }); toolbar.registerCommand("savedRevision", function () { @@ -285,7 +419,7 @@ var padeditbar = (function() }); toolbar.registerCommand("showTimeSlider", function () { - document.location = document.location + "/timeslider"; + document.location = document.location.pathname+ '/timeslider'; }); toolbar.registerAceCommand("bold", aceAttributeCommand); diff --git a/sources/src/static/js/pad_editor.js b/sources/src/static/js/pad_editor.js old mode 100644 new mode 100755 index b73409f..2514cd1 --- a/sources/src/static/js/pad_editor.js +++ b/sources/src/static/js/pad_editor.js @@ -28,6 +28,13 @@ var padeditor = (function() var Ace2Editor = undefined; var pad = undefined; var settings = undefined; + + // Array of available fonts + var fonts = ['useMonospaceFont', 'useOpenDyslexicFont', 'useComicSansFont', 'useCourierNewFont', 'useGeorgiaFont', 'useImpactFont', + 'useLucidaFont', 'useLucidaSansFont', 'usePalatinoFont', 'useTahomaFont', 'useTimesNewRomanFont', + 'useTrebuchetFont', 'useVerdanaFont', 'useSymbolFont', 'useWebdingsFont', 'useWingDingsFont', 'useSansSerifFont', + 'useSerifFont']; + var self = { ace: null, // this is accessed directly from other files @@ -85,10 +92,15 @@ var padeditor = (function() padutils.setCheckbox($("#options-rtlcheck"), ('rtl' == html10n.getDirection())); }) - // font face + // font family change $("#viewfontmenu").change(function() { - pad.changeViewOption('useMonospaceFont', $("#viewfontmenu").val() == 'monospace'); + $.each(fonts, function(i, font){ + var sfont = font.replace("use",""); + sfont = sfont.replace("Font",""); + sfont = sfont.toLowerCase(); + pad.changeViewOption(font, $("#viewfontmenu").val() == sfont); + }); }); // Language @@ -98,12 +110,12 @@ var padeditor = (function() // this does not interfere with html10n's normal value-setting because html10n just ingores s // also, a value which has been set by the user will be not overwritten since a user-edited // does *not* have the editempty-class - $('input[data-l10n-id]').each(function(key, input) - { - input = $(input); - if(input.hasClass("editempty")) - input.val(html10n.get(input.attr("data-l10n-id"))); - }); + $('input[data-l10n-id]').each(function(key, input){ + input = $(input); + if(input.hasClass("editempty")){ + input.val(html10n.get(input.attr("data-l10n-id"))); + } + }); }) $("#languagemenu").val(html10n.getLanguage()); $("#languagemenu").change(function() { @@ -124,8 +136,6 @@ var padeditor = (function() var v; v = getOption('rtlIsTrue', ('rtl' == html10n.getDirection())); - // Override from parameters if true - if(settings.rtlIsTrue === true) v = true; self.ace.setProperty("rtlIsTrue", v); padutils.setCheckbox($("#options-rtlcheck"), v); @@ -136,13 +146,49 @@ var padeditor = (function() v = getOption('showAuthorColors', true); self.ace.setProperty("showsauthorcolors", v); padutils.setCheckbox($("#options-colorscheck"), v); - // Override from parameters if true - if (settings.noColors !== false) - self.ace.setProperty("showsauthorcolors", !settings.noColors); - v = getOption('useMonospaceFont', false); - self.ace.setProperty("textface", (v ? "monospace" : "Arial, sans-serif")); - $("#viewfontmenu").val(v ? "monospace" : "normal"); + // Override from parameters if true + if (settings.noColors !== false){ + self.ace.setProperty("showsauthorcolors", !settings.noColors); + } + + var normalFont = true; + // Go through each font and see if the option is set.. + $.each(fonts, function(i, font){ + var isEnabled = getOption(font, false); + if(isEnabled){ + font = font.replace("use",""); + font = font.replace("Font",""); + font = font.toLowerCase(); + if(font === "monospace") self.ace.setProperty("textface", "Courier new"); + if(font === "opendyslexic") self.ace.setProperty("textface", "OpenDyslexic"); + if(font === "comicsans") self.ace.setProperty("textface", "Comic Sans MS"); + if(font === "georgia") self.ace.setProperty("textface", "Georgia"); + if(font === "impact") self.ace.setProperty("textface", "Impact"); + if(font === "lucida") self.ace.setProperty("textface", "Lucida"); + if(font === "lucidasans") self.ace.setProperty("textface", "Lucida Sans Unicode"); + if(font === "palatino") self.ace.setProperty("textface", "Palatino Linotype"); + if(font === "tahoma") self.ace.setProperty("textface", "Tahoma"); + if(font === "timesnewroman") self.ace.setProperty("textface", "Times New Roman"); + if(font === "trebuchet") self.ace.setProperty("textface", "Trebuchet MS"); + if(font === "verdana") self.ace.setProperty("textface", "Verdana"); + if(font === "symbol") self.ace.setProperty("textface", "Symbol"); + if(font === "webdings") self.ace.setProperty("textface", "Webdings"); + if(font === "wingdings") self.ace.setProperty("textface", "Wingdings"); + if(font === "sansserif") self.ace.setProperty("textface", "MS Sans Serif"); + if(font === "serif") self.ace.setProperty("textface", "MS Serif"); + + // $("#viewfontmenu").val(font); + normalFont = false; + } + }); + + // No font has been previously selected so use the Normal font + if(normalFont){ + self.ace.setProperty("textface", "Arial, sans-serif"); + // $("#viewfontmenu").val("normal"); + } + }, dispose: function() { diff --git a/sources/src/static/js/pad_impexp.js b/sources/src/static/js/pad_impexp.js old mode 100644 new mode 100755 index aa48ad7..1648f34 --- a/sources/src/static/js/pad_impexp.js +++ b/sources/src/static/js/pad_impexp.js @@ -35,32 +35,10 @@ var padimpexp = (function() function fileInputUpdated() { + $('#importsubmitinput').addClass('throbbold'); $('#importformfilediv').addClass('importformenabled'); $('#importsubmitinput').removeAttr('disabled'); - $('#importmessagefail').fadeOut("fast"); - $('#importarrow').show(); - $('#importarrow').animate( - { - paddingLeft: "0px" - }, 500).animate( - { - paddingLeft: "10px" - }, 150, 'swing').animate( - { - paddingLeft: "0px" - }, 150, 'swing').animate( - { - paddingLeft: "10px" - }, 150, 'swing').animate( - { - paddingLeft: "0px" - }, 150, 'swing').animate( - { - paddingLeft: "10px" - }, 150, 'swing').animate( - { - paddingLeft: "0px" - }, 150, 'swing'); + $('#importmessagefail').fadeOut('fast'); } function fileInputSubmit() @@ -131,6 +109,8 @@ var padimpexp = (function() msg = html10n.get("pad.impexp.convertFailed"); } else if(status === "uploadFailed"){ msg = html10n.get("pad.impexp.uploadFailed"); + } else if(status === "padHasData"){ + msg = html10n.get("pad.impexp.padHasData"); } function showError(fade) @@ -208,7 +188,8 @@ var padimpexp = (function() pad = _pad; //get /p/padname - var pad_root_path = new RegExp(/.*\/p\/[^\/]+/).exec(document.location.pathname); + // if /p/ isn't available due to a rewrite we use the clientVars padId + var pad_root_path = new RegExp(/.*\/p\/[^\/]+/).exec(document.location.pathname) || clientVars.padId; //get http://example.com/p/padname without Params var pad_root_url = document.location.protocol + '//' + document.location.host + document.location.pathname; @@ -220,8 +201,8 @@ var padimpexp = (function() // build the export links $("#exporthtmla").attr("href", pad_root_path + "/export/html"); + $("#exportetherpada").attr("href", pad_root_path + "/export/etherpad"); $("#exportplaina").attr("href", pad_root_path + "/export/txt"); - $("#exportdokuwikia").attr("href", pad_root_path + "/export/dokuwiki"); // activate action to import in the form $("#importform").attr('action', pad_root_url + "/import"); @@ -254,16 +235,16 @@ var padimpexp = (function() addImportFrames(); $("#importfileinput").change(fileInputUpdated); - $('#importform').submit(fileInputSubmit); + $('#importform').unbind("submit").submit(fileInputSubmit); $('.disabledexport').click(cantExport); }, - handleFrameCall: function(status) + handleFrameCall: function(directDatabaseAccess, status) { if (status !== "ok") { importFailed(status); } - + if(directDatabaseAccess) pad.switchToPad(clientVars.padId); importDone(); }, disable: function() diff --git a/sources/src/static/js/pad_modals.js b/sources/src/static/js/pad_modals.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/pad_savedrevs.js b/sources/src/static/js/pad_savedrevs.js old mode 100644 new mode 100755 index e1552c2..34323b2 --- a/sources/src/static/js/pad_savedrevs.js +++ b/sources/src/static/js/pad_savedrevs.js @@ -18,7 +18,16 @@ var pad; exports.saveNow = function(){ pad.collabClient.sendMessage({"type": "SAVE_REVISION"}); - alert(_("pad.savedrevs.marked")); + $.gritter.add({ + // (string | mandatory) the heading of the notification + title: _("pad.savedrevs.marked"), + // (string | mandatory) the text inside the notification + text: _("pad.savedrevs.timeslider") || "You can view saved revisions in the timeslider", + // (bool | optional) if you want it to fade out on its own or just sit there + sticky: false, + // (int | optional) the time you want it to be alive for before fading out + time: '2000' + }); } exports.init = function(_pad){ diff --git a/sources/src/static/js/pad_userlist.js b/sources/src/static/js/pad_userlist.js old mode 100644 new mode 100755 index f54b3e5..22dab40 --- a/sources/src/static/js/pad_userlist.js +++ b/sources/src/static/js/pad_userlist.js @@ -1,5 +1,5 @@ /** - * This code is mostly from the old Etherpad. Please help us to comment this code. + * This code is mostly from the old Etherpad. Please help us to comment this code. * This helps other people to understand this code better and helps them to improve it. * TL;DR COMMENTS ON THIS FILE ARE HIGHLY APPRECIATED */ @@ -468,6 +468,8 @@ var paduserlist = (function() self.setMyUserInfo(myInitialUserInfo); + if($('#online_count').length === 0) $('#editbar [data-key=showusers] > a').append('1'); + $("#otheruserstable tr").remove(); if (pad.getUserIsGuest()) @@ -506,6 +508,30 @@ var paduserlist = (function() }); // }, + users: function(){ + // Returns an object of users who have been on this pad + // Firstly we have to get live data.. + var userList = otherUsersInfo; + // Now we need to add ourselves.. + userList.push(myUserInfo); + // Now we add historical authors + var historical = clientVars.collab_client_vars.historicalAuthorData; + for (var key in historical){ + var userId = historical[key].userId; + // Check we don't already have this author in our array + var exists = false; + + userList.forEach(function(user){ + if(user.userId === userId) exists = true; + }); + + if(exists === false){ + userList.push(historical[key]); + } + + } + return userList; + }, setMyUserInfo: function(info) { //translate the colorId @@ -513,7 +539,7 @@ var paduserlist = (function() { info.colorId = clientVars.colorPalette[info.colorId]; } - + myUserInfo = $.extend( {}, info); @@ -602,7 +628,8 @@ var paduserlist = (function() online++; } } - $("#online_count").text(online); + + $('#online_count').text(online); return online; }, @@ -724,15 +751,15 @@ var paduserlist = (function() { $("#myswatchbox").addClass('myswatchboxhoverable').removeClass('myswatchboxunhoverable'); } - + $("#myswatch").css({'background-color': myUserInfo.colorId}); - - if ($.browser.msie && parseInt($.browser.version) <= 8) { - $("#usericon a").css({'box-shadow': 'inset 0 0 30px ' + myUserInfo.colorId,'background-color': myUserInfo.colorId}); + + if (browser.msie && parseInt(browser.version) <= 8) { + $("li[data-key=showusers] > a").css({'box-shadow': 'inset 0 0 30px ' + myUserInfo.colorId,'background-color': myUserInfo.colorId}); } else { - $("#usericon a").css({'box-shadow': 'inset 0 0 30px ' + myUserInfo.colorId}); + $("li[data-key=showusers] > a").css({'box-shadow': 'inset 0 0 30px ' + myUserInfo.colorId}); } } }; @@ -748,7 +775,7 @@ function getColorPickerSwatchIndex(jnode) function closeColorPicker(accept) { if (accept) - { + { var newColor = $("#mycolorpickerpreview").css("background-color"); var parts = newColor.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/); // parts now should be ["rgb(0, 70, 255", "0", "70", "255"] diff --git a/sources/src/static/js/pad_utils.js b/sources/src/static/js/pad_utils.js old mode 100644 new mode 100755 index bab6aa4..ff60ca7 --- a/sources/src/static/js/pad_utils.js +++ b/sources/src/static/js/pad_utils.js @@ -55,7 +55,7 @@ function createCookie(name, value, days, path){ /* Used by IE */ } //Check if the browser is IE and if so make sure the full path is set in the cookie - if(navigator.appName=='Microsoft Internet Explorer'){ + if((navigator.appName == 'Microsoft Internet Explorer') || ((navigator.appName == 'Netscape') && (new RegExp("Trident/.*rv:([0-9]{1,}[\.0-9]{0,})").exec(navigator.userAgent) != null))){ document.cookie = name + "=" + value + expires + "; path=/"; /* Note this bodge fix for IE is temporary until auth is rewritten */ } else{ @@ -482,7 +482,7 @@ var padutils = { }, bindCheckboxChange: function(node, func) { - $(node).bind("click change", func); + $(node).change(func); }, encodeUserId: function(userId) { @@ -515,12 +515,13 @@ function setupGlobalExceptionHandler() { globalExceptionHandler = function test (msg, url, linenumber) { var errorId = randomString(20); + var userAgent = padutils.escapeHtml(navigator.userAgent); if ($("#editorloadingbox").attr("display") != "none"){ //show javascript errors to the user $("#editorloadingbox").css("padding", "10px"); $("#editorloadingbox").css("padding-top", "45px"); $("#editorloadingbox").html("
    An error occured
    The error was reported with the following id: '" + errorId + "'

    Please press and hold Ctrl and press F5 to reload this page, if the problem persists please send this error message to your webmaster:
    '" - + "ErrorId: " + errorId + "
    URL: " + window.location.href + "
    UserAgent: " + navigator.userAgent + "
    " + msg + " in " + url + " at line " + linenumber + "'
    "); + + "ErrorId: " + errorId + "
    URL: " + window.location.href + "
    UserAgent: " + userAgent + "
    " + msg + " in " + url + " at line " + linenumber + "'"); } //send javascript errors to the server diff --git a/sources/src/static/js/pluginfw/client_plugins.js b/sources/src/static/js/pluginfw/client_plugins.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/pluginfw/hooks.js b/sources/src/static/js/pluginfw/hooks.js old mode 100644 new mode 100755 index 106e9ce..cf5fcc4 --- a/sources/src/static/js/pluginfw/hooks.js +++ b/sources/src/static/js/pluginfw/hooks.js @@ -8,7 +8,7 @@ var hookCallWrapper = function (hook, hook_name, args, cb) { // Normalize output to list for both sync and async cases var normalize = function(x) { - if (x == undefined) return []; + if (x === undefined) return []; return x; } var normalizedhook = function () { @@ -41,7 +41,7 @@ exports.syncMapFirst = function (lst, fn) { exports.mapFirst = function (lst, fn, cb) { var i = 0; - next = function () { + var next = function () { if (i >= lst.length) return cb(undefined); fn(lst[i++], function (err, result) { if (err) return cb(err); diff --git a/sources/src/static/js/pluginfw/installer.js b/sources/src/static/js/pluginfw/installer.js old mode 100644 new mode 100755 index e560261..cd2ed33 --- a/sources/src/static/js/pluginfw/installer.js +++ b/sources/src/static/js/pluginfw/installer.js @@ -1,6 +1,7 @@ var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins"); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks"); var npm = require("npm"); +var request = require("request"); var npmIsLoaded = false; var withNpm = function (npmfn) { @@ -60,17 +61,20 @@ exports.availablePlugins = null; var cacheTimestamp = 0; exports.getAvailablePlugins = function(maxCacheAge, cb) { - withNpm(function (er) { + request("https://static.etherpad.org/plugins.json", function(er, response, plugins){ if (er) return cb && cb(er); if(exports.availablePlugins && maxCacheAge && Math.round(+new Date/1000)-cacheTimestamp <= maxCacheAge) { return cb && cb(null, exports.availablePlugins) } - npm.commands.search(['ep_'], /*silent?*/true, function(er, results) { - if(er) return cb && cb(er); - exports.availablePlugins = results; - cacheTimestamp = Math.round(+new Date/1000); - cb && cb(null, results) - }) + try { + plugins = JSON.parse(plugins); + } catch (err) { + console.error('error parsing plugins.json:', err); + plugins = []; + } + exports.availablePlugins = plugins; + cacheTimestamp = Math.round(+new Date/1000); + cb && cb(null, plugins) }); }; @@ -84,7 +88,14 @@ exports.search = function(searchTerm, maxCacheAge, cb) { for (var pluginName in results) { // for every available plugin if (pluginName.indexOf(plugins.prefix) != 0) continue; // TODO: Also search in keywords here! - if(searchTerm && !~pluginName.toLowerCase().indexOf(searchTerm) && !~results[pluginName].description.toLowerCase().indexOf(searchTerm)) continue; + if(searchTerm && !~results[pluginName].name.toLowerCase().indexOf(searchTerm) + && (typeof results[pluginName].description != "undefined" && !~results[pluginName].description.toLowerCase().indexOf(searchTerm) ) + ){ + if(typeof results[pluginName].description === "undefined"){ + console.debug('plugin without Description: %s', results[pluginName].name); + } + continue; + } res[pluginName] = results[pluginName]; } cb && cb(null, res) diff --git a/sources/src/static/js/pluginfw/plugins.js b/sources/src/static/js/pluginfw/plugins.js old mode 100644 new mode 100755 index e02c133..dfdf941 --- a/sources/src/static/js/pluginfw/plugins.js +++ b/sources/src/static/js/pluginfw/plugins.js @@ -26,6 +26,17 @@ exports.formatPlugins = function () { return _.keys(exports.plugins).join(", "); }; +exports.formatPluginsWithVersion = function () { + var plugins = []; + _.forEach(exports.plugins, function(plugin){ + if(plugin.package.name !== "ep_etherpad-lite"){ + var pluginStr = plugin.package.name + "@" + plugin.package.version; + plugins.push(pluginStr); + } + }); + return plugins.join(", "); +}; + exports.formatParts = function () { return _.map(exports.parts, function (part) { return part.full_name; }).join("\n"); }; diff --git a/sources/src/static/js/pluginfw/read-installed.js b/sources/src/static/js/pluginfw/read-installed.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/pluginfw/shared.js b/sources/src/static/js/pluginfw/shared.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/pluginfw/tsort.js b/sources/src/static/js/pluginfw/tsort.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/rjquery.js b/sources/src/static/js/rjquery.js old mode 100644 new mode 100755 index d9d1ed1..1c0d98e --- a/sources/src/static/js/rjquery.js +++ b/sources/src/static/js/rjquery.js @@ -1,10 +1,5 @@ // Proviedes a require'able version of jQuery without leaking $ and jQuery; - require('./jquery'); var jq = window.$.noConflict(true); - -//added the old browser recognition -jq.browser = require('./jquery_browser').browser; - -exports.jQuery = exports.$ = jq; \ No newline at end of file +exports.jQuery = exports.$ = jq; diff --git a/sources/src/static/js/security.js b/sources/src/static/js/security.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/skiplist.js b/sources/src/static/js/skiplist.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/timeslider.js b/sources/src/static/js/timeslider.js old mode 100644 new mode 100755 index b3c10b8..08d6f68 --- a/sources/src/static/js/timeslider.js +++ b/sources/src/static/js/timeslider.js @@ -62,8 +62,8 @@ function init() { var resource = exports.baseURL.substring(1) + 'socket.io'; //build up the socket io connection - socket = io.connect(url, {resource: resource}); - + socket = io.connect(url, {path: exports.baseURL + 'socket.io', resource: resource}); + //send the ready message once we're connected socket.on('connect', function() { @@ -147,7 +147,7 @@ function handleClientVars(message) // export_links is a jQuery Array, so .each is allowed. export_links.each(function() { - this.setAttribute('href', this.href.replace( /(.+?)\/\w+\/(\d+\/)?export/ , '$1/' + padId + '/' + revno + '/export')); + this.setAttribute('href', this.href.replace( /(.+?)\/[^\/]+\/(\d+\/)?export/ , '$1/' + padId + '/' + revno + '/export')); }); }); @@ -157,6 +157,38 @@ function handleClientVars(message) fireWhenAllScriptsAreLoaded[i](); } $("#ui-slider-handle").css('left', $("#ui-slider-bar").width() - 2); + + // Translate some strings where we only want to set the title not the actual values + $('#playpause_button_icon').attr("title", html10n.get("timeslider.playPause")); + $('#leftstep').attr("title", html10n.get("timeslider.backRevision")); + $('#rightstep').attr("title", html10n.get("timeslider.forwardRevision")); + + // font family change + $("#viewfontmenu").change(function(){ + var font = $("#viewfontmenu").val(); + if(font === "monospace") setFont("Courier new"); + if(font === "opendyslexic") setFont("OpenDyslexic"); + if(font === "comicsans") setFont("Comic Sans MS"); + if(font === "georgia") setFont("Georgia"); + if(font === "impact") setFont("Impact"); + if(font === "lucida") setFont("Lucida"); + if(font === "lucidasans") setFont("Lucida Sans Unicode"); + if(font === "palatino") setFont("Palatino Linotype"); + if(font === "tahoma") setFont("Tahoma"); + if(font === "timesnewroman") setFont("Times New Roman"); + if(font === "trebuchet") setFont("Trebuchet MS"); + if(font === "verdana") setFont("Verdana"); + if(font === "symbol") setFont("Symbol"); + if(font === "webdings") setFont("Webdings"); + if(font === "wingdings") setFont("Wingdings"); + if(font === "sansserif") setFont("MS Sans Serif"); + if(font === "serif") setFont("MS Serif"); + }); + +} + +function setFont(font){ + $('#padcontent').css("font-family", font); } exports.baseURL = ''; diff --git a/sources/src/static/js/underscore.js b/sources/src/static/js/underscore.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/undomodule.js b/sources/src/static/js/undomodule.js old mode 100644 new mode 100755 diff --git a/sources/src/static/js/virtual_lines.js b/sources/src/static/js/virtual_lines.js deleted file mode 100644 index 2bcf5ed..0000000 --- a/sources/src/static/js/virtual_lines.js +++ /dev/null @@ -1,388 +0,0 @@ -/** - * This code is mostly from the old Etherpad. Please help us to comment this code. - * This helps other people to understand this code better and helps them to improve it. - * TL;DR COMMENTS ON THIS FILE ARE HIGHLY APPRECIATED - */ - -/** - * Copyright 2009 Google Inc. - * - * 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. - */ - -function makeVirtualLineView(lineNode) -{ - - // how much to jump forward or backward at once in a charSeeker before - // constructing a DOM node and checking the coordinates (which takes a - // significant fraction of a millisecond). From the - // coordinates and the approximate line height we can estimate how - // many lines we have moved. We risk being off if the number of lines - // we move is on the order of the line height in pixels. Fortunately, - // when the user boosts the font-size they increase both. - var maxCharIncrement = 20; - var seekerAtEnd = null; - - function getNumChars() - { - return lineNode.textContent.length; - } - - function getNumVirtualLines() - { - if (!seekerAtEnd) - { - var seeker = makeCharSeeker(); - seeker.forwardByWhile(maxCharIncrement); - seekerAtEnd = seeker; - } - return seekerAtEnd.getVirtualLine() + 1; - } - - function getVLineAndOffsetForChar(lineChar) - { - var seeker = makeCharSeeker(); - seeker.forwardByWhile(maxCharIncrement, null, lineChar); - var theLine = seeker.getVirtualLine(); - seeker.backwardByWhile(8, function() - { - return seeker.getVirtualLine() == theLine; - }); - seeker.forwardByWhile(1, function() - { - return seeker.getVirtualLine() != theLine; - }); - var lineStartChar = seeker.getOffset(); - return { - vline: theLine, - offset: (lineChar - lineStartChar) - }; - } - - function getCharForVLineAndOffset(vline, offset) - { - // returns revised vline and offset as well as absolute char index within line. - // if offset is beyond end of line, for example, will give new offset at end of line. - var seeker = makeCharSeeker(); - // go to start of line - seeker.binarySearch(function() - { - return seeker.getVirtualLine() >= vline; - }); - var lineStart = seeker.getOffset(); - var theLine = seeker.getVirtualLine(); - // go to offset, overshooting the virtual line only if offset is too large for it - seeker.forwardByWhile(maxCharIncrement, null, lineStart + offset); - // get back into line - seeker.backwardByWhile(1, function() - { - return seeker.getVirtualLine() != theLine; - }, lineStart); - var lineChar = seeker.getOffset(); - var theOffset = lineChar - lineStart; - // handle case of last virtual line; should be able to be at end of it - if (theOffset < offset && theLine == (getNumVirtualLines() - 1)) - { - var lineLen = getNumChars(); - theOffset += lineLen - lineChar; - lineChar = lineLen; - } - - return { - vline: theLine, - offset: theOffset, - lineChar: lineChar - }; - } - - return { - getNumVirtualLines: getNumVirtualLines, - getVLineAndOffsetForChar: getVLineAndOffsetForChar, - getCharForVLineAndOffset: getCharForVLineAndOffset, - makeCharSeeker: function() - { - return makeCharSeeker(); - } - }; - - function deepFirstChildTextNode(nd) - { - nd = nd.firstChild; - while (nd && nd.firstChild) nd = nd.firstChild; - if (nd.data) return nd; - return null; - } - - function makeCharSeeker( /*lineNode*/ ) - { - - function charCoords(tnode, i) - { - var container = tnode.parentNode; - - // treat space specially; a space at the end of a virtual line - // will have weird coordinates - var isSpace = (tnode.nodeValue.charAt(i) === " "); - if (isSpace) - { - if (i == 0) - { - if (container.previousSibling && deepFirstChildTextNode(container.previousSibling)) - { - tnode = deepFirstChildTextNode(container.previousSibling); - i = tnode.length - 1; - container = tnode.parentNode; - } - else - { - return { - top: container.offsetTop, - left: container.offsetLeft - }; - } - } - else - { - i--; // use previous char - } - } - - - var charWrapper = document.createElement("SPAN"); - - // wrap the character - var tnodeText = tnode.nodeValue; - var frag = document.createDocumentFragment(); - frag.appendChild(document.createTextNode(tnodeText.substring(0, i))); - charWrapper.appendChild(document.createTextNode(tnodeText.substr(i, 1))); - frag.appendChild(charWrapper); - frag.appendChild(document.createTextNode(tnodeText.substring(i + 1))); - container.replaceChild(frag, tnode); - - var result = { - top: charWrapper.offsetTop, - left: charWrapper.offsetLeft + (isSpace ? charWrapper.offsetWidth : 0), - height: charWrapper.offsetHeight - }; - - while (container.firstChild) container.removeChild(container.firstChild); - container.appendChild(tnode); - - return result; - } - - var lineText = lineNode.textContent; - var lineLength = lineText.length; - - var curNode = null; - var curChar = 0; - var curCharWithinNode = 0 - var curTop; - var curLeft; - var approxLineHeight; - var whichLine = 0; - - function nextNode() - { - var n = curNode; - if (!n) n = lineNode.firstChild; - else n = n.nextSibling; - while (n && !deepFirstChildTextNode(n)) - { - n = n.nextSibling; - } - return n; - } - - function prevNode() - { - var n = curNode; - if (!n) n = lineNode.lastChild; - else n = n.previousSibling; - while (n && !deepFirstChildTextNode(n)) - { - n = n.previousSibling; - } - return n; - } - - var seeker; - if (lineLength > 0) - { - curNode = nextNode(); - var firstCharData = charCoords(deepFirstChildTextNode(curNode), 0); - approxLineHeight = firstCharData.height; - curTop = firstCharData.top; - curLeft = firstCharData.left; - - function updateCharData(tnode, i) - { - var coords = charCoords(tnode, i); - whichLine += Math.round((coords.top - curTop) / approxLineHeight); - curTop = coords.top; - curLeft = coords.left; - } - - seeker = { - forward: function(numChars) - { - var oldChar = curChar; - var newChar = curChar + numChars; - if (newChar > (lineLength - 1)) newChar = lineLength - 1; - while (curChar < newChar) - { - var curNodeLength = deepFirstChildTextNode(curNode).length; - var toGo = curNodeLength - curCharWithinNode; - if (curChar + toGo > newChar || !nextNode()) - { - // going to next node would be too far - var n = newChar - curChar; - if (n >= toGo) n = toGo - 1; - curChar += n; - curCharWithinNode += n; - break; - } - else - { - // go to next node - curChar += toGo; - curCharWithinNode = 0; - curNode = nextNode(); - } - } - updateCharData(deepFirstChildTextNode(curNode), curCharWithinNode); - return curChar - oldChar; - }, - backward: function(numChars) - { - var oldChar = curChar; - var newChar = curChar - numChars; - if (newChar < 0) newChar = 0; - while (curChar > newChar) - { - if (curChar - curCharWithinNode <= newChar || !prevNode()) - { - // going to prev node would be too far - var n = curChar - newChar; - if (n > curCharWithinNode) n = curCharWithinNode; - curChar -= n; - curCharWithinNode -= n; - break; - } - else - { - // go to prev node - curChar -= curCharWithinNode + 1; - curNode = prevNode(); - curCharWithinNode = deepFirstChildTextNode(curNode).length - 1; - } - } - updateCharData(deepFirstChildTextNode(curNode), curCharWithinNode); - return oldChar - curChar; - }, - getVirtualLine: function() - { - return whichLine; - }, - getLeftCoord: function() - { - return curLeft; - } - }; - } - else - { - curLeft = lineNode.offsetLeft; - seeker = { - forward: function(numChars) - { - return 0; - }, - backward: function(numChars) - { - return 0; - }, - getVirtualLine: function() - { - return 0; - }, - getLeftCoord: function() - { - return curLeft; - } - }; - } - seeker.getOffset = function() - { - return curChar; - }; - seeker.getLineLength = function() - { - return lineLength; - }; - seeker.toString = function() - { - return "seeker[curChar: " + curChar + "(" + lineText.charAt(curChar) + "), left: " + seeker.getLeftCoord() + ", vline: " + seeker.getVirtualLine() + "]"; - }; - - function moveByWhile(isBackward, amount, optCondFunc, optCharLimit) - { - var charsMovedLast = null; - var hasCondFunc = ((typeof optCondFunc) == "function"); - var condFunc = optCondFunc; - var hasCharLimit = ((typeof optCharLimit) == "number"); - var charLimit = optCharLimit; - while (charsMovedLast !== 0 && ((!hasCondFunc) || condFunc())) - { - var toMove = amount; - if (hasCharLimit) - { - var untilLimit = (isBackward ? curChar - charLimit : charLimit - curChar); - if (untilLimit < toMove) toMove = untilLimit; - } - if (toMove < 0) break; - charsMovedLast = (isBackward ? seeker.backward(toMove) : seeker.forward(toMove)); - } - } - - seeker.forwardByWhile = function(amount, optCondFunc, optCharLimit) - { - moveByWhile(false, amount, optCondFunc, optCharLimit); - } - seeker.backwardByWhile = function(amount, optCondFunc, optCharLimit) - { - moveByWhile(true, amount, optCondFunc, optCharLimit); - } - seeker.binarySearch = function(condFunc) - { - // returns index of boundary between false chars and true chars; - // positions seeker at first true char, or else last char - var trueFunc = condFunc; - var falseFunc = function() - { - return !condFunc(); - }; - seeker.forwardByWhile(20, falseFunc); - seeker.backwardByWhile(20, trueFunc); - seeker.forwardByWhile(10, falseFunc); - seeker.backwardByWhile(5, trueFunc); - seeker.forwardByWhile(1, falseFunc); - return seeker.getOffset() + (condFunc() ? 0 : 1); - } - - return seeker; - } - -} - -exports.makeVirtualLineView = makeVirtualLineView; diff --git a/sources/src/static/robots.txt b/sources/src/static/robots.txt old mode 100644 new mode 100755 diff --git a/sources/src/static/tests.html b/sources/src/static/tests.html old mode 100644 new mode 100755 diff --git a/sources/src/templates/admin/index.html b/sources/src/templates/admin/index.html old mode 100644 new mode 100755 index 750a4b5..f6e9e29 --- a/sources/src/templates/admin/index.html +++ b/sources/src/templates/admin/index.html @@ -10,7 +10,7 @@