Merge new release into master branch!

This commit is contained in:
Stefan 2015-08-05 19:16:09 +02:00
commit c3fc850b69
95 changed files with 1348 additions and 287 deletions

View File

@ -4,7 +4,7 @@
# About # About
Etherpad is a really-real time collaborative editor maintained by the Etherpad Community. Etherpad is a really-real time collaborative editor maintained by the Etherpad Community.
Etherpad is written in Javascript(99.9%) on both the server and client so it's easy for developers to maintain and add new features. Because of this Etherpad has tons of customizations that you can leverage. Etherpad is written in JavaScript(99.9%) on both the server and client so it's easy for developers to maintain and add new features. Because of this Etherpad has tons of customizations that you can leverage.
Etherpad is designed to be easily embeddable and provides a [HTTP API](https://github.com/ether/etherpad-lite/wiki/HTTP-API) Etherpad is designed to be easily embeddable and provides a [HTTP API](https://github.com/ether/etherpad-lite/wiki/HTTP-API)
that allows your web application to manage pads, users and groups. It is recommended to use the [available client implementations](https://github.com/ether/etherpad-lite/wiki/HTTP-API-client-libraries) in order to interact with this API. that allows your web application to manage pads, users and groups. It is recommended to use the [available client implementations](https://github.com/ether/etherpad-lite/wiki/HTTP-API-client-libraries) in order to interact with this API.

41
bin/cleanRun.sh Executable file
View File

@ -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 $*

View File

@ -34,13 +34,13 @@ var sql = "SET CHARACTER SET UTF8;\n" +
fs.writeSync(sqlOutput, sql); fs.writeSync(sqlOutput, sql);
log("done"); log("done");
//set setings for ep db var etherpadDB = mysql.createConnection({
var etherpadDB= new mysql.Client(); host : settings.etherpadDB.host,
etherpadDB.host = settings.etherpadDB.host; user : settings.etherpadDB.user,
etherpadDB.port = settings.etherpadDB.port; password : settings.etherpadDB.password,
etherpadDB.database = settings.etherpadDB.database; database : settings.etherpadDB.database,
etherpadDB.user = settings.etherpadDB.user; port : settings.etherpadDB.port
etherpadDB.password = settings.etherpadDB.password; });
//get the timestamp once //get the timestamp once
var timestamp = new Date().getTime(); var timestamp = new Date().getTime();

View File

@ -21,7 +21,7 @@ if [ "$(id -u)" -eq 0 ] && [ $ignoreRoot -eq 0 ]; then
echo "You shouldn't start Etherpad as root!" 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" echo "Please type 'Etherpad rocks my socks' or supply the '--root' argument if you still want to start it as root"
read rocks read rocks
if [ ! $rocks = "Etherpad rocks my socks" ] if [ ! "$rocks" == "Etherpad rocks my socks" ]
then then
echo "Your input was incorrect" echo "Your input was incorrect"
exit 1 exit 1

View File

@ -8,5 +8,13 @@ if [ -d "../bin" ]; then
cd "../" cd "../"
fi fi
npm outdated --depth=0 | grep -v "^Package" | awk '{print $1}' | xargs npm install $1 --save-dev # npm outdated --depth=0 | grep -v "^Package" | awk '{print $1}' | xargs npm install $1 --save-dev
OUTDATED=`npm outdated --depth=0 | grep -v "^Package" | awk '{print $1}'`
# echo $OUTDATED
if test -n "$OUTDATED"; then
echo "Plugins require update, doing this now..."
echo "Updating $OUTDATED"
npm install $OUTDATED --save-dev
else
echo "Plugins are all up to date"
fi

View File

@ -198,15 +198,15 @@ Things in context:
1. cc - the contentcollector object 1. cc - the contentcollector object
2. state - the current state of the change being made 2. state - the current state of the change being made
3. tname - the tag name of this node currently being processed 3. tname - the tag name of this node currently being processed
4. style - the style applied to the node (probably CSS) 4. styl - the style applied to the node (probably CSS) -- Note the typo
5. cls - the HTML class string of the node 5. cls - the HTML class string of the node
This hook is called before the content of a node is collected by the usual methods. The cc object can be used to do a bunch of things that modify the content of the pad. See, for example, the heading1 plugin for etherpad original. This hook is called before the content of a node is collected by the usual methods. The cc object can be used to do a bunch of things that modify the content of the pad. See, for example, the heading1 plugin for etherpad original.
E.g. if you need to apply an attribute to newly inserted characters, E.g. if you need to apply an attribute to newly inserted characters,
call cc.doAttrib(state, "attributeName") which results in an attribute attributeName=true. call cc.doAttrib(state, "attributeName") which results in an attribute attributeName=true.
If you want to specify also a value, call cc.doAttrib(state, "attributeName:value") If you want to specify also a value, call cc.doAttrib(state, "attributeName::value")
which results in an attribute attributeName=value. which results in an attribute attributeName=value.
@ -257,7 +257,7 @@ This hook gets called every time the client receives a message of type `name`. T
`collab_client.js` has a pretty extensive list of message types, if you want to take a look. `collab_client.js` has a pretty extensive list of message types, if you want to take a look.
##aceStartLineAndCharForPoint-aceEndLineAndCharForPoint ##aceStartLineAndCharForPoint-aceEndLineAndCharForPoint
Called from: src/static/js/ace2_inner.js Called from: src/static/js/ace2_inner.js
Things in context: Things in context:
@ -272,7 +272,7 @@ Things in context:
This hook is provided to allow a plugin to turn DOM node selection into [line,char] selection. This hook is provided to allow a plugin to turn DOM node selection into [line,char] selection.
The return value should be an array of [line,char] The return value should be an array of [line,char]
##aceKeyEvent ##aceKeyEvent
Called from: src/static/js/ace2_inner.js Called from: src/static/js/ace2_inner.js
Things in context: Things in context:
@ -286,7 +286,7 @@ Things in context:
This hook is provided to allow a plugin to handle key events. This hook is provided to allow a plugin to handle key events.
The return value should be true if you have handled the event. The return value should be true if you have handled the event.
##collectContentLineText ##collectContentLineText
Called from: src/static/js/contentcollector.js Called from: src/static/js/contentcollector.js
Things in context: Things in context:
@ -299,7 +299,7 @@ Things in context:
This hook allows you to validate/manipulate the text before it's sent to the server side. This hook allows you to validate/manipulate the text before it's sent to the server side.
The return value should be the validated/manipulated text. The return value should be the validated/manipulated text.
##collectContentLineBreak ##collectContentLineBreak
Called from: src/static/js/contentcollector.js Called from: src/static/js/contentcollector.js
Things in context: Things in context:
@ -311,7 +311,7 @@ Things in context:
This hook is provided to allow whether the br tag should induce a new magic domline or not. This hook is provided to allow whether the br tag should induce a new magic domline or not.
The return value should be either true(break the line) or false. The return value should be either true(break the line) or false.
##disableAuthorColorsForThisLine ##disableAuthorColorsForThisLine
Called from: src/static/js/linestylefilter.js Called from: src/static/js/linestylefilter.js
Things in context: Things in context:

View File

@ -110,6 +110,7 @@ Called from: src/node/db/Pad.js
Things in context: Things in context:
1. pad - the pad instance 1. pad - the pad instance
2. author - the id of the author who created the pad
This hook gets called when a new pad was created. This hook gets called when a new pad was created.
@ -128,6 +129,7 @@ Called from: src/node/db/Pad.js
Things in context: Things in context:
1. pad - the pad instance 1. pad - the pad instance
2. author - the id of the author who updated the pad
This hook gets called when an existing pad was updated. This hook gets called when an existing pad was updated.
@ -214,6 +216,32 @@ function handleMessage ( hook, context, callback ) {
}; };
``` ```
## handleMessageSecurity
Called from: src/node/handler/PadMessageHandler.js
Things in context:
1. message - the message being handled
2. client - the client object from socket.io
This hook will be called once a message arrives. If a plugin calls `callback(true)` the message will be allowed to be processed. This is especially useful if you want read only pad visitors to update pad contents for whatever reason.
**WARNING**: handleMessageSecurity will be called, even if the client is not authorized to send this message. It's up to the plugin to check permissions.
Example:
```
function handleMessageSecurity ( hook, context, callback ) {
if ( context.message.boomerang == 'hipster' ) {
// If the message boomer is hipster, allow the request
callback(true);
}else{
callback();
}
};
```
## clientVars ## clientVars
Called from: src/node/handler/PadMessageHandler.js Called from: src/node/handler/PadMessageHandler.js
@ -254,7 +282,7 @@ var Changeset = require("ep_etherpad-lite/static/js/Changeset");
exports.getLineHTMLForExport = function (hook, context) { exports.getLineHTMLForExport = function (hook, context) {
var header = _analyzeLine(context.attribLine, context.apool); var header = _analyzeLine(context.attribLine, context.apool);
if (header) { if (header) {
return "<" + header + ">" + context.lineContents + "</" + header + ">"; return "<" + header + ">" + context.lineContent + "</" + header + ">";
} }
} }

View File

@ -10,12 +10,12 @@
// favicon default name // favicon default name
// alternatively, set up a fully specified Url to your own favicon // alternatively, set up a fully specified Url to your own favicon
"favicon": "favicon.ico", "favicon": "favicon.ico",
//IP and port which etherpad should bind at //IP and port which etherpad should bind at
"ip": "0.0.0.0", "ip": "0.0.0.0",
"port" : 9001, "port" : 9001,
/* /*
// Node native SSL support // Node native SSL support
// this is disabled by default // this is disabled by default
// //
@ -24,7 +24,8 @@
"ssl" : { "ssl" : {
"key" : "/path-to-your/epl-server.key", "key" : "/path-to-your/epl-server.key",
"cert" : "/path-to-your/epl-server.crt" "cert" : "/path-to-your/epl-server.crt",
"ca": ["/path-to-your/epl-intermediate-cert1.crt", "/path-to-your/epl-intermediate-cert2.crt"]
}, },
*/ */
@ -36,17 +37,17 @@
"dbSettings" : { "dbSettings" : {
"filename" : "var/dirty.db" "filename" : "var/dirty.db"
}, },
/* An Example of MySQL Configuration /* An Example of MySQL Configuration
"dbType" : "mysql", "dbType" : "mysql",
"dbSettings" : { "dbSettings" : {
"user" : "root", "user" : "root",
"host" : "localhost", "host" : "localhost",
"password": "", "password": "",
"database": "store" "database": "store"
}, },
*/ */
//the default text of a pad //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", "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",
@ -64,7 +65,7 @@
"chatAndUsers": false, "chatAndUsers": false,
"lang": "en-gb" "lang": "en-gb"
}, },
/* Shoud we suppress errors from being visible in the default Pad Text? */ /* Shoud we suppress errors from being visible in the default Pad Text? */
"suppressErrorsInPadText" : false, "suppressErrorsInPadText" : false,
@ -76,35 +77,39 @@
/* Users, who have a valid session, automatically get granted access to password protected pads */ /* Users, who have a valid session, automatically get granted access to password protected pads */
"sessionNoPassword" : false, "sessionNoPassword" : false,
/* if true, all css & js will be minified before sending to the client. This will improve the loading performance massivly, /* 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 */ but makes it impossible to debug the javascript/css */
"minify" : true, "minify" : true,
/* How long may clients use served javascript code (in seconds)? Without versioning this /* How long may clients use served javascript code (in seconds)? Without versioning this
may cause problems during deployment. Set to 0 to disable caching */ may cause problems during deployment. Set to 0 to disable caching */
"maxAge" : 21600, // 60 * 60 * 6 = 6 hours "maxAge" : 21600, // 60 * 60 * 6 = 6 hours
/* This is the path to the Abiword executable. Setting it to null, disables abiword. /* 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 is needed to advanced import/export features of pads*/
"abiword" : null, "abiword" : null,
/* This is the path to the Tidy executable. Setting it to null, disables Tidy.
Tidy is used to improve the quality of exported pads*/
"tidyHtml" : null,
/* Allow import of file types other than the supported types: txt, doc, docx, rtf, odt, html & htm */ /* Allow import of file types other than the supported types: txt, doc, docx, rtf, odt, html & htm */
"allowUnknownFileEnds" : true, "allowUnknownFileEnds" : true,
/* This setting is used if you require authentication of all users. /* This setting is used if you require authentication of all users.
Note: /admin always requires authentication. */ Note: /admin always requires authentication. */
"requireAuthentication" : false, "requireAuthentication" : false,
/* Require authorization by a module, or a user with is_admin set, see below. */ /* 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*/ /*when you use NginX or another proxy/ load-balancer set this to true*/
"trustProxy" : false, "trustProxy" : false,
/* Privacy: disable IP logging */ /* Privacy: disable IP logging */
"disableIPlogging" : false, "disableIPlogging" : false,
/* Users for basic authentication. is_admin = true gives access to /admin. /* Users for basic authentication. is_admin = true gives access to /admin.
If you do not uncomment this, /admin will not be available! */ If you do not uncomment this, /admin will not be available! */
/* /*
@ -125,7 +130,7 @@
// Allow Load Testing tools to hit the Etherpad Instance. Warning this will disable security on the instance. // Allow Load Testing tools to hit the Etherpad Instance. Warning this will disable security on the instance.
"loadTest": false, "loadTest": false,
/* The toolbar buttons configuration. /* The toolbar buttons configuration.
"toolbar": { "toolbar": {
"left": [ "left": [
@ -147,7 +152,7 @@
/* The log level we are using, can be: DEBUG, INFO, WARN, ERROR */ /* The log level we are using, can be: DEBUG, INFO, WARN, ERROR */
"loglevel": "INFO", "loglevel": "INFO",
//Logging configuration. See log4js documentation for further information //Logging configuration. See log4js documentation for further information
// https://github.com/nomiddlename/log4js-node // https://github.com/nomiddlename/log4js-node
// You can add as many appenders as you want here: // You can add as many appenders as you want here:

View File

@ -5,7 +5,8 @@
"Tux-tn", "Tux-tn",
"Alami", "Alami",
"Meno25", "Meno25",
"Test Create account" "Test Create account",
"محمد أحمد عبد الفتاح"
] ]
}, },
"index.newPad": "باد جديد", "index.newPad": "باد جديد",
@ -37,6 +38,7 @@
"pad.settings.padSettings": "إعدادات الباد", "pad.settings.padSettings": "إعدادات الباد",
"pad.settings.myView": "رؤيتي", "pad.settings.myView": "رؤيتي",
"pad.settings.stickychat": "الدردشة دائما على الشاشة", "pad.settings.stickychat": "الدردشة دائما على الشاشة",
"pad.settings.chatandusers": "أظهر الدردشة والمستخدمين",
"pad.settings.colorcheck": "ألوان التأليف", "pad.settings.colorcheck": "ألوان التأليف",
"pad.settings.linenocheck": "أرقام الأسطر", "pad.settings.linenocheck": "أرقام الأسطر",
"pad.settings.rtlcheck": "قراءة المحتويات من اليمين إلى اليسار؟", "pad.settings.rtlcheck": "قراءة المحتويات من اليمين إلى اليسار؟",
@ -110,6 +112,7 @@
"timeslider.month.december": "ديسمبر", "timeslider.month.december": "ديسمبر",
"timeslider.unnamedauthors": "بدون اسم {{num}} {[plural(num) واحد: كاتب، آخر: مؤلف]}", "timeslider.unnamedauthors": "بدون اسم {{num}} {[plural(num) واحد: كاتب، آخر: مؤلف]}",
"pad.savedrevs.marked": "هذا التنقيح محدد الآن كمراجعة محفوظة", "pad.savedrevs.marked": "هذا التنقيح محدد الآن كمراجعة محفوظة",
"pad.savedrevs.timeslider": "يمكنك عرض المراجعات المحفوظة بزيارة متصفح التاريخ",
"pad.userlist.entername": "أدخل اسمك", "pad.userlist.entername": "أدخل اسمك",
"pad.userlist.unnamed": "غير مسمى", "pad.userlist.unnamed": "غير مسمى",
"pad.userlist.guest": "ضيف", "pad.userlist.guest": "ضيف",

View File

@ -9,14 +9,14 @@
"pad.toolbar.bold.title": "Negrina (Ctrl-B)", "pad.toolbar.bold.title": "Negrina (Ctrl-B)",
"pad.toolbar.italic.title": "Cursiva (Ctrl-I)", "pad.toolbar.italic.title": "Cursiva (Ctrl-I)",
"pad.toolbar.underline.title": "Sorrayáu (Ctrl-U)", "pad.toolbar.underline.title": "Sorrayáu (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Tacháu", "pad.toolbar.strikethrough.title": "Tacháu (Ctrl+5)",
"pad.toolbar.ol.title": "Llista ordenada", "pad.toolbar.ol.title": "Llista ordenada (Ctrl+Mayús+N)",
"pad.toolbar.ul.title": "Llista ensin ordenar", "pad.toolbar.ul.title": "Llista desordenada (Ctrl+Mayús+L)",
"pad.toolbar.indent.title": "Sangría (TAB)", "pad.toolbar.indent.title": "Sangría (TAB)",
"pad.toolbar.unindent.title": "Sangría inversa (Mayúsc+TAB)", "pad.toolbar.unindent.title": "Sangría inversa (Mayúsc+TAB)",
"pad.toolbar.undo.title": "Desfacer (Ctrl-Z)", "pad.toolbar.undo.title": "Desfacer (Ctrl-Z)",
"pad.toolbar.redo.title": "Refacer (Ctrl-Y)", "pad.toolbar.redo.title": "Refacer (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "Llimpiar los colores d'autoría", "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.import_export.title": "Importar/Esportar ente distintos formatos de ficheru",
"pad.toolbar.timeslider.title": "Eslizador de tiempu", "pad.toolbar.timeslider.title": "Eslizador de tiempu",
"pad.toolbar.savedRevision.title": "Guardar revisión", "pad.toolbar.savedRevision.title": "Guardar revisión",
@ -26,12 +26,14 @@
"pad.colorpicker.save": "Guardar", "pad.colorpicker.save": "Guardar",
"pad.colorpicker.cancel": "Encaboxar", "pad.colorpicker.cancel": "Encaboxar",
"pad.loading": "Cargando...", "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.passwordRequired": "Necesites una contraseña pa entrar a esti bloc",
"pad.permissionDenied": "Nun tienes permisu pa entrar a esti bloc", "pad.permissionDenied": "Nun tienes permisu pa entrar a esti bloc",
"pad.wrongPassword": "La contraseña era incorreuta", "pad.wrongPassword": "La contraseña era incorreuta",
"pad.settings.padSettings": "Configuración del bloc", "pad.settings.padSettings": "Configuración del bloc",
"pad.settings.myView": "la mio vista", "pad.settings.myView": "la mio vista",
"pad.settings.stickychat": "Alderique en pantalla siempres", "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.colorcheck": "Colores d'autoría",
"pad.settings.linenocheck": "Númberos de llinia", "pad.settings.linenocheck": "Númberos de llinia",
"pad.settings.rtlcheck": "¿Lleer el conteníu de drecha a izquierda?", "pad.settings.rtlcheck": "¿Lleer el conteníu de drecha a izquierda?",
@ -44,6 +46,7 @@
"pad.importExport.import": "Xubir cualquier ficheru o documentu de testu", "pad.importExport.import": "Xubir cualquier ficheru o documentu de testu",
"pad.importExport.importSuccessful": "¡Correuto!", "pad.importExport.importSuccessful": "¡Correuto!",
"pad.importExport.export": "Esportar el bloc actual como:", "pad.importExport.export": "Esportar el bloc actual como:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Testu simple", "pad.importExport.exportplain": "Testu simple",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
@ -89,6 +92,9 @@
"timeslider.exportCurrent": "Esportar la versión actual como:", "timeslider.exportCurrent": "Esportar la versión actual como:",
"timeslider.version": "Versión {{version}}", "timeslider.version": "Versión {{version}}",
"timeslider.saved": "Guardáu el {{day}} de {{month}} de {{year}}", "timeslider.saved": "Guardáu el {{day}} de {{month}} de {{year}}",
"timeslider.playPause": "Reproducir/posar el conteníu del bloc",
"timeslider.backRevision": "Dir a la revisión anterior d'esti bloc",
"timeslider.forwardRevision": "Dir a la revisión siguiente d'esti bloc",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "de xineru", "timeslider.month.january": "de xineru",
"timeslider.month.february": "de febreru", "timeslider.month.february": "de febreru",
@ -104,6 +110,7 @@
"timeslider.month.december": "d'avientu", "timeslider.month.december": "d'avientu",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anónimu, other: autores anónimos]}", "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.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.entername": "Escribi'l to nome",
"pad.userlist.unnamed": "ensin nome", "pad.userlist.unnamed": "ensin nome",
"pad.userlist.guest": "Invitáu", "pad.userlist.guest": "Invitáu",
@ -114,6 +121,7 @@
"pad.impexp.importing": "Importando...", "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.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.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.uploadFailed": "Falló la carga del ficheru, intentalo otra vuelta",
"pad.impexp.importfailed": "Falló la importación", "pad.impexp.importfailed": "Falló la importación",
"pad.impexp.copypaste": "Por favor, copia y apega", "pad.impexp.copypaste": "Por favor, copia y apega",

View File

@ -94,6 +94,9 @@
"timeslider.exportCurrent": "Экспартаваць актуальную вэрсію як:", "timeslider.exportCurrent": "Экспартаваць актуальную вэрсію як:",
"timeslider.version": "Вэрсія {{version}}", "timeslider.version": "Вэрсія {{version}}",
"timeslider.saved": "Захавана {{day}}.{{month}}.{{year}}", "timeslider.saved": "Захавана {{day}}.{{month}}.{{year}}",
"timeslider.playPause": "Прайграць / спыніць зьмест дакумэнту",
"timeslider.backRevision": "Вярнуць рэдагаваньне гэтага дакумэнту",
"timeslider.forwardRevision": "Перайсьці да наступнага рэдагаваньня гэтага дакумэнту",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "студзень", "timeslider.month.january": "студзень",
"timeslider.month.february": "люты", "timeslider.month.february": "люты",

View File

@ -41,10 +41,10 @@
"pad.settings.fontType.monospaced": "Monospace", "pad.settings.fontType.monospaced": "Monospace",
"pad.settings.globalView": "সর্বব্যাপী দৃশ্য", "pad.settings.globalView": "সর্বব্যাপী দৃশ্য",
"pad.settings.language": "ভাষা:", "pad.settings.language": "ভাষা:",
"pad.importExport.import_export": "ইম্পোরট/এক্সপোর্ট", "pad.importExport.import_export": "আমদানি/রপ্তানি",
"pad.importExport.import": "কোন টেক্সট ফাইল বা ডকুমেন্ট আপলোড করুন", "pad.importExport.import": "কোন টেক্সট ফাইল বা ডকুমেন্ট আপলোড করুন",
"pad.importExport.importSuccessful": "সফল!", "pad.importExport.importSuccessful": "সফল!",
"pad.importExport.export": "এই প্যাডটি এক্সপোর্ট করুন", "pad.importExport.export": "এই প্যাডটি রপ্তানি করুন:",
"pad.importExport.exporthtml": "এইচটিএমএল", "pad.importExport.exporthtml": "এইচটিএমএল",
"pad.importExport.exportplain": "সাধারণ লেখা", "pad.importExport.exportplain": "সাধারণ লেখা",
"pad.importExport.exportword": "মাইক্রোসফট ওয়ার্ড", "pad.importExport.exportword": "মাইক্রোসফট ওয়ার্ড",
@ -70,7 +70,7 @@
"timeslider.toolbar.authors": "লেখকগণ:", "timeslider.toolbar.authors": "লেখকগণ:",
"timeslider.toolbar.authorsList": "কোনো লেখক নেই", "timeslider.toolbar.authorsList": "কোনো লেখক নেই",
"timeslider.toolbar.exportlink.title": "রপ্তানি", "timeslider.toolbar.exportlink.title": "রপ্তানি",
"timeslider.exportCurrent": "বর্তমান সংস্করণটি এক্সপোর্ট করুন:", "timeslider.exportCurrent": "বর্তমান সংস্করণটি রপ্তানি করুন:",
"timeslider.version": "সংস্করণ {{version}}", "timeslider.version": "সংস্করণ {{version}}",
"timeslider.saved": "সংরক্ষিত হয় {{month}} {{day}}, {{year}}", "timeslider.saved": "সংরক্ষিত হয় {{month}} {{day}}, {{year}}",
"timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",

View File

@ -22,7 +22,7 @@
"pad.toolbar.clearAuthorship.title": "Diverkañ al livioù oc'h anaout an aozerien (Ktrl+Pennlizherenn+C)", "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.import_export.title": "Enporzhiañ/Ezporzhiañ eus/war-zu ur furmad restr disheñvel",
"pad.toolbar.timeslider.title": "Istor dinamek", "pad.toolbar.timeslider.title": "Istor dinamek",
"pad.toolbar.savedRevision.title": "Doareoù enrollet", "pad.toolbar.savedRevision.title": "Enrollañ an adweladenn",
"pad.toolbar.settings.title": "Arventennoù", "pad.toolbar.settings.title": "Arventennoù",
"pad.toolbar.embed.title": "Rannañ hag enframmañ ar pad-mañ", "pad.toolbar.embed.title": "Rannañ hag enframmañ ar pad-mañ",
"pad.toolbar.showusers.title": "Diskwelet implijerien ar Pad", "pad.toolbar.showusers.title": "Diskwelet implijerien ar Pad",
@ -36,6 +36,7 @@
"pad.settings.padSettings": "Arventennoù Pad", "pad.settings.padSettings": "Arventennoù Pad",
"pad.settings.myView": "Ma diskwel", "pad.settings.myView": "Ma diskwel",
"pad.settings.stickychat": "Diskwel ar flap bepred", "pad.settings.stickychat": "Diskwel ar flap bepred",
"pad.settings.chatandusers": "Diskouez ar gaoz hag an implijerien",
"pad.settings.colorcheck": "Livioù anaout", "pad.settings.colorcheck": "Livioù anaout",
"pad.settings.linenocheck": "Niverennoù linennoù", "pad.settings.linenocheck": "Niverennoù linennoù",
"pad.settings.rtlcheck": "Lenn an danvez a-zehou da gleiz ?", "pad.settings.rtlcheck": "Lenn an danvez a-zehou da gleiz ?",
@ -94,6 +95,9 @@
"timeslider.exportCurrent": "Ezporzhiañ an doare bremañ evel :", "timeslider.exportCurrent": "Ezporzhiañ an doare bremañ evel :",
"timeslider.version": "Stumm {{version}}", "timeslider.version": "Stumm {{version}}",
"timeslider.saved": "Enrollañ {{day}} {{month}} {{year}}", "timeslider.saved": "Enrollañ {{day}} {{month}} {{year}}",
"timeslider.playPause": "Lenn / Ehan endalc'hoù ar pad",
"timeslider.backRevision": "Kilit eus un adweladenn er pad-mañ",
"timeslider.forwardRevision": "Araogiñ un adweladenn er pad-mañ",
"timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Genver", "timeslider.month.january": "Genver",
"timeslider.month.february": "C'hwevrer", "timeslider.month.february": "C'hwevrer",
@ -109,6 +113,7 @@
"timeslider.month.december": "Kerzu", "timeslider.month.december": "Kerzu",
"timeslider.unnamedauthors": "{{num}} dianav {[plural(num) one: aozer, other: aozerien ]}", "timeslider.unnamedauthors": "{{num}} dianav {[plural(num) one: aozer, other: aozerien ]}",
"pad.savedrevs.marked": "Merket eo an adweladenn-mañ evel adweladenn gwiriet", "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.entername": "Ebarzhit hoc'h anv",
"pad.userlist.unnamed": "dizanv", "pad.userlist.unnamed": "dizanv",
"pad.userlist.guest": "Den pedet", "pad.userlist.guest": "Den pedet",

View File

@ -5,7 +5,8 @@
"Pginer", "Pginer",
"Pitort", "Pitort",
"Toniher", "Toniher",
"Macofe" "Macofe",
"Joan manel"
] ]
}, },
"index.newPad": "Nou pad", "index.newPad": "Nou pad",
@ -37,6 +38,7 @@
"pad.settings.padSettings": "Paràmetres del pad", "pad.settings.padSettings": "Paràmetres del pad",
"pad.settings.myView": "La meva vista", "pad.settings.myView": "La meva vista",
"pad.settings.stickychat": "Xateja sempre a la pantalla", "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.colorcheck": "Colors d'autoria",
"pad.settings.linenocheck": "Números de línia", "pad.settings.linenocheck": "Números de línia",
"pad.settings.rtlcheck": "Llegir el contingut de dreta a esquerra?", "pad.settings.rtlcheck": "Llegir el contingut de dreta a esquerra?",
@ -110,6 +112,7 @@
"timeslider.month.december": "Desembre", "timeslider.month.december": "Desembre",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autors ]} sense nom", "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.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.entername": "Introduïu el vostre nom",
"pad.userlist.unnamed": "sense nom", "pad.userlist.unnamed": "sense nom",
"pad.userlist.guest": "Convidat", "pad.userlist.guest": "Convidat",

View File

@ -5,7 +5,8 @@
"Jezevec", "Jezevec",
"Juandev", "Juandev",
"Leanes", "Leanes",
"Quinn" "Quinn",
"Aktron"
] ]
}, },
"index.newPad": "Založ nový Pad", "index.newPad": "Založ nový Pad",
@ -96,6 +97,9 @@
"timeslider.exportCurrent": "Exportovat nynější verzi jako:", "timeslider.exportCurrent": "Exportovat nynější verzi jako:",
"timeslider.version": "Verze {{version}}", "timeslider.version": "Verze {{version}}",
"timeslider.saved": "Uloženo {{day}} {{month}} {{year}}", "timeslider.saved": "Uloženo {{day}} {{month}} {{year}}",
"timeslider.playPause": "Pustit / pozastavit obsah padu",
"timeslider.backRevision": "Jít v tomto padu o revizi zpět",
"timeslider.forwardRevision": "Jít v tomto padu o revizi vpřed",
"timeslider.dateformat": "{{day}} {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}} {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "leden", "timeslider.month.january": "leden",
"timeslider.month.february": "únor", "timeslider.month.february": "únor",

View File

@ -4,7 +4,8 @@
"Metalhead64", "Metalhead64",
"Mklehr", "Mklehr",
"Nipsky", "Nipsky",
"Wikinaut" "Wikinaut",
"Thargon"
] ]
}, },
"index.newPad": "Neues Pad", "index.newPad": "Neues Pad",
@ -77,7 +78,7 @@
"pad.modals.corruptPad.cause": "Dies könnte an einer falschen Serverkonfiguration oder eines anderen unerwarteten Verhaltens liegen. Bitte kontaktiere den Diensteadministrator.", "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": "Gelöscht.",
"pad.modals.deleted.explanation": "Dieses Pad wurde entfernt.", "pad.modals.deleted.explanation": "Dieses Pad wurde entfernt.",
"pad.modals.disconnected": "Verbindung unterbrochen.", "pad.modals.disconnected": "Deine Verbindung wurde getrennt.",
"pad.modals.disconnected.explanation": "Die Verbindung zum Pad-Server wurde 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.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": "Dieses Pad teilen",
@ -94,7 +95,10 @@
"timeslider.toolbar.exportlink.title": "Diese Version exportieren", "timeslider.toolbar.exportlink.title": "Diese Version exportieren",
"timeslider.exportCurrent": "Exportiere diese Version als:", "timeslider.exportCurrent": "Exportiere diese Version als:",
"timeslider.version": "Version {{version}}", "timeslider.version": "Version {{version}}",
"timeslider.saved": "Gespeichert am {{day}}.{{month}}.{{year}}", "timeslider.saved": "gespeichert am {{day}}. {{month}} {{year}}",
"timeslider.playPause": "Padinhalte abspielen/pausieren",
"timeslider.backRevision": "Eine Version in diesem Pad zurück gehen",
"timeslider.forwardRevision": "Eine Version in diesem Pad vorwärts gehen",
"timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Januar", "timeslider.month.january": "Januar",
"timeslider.month.february": "Februar", "timeslider.month.february": "Februar",

View File

@ -38,6 +38,7 @@
"pad.settings.language": "Zıwan:", "pad.settings.language": "Zıwan:",
"pad.importExport.import_export": "Zeredayış/Teberdayış", "pad.importExport.import_export": "Zeredayış/Teberdayış",
"pad.importExport.importSuccessful": "Mıwafaq biye", "pad.importExport.importSuccessful": "Mıwafaq biye",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Metno pan", "pad.importExport.exportplain": "Metno pan",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",

54
src/locales/dty.json Normal file
View File

@ -0,0 +1,54 @@
{
"@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": "बीचको धड्को (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.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.chatandusers": "वार्ता और प्रयोगकर्ताहरू देखाउन्या",
"pad.settings.colorcheck": "लेखकीय रङ्ग",
"pad.settings.linenocheck": "हरफ संख्या",
"pad.settings.rtlcheck": "के सामग्री दाहिना बठे देब्रे पढ्न्या हो ?",
"pad.settings.fontType": "फन्ट प्रकार:",
"pad.settings.globalView": "विश्वव्यापी दृष्य",
"pad.settings.language": "भाषा: $1",
"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": "ओडिएफ(खुल्ला कागजात ढाँचा)",
"pad.modals.connected": "जोडीयाको",
"pad.modals.reconnecting": "तमरो प्याडमि आजि: जडान हुन्नाछ"
}

View File

@ -93,6 +93,9 @@
"timeslider.exportCurrent": "Export current version as:", "timeslider.exportCurrent": "Export current version as:",
"timeslider.version": "Version {{version}}", "timeslider.version": "Version {{version}}",
"timeslider.saved": "Saved {{month}} {{day}}, {{year}}", "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": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "January", "timeslider.month.january": "January",
"timeslider.month.february": "February", "timeslider.month.february": "February",

128
src/locales/eo.json Normal file
View File

@ -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 <a 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\">instalu la programon, Abiword</a>.",
"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."
}

View File

@ -36,7 +36,7 @@
"pad.colorpicker.save": "Guardar", "pad.colorpicker.save": "Guardar",
"pad.colorpicker.cancel": "Cancelar", "pad.colorpicker.cancel": "Cancelar",
"pad.loading": "Cargando...", "pad.loading": "Cargando...",
"pad.noCookie": "La cookie no se pudo encontrar. ¡Por favor, habilita las cookies en tu navegador!", "pad.noCookie": "La cookie no se pudo encontrar. ¡Habilita las cookies en tu navegador!",
"pad.passwordRequired": "Necesitas una contraseña para acceder a este pad", "pad.passwordRequired": "Necesitas una contraseña para acceder a este pad",
"pad.permissionDenied": "No tienes permiso para acceder a este pad", "pad.permissionDenied": "No tienes permiso para acceder a este pad",
"pad.wrongPassword": "La contraseña era incorrecta", "pad.wrongPassword": "La contraseña era incorrecta",
@ -102,6 +102,9 @@
"timeslider.exportCurrent": "Exportar la versión actual como:", "timeslider.exportCurrent": "Exportar la versión actual como:",
"timeslider.version": "Versión {{version}}", "timeslider.version": "Versión {{version}}",
"timeslider.saved": "Guardado el {{day}} de {{month}} de {{year}}", "timeslider.saved": "Guardado el {{day}} de {{month}} de {{year}}",
"timeslider.playPause": "Reproducir/pausar los contenidos del pad",
"timeslider.backRevision": "Ir a la revisión anterior en este pad",
"timeslider.forwardRevision": "Ir a la revisión posterior en este pad",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "enero", "timeslider.month.january": "enero",
"timeslider.month.february": "febrero", "timeslider.month.february": "febrero",
@ -115,7 +118,7 @@
"timeslider.month.october": "octubre", "timeslider.month.october": "octubre",
"timeslider.month.november": "noviembre", "timeslider.month.november": "noviembre",
"timeslider.month.december": "diciembre", "timeslider.month.december": "diciembre",
"timeslider.unnamedauthors": "{{num}} {[ plural(num) one: autor desconocido, other: autores desconocidos]}", "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor desconocido, other: autores desconocidos]}",
"pad.savedrevs.marked": "Revisión guardada", "pad.savedrevs.marked": "Revisión guardada",
"pad.savedrevs.timeslider": "Puedes ver revisiones guardadas visitando la línea de tiempo", "pad.savedrevs.timeslider": "Puedes ver revisiones guardadas visitando la línea de tiempo",
"pad.userlist.entername": "Escribe tu nombre", "pad.userlist.entername": "Escribe tu nombre",
@ -128,7 +131,7 @@
"pad.impexp.importing": "Importando...", "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.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.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.padHasData": "No hemos podido importar este archivo porque este pad ya ha tenido cambios. Importa a un nuevo pad.",
"pad.impexp.uploadFailed": "El envío falló. Intentalo de nuevo.", "pad.impexp.uploadFailed": "El envío falló. Intentalo de nuevo.",
"pad.impexp.importfailed": "Fallo al importar", "pad.impexp.importfailed": "Fallo al importar",
"pad.impexp.copypaste": "Intenta copiar y pegar", "pad.impexp.copypaste": "Intenta copiar y pegar",

View File

@ -2,7 +2,9 @@
"@metadata": { "@metadata": {
"authors": [ "authors": [
"Theklan", "Theklan",
"Subi" "Subi",
"Xabier Armendaritz",
"An13sa"
] ]
}, },
"index.newPad": "Pad berria", "index.newPad": "Pad berria",
@ -10,14 +12,14 @@
"pad.toolbar.bold.title": "Lodia (Ctrl-B)", "pad.toolbar.bold.title": "Lodia (Ctrl-B)",
"pad.toolbar.italic.title": "Etzana (Ctrl-I)", "pad.toolbar.italic.title": "Etzana (Ctrl-I)",
"pad.toolbar.underline.title": "Azpimarratua (Ctrl-U)", "pad.toolbar.underline.title": "Azpimarratua (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Ezabatua", "pad.toolbar.strikethrough.title": "Ezabatua (Ctrl+5)",
"pad.toolbar.ol.title": "Zerrenda ordenatua", "pad.toolbar.ol.title": "Zerrenda ordenatua (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Zerrenda ez-ordenatua", "pad.toolbar.ul.title": "Zerrenda ez-ordenatua (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "Koska", "pad.toolbar.indent.title": "Koska (TAB)",
"pad.toolbar.unindent.title": "Koska kendu", "pad.toolbar.unindent.title": "Koska kendu (Shift+TAB)",
"pad.toolbar.undo.title": "Desegin (Ctrl-Z)", "pad.toolbar.undo.title": "Desegin (Ctrl-Z)",
"pad.toolbar.redo.title": "Berregin (Ctrl-Y)", "pad.toolbar.redo.title": "Berregin (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "Ezabatu Egiletza Koloreak", "pad.toolbar.clearAuthorship.title": "Ezabatu Egiletza Koloreak (Ctrl+Shift+C)",
"pad.toolbar.import_export.title": "Inportatu/Esportatu fitxategi formatu ezberdinetara/ezberdinetatik", "pad.toolbar.import_export.title": "Inportatu/Esportatu fitxategi formatu ezberdinetara/ezberdinetatik",
"pad.toolbar.timeslider.title": "Denbora lerroa", "pad.toolbar.timeslider.title": "Denbora lerroa",
"pad.toolbar.savedRevision.title": "Gorde berrikuspena", "pad.toolbar.savedRevision.title": "Gorde berrikuspena",
@ -87,7 +89,7 @@
"timeslider.exportCurrent": "Gorde bertsio hau honela:", "timeslider.exportCurrent": "Gorde bertsio hau honela:",
"timeslider.version": "Bertsioa {{version}}", "timeslider.version": "Bertsioa {{version}}",
"timeslider.saved": "{{year}}ko {{month}}ren {{day}}an gordeta", "timeslider.saved": "{{year}}ko {{month}}ren {{day}}an gordeta",
"timeslider.dateformat": "{{year}}/{{month}}/{{day}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Urtarrila", "timeslider.month.january": "Urtarrila",
"timeslider.month.february": "Otsaila", "timeslider.month.february": "Otsaila",
"timeslider.month.march": "Martxoa", "timeslider.month.march": "Martxoa",

View File

@ -6,7 +6,8 @@
"Ebraminio", "Ebraminio",
"Reza1615", "Reza1615",
"ZxxZxxZ", "ZxxZxxZ",
"الناز" "الناز",
"Omid.koli"
] ]
}, },
"index.newPad": "دفترچه یادداشت تازه", "index.newPad": "دفترچه یادداشت تازه",
@ -38,6 +39,7 @@
"pad.settings.padSettings": "تنظیمات دفترچه یادداشت", "pad.settings.padSettings": "تنظیمات دفترچه یادداشت",
"pad.settings.myView": "نمای من", "pad.settings.myView": "نمای من",
"pad.settings.stickychat": "گفتگو همیشه روی صفحه نمایش باشد", "pad.settings.stickychat": "گفتگو همیشه روی صفحه نمایش باشد",
"pad.settings.chatandusers": "نمایش چت و کاربران",
"pad.settings.colorcheck": "رنگ‌های نویسندگی", "pad.settings.colorcheck": "رنگ‌های نویسندگی",
"pad.settings.linenocheck": "شماره‌ی خطوط", "pad.settings.linenocheck": "شماره‌ی خطوط",
"pad.settings.rtlcheck": "خواندن محتوا از راست به چپ؟", "pad.settings.rtlcheck": "خواندن محتوا از راست به چپ؟",
@ -72,7 +74,7 @@
"pad.modals.initsocketfail.cause": "شاید این به خاطر مشکلی در مرورگر یا اتصال اینترنتی شما باشد.", "pad.modals.initsocketfail.cause": "شاید این به خاطر مشکلی در مرورگر یا اتصال اینترنتی شما باشد.",
"pad.modals.slowcommit.explanation": "سرور پاسخ نمی‌دهد.", "pad.modals.slowcommit.explanation": "سرور پاسخ نمی‌دهد.",
"pad.modals.slowcommit.cause": "این می‌تواند به خاطر مشکلاتی در اتصال به شبکه باشد.", "pad.modals.slowcommit.cause": "این می‌تواند به خاطر مشکلاتی در اتصال به شبکه باشد.",
"pad.modals.badChangeset.explanation": "ویرایشی که شما انجام داده‌اید توسط سرور همگام‌سازی نادرست طیقه‌بندی شدهاست.", "pad.modals.badChangeset.explanation": "ویرایشی که شما انجام داده‌اید توسط سرور همگام‌سازی نادرست طیقه‌بندی شده است.",
"pad.modals.badChangeset.cause": "این می‌تواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر می‌کنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.", "pad.modals.badChangeset.cause": "این می‌تواند به دلیل پیکربندی اشتباه یا سایر رفتارهای غیرمنتظره باشد. اگر فکر می‌کنید این یک خطا است لطفاً با مدیر خدمت تماس بگیرید. برای ادامهٔ ویرایش سعی کنید که دوباره متصل شوید.",
"pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.", "pad.modals.corruptPad.explanation": "پدی که شما سعی دارید دسترسی پیدا کنید خراب است.",
"pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.", "pad.modals.corruptPad.cause": "این احتمالاً به دلیل تنظیمات اشتباه کارساز یا سایر رفتارهای غیرمنتظره است. لطفاً با مدیر خدمت تماس حاصل کنید.",
@ -96,21 +98,25 @@
"timeslider.exportCurrent": "برون‌ریزی نگارش کنونی به عنوان:", "timeslider.exportCurrent": "برون‌ریزی نگارش کنونی به عنوان:",
"timeslider.version": "نگارش {{version}}", "timeslider.version": "نگارش {{version}}",
"timeslider.saved": "{{month}} {{day}}، {{year}} ذخیره شد", "timeslider.saved": "{{month}} {{day}}، {{year}} ذخیره شد",
"timeslider.playPause": "اجرای مجدد/متوقف کردن پخش",
"timeslider.backRevision": "رفتن به نسخهٔ پیشین در این دفترچه",
"timeslider.forwardRevision": "رفتن به نسخهٔ بعدی در این دفترچه",
"timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "ژانویه", "timeslider.month.january": "ژانویه",
"timeslider.month.february": "فبریه", "timeslider.month.february": وریه",
"timeslider.month.march": "مارچ", "timeslider.month.march": "مارس",
"timeslider.month.april": پریل", "timeslider.month.april": وریل",
"timeslider.month.may": ی", "timeslider.month.may": ه",
"timeslider.month.june": "ژوئن", "timeslider.month.june": "ژوئن",
"timeslider.month.july": "جولای", "timeslider.month.july": "ژوئیه",
"timeslider.month.august": "آگوست", "timeslider.month.august": "اوت",
"timeslider.month.september": "سپتامبر", "timeslider.month.september": "سپتامبر",
"timeslider.month.october": "اکتبر", "timeslider.month.october": "اکتبر",
"timeslider.month.november": "نوامبر", "timeslider.month.november": "نوامبر",
"timeslider.month.december": "دسامبر", "timeslider.month.december": "دسامبر",
"timeslider.unnamedauthors": "{{num}} نویسندهٔ بی‌نام", "timeslider.unnamedauthors": "{{num}} نویسندهٔ بی‌نام",
"pad.savedrevs.marked": "این بازنویسی هم اکنون به عنوان ذخیره شده علامت‌گذاری شد", "pad.savedrevs.marked": "این بازنویسی هم اکنون به عنوان ذخیره شده علامت‌گذاری شد",
"pad.savedrevs.timeslider": "شما می‌توانید نسخه‌های ذخیره شده را با دیدن نوار زمان ببنید",
"pad.userlist.entername": "نام خود را بنویسید", "pad.userlist.entername": "نام خود را بنویسید",
"pad.userlist.unnamed": "بدون نام", "pad.userlist.unnamed": "بدون نام",
"pad.userlist.guest": "مهمان", "pad.userlist.guest": "مهمان",

View File

@ -11,7 +11,9 @@
"Veikk0.ma", "Veikk0.ma",
"VezonThunder", "VezonThunder",
"Macofe", "Macofe",
"MrTapsa" "MrTapsa",
"Silvonen",
"Espeox"
] ]
}, },
"index.newPad": "Uusi muistio", "index.newPad": "Uusi muistio",
@ -43,6 +45,7 @@
"pad.settings.padSettings": "Muistion asetukset", "pad.settings.padSettings": "Muistion asetukset",
"pad.settings.myView": "Oma näkymä", "pad.settings.myView": "Oma näkymä",
"pad.settings.stickychat": "Keskustelu aina näkyvissä", "pad.settings.stickychat": "Keskustelu aina näkyvissä",
"pad.settings.chatandusers": "Näytä keskustelu ja käyttäjät",
"pad.settings.colorcheck": "Kirjoittajavärit", "pad.settings.colorcheck": "Kirjoittajavärit",
"pad.settings.linenocheck": "Rivinumerot", "pad.settings.linenocheck": "Rivinumerot",
"pad.settings.rtlcheck": "Luetaanko sisältö oikealta vasemmalle?", "pad.settings.rtlcheck": "Luetaanko sisältö oikealta vasemmalle?",
@ -55,6 +58,7 @@
"pad.importExport.import": "Lähetä mikä tahansa tekstitiedosto tai asiakirja", "pad.importExport.import": "Lähetä mikä tahansa tekstitiedosto tai asiakirja",
"pad.importExport.importSuccessful": "Onnistui!", "pad.importExport.importSuccessful": "Onnistui!",
"pad.importExport.export": "Vie muistio muodossa:", "pad.importExport.export": "Vie muistio muodossa:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Muotoilematon teksti", "pad.importExport.exportplain": "Muotoilematon teksti",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
@ -100,6 +104,9 @@
"timeslider.exportCurrent": "Vie nykyinen versio muodossa:", "timeslider.exportCurrent": "Vie nykyinen versio muodossa:",
"timeslider.version": "Versio {{version}}", "timeslider.version": "Versio {{version}}",
"timeslider.saved": "Tallennettu {{day}}. {{month}}ta {{year}}", "timeslider.saved": "Tallennettu {{day}}. {{month}}ta {{year}}",
"timeslider.playPause": "Toista / pysäytä muistion sisältö",
"timeslider.backRevision": "Palaa edelliseen muutokseen taaksepäin tässä muistiossa",
"timeslider.forwardRevision": "Siirry seuraavaan muutokseen tässä muistiossa",
"timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "tammikuu", "timeslider.month.january": "tammikuu",
"timeslider.month.february": "helmikuu", "timeslider.month.february": "helmikuu",
@ -115,6 +122,7 @@
"timeslider.month.december": "joulukuu", "timeslider.month.december": "joulukuu",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: nimetön tekijä, other: nimetöntä tekijää ]}", "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.savedrevs.marked": "Tämä versio on nyt merkitty tallennetuksi versioksi",
"pad.savedrevs.timeslider": "Voit tarkastella tallennettuja versioita avaamalla aikajanan",
"pad.userlist.entername": "Kirjoita nimesi", "pad.userlist.entername": "Kirjoita nimesi",
"pad.userlist.unnamed": "nimetön", "pad.userlist.unnamed": "nimetön",
"pad.userlist.guest": "Vieras", "pad.userlist.guest": "Vieras",
@ -125,6 +133,7 @@
"pad.impexp.importing": "Tuodaan...", "pad.impexp.importing": "Tuodaan...",
"pad.impexp.confirmimport": "Tiedoston tuonti korvaa kaiken muistiossa olevan tekstin. Haluatko varmasti jatkaa?", "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.convertFailed": "TIedoston tuonti epäonnistui. Käytä eri tiedostomuotoa tai kopioi ja liitä käsin.",
"pad.impexp.padHasData": "Tiedostoa ei voitu lisätä lehtiöön, koska lehtiötä on jo muokattu ole hyvä ja lisää tiedosto uuteen lehtiöön",
"pad.impexp.uploadFailed": "Lähetys epäonnistui. Yritä uudelleen.", "pad.impexp.uploadFailed": "Lähetys epäonnistui. Yritä uudelleen.",
"pad.impexp.importfailed": "Tuonti epäonnistui", "pad.impexp.importfailed": "Tuonti epäonnistui",
"pad.impexp.copypaste": "Kopioi ja liitä", "pad.impexp.copypaste": "Kopioi ja liitä",

View File

@ -18,7 +18,8 @@
"Tux-tn", "Tux-tn",
"Maxim21", "Maxim21",
"Boniface", "Boniface",
"Macofe" "Macofe",
"Framafan"
] ]
}, },
"index.newPad": "Nouveau pad", "index.newPad": "Nouveau pad",
@ -45,7 +46,7 @@
"pad.loading": "Chargement…", "pad.loading": "Chargement…",
"pad.noCookie": "Le cookie na pas pu être trouvé. Veuillez autoriser les cookies dans votre navigateur!", "pad.noCookie": "Le cookie na 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.passwordRequired": "Vous avez besoin d'un mot de passe pour accéder à ce pad",
"pad.permissionDenied": "Il ne vous est pas permis daccéder à ce pad", "pad.permissionDenied": "Vous n'avez pas la permission daccéder à ce pad",
"pad.wrongPassword": "Votre mot de passe est incorrect", "pad.wrongPassword": "Votre mot de passe est incorrect",
"pad.settings.padSettings": "Paramètres du pad", "pad.settings.padSettings": "Paramètres du pad",
"pad.settings.myView": "Ma vue", "pad.settings.myView": "Ma vue",
@ -69,12 +70,12 @@
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
"pad.importExport.exportpdf": "PDF", "pad.importExport.exportpdf": "PDF",
"pad.importExport.exportopen": "ODF (Open Document Format)", "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 <a 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\">installer abiword</a>.", "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 <a 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\">installer Abiword</a>.",
"pad.modals.connected": "Connecté.", "pad.modals.connected": "Connecté.",
"pad.modals.reconnecting": "Reconnexion vers votre pad...", "pad.modals.reconnecting": "Reconnexion vers votre pad...",
"pad.modals.forcereconnect": "Forcer la reconnexion", "pad.modals.forcereconnect": "Forcer la reconnexion",
"pad.modals.userdup": "Ouvert dans une autre fenêtre", "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.explanation": "Ce pad semble être ouvert dans plusieurs fenêtres de navigateur sur cet ordinateur.",
"pad.modals.userdup.advice": "Se reconnecter en utilisant cette fenêtre.", "pad.modals.userdup.advice": "Se reconnecter en utilisant cette fenêtre.",
"pad.modals.unauth": "Non autorisé", "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.unauth.explanation": "Vos permissions ont été changées lors de l'affichage de cette page. Essayez de vous reconnecter.",
@ -85,8 +86,8 @@
"pad.modals.initsocketfail.cause": "Ceci est probablement dû à un problème avec votre navigateur ou votre connexion internet.", "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.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.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.explanation": "Une modification que vous avez effectuée a été classée comme impossible 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 ladministrateur du service, si vous pensez que cest une erreur. Essayez de vous reconnecter pour continuer à modifier.", "pad.modals.badChangeset.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter ladministrateur du service si vous pensez que cest une erreur. Essayez de vous reconnecter pour continuer à modifier.",
"pad.modals.corruptPad.explanation": "Le pad auquel vous essayez daccéder est corrompu.", "pad.modals.corruptPad.explanation": "Le pad auquel vous essayez daccéder est corrompu.",
"pad.modals.corruptPad.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter ladministrateur du service.", "pad.modals.corruptPad.cause": "Cela peut être dû à une mauvaise configuration du serveur ou à un autre comportement inattendu. Veuillez contacter ladministrateur du service.",
"pad.modals.deleted": "Supprimé.", "pad.modals.deleted": "Supprimé.",
@ -99,7 +100,7 @@
"pad.share.link": "Lien", "pad.share.link": "Lien",
"pad.share.emebdcode": "Incorporer un lien", "pad.share.emebdcode": "Incorporer un lien",
"pad.chat": "Chat", "pad.chat": "Chat",
"pad.chat.title": "Ouvrir le chat associé à ce pad.", "pad.chat.title": "Ouvrir le chat de ce pad.",
"pad.chat.loadmessages": "Charger davantage de messages", "pad.chat.loadmessages": "Charger davantage de messages",
"timeslider.pageTitle": "Historique dynamique de {{appTitle}}", "timeslider.pageTitle": "Historique dynamique de {{appTitle}}",
"timeslider.toolbar.returnbutton": "Retourner au pad", "timeslider.toolbar.returnbutton": "Retourner au pad",
@ -109,7 +110,10 @@
"timeslider.exportCurrent": "Exporter la version actuelle sous :", "timeslider.exportCurrent": "Exporter la version actuelle sous :",
"timeslider.version": "Version {{version}}", "timeslider.version": "Version {{version}}",
"timeslider.saved": "Enregistré le {{day}} {{month}} {{year}}", "timeslider.saved": "Enregistré le {{day}} {{month}} {{year}}",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.playPause": "Lecture / Pause des contenus du pad",
"timeslider.backRevision": "Reculer dune révision dans ce pad",
"timeslider.forwardRevision": "Avancer dune révision dans ce pad",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{seconds}}:{{minutes}}:{{hours}}",
"timeslider.month.january": "janvier", "timeslider.month.january": "janvier",
"timeslider.month.february": "février", "timeslider.month.february": "février",
"timeslider.month.march": "mars", "timeslider.month.march": "mars",
@ -124,18 +128,18 @@
"timeslider.month.december": "décembre", "timeslider.month.december": "décembre",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: auteur anonyme, other: auteurs anonymes ]}", "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.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 lascenseur temporel", "pad.savedrevs.timeslider": "Vous pouvez voir les révisions enregistrées en ouvrant l'historique",
"pad.userlist.entername": "Entrez votre nom", "pad.userlist.entername": "Entrez votre nom",
"pad.userlist.unnamed": "anonyme", "pad.userlist.unnamed": "anonyme",
"pad.userlist.guest": "Invité", "pad.userlist.guest": "Invité",
"pad.userlist.deny": "Refuser", "pad.userlist.deny": "Refuser",
"pad.userlist.approve": "Approuver", "pad.userlist.approve": "Approuver",
"pad.editbar.clearcolors": "Effacer les couleurs de paternité dans tout le document ?", "pad.editbar.clearcolors": "Effacer les couleurs de paternité des auteurs dans tout le document ?",
"pad.impexp.importbutton": "Importer maintenant", "pad.impexp.importbutton": "Importer maintenant",
"pad.impexp.importing": "Import en cours...", "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.confirmimport": "Importer un fichier écrasera le contenu 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.convertFailed": "Nous ne pouvons pas importer ce fichier. Veuillez utiliser un autre format de document ou faire manuellement un copier/coller du texte brut",
"pad.impexp.padHasData": "Nous navons pas pu importer ce fichier parce que ce bloc a déjà eu des modifications; veuillez importer vers un nouveau bloc", "pad.impexp.padHasData": "Nous navons pas pu importer ce fichier parce que ce pad a déjà eu des modifications; veuillez donc en créer un nouveau",
"pad.impexp.uploadFailed": "Le téléchargement a échoué, veuillez réessayer", "pad.impexp.uploadFailed": "Le téléchargement a échoué, veuillez réessayer",
"pad.impexp.importfailed": "Échec de l'importation", "pad.impexp.importfailed": "Échec de l'importation",
"pad.impexp.copypaste": "Veuillez copier/coller", "pad.impexp.copypaste": "Veuillez copier/coller",

View File

@ -93,6 +93,9 @@
"timeslider.exportCurrent": "Exportar a versión actual en formato:", "timeslider.exportCurrent": "Exportar a versión actual en formato:",
"timeslider.version": "Versión {{version}}", "timeslider.version": "Versión {{version}}",
"timeslider.saved": "Gardado o {{day}} de {{month}} de {{year}}", "timeslider.saved": "Gardado o {{day}} de {{month}} de {{year}}",
"timeslider.playPause": "Reproducir/pausar os contidos do pad",
"timeslider.backRevision": "Ir á revisión anterior neste pad",
"timeslider.forwardRevision": "Ir á revisión posterior neste pad",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "xaneiro", "timeslider.month.january": "xaneiro",
"timeslider.month.february": "febreiro", "timeslider.month.february": "febreiro",

View File

@ -95,6 +95,9 @@
"timeslider.exportCurrent": "ייצוא הגרסה הנוכחית בתור:", "timeslider.exportCurrent": "ייצוא הגרסה הנוכחית בתור:",
"timeslider.version": "גרסה {{version}}", "timeslider.version": "גרסה {{version}}",
"timeslider.saved": "נשמרה ב־{{day}} ב{{month}} {{year}}", "timeslider.saved": "נשמרה ב־{{day}} ב{{month}} {{year}}",
"timeslider.playPause": "לנגן / לעצור את תוכן הפנקס",
"timeslider.backRevision": "לחזור לגרסה של הפנקס הזה",
"timeslider.forwardRevision": "ללכת לגרסה חדשה יותר בפנקס הזה",
"timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "ינואר", "timeslider.month.january": "ינואר",
"timeslider.month.february": "פברואר", "timeslider.month.february": "פברואר",

View File

@ -9,14 +9,14 @@
"pad.toolbar.bold.title": "Tučny (Strg-B)", "pad.toolbar.bold.title": "Tučny (Strg-B)",
"pad.toolbar.italic.title": "Kursiwny (Strg-I)", "pad.toolbar.italic.title": "Kursiwny (Strg-I)",
"pad.toolbar.underline.title": "Podšmórnyć (Strg-U)", "pad.toolbar.underline.title": "Podšmórnyć (Strg-U)",
"pad.toolbar.strikethrough.title": "Přešmórnyć", "pad.toolbar.strikethrough.title": "Přešmórnyć (Strg+5)",
"pad.toolbar.ol.title": "Čisłowana lisćina", "pad.toolbar.ol.title": "Čisłowana lisćina (Strg+Umsch+N)",
"pad.toolbar.ul.title": "Naličenje", "pad.toolbar.ul.title": "Naličenje (Strg+Umsch+L)",
"pad.toolbar.indent.title": "Zasunyć (TAB)", "pad.toolbar.indent.title": "Zasunyć (TAB)",
"pad.toolbar.unindent.title": "Wusunyć (Umsch+TAB)", "pad.toolbar.unindent.title": "Wusunyć (Umsch+TAB)",
"pad.toolbar.undo.title": "Cofnyć (Strg-Z)", "pad.toolbar.undo.title": "Cofnyć (Strg-Z)",
"pad.toolbar.redo.title": "Wospjetować (Strg-Y)", "pad.toolbar.redo.title": "Wospjetować (Strg-Y)",
"pad.toolbar.clearAuthorship.title": "Awtorowe barby wotstronić", "pad.toolbar.clearAuthorship.title": "Awtorowe barby wotstronić (Strg+Umsch+C)",
"pad.toolbar.import_export.title": "Import/Eksport z/do druhich datajowych formatow", "pad.toolbar.import_export.title": "Import/Eksport z/do druhich datajowych formatow",
"pad.toolbar.timeslider.title": "Historijowa strona", "pad.toolbar.timeslider.title": "Historijowa strona",
"pad.toolbar.savedRevision.title": "Wersiju składować", "pad.toolbar.savedRevision.title": "Wersiju składować",
@ -26,12 +26,14 @@
"pad.colorpicker.save": "Składować", "pad.colorpicker.save": "Składować",
"pad.colorpicker.cancel": "Přetorhnyć", "pad.colorpicker.cancel": "Přetorhnyć",
"pad.loading": "Začituje so...", "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.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.permissionDenied": "Nimaće prawo za přistup na tutón zapisnik.",
"pad.wrongPassword": "Twoje hesło bě wopak", "pad.wrongPassword": "Twoje hesło bě wopak",
"pad.settings.padSettings": "Nastajenja zapisnika", "pad.settings.padSettings": "Nastajenja zapisnika",
"pad.settings.myView": "Mój napohlad", "pad.settings.myView": "Mój napohlad",
"pad.settings.stickychat": "Chat přeco na wobrazowce pokazać", "pad.settings.stickychat": "Chat přeco na wobrazowce pokazać",
"pad.settings.chatandusers": "Chat a wužiwarjow pokazać",
"pad.settings.colorcheck": "Awtorowe barby", "pad.settings.colorcheck": "Awtorowe barby",
"pad.settings.linenocheck": "Linkowe čisła", "pad.settings.linenocheck": "Linkowe čisła",
"pad.settings.rtlcheck": "Wobsah wotprawa nalěwo čitać?", "pad.settings.rtlcheck": "Wobsah wotprawa nalěwo čitać?",
@ -44,6 +46,7 @@
"pad.importExport.import": "Tekstowu dataju abo dokument nahrać", "pad.importExport.import": "Tekstowu dataju abo dokument nahrać",
"pad.importExport.importSuccessful": "Wuspěšny!", "pad.importExport.importSuccessful": "Wuspěšny!",
"pad.importExport.export": "Aktualny zapisnik eksportować jako:", "pad.importExport.export": "Aktualny zapisnik eksportować jako:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Luty tekst", "pad.importExport.exportplain": "Luty tekst",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
@ -104,6 +107,7 @@
"timeslider.month.december": "decembra", "timeslider.month.december": "decembra",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: awtor, two: awtoraj, few: awtorojo, other: awtorow ]} bjez mjena", "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.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.entername": "Zapodaj swoje mjeno",
"pad.userlist.unnamed": "bjez mjena", "pad.userlist.unnamed": "bjez mjena",
"pad.userlist.guest": "Hósć", "pad.userlist.guest": "Hósć",
@ -114,6 +118,7 @@
"pad.impexp.importing": "Importuje so...", "pad.impexp.importing": "Importuje so...",
"pad.impexp.confirmimport": "Importowanje dataje přepisa aktualny tekst zapisnika. Chceš woprawdźe pokročować?", "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.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.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.importfailed": "Import njeje so poradźiło",
"pad.impexp.copypaste": "Prošu kopěrować a zasadźić", "pad.impexp.copypaste": "Prošu kopěrować a zasadźić",

View File

@ -37,6 +37,7 @@
"pad.settings.padSettings": "Notesz beállításai", "pad.settings.padSettings": "Notesz beállításai",
"pad.settings.myView": "Az én nézetem", "pad.settings.myView": "Az én nézetem",
"pad.settings.stickychat": "Mindig mutasd a csevegés-dobozt", "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.colorcheck": "Szerzők színei",
"pad.settings.linenocheck": "Sorok számozása", "pad.settings.linenocheck": "Sorok számozása",
"pad.settings.rtlcheck": "Tartalom olvasása balról jobbra?", "pad.settings.rtlcheck": "Tartalom olvasása balról jobbra?",

View File

@ -33,6 +33,7 @@
"pad.settings.padSettings": "Configuration del pad", "pad.settings.padSettings": "Configuration del pad",
"pad.settings.myView": "Mi vista", "pad.settings.myView": "Mi vista",
"pad.settings.stickychat": "Chat sempre visibile", "pad.settings.stickychat": "Chat sempre visibile",
"pad.settings.chatandusers": "Monstrar chat e usatores",
"pad.settings.colorcheck": "Colores de autor", "pad.settings.colorcheck": "Colores de autor",
"pad.settings.linenocheck": "Numeros de linea", "pad.settings.linenocheck": "Numeros de linea",
"pad.settings.rtlcheck": "Leger le contento de dextra a sinistra?", "pad.settings.rtlcheck": "Leger le contento de dextra a sinistra?",
@ -91,6 +92,9 @@
"timeslider.exportCurrent": "Exportar le version actual como:", "timeslider.exportCurrent": "Exportar le version actual como:",
"timeslider.version": "Version {{version}}", "timeslider.version": "Version {{version}}",
"timeslider.saved": "Salveguardate le {{day}} de {{month}} {{year}}", "timeslider.saved": "Salveguardate le {{day}} de {{month}} {{year}}",
"timeslider.playPause": "Reproducer/pausar le contento del pad",
"timeslider.backRevision": "Recular un version in iste pad",
"timeslider.forwardRevision": "Avantiar un version in iste pad",
"timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "januario", "timeslider.month.january": "januario",
"timeslider.month.february": "februario", "timeslider.month.february": "februario",
@ -106,6 +110,7 @@
"timeslider.month.december": "decembre", "timeslider.month.december": "decembre",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autores ]} sin nomine", "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor, other: autores ]} sin nomine",
"pad.savedrevs.marked": "Iste version es ora marcate como version salveguardate", "pad.savedrevs.marked": "Iste version es ora marcate como version salveguardate",
"pad.savedrevs.timeslider": "Tu pote vider versiones salveguardate con le chronologia glissante.",
"pad.userlist.entername": "Entra tu nomine", "pad.userlist.entername": "Entra tu nomine",
"pad.userlist.unnamed": "sin nomine", "pad.userlist.unnamed": "sin nomine",
"pad.userlist.guest": "Invitato", "pad.userlist.guest": "Invitato",

126
src/locales/is.json Normal file
View File

@ -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ð <a href=\"https://github.com/ether/etherpad-li\nte/wiki/How-to-e\nnable-importing-and-exporting-different-file-formats-in-Ubuntu-or-OpenSuse-or-\nSLES-with-AbiWord\">settu þá upp abiword forritið</a>.",
"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ð."
}

View File

@ -31,6 +31,7 @@
"pad.colorpicker.save": "Salva", "pad.colorpicker.save": "Salva",
"pad.colorpicker.cancel": "Annulla", "pad.colorpicker.cancel": "Annulla",
"pad.loading": "Caricamento in corso…", "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.passwordRequired": "Per accedere a questo Pad è necessaria una password",
"pad.permissionDenied": "Non si dispone dei permessi necessari per accedere a questo Pad", "pad.permissionDenied": "Non si dispone dei permessi necessari per accedere a questo Pad",
"pad.wrongPassword": "La password è sbagliata", "pad.wrongPassword": "La password è sbagliata",
@ -111,6 +112,7 @@
"timeslider.month.december": "dicembre", "timeslider.month.december": "dicembre",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: autore, other: autori ]} senza nome", "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autore, other: autori ]} senza nome",
"pad.savedrevs.marked": "Questa revisione è ora contrassegnata come una versione salvata", "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.entername": "Inserisci il tuo nome",
"pad.userlist.unnamed": "senza nome", "pad.userlist.unnamed": "senza nome",
"pad.userlist.guest": "Ospite", "pad.userlist.guest": "Ospite",
@ -121,6 +123,7 @@
"pad.impexp.importing": "Importazione in corso...", "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.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.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.uploadFailed": "Caricamento non riuscito, riprovare",
"pad.impexp.importfailed": "Importazione fallita", "pad.impexp.importfailed": "Importazione fallita",
"pad.impexp.copypaste": "Si prega di copiare e incollare", "pad.impexp.copypaste": "Si prega di copiare e incollare",

View File

@ -1,7 +1,8 @@
{ {
"@metadata": { "@metadata": {
"authors": [ "authors": [
"Shirayuki" "Shirayuki",
"Torinky"
] ]
}, },
"index.newPad": "新規作成", "index.newPad": "新規作成",
@ -16,7 +17,7 @@
"pad.toolbar.unindent.title": "インデント解除 (Shift+Tab)", "pad.toolbar.unindent.title": "インデント解除 (Shift+Tab)",
"pad.toolbar.undo.title": "元に戻す (Ctrl+Z)", "pad.toolbar.undo.title": "元に戻す (Ctrl+Z)",
"pad.toolbar.redo.title": "やり直し (Ctrl+Y)", "pad.toolbar.redo.title": "やり直し (Ctrl+Y)",
"pad.toolbar.clearAuthorship.title": "作者の色分けを消去", "pad.toolbar.clearAuthorship.title": "作者の色分けを消去(Ctrl+Shift+C)",
"pad.toolbar.import_export.title": "他の形式のファイルのインポート/エクスポート", "pad.toolbar.import_export.title": "他の形式のファイルのインポート/エクスポート",
"pad.toolbar.timeslider.title": "タイムスライダー", "pad.toolbar.timeslider.title": "タイムスライダー",
"pad.toolbar.savedRevision.title": "版を保存", "pad.toolbar.savedRevision.title": "版を保存",
@ -26,12 +27,14 @@
"pad.colorpicker.save": "保存", "pad.colorpicker.save": "保存",
"pad.colorpicker.cancel": "キャンセル", "pad.colorpicker.cancel": "キャンセル",
"pad.loading": "読み込み中...", "pad.loading": "読み込み中...",
"pad.noCookie": "クッキーが見つかりません。ブラウザの設定でクッキーの使用を許可してください。",
"pad.passwordRequired": "このパッドにアクセスするにはパスワードが必要です", "pad.passwordRequired": "このパッドにアクセスするにはパスワードが必要です",
"pad.permissionDenied": "あなたにはこのパッドへのアクセス許可がありません", "pad.permissionDenied": "あなたにはこのパッドへのアクセス許可がありません",
"pad.wrongPassword": "パスワードが間違っています", "pad.wrongPassword": "パスワードが間違っています",
"pad.settings.padSettings": "パッドの設定", "pad.settings.padSettings": "パッドの設定",
"pad.settings.myView": "個人設定", "pad.settings.myView": "個人設定",
"pad.settings.stickychat": "画面にチャットを常に表示", "pad.settings.stickychat": "画面にチャットを常に表示",
"pad.settings.chatandusers": "チャットとユーザーを表示",
"pad.settings.colorcheck": "作者の色分け", "pad.settings.colorcheck": "作者の色分け",
"pad.settings.linenocheck": "行番号", "pad.settings.linenocheck": "行番号",
"pad.settings.rtlcheck": "右横書きにする", "pad.settings.rtlcheck": "右横書きにする",
@ -44,6 +47,7 @@
"pad.importExport.import": "あらゆるテキストファイルや文書をアップロードできます", "pad.importExport.import": "あらゆるテキストファイルや文書をアップロードできます",
"pad.importExport.importSuccessful": "完了しました。", "pad.importExport.importSuccessful": "完了しました。",
"pad.importExport.export": "現在のパッドをエクスポートする形式:", "pad.importExport.export": "現在のパッドをエクスポートする形式:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "プレーンテキスト", "pad.importExport.exportplain": "プレーンテキスト",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
@ -89,6 +93,9 @@
"timeslider.exportCurrent": "現在の版をエクスポートする形式:", "timeslider.exportCurrent": "現在の版をエクスポートする形式:",
"timeslider.version": "バージョン {{version}}", "timeslider.version": "バージョン {{version}}",
"timeslider.saved": "| {{year}}年{{month}}{{day}}日に保存", "timeslider.saved": "| {{year}}年{{month}}{{day}}日に保存",
"timeslider.playPause": "パッドの過去の内容を再生/一時停止",
"timeslider.backRevision": "前の版に戻る",
"timeslider.forwardRevision": "次の版に進む",
"timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "1月", "timeslider.month.january": "1月",
"timeslider.month.february": "2月", "timeslider.month.february": "2月",
@ -104,6 +111,7 @@
"timeslider.month.december": "12月", "timeslider.month.december": "12月",
"timeslider.unnamedauthors": "{{num}} 人の匿名の{[plural(num) other: 作者 ]}", "timeslider.unnamedauthors": "{{num}} 人の匿名の{[plural(num) other: 作者 ]}",
"pad.savedrevs.marked": "この版を、保存済みの版としてマークしました。", "pad.savedrevs.marked": "この版を、保存済みの版としてマークしました。",
"pad.savedrevs.timeslider": "タイムスライダーで保存された版を確認できます",
"pad.userlist.entername": "名前を入力", "pad.userlist.entername": "名前を入力",
"pad.userlist.unnamed": "名前なし", "pad.userlist.unnamed": "名前なし",
"pad.userlist.guest": "ゲスト", "pad.userlist.guest": "ゲスト",
@ -114,6 +122,7 @@
"pad.impexp.importing": "インポート中...", "pad.impexp.importing": "インポート中...",
"pad.impexp.confirmimport": "ファイルをインポートすると、パッドの現在のテキストが上書きされます。本当に続行しますか?", "pad.impexp.confirmimport": "ファイルをインポートすると、パッドの現在のテキストが上書きされます。本当に続行しますか?",
"pad.impexp.convertFailed": "このファイルをインポートできませんでした。他の文書形式を使用するか、手作業でコピー & ペーストしてください", "pad.impexp.convertFailed": "このファイルをインポートできませんでした。他の文書形式を使用するか、手作業でコピー & ペーストしてください",
"pad.impexp.padHasData": "このパッドは変更されたため、ファイルからインポートできませんでした。新しいパッドにインポートしてください。",
"pad.impexp.uploadFailed": "アップロードに失敗しました。もう一度お試しください", "pad.impexp.uploadFailed": "アップロードに失敗しました。もう一度お試しください",
"pad.impexp.importfailed": "インポートに失敗しました", "pad.impexp.importfailed": "インポートに失敗しました",
"pad.impexp.copypaste": "コピー & ペーストしてください", "pad.impexp.copypaste": "コピー & ペーストしてください",

View File

@ -28,12 +28,14 @@
"pad.colorpicker.save": "저장", "pad.colorpicker.save": "저장",
"pad.colorpicker.cancel": "취소", "pad.colorpicker.cancel": "취소",
"pad.loading": "불러오는 중...", "pad.loading": "불러오는 중...",
"pad.noCookie": "쿠키를 찾을 수 없습니다. 브라우저에서 쿠키를 허용해주세요!",
"pad.passwordRequired": "이 패드에 접근하려면 비밀번호가 필요합니다", "pad.passwordRequired": "이 패드에 접근하려면 비밀번호가 필요합니다",
"pad.permissionDenied": "이 패드에 접근할 권한이 없습니다", "pad.permissionDenied": "이 패드에 접근할 권한이 없습니다",
"pad.wrongPassword": "비밀번호가 잘못되었습니다", "pad.wrongPassword": "비밀번호가 잘못되었습니다",
"pad.settings.padSettings": "패드 설정", "pad.settings.padSettings": "패드 설정",
"pad.settings.myView": "내 보기", "pad.settings.myView": "내 보기",
"pad.settings.stickychat": "화면에 항상 대화 보기", "pad.settings.stickychat": "화면에 항상 대화 보기",
"pad.settings.chatandusers": "채트와 사용자 보이기",
"pad.settings.colorcheck": "저자 색", "pad.settings.colorcheck": "저자 색",
"pad.settings.linenocheck": "줄 번호", "pad.settings.linenocheck": "줄 번호",
"pad.settings.rtlcheck": "우횡서(오른쪽에서 왼쪽으로)입니까?", "pad.settings.rtlcheck": "우횡서(오른쪽에서 왼쪽으로)입니까?",

View File

@ -5,7 +5,7 @@
] ]
}, },
"index.newPad": "Neu Pädd", "index.newPad": "Neu Pädd",
"index.createOpenPad": "udder maach e Pädd op med däm Naame:", "index.createOpenPad": "udder maach e Pädd op med däm Nahme:",
"pad.toolbar.bold.title": "Fättschreff (Strg-B)", "pad.toolbar.bold.title": "Fättschreff (Strg-B)",
"pad.toolbar.italic.title": "Scheive Schreff (Strg-I)", "pad.toolbar.italic.title": "Scheive Schreff (Strg-I)",
"pad.toolbar.underline.title": "Ongerstresche (Strg-U)", "pad.toolbar.underline.title": "Ongerstresche (Strg-U)",
@ -25,7 +25,7 @@
"pad.toolbar.showusers.title": "Verbonge Metschriiver aanzeije", "pad.toolbar.showusers.title": "Verbonge Metschriiver aanzeije",
"pad.colorpicker.save": "Faßhallde", "pad.colorpicker.save": "Faßhallde",
"pad.colorpicker.cancel": "Ophüüre", "pad.colorpicker.cancel": "Ophüüre",
"pad.loading": "Ben aam Laade&nbsp;&hellip;", "pad.loading": "Ben aam Lahde&nbsp;…",
"pad.noCookie": "Dat Pläzje wood nit jevonge. Don dat en Dingem Brauser zohlohße!", "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.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.permissionDenied": "Do häs nit dat Rääsch, op heh dat Pädd zohzejriife.",
@ -34,11 +34,11 @@
"pad.settings.myView": "Aanseesch", "pad.settings.myView": "Aanseesch",
"pad.settings.stickychat": "Donn der Klaaf emmer aanzeije", "pad.settings.stickychat": "Donn der Klaaf emmer aanzeije",
"pad.settings.chatandusers": "Dunn de Metmaacher un der Klaaf aanzeije", "pad.settings.chatandusers": "Dunn de Metmaacher un der Klaaf aanzeije",
"pad.settings.colorcheck": "Färve för de Schriiver", "pad.settings.colorcheck": "Färve för de Schrihver",
"pad.settings.linenocheck": "Nommere för de Reije", "pad.settings.linenocheck": "Nommere för de Reije",
"pad.settings.rtlcheck": "Schreff vun Rääschß noh Lenks?", "pad.settings.rtlcheck": "Schreff vun Rääschß noh Lenks?",
"pad.settings.fontType": "Zoot Schreff", "pad.settings.fontType": "Zoot Schreff",
"pad.settings.fontType.normal": "Nomaal", "pad.settings.fontType.normal": "Nommahl",
"pad.settings.fontType.monospaced": "einheidlesch brejde Zeische", "pad.settings.fontType.monospaced": "einheidlesch brejde Zeische",
"pad.settings.globalView": "Et Ußsin för Alle", "pad.settings.globalView": "Et Ußsin för Alle",
"pad.settings.language": "Schprohch:", "pad.settings.language": "Schprohch:",
@ -54,7 +54,7 @@
"pad.importExport.exportopen": "ODF (Offe 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 <a 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\">Enschtallazjuhn met <i lang=\"en\" xml:lang=\"en\">Abiword</i></a>.", "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 <a 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\">Enschtallazjuhn met <i lang=\"en\" xml:lang=\"en\">Abiword</i></a>.",
"pad.modals.connected": "Verbonge.", "pad.modals.connected": "Verbonge.",
"pad.modals.reconnecting": "Ben wider aam Verbenge&nbsp;&hellip;", "pad.modals.reconnecting": "Ben wider aam Verbenge&nbsp;",
"pad.modals.forcereconnect": "Wider verbenge", "pad.modals.forcereconnect": "Wider verbenge",
"pad.modals.userdup": "En enem andere Finster en Ärbeid", "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.explanation": "Heh dat Padd schingk en mieh wi einem Finster vun enem Brauser op heh däm Rääschner op ze sin.",
@ -74,7 +74,7 @@
"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.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": "Fottjeschmeße.",
"pad.modals.deleted.explanation": "Dat Pädd es fottjeschmeße woode.", "pad.modals.deleted.explanation": "Dat Pädd es fottjeschmeße woode.",
"pad.modals.disconnected": "Do bes nit mieh verbonge.", "pad.modals.disconnected": "Do bes nit mih verbonge.",
"pad.modals.disconnected.explanation": "De Verbendong mem ẞööver es fott.", "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.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": "Maach heh dat Pädd öffentlesch",
@ -83,15 +83,18 @@
"pad.share.emebdcode": "Donn en <i lang=\"en\" xmk:lang=\"en\">URL</i> enboue", "pad.share.emebdcode": "Donn en <i lang=\"en\" xmk:lang=\"en\">URL</i> enboue",
"pad.chat": "Klaaf", "pad.chat": "Klaaf",
"pad.chat.title": "Maach dä Klaaf för heh dat Pädd op", "pad.chat.title": "Maach dä Klaaf för heh dat Pädd op",
"pad.chat.loadmessages": "Mieh Nohreeschte lahde...", "pad.chat.loadmessages": "Mih Nohreeschte lahde&nbsp;…",
"timeslider.pageTitle": "{{appTitle}} - Verjangeheid affschpelle", "timeslider.pageTitle": "{{appTitle}} - Verjangeheid affschpelle",
"timeslider.toolbar.returnbutton": "Jangk retuur nohm Pädd", "timeslider.toolbar.returnbutton": "Jangk retuur nohm Pädd",
"timeslider.toolbar.authors": "De Schriiver:", "timeslider.toolbar.authors": "De Schrihver:",
"timeslider.toolbar.authorsList": "Kein Schriivere", "timeslider.toolbar.authorsList": "Kein Schriivere",
"timeslider.toolbar.exportlink.title": "Äxpotteere", "timeslider.toolbar.exportlink.title": "Äxpotteere",
"timeslider.exportCurrent": "Donn de neußte Väsjohn äxpotteere alß:", "timeslider.exportCurrent": "Donn de neußte Väsjohn äxpotteere alß:",
"timeslider.version": "Väsjohn {{version}}", "timeslider.version": "Väsjohn {{version}}",
"timeslider.saved": "Faßjehallde aam {{day}}. {{month}} {{year}}", "timeslider.saved": "Faßjehallde aam {{day}}. {{month}} {{year}}",
"timeslider.playPause": "Donn der Enhalld vum Päd afschpelle udder aanhallde",
"timeslider.backRevision": "Jangk ein Väsjohn retuhr en dämm Pahdt",
"timeslider.forwardRevision": "Jangg en Väsjohn vörwääz en heh däm Pahdt.",
"timeslider.dateformat": "aam {{day}}. {{month}} {{year}} öm {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "aam {{day}}. {{month}} {{year}} öm {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Jannewaa", "timeslider.month.january": "Jannewaa",
"timeslider.month.february": "Fääbrowaa", "timeslider.month.february": "Fääbrowaa",
@ -115,7 +118,7 @@
"pad.userlist.approve": "Johdheiße", "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.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.importbutton": "Jäz empoteere",
"pad.impexp.importing": "Ben aam Empotteere&nbsp;&hellip;", "pad.impexp.importing": "Ben aam Empottehre&nbsp;…",
"pad.impexp.confirmimport": "En Dattei ze empotteere määt der janze Täx em Pädd fott. Wells De dat verfaftesch hann?", "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.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.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.",

78
src/locales/ku-latn.json Normal file
View File

@ -0,0 +1,78 @@
{
"@metadata": {
"authors": [
"Bikarhêner",
"Dilyaramude",
"George Animal",
"Gomada"
]
},
"index.newPad": "Bloknota nû",
"index.createOpenPad": "Yan Padekê li gel navê biafirîne/veke:",
"pad.toolbar.bold.title": "Stûr (Ctrl-B)",
"pad.toolbar.italic.title": "Xwar (Ctrl-I)",
"pad.toolbar.underline.title": "Binxet (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Serxêzkirî (Ctrl+5)",
"pad.toolbar.ol.title": "Lîsteya rêzkirî (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Lîsteya tevlîhev (Ctrl+Shift+L)",
"pad.toolbar.undo.title": "Vegerîne (Ctrl-Z)",
"pad.toolbar.redo.title": "Dîsa bike (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "Rengên nivîskariyê jê bibe (Ctrl+Shift+C)",
"pad.toolbar.savedRevision.title": "Sererastkirinê tomar bike",
"pad.toolbar.settings.title": "Eyar",
"pad.colorpicker.save": "Tomar bike",
"pad.colorpicker.cancel": "Beta bike",
"pad.loading": "Tê barkirin...",
"pad.settings.padSettings": "Eyarên bloknotê",
"pad.settings.myView": "Dîmena min",
"pad.settings.stickychat": "Di ekranê de hertim çet bike",
"pad.settings.chatandusers": "Çeta û Bikarhênera Nîşan bide",
"pad.settings.colorcheck": "Rengên nivîskarîye",
"pad.settings.linenocheck": "Hejmarên rêze",
"pad.settings.rtlcheck": "Bila naverok ji raste ber bi çepe be xwendin?",
"pad.settings.fontType": "Tîpa nivîsê:",
"pad.settings.language": "Ziman:",
"pad.importExport.importSuccessful": "Biserketî!",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML",
"pad.importExport.exportword": "Microsoft Word",
"pad.importExport.exportpdf": "PDF",
"pad.modals.connected": "Hate girêdan.",
"pad.modals.reconnecting": "Ji bloknota te re dîsa tê girêdan...",
"pad.modals.userdup": "Di pencereyek din de vebû",
"pad.modals.userdup.advice": "Ji bo di vê pencereye de bikarbînîy dîsa giredanek çeke.",
"pad.modals.unauth": "Desthilatdar nîne",
"pad.modals.deleted": "Hate jêbirin.",
"pad.modals.deleted.explanation": "Ev bloknot hatiye rakirin.",
"pad.modals.disconnected": "Pêwendîya te qut bû.",
"pad.modals.disconnected.explanation": "Pêwendîya rajeker qut bû",
"pad.share": "Vê bloknotê parve bike",
"pad.share.link": "Girêdan",
"pad.chat": "Çet",
"pad.chat.title": "Ji bo vê bloknotê çet veke.",
"pad.chat.loadmessages": "Peyamên bêhtir barbike",
"timeslider.toolbar.returnbutton": "Vegere bloknotê",
"timeslider.toolbar.authors": "Nivîser:",
"timeslider.toolbar.authorsList": "Nivîser Tine",
"timeslider.version": "Guhertoya {{version}}",
"timeslider.saved": "Di dîroka {{day}} {{month}} {{year}} de hate tomarkirin",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}",
"timeslider.month.january": "rêbendan",
"timeslider.month.february": "reşemî",
"timeslider.month.march": "adar",
"timeslider.month.april": "avrêl",
"timeslider.month.may": "gulan",
"timeslider.month.june": "pûşper",
"timeslider.month.july": "tîrmeh",
"timeslider.month.august": "gelawêj",
"timeslider.month.september": "rezber",
"timeslider.month.october": "kewçêr",
"timeslider.month.november": "sermawez",
"timeslider.month.december": "berfanbar",
"pad.userlist.entername": "Navê xwe têkeve",
"pad.userlist.unnamed": "nenavkirî",
"pad.userlist.guest": "Mêvan",
"pad.userlist.deny": "Red bike",
"pad.userlist.approve": "Bipejirîne",
"pad.impexp.copypaste": "Ji kerema xwe re jê bigre û pê ve deyne (Ctrl+c, Ctrl+v)"
}

View File

@ -2,28 +2,38 @@
"@metadata": { "@metadata": {
"authors": [ "authors": [
"Robby", "Robby",
"Soued031" "Soued031",
"Gromper"
] ]
}, },
"index.newPad": "Neie Pad", "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.ol.title": "Numeréiert Lëscht (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Net-numeréiert Lëscht (Ctrl+Shift+L)", "pad.toolbar.ul.title": "Net-numeréiert Lëscht (Ctrl+Shift+L)",
"pad.toolbar.undo.title": "Réckgängeg (Ctrl-Z)", "pad.toolbar.undo.title": "Réckgängeg (Ctrl-Z)",
"pad.toolbar.redo.title": "Widderhuelen (Ctrl-Y)", "pad.toolbar.redo.title": "Widderhuelen (Ctrl-Y)",
"pad.toolbar.savedRevision.title": "Versioun späicheren", "pad.toolbar.savedRevision.title": "Versioun späicheren",
"pad.toolbar.settings.title": "Astellungen", "pad.toolbar.settings.title": "Astellungen",
"pad.toolbar.showusers.title": "Aktuell Benotzer vun dësem Pad uweisen",
"pad.colorpicker.save": "Späicheren", "pad.colorpicker.save": "Späicheren",
"pad.colorpicker.cancel": "Ofbriechen", "pad.colorpicker.cancel": "Ofbriechen",
"pad.loading": "Lueden...", "pad.loading": "Lueden...",
"pad.noCookie": "Cookie gouf net fonnt. Erlaabt w.e.g. Cookien an Ärem Browser!", "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.wrongPassword": "Äert Passwuert ass falsch",
"pad.settings.myView": "Méng Usiicht",
"pad.settings.fontType.normal": "Normal", "pad.settings.fontType.normal": "Normal",
"pad.settings.language": "Sprooch:", "pad.settings.language": "Sprooch:",
"pad.importExport.import_export": "Import/Export",
"pad.importExport.importSuccessful": "Erfollegräich", "pad.importExport.importSuccessful": "Erfollegräich",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
"pad.importExport.exportpdf": "PDF", "pad.importExport.exportpdf": "PDF",
"pad.importExport.exportopen": "ODF (Open Document Format)", "pad.importExport.exportopen": "ODF (Open Document Format)",
"pad.modals.connected": "Verbonnen.",
"pad.modals.unauth": "Net autoriséiert", "pad.modals.unauth": "Net autoriséiert",
"pad.modals.slowcommit.explanation": "De Server äntwert net.", "pad.modals.slowcommit.explanation": "De Server äntwert net.",
"pad.modals.deleted": "Geläscht.", "pad.modals.deleted": "Geläscht.",

View File

@ -2,20 +2,40 @@
"@metadata": { "@metadata": {
"authors": [ "authors": [
"Eitvys200", "Eitvys200",
"Mantak111" "Mantak111",
"I-svetaines"
] ]
}, },
"pad.toolbar.bold.title": "Paryškintasis (Ctrl-B)", "pad.toolbar.bold.title": "Paryškintasis (Ctrl-B)",
"pad.toolbar.italic.title": "Pasvirasis (Ctrl-I)", "pad.toolbar.italic.title": "Pasvirasis (Ctrl-I)",
"pad.toolbar.underline.title": "Pabraukimas (Ctrl-U)", "pad.toolbar.underline.title": "Pabraukimas (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Perbrauktasis (Ctrl+5)",
"pad.toolbar.ol.title": "Numeruotas sąrašas (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Nenumeruotas Sąrašas (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "Įtrauka",
"pad.toolbar.undo.title": "Anuliuoti (Ctrl-Z)", "pad.toolbar.undo.title": "Anuliuoti (Ctrl-Z)",
"pad.toolbar.redo.title": "Perdaryti (Ctrl-Y)", "pad.toolbar.redo.title": "Perdaryti (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "Tvarkyti autorystės spalvas", "pad.toolbar.clearAuthorship.title": "Tvarkyti autorystės spalvas",
"pad.toolbar.import_export.title": "Importuoti/Eksportuoti iš/į įvairius failų formatus",
"pad.toolbar.timeslider.title": "Laiko slankiklis",
"pad.toolbar.savedRevision.title": "Išsaugoti peržiūrą",
"pad.toolbar.settings.title": "Nustatymai", "pad.toolbar.settings.title": "Nustatymai",
"pad.toolbar.embed.title": "Dalintis ir įterpti šį bloknotą",
"pad.toolbar.showusers.title": "Rodyti naudotojus šiame bloknote",
"pad.colorpicker.save": "Išsaugoti", "pad.colorpicker.save": "Išsaugoti",
"pad.colorpicker.cancel": "Atšaukti", "pad.colorpicker.cancel": "Atšaukti",
"pad.loading": "Įkraunama...", "pad.loading": "Įkraunama...",
"pad.noCookie": "Slapuko nepavyko rasti. Prašome leisti slapukus interneto naršyklėje!",
"pad.passwordRequired": "Jums reikia slaptažodžio kad galėtumėte matyti šį bloknotą",
"pad.permissionDenied": "Jūs neturite leidimo patekti į šį bloknotą",
"pad.wrongPassword": "Jūsų slaptažodis neteisingas",
"pad.settings.padSettings": "Bloknoto nustatymai",
"pad.settings.myView": "Mano Vaizdas", "pad.settings.myView": "Mano Vaizdas",
"pad.settings.stickychat": "Pokalbiai visada viršuje",
"pad.settings.chatandusers": "Rodyti Pokalbius ir Vartotojus",
"pad.settings.colorcheck": "Autorystės spalvos",
"pad.settings.linenocheck": "Eilučių numeriai",
"pad.settings.rtlcheck": "Skaityti turinį iš dešinės į kairę?",
"pad.settings.fontType": "Šrifto tipas:", "pad.settings.fontType": "Šrifto tipas:",
"pad.settings.fontType.normal": "Normalus", "pad.settings.fontType.normal": "Normalus",
"pad.settings.globalView": "Bendras Vaizdas", "pad.settings.globalView": "Bendras Vaizdas",
@ -23,13 +43,21 @@
"pad.importExport.import_export": "Importuoti/Eksportuoti", "pad.importExport.import_export": "Importuoti/Eksportuoti",
"pad.importExport.import": "Įkelkite bet kokį tekstinį failą arba dokumentą", "pad.importExport.import": "Įkelkite bet kokį tekstinį failą arba dokumentą",
"pad.importExport.importSuccessful": "Pavyko!", "pad.importExport.importSuccessful": "Pavyko!",
"pad.importExport.export": "Eksportuoti dabartinį bloknotą kaip:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Paprastasis tekstas", "pad.importExport.exportplain": "Paprastasis tekstas",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
"pad.importExport.exportpdf": "PDF", "pad.importExport.exportpdf": "PDF",
"pad.importExport.exportopen": "ODF (Atvirasis dokumento formatas)", "pad.importExport.exportopen": "ODF (Atvirasis dokumento formatas)",
"pad.modals.connected": "Prisijungta.", "pad.modals.connected": "Prisijungta.",
"pad.modals.reconnecting": "Iš naujo prisijungiama prie Jūsų bloknoto",
"pad.modals.forcereconnect": "Priversti prisijungti iš naujo",
"pad.modals.userdup": "Atidaryta kitame lange",
"pad.modals.userdup.explanation": "Šis bloknotas, atrodo yra atidarytas daugiau nei viename šio kompiuterio naršyklės lange.",
"pad.modals.unauth": "Neleidžiama", "pad.modals.unauth": "Neleidžiama",
"pad.modals.unauth.explanation": "Jūsų teiisės pasikeitė kol žiūrėjote šį puslapį. Bandykite prisijungti iš naujo.",
"pad.modals.looping.explanation": "Yra komunikacijos problemų su sinchronizacijos serveriu.",
"pad.modals.initsocketfail": "Serveris yra nepasiekiamas.", "pad.modals.initsocketfail": "Serveris yra nepasiekiamas.",
"pad.modals.slowcommit.explanation": "Serveris neatsako.", "pad.modals.slowcommit.explanation": "Serveris neatsako.",
"pad.modals.deleted": "Ištrintas.", "pad.modals.deleted": "Ištrintas.",

View File

@ -93,6 +93,9 @@
"timeslider.exportCurrent": "Извези ја тековната верзија како:", "timeslider.exportCurrent": "Извези ја тековната верзија како:",
"timeslider.version": "Верзија {{version}}", "timeslider.version": "Верзија {{version}}",
"timeslider.saved": "Зачувано на {{day}} {{month}} {{year}} г.", "timeslider.saved": "Зачувано на {{day}} {{month}} {{year}} г.",
"timeslider.playPause": "Пушти/запри содржина на тетратката",
"timeslider.backRevision": "Назад за една преработка на тетратката",
"timeslider.forwardRevision": "Напред за една преработка на тетратката",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "јануари", "timeslider.month.january": "јануари",
"timeslider.month.february": "февруари", "timeslider.month.february": "февруари",

View File

@ -33,6 +33,7 @@
"pad.settings.padSettings": "Tetapan Pad", "pad.settings.padSettings": "Tetapan Pad",
"pad.settings.myView": "Paparan Saya", "pad.settings.myView": "Paparan Saya",
"pad.settings.stickychat": "Sentiasa bersembang pada skrin", "pad.settings.stickychat": "Sentiasa bersembang pada skrin",
"pad.settings.chatandusers": "Paparkan Ruang Sembang dan Pengguna-Pengguna",
"pad.settings.colorcheck": "Warna pengarang", "pad.settings.colorcheck": "Warna pengarang",
"pad.settings.linenocheck": "Nombor baris", "pad.settings.linenocheck": "Nombor baris",
"pad.settings.rtlcheck": "Membaca dari kanan ke kiri?", "pad.settings.rtlcheck": "Membaca dari kanan ke kiri?",
@ -91,6 +92,9 @@
"timeslider.exportCurrent": "Eksport versi semasa sebagai:", "timeslider.exportCurrent": "Eksport versi semasa sebagai:",
"timeslider.version": "Versi {{version}}", "timeslider.version": "Versi {{version}}",
"timeslider.saved": "Disimpan pada {{day}} {{month}} {{year}}", "timeslider.saved": "Disimpan pada {{day}} {{month}} {{year}}",
"timeslider.playPause": "Mainkan / Pausekan Kandungan Pad",
"timeslider.backRevision": "Undur satu semakan di Pad ini",
"timeslider.forwardRevision": "Maju satu semakan dalam Pad ini",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Januari", "timeslider.month.january": "Januari",
"timeslider.month.february": "Februari", "timeslider.month.february": "Februari",
@ -106,6 +110,7 @@
"timeslider.month.december": "Disember", "timeslider.month.december": "Disember",
"timeslider.unnamedauthors": "{{num}} orang {[plural(num) other: pengarang]} awanama", "timeslider.unnamedauthors": "{{num}} orang {[plural(num) other: pengarang]} awanama",
"pad.savedrevs.marked": "Semakan ini telah ditandai sebagai semakan tersimpan", "pad.savedrevs.marked": "Semakan ini telah ditandai sebagai semakan tersimpan",
"pad.savedrevs.timeslider": "Anda boleh melihat semakan yang tersimpan dengan melawat gelangsar masa",
"pad.userlist.entername": "Taipkan nama anda", "pad.userlist.entername": "Taipkan nama anda",
"pad.userlist.unnamed": "tanpa nama", "pad.userlist.unnamed": "tanpa nama",
"pad.userlist.guest": "Tetamu", "pad.userlist.guest": "Tetamu",

View File

@ -6,7 +6,7 @@
] ]
}, },
"index.newPad": "Novo Pad", "index.newPad": "Novo Pad",
"index.createOpenPad": "o crià o apre nu Pad cu 'o nomme:", "index.createOpenPad": "o crià o arape nu Pad cu 'o nomme:",
"pad.toolbar.bold.title": "Grassetto (Ctrl-B)", "pad.toolbar.bold.title": "Grassetto (Ctrl-B)",
"pad.toolbar.italic.title": "Cursivo (Ctrl-I)", "pad.toolbar.italic.title": "Cursivo (Ctrl-I)",
"pad.toolbar.underline.title": "Sottolineato (Ctrl-U)", "pad.toolbar.underline.title": "Sottolineato (Ctrl-U)",

View File

@ -2,37 +2,40 @@
"@metadata": { "@metadata": {
"authors": [ "authors": [
"Laaknor", "Laaknor",
"Cocu" "Cocu",
"Chameleon222"
] ]
}, },
"index.newPad": "Ny Pad", "index.newPad": "Ny blokk",
"index.createOpenPad": "eller opprette/åpne en ny Pad med dette navnet:", "index.createOpenPad": "eller opprette/åpne en ny blokk med dette navnet:",
"pad.toolbar.bold.title": "Fet (Ctrl-B)", "pad.toolbar.bold.title": "Fet (Ctrl+B)",
"pad.toolbar.italic.title": "Kursiv (Ctrl-I)", "pad.toolbar.italic.title": "Kursiv (Ctrl+I)",
"pad.toolbar.underline.title": "Understreking (Ctrl-U)", "pad.toolbar.underline.title": "Understreking (Ctrl+U)",
"pad.toolbar.strikethrough.title": "Gjennomstreking (Ctrl+5)", "pad.toolbar.strikethrough.title": "Gjennomstreking (Ctrl+5)",
"pad.toolbar.ol.title": "Nummerert liste (Ctrl+Shift+N)", "pad.toolbar.ol.title": "Nummerert liste (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Punktliste (Ctrl+Shift+L)", "pad.toolbar.ul.title": "Punktliste (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "Innrykk (TAB)", "pad.toolbar.indent.title": "Innrykk (TAB)",
"pad.toolbar.unindent.title": "Rykk ut (Shift+TAB)", "pad.toolbar.unindent.title": "Rykk ut (Shift+TAB)",
"pad.toolbar.undo.title": "Angre (Ctrl-Z)", "pad.toolbar.undo.title": "Angre (Ctrl+Z)",
"pad.toolbar.redo.title": "Gjør omigjen (Ctrl-Y)", "pad.toolbar.redo.title": "Gjør omigjen (Ctrl+Y)",
"pad.toolbar.clearAuthorship.title": "Fjern forfatterfarger (Ctrl+Shift+C)", "pad.toolbar.clearAuthorship.title": "Fjern forfatterfarger (Ctrl+Shift+C)",
"pad.toolbar.import_export.title": "Importer/eksporter fra/til forskjellige filformater", "pad.toolbar.import_export.title": "Importer/eksporter fra/til forskjellige filformater",
"pad.toolbar.timeslider.title": "Tidslinje", "pad.toolbar.timeslider.title": "Tidslinje",
"pad.toolbar.savedRevision.title": "Lagre revisjoner", "pad.toolbar.savedRevision.title": "Lagre revisjoner",
"pad.toolbar.settings.title": "Innstillinger", "pad.toolbar.settings.title": "Innstillinger",
"pad.toolbar.embed.title": "Bygg inn denne padden", "pad.toolbar.embed.title": "Del og sett inn denne blokken",
"pad.toolbar.showusers.title": "Vis brukerne av denne padden", "pad.toolbar.showusers.title": "Vis brukerne av denne blokken",
"pad.colorpicker.save": "Lagre", "pad.colorpicker.save": "Lagre",
"pad.colorpicker.cancel": "Avbryt", "pad.colorpicker.cancel": "Avbryt",
"pad.loading": "Laster inn...", "pad.loading": "Laster...",
"pad.passwordRequired": "Du trenger et passord for å få tilgang til denne padden", "pad.noCookie": "Kunne ikke finne informasjonskapselen. Vennligst tillat informasjonskapsler (cookies) i din webleser!",
"pad.permissionDenied": "Du har ikke tilgang til denne padden", "pad.passwordRequired": "Du trenger et passord for å få tilgang til denne blokken",
"pad.permissionDenied": "Du har ikke tilgang til denne blokken",
"pad.wrongPassword": "Feil passord", "pad.wrongPassword": "Feil passord",
"pad.settings.padSettings": "Padinnstillinger", "pad.settings.padSettings": "Blokkinnstillinger",
"pad.settings.myView": "Min visning", "pad.settings.myView": "Min visning",
"pad.settings.stickychat": "Chat alltid synlig", "pad.settings.stickychat": "Chat alltid synlig",
"pad.settings.chatandusers": "Vis chat og brukere",
"pad.settings.colorcheck": "Forfatterfarger", "pad.settings.colorcheck": "Forfatterfarger",
"pad.settings.linenocheck": "Linjenummer", "pad.settings.linenocheck": "Linjenummer",
"pad.settings.rtlcheck": "Les innhold fra høyre til venstre?", "pad.settings.rtlcheck": "Les innhold fra høyre til venstre?",
@ -44,7 +47,8 @@
"pad.importExport.import_export": "Importer/eksporter", "pad.importExport.import_export": "Importer/eksporter",
"pad.importExport.import": "Last opp tekstfil eller dokument", "pad.importExport.import": "Last opp tekstfil eller dokument",
"pad.importExport.importSuccessful": "Vellykket!", "pad.importExport.importSuccessful": "Vellykket!",
"pad.importExport.export": "Eksporter padden som:", "pad.importExport.export": "Eksporter blokken som:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Ren tekst", "pad.importExport.exportplain": "Ren tekst",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",
@ -52,10 +56,10 @@
"pad.importExport.exportopen": "ODF (Open Document Format)", "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, <a 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\">installer abiword</a>.", "pad.importExport.abiword.innerHTML": "Du kan bare importere fra ren tekst eller HTML-formater. For mer avanserte importfunksjoner, <a 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\">installer abiword</a>.",
"pad.modals.connected": "Tilkoblet.", "pad.modals.connected": "Tilkoblet.",
"pad.modals.reconnecting": "Kobler til din pad på nytt...", "pad.modals.reconnecting": "Kobler til din blokk på nytt...",
"pad.modals.forcereconnect": "Tving gjenoppkobling", "pad.modals.forcereconnect": "Tving gjenoppkobling",
"pad.modals.userdup": "Åpnet i nytt vindu", "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.explanation": "Denne blokken 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.userdup.advice": "Koble til igjen for å bruke dette vinduet i stedenfor.",
"pad.modals.unauth": "Ikke tillatt", "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.unauth.explanation": "Dine rettigheter har blitt endret mens du så på denne siden. Prøv å koble til på nytt",
@ -71,26 +75,29 @@
"pad.modals.corruptPad.explanation": "Blokken du forsøker å få tilgang til er skadet.", "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.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": "Slettet.",
"pad.modals.deleted.explanation": "Denne padden har blitt fjernet", "pad.modals.deleted.explanation": "Denne blokken har blitt fjernet",
"pad.modals.disconnected": "Du har blitt frakoblet.", "pad.modals.disconnected": "Du har blitt frakoblet.",
"pad.modals.disconnected.explanation": "Mistet tilkobling til serveren.", "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.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": "Del denne blokken",
"pad.share.readonly": "Skrivebeskyttet", "pad.share.readonly": "Skrivebeskyttet",
"pad.share.link": "Lenke", "pad.share.link": "Lenke",
"pad.share.emebdcode": "URL for innbygging", "pad.share.emebdcode": "URL for innbygging",
"pad.chat": "Chat", "pad.chat": "Chat",
"pad.chat.title": "Åpne chatten for denne padden.", "pad.chat.title": "Åpne chatten for denne blokken.",
"pad.chat.loadmessages": "Last flere beskjeder", "pad.chat.loadmessages": "Last flere beskjeder",
"timeslider.pageTitle": "{{appTitle}} Tidslinje", "timeslider.pageTitle": "{{appTitle}} Tidslinje",
"timeslider.toolbar.returnbutton": "Gå tilbake til pad", "timeslider.toolbar.returnbutton": "Gå tilbake til blokk",
"timeslider.toolbar.authors": "Forfattere:", "timeslider.toolbar.authors": "Forfattere:",
"timeslider.toolbar.authorsList": "Ingen forfattere", "timeslider.toolbar.authorsList": "Ingen forfattere",
"timeslider.toolbar.exportlink.title": "Eksporter", "timeslider.toolbar.exportlink.title": "Eksporter",
"timeslider.exportCurrent": "Eksporter nåværende versjon som:", "timeslider.exportCurrent": "Eksporter nåværende versjon som:",
"timeslider.version": "Versjon {{version}}", "timeslider.version": "Versjon {{version}}",
"timeslider.saved": "Lagret {{day}} {{month}} {{year}}", "timeslider.saved": "Lagret {{day}}. {{month}} {{year}}",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.playPause": "Spill av/Pause blokkinnholdet",
"timeslider.backRevision": "Gå tilbake en revisjon i denne blokken",
"timeslider.forwardRevision": "Gå fremover en revisjon i denne blokken",
"timeslider.dateformat": "{{day}}. {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "januar", "timeslider.month.january": "januar",
"timeslider.month.february": "februar", "timeslider.month.february": "februar",
"timeslider.month.march": "mars", "timeslider.month.march": "mars",
@ -105,6 +112,7 @@
"timeslider.month.december": "desember", "timeslider.month.december": "desember",
"timeslider.unnamedauthors": "{{num}} navnløse {[plural(num) one: forfatter, other: forfattere ]}", "timeslider.unnamedauthors": "{{num}} navnløse {[plural(num) one: forfatter, other: forfattere ]}",
"pad.savedrevs.marked": "Denne revisjonen er nå markert som en lagret revisjon", "pad.savedrevs.marked": "Denne revisjonen er nå markert som en lagret revisjon",
"pad.savedrevs.timeslider": "Du kan se lagrede revisjoner med tidslinjen",
"pad.userlist.entername": "Skriv inn ditt navn", "pad.userlist.entername": "Skriv inn ditt navn",
"pad.userlist.unnamed": "navnløs", "pad.userlist.unnamed": "navnløs",
"pad.userlist.guest": "Gjest", "pad.userlist.guest": "Gjest",
@ -113,8 +121,9 @@
"pad.editbar.clearcolors": "Fjern forfatterfarger på hele dokumentet?", "pad.editbar.clearcolors": "Fjern forfatterfarger på hele dokumentet?",
"pad.impexp.importbutton": "Importer nå", "pad.impexp.importbutton": "Importer nå",
"pad.impexp.importing": "Importerer...", "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.confirmimport": "Importering av en fil vil overskrive den nåværende teksten på blokken. 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.convertFailed": "Vi greide ikke å importere denne filen. Bruk et annet dokumentformat eller kopier og lim inn teksten manuelt",
"pad.impexp.padHasData": "Vi kunne ikke importere denne filen fordi blokken allerede hadde endringer. Importer til en ny blokk.",
"pad.impexp.uploadFailed": "Opplastning feilet. Prøv igjen", "pad.impexp.uploadFailed": "Opplastning feilet. Prøv igjen",
"pad.impexp.importfailed": "Import feilet", "pad.impexp.importfailed": "Import feilet",
"pad.impexp.copypaste": "Vennligst kopier og lim inn", "pad.impexp.copypaste": "Vennligst kopier og lim inn",

View File

@ -1,7 +1,9 @@
{ {
"@metadata": { "@metadata": {
"authors": [ "authors": [
"सरोज कुमार ढकाल" "सरोज कुमार ढकाल",
"Nirjal stha",
"राम प्रसाद जोशी"
] ]
}, },
"index.newPad": "नयाँ प्याड", "index.newPad": "नयाँ प्याड",
@ -9,20 +11,20 @@
"pad.toolbar.bold.title": "मोटो (Ctrl-B)", "pad.toolbar.bold.title": "मोटो (Ctrl-B)",
"pad.toolbar.italic.title": "ढल्के (Ctrl-I)", "pad.toolbar.italic.title": "ढल्के (Ctrl-I)",
"pad.toolbar.underline.title": "निम्न रेखाङ्कन (Ctrl-U)", "pad.toolbar.underline.title": "निम्न रेखाङ्कन (Ctrl-U)",
"pad.toolbar.strikethrough.title": "बीचको धर्को", "pad.toolbar.strikethrough.title": "बीचको धर्को (Ctrl+5)",
"pad.toolbar.ol.title": "क्रमवद्ध सूची", "pad.toolbar.ol.title": "क्रमवद्ध सूची (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "अक्रमाङ्कित सूची", "pad.toolbar.ul.title": "अक्रमाङ्कित सूची (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "इन्डेन्ट (TAB)", "pad.toolbar.indent.title": "इन्डेन्ट (TAB)",
"pad.toolbar.unindent.title": "आउटडेन्ट (Shift+TAB)", "pad.toolbar.unindent.title": "आउटडेन्ट (Shift+TAB)",
"pad.toolbar.undo.title": "रद्द (Ctrl-Z)", "pad.toolbar.undo.title": "रद्द (Ctrl-Z)",
"pad.toolbar.redo.title": "पुन:लागु (Ctrl-Y)", "pad.toolbar.redo.title": "पुन:लागु (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "लेखकीय रङ्ग हटाउने", "pad.toolbar.clearAuthorship.title": "लेखकीय रङ्ग हटाउने (Ctrl+Shift+C)",
"pad.toolbar.timeslider.title": "टाइमस्लाइडर", "pad.toolbar.timeslider.title": "टाइमस्लाइडर",
"pad.toolbar.savedRevision.title": "पुनरावलोकन संग्रहगर्ने", "pad.toolbar.savedRevision.title": "पुनरावलोकन संग्रहगर्ने",
"pad.toolbar.settings.title": "सेटिङ्गहरू", "pad.toolbar.settings.title": "सेटिङ्गहरू",
"pad.toolbar.embed.title": "यस प्याडलाई बाड्ने या इम्बेड गर्ने", "pad.toolbar.embed.title": "यस प्याडलाई बाड्ने या इम्बेड गर्ने",
"pad.toolbar.showusers.title": "यस प्याडमा रहेका प्रयोगकर्ता देखाउने", "pad.toolbar.showusers.title": "यस प्याडमा रहेका प्रयोगकर्ता देखाउने",
"pad.colorpicker.save": "सग्रह गर्ने", "pad.colorpicker.save": "सङ्ग्रह गर्ने",
"pad.colorpicker.cancel": "रद्द", "pad.colorpicker.cancel": "रद्द",
"pad.loading": "लोड हुदैछ...", "pad.loading": "लोड हुदैछ...",
"pad.passwordRequired": "यो प्यड खोल्न पासवर्ड चाहिन्छ", "pad.passwordRequired": "यो प्यड खोल्न पासवर्ड चाहिन्छ",
@ -31,6 +33,7 @@
"pad.settings.padSettings": "प्याड सेटिङ्गहरू", "pad.settings.padSettings": "प्याड सेटिङ्गहरू",
"pad.settings.myView": "मेरो दृष्य", "pad.settings.myView": "मेरो दृष्य",
"pad.settings.stickychat": "पर्दामा सधै च्याट गर्ने", "pad.settings.stickychat": "पर्दामा सधै च्याट गर्ने",
"pad.settings.chatandusers": "वार्ता तथा प्रयोगकर्ताहरू देखाउने",
"pad.settings.colorcheck": "लेखकीय रङ्ग", "pad.settings.colorcheck": "लेखकीय रङ्ग",
"pad.settings.linenocheck": "हरफ संख्या", "pad.settings.linenocheck": "हरफ संख्या",
"pad.settings.rtlcheck": "के सामग्री दाहिने देखि देब्रे पढ्ने हो ?", "pad.settings.rtlcheck": "के सामग्री दाहिने देखि देब्रे पढ्ने हो ?",
@ -43,6 +46,7 @@
"pad.importExport.import": "कुनै पनि पाठ रहेको फाइल या कागजात अपलोड गर्नुहोस्", "pad.importExport.import": "कुनै पनि पाठ रहेको फाइल या कागजात अपलोड गर्नुहोस्",
"pad.importExport.importSuccessful": "सफल भयो!", "pad.importExport.importSuccessful": "सफल भयो!",
"pad.importExport.export": "निम्न रुपमा प्याड निर्यात गर्ने :", "pad.importExport.export": "निम्न रुपमा प्याड निर्यात गर्ने :",
"pad.importExport.exportetherpad": "इथरप्याड",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "साधारण पाठ", "pad.importExport.exportplain": "साधारण पाठ",
"pad.importExport.exportword": "माइक्रोसफ्ट वर्ड", "pad.importExport.exportword": "माइक्रोसफ्ट वर्ड",
@ -54,6 +58,7 @@
"pad.modals.userdup": "अर्को सन्झ्यालमा खोल्ने", "pad.modals.userdup": "अर्को सन्झ्यालमा खोल्ने",
"pad.modals.unauth": "अनुमती नदिइएको", "pad.modals.unauth": "अनुमती नदिइएको",
"pad.modals.initsocketfail": "सर्भरमा पहुँच पुर्‍याउन सकिएन ।", "pad.modals.initsocketfail": "सर्भरमा पहुँच पुर्‍याउन सकिएन ।",
"pad.modals.slowcommit.explanation": "सर्भरसँग सम्पर्क हुने सकेन ।",
"pad.modals.deleted": "मेटिएको ।", "pad.modals.deleted": "मेटिएको ।",
"pad.modals.deleted.explanation": "यो प्याड हटाइसकेको छ ।", "pad.modals.deleted.explanation": "यो प्याड हटाइसकेको छ ।",
"pad.modals.disconnected": "तपाईँको जडान अवरुद्ध भयो ।", "pad.modals.disconnected": "तपाईँको जडान अवरुद्ध भयो ।",
@ -73,6 +78,9 @@
"timeslider.exportCurrent": "हालको संस्करण निम्म रुपमा निर्यात गर्ने :", "timeslider.exportCurrent": "हालको संस्करण निम्म रुपमा निर्यात गर्ने :",
"timeslider.version": "संस्करण {{version}}", "timeslider.version": "संस्करण {{version}}",
"timeslider.saved": "सङ्ग्रह गरिएको {{month}} {{day}}, {{year}}", "timeslider.saved": "सङ्ग्रह गरिएको {{month}} {{day}}, {{year}}",
"timeslider.playPause": "प्याडको सामग्रीहरूलाई चालु/बन्द गर्नुहोस",
"timeslider.backRevision": "यो प्याडको एक संस्करण पहिले जानुहोस्",
"timeslider.forwardRevision": "यो प्याडको एक संस्करण पछि जानुहोस्",
"timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "जनवरी", "timeslider.month.january": "जनवरी",
"timeslider.month.february": "फेब्रुअरी", "timeslider.month.february": "फेब्रुअरी",
@ -95,6 +103,7 @@
"pad.userlist.approve": "स्वीकृत गर्ने", "pad.userlist.approve": "स्वीकृत गर्ने",
"pad.impexp.importbutton": "अहिले आयात गर्ने", "pad.impexp.importbutton": "अहिले आयात गर्ने",
"pad.impexp.importing": "आयात गर्ने...", "pad.impexp.importing": "आयात गर्ने...",
"pad.impexp.uploadFailed": "अपलोड असफल भयो , कृपया पुन: प्रयास गर्नुहोस् ।",
"pad.impexp.importfailed": "आयात असफल भयो", "pad.impexp.importfailed": "आयात असफल भयो",
"pad.impexp.copypaste": "कृपया कपी पेस्ट गर्नुहोस" "pad.impexp.copypaste": "कृपया कपी पेस्ट गर्नुहोस"
} }

View File

@ -94,6 +94,9 @@
"timeslider.exportCurrent": "Huidige versie exporteren als:", "timeslider.exportCurrent": "Huidige versie exporteren als:",
"timeslider.version": "Versie {{version}}", "timeslider.version": "Versie {{version}}",
"timeslider.saved": "Opgeslagen op {{day}} {{month}} {{year}}", "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.dateformat": "{{year}}-{{month}}-{{day}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "januari", "timeslider.month.january": "januari",
"timeslider.month.february": "februari", "timeslider.month.february": "februari",

View File

@ -33,6 +33,7 @@
"pad.settings.padSettings": "Paramètres del Pad", "pad.settings.padSettings": "Paramètres del Pad",
"pad.settings.myView": "Ma vista", "pad.settings.myView": "Ma vista",
"pad.settings.stickychat": "Afichar totjorn lo chat", "pad.settings.stickychat": "Afichar totjorn lo chat",
"pad.settings.chatandusers": "Afichar la discussion e los utilizaires",
"pad.settings.colorcheck": "Colors didentificacion", "pad.settings.colorcheck": "Colors didentificacion",
"pad.settings.linenocheck": "Numèros de linhas", "pad.settings.linenocheck": "Numèros de linhas",
"pad.settings.rtlcheck": "Lectura de drecha a esquèrra", "pad.settings.rtlcheck": "Lectura de drecha a esquèrra",
@ -91,6 +92,9 @@
"timeslider.exportCurrent": "Exportar la version actuala en :", "timeslider.exportCurrent": "Exportar la version actuala en :",
"timeslider.version": "Version {{version}}", "timeslider.version": "Version {{version}}",
"timeslider.saved": "Enregistrat lo {{day}} {{month}} {{year}}", "timeslider.saved": "Enregistrat lo {{day}} {{month}} {{year}}",
"timeslider.playPause": "Lectura / Pausa dels contenguts del pad",
"timeslider.backRevision": "Recular duna revision dins aqueste pad",
"timeslider.forwardRevision": "Avançar duna revision dins aqueste pad",
"timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Genièr", "timeslider.month.january": "Genièr",
"timeslider.month.february": "Febrièr", "timeslider.month.february": "Febrièr",
@ -106,6 +110,7 @@
"timeslider.month.december": "Decembre", "timeslider.month.december": "Decembre",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anonim, other: autors anonims ]}", "timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anonim, other: autors anonims ]}",
"pad.savedrevs.marked": "Aquesta revision es ara marcada coma revision enregistrada", "pad.savedrevs.marked": "Aquesta revision es ara marcada coma revision enregistrada",
"pad.savedrevs.timeslider": "Podètz veire las revisions enregistradas en visitant lascensor temporal",
"pad.userlist.entername": "Entratz vòstre nom", "pad.userlist.entername": "Entratz vòstre nom",
"pad.userlist.unnamed": "sens nom", "pad.userlist.unnamed": "sens nom",
"pad.userlist.guest": "Convidat", "pad.userlist.guest": "Convidat",

View File

@ -8,25 +8,33 @@
"index.createOpenPad": "يا په همدې نوم يوه نوې ليکچه جوړول/پرانيستل:", "index.createOpenPad": "يا په همدې نوم يوه نوې ليکچه جوړول/پرانيستل:",
"pad.toolbar.bold.title": "زغرد (Ctrl-B)", "pad.toolbar.bold.title": "زغرد (Ctrl-B)",
"pad.toolbar.italic.title": "رېوند (Ctrl-I)", "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.undo.title": "ناکړل (Ctrl-Z)", "pad.toolbar.undo.title": "ناکړل (Ctrl-Z)",
"pad.toolbar.redo.title": "بياکړل (Ctrl-Y)", "pad.toolbar.redo.title": "بياکړل (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "د ليکوالۍ رنګونه سپينول", "pad.toolbar.clearAuthorship.title": "د ليکوالۍ رنگونه سپينول (Ctrl+Shift+C)",
"pad.toolbar.savedRevision.title": "مخکتنه خوندي کول", "pad.toolbar.savedRevision.title": "مخکتنه خوندي کول",
"pad.toolbar.settings.title": "امستنې", "pad.toolbar.settings.title": "امستنې",
"pad.colorpicker.save": "خوندي کول", "pad.colorpicker.save": "خوندي کول",
"pad.colorpicker.cancel": "ناگارل", "pad.colorpicker.cancel": "ناگارل",
"pad.loading": "برسېرېدنې کې دی...", "pad.loading": "رابرسېرېږي...",
"pad.passwordRequired": "دې ليکچې ته د لاسرسي لپاره تاسې يو پټنوم ته اړتيا لرۍ", "pad.passwordRequired": "دې ليکچې ته د لاسرسي لپاره تاسې يو پټنوم ته اړتيا لرۍ",
"pad.wrongPassword": "پټنوم مو سم نه و", "pad.wrongPassword": "پټنوم مو سم نه و",
"pad.settings.padSettings": "د ليکچې امستنې", "pad.settings.padSettings": "د ليکچې امستنې",
"pad.settings.myView": "زما کتنه", "pad.settings.myView": "زما کتنه",
"pad.settings.colorcheck": "د ليکوالۍ رنګونه", "pad.settings.stickychat": "تل په پردې بانډار کول",
"pad.settings.chatandusers": "کارنان او بانډار ښکاره کول",
"pad.settings.colorcheck": "د ليکوالۍ رنگونه",
"pad.settings.linenocheck": "د کرښو شمېرې",
"pad.settings.fontType": "ليکبڼې ډول:", "pad.settings.fontType": "ليکبڼې ډول:",
"pad.settings.fontType.normal": "نورمال", "pad.settings.fontType.normal": "نورمال",
"pad.settings.fontType.monospaced": "مونوسپېس", "pad.settings.fontType.monospaced": "مونوسپېس",
"pad.settings.globalView": "نړېواله ښکارېدنه", "pad.settings.globalView": "نړېواله ښکارېدنه",
"pad.settings.language": "ژبه:", "pad.settings.language": "ژبه:",
"pad.importExport.importSuccessful": "بريالی شو!", "pad.importExport.importSuccessful": "بريالی شو!",
"pad.importExport.exportetherpad": "اېترپډ",
"pad.importExport.exporthtml": "اچ ټي ام اېل", "pad.importExport.exporthtml": "اچ ټي ام اېل",
"pad.importExport.exportplain": "ساده متن", "pad.importExport.exportplain": "ساده متن",
"pad.importExport.exportword": "مايکروسافټ ورډ", "pad.importExport.exportword": "مايکروسافټ ورډ",
@ -66,5 +74,7 @@
"pad.userlist.guest": "مېلمه", "pad.userlist.guest": "مېلمه",
"pad.userlist.deny": "ردول", "pad.userlist.deny": "ردول",
"pad.userlist.approve": "منل", "pad.userlist.approve": "منل",
"pad.impexp.importbutton": "اوس واردول",
"pad.impexp.importing": "په واردولو کې دی...",
"pad.impexp.copypaste": "لطفاً لمېسل لېښل ترسره کړئ" "pad.impexp.copypaste": "لطفاً لمېسل لېښل ترسره کړئ"
} }

View File

@ -12,14 +12,15 @@
"Macofe", "Macofe",
"Rodrigo codignoli", "Rodrigo codignoli",
"Webysther", "Webysther",
"Fasouzafreitas" "Fasouzafreitas",
"Lpagliari"
] ]
}, },
"index.newPad": "Nova Nota", "index.newPad": "Nova Nota",
"index.createOpenPad": "ou criar-abrir uma Nota com o nome:", "index.createOpenPad": "ou criar-abrir uma Nota com o nome:",
"pad.toolbar.bold.title": "Negrito (Ctrl-B)", "pad.toolbar.bold.title": "Negrito (Ctrl-B)",
"pad.toolbar.italic.title": "Itálico (Ctrl-I)", "pad.toolbar.italic.title": "Itálico (Ctrl-I)",
"pad.toolbar.underline.title": "Sublinhar (Ctrl-U)", "pad.toolbar.underline.title": "Sublinhado (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Tachado (Ctrl+5)", "pad.toolbar.strikethrough.title": "Tachado (Ctrl+5)",
"pad.toolbar.ol.title": "Lista ordenada (Ctrl+Shift+N)", "pad.toolbar.ol.title": "Lista ordenada (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Lista não ordenada (Ctrl+Shift+L)", "pad.toolbar.ul.title": "Lista não ordenada (Ctrl+Shift+L)",
@ -43,8 +44,8 @@
"pad.wrongPassword": "Senha incorreta", "pad.wrongPassword": "Senha incorreta",
"pad.settings.padSettings": "Configurações da Nota", "pad.settings.padSettings": "Configurações da Nota",
"pad.settings.myView": "Minha Visão", "pad.settings.myView": "Minha Visão",
"pad.settings.stickychat": "Conversa sempre visível", "pad.settings.stickychat": "Bate-papo sempre visível",
"pad.settings.chatandusers": "Mostrar o chat e os usuários", "pad.settings.chatandusers": "Mostrar o bate-papo e os usuários",
"pad.settings.colorcheck": "Cores de autoria", "pad.settings.colorcheck": "Cores de autoria",
"pad.settings.linenocheck": "Números de linha", "pad.settings.linenocheck": "Números de linha",
"pad.settings.rtlcheck": "Ler conteúdo da direita para esquerda?", "pad.settings.rtlcheck": "Ler conteúdo da direita para esquerda?",
@ -56,7 +57,7 @@
"pad.importExport.import_export": "Importar/Exportar", "pad.importExport.import_export": "Importar/Exportar",
"pad.importExport.import": "Enviar um arquivo texto ou documento", "pad.importExport.import": "Enviar um arquivo texto ou documento",
"pad.importExport.importSuccessful": "Completo!", "pad.importExport.importSuccessful": "Completo!",
"pad.importExport.export": "Exportar a presente nota como:", "pad.importExport.export": "Exportar a nota atual como:",
"pad.importExport.exportetherpad": "Etherpad", "pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Texto puro", "pad.importExport.exportplain": "Texto puro",
@ -67,21 +68,21 @@
"pad.modals.connected": "Conectado.", "pad.modals.connected": "Conectado.",
"pad.modals.reconnecting": "Reconectando à sua nota...", "pad.modals.reconnecting": "Reconectando à sua nota...",
"pad.modals.forcereconnect": "Forçar reconexão", "pad.modals.forcereconnect": "Forçar reconexão",
"pad.modals.userdup": "Aberto noutra janela", "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.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.userdup.advice": "Reconectar para usar esta janela.",
"pad.modals.unauth": "Não autorizado", "pad.modals.unauth": "Não autorizado",
"pad.modals.unauth.explanation": "Suas permissões foram mudadas enquanto visualizava esta página. Tente reconectar.", "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.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.looping.cause": "Talvez você tenha conectado por um firewall ou proxy incompatível.",
"pad.modals.initsocketfail": "Servidor é inalcançá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.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.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.explanation": "O servidor não responde.",
"pad.modals.slowcommit.cause": "Isto pode ser por problemas com a conexão de rede.", "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.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.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.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.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": "Excluído.",
"pad.modals.deleted.explanation": "Esta nota foi removida.", "pad.modals.deleted.explanation": "Esta nota foi removida.",
@ -118,7 +119,7 @@
"timeslider.month.december": "Dezembro", "timeslider.month.december": "Dezembro",
"timeslider.unnamedauthors": "{{num}} {[plural(num) one: autor anônimo, other: autores anônimos ]}", "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.marked": "Esta revisão foi marcada como salva",
"pad.savedrevs.timeslider": "Pode consultar as revisões salvas visitando a linha do tempo", "pad.savedrevs.timeslider": "Você pode consultar as revisões salvas visitando a linha do tempo",
"pad.userlist.entername": "Insira o seu nome", "pad.userlist.entername": "Insira o seu nome",
"pad.userlist.unnamed": "Sem título", "pad.userlist.unnamed": "Sem título",
"pad.userlist.guest": "Convidado", "pad.userlist.guest": "Convidado",
@ -127,9 +128,9 @@
"pad.editbar.clearcolors": "Deseja limpar cores de autoria em todo o documento?", "pad.editbar.clearcolors": "Deseja limpar cores de autoria em todo o documento?",
"pad.impexp.importbutton": "Importar agora", "pad.impexp.importbutton": "Importar agora",
"pad.impexp.importing": "Importando...", "pad.impexp.importing": "Importando...",
"pad.impexp.confirmimport": "Importar um arquivo sobrescreverá o atual texto da nota. Tem certeza de que deseja prosseguir?", "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.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 este bloco de notas já tinha alterações, consulte como importar para um novo bloco de notas", "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.uploadFailed": "O envio falhou. Tente outra vez",
"pad.impexp.importfailed": "A importação falhou", "pad.impexp.importfailed": "A importação falhou",
"pad.impexp.copypaste": "Copie e cole", "pad.impexp.copypaste": "Copie e cole",

82
src/locales/ro.json Normal file
View File

@ -0,0 +1,82 @@
{
"@metadata": {
"authors": [
"Hedwig",
"ImGelu",
"Minisarm"
]
},
"index.newPad": "Pad nou",
"index.createOpenPad": "sau creează/deschide un Pad cu numele:",
"pad.toolbar.bold.title": "Aldin (Ctrl + B)",
"pad.toolbar.italic.title": "Cursiv (Ctrl + I)",
"pad.toolbar.underline.title": "Subliniază (Ctrl+U)",
"pad.toolbar.strikethrough.title": "Taie (Ctrl+5)",
"pad.toolbar.ol.title": "Listă ordonată (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Listă neordonată (Ctrl+Shift+L)",
"pad.toolbar.undo.title": "Anulează (Ctrl+Z)",
"pad.toolbar.savedRevision.title": "Salvează revizia",
"pad.toolbar.settings.title": "Setări",
"pad.colorpicker.save": "Salvează",
"pad.colorpicker.cancel": "Anulează",
"pad.loading": "Se încarcă...",
"pad.passwordRequired": "Ai nevoie de o parolă pentru a accesa acest pad",
"pad.permissionDenied": "Nu ai permisiunea să accesezi acest pad",
"pad.wrongPassword": "Parola ta este greșită",
"pad.settings.padSettings": "Setări pentru Pad",
"pad.settings.stickychat": "Chat-ul întotdeauna pe ecran",
"pad.settings.chatandusers": "Afișează Chat-ul și Utilizatorii",
"pad.settings.fontType": "Tipul fontului:",
"pad.settings.globalView": "Vedere generală",
"pad.settings.language": "Limbă:",
"pad.importExport.import": "Încarcă orice fișier text sau document",
"pad.importExport.importSuccessful": "Succes!",
"pad.importExport.export": "Exportă pad-ul curent ca:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Text brut",
"pad.importExport.exportword": "Microsoft Word",
"pad.importExport.exportpdf": "PDF",
"pad.importExport.exportopen": "ODF (Open Document Format)",
"pad.modals.connected": "Conectat.",
"pad.modals.reconnecting": "Se reconectează la pad-ul tău..",
"pad.modals.forcereconnect": "Forțează reconectarea",
"pad.modals.userdup.advice": "Reconectează pentru a folosi această fereastră în schimb",
"pad.modals.unauth": "Nu ești autorizat",
"pad.modals.initsocketfail": "Serverul nu este disponibil.",
"pad.modals.initsocketfail.explanation": "Nu s-a putut conecta la serverul de sincronizare.",
"pad.modals.slowcommit.explanation": "Serverul nu răspunde.",
"pad.modals.slowcommit.cause": "Aceasta poate fi cauzată de probleme cu conexiunea la rețea.",
"pad.modals.deleted": "Șters.",
"pad.modals.deleted.explanation": "Acest pad a fost șters.",
"pad.modals.disconnected": "Ai fost deconectat.",
"pad.share": "Distribuie acest pad",
"pad.share.readonly": "Doar în citire",
"pad.share.link": "Legătură",
"pad.share.emebdcode": "Încorporează URL-ul",
"pad.chat": "Chat",
"pad.chat.title": "Deschide chat-ul pentru acest pad.",
"pad.chat.loadmessages": "Încarcă mai multe mesaje",
"timeslider.toolbar.returnbutton": "Înapoi la pad",
"timeslider.toolbar.authors": "Aurori:",
"timeslider.toolbar.authorsList": "Niciun autor",
"timeslider.toolbar.exportlink.title": "Exportă",
"timeslider.exportCurrent": "Exportă versiunea curentă ca:",
"timeslider.version": "Versiunea {{version}}",
"timeslider.saved": "Salvat pe {{day}} {{month}} {{year}}",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "ianuarie",
"timeslider.month.february": "februarie",
"timeslider.month.march": "martie",
"timeslider.month.april": "aprilie",
"timeslider.month.may": "mai",
"timeslider.month.june": "iunie",
"timeslider.month.july": "iulie",
"timeslider.month.august": "august",
"timeslider.month.september": "septembrie",
"timeslider.month.october": "octombrie",
"timeslider.month.november": "noiembrie",
"timeslider.month.december": "decembrie",
"pad.userlist.entername": "Introdu numele tău",
"pad.userlist.unnamed": "fără nume"
}

View File

@ -30,12 +30,14 @@
"pad.colorpicker.save": "Сохранить", "pad.colorpicker.save": "Сохранить",
"pad.colorpicker.cancel": "Отмена", "pad.colorpicker.cancel": "Отмена",
"pad.loading": "Загрузка...", "pad.loading": "Загрузка...",
"pad.noCookie": "Куки не найдены. Пожалуйста, включите куки в вашем браузере!",
"pad.passwordRequired": "Вам нужен пароль для доступа", "pad.passwordRequired": "Вам нужен пароль для доступа",
"pad.permissionDenied": "У вас нет разрешения на доступ", "pad.permissionDenied": "У вас нет разрешения на доступ",
"pad.wrongPassword": "Неправильный пароль", "pad.wrongPassword": "Неправильный пароль",
"pad.settings.padSettings": "Настройки документа", "pad.settings.padSettings": "Настройки документа",
"pad.settings.myView": "Мой вид", "pad.settings.myView": "Мой вид",
"pad.settings.stickychat": "Всегда отображать чат", "pad.settings.stickychat": "Всегда отображать чат",
"pad.settings.chatandusers": "Показать чат и пользователей",
"pad.settings.colorcheck": "Цвета документа", "pad.settings.colorcheck": "Цвета документа",
"pad.settings.linenocheck": "Номера строк", "pad.settings.linenocheck": "Номера строк",
"pad.settings.rtlcheck": "Читать содержимое справа налево?", "pad.settings.rtlcheck": "Читать содержимое справа налево?",

View File

@ -2,16 +2,17 @@
"@metadata": { "@metadata": {
"authors": [ "authors": [
"Dbc334", "Dbc334",
"Mateju" "Mateju",
"Skalcaa"
] ]
}, },
"index.newPad": "Nov dokument", "index.newPad": "Nova Ploščica",
"index.createOpenPad": "ali pa odpri dokument z imenom:", "index.createOpenPad": "ali pa odpri dokument z imenom:",
"pad.toolbar.bold.title": "Krepko (Ctrl-B)", "pad.toolbar.bold.title": "Krepko (Ctrl-B)",
"pad.toolbar.italic.title": "Ležeče (Ctrl-I)", "pad.toolbar.italic.title": "Ležeče (Ctrl-I)",
"pad.toolbar.underline.title": "Podčrtano (Ctrl-U)", "pad.toolbar.underline.title": "Podčrtano (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Prečrtano (Ctrl+5)", "pad.toolbar.strikethrough.title": "Prečrtano (Ctrl+5)",
"pad.toolbar.ol.title": "Oštevilčen seznam (Ctrl+Shift+N)", "pad.toolbar.ol.title": "Urejen seznam (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Neurejen seznam (Ctrl+Shift+L)", "pad.toolbar.ul.title": "Neurejen seznam (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "Zamik desno (TAB)", "pad.toolbar.indent.title": "Zamik desno (TAB)",
"pad.toolbar.unindent.title": "Zamik levo (Shift+TAB)", "pad.toolbar.unindent.title": "Zamik levo (Shift+TAB)",
@ -27,12 +28,14 @@
"pad.colorpicker.save": "Shrani", "pad.colorpicker.save": "Shrani",
"pad.colorpicker.cancel": "Prekliči", "pad.colorpicker.cancel": "Prekliči",
"pad.loading": "Nalaganje ...", "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.passwordRequired": "Za dostop do dokumenta je zahtevano geslo.",
"pad.permissionDenied": "Za dostop do dokumenta so zahtevana posebna dovoljenja.", "pad.permissionDenied": "Za dostop do dokumenta so zahtevana posebna dovoljenja.",
"pad.wrongPassword": "Vpisano geslo je napačno.", "pad.wrongPassword": "Vpisano geslo je napačno.",
"pad.settings.padSettings": "Nastavitve dokumenta", "pad.settings.padSettings": "Nastavitve dokumenta",
"pad.settings.myView": "Pogled", "pad.settings.myView": "Pogled",
"pad.settings.stickychat": "Vsebina klepeta je vedno na zaslonu.", "pad.settings.stickychat": "Vsebina klepeta je vedno na zaslonu.",
"pad.settings.chatandusers": "Prikaži klepet in uporabnike",
"pad.settings.colorcheck": "Barve avtorstva", "pad.settings.colorcheck": "Barve avtorstva",
"pad.settings.linenocheck": "Številke vrstic", "pad.settings.linenocheck": "Številke vrstic",
"pad.settings.rtlcheck": "Ali naj se vsebina prebira od desne proti levi?", "pad.settings.rtlcheck": "Ali naj se vsebina prebira od desne proti levi?",
@ -45,6 +48,7 @@
"pad.importExport.import": "Naloži katerokoli besedilno datoteko ali dokument.", "pad.importExport.import": "Naloži katerokoli besedilno datoteko ali dokument.",
"pad.importExport.importSuccessful": "Opravilo je uspešno končano!", "pad.importExport.importSuccessful": "Opravilo je uspešno končano!",
"pad.importExport.export": "Izvozi trenutni dokument kot:", "pad.importExport.export": "Izvozi trenutni dokument kot:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML (oblikovano besedilo)", "pad.importExport.exporthtml": "HTML (oblikovano besedilo)",
"pad.importExport.exportplain": "TXT (neoblikovano besedilo)", "pad.importExport.exportplain": "TXT (neoblikovano besedilo)",
"pad.importExport.exportword": "DOC (zapis Microsoft Word)", "pad.importExport.exportword": "DOC (zapis Microsoft Word)",
@ -105,6 +109,7 @@
"timeslider.month.december": "December", "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 ]}", "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.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.entername": "Vpišite ime",
"pad.userlist.unnamed": "neimenovana oseba", "pad.userlist.unnamed": "neimenovana oseba",
"pad.userlist.guest": "Gost", "pad.userlist.guest": "Gost",
@ -115,6 +120,7 @@
"pad.impexp.importing": "Poteka uvažanje ...", "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.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.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.uploadFailed": "Nalaganje je spodletelo, poskusite znova.",
"pad.impexp.importfailed": "Uvoz je spodletel.", "pad.impexp.importfailed": "Uvoz je spodletel.",
"pad.impexp.copypaste": "Vsebino kopirajte in prilepite.", "pad.impexp.copypaste": "Vsebino kopirajte in prilepite.",

View File

@ -94,6 +94,9 @@
"timeslider.exportCurrent": "Exportera aktuell version som:", "timeslider.exportCurrent": "Exportera aktuell version som:",
"timeslider.version": "Version {{version}}", "timeslider.version": "Version {{version}}",
"timeslider.saved": "Sparades den {{day}} {{month}} {{year}}", "timeslider.saved": "Sparades den {{day}} {{month}} {{year}}",
"timeslider.playPause": "Spela upp/pausa blockets innehåll",
"timeslider.backRevision": "Gå tillbaka en version av detta block",
"timeslider.forwardRevision": "Gå framåt en version av detta block",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "januari", "timeslider.month.january": "januari",
"timeslider.month.february": "februari", "timeslider.month.february": "februari",

View File

@ -37,6 +37,7 @@
"pad.settings.padSettings": "Bloknot Ayarları", "pad.settings.padSettings": "Bloknot Ayarları",
"pad.settings.myView": "Görünümüm", "pad.settings.myView": "Görünümüm",
"pad.settings.stickychat": "Ekranda her zaman sohbet edin", "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.colorcheck": "Yazarlık renkleri",
"pad.settings.linenocheck": "Satır numaraları", "pad.settings.linenocheck": "Satır numaraları",
"pad.settings.rtlcheck": "İçerik sağdan sola doğru okunsun mu?", "pad.settings.rtlcheck": "İçerik sağdan sola doğru okunsun mu?",
@ -95,6 +96,9 @@
"timeslider.exportCurrent": "Mevcut sürümü şu olarak dışa aktar:", "timeslider.exportCurrent": "Mevcut sürümü şu olarak dışa aktar:",
"timeslider.version": "{{version}} sürümü", "timeslider.version": "{{version}} sürümü",
"timeslider.saved": "{{day}} {{month}} {{year}} tarihinde kaydedildi", "timeslider.saved": "{{day}} {{month}} {{year}} tarihinde kaydedildi",
"timeslider.playPause": "Bloknot İçeriğini Oynat / Durdur",
"timeslider.backRevision": "Bu bloknottaki bir revizyona geri git",
"timeslider.forwardRevision": "Bu bloknatta sonraki revizyona git",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}", "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}.{{minutes}}.{{seconds}}",
"timeslider.month.january": "Ocak", "timeslider.month.january": "Ocak",
"timeslider.month.february": "Şubat", "timeslider.month.february": "Şubat",
@ -110,6 +114,7 @@
"timeslider.month.december": "Aralık", "timeslider.month.december": "Aralık",
"timeslider.unnamedauthors": "{{num}} adsız {[plural(num) one: yazar, other: yazar ]}", "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.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.entername": "Adınızı girin",
"pad.userlist.unnamed": "Adlandırılmamış", "pad.userlist.unnamed": "Adlandırılmamış",
"pad.userlist.guest": "Misafir", "pad.userlist.guest": "Misafir",
@ -120,6 +125,7 @@
"pad.impexp.importing": "İçe aktarıyor...", "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.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.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.padHasData": "Biz bu dosyayı içe aktaramadık çünkü bu Bloknot zaten değiştirilmiş, lütfen yeni bir bloknot içe aktarın.",
"pad.impexp.uploadFailed": "Yükleme başarısız, lütfen tekrar deneyin", "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.importfailed": "İçe aktarım başarısız oldu",
"pad.impexp.copypaste": "Lütfen kopyala yapıştır yapın", "pad.impexp.copypaste": "Lütfen kopyala yapıştır yapın",

View File

@ -5,7 +5,8 @@
"Base", "Base",
"Olvin", "Olvin",
"Steve.rusyn", "Steve.rusyn",
"SteveR" "SteveR",
"Lxlalexlxl"
] ]
}, },
"index.newPad": "Створити", "index.newPad": "Створити",
@ -13,14 +14,14 @@
"pad.toolbar.bold.title": "Напівжирний (Ctrl-B)", "pad.toolbar.bold.title": "Напівжирний (Ctrl-B)",
"pad.toolbar.italic.title": "Курсив (Ctrl-I)", "pad.toolbar.italic.title": "Курсив (Ctrl-I)",
"pad.toolbar.underline.title": "Підкреслення (Ctrl-U)", "pad.toolbar.underline.title": "Підкреслення (Ctrl-U)",
"pad.toolbar.strikethrough.title": "Закреслення", "pad.toolbar.strikethrough.title": "Закреслення (Ctrl+5)",
"pad.toolbar.ol.title": "Упорядкований список", "pad.toolbar.ol.title": "Упорядкований список (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Неупорядкований список", "pad.toolbar.ul.title": "Неупорядкований список (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "Відступ (TAB)", "pad.toolbar.indent.title": "Відступ (TAB)",
"pad.toolbar.unindent.title": "Виступ (Shift+TAB)", "pad.toolbar.unindent.title": "Виступ (Shift+TAB)",
"pad.toolbar.undo.title": "Скасувати (Ctrl-Z)", "pad.toolbar.undo.title": "Скасувати (Ctrl-Z)",
"pad.toolbar.redo.title": "Повторити (Ctrl-Y)", "pad.toolbar.redo.title": "Повторити (Ctrl-Y)",
"pad.toolbar.clearAuthorship.title": "Очистити кольори документу", "pad.toolbar.clearAuthorship.title": "Очистити кольори документу (Ctrl+Shift+C)",
"pad.toolbar.import_export.title": "Імпорт/Експорт з використанням різних форматів файлів", "pad.toolbar.import_export.title": "Імпорт/Експорт з використанням різних форматів файлів",
"pad.toolbar.timeslider.title": "Шкала часу", "pad.toolbar.timeslider.title": "Шкала часу",
"pad.toolbar.savedRevision.title": "Зберегти версію", "pad.toolbar.savedRevision.title": "Зберегти версію",
@ -30,12 +31,14 @@
"pad.colorpicker.save": "Зберегти", "pad.colorpicker.save": "Зберегти",
"pad.colorpicker.cancel": "Скасувати", "pad.colorpicker.cancel": "Скасувати",
"pad.loading": "Завантаження…", "pad.loading": "Завантаження…",
"pad.noCookie": "Реп'яшки не знайдено. Будь-ласка, увімкніть реп'яшки у вашому браузері!",
"pad.passwordRequired": "Вам необхідний пароль для доступу до цього документу", "pad.passwordRequired": "Вам необхідний пароль для доступу до цього документу",
"pad.permissionDenied": "Ви не має дозволу для доступу до цього документу", "pad.permissionDenied": "Ви не має дозволу для доступу до цього документу",
"pad.wrongPassword": "Неправильний пароль", "pad.wrongPassword": "Неправильний пароль",
"pad.settings.padSettings": "Налаштування документу", "pad.settings.padSettings": "Налаштування документу",
"pad.settings.myView": "Мій Вигляд", "pad.settings.myView": "Мій Вигляд",
"pad.settings.stickychat": "Завжди відображувати чат", "pad.settings.stickychat": "Завжди відображувати чат",
"pad.settings.chatandusers": "Показати чат і користувачів",
"pad.settings.colorcheck": "Кольори документу", "pad.settings.colorcheck": "Кольори документу",
"pad.settings.linenocheck": "Номери рядків", "pad.settings.linenocheck": "Номери рядків",
"pad.settings.rtlcheck": "Читати вміст з права на ліво?", "pad.settings.rtlcheck": "Читати вміст з права на ліво?",
@ -48,6 +51,7 @@
"pad.importExport.import": "Завантажити будь-який текстовий файл або документ", "pad.importExport.import": "Завантажити будь-який текстовий файл або документ",
"pad.importExport.importSuccessful": "Успішно!", "pad.importExport.importSuccessful": "Успішно!",
"pad.importExport.export": "Експортувати поточний документ як:", "pad.importExport.export": "Експортувати поточний документ як:",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "Звичайний текст", "pad.importExport.exportplain": "Звичайний текст",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",

View File

@ -10,20 +10,21 @@
"Shizhao", "Shizhao",
"Yfdyh000", "Yfdyh000",
"乌拉跨氪", "乌拉跨氪",
"燃玉" "燃玉",
"JuneAugust"
] ]
}, },
"index.newPad": "新记事本", "index.newPad": "新记事本",
"index.createOpenPad": "或者创建/打开带名字的记事本:", "index.createOpenPad": "或者创建/打开带名字的记事本:",
"pad.toolbar.bold.title": "粗体Ctrl-B", "pad.toolbar.bold.title": "粗体Ctrl-B",
"pad.toolbar.italic.title": "斜体 (Ctrl-I)", "pad.toolbar.italic.title": "斜体Ctrl-I",
"pad.toolbar.underline.title": "下划线Ctrl-U", "pad.toolbar.underline.title": "下划线Ctrl-U",
"pad.toolbar.strikethrough.title": "删除线Ctrl+5", "pad.toolbar.strikethrough.title": "删除线Ctrl+5",
"pad.toolbar.ol.title": "有序列表Ctrl+Shift+N", "pad.toolbar.ol.title": "有序列表Ctrl+Shift+N",
"pad.toolbar.ul.title": "无序列表Ctrl+Shift+L", "pad.toolbar.ul.title": "无序列表Ctrl+Shift+L",
"pad.toolbar.indent.title": "增加缩进TAB", "pad.toolbar.indent.title": "增加缩进TAB",
"pad.toolbar.unindent.title": "减少缩进Shift+TAB", "pad.toolbar.unindent.title": "减少缩进Shift+TAB",
"pad.toolbar.undo.title": "撤消 (Ctrl-Z)", "pad.toolbar.undo.title": "撤消Ctrl-Z",
"pad.toolbar.redo.title": "重做Ctrl+Y", "pad.toolbar.redo.title": "重做Ctrl+Y",
"pad.toolbar.clearAuthorship.title": "清除作者颜色Ctrl+Shift+C", "pad.toolbar.clearAuthorship.title": "清除作者颜色Ctrl+Shift+C",
"pad.toolbar.import_export.title": "从不同的文件格式导入/导出", "pad.toolbar.import_export.title": "从不同的文件格式导入/导出",
@ -79,11 +80,11 @@
"pad.modals.slowcommit.cause": "这可能是由于网络连接问题。", "pad.modals.slowcommit.cause": "这可能是由于网络连接问题。",
"pad.modals.badChangeset.explanation": "您的一个编辑被同步服务器分类为非法。", "pad.modals.badChangeset.explanation": "您的一个编辑被同步服务器分类为非法。",
"pad.modals.badChangeset.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。如果您认为这是错误,请联系服务管理员。要继续编辑,请尝试重新连接。", "pad.modals.badChangeset.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。如果您认为这是错误,请联系服务管理员。要继续编辑,请尝试重新连接。",
"pad.modals.corruptPad.explanation": "您试图连接的平板已损坏。", "pad.modals.corruptPad.explanation": "您试图连接的记事本已损坏。",
"pad.modals.corruptPad.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。请联系服务管理员。", "pad.modals.corruptPad.cause": "这可能是因为服务器配置的错误或者其他未预料到的行为。请联系服务管理员。",
"pad.modals.deleted": "已刪除。", "pad.modals.deleted": "已刪除。",
"pad.modals.deleted.explanation": "此记事本已被移除。", "pad.modals.deleted.explanation": "此记事本已被移除。",
"pad.modals.disconnected": "已断开连接。", "pad.modals.disconnected": "已断开连接。",
"pad.modals.disconnected.explanation": "到服务器的连接已丢失", "pad.modals.disconnected.explanation": "到服务器的连接已丢失",
"pad.modals.disconnected.cause": "服务器可能无法使用。若此情况持续发生,请通知服务器管理员。", "pad.modals.disconnected.cause": "服务器可能无法使用。若此情况持续发生,请通知服务器管理员。",
"pad.share": "分享此记事本", "pad.share": "分享此记事本",
@ -101,19 +102,22 @@
"timeslider.exportCurrent": "当前版本导出为:", "timeslider.exportCurrent": "当前版本导出为:",
"timeslider.version": "版本 {{version}}", "timeslider.version": "版本 {{version}}",
"timeslider.saved": "在{{year}}年{{month}}{{day}}日保存", "timeslider.saved": "在{{year}}年{{month}}{{day}}日保存",
"timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}时:{{minutes}}分:{{seconds}}秒", "timeslider.playPause": "回放 / 暂停Pad内容",
"timeslider.backRevision": "返回此Pad的一次修订",
"timeslider.forwardRevision": "前往此Pad的一次修订",
"timeslider.dateformat": "{{year}}年{{month}}月{{day}}日 {{hours}}{{minutes}}{{seconds}}",
"timeslider.month.january": "1月", "timeslider.month.january": "1月",
"timeslider.month.february": "2月", "timeslider.month.february": "2月",
"timeslider.month.march": "三月", "timeslider.month.march": "3月",
"timeslider.month.april": "月", "timeslider.month.april": "4月",
"timeslider.month.may": "月", "timeslider.month.may": "5月",
"timeslider.month.june": "月", "timeslider.month.june": "6月",
"timeslider.month.july": "月", "timeslider.month.july": "7月",
"timeslider.month.august": "月", "timeslider.month.august": "8月",
"timeslider.month.september": "月", "timeslider.month.september": "9月",
"timeslider.month.october": "月", "timeslider.month.october": "10月",
"timeslider.month.november": "十一月", "timeslider.month.november": "11月",
"timeslider.month.december": "十二月", "timeslider.month.december": "12月",
"timeslider.unnamedauthors": "{{num}}个匿名作者", "timeslider.unnamedauthors": "{{num}}个匿名作者",
"pad.savedrevs.marked": "这一修订现在被标记为已保存的修订版本", "pad.savedrevs.marked": "这一修订现在被标记为已保存的修订版本",
"pad.savedrevs.timeslider": "您可以使用时间滑块查阅已保存的版本", "pad.savedrevs.timeslider": "您可以使用时间滑块查阅已保存的版本",
@ -126,8 +130,8 @@
"pad.impexp.importbutton": "现在导入", "pad.impexp.importbutton": "现在导入",
"pad.impexp.importing": "正在导入...", "pad.impexp.importing": "正在导入...",
"pad.impexp.confirmimport": "导入的文件将覆盖记事本的当前文本。你确定要继续吗?", "pad.impexp.confirmimport": "导入的文件将覆盖记事本的当前文本。你确定要继续吗?",
"pad.impexp.convertFailed": "我们无法导入此文档。请使用他文档格式或手动复制贴上。", "pad.impexp.convertFailed": "我们无法导入此文档。请使用他文档格式或手动复制贴上。",
"pad.impexp.padHasData": "我们无法导入此文件,因为此记事本已经变更,请导入到一个新的记事本", "pad.impexp.padHasData": "我们无法导入此文件,因为此记事本已经变更,请导入到一个新的记事本",
"pad.impexp.uploadFailed": "上载失败,请重试", "pad.impexp.uploadFailed": "上载失败,请重试",
"pad.impexp.importfailed": "导入失败", "pad.impexp.importfailed": "导入失败",
"pad.impexp.copypaste": "请复制粘贴", "pad.impexp.copypaste": "请复制粘贴",

View File

@ -6,7 +6,8 @@
"Shangkuanlc", "Shangkuanlc",
"Shirayuki", "Shirayuki",
"Simon Shek", "Simon Shek",
"LNDDYL" "LNDDYL",
"Wehwei"
] ]
}, },
"index.newPad": "新Pad", "index.newPad": "新Pad",
@ -21,22 +22,24 @@
"pad.toolbar.unindent.title": "凸排Shift+TAB", "pad.toolbar.unindent.title": "凸排Shift+TAB",
"pad.toolbar.undo.title": "撤銷Ctrl-Z", "pad.toolbar.undo.title": "撤銷Ctrl-Z",
"pad.toolbar.redo.title": "重做Ctrl-Y", "pad.toolbar.redo.title": "重做Ctrl-Y",
"pad.toolbar.clearAuthorship.title": "清除協作者顏色區別", "pad.toolbar.clearAuthorship.title": "清除協作者顏色區別 (Ctrl+Shift+C)",
"pad.toolbar.import_export.title": "以其他檔案格式匯入/匯出", "pad.toolbar.import_export.title": "以其他檔案格式匯入/匯出",
"pad.toolbar.timeslider.title": "時間軸", "pad.toolbar.timeslider.title": "時間軸",
"pad.toolbar.savedRevision.title": "儲存修訂", "pad.toolbar.savedRevision.title": "儲存修訂",
"pad.toolbar.settings.title": "設定", "pad.toolbar.settings.title": "設定",
"pad.toolbar.embed.title": "分享和嵌入此pad", "pad.toolbar.embed.title": "分享和嵌入此pad",
"pad.toolbar.showusers.title": "顯示此pad的用戶", "pad.toolbar.showusers.title": "顯示此 pad 的使用者",
"pad.colorpicker.save": "儲存", "pad.colorpicker.save": "儲存",
"pad.colorpicker.cancel": "取消", "pad.colorpicker.cancel": "取消",
"pad.loading": "載入中...", "pad.loading": "載入中...",
"pad.noCookie": "找不到 Cookie。請讓你的瀏覽器允許 Cookie",
"pad.passwordRequired": "您需要密碼才能訪問這個pad", "pad.passwordRequired": "您需要密碼才能訪問這個pad",
"pad.permissionDenied": "你沒有訪問這個pad的權限", "pad.permissionDenied": "你沒有訪問這個pad的權限",
"pad.wrongPassword": "密碼錯誤", "pad.wrongPassword": "密碼錯誤",
"pad.settings.padSettings": "Pad設定", "pad.settings.padSettings": "Pad設定",
"pad.settings.myView": "我的視窗", "pad.settings.myView": "我的視窗",
"pad.settings.stickychat": "永遠在屏幕上顯示聊天", "pad.settings.stickychat": "永遠在屏幕上顯示聊天",
"pad.settings.chatandusers": "顯示聊天與使用者",
"pad.settings.colorcheck": "協作者顏色", "pad.settings.colorcheck": "協作者顏色",
"pad.settings.linenocheck": "行號", "pad.settings.linenocheck": "行號",
"pad.settings.rtlcheck": "從右至左讀取內容?", "pad.settings.rtlcheck": "從右至左讀取內容?",
@ -49,6 +52,7 @@
"pad.importExport.import": "上載任何文字檔或文件", "pad.importExport.import": "上載任何文字檔或文件",
"pad.importExport.importSuccessful": "完成!", "pad.importExport.importSuccessful": "完成!",
"pad.importExport.export": "匯出當前pad為", "pad.importExport.export": "匯出當前pad為",
"pad.importExport.exportetherpad": "Etherpad",
"pad.importExport.exporthtml": "HTML", "pad.importExport.exporthtml": "HTML",
"pad.importExport.exportplain": "純文字", "pad.importExport.exportplain": "純文字",
"pad.importExport.exportword": "Microsoft Word", "pad.importExport.exportword": "Microsoft Word",

View File

@ -105,9 +105,9 @@ Pad.prototype.appendRevision = function appendRevision(aChangeset, author) {
authorManager.addPad(author, this.id); authorManager.addPad(author, this.id);
if (this.head == 0) { if (this.head == 0) {
hooks.callAll("padCreate", {'pad':this}); hooks.callAll("padCreate", {'pad':this, 'author': author});
} else { } else {
hooks.callAll("padUpdate", {'pad':this}); hooks.callAll("padUpdate", {'pad':this, 'author': author});
} }
}; };
@ -290,7 +290,14 @@ Pad.prototype.setText = function setText(newText) {
var oldText = this.text(); var oldText = this.text();
//create the changeset //create the changeset
var changeset = Changeset.makeSplice(oldText, 0, oldText.length-1, newText); // We want to ensure the pad still ends with a \n, but otherwise keep
// getText() and setText() consistent.
var changeset;
if (newText[newText.length - 1] == '\n') {
changeset = Changeset.makeSplice(oldText, 0, oldText.length, newText);
} else {
changeset = Changeset.makeSplice(oldText, 0, oldText.length-1, newText);
}
//append the changeset //append the changeset
this.appendRevision(changeset); this.appendRevision(changeset);

View File

@ -28,6 +28,7 @@ var fs = require("fs");
var settings = require('../utils/Settings'); var settings = require('../utils/Settings');
var os = require('os'); var os = require('os');
var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks"); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks");
var TidyHtml = require('../utils/TidyHtml');
//load abiword only if its enabled //load abiword only if its enabled
if(settings.abiword != null) if(settings.abiword != null)
@ -35,28 +36,28 @@ if(settings.abiword != null)
var tempDirectory = "/tmp"; var tempDirectory = "/tmp";
//tempDirectory changes if the operating system is windows //tempDirectory changes if the operating system is windows
if(os.type().indexOf("Windows") > -1) if(os.type().indexOf("Windows") > -1)
{ {
tempDirectory = process.env.TEMP; tempDirectory = process.env.TEMP;
} }
/** /**
* do a requested export * do a requested export
*/ */
exports.doExport = function(req, res, padId, type) exports.doExport = function(req, res, padId, type)
{ {
var fileName = padId; var fileName = padId;
// allow fileName to be overwritten by a hook, the type type is kept static for security reasons // allow fileName to be overwritten by a hook, the type type is kept static for security reasons
hooks.aCallFirst("exportFileName", padId, hooks.aCallFirst("exportFileName", padId,
function(err, hookFileName){ function(err, hookFileName){
// if fileName is set then set it to the padId, note that fileName is returned as an array. // if fileName is set then set it to the padId, note that fileName is returned as an array.
if(hookFileName.length) fileName = hookFileName; if(hookFileName.length) fileName = hookFileName;
//tell the browser that this is a downloadable file //tell the browser that this is a downloadable file
res.attachment(fileName + "." + type); res.attachment(fileName + "." + type);
//if this is a plain text export, we can do this directly //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 // We have to over engineer this because tabs are stored as attributes and not plain text
if(type == "etherpad"){ if(type == "etherpad"){
@ -72,7 +73,7 @@ exports.doExport = function(req, res, padId, type)
var txt; var txt;
var randNum; var randNum;
var srcFile, destFile; var srcFile, destFile;
async.series([ async.series([
//render the txt document //render the txt document
function(callback) function(callback)
@ -96,7 +97,7 @@ exports.doExport = function(req, res, padId, type)
{ {
//ensure html can be collected by the garbage collector //ensure html can be collected by the garbage collector
txt = null; txt = null;
destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type; destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type;
abiword.convertFile(srcFile, destFile, type, callback); abiword.convertFile(srcFile, destFile, type, callback);
}, },
@ -140,7 +141,7 @@ exports.doExport = function(req, res, padId, type)
var html; var html;
var randNum; var randNum;
var srcFile, destFile; var srcFile, destFile;
async.series([ async.series([
//render the html document //render the html document
function(callback) function(callback)
@ -150,7 +151,7 @@ exports.doExport = function(req, res, padId, type)
if(ERR(err, callback)) return; if(ERR(err, callback)) return;
html = _html; html = _html;
callback(); callback();
}); });
}, },
//decide what to do with the html export //decide what to do with the html export
function(callback) function(callback)
@ -162,22 +163,29 @@ exports.doExport = function(req, res, padId, type)
hooks.aCallFirst("exportHTMLSend", html, function(err, newHTML){ hooks.aCallFirst("exportHTMLSend", html, function(err, newHTML){
if(newHTML.length) html = newHTML; if(newHTML.length) html = newHTML;
res.send(html); res.send(html);
callback("stop"); callback("stop");
}); });
} }
else //write the html export to a file else //write the html export to a file
{ {
randNum = Math.floor(Math.random()*0xFFFFFFFF); randNum = Math.floor(Math.random()*0xFFFFFFFF);
srcFile = tempDirectory + "/etherpad_export_" + randNum + ".html"; srcFile = tempDirectory + "/etherpad_export_" + randNum + ".html";
fs.writeFile(srcFile, html, callback); fs.writeFile(srcFile, html, callback);
} }
}, },
//send the convert job to abiword
// Tidy up the exported HTML
function(callback) function(callback)
{ {
//ensure html can be collected by the garbage collector //ensure html can be collected by the garbage collector
html = null; html = null;
TidyHtml.tidy(srcFile, callback);
},
//send the convert job to abiword
function(callback)
{
destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type; destFile = tempDirectory + "/etherpad_export_" + randNum + "." + type;
abiword.convertFile(srcFile, destFile, type, callback); abiword.convertFile(srcFile, destFile, type, callback);
}, },
@ -199,7 +207,7 @@ exports.doExport = function(req, res, padId, type)
//100ms delay to accomidate for slow windows fs //100ms delay to accomidate for slow windows fs
if(os.type().indexOf("Windows") > -1) if(os.type().indexOf("Windows") > -1)
{ {
setTimeout(function() setTimeout(function()
{ {
fs.unlink(destFile, callback); fs.unlink(destFile, callback);
}, 100); }, 100);

View File

@ -228,7 +228,7 @@ exports.doImport = function(req, res, padId)
function(callback) { function(callback) {
if(!directDatabaseAccess){ if(!directDatabaseAccess){
var fileEnding = path.extname(srcFile).toLowerCase(); var fileEnding = path.extname(srcFile).toLowerCase();
if (abiword || fileEnding == ".htm" || fileEnding == ".html") { if (importHandledByPlugin || abiword || fileEnding == ".htm" || fileEnding == ".html") {
importHtml.setPadHTML(pad, text, function(e){ importHtml.setPadHTML(pad, text, function(e){
if(e) apiLogger.warn("Error importing, possibly caused by malformed HTML"); if(e) apiLogger.warn("Error importing, possibly caused by malformed HTML");
}); });

View File

@ -190,6 +190,16 @@ exports.handleMessage = function(client, message)
} }
var handleMessageHook = function(callback){ var handleMessageHook = function(callback){
// Allow plugins to bypass the readonly message blocker
hooks.aCallAll("handleMessageSecurity", { client: client, message: message }, function ( err, messages ) {
if(ERR(err, callback)) return;
_.each(messages, function(newMessage){
if ( newMessage === true ) {
thisSession.readonly = false;
}
});
});
var dropMessage = false; var dropMessage = false;
// Call handleMessage hook. If a plugin returns null, the message will be dropped. Note that for all messages // Call handleMessage hook. If a plugin returns null, the message will be dropped. Note that for all messages
// handleMessage will be called, even if the client is not authorized // handleMessage will be called, even if the client is not authorized
@ -204,6 +214,7 @@ exports.handleMessage = function(client, message)
// If no plugins explicitly told us to drop the message, its ok to proceed // If no plugins explicitly told us to drop the message, its ok to proceed
if(!dropMessage){ callback() }; if(!dropMessage){ callback() };
}); });
} }
var finalHandler = function () { var finalHandler = function () {
@ -533,14 +544,22 @@ function handleUserInfoUpdate(client, message)
return; return;
} }
// Check that we have a valid session and author to update.
var session = sessioninfos[client.id];
if(!session || !session.author || !session.padId)
{
messageLogger.warn("Dropped message, USERINFO_UPDATE Session not ready." + message.data);
return;
}
//Find out the author name of this session //Find out the author name of this session
var author = sessioninfos[client.id].author; var author = session.author;
//Tell the authorManager about the new attributes //Tell the authorManager about the new attributes
authorManager.setAuthorColorId(author, message.data.userInfo.colorId); authorManager.setAuthorColorId(author, message.data.userInfo.colorId);
authorManager.setAuthorName(author, message.data.userInfo.name); authorManager.setAuthorName(author, message.data.userInfo.name);
var padId = sessioninfos[client.id].padId; var padId = session.padId;
var infoMsg = { var infoMsg = {
type: "COLLABROOM", type: "COLLABROOM",
@ -762,8 +781,9 @@ function handleUserChanges(data, cb)
} }
// Make sure the pad always ends with an empty line. // Make sure the pad always ends with an empty line.
if (pad.text().lastIndexOf("\n\n") != pad.text().length-2) { if (pad.text().lastIndexOf("\n") != pad.text().length-1) {
var nlChangeset = Changeset.makeSplice(pad.text(), pad.text().length-1, 0, "\n"); var nlChangeset = Changeset.makeSplice(pad.text(), pad.text().length-1,
0, "\n");
pad.appendRevision(nlChangeset); pad.appendRevision(nlChangeset);
} }

View File

@ -46,6 +46,13 @@ exports.restartServer = function () {
key: fs.readFileSync( settings.ssl.key ), key: fs.readFileSync( settings.ssl.key ),
cert: fs.readFileSync( settings.ssl.cert ) cert: fs.readFileSync( settings.ssl.cert )
}; };
if (settings.ssl.ca) {
options.ca = [];
for(var i = 0; i < settings.ssl.ca.length; i++) {
var caFileName = settings.ssl.ca[i];
options.ca.push(fs.readFileSync(caFileName));
}
}
var https = require('https'); var https = require('https');
server = https.createServer(options, app); server = https.createServer(options, app);
@ -62,6 +69,9 @@ exports.restartServer = function () {
res.header("Strict-Transport-Security", "max-age=31536000; includeSubDomains"); res.header("Strict-Transport-Security", "max-age=31536000; includeSubDomains");
} }
// Stop IE going into compatability mode
// https://github.com/ether/etherpad-lite/issues/2547
res.header("X-UA-Compatible", "IE=Edge,chrome=1");
res.header("Server", serverName); res.header("Server", serverName);
next(); next();
}); });

View File

@ -33,13 +33,18 @@ exports.expressCreateServer = function (hook_name, args, cb) {
//serve pad.html under /p //serve pad.html under /p
args.app.get('/p/:pad', function(req, res, next) args.app.get('/p/:pad', function(req, res, next)
{ {
// The below might break for pads being rewritten
var isReadOnly = req.url.indexOf("/p/r.") === 0;
hooks.callAll("padInitToolbar", { hooks.callAll("padInitToolbar", {
toolbar: toolbar toolbar: toolbar,
isReadOnly: isReadOnly
}); });
res.send(eejs.require("ep_etherpad-lite/templates/pad.html", { res.send(eejs.require("ep_etherpad-lite/templates/pad.html", {
req: req, req: req,
toolbar: toolbar toolbar: toolbar,
isReadOnly: isReadOnly
})); }));
}); });

View File

@ -6,6 +6,7 @@ var hooks = require('ep_etherpad-lite/static/js/pluginfw/hooks');
var ueberStore = require('../../db/SessionStore'); 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 sessionModule = require('express-session');
var cookieParser = require('cookie-parser');
//checks for basic http auth //checks for basic http auth
exports.basicAuth = function (req, res, next) { exports.basicAuth = function (req, res, next) {
@ -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. Note that the process could stop already in step 3 with a redirect to login page.
*/ */
authorize(function (ok) { authorize(function (ok) {
if (ok) return next(); if (ok) return next();
authenticate(function (ok) { authenticate(function (ok) {
@ -121,6 +122,8 @@ exports.expressConfigure = function (hook_name, args, cb) {
args.app.sessionStore = exports.sessionStore; args.app.sessionStore = exports.sessionStore;
args.app.use(sessionModule({secret: exports.secret, store: args.app.sessionStore, resave: true, saveUninitialized: true, name: '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); args.app.use(exports.basicAuth);
} }

View File

@ -3,10 +3,6 @@ var securityManager = require('./db/SecurityManager');
//checks for padAccess //checks for padAccess
module.exports = function (req, res, callback) { 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) { securityManager.checkAccess(req.params.pad, req.cookies.sessionID, req.cookies.token, req.cookies.password, function(err, accessObj) {
if(ERR(err, callback)) return; if(ERR(err, callback)) return;

View File

@ -67,7 +67,7 @@ async.waterfall([
}, },
function (callback) { function (callback) {
console.info("Installed plugins: " + plugins.formatPlugins()); console.info("Installed plugins: " + plugins.formatPluginsWithVersion());
console.debug("Installed parts:\n" + plugins.formatParts()); console.debug("Installed parts:\n" + plugins.formatParts());
console.debug("Installed hooks:\n" + plugins.formatHooks()); console.debug("Installed hooks:\n" + plugins.formatHooks());

View File

@ -89,7 +89,7 @@ function setPadHTML(pad, html, callback)
// the changeset is ready! // the changeset is ready!
var theChangeset = builder.toString(); var theChangeset = builder.toString();
apiLogger.debug('The changeset: ' + theChangeset); apiLogger.debug('The changeset: ' + theChangeset);
pad.setText(""); pad.setText("\n");
pad.appendRevision(theChangeset); pad.appendRevision(theChangeset);
callback(null); callback(null);
} }

View File

@ -83,7 +83,7 @@ exports.dbSettings = { "filename" : path.join(exports.root, "dirty.db") };
/** /**
* The default Text of a new pad * The default Text of a new pad
*/ */
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"; 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: https:\/\/github.com\/ether\/etherpad-lite\n";
/** /**
* The default Pad Settings for a user (Can be overridden by changing the setting * The default Pad Settings for a user (Can be overridden by changing the setting
@ -152,6 +152,11 @@ exports.minify = true;
*/ */
exports.abiword = null; exports.abiword = null;
/**
* The path of the tidy executable
*/
exports.tidyHtml = null;
/** /**
* Should we support none natively supported file types on import? * Should we support none natively supported file types on import?
*/ */
@ -167,7 +172,7 @@ exports.loglevel = "INFO";
*/ */
exports.disableIPlogging = false; exports.disableIPlogging = false;
/** /**
* Disable Load Testing * Disable Load Testing
*/ */
exports.loadTest = false; exports.loadTest = false;
@ -239,7 +244,7 @@ exports.reloadSettings = function reloadSettings() {
} else { } else {
settingsFilename = path.resolve(path.join(exports.root, settingsFilename)); settingsFilename = path.resolve(path.join(exports.root, settingsFilename));
} }
var settingsStr; var settingsStr;
try{ try{
//read the settings sync //read the settings sync

View File

@ -0,0 +1,41 @@
/**
* Tidy up the HTML in a given file
*/
var log4js = require('log4js');
var settings = require('./Settings');
var spawn = require('child_process').spawn;
exports.tidy = function(srcFile, callback) {
var logger = log4js.getLogger('TidyHtml');
// Don't do anything if Tidy hasn't been enabled
if (!settings.tidyHtml) {
logger.debug('tidyHtml has not been configured yet, ignoring tidy request');
return callback(null);
}
var errMessage = '';
// Spawn a new tidy instance that cleans up the file inline
logger.debug('Tidying ' + srcFile);
var tidy = spawn(settings.tidyHtml, ['-modify', srcFile]);
// Keep track of any error messages
tidy.stderr.on('data', function (data) {
errMessage += data.toString();
});
// Wait until Tidy is done
tidy.on('close', function(code) {
// Tidy returns a 0 when no errors occur and a 1 exit code when
// the file could be tidied but a few warnings were generated
if (code === 0 || code === 1) {
logger.debug('Tidied ' + srcFile + ' successfully');
return callback(null);
} else {
logger.error('Failed to tidy ' + srcFile + '\n' + errMessage);
return callback('Tidy died with exit code ' + code);
}
});
};

View File

@ -7,7 +7,16 @@ var _ = require("underscore")
, Button , Button
, ButtonsGroup , ButtonsGroup
, Separator , Separator
, defaultButtonAttributes; , defaultButtonAttributes
, removeItem;
removeItem = function(array,what) {
var ax;
while ((ax = array.indexOf(what)) !== -1) {
array.splice(ax, 1);
}
return array;
};
defaultButtonAttributes = function (name, overrides) { defaultButtonAttributes = function (name, overrides) {
return { return {
@ -236,7 +245,18 @@ module.exports = {
selectButton: function (attributes) { selectButton: function (attributes) {
return new SelectButton(attributes); return new SelectButton(attributes);
}, },
menu: function (buttons) { menu: function (buttons, isReadOnly) {
if(isReadOnly){
// The best way to detect if it's the left editbar is to check for a bold button
if(buttons[0].indexOf("bold") !== -1){
// Clear all formatting buttons
buttons = []
}else{
// Remove Save Revision from the right menu
removeItem(buttons[0],"savedrevision");
}
}
var groups = _.map(buttons, function (group) { var groups = _.map(buttons, function (group) {
return ButtonsGroup.fromArray(group).render(); return ButtonsGroup.fromArray(group).render();
}); });

View File

@ -55,5 +55,5 @@
"repository" : { "type" : "git", "repository" : { "type" : "git",
"url" : "http://github.com/ether/etherpad-lite.git" "url" : "http://github.com/ether/etherpad-lite.git"
}, },
"version" : "1.5.6" "version" : "1.5.7"
} }

View File

@ -113,7 +113,11 @@ body.doesWrap {
word-wrap: break-word; /* fix for issue #1648 - firefox not wrapping long lines (without spaces) correctly */ word-wrap: break-word; /* fix for issue #1648 - firefox not wrapping long lines (without spaces) correctly */
} }
body.doesWrap > div{ .noprewrap{
white-space: normal;
}
body.doesWrap:not(.noprewrap) > div{
/* Related to #1766 */ /* Related to #1766 */
white-space: pre-wrap; white-space: pre-wrap;
} }

View File

@ -189,7 +189,7 @@ a img {
left:0px; left:0px;
right:250px; right:250px;
} }
.toolbar ul.menu_right { .toolbar ul.menu_right {
right:0px; right:0px;
} }
@ -216,6 +216,10 @@ li[data-key=showusers] > a #online_count {
right: 0px; right: 0px;
bottom: 0px; bottom: 0px;
z-index: 1; z-index: 1;
/* Required to fix toolbar on top/bottom of the screen on iOS: */
overflow: scroll;
-webkit-overflow-scrolling: touch;
} }
#editorcontainer iframe { #editorcontainer iframe {
height: 100%; height: 100%;
@ -860,6 +864,7 @@ input[type=checkbox] {
padding: 10px; padding: 10px;
border-radius: 0 0 6px 6px; border-radius: 0 0 6px 6px;
border: 1px solid #ccc; border: 1px solid #ccc;
border-top: none;
background: #f7f7f7; background: #f7f7f7;
background: -webkit-linear-gradient(#F7F7F7, #EEE); background: -webkit-linear-gradient(#F7F7F7, #EEE);
background: -moz-linear-gradient(#F7F7F7, #EEE); background: -moz-linear-gradient(#F7F7F7, #EEE);
@ -1028,7 +1033,7 @@ input[type=checkbox] {
left:0px; left:0px;
right:100px; right:100px;
} }
.toolbar ul.menu_right { .toolbar ul.menu_right {
right:0px; right:0px;
} }
@ -1058,10 +1063,11 @@ input[type=checkbox] {
#editorcontainer { #editorcontainer {
margin-bottom: 33px margin-bottom: 33px
} }
.toolbar ul.menu_left { /* cancel non-mobile border (will be defined on ".toolbar ul.menu_left" bellow) */
right:0px; .toolbar {
border-bottom: 0;
} }
.toolbar ul.menu_right { .toolbar ul {
background: #f7f7f7; background: #f7f7f7;
background: -webkit-linear-gradient(#f7f7f7, #f1f1f1 80%); background: -webkit-linear-gradient(#f7f7f7, #f1f1f1 80%);
background: -moz-linear-gradient(#f7f7f7, #f1f1f1 80%); background: -moz-linear-gradient(#f7f7f7, #f1f1f1 80%);
@ -1069,8 +1075,18 @@ input[type=checkbox] {
background: -ms-linear-gradient(#f7f7f7, #f1f1f1 80%); background: -ms-linear-gradient(#f7f7f7, #f1f1f1 80%);
background: linear-gradient(#f7f7f7, #f1f1f1 80%); background: linear-gradient(#f7f7f7, #f1f1f1 80%);
width: 100%; width: 100%;
right:0px !important;
overflow: hidden; overflow: hidden;
}
.toolbar ul.menu_left {
right:0px;
position: fixed;
top: 0;
padding-top: 4px;
border-bottom: 1px solid #ccc;
z-index: 10;
}
.toolbar ul.menu_right {
right:0px !important;
height: 32px; height: 32px;
position: fixed; position: fixed;
bottom: 0; bottom: 0;
@ -1090,14 +1106,14 @@ input[type=checkbox] {
background: none !important background: none !important
} }
li[data-key="showusers"] > a { li[data-key="showusers"] > a {
margin-top:-10px; margin-top:-10px;
padding-top:2px !important; padding-top:2px !important;
line-height:20px; line-height:20px;
vertical-align:top !important; vertical-align:top !important;
} }
#chaticon { #chaticon {
position:absolute; position:fixed;
right:48px; right:48px;
} }
.popup { .popup {
@ -1126,7 +1142,7 @@ input[type=checkbox] {
line-height: 24px line-height: 24px
} }
#chatbox{ #chatbox{
position:absolute; position:fixed;
bottom:33px !important; bottom:33px !important;
margin: 65px 0 0 0; margin: 65px 0 0 0;
} }
@ -1247,11 +1263,11 @@ input[type=checkbox] {
@font-face { @font-face {
font-family: "fontawesome-etherpad"; font-family: "fontawesome-etherpad";
src:url("../font/fontawesome-etherpad.eot"); src:url("../../static/font/fontawesome-etherpad.eot");
src:url("../font/fontawesome-etherpad.eot?#iefix") format("embedded-opentype"), src:url("../../static/font/fontawesome-etherpad.eot?#iefix") format("embedded-opentype"),
url("../font/fontawesome-etherpad.woff") format("woff"), url("../../static/font/fontawesome-etherpad.woff") format("woff"),
url("../font/fontawesome-etherpad.ttf") format("truetype"), url("../../static/font/fontawesome-etherpad.ttf") format("truetype"),
url("../font/fontawesome-etherpad.svg#fontawesome-etherpad") format("svg"); url("../../static/font/fontawesome-etherpad.svg#fontawesome-etherpad") format("svg");
font-weight: normal; font-weight: normal;
font-style: normal; font-style: normal;

View File

@ -66,6 +66,12 @@
"code": 59393, "code": 59393,
"src": "fontawesome" "src": "fontawesome"
}, },
{
"uid": "85528017f1e6053b2253785c31047f44",
"css": "comment",
"code": 59448,
"src": "fontawesome"
},
{ {
"uid": "dcedf50ab1ede3283d7a6c70e2fe32f3", "uid": "dcedf50ab1ede3283d7a6c70e2fe32f3",
"css": "chat", "css": "chat",

View File

@ -1,7 +1,7 @@
<?xml version="1.0" standalone="no"?> <?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg"> <svg xmlns="http://www.w3.org/2000/svg">
<metadata>Copyright (C) 2014 by original authors @ fontello.com</metadata> <metadata>Copyright (C) 2015 by original authors @ fontello.com</metadata>
<defs> <defs>
<font id="fontawesome-etherpad" horiz-adv-x="1000" > <font id="fontawesome-etherpad" horiz-adv-x="1000" >
<font-face font-family="fontawesome-etherpad" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" /> <font-face font-family="fontawesome-etherpad" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
@ -62,6 +62,7 @@
<glyph glyph-name="star-empty" unicode="&#xe835;" d="m634 290l171 165-235 35-106 213-105-213-236-35 171-165-41-235 211 111 211-111z m295 199q0-12-15-27l-203-197 48-279q1-4 1-12 0-28-23-28-10 0-22 7l-251 132-250-132q-13-7-23-7-11 0-17 9t-6 19q0 4 1 12l48 279-203 197q-14 15-14 27 0 21 31 26l280 40 126 254q11 23 27 23t28-23l125-254 280-40q32-5 32-26z" horiz-adv-x="928.6" /> <glyph glyph-name="star-empty" unicode="&#xe835;" d="m634 290l171 165-235 35-106 213-105-213-236-35 171-165-41-235 211 111 211-111z m295 199q0-12-15-27l-203-197 48-279q1-4 1-12 0-28-23-28-10 0-22 7l-251 132-250-132q-13-7-23-7-11 0-17 9t-6 19q0 4 1 12l48 279-203 197q-14 15-14 27 0 21 31 26l280 40 126 254q11 23 27 23t28-23l125-254 280-40q32-5 32-26z" horiz-adv-x="928.6" />
<glyph glyph-name="star" unicode="&#xe836;" d="m929 489q0-12-15-27l-203-197 48-279q1-4 1-12 0-11-6-19t-17-9q-10 0-22 7l-251 132-250-132q-13-7-23-7-11 0-17 9t-6 19q0 4 1 12l48 279-203 197q-14 15-14 27 0 21 31 26l280 40 126 254q11 23 27 23t28-23l125-254 280-40q32-5 32-26z" horiz-adv-x="928.6" /> <glyph glyph-name="star" unicode="&#xe836;" d="m929 489q0-12-15-27l-203-197 48-279q1-4 1-12 0-11-6-19t-17-9q-10 0-22 7l-251 132-250-132q-13-7-23-7-11 0-17 9t-6 19q0 4 1 12l48 279-203 197q-14 15-14 27 0 21 31 26l280 40 126 254q11 23 27 23t28-23l125-254 280-40q32-5 32-26z" horiz-adv-x="928.6" />
<glyph glyph-name="clock" unicode="&#xe837;" d="m500 546v-250q0-7-5-12t-13-5h-178q-8 0-13 5t-5 12v36q0 8 5 13t13 5h125v196q0 8 5 13t12 5h36q8 0 13-5t5-13z m232-196q0 83-41 152t-110 111-152 41-153-41-110-111-41-152 41-152 110-111 153-41 152 41 110 111 41 152z m125 0q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z" horiz-adv-x="857.1" /> <glyph glyph-name="clock" unicode="&#xe837;" d="m500 546v-250q0-7-5-12t-13-5h-178q-8 0-13 5t-5 12v36q0 8 5 13t13 5h125v196q0 8 5 13t12 5h36q8 0 13-5t5-13z m232-196q0 83-41 152t-110 111-152 41-153-41-110-111-41-152 41-152 110-111 153-41 152 41 110 111 41 152z m125 0q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z" horiz-adv-x="857.1" />
<glyph glyph-name="comment" unicode="&#xe838;" d="m1000 350q0-97-67-179t-182-130-251-48q-39 0-81 4-110-97-257-135-27-8-63-12-10-1-17 5t-10 16v1q-2 2 0 6t1 6 2 5l4 5t4 5 4 5q4 5 17 19t20 22 17 22 18 28 15 33 15 42q-88 50-138 123t-51 157q0 73 40 139t106 114 160 76 194 28q136 0 251-48t182-130 67-179z" horiz-adv-x="1000" />
</font> </font>
</defs> </defs>
</svg> </svg>

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -260,13 +260,13 @@ exports.checkRep = function (cs) {
break; break;
case '-': case '-':
oldPos += o.chars; oldPos += o.chars;
exports.assert(oldPos < oldLen, oldPos, " >= ", oldLen, " in ", cs); exports.assert(oldPos <= oldLen, oldPos, " > ", oldLen, " in ", cs);
break; break;
case '+': case '+':
{ {
calcNewLen += o.chars; calcNewLen += o.chars;
numInserted += o.chars; numInserted += o.chars;
exports.assert(calcNewLen < newLen, calcNewLen, " >= ", newLen, " in ", cs); exports.assert(calcNewLen <= newLen, calcNewLen, " > ", newLen, " in ", cs);
break; break;
} }
} }
@ -1408,8 +1408,8 @@ exports.makeSplice = function (oldFullText, spliceStart, numRemoved, newText, op
if (spliceStart >= oldLen) { if (spliceStart >= oldLen) {
spliceStart = oldLen - 1; spliceStart = oldLen - 1;
} }
if (numRemoved > oldFullText.length - spliceStart - 1) { if (numRemoved > oldFullText.length - spliceStart) {
numRemoved = oldFullText.length - spliceStart - 1; numRemoved = oldFullText.length - spliceStart;
} }
var oldText = oldFullText.substring(spliceStart, spliceStart + numRemoved); var oldText = oldFullText.substring(spliceStart, spliceStart + numRemoved);
var newLen = oldLen + newText.length - oldText.length; var newLen = oldLen + newText.length - oldText.length;

View File

@ -612,7 +612,7 @@ function Ace2Inner(){
// So this has to be set to pre-wrap ;( // So this has to be set to pre-wrap ;(
// We need to file a bug w/ the Chromium team. // We need to file a bug w/ the Chromium team.
if(browser.chrome){ if(browser.chrome){
$("#innerdocbody").css({"white-space":"pre-wrap"}); $("#innerdocbody").addClass("noprewrap");
} }
} }
@ -1982,7 +1982,11 @@ function Ace2Inner(){
function nodeText(n) 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) function getLineAndCharForPoint(point)
@ -3380,7 +3384,7 @@ function Ace2Inner(){
renumberList(lineNum + 1);//trigger renumbering of list that may be right after renumberList(lineNum + 1);//trigger renumbering of list that may be right after
} }
} }
else if (lineNum + 1 < rep.lines.length()) else if (lineNum + 1 <= rep.lines.length())
{ {
performDocumentReplaceSelection('\n'); performDocumentReplaceSelection('\n');
setLineListType(lineNum + 1, type+level); setLineListType(lineNum + 1, type+level);
@ -3640,6 +3644,7 @@ function Ace2Inner(){
}else{ }else{
var lineHeight = myselection.focusNode.offsetHeight; // line height of blank lines var lineHeight = myselection.focusNode.offsetHeight; // line height of blank lines
} }
var heightOfChatIcon = parent.parent.$('#chaticon').height(); // height of the chat icon button var heightOfChatIcon = parent.parent.$('#chaticon').height(); // height of the chat icon button
lineHeight = (lineHeight *2) + heightOfChatIcon; lineHeight = (lineHeight *2) + heightOfChatIcon;
var viewport = getViewPortTopBottom(); var viewport = getViewPortTopBottom();
@ -3680,6 +3685,11 @@ function Ace2Inner(){
stopped = true; 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") else if (type == "keydown")
{ {
outsideKeyDown(evt); outsideKeyDown(evt);
@ -3704,11 +3714,11 @@ function Ace2Inner(){
firstEditbarElement.focus(); firstEditbarElement.focus();
evt.preventDefault(); evt.preventDefault();
} }
if ((!specialHandled) && altKey && keyCode == 67){ if ((!specialHandled) && altKey && keyCode == 67 && type === "keydown"){
// Alt c focuses on the Chat window // Alt c focuses on the Chat window
$(this).blur(); $(this).blur();
parent.parent.chat.show(); parent.parent.chat.show();
parent.parent.chat.focus(); parent.parent.$("#chatinput").focus();
evt.preventDefault(); evt.preventDefault();
} }
if ((!specialHandled) && evt.ctrlKey && shiftKey && keyCode == 50 && type === "keydown"){ if ((!specialHandled) && evt.ctrlKey && shiftKey && keyCode == 50 && type === "keydown"){
@ -3884,7 +3894,7 @@ function Ace2Inner(){
toggleAttributeOnSelection('underline'); toggleAttributeOnSelection('underline');
specialHandled = true; specialHandled = true;
} }
if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "5" && (evt.metaKey || evt.ctrlKey)) if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "5" && (evt.metaKey || evt.ctrlKey) && evt.altKey !== true)
{ {
// cmd-5 (strikethrough) // cmd-5 (strikethrough)
fastIncorp(13); fastIncorp(13);
@ -3900,7 +3910,7 @@ function Ace2Inner(){
doInsertUnorderedList() doInsertUnorderedList()
specialHandled = true; specialHandled = true;
} }
if ((!specialHandled) && isTypeForCmdKey && String.fromCharCode(which).toLowerCase() == "n" && (evt.metaKey || evt.ctrlKey) && evt.shiftKey) if ((!specialHandled) && isTypeForCmdKey && (String.fromCharCode(which).toLowerCase() == "n" || String.fromCharCode(which) == 1) && (evt.metaKey || evt.ctrlKey) && evt.shiftKey)
{ {
// cmd-shift-N (orderedlist) // cmd-shift-N (orderedlist)
fastIncorp(9); fastIncorp(9);

View File

@ -39,8 +39,6 @@ var chat = (function()
}, },
focus: function () focus: function ()
{ {
// I'm not sure why we need a setTimeout here but without it we don't get focus...
// Animation maybe?
setTimeout(function(){ setTimeout(function(){
$("#chatinput").focus(); $("#chatinput").focus();
},100); },100);
@ -214,23 +212,24 @@ var chat = (function()
init: function(pad) init: function(pad)
{ {
this._pad = pad; this._pad = pad;
$("#chatinput").keyup(function(evt) $("#chatinput").on("keydown", function(evt){
{
// If the event is Alt C or Escape & we're already in the chat menu // If the event is Alt C or Escape & we're already in the chat menu
// Send the users focus back to the pad // Send the users focus back to the pad
if((evt.altKey == true && evt.which === 67) || evt.which === 27){ if((evt.altKey == true && evt.which === 67) || evt.which === 27){
// If we're in chat already.. // If we're in chat already..
$(':focus').blur(); // required to do not try to remove! $(':focus').blur(); // required to do not try to remove!
padeditor.ace.focus(); // Sends focus back to pad padeditor.ace.focus(); // Sends focus back to pad
evt.preventDefault();
return false;
} }
}); });
$('body:not(#chatinput)').on("keydown", function(evt){ $('body:not(#chatinput)').on("keypress", function(evt){
if (evt.altKey && evt.which == 67){ if (evt.altKey && evt.which == 67){
// Alt c focuses on the Chat window // Alt c focuses on the Chat window
$(this).blur(); $(this).blur();
parent.parent.chat.show(); chat.show();
parent.parent.chat.focus(); $("#chatinput").focus();
evt.preventDefault(); evt.preventDefault();
} }
}); });

View File

@ -279,7 +279,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad)
if (newRev != (oldRev + 1)) 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"); // setChannelState("DISCONNECTED", "badmessage_newchanges");
return; return;
} }
@ -289,7 +289,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad)
if (newRev != (rev + 1)) 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"); // setChannelState("DISCONNECTED", "badmessage_newchanges");
return; return;
} }
@ -303,7 +303,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad)
{ {
if (newRev != (msgQueue[msgQueue.length - 1].newRev + 1)) 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"); // setChannelState("DISCONNECTED", "badmessage_acceptcommit");
return; return;
} }
@ -313,7 +313,7 @@ function getCollabClient(ace2editor, serverVars, initialUserInfo, options, _pad)
if (newRev != (rev + 1)) 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"); // setChannelState("DISCONNECTED", "badmessage_acceptcommit");
return; return;
} }

View File

@ -71,8 +71,9 @@ function makeContentCollector(collectStyles, abrowser, apool, domInterface, clas
}, },
nodeAttr: function(n, a) nodeAttr: function(n, a)
{ {
if(n.getAttribute == null) return null; if(n.getAttribute != null) return n.getAttribute(a);
return n.getAttribute(a); if(n.attribs != null) return n.attribs[a];
return null;
}, },
optNodeInnerHTML: function(n) optNodeInnerHTML: function(n)
{ {
@ -516,7 +517,7 @@ function makeContentCollector(collectStyles, abrowser, apool, domInterface, clas
else if (!isEmpty) else if (!isEmpty)
{ {
var styl = dom.nodeAttr(node, "style"); var styl = dom.nodeAttr(node, "style");
var cls = dom.nodeProp(node, "className"); var cls = dom.nodeAttr(node, "class");
var isPre = (tname == "pre"); var isPre = (tname == "pre");
if ((!isPre) && abrowser.safari) if ((!isPre) && abrowser.safari)
{ {

View File

@ -851,6 +851,7 @@ window.html10n = (function(window, document, undefined) {
, "innerHTML": 1 , "innerHTML": 1
, "alt": 1 , "alt": 1
, "textContent": 1 , "textContent": 1
, "value": 1
} }
if (index > 0 && str.id.substr(index + 1) in attrList) { // an attribute has been specified if (index > 0 && str.id.substr(index + 1) in attrList) { // an attribute has been specified
prop = str.id.substr(index + 1) prop = str.id.substr(index + 1)
@ -861,6 +862,9 @@ window.html10n = (function(window, document, undefined) {
// Apply translation // Apply translation
if (node.children.length === 0 || prop != 'textContent') { if (node.children.length === 0 || prop != 'textContent') {
node[prop] = str.str node[prop] = str.str
node.setAttribute("aria-label", str.str); // Sets the aria-label
// The idea of the above is that we always have an aria value
// This might be a bit of an abrupt solution but let's see how it goes
} else { } else {
var children = node.childNodes, var children = node.childNodes,
found = false found = false

View File

@ -115,9 +115,9 @@ var getParameters = [
{ name: "showLineNumbers", checkVal: "false", callback: function(val) { settings.LineNumbersDisabled = true; } }, { name: "showLineNumbers", checkVal: "false", callback: function(val) { settings.LineNumbersDisabled = true; } },
{ name: "useMonospaceFont", checkVal: "true", callback: function(val) { settings.useMonospaceFontGlobal = true; } }, { name: "useMonospaceFont", checkVal: "true", callback: function(val) { settings.useMonospaceFontGlobal = true; } },
// If the username is set as a parameter we should set a global value that we can call once we have initiated the pad. // If the username is set as a parameter we should set a global value that we can call once we have initiated the pad.
{ name: "userName", checkVal: null, callback: function(val) { settings.globalUserName = decodeURIComponent(val); } }, { name: "userName", checkVal: null, callback: function(val) { settings.globalUserName = decodeURIComponent(val); clientVars.userName = decodeURIComponent(val); } },
// If the userColor is set as a parameter, set a global value to use once we have initiated the pad. // If the userColor is set as a parameter, set a global value to use once we have initiated the pad.
{ name: "userColor", checkVal: null, callback: function(val) { settings.globalUserColor = decodeURIComponent(val); } }, { name: "userColor", checkVal: null, callback: function(val) { settings.globalUserColor = decodeURIComponent(val); clientVars.userColor = decodeURIComponent(val); } },
{ name: "rtl", checkVal: "true", callback: function(val) { settings.rtlIsTrue = true } }, { name: "rtl", checkVal: "true", callback: function(val) { settings.rtlIsTrue = true } },
{ name: "alwaysShowChat", checkVal: "true", callback: function(val) { chat.stickToScreen(); } }, { name: "alwaysShowChat", checkVal: "true", callback: function(val) { chat.stickToScreen(); } },
{ name: "chatAndUsers", checkVal: "true", callback: function(val) { chat.chatAndUsers(); } }, { name: "chatAndUsers", checkVal: "true", callback: function(val) { chat.chatAndUsers(); } },
@ -322,6 +322,15 @@ function handshake()
pad._afterHandshake(); pad._afterHandshake();
initalized = true; initalized = true;
if(clientVars.readonly){
chat.hide();
$('#myusernameedit').attr("disabled", true);
$('#chatinput').attr("disabled", true);
$('#chaticon').hide();
$('#options-chatandusers').parent().hide();
$('#options-stickychat').parent().hide();
}
$("body").addClass(clientVars.readonly ? "readonly" : "readwrite") $("body").addClass(clientVars.readonly ? "readonly" : "readwrite")
padeditor.ace.callWithAce(function (ace) { padeditor.ace.callWithAce(function (ace) {
@ -457,9 +466,10 @@ var pad = {
switchToPad: function(padId) switchToPad: function(padId)
{ {
var options = document.location.href.split('?')[1]; var options = document.location.href.split('?')[1];
var newHref = "/p/" + padId; var newHref = padId;
if (options != null) if (typeof options != "undefined" && options != null){
newHref = newHref + '?' + options; newHref = newHref + '?' + options;
}
if(window.history && window.history.pushState) if(window.history && window.history.pushState)
{ {
@ -812,6 +822,9 @@ var pad = {
pad.determineChatVisibility(isConnected && !isInitialConnect); pad.determineChatVisibility(isConnected && !isInitialConnect);
pad.determineChatAndUsersVisibility(isConnected && !isInitialConnect); pad.determineChatAndUsersVisibility(isConnected && !isInitialConnect);
pad.determineAuthorshipColorsVisibility(); pad.determineAuthorshipColorsVisibility();
setTimeout(function(){
padeditbar.toggleDropDown("none");
}, 1000);
}, },
determineChatVisibility: function(asNowConnectedFeedback){ determineChatVisibility: function(asNowConnectedFeedback){
var chatVisCookie = padcookie.getPref('chatAlwaysVisible'); var chatVisCookie = padcookie.getPref('chatAlwaysVisible');

View File

@ -185,9 +185,31 @@ var padeditbar = (function()
this.commands[cmd] = callback; this.commands[cmd] = callback;
return this; return this;
}, },
calculateEditbarHeight: function() {
// if we're on timeslider, there is nothing on editbar, so we just use zero
var onTimeslider = $('.menu_left').length === 0;
if (onTimeslider) return 0;
// if editbar has both menu left and right, its height must be
// the max between the height of these two parts
var leftMenuPosition = $('.menu_left').offset().top;
var rightMenuPosition = $('.menu_right').offset().top;
var editbarHasMenuLeftAndRight = (leftMenuPosition === rightMenuPosition);
var height;
if (editbarHasMenuLeftAndRight) {
height = Math.max($('.menu_left').height(), $('.menu_right').height());
}
else {
height = $('.menu_left').height();
}
return height;
},
redrawHeight: function(){ redrawHeight: function(){
var editbarHeight = $('.menu_left').height() + 1 + "px"; var minimunEditbarHeight = self.calculateEditbarHeight();
var containerTop = $('.menu_left').height() + 6 + "px"; var editbarHeight = minimunEditbarHeight + 1 + "px";
var containerTop = minimunEditbarHeight + 6 + "px";
$('#editbar').css("height", editbarHeight); $('#editbar').css("height", editbarHeight);
$('#editorcontainer').css("top", containerTop); $('#editorcontainer').css("top", containerTop);

View File

@ -160,23 +160,23 @@ var padeditor = (function()
font = font.replace("use",""); font = font.replace("use","");
font = font.replace("Font",""); font = font.replace("Font","");
font = font.toLowerCase(); font = font.toLowerCase();
if(font === "monospace") self.ace.setProperty("textface", "Courier new"); if(font === "monospace") self.ace.setProperty("textface", "monospace");
if(font === "opendyslexic") self.ace.setProperty("textface", "OpenDyslexic"); if(font === "opendyslexic") self.ace.setProperty("textface", "OpenDyslexic");
if(font === "comicsans") self.ace.setProperty("textface", "Comic Sans MS"); if(font === "comicsans") self.ace.setProperty("textface", "'Comic Sans MS','Comic Sans',cursive");
if(font === "georgia") self.ace.setProperty("textface", "Georgia"); if(font === "georgia") self.ace.setProperty("textface", "Georgia,'Bitstream Charter',serif");
if(font === "impact") self.ace.setProperty("textface", "Impact"); if(font === "impact") self.ace.setProperty("textface", "Impact,Haettenschweiler,'Arial Black',sans-serif");
if(font === "lucida") self.ace.setProperty("textface", "Lucida"); if(font === "lucida") self.ace.setProperty("textface", "Lucida,'Lucida Serif','Lucida Bright',serif");
if(font === "lucidasans") self.ace.setProperty("textface", "Lucida Sans Unicode"); if(font === "lucidasans") self.ace.setProperty("textface", "'Lucida Sans','Lucida Grande','Lucida Sans Unicode','Luxi Sans',sans-serif");
if(font === "palatino") self.ace.setProperty("textface", "Palatino Linotype"); if(font === "palatino") self.ace.setProperty("textface", "Palatino,'Palatino Linotype','URW Palladio L',Georgia,serif");
if(font === "tahoma") self.ace.setProperty("textface", "Tahoma"); if(font === "tahoma") self.ace.setProperty("textface", "Tahoma,sans-serif");
if(font === "timesnewroman") self.ace.setProperty("textface", "Times New Roman"); if(font === "timesnewroman") self.ace.setProperty("textface", "'Times New Roman',Times,serif");
if(font === "trebuchet") self.ace.setProperty("textface", "Trebuchet MS"); if(font === "trebuchet") self.ace.setProperty("textface", "'Trebuchet MS',sans-serif");
if(font === "verdana") self.ace.setProperty("textface", "Verdana"); if(font === "verdana") self.ace.setProperty("textface", "Verdana,'DejaVu Sans',sans-serif");
if(font === "symbol") self.ace.setProperty("textface", "Symbol"); if(font === "symbol") self.ace.setProperty("textface", "Symbol");
if(font === "webdings") self.ace.setProperty("textface", "Webdings"); if(font === "webdings") self.ace.setProperty("textface", "Webdings");
if(font === "wingdings") self.ace.setProperty("textface", "Wingdings"); if(font === "wingdings") self.ace.setProperty("textface", "Wingdings");
if(font === "sansserif") self.ace.setProperty("textface", "MS Sans Serif"); if(font === "sansserif") self.ace.setProperty("textface", "sans-serif");
if(font === "serif") self.ace.setProperty("textface", "MS Serif"); if(font === "serif") self.ace.setProperty("textface", "serif");
// $("#viewfontmenu").val(font); // $("#viewfontmenu").val(font);
normalFont = false; normalFont = false;
@ -185,7 +185,7 @@ var padeditor = (function()
// No font has been previously selected so use the Normal font // No font has been previously selected so use the Normal font
if(normalFont){ if(normalFont){
self.ace.setProperty("textface", "Arial, sans-serif"); self.ace.setProperty("textface", "'Helvetica Neue',Arial, sans-serif");
// $("#viewfontmenu").val("normal"); // $("#viewfontmenu").val("normal");
} }

View File

@ -235,7 +235,7 @@ var padimpexp = (function()
addImportFrames(); addImportFrames();
$("#importfileinput").change(fileInputUpdated); $("#importfileinput").change(fileInputUpdated);
$('#importform').submit(fileInputSubmit); $('#importform').unbind("submit").submit(fileInputSubmit);
$('.disabledexport').click(cantExport); $('.disabledexport').click(cantExport);
}, },
handleFrameCall: function(directDatabaseAccess, status) handleFrameCall: function(directDatabaseAccess, status)

View File

@ -26,6 +26,17 @@ exports.formatPlugins = function () {
return _.keys(exports.plugins).join(", "); 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 () { exports.formatParts = function () {
return _.map(exports.parts, function (part) { return part.full_name; }).join("\n"); return _.map(exports.parts, function (part) { return part.full_name; }).join("\n");
}; };

View File

@ -147,7 +147,7 @@ function handleClientVars(message)
// export_links is a jQuery Array, so .each is allowed. // export_links is a jQuery Array, so .each is allowed.
export_links.each(function() 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'));
}); });
}); });

View File

@ -63,12 +63,12 @@
<ul class="menu_left" role="toolbar"> <ul class="menu_left" role="toolbar">
<% e.begin_block("editbarMenuLeft"); %> <% e.begin_block("editbarMenuLeft"); %>
<%- toolbar.menu(settings.toolbar.left) %> <%- toolbar.menu(settings.toolbar.left, isReadOnly) %>
<% e.end_block(); %> <% e.end_block(); %>
</ul> </ul>
<ul class="menu_right" role="toolbar"> <ul class="menu_right" role="toolbar">
<% e.begin_block("editbarMenuRight"); %> <% e.begin_block("editbarMenuRight"); %>
<%- toolbar.menu(settings.toolbar.right) %> <%- toolbar.menu(settings.toolbar.right, isReadOnly) %>
<% e.end_block(); %> <% e.end_block(); %>
</ul> </ul>
</div> </div>

View File

@ -0,0 +1,17 @@
var jsonminify = require(__dirname+"/../../src/node_modules/jsonminify");
function loadSettings(){
var settingsStr = fs.readFileSync(__dirname+"/../../settings.json").toString();
// try to parse the settings
var settings;
try {
if(settingsStr) {
settingsStr = jsonminify(settingsStr).replace(",]","]").replace(",}","}");
return JSON.parse(settingsStr);
}
}catch(e){
console.error("whoops something is bad with settings");
}
}
exports.loadSettings = loadSettings;

View File

@ -1,7 +1,8 @@
var assert = require('assert') var assert = require('assert')
supertest = require(__dirname+'/../../../../src/node_modules/supertest'), supertest = require(__dirname+'/../../../../src/node_modules/supertest'),
fs = require('fs'), fs = require('fs'),
api = supertest('http://localhost:9001'); settings = require(__dirname+'/../../loadSettings').loadSettings(),
api = supertest('http://'+settings.ip+":"+settings.port),
path = require('path'); path = require('path');
var filePath = path.join(__dirname, '../../../../APIKEY.txt'); var filePath = path.join(__dirname, '../../../../APIKEY.txt');

View File

@ -1,7 +1,8 @@
var assert = require('assert') var assert = require('assert')
supertest = require(__dirname+'/../../../../src/node_modules/supertest'), supertest = require(__dirname+'/../../../../src/node_modules/supertest'),
fs = require('fs'), fs = require('fs'),
api = supertest('http://localhost:9001'); settings = require(__dirname+'/../../loadSettings').loadSettings(),
api = supertest('http://'+settings.ip+":"+settings.port),
path = require('path'), path = require('path'),
async = require(__dirname+'/../../../../src/node_modules/async'); async = require(__dirname+'/../../../../src/node_modules/async');
@ -393,6 +394,29 @@ describe('getText', function(){
}); });
}) })
describe('setText', function(){
it('Sets text on a pad Id including an explicit newline', function(done) {
api.get(endPoint('setText')+"&padID="+testPadId+"&text="+text+'%0A')
.expect(function(res){
if(res.body.code !== 0) throw new Error("Pad Set Text failed")
})
.expect('Content-Type', /json/)
.expect(200, done)
});
})
describe('getText', function(){
it("Gets text on a pad Id and doesn't have an excess newline", function(done) {
api.get(endPoint('getText')+"&padID="+testPadId)
.expect(function(res){
if(res.body.code !== 0) throw new Error("Pad Get Text failed")
if(res.body.data.text !== text+"\n") throw new Error("Pad Text not set properly");
})
.expect('Content-Type', /json/)
.expect(200, done)
});
})
describe('getLastEdited', function(){ describe('getLastEdited', function(){
it('Gets when pad was last edited', function(done) { it('Gets when pad was last edited', function(done) {
api.get(endPoint('getLastEdited')+"&padID="+testPadId) api.get(endPoint('getLastEdited')+"&padID="+testPadId)
@ -464,7 +488,6 @@ describe('setHTML', function(){
var html = "<div><b>Hello HTML</title></head></div>"; var html = "<div><b>Hello HTML</title></head></div>";
api.get(endPoint('setHTML')+"&padID="+testPadId+"&html="+html) api.get(endPoint('setHTML')+"&padID="+testPadId+"&html="+html)
.expect(function(res){ .expect(function(res){
console.log(res.body.code);
if(res.body.code !== 1) throw new Error("Allowing crappy HTML to be imported") if(res.body.code !== 1) throw new Error("Allowing crappy HTML to be imported")
}) })
.expect('Content-Type', /json/) .expect('Content-Type', /json/)

View File

@ -1,7 +1,8 @@
var assert = require('assert') var assert = require('assert')
supertest = require(__dirname+'/../../../../src/node_modules/supertest'), supertest = require(__dirname+'/../../../../src/node_modules/supertest'),
fs = require('fs'), fs = require('fs'),
api = supertest('http://localhost:9001'); settings = require(__dirname+'/../../loadSettings').loadSettings(),
api = supertest('http://'+settings.ip+":"+settings.port),
path = require('path'); path = require('path');
var filePath = path.join(__dirname, '../../../../APIKEY.txt'); var filePath = path.join(__dirname, '../../../../APIKEY.txt');

View File

@ -0,0 +1,63 @@
var assert = require('assert')
fs = require('fs'),
path = require('path'),
TidyHtml = null,
Settings = null;
var npm = require("../../../../src/node_modules/npm/lib/npm.js");
describe('tidyHtml', function() {
before(function(done) {
npm.load({}, function(err) {
assert.ok(!err);
TidyHtml = require('../../../../src/node/utils/TidyHtml');
Settings = require('../../../../src/node/utils/Settings');
return done()
});
});
it('Tidies HTML', function(done) {
// If the user hasn't configured Tidy, we skip this tests as it's required for this test
if (!Settings.tidyHtml) {
this.skip();
}
// Try to tidy up a bad HTML file
var tmpDir = process.env.TEMP || "/tmp";
var tmpFile = path.join(tmpDir, 'tmp_' + (Math.floor(Math.random() * 1000000)) + '.html')
fs.writeFileSync(tmpFile, '<html><body><p>a paragraph</p><li>List without outer UL</li>trailing closing p</p></body></html>');
TidyHtml.tidy(tmpFile, function(err){
assert.ok(!err);
// Read the file again
var cleanedHtml = fs.readFileSync(tmpFile).toString();
var expectedHtml = [
'<title></title>',
'</head>',
'<body>',
'<p>a paragraph</p>',
'<ul>',
'<li>List without outer UL</li>',
'<li style="list-style: none">trailing closing p</li>',
'</ul>',
'</body>',
'</html>',
].join('\n');
assert.notStrictEqual(cleanedHtml.indexOf(expectedHtml), -1);
return done();
});
});
it('can deal with errors', function(done) {
// If the user hasn't configured Tidy, we skip this tests as it's required for this test
if (!Settings.tidyHtml) {
this.skip();
}
TidyHtml.tidy('/some/none/existing/file.html', function(err) {
assert.ok(err);
return done();
});
});
});

View File

@ -24,7 +24,7 @@ describe("font select", function(){
//check if font changed to monospace //check if font changed to monospace
var fontFamily = inner$("body").css("font-family").toLowerCase(); var fontFamily = inner$("body").css("font-family").toLowerCase();
var containsStr = fontFamily.indexOf("courier new"); var containsStr = fontFamily.indexOf("monospace");
expect(containsStr).to.not.be(-1); expect(containsStr).to.not.be(-1);
done(); done();