Merge branch 'soon'

This commit is contained in:
yflory 2019-03-05 12:04:35 +01:00
commit 47f49c3628
38 changed files with 9988 additions and 5397 deletions

View File

@ -26,3 +26,4 @@ www/common/media-tag-nacl.min.js
customize/ customize/
www/debug/chainpad.dist.js

View File

@ -91,7 +91,7 @@ define([
]) ])
]) ])
]), ]),
h('div.cp-version-footer', "CryptPad v2.17.0 (Raccoon)") h('div.cp-version-footer', "CryptPad v2.18.0 (Sloth)")
]); ]);
}; };

View File

@ -9,6 +9,41 @@
blockquote { margin: 0; } blockquote { margin: 0; }
} }
// todo ul, ol // todo ul, ol
// TOC
div.cp-md-toc {
background: #f3f3f3;
padding: 20px;
//float: right;
margin: 5px;
margin-right: 0;
max-width: 100%;
min-width: 200px;
white-space: nowrap;
& > p {
&.cp-md-toc-1 {
margin-left: 0;
}
&.cp-md-toc-2 {
margin-left: 25px;
}
&.cp-md-toc-3 {
margin-left: 50px;
}
&.cp-md-toc-4 {
margin-left: 75px;
}
&.cp-md-toc-5 {
margin-left: 100px;
}
&.cp-md-toc-6 {
margin-left: 125px;
}
margin: 0;
overflow-x: hidden;
text-overflow: ellipsis;
}
}
} }
.markdown_preformatted-code (@color: #333) { .markdown_preformatted-code (@color: #333) {

View File

@ -1,7 +1,7 @@
{ {
"name": "cryptpad", "name": "cryptpad",
"description": "realtime collaborative visual editor with zero knowlege server", "description": "realtime collaborative visual editor with zero knowlege server",
"version": "2.17.0", "version": "2.18.0",
"license": "AGPL-3.0+", "license": "AGPL-3.0+",
"repository": { "repository": {
"type": "git", "type": "git",

View File

@ -997,6 +997,10 @@ define([
return '`' + str + '`'; return '`' + str + '`';
}, },
icon: 'fa-code' icon: 'fa-code'
},
'toc': {
expr: '[TOC]',
icon: 'fa-newspaper-o'
} }
}; };
var onClick = function () { var onClick = function () {
@ -2319,6 +2323,10 @@ define([
if (e) { return void console.error(e); } if (e) { return void console.error(e); }
}); });
if (val.expire) {
Feedback.send('EXPIRING_PAD-'+val.expire);
}
$creationContainer.remove(); $creationContainer.remove();
common.createPad(val, function () { common.createPad(val, function () {
cb(); cb();

View File

@ -254,8 +254,8 @@ define([
postMessage("REMOVE_OWNED_CHANNEL", channel, cb); postMessage("REMOVE_OWNED_CHANNEL", channel, cb);
}; };
common.getDeletedPads = function (cb) { common.getDeletedPads = function (data, cb) {
postMessage("GET_DELETED_PADS", null, function (obj) { postMessage("GET_DELETED_PADS", data, function (obj) {
if (obj && obj.error) { return void cb(obj.error); } if (obj && obj.error) { return void cb(obj.error); }
cb(null, obj); cb(null, obj);
}); });
@ -958,7 +958,7 @@ define([
common.autoStore.onStoreRequest = Util.mkEvent(); common.autoStore.onStoreRequest = Util.mkEvent();
common.getFullHistory = function (data, cb) { common.getFullHistory = function (data, cb) {
postMessage("GET_FULL_HISTORY", data, cb); postMessage("GET_FULL_HISTORY", data, cb, {timeout: 180000});
}; };
common.getHistoryRange = function (data, cb) { common.getHistoryRange = function (data, cb) {
postMessage("GET_HISTORY_RANGE", data, cb); postMessage("GET_HISTORY_RANGE", data, cb);

View File

@ -3,12 +3,14 @@ define([
'/bower_components/marked/marked.min.js', '/bower_components/marked/marked.min.js',
'/common/common-hash.js', '/common/common-hash.js',
'/common/common-util.js', '/common/common-util.js',
'/common/hyperscript.js',
'/common/media-tag.js', '/common/media-tag.js',
'/common/highlight/highlight.pack.js', '/common/highlight/highlight.pack.js',
'/customize/messages.js',
'/bower_components/diff-dom/diffDOM.js', '/bower_components/diff-dom/diffDOM.js',
'/bower_components/tweetnacl/nacl-fast.min.js', '/bower_components/tweetnacl/nacl-fast.min.js',
'css!/common/highlight/styles/github.css' 'css!/common/highlight/styles/github.css'
],function ($, Marked, Hash, Util, MediaTag, Highlight) { ],function ($, Marked, Hash, Util, h, MediaTag, Highlight, Messages) {
var DiffMd = {}; var DiffMd = {};
var DiffDOM = window.diffDOM; var DiffDOM = window.diffDOM;
@ -33,16 +35,57 @@ define([
highlight: highlighter(), highlight: highlighter(),
}); });
var toc = [];
var getTOC = function () {
var content = [h('h2', Messages.markdown_toc)];
toc.forEach(function (obj) {
// Only include level 2 headings
var level = obj.level - 1;
if (level < 1) { return; }
var a = h('a.cp-md-toc-link', {
href: '#',
'data-href': obj.id,
title: obj.title
}, obj.title);
content.push(h('p.cp-md-toc-'+level, ['• ', a]));
});
return h('div.cp-md-toc', content).outerHTML;
};
DiffMd.render = function (md, sanitize) { DiffMd.render = function (md, sanitize) {
return Marked(md, { var r = Marked(md, {
sanitize: sanitize sanitize: sanitize
}); });
// Add Table of Content
r = r.replace(/<div class="cp-md-toc"><\/div>/g, getTOC());
toc = [];
return r;
}; };
var mediaMap = {}; var mediaMap = {};
renderer.heading = function (text, level) {
var i = 0;
var safeText = text.toLowerCase().replace(/[^\w]+/g, '-');
var getId = function () {
return 'cp-md-' + i + '-' + safeText;
};
var id = getId();
var isAlreadyUsed = function (obj) { return obj.id === id; };
while (toc.some(isAlreadyUsed)) {
i++;
id = getId();
}
toc.push({
level: level,
id: id,
title: text
});
return "<h" + level + " id=\"" + id + "\"><a href=\"#" + id + "\" class=\"anchor\"></a>" + text + "</h" + level + ">";
};
// Tasks list // Tasks list
var checkedTaskItemPtn = /^\s*(<p>)?\[[xX]\](<\/p>)?\s*/; var checkedTaskItemPtn = /^\s*(<p>)?\[[xX]\](<\/p>)?\s*/;
var uncheckedTaskItemPtn = /^\s*(<p>)?\[ ?\](<\/p>)?\s*/; var uncheckedTaskItemPtn = /^\s*(<p>)?\[ ?\](<\/p>)?\s*/;
@ -97,6 +140,9 @@ define([
}; };
renderer.paragraph = function (p) { renderer.paragraph = function (p) {
if (p === '[TOC]') {
return '<p><div class="cp-md-toc"></div></p>';
}
return /<media\-tag[\s\S]*>/i.test(p)? p + '\n': '<p>' + p + '</p>\n'; return /<media\-tag[\s\S]*>/i.test(p)? p + '\n': '<p>' + p + '</p>\n';
}; };
@ -249,6 +295,15 @@ define([
characterData: false characterData: false
}); });
}); });
// Fix Table of contents links
$content.find('a.cp-md-toc-link').off('click').click(function (e) {
e.preventDefault();
e.stopPropagation();
var $a = $(this);
if (!$a.attr('data-href')) { return; }
var target = document.getElementById($a.attr('data-href'));
if (target) { target.scrollIntoView(); }
});
} }
}; };

View File

@ -65,7 +65,9 @@ define([
if (!proxy.FS_hashes || !Array.isArray(proxy.FS_hashes)) { if (!proxy.FS_hashes || !Array.isArray(proxy.FS_hashes)) {
proxy.FS_hashes = []; proxy.FS_hashes = [];
} }
proxy.FS_hashes.push(fsHash); if (proxy.FS_hashes.indexOf(fsHash) === -1) {
proxy.FS_hashes.push(fsHash);
}
if (typeof(cb) === "function") { if (typeof(cb) === "function") {
Realtime.whenRealtimeSyncs(proxyData.realtime, cb); Realtime.whenRealtimeSyncs(proxyData.realtime, cb);
} }

View File

@ -176,6 +176,16 @@ define([
if (version < 7) { if (version < 7) {
addRoHref(); addRoHref();
} }
}).nThen(function () {
// Migration 8: remove duplicate entries in proxy.FS_hashes (list of migrated anon drives)
var fixDuplicate = function () {
userObject.FS_hashes = Util.deduplicateString(userObject.FS_hashes || []);
};
if (version < 8) {
fixDuplicate();
Feedback.send('Migrate-8', true);
userObject.version = version = 8;
}
/*}).nThen(function (waitFor) { /*}).nThen(function (waitFor) {
// Test progress bar in the loading screen // Test progress bar in the loading screen
var i = 0; var i = 0;

View File

@ -1426,6 +1426,7 @@ define([
if (!store.loggedIn) { return void cb(); } if (!store.loggedIn) { return void cb(); }
Store.pinPads(null, data, cb); Store.pinPads(null, data, cb);
}; };
if (!proxy.settings) { proxy.settings = {}; }
var manager = store.manager = ProxyManager.create(proxy.drive, { var manager = store.manager = ProxyManager.create(proxy.drive, {
edPublic: proxy.edPublic, edPublic: proxy.edPublic,
pin: pin, pin: pin,

View File

@ -95,6 +95,7 @@ define([
if (!sharedFolder && fd.owners && fd.owners.indexOf(edPublic) !== -1 if (!sharedFolder && fd.owners && fd.owners.indexOf(edPublic) !== -1
&& channelId) { && channelId) {
if (channelId) { ownedRemoved.push(channelId); } if (channelId) { ownedRemoved.push(channelId); }
Feedback.send('REMOVE_OWNED_CHANNEL');
removeOwnedChannel(channelId, function (obj) { removeOwnedChannel(channelId, function (obj) {
if (obj && obj.error) { if (obj && obj.error) {
// If the error is that the file is already removed, nothing to // If the error is that the file is already removed, nothing to

View File

@ -360,6 +360,17 @@ define([
editor.setOption('indentUnit', units); editor.setOption('indentUnit', units);
editor.setOption('tabSize', units); editor.setOption('tabSize', units);
editor.setOption('indentWithTabs', useTabs); editor.setOption('indentWithTabs', useTabs);
if (!useTabs) {
editor.setOption("extraKeys", {
Tab: function() {
editor.replaceSelection(Array(units + 1).join(" "));
}
});
} else {
editor.setOption("extraKeys", {
Tab: undefined,
});
}
$('.CodeMirror').css('font-size', fontSize+'px'); $('.CodeMirror').css('font-size', fontSize+'px');
}; };

View File

@ -48,14 +48,6 @@ define([
}); });
}; };
var loadFullHistory = function (config, common, cb) {
var realtime = createRealtime(config);
common.getFullHistory(realtime, function () {
cb(null, realtime);
});
};
loadFullHistory = loadFullHistory;
var fillChainPad = function (realtime, messages) { var fillChainPad = function (realtime, messages) {
messages.forEach(function (m) { messages.forEach(function (m) {
realtime.message(m); realtime.message(m);

View File

@ -514,11 +514,22 @@ define([
channel: secret.channel, channel: secret.channel,
validateKey: secret.keys.validateKey validateKey: secret.keys.validateKey
}, function (encryptedMsgs) { }, function (encryptedMsgs) {
cb(encryptedMsgs.map(function (msg) { var nt = nThen;
// The 3rd parameter "true" means we're going to skip signature validation. var decryptedMsgs = [];
// We don't need it since the message is already validated serverside by hk var total = encryptedMsgs.length;
return crypto.decrypt(msg, true, true); encryptedMsgs.forEach(function (msg, i) {
})); nt = nt(function (waitFor) {
// The 3rd parameter "true" means we're going to skip signature validation.
// We don't need it since the message is already validated serverside by hk
decryptedMsgs.push(crypto.decrypt(msg, true, true));
setTimeout(waitFor(function () {
sframeChan.event('EV_FULL_HISTORY_STATUS', (i+1)/total);
}));
}).nThen;
});
nt(function () {
cb(decryptedMsgs);
});
}); });
}); });
sframeChan.on('Q_GET_HISTORY_RANGE', function (data, cb) { sframeChan.on('Q_GET_HISTORY_RANGE', function (data, cb) {
@ -590,6 +601,13 @@ define([
}); });
}); });
sframeChan.on('Q_DRIVE_GETDELETED', function (data, cb) {
Cryptpad.getDeletedPads(data, function (err, obj) {
if (err) { return void console.error(err); }
cb(obj);
});
});
sframeChan.on('Q_SESSIONSTORAGE_PUT', function (data, cb) { sframeChan.on('Q_SESSIONSTORAGE_PUT', function (data, cb) {
sessionStorage[data.key] = data.value; sessionStorage[data.key] = data.value;
cb(); cb();

View File

@ -302,17 +302,6 @@ define([
}); });
}; };
funcs.getFullHistory = function (realtime, cb) {
ctx.sframeChan.query('Q_GET_FULL_HISTORY', null, function (err, messages) {
if (err) { return void console.error(err); }
if (!Array.isArray(messages)) { return; }
messages.forEach(function (m) {
realtime.message(m);
});
cb();
});
};
// href is optional here: if not provided, we use the href of the current tab // href is optional here: if not provided, we use the href of the current tab
funcs.getPadAttribute = function (key, cb, href) { funcs.getPadAttribute = function (key, cb, href) {
ctx.sframeChan.query('Q_GET_PAD_ATTRIBUTE', { ctx.sframeChan.query('Q_GET_PAD_ATTRIBUTE', {

View File

@ -7,7 +7,7 @@ define([
'/common/common-hash.js', '/common/common-hash.js',
'/common/common-util.js', '/common/common-util.js',
'/common/common-feedback.js', '/common/common-feedback.js',
'/contacts/messenger-ui.js', '/common/messenger-ui.js',
'/customize/messages.js', '/customize/messages.js',
], function ($, Config, ApiConfig, UIElements, UI, Hash, Util, Feedback, ], function ($, Config, ApiConfig, UIElements, UI, Hash, Util, Feedback,
MessengerUI, Messages) { MessengerUI, Messages) {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,487 +1,449 @@
{ {
"_languageName": "Español", "main_title": "Cryptpad: Zero Knowledge, Editor Colaborativo en Tiempo Real",
"main_title": "Cryptpad: Zero Knowledge, Editor Colaborativo en Tiempo Real", "type": {
"main_slogan": "La unidad es la fuerza - la colaboración es la clave", "pad": "Pad",
"type": { "code": "Código",
"pad": "Pad", "poll": "Encuesta",
"code": "Código", "slide": "Presentación",
"poll": "Encuesta", "whiteboard": "Pizarra",
"slide": "Presentación", "contacts": "Contactos",
"whiteboard": "Pizarra", "kanban": "Kanban",
"contacts": "Contactos" "drive": "CryptDrive"
}, },
"disconnected": "Desconectado", "disconnected": "Desconectado",
"synchronizing": "Sincronización", "synchronizing": "Sincronización",
"reconnecting": "Reconectando...", "reconnecting": "Reconectando...",
"lag": "Retraso", "lag": "Retraso",
"readonly": "Sólo lectura", "readonly": "Sólo lectura",
"anonymous": "Anónimo", "anonymous": "Anónimo",
"yourself": "Tú mismo", "yourself": "Tú mismo",
"anonymousUsers": "usuarios anónimos", "anonymousUsers": "usuarios anónimos",
"anonymousUser": "usuario anónimo", "anonymousUser": "usuario anónimo",
"users": "Usuarios", "users": "Usuarios",
"and": "y", "and": "y",
"viewer": "espectador", "viewer": "espectador",
"viewers": "espectadores", "viewers": "espectadores",
"editor": "editor", "editor": "editor",
"editors": "editores", "editors": "editores",
"greenLight": "Todo funciona bien", "greenLight": "Todo funciona bien",
"orangeLight": "La conexión es lenta y podría afectar la experiencia", "orangeLight": "La conexión es lenta y podría afectar la experiencia",
"redLight": "Has sido desconectado de la sesión", "redLight": "Has sido desconectado de la sesión",
"importButtonTitle": "Importar un documento de tus archivos locales", "importButtonTitle": "Importar un documento de tus archivos locales",
"exportButtonTitle": "Exportar este documento a un archivo local", "exportButtonTitle": "Exportar este documento a un archivo local",
"exportPrompt": "¿Cómo te gustaría llamar a este archivo?", "exportPrompt": "¿Cómo te gustaría llamar a este archivo?",
"changeNamePrompt": "Cambiar tu nombre (dejar vacío para ser anónimo): ", "changeNamePrompt": "Cambiar tu nombre (dejar vacío para ser anónimo): ",
"clickToEdit": "Haz clic para cambiar", "clickToEdit": "Haz clic para cambiar",
"forgetButtonTitle": "Eliminar este documento de la lista en la pagina de inicio", "forgetButtonTitle": "Eliminar este documento de la lista en la pagina de inicio",
"forgetPrompt": "Pulsar OK eliminará este documento del almacenamiento local (localStorage), ¿estás seguro?", "forgetPrompt": "Pulsar OK eliminará este documento del almacenamiento local (localStorage), ¿estás seguro?",
"shareButton": "Compartir", "shareButton": "Compartir",
"shareSuccess": "URL copiada al portapapeles", "shareSuccess": "URL copiada al portapapeles",
"presentButtonTitle": "Entrar en el modo presentación", "presentButtonTitle": "Entrar en el modo presentación",
"backgroundButtonTitle": "Cambiar el color de fondo en el modo presentación", "backgroundButtonTitle": "Cambiar el color de fondo en el modo presentación",
"colorButtonTitle": "Cambiar el color de texto en el modo presentación", "colorButtonTitle": "Cambiar el color de texto en el modo presentación",
"editShare": "URL de edición compartida", "editShare": "URL de edición compartida",
"editShareTitle": "Copiar la URL de edición al portapapeles", "editShareTitle": "Copiar la URL de edición al portapapeles",
"viewShare": "Compartir URL de sólo lectura", "viewShare": "Compartir URL de sólo lectura",
"viewShareTitle": "Copiar la URL de sólo lectura al portapapeles", "viewShareTitle": "Copiar la URL de sólo lectura al portapapeles",
"viewOpen": "Ver en pestaña nueva", "viewOpen": "Ver en pestaña nueva",
"viewOpenTitle": "Abrir el documento en sólo lectura en una pestaña nueva", "viewOpenTitle": "Abrir el documento en sólo lectura en una pestaña nueva",
"notifyJoined": "{0} se ha unido a la sesión de colaboración", "notifyJoined": "{0} se ha unido a la sesión de colaboración",
"notifyRenamed": "{0} ahora se conoce como {1}", "notifyRenamed": "{0} ahora se conoce como {1}",
"notifyLeft": "{0} ha dejado la sesión de colaboración", "notifyLeft": "{0} ha dejado la sesión de colaboración",
"tryIt": "¡Pruébalo!", "okButton": "OK (Enter)",
"okButton": "OK (Enter)", "cancelButton": "Cancelar (Esc)",
"cancelButton": "Cancelar (Esc)", "poll_title": "Selector de fecha Zero Knowledge",
"poll_title": "Selector de fecha Zero Knowledge", "poll_subtitle": "Agenda en <em>tiempo real</em> Zero Knowledge",
"poll_subtitle": "Agenda en <em>tiempo real</em> Zero Knowledge", "poll_p_save": "Tus configuraciones se actualizan instantáneamente, no es necesario guardar cambios.",
"poll_p_save": "Tus configuraciones se actualizan instantáneamente, no es necesario guardar cambios.", "poll_p_encryption": "Todos los datos entrados son cifrados, sólo las personas que poseen el enlace tienen acceso. Incluso el servidor no puede ver el contenido.",
"poll_p_encryption": "Todos los datos entrados son cifrados, sólo las personas que poseen el enlace tienen acceso. Incluso el servidor no puede ver el contenido.", "wizardLog": "Presiona el botón en la parte superior izquierda para volver a la encuesta",
"wizardLog": "Presiona el botón en la parte superior izquierda para volver a la encuesta", "wizardTitle": "Utiliza el asistente para crear tu encuesta",
"wizardTitle": "Utiliza el asistente para crear tu encuesta", "wizardConfirm": "¿Estás realmente seguro de agregar estas opciones a tu encuesta?",
"wizardConfirm": "¿Estás realmente seguro de agregar estas opciones a tu encuesta?", "poll_closeWizardButton": "Cerrar el asistente",
"poll_closeWizardButton": "Cerrar el asistente", "poll_closeWizardButtonTitle": "Cerrar el asistente",
"poll_closeWizardButtonTitle": "Cerrar el asistente", "poll_wizardComputeButton": "Generar opciones",
"poll_wizardComputeButton": "Generar opciones", "poll_wizardClearButton": "Limpiar tabla",
"poll_wizardClearButton": "Limpiar tabla", "poll_wizardDescription": "Crear opciones automáticamente ingresando cualquier cantidad de fechas y horas",
"poll_wizardDescription": "Crear opciones automáticamente ingresando cualquier cantidad de fechas y horas", "poll_wizardAddDateButton": "+ Fechas",
"poll_wizardAddDateButton": "+ Fechas", "poll_wizardAddTimeButton": "+ Horas",
"poll_wizardAddTimeButton": "+ Horas", "poll_optionPlaceholder": "Opción",
"poll_optionPlaceholder": "Opción", "poll_userPlaceholder": "Tu nombre",
"poll_userPlaceholder": "Tu nombre", "poll_removeOption": "¿Estás seguro de que quieres eliminar esta opción?",
"poll_removeOption": "¿Estás seguro de que quieres eliminar esta opción?", "poll_removeUser": "¿Estás seguro de que quieres eliminar este usuario?",
"poll_removeUser": "¿Estás seguro de que quieres eliminar este usuario?", "poll_titleHint": "Título",
"poll_titleHint": "Título", "poll_descriptionHint": "Descripción",
"poll_descriptionHint": "Descripción", "button_newpad": "Crear nuevo pad de texto enriquecido",
"main_p2": "Este proyecto utiliza el editor de texto visual <a href=\"http://ckeditor.com/\">CKEditor</a>, <a href=\"https://codemirror.net/\">CodeMirror</a>, y el motor en tiempo real <a href=\"https://github.com/xwiki-contrib/chainpad\">ChainPad</a>.", "button_newcode": "Crear nuevo pad de código",
"main_howitworks": "¿Cómo funciona?", "button_newpoll": "Crear nueva encuesta",
"main_howitworks_p1": "CryptPad utiliza una variante del algoritmo de <a href='https://en.wikipedia.org/wiki/Operational_transformation'>transformación operacional</a> (página en inglés) que es capaz de encontrar un consenso distribuido usando un <a href='https://bitcoin.org/bitcoin.pdf'>Blockchain Nakamoto</a> (página en inglés), popularizado por <a href='https://es.wikipedia.org/wiki/Bitcoin'>Bitcoin</a>. De esta manera el algoritmo puede evitar la necesidad de un servidor central para resolver conflictos de edición de la transformación operacional y sin necesidad de resolver conflictos, el servidor puede mantenerse inconsciente del contenido que se está editando en el pad.", "button_newslide": "Crear nueva presentación",
"main_about_p2": "Si tienes preguntas o comentarios, puedes <a href=\"https://twitter.com/cryptpad\"><i class=\"fa fa-twitter\"></i>enviarnos un tweet</a>, abrir un issue <a href=\"https://github.com/xwiki-labs/cryptpad/issues/\" title=\"nuestro issue tracker\">en <i class=\"fa fa-github\"></i>GitHub</a>. saludarnos en <a href=\"https://riot.im/app/#/room/#cryptpad:matrix.org\" title=\"Matrix\">nuestro <i class=\"fa fa-comment\"></i>canal Matrix</a> o en IRC (#cryptpad on irc.freenode.net), o <a href=\"mailto:research@xwiki.com\"><i class=\"fa fa-envelope\"></i>envianos un email</a>.", "policy_title": "Política de privacidad Cryptpad",
"button_newpad": "Crear nuevo pad de texto enriquecido", "policy_whatweknow": "Qué sabemos sobre tí",
"button_newcode": "Crear nuevo pad de código", "policy_whatweknow_p1": "Como cualquier aplicación que está en la red, Cryptpad tiene acceso a los metadatos expuestos por el protocolo HTTP. Esto incluye tu dirección IP, y otros headers HTTP que pueden ser utilizados para identificar a tu navegador propio. Puedes ver la información que comparte tu navegador visitando <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"Qué headers HTTP esta compartiendo mi navegador\">WhatIsMyBrowser.com</a> (página en inglés).",
"button_newpoll": "Crear nueva encuesta", "policy_whatweknow_p2": "Nosotros usamos <a href=\"https://piwik.org/\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"open source analytics platform\">Piwik</a>, una plataforma de analítica de datos abierta, para conocer mejor a nuestros usuarios. Piwik nos dice como encontraste Cryptpad, en entrada manual, por un motor de búsqueda, or por referal de otra página como Reddit o Twitter. También aprendemos cuándo visitas, qué páginas ves en nuestra web, y cuánto tiempo te quedas en cada una.",
"button_newslide": "Crear nueva presentación", "policy_howweuse": "Cómo usamos lo que aprendemos",
"policy_title": "Política de privacidad Cryptpad", "policy_howweuse_p1": "Usamos esta información para tomar mejores decisiones para promocionar Cryptpad, para evaluar cuáles de nuestros esfuerzos han sido exitosos. La información sobre tu ubicación nos permite saber si deberíamos considerar mejor soporte para idiomas diferentes al inglés.",
"policy_whatweknow": "Qué sabemos sobre tí", "policy_howweuse_p2": "La información sobre tu navegador (en escritorio o móvil) nos ayuda a saber qué características que debemos mejorar. Nuestro equipo de desarrollo es pequeño, e intentamos tomar decisiones que beneficien a la experiencia de la mayoría de nuestros usuarios.",
"policy_whatweknow_p1": "Como cualquier aplicación que está en la red, Cryptpad tiene acceso a los metadatos expuestos por el protocolo HTTP. Esto incluye tu dirección IP, y otros headers HTTP que pueden ser utilizados para identificar a tu navegador propio. Puedes ver la información que comparte tu navegador visitando <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"Qué headers HTTP esta compartiendo mi navegador\">WhatIsMyBrowser.com</a> (página en inglés).", "policy_whatwetell": "Lo que decimos a otros sobre tí",
"policy_whatweknow_p2": "Nosotros usamos <a href=\"https://piwik.org/\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"open source analytics platform\">Piwik</a>, una plataforma de analítica de datos abierta, para conocer mejor a nuestros usuarios. Piwik nos dice como encontraste Cryptpad, en entrada manual, por un motor de búsqueda, or por referal de otra página como Reddit o Twitter. También aprendemos cuándo visitas, qué páginas ves en nuestra web, y cuánto tiempo te quedas en cada una.", "policy_whatwetell_p1": "No suministramos la información que recolectamos a terceros a menos de estar legalmente obligados a hacerlo.",
"policy_howweuse": "Cómo usamos lo que aprendemos", "policy_links": "Enlaces a otras páginas",
"policy_howweuse_p1": "Usamos esta información para tomar mejores decisiones para promocionar Cryptpad, para evaluar cuáles de nuestros esfuerzos han sido exitosos. La información sobre tu ubicación nos permite saber si deberíamos considerar mejor soporte para idiomas diferentes al inglés.", "policy_links_p1": "Esta web contiene enlaces a otros sitios, incluyendo algunos producidos por otras organizaciones. No somos responsables del tratamiento de la privacidad de los datos ni el contenido de páginas externas. Como regla general, los enlaces externos se abren en una nueva pestaña del navegador, para clarificar que estás abandonando a Cryptpad.fr.",
"policy_howweuse_p2": "La información sobre tu navegador (en escritorio o móvil) nos ayuda a saber qué características que debemos mejorar. Nuestro equipo de desarrollo es pequeño, e intentamos tomar decisiones que beneficien a la experiencia de la mayoría de nuestros usuarios.", "policy_ads": "Anuncios",
"policy_whatwetell": "Lo que decimos a otros sobre tí", "policy_ads_p1": "Nosotros no mostramos anuncios, pero podemos poner enlaces a las organizaciones que financian nuestro trabajo de investigación.",
"policy_whatwetell_p1": "No suministramos la información que recolectamos a terceros a menos de estar legalmente obligados a hacerlo.", "policy_choices": "Lo que puedes hacer",
"policy_links": "Enlaces a otras páginas", "policy_choices_open": "Nuestro código fuente es abierto para que siempre tengas la opción de desplegar tu propia instancia de Cryptpad.",
"policy_links_p1": "Esta web contiene enlaces a otros sitios, incluyendo algunos producidos por otras organizaciones. No somos responsables del tratamiento de la privacidad de los datos ni el contenido de páginas externas. Como regla general, los enlaces externos se abren en una nueva pestaña del navegador, para clarificar que estás abandonando a Cryptpad.fr.", "policy_choices_vpn": "Si deseas utilizar nuestra instancia, pero no deseas exponer tu dirección IP, puedes protegerla utilizando <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"descargas Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">el navegador Tor</a>, o un <a href=\"https://riseup.net/en/vpn\" title=\"VPNs por Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.",
"policy_ads": "Anuncios", "policy_choices_ads": "Si deseas no ser seguido por nuestra plataforma, puedes utilizar herramientas como <a href=\"https://www.eff.org/privacybadger\" title=\"descargar a Privacy Badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.",
"policy_ads_p1": "Nosotros no mostramos anuncios, pero podemos poner enlaces a las organizaciones que financian nuestro trabajo de investigación.", "tos_title": "Condiciones de servicio Cryptpad",
"policy_choices": "Lo que puedes hacer", "tos_legal": "Por favor, no seas malicioso, abusivo o hagas algo ilegal.",
"policy_choices_open": "Nuestro código fuente es abierto para que siempre tengas la opción de desplegar tu propia instancia de Cryptpad.", "tos_availability": "Esperamos que este servicio te parezca útil, pero nuestra disponibilidad o rendimiento no pueden ser garantizados. Por favor, exporta tus datos regularmente.",
"policy_choices_vpn": "Si deseas utilizar nuestra instancia, pero no deseas exponer tu dirección IP, puedes protegerla utilizando <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"descargas Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">el navegador Tor</a>, o un <a href=\"https://riseup.net/en/vpn\" title=\"VPNs por Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.", "tos_e2ee": "Los documentos Cryptpad pueden ser leídos o modificados por cualquiera que pueda adivinar o que pueda tener el enlace. Recomendamos que utilices mensajes cifrados de punto a punto (e2ee) para compartir URLs, no asumimos ninguna responsabilidad en el evento de alguna fuga.",
"policy_choices_ads": "Si deseas no ser seguido por nuestra plataforma, puedes utilizar herramientas como <a href=\"https://www.eff.org/privacybadger\" title=\"descargar a Privacy Badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.", "tos_logs": "Los metadatos entregados por el navegador al servidor pueden ser almacenados para la mantenencia del servicio.",
"tos_title": "Condiciones de servicio Cryptpad", "tos_3rdparties": "No proveemos datos individualizados a terceros a menos de ser obligados por la ley.",
"tos_legal": "Por favor, no seas malicioso, abusivo o hagas algo ilegal.", "header_logoTitle": "Volver a tu CryptDrive",
"tos_availability": "Esperamos que este servicio te parezca útil, pero nuestra disponibilidad o rendimiento no pueden ser garantizados. Por favor, exporta tus datos regularmente.", "websocketError": "Error al conectarse al servidor WebSocket",
"tos_e2ee": "Los documentos Cryptpad pueden ser leídos o modificados por cualquiera que pueda adivinar o que pueda tener el enlace. Recomendamos que utilices mensajes cifrados de punto a punto (e2ee) para compartir URLs, no asumimos ninguna responsabilidad en el evento de alguna fuga.", "typeError": "Este documento no es compatible con la aplicación seleccionada",
"tos_logs": "Los metadatos entregados por el navegador al servidor pueden ser almacenados para la mantenencia del servicio.", "onLogout": "Tu sesión está cerrada, {0}haz clic aquí{1} para iniciar sesión<br>o pulsa <em>Escape</em> para acceder al documento en modo sólo lectura.",
"tos_3rdparties": "No proveemos datos individualizados a terceros a menos de ser obligados por la ley.", "loading": "Cargando...",
"bottom_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Hecho con <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" alt=\"amor\" /> en <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" alt=\"Francia\" /></a>", "error": "Error",
"bottom_support": "<a href=\"http://labs.xwiki.com/\" title=\"XWiki Labs\" target=\"_blank\" rel=\"noopener noreferrer\">Un <img src=\"/customize/logo-xwiki2.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/>Proyecto Labs</a> con el soporte de <a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"><img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>", "language": "Idioma",
"header_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Con <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" alt=\"amor\" /> de <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" title=\"France\" alt=\"Francia\"/> por <img src=\"/customize/logo-xwiki.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/></a>", "user_rename": "Cambiar nombre",
"header_support": "<a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferre-r\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>", "user_displayName": "Nombre visible",
"header_logoTitle": "Volver a tu CryptDrive", "user_accountName": "Nombre de cuenta",
"websocketError": "Error al conectarse al servidor WebSocket", "newButton": "Nuevo",
"typeError": "Este documento no es compatible con la aplicación seleccionada", "newButtonTitle": "Nuevo documento",
"onLogout": "Tu sesión está cerrada, {0}haz clic aquí{1} para iniciar sesión<br>o pulsa <em>Escape</em> para acceder al documento en modo sólo lectura.", "cancel": "Cancelar",
"loading": "Cargando...", "poll_publish_button": "Publicar",
"error": "Error", "poll_admin_button": "Administrar",
"language": "Idioma", "poll_create_user": "Añadir usuario",
"user_rename": "Cambiar nombre", "poll_create_option": "Añadir opción",
"user_displayName": "Nombre visible", "poll_commit": "Validar",
"user_accountName": "Nombre de cuenta", "fm_rootName": "Documentos",
"newButton": "Nuevo", "fm_trashName": "Papelera",
"newButtonTitle": "Nuevo documento", "fm_unsortedName": "Sin organizar",
"cancel": "Cancelar", "fm_filesDataName": "Todos los archivos",
"poll_publish_button": "Publicar", "fm_templateName": "Plantilla",
"poll_admin_button": "Administrar", "fm_newButton": "Nuevo",
"poll_create_user": "Añadir usuario", "fm_newFolder": "Nueva carpeta",
"poll_create_option": "Añadir opción", "fm_folder": "Carpeta",
"poll_commit": "Validar", "fm_folderName": "Nombre de carpeta",
"fm_rootName": "Documentos", "fm_numberOfFolders": "# de carpetas",
"fm_trashName": "Papelera", "fm_numberOfFiles": "# de archivos",
"fm_unsortedName": "Sin organizar", "fm_fileName": "Nombre",
"fm_filesDataName": "Todos los archivos", "fm_title": "Título",
"fm_templateName": "Plantilla", "fm_lastAccess": "Último acceso",
"fm_newButton": "Nuevo", "fm_creation": "Creación",
"fm_newFolder": "Nueva carpeta", "fm_forbidden": "Acción prohibida",
"fm_folder": "Carpeta", "fm_originalPath": "Enlace original",
"fm_folderName": "Nombre de carpeta", "fm_noname": "Documento sin título",
"fm_numberOfFolders": "# de carpetas", "fm_emptyTrashDialog": "¿Seguro que quieres vaciar la papelera?",
"fm_numberOfFiles": "# de archivos", "fm_removeSeveralPermanentlyDialog": "¿Seguro que quieres eliminar estos {0} elementos de la papelera para siempre?",
"fm_fileName": "Nombre", "fm_removePermanentlyDialog": "¿Seguro que quieres eliminar este elemento para siempre?",
"fm_title": "Título", "fm_removeSeveralDialog": "¿Seguro que quieres mover estos {0} elementos a la papelera?",
"fm_lastAccess": "Último acceso", "fm_removeDialog": "¿Seguro que quieres mover {0} a la papelera?",
"fm_creation": "Creación", "fm_restoreDialog": "¿Seguro que quieres recuperar {0}?",
"fm_forbidden": "Acción prohibida", "fm_unknownFolderError": "La carpeta seleccionada ya no existe. Abriendo la carpeta anterior...",
"fm_originalPath": "Enlace original", "fm_contextMenuError": "No se pudo abrir el menú para este elemento. Si persiste el problema, recarga la página.",
"fm_noname": "Documento sin título", "fm_selectError": "No se pudo abrir el elemento. Si persiste el problema, recarga la página.",
"fm_emptyTrashDialog": "¿Seguro que quieres vaciar la papelera?", "fm_info_root": "Crea carpetas aquí para organizar tus documentos.",
"fm_removeSeveralPermanentlyDialog": "¿Seguro que quieres eliminar estos {0} elementos de la papelera para siempre?", "fm_info_unsorted": "Contiene todos los documentos que has visitado que no están organizados en \"Documentos\" o movidos a la \"Papelera\".",
"fm_removePermanentlyDialog": "¿Seguro que quieres eliminar este elemento para siempre?", "fm_info_template": "Contiene todas las plantillas que puedes volver a usar para crear nuevos documentos.",
"fm_removeSeveralDialog": "¿Seguro que quieres mover estos {0} elementos a la papelera?", "fm_info_allFiles": "Contiene todos los archivos de \"Documentos\", \"Sin organizar\" y \"Papelera\". No puedes mover o eliminar archivos aquí.",
"fm_removeDialog": "¿Seguro que quieres mover {0} a la papelera?", "fm_alert_backupUrl": "Enlace de copia de seguridad para este drive. Te recomendamos <strong>encarecidamente</strong> que lo guardes secreto.<br>Lo puedes usar para recuperar todos tus archivos en el caso que la memoria de tu navegador se borre.<br>Cualquiera con este enlace puede editar o eliminar todos los archivos en el explorador.<br>",
"fm_restoreDialog": "¿Seguro que quieres recuperar {0}?", "fm_backup_title": "Enlace de copia de seguridad",
"fm_unknownFolderError": "La carpeta seleccionada ya no existe. Abriendo la carpeta anterior...", "fm_nameFile": "¿Cómo quieres nombrar este archivo?",
"fm_contextMenuError": "No se pudo abrir el menú para este elemento. Si persiste el problema, recarga la página.", "fc_newfolder": "Nueva carpeta",
"fm_selectError": "No se pudo abrir el elemento. Si persiste el problema, recarga la página.", "fc_rename": "Cambiar nombre",
"fm_info_root": "Crea carpetas aquí para organizar tus documentos.", "fc_open": "Abrir",
"fm_info_unsorted": "Contiene todos los documentos que has visitado que no están organizados en \"Documentos\" o movidos a la \"Papelera\".", "fc_open_ro": "Abrir (sólo lectura)",
"fm_info_template": "Contiene todas las plantillas que puedes volver a usar para crear nuevos documentos.", "fc_delete": "Eliminar",
"fm_info_allFiles": "Contiene todos los archivos de \"Documentos\", \"Sin organizar\" y \"Papelera\". No puedes mover o eliminar archivos aquí.", "fc_restore": "Recuperar",
"fm_alert_backupUrl": "Enlace de copia de seguridad para este drive. Te recomendamos <strong>encarecidamente</strong> que lo guardes secreto.<br>Lo puedes usar para recuperar todos tus archivos en el caso que la memoria de tu navegador se borre.<br>Cualquiera con este enlace puede editar o eliminar todos los archivos en el explorador.<br>", "fc_remove": "Eliminar para siempre",
"fm_backup_title": "Enlace de copia de seguridad", "fc_empty": "Vaciar la papelera",
"fm_nameFile": "¿Cómo quieres nombrar este archivo?", "fc_prop": "Propiedades",
"fc_newfolder": "Nueva carpeta", "fo_moveUnsortedError": "No puedes mover una carpeta en la lista de documentos no organizados",
"fc_rename": "Cambiar nombre", "fo_existingNameError": "Nombre ya utilizado en esta carpeta. Por favor elige otro.",
"fc_open": "Abrir", "fo_moveFolderToChildError": "No puedes mover una carpeta en una de sus subcarpetas",
"fc_open_ro": "Abrir (sólo lectura)", "fo_unableToRestore": "No se pudo restaurar este archivo a la localización de origen. Puedes intentar moverlo a otra localización.",
"fc_delete": "Eliminar", "fo_unavailableName": "Un archivo o carpeta ya tiene este nombre. Cámbialo y vuelve a intentarlo.",
"fc_restore": "Recuperar", "login_login": "Iniciar sesión",
"fc_remove": "Eliminar para siempre", "login_makeAPad": "Crear documento anónimo",
"fc_empty": "Vaciar la papelera", "login_nologin": "Ver documentos locales",
"fc_prop": "Propiedades", "login_register": "Registrarse",
"fo_moveUnsortedError": "No puedes mover una carpeta en la lista de documentos no organizados", "logoutButton": "Cerrar sesión",
"fo_existingNameError": "Nombre ya utilizado en esta carpeta. Por favor elige otro.", "settingsButton": "Preferencias",
"fo_moveFolderToChildError": "No puedes mover una carpeta en una de sus subcarpetas", "login_username": "Nombre de usuario",
"fo_unableToRestore": "No se pudo restaurar este archivo a la localización de origen. Puedes intentar moverlo a otra localización.", "login_password": "Contraseña",
"fo_unavailableName": "Un archivo o carpeta ya tiene este nombre. Cámbialo y vuelve a intentarlo.", "login_confirm": "Confirmar contraseña",
"login_login": "Iniciar sesión", "login_remember": "Recuérdame",
"login_makeAPad": "Crear documento anónimo", "login_hashing": "Generando hash de tu contraseña, esto puede tardar un poco.",
"login_nologin": "Ver documentos locales", "login_hello": "Hola {0},",
"login_register": "Registrarse", "login_helloNoName": "Hola,",
"logoutButton": "Cerrar sesión", "login_accessDrive": "Acceder a tu drive",
"settingsButton": "Preferencias", "login_orNoLogin": "o",
"login_username": "Nombre de usuario", "login_noSuchUser": "Credenciales inválidos. Inténtalo de nuevo, o regístrate",
"login_password": "Contraseña", "login_invalUser": "Nombre de usuario requerido",
"login_confirm": "Confirmar contraseña", "login_invalPass": "Contraseña requerida",
"login_remember": "Recuérdame", "login_unhandledError": "Ha ocurrido un error inesperado :(",
"login_hashing": "Generando hash de tu contraseña, esto puede tardar un poco.", "register_importRecent": "Importe el historial de tu sesión anónima",
"login_hello": "Hola {0},", "register_acceptTerms": "Acepto los <a href='/terms.html' tabindex='-1'>términos de servicio</a>",
"login_helloNoName": "Hola,", "register_passwordsDontMatch": "Las contraseñas no corresponden",
"login_accessDrive": "Acceder a tu drive", "register_mustAcceptTerms": "Tienes que aceptar los términos de servicio",
"login_orNoLogin": "o", "register_mustRememberPass": "No podemos reiniciar tu contraseña si la olvidas. ¡Es muy importante que la recuerdes! Marca la casilla para confirmarlo.",
"login_noSuchUser": "Credenciales inválidos. Inténtalo de nuevo, o regístrate", "register_header": "Bienvenido a CryptPad",
"login_invalUser": "Nombre de usuario requerido", "register_explanation": "<p>Vamos a ver algunas cosas antes</p><ul><li>Tu contraseña es tu clave secreta que cifra todos tus documentos. Si la pierdes no podremos recuperar tus datos.</li><li>Puedes importar documentos que has visto recientemente en tu navegador para tenerlos en tu cuenta.</li><li>Si estás usando un ordenador compartido, tienes que cerrar sesión cuando terminas, cerrar la pestaña no es suficiente.</li></ul>",
"login_invalPass": "Contraseña requerida", "settings_title": "Preferencias",
"login_unhandledError": "Ha ocurrido un error inesperado :(", "settings_save": "Guardar",
"register_importRecent": "Importe el historial de tu sesión anónima", "settings_backup": "Copia de seguridad",
"register_acceptTerms": "Acepto los <a href='/terms.html' tabindex='-1'>términos de servicio</a>", "settings_restore": "Recuperar datos",
"register_passwordsDontMatch": "Las contraseñas no corresponden", "settings_reset": "Quita todos los documentos de tu CryptDrive",
"register_mustAcceptTerms": "Tienes que aceptar los términos de servicio", "settings_resetPrompt": "Esta acción eliminará todos tus documentos.<br>¿Seguro que quieres continuar?<br>Introduce “<em>I love CryptPad</em>” para confirmar.",
"register_mustRememberPass": "No podemos reiniciar tu contraseña si la olvidas. ¡Es muy importante que la recuerdes! Marca la casilla para confirmarlo.", "settings_resetDone": "¡Tu drive ahora está vacio!",
"register_header": "Bienvenido a CryptPad", "settings_resetTips": "Consejos en CryptDrive",
"register_explanation": "<p>Vamos a ver algunas cosas antes</p><ul><li>Tu contraseña es tu clave secreta que cifra todos tus documentos. Si la pierdes no podremos recuperar tus datos.</li><li>Puedes importar documentos que has visto recientemente en tu navegador para tenerlos en tu cuenta.</li><li>Si estás usando un ordenador compartido, tienes que cerrar sesión cuando terminas, cerrar la pestaña no es suficiente.</li></ul>", "settings_resetTipsButton": "Restaurar consejos",
"settings_title": "Preferencias", "settings_resetTipsDone": "Todos los consejos ahora están visibles",
"settings_save": "Guardar", "main_info": "<h1>Colabora con Confianza</h1><br>Cultiva ideas juntos con documentos compartidos con tecnología <strong>Zero Knowledge</strong> que protege tu privacidad.",
"settings_backupTitle": "Copia de seguridad", "main_richText": "Editor de Texto Enriquecido",
"settings_backup": "Copia de seguridad", "main_code": "Editor de código",
"settings_restore": "Recuperar datos", "main_slide": "Editor de presentación",
"settings_reset": "Quita todos los documentos de tu CryptDrive", "main_poll": "Encuestas",
"settings_resetPrompt": "Esta acción eliminará todos tus documentos.<br>¿Seguro que quieres continuar?<br>Introduce “<em>I love CryptPad</em>” para confirmar.", "main_drive": "CryptDrive",
"settings_resetDone": "¡Tu drive ahora está vacio!", "footer_applications": "Aplicaciones",
"settings_resetTips": "Consejos en CryptDrive", "footer_contact": "Contacto",
"settings_resetTipsButton": "Restaurar consejos", "footer_aboutUs": "Acerca de nosotros",
"settings_resetTipsDone": "Todos los consejos ahora están visibles", "about": "Acerca de nosotros",
"main_info": "<h1>Colabora con Confianza</h1><br>Cultiva ideas juntos con documentos compartidos con tecnología <strong>Zero Knowledge</strong> que protege tu privacidad.", "privacy": "Privacidad",
"main_zeroKnowledge": "Zero Knowledge", "contact": "Contacto",
"main_zeroKnowledge_p": "No tienes que confiar en que <em>no</em> veremos tus documentos, con la tecnología Zero Knowledge de CryptPad <em>no podemos</em>. Aprende más sobre cómo protegemos tu <a href=\"/privacy.html\" title='Privacidad'>Privacidad y Seguridad</a>.", "terms": "Términos de Servicio",
"main_writeItDown": "Escríbelo", "movedToTrash": "Este pad fue movido a la papelera.<br><a href\"/drive/\">Acceder a mi Drive</a>",
"main_writeItDown_p": "Los mejores proyectos vienen de las más pequeñas ideas. Escribe tus momentos de inspiración e ideas inesperadas porque nunca sabrás cuál será tu próximo descubrimiento.", "fm_newFile": "Nuevo pad",
"main_share": "Comparte el enlace, comparte el pad", "fm_type": "Tipo",
"main_share_p": "Cultiva ideas juntos: ten reuniones eficaces, colabora en listas y haz presentaciones rápidas en todos tus dispositivos.", "fm_categoryError": "No se pudo abrir la categoría seleccionada, mostrando la raíz.",
"main_organize": "Organízate", "settings_userFeedbackHint1": "CryptPad suministra informaciones muy básicas al servidor, para ayudarnos a mejorar vuestra experiencia.",
"main_organize_p": "Con CryptPad Drive, mantén tu atención en lo más importante. Las carpetas te permiten organizar tus proyectos y tener una visión global de dónde van las cosas.", "settings_userFeedbackHint2": "El contenido de tu pad nunca será compartido con el servidor.",
"main_richText": "Editor de Texto Enriquecido", "settings_userFeedback": "Activar feedback",
"main_richText_p": "Colabora en texto enriquecido con nuestro editor Zero Knowledge en tiempo real <a href=\"http://ckeditor.com\" target=\"_blank\">CkEditor</a>.", "settings_anonymous": "No has iniciado sesión. Tus ajustes se aplicarán sólo a este navegador.",
"main_code": "Editor de código", "blog": "Blog",
"main_code_p": "Edita código fuente para tus programas con nuestro editor Zero Knowledge en tiempo real <a href=\"https://www.codemirror.net\" target=\"_blank\">CodeMirror</a>.", "driveReadmeTitle": "¿Qué es CryptPad?",
"main_slide": "Editor de presentación", "readme_welcome": "¡Bienvenido a CryptPad!",
"main_slide_p": "Crea presentaciones utilizando Markdown, y visualízalos en tu navegador", "readme_p1": "Bienvenido a CryptPad, aquí podrás anotar cosas solo o con otra gente.",
"main_poll": "Encuestas", "readme_p2": "Este pad es una guía rápida para aprender a usar a CryptPad para tomar notas, organizarlas y trabajar con más personas.",
"main_poll_p": "Planifica tus reuniones y eventos, o vota para la mejor solución a un problema.", "readme_cat1": "Conoce tu CryptDrive",
"main_drive": "CryptDrive", "readme_cat1_l1": "Crea un pad: En CryptDrive, haz clic en {0} y luego en {1} para crear un pad.",
"footer_applications": "Aplicaciones", "readme_cat1_l2": "Abrir pads desde CryptDrive: haz doble clic en un icono para abrirlo.",
"footer_contact": "Contacto", "readme_cat1_l3": "Organiza tus pads: Cuando has iniciado sesión, cada pad al que accedes se quedará en tu drive en {0}.",
"footer_aboutUs": "Acerca de nosotros", "readme_cat1_l3_l1": "Puedes hacer clic y arrastrar archivos en carpetas desde {0}, y crear nuevas carpetas.",
"about": "Acerca de nosotros", "readme_cat1_l3_l2": "Recuerda hacer clic derecho en los iconos, ya que suele haber menús adicionales.",
"privacy": "Privacidad", "readme_cat1_l4": "Elimina tus viejos pads: Haz clic y arrastra tus pads en la {0} de la misma manera que lo harías con carpetas.",
"contact": "Contacto", "readme_cat2": "Haz pads como un pro",
"terms": "Términos de Servicio", "edit": "editar",
"movedToTrash": "Este pad fue movido a la papelera.<br><a href\"/drive/\">Acceder a mi Drive</a>", "view": "ver",
"fm_newFile": "Nuevo pad", "readme_cat2_l1": "El botón {0} en tu pad te permite dar acceso a colaboradores para {1} o {2} el pad.",
"fm_type": "Tipo", "readme_cat2_l2": "Cambia el título del pad haciendo clic en el lápiz",
"fm_categoryError": "No se pudo abrir la categoría seleccionada, mostrando la raíz.", "readme_cat3": "Descubre las apps CryptPad",
"settings_userFeedbackHint1": "CryptPad suministra informaciones muy básicas al servidor, para ayudarnos a mejorar vuestra experiencia.", "readme_cat3_l1": "Con el editor de código CryptPad, puedes colaborar en código fuente, como por ejemplo JavaScript y Markdown",
"settings_userFeedbackHint2": "El contenido de tu pad nunca será compartido con el servidor.", "readme_cat3_l2": "Con los slides CryptPad, puedes hacer presentaciones rápidas con Markdown",
"settings_userFeedback": "Activar feedback", "readme_cat3_l3": "Con CryptPoll puedes hacer una encuesta rápida, especialmente útil para programar un horario que conviene a todo el mundo",
"settings_anonymous": "No has iniciado sesión. Tus ajustes se aplicarán sólo a este navegador.", "settings_resetError": "Verificación no válida. Tu CryptDrive no fue cambiado.",
"blog": "Blog", "saved": "Guardado",
"initialState": "<p>Esto es&nbsp;<strong>CryptPad</strong>, el editor colaborativo en tiempo real Zero Knowledge. Todo está guardado cuando escribes.<br>Comparte el enlace a este pad para editar con amigos o utiliza el botón <span class=\"fa fa-share-alt\"></span> para obtener un <em>enlace sólo lectura</em>&nbsp;que permite leer pero no escribir.</p>", "printButton": "Imprimir",
"codeInitialState": "/*\n Esto es CryptPad, el editor colaborativo en tiempo real zero knowledge.\n Lo que escribes aquí está cifrado de manera que sólo las personas con el enlace pueden acceder a ello.\n Incluso el servidor no puede ver lo que escribes.\n Lo que ves aquí, lo que escuchas aquí, cuando sales, se queda aquí\n*/", "printOptions": "Opciones de impresión",
"slideInitialState": "# CryptSlide\n1. Escribe tu contenido en Markdown\n - Puedes aprender más sobre Markdown [aquí](http://www.markdowntutorial.com/)\n2. Separa tus diapositivas con ---\n3. Haz clic en \"Presentar\" para ver el resultado - Tus diapositivas se actualizan en tiempo real", "printSlideNumber": "Mostrar el número de diapositiva",
"driveReadmeTitle": "¿Qué es CryptPad?", "printDate": "Mostrar la fecha",
"readme_welcome": "¡Bienvenido a CryptPad!", "printTitle": "Mostrar el título",
"readme_p1": "Bienvenido a CryptPad, aquí podrás anotar cosas solo o con otra gente.", "printCSS": "CSS personalizado:",
"readme_p2": "Este pad es una guía rápida para aprender a usar a CryptPad para tomar notas, organizarlas y trabajar con más personas.", "editOpen": "Abrir enlaces de edición en pestaña nueva",
"readme_cat1": "Conoce tu CryptDrive", "editOpenTitle": "Abrir en modo edición en pestaña nueva",
"readme_cat1_l1": "Crea un pad: En CryptDrive, haz clic en {0} y luego en {1} para crear un pad.", "settings_importTitle": "Importar pads recientes locales en CryptDrive",
"readme_cat1_l2": "Abrir pads desde CryptDrive: haz doble clic en un icono para abrirlo.", "settings_import": "Importar",
"readme_cat1_l3": "Organiza tus pads: Cuando has iniciado sesión, cada pad al que accedes se quedará en tu drive en {0}.", "settings_importConfirm": "¿Seguro que quieres importar tus pads recientes a tu cuenta CryptDrive?",
"readme_cat1_l3_l1": "Puedes hacer clic y arrastrar archivos en carpetas desde {0}, y crear nuevas carpetas.", "settings_importDone": "Importación terminada",
"readme_cat1_l3_l2": "Recuerda hacer clic derecho en los iconos, ya que suele haber menús adicionales.", "tips": {
"readme_cat1_l4": "Elimina tus viejos pads: Haz clic y arrastra tus pads en la {0} de la misma manera que lo harías con carpetas.", "shortcuts": "`ctrl+b`, `ctrl+i`, y `ctrl+u` son accesos rápidos para negrita, itálica y subrayado.",
"readme_cat2": "Haz pads como un pro", "indent": "Cuando editas listas, puedes usar tab o shift+tab para incrementar o decrementar la sangría.",
"edit": "editar", "store": "Cada vez que visitas un pad con una sesión iniciada se guardará en tu CryptDrive.",
"view": "ver", "marker": "Puedes resaltar texto en un pad utilizando el \"marcador\" en el menú de estílo.",
"readme_cat2_l1": "El botón {0} en tu pad te permite dar acceso a colaboradores para {1} o {2} el pad.", "driveUpload": "Los usuarios registrados pueden subir archivos cifrados arrastrándolos hacia CryptDrive."
"readme_cat2_l2": "Cambia el título del pad haciendo clic en el lápiz", },
"readme_cat3": "Descubre las apps CryptPad", "feedback_about": "Si estas leyendo esto, quizás sientas curiosidad por saber por qué CryptPad solicita páginas cuando realizas algunas acciones",
"readme_cat3_l1": "Con el editor de código CryptPad, puedes colaborar en código fuente, como por ejemplo JavaScript y Markdown", "feedback_privacy": "Nos importa tu privacidad, y al mismo tiempo queremos que CryptPad sea muy fácil de usar. Utilizamos este archivo para conocer las funcionalidades que importan a nuestros usuarios, pidiéndolo con un parametro que nos dice qué acción fue realizada.",
"readme_cat3_l2": "Con los slides CryptPad, puedes hacer presentaciones rápidas con Markdown", "feedback_optout": "Si quieres darte de baja, visita <a href='/settings/'>tus preferencias</a>, donde podrás activar o desactivar el feedback",
"readme_cat3_l3": "Con CryptPoll puedes hacer una encuesta rápida, especialmente útil para programar un horario que conviene a todo el mundo", "fm_searchName": "Buscar",
"settings_resetError": "Verificación no válida. Tu CryptDrive no fue cambiado.", "fm_searchPlaceholder": "Buscar...",
"saved": "Guardado", "fm_newButtonTitle": "Crear un nuevo pad o carpeta",
"printButton": "Imprimir", "fm_openParent": "Mostrar en carpeta",
"printButtonTitle": "Imprimir tu presentación o exportar a PDF", "register_writtenPassword": "He escrito mi usuario y contraseña, continuar",
"printOptions": "Opciones de impresión", "register_cancel": "Volver",
"printSlideNumber": "Mostrar el número de diapositiva", "register_warning": "Zero Knowledge significa que no podemos recuperar tus datos si pierdes tu contraseña.",
"printDate": "Mostrar la fecha", "register_alreadyRegistered": "Este usuario ya existe, ¿iniciar sesión?",
"printTitle": "Mostrar el título", "button_newwhiteboard": "Nueva Pizarra",
"printCSS": "CSS personalizado:", "wrongApp": "No se pudo mostrar el contenido de la sesión en tiempo real en tu navegador. Por favor, actualiza la página.",
"editOpen": "Abrir enlaces de edición en pestaña nueva", "synced": "Todo está guardado.",
"editOpenTitle": "Abrir en modo edición en pestaña nueva", "saveTemplateButton": "Guardar como plantilla",
"settings_importTitle": "Importar pads recientes locales en CryptDrive", "saveTemplatePrompt": "Elige un título para la plantilla",
"settings_import": "Importar", "templateSaved": "¡Plantilla guardada!",
"settings_importConfirm": "¿Seguro que quieres importar tus pads recientes a tu cuenta CryptDrive?", "selectTemplate": "Elige una plantilla o pulsa ESC",
"settings_importDone": "Importación terminada", "slideOptionsTitle": "Personaliza tus diapositivas",
"tips": { "slideOptionsButton": "Guardar (enter)",
"lag": "El icono verde en la parte superior derecha muestra la calidad de tu connexión a CryptPad.", "canvas_clear": "Limpiar",
"shortcuts": "`ctrl+b`, `ctrl+i`, y `ctrl+u` son accesos rápidos para negrita, itálica y subrayado.", "canvas_delete": "Borrar selección",
"indent": "Cuando editas listas, puedes usar tab o shift+tab para incrementar o decrementar la sangría.", "canvas_disable": "No permitir dibujos",
"title": "Puedes cambiar el título de tus pads en la parte superior de la pantalla.", "canvas_enable": "Permitir dibujos",
"store": "Cada vez que visitas un pad con una sesión iniciada se guardará en tu CryptDrive.", "canvas_width": "Talla",
"marker": "Puedes resaltar texto en un pad utilizando el \"marcador\" en el menú de estílo.", "canvas_opacity": "Opacidad",
"driveUpload": "Los usuarios registrados pueden subir archivos cifrados arrastrándolos hacia CryptDrive." "settings_publicSigningKey": "Clave de Firma Pública",
}, "settings_usage": "Utilización",
"feedback_about": "Si estas leyendo esto, quizás sientas curiosidad por saber por qué CryptPad solicita páginas cuando realizas algunas acciones", "settings_usageTitle": "Ve el uso total de tus pads en MB",
"feedback_privacy": "Nos importa tu privacidad, y al mismo tiempo queremos que CryptPad sea muy fácil de usar. Utilizamos este archivo para conocer las funcionalidades que importan a nuestros usuarios, pidiéndolo con un parametro que nos dice qué acción fue realizada.", "settings_pinningNotAvailable": "Los pads pegados sólo están disponibles para usuarios registrados.",
"feedback_optout": "Si quieres darte de baja, visita <a href='/settings/'>tus preferencias</a>, donde podrás activar o desactivar el feedback", "settings_pinningError": "Algo salió mal",
"fm_searchName": "Buscar", "settings_usageAmount": "Tus pads pegados utilizan {0}MB",
"fm_searchPlaceholder": "Buscar...", "historyButton": "Mostrar el historial del documento",
"fm_newButtonTitle": "Crear un nuevo pad o carpeta", "history_next": "Ir a la versión anterior",
"fm_openParent": "Mostrar en carpeta", "history_prev": "Ir a la versión posterior",
"register_writtenPassword": "He escrito mi usuario y contraseña, continuar", "history_closeTitle": "Cerrar el historial",
"register_cancel": "Volver", "history_restoreTitle": "Restaurar la versión seleccionada del documento",
"register_warning": "Zero Knowledge significa que no podemos recuperar tus datos si pierdes tu contraseña.", "history_restorePrompt": "¿Estás seguro de que quieres cambiar la versión actual del documento por ésta?",
"register_alreadyRegistered": "Este usuario ya existe, ¿iniciar sesión?", "history_restoreDone": "Documento restaurado",
"button_newwhiteboard": "Nueva Pizarra", "fc_sizeInKilobytes": "Tamaño en Kilobytes",
"wrongApp": "No se pudo mostrar el contenido de la sesión en tiempo real en tu navegador. Por favor, actualiza la página.", "deleted": "El pad fue borrado de tu CryptDrive",
"synced": "Todo está guardado.", "upgrade": "Mejorar",
"saveTemplateButton": "Guardar como plantilla", "upgradeTitle": "Mejora tu cuenta para obtener más espacio",
"saveTemplatePrompt": "Elige un título para la plantilla", "upgradeAccount": "Mejorar cuenta",
"templateSaved": "¡Plantilla guardada!", "MB": "MB",
"selectTemplate": "Elige una plantilla o pulsa ESC", "GB": "GB",
"slideOptionsTitle": "Personaliza tus diapositivas", "KB": "KB",
"slideOptionsButton": "Guardar (enter)", "formattedMB": "{0} MB",
"canvas_clear": "Limpiar", "formattedGB": "{0} GB",
"canvas_delete": "Borrar selección", "formattedKB": "{0} KB",
"canvas_disable": "No permitir dibujos", "pinLimitReached": "Has llegado al límite de espacio",
"canvas_enable": "Permitir dibujos", "pinLimitNotPinned": "Has llegado al límite de espacio.<br>Este pad no estará presente en tu CryptDrive.",
"canvas_width": "Talla", "pinLimitDrive": "Has llegado al límite de espacio.<br>No puedes crear nuevos pads.",
"canvas_opacity": "Opacidad", "printTransition": "Activar transiciones",
"settings_publicSigningKey": "Clave de Firma Pública", "history_version": "Versión: ",
"settings_usage": "Utilización", "settings_logoutEverywhereTitle": "Cerrar sesión en todas partes",
"settings_usageTitle": "Ve el uso total de tus pads en MB", "settings_logoutEverywhere": "Cerrar todas las otras sesiones",
"settings_pinningNotAvailable": "Los pads pegados sólo están disponibles para usuarios registrados.", "settings_logoutEverywhereConfirm": "¿Estás seguro? Tendrás que volver a iniciar sesión con todos tus dispositivos.",
"settings_pinningError": "Algo salió mal", "upload_serverError": "Error: no se pudo subir tu archivo en este momento.",
"settings_usageAmount": "Tus pads pegados utilizan {0}MB", "upload_uploadPending": "Ya tienes una subida en progreso. ¿Cancelar y subir el nuevo archivo?",
"historyButton": "Mostrar el historial del documento", "upload_success": "Tu archivo ({0}) ha sido subido con éxito y fue añadido a tu drive.",
"history_next": "Ir a la versión anterior", "comingSoon": "Próximamente...",
"history_prev": "Ir a la versión posterior", "newVersion": "<b>CryptPad ha sido actualizado!</b><br>Puedes ver lo que ha cambiado aquí (en inglés):<br><a href=\"https://github.com/xwiki-labs/cryptpad/releases/tag/{0}\" target=\"_blank\">Notas de versión para CryptPad {0}</a>",
"history_goTo": "Ir a la versión seleccionada", "pinLimitReachedAlertNoAccounts": "Has llegado a tu límite de espacio",
"history_close": "Volver", "previewButtonTitle": "Mostrar/esconder la vista previa Markdown",
"history_closeTitle": "Cerrar el historial", "fm_info_anonymous": "No estás conectado, así que estos pads pueden ser borrados (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">¿por qué?</a>). <a href=\"/register/\">Regístrate</a> o <a href=\"/login/\">Inicia sesión</a> para asegurarlos.",
"history_restore": "Restaurar", "fm_alert_anonymous": "Hola, estás usando CryptPad anónimamente. Está bien, pero tus pads pueden ser borrados después de un périodo de inactividad. Hemos desactivado funciones avanzadas de CryptDrive para usuarios anónimos porque queremos dejar claro que no es un lugar seguro para almacenar cosas. Puedes <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">leer este articulo</a> (en inglés) acerca de por qué hacemos esto y por qué deberías <a href=\"/register/\">Registrarte</a> e <a href=\"/login/\">Iniciar sesión</a>.",
"history_restoreTitle": "Restaurar la versión seleccionada del documento", "fm_error_cantPin": "Error del servidor. Por favor, recarga la página e inténtalo de nuevo.",
"history_restorePrompt": "¿Estás seguro de que quieres cambiar la versión actual del documento por ésta?", "upload_notEnoughSpace": "No tienes suficiente espacio para este archivo en tu CryptDrive",
"history_restoreDone": "Documento restaurado", "upload_tooLarge": "Este archivo supera el límite de carga.",
"fc_sizeInKilobytes": "Tamaño en Kilobytes", "upload_choose": "Escoge un archivo",
"deleted": "El pad fue borrado de tu CryptDrive", "upload_pending": "Esperando",
"upgrade": "Mejorar", "upload_cancelled": "Cancelado",
"upgradeTitle": "Mejora tu cuenta para obtener más espacio", "upload_name": "Nombre",
"upgradeAccount": "Mejorar cuenta", "upload_size": "Tamaño",
"MB": "MB", "upload_progress": "Progreso",
"GB": "GB", "download_button": "Descifrar y descargar",
"KB": "KB", "poll_remove": "Quitar",
"formattedMB": "{0} MB", "poll_edit": "Editar",
"formattedGB": "{0} GB", "poll_locked": "Cerrado",
"formattedKB": "{0} KB", "poll_unlocked": "Abierto",
"pinLimitReached": "Has llegado al límite de espacio", "common_connectionLost": "<b>Conexión perdida</b><br>El documento está ahora en modo sólo lectura hasta que la conexión vuelva.",
"pinLimitNotPinned": "Has llegado al límite de espacio.<br>Este pad no estará presente en tu CryptDrive.", "supportCryptpad": "Ayudar a CryptPad",
"pinLimitDrive": "Has llegado al límite de espacio.<br>No puedes crear nuevos pads.", "pinLimitReachedAlert": "Has llegado a tu límite de espacio. Los nuevos pads no serán guardados en tu CryptDrive.<br>Puedes eliminar pads de tu CryptDrive o <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">suscribirte a una oferta premium</a> para obtener más espacio.",
"printTransition": "Activar transiciones", "fm_info_trash": "Vacía tu papelera para liberar espacio en tu CryptDrive.",
"history_version": "Versión: ", "fs_migration": "Tu CryptDrive fue actualizado a una nueva versión.<br><strong>Por favor, recarga la página.</strong>",
"settings_logoutEverywhereTitle": "Cerrar sesión en todas partes", "upload_mustLogin": "Tienes que estar conectado para subir archivos",
"settings_logoutEverywhere": "Cerrar todas las otras sesiones", "uploadButton": "Subir",
"settings_logoutEverywhereConfirm": "¿Estás seguro? Tendrás que volver a iniciar sesión con todos tus dispositivos.", "uploadButtonTitle": "Subir un archivo a la carpeta",
"upload_serverError": "Error: no se pudo subir tu archivo en este momento.", "filePickerButton": "Incrustar un archivo",
"upload_uploadPending": "Ya tienes una subida en progreso. ¿Cancelar y subir el nuevo archivo?", "filePicker_close": "Cerrar",
"upload_success": "Tu archivo ({0}) ha sido subido con éxito y fue añadido a tu drive.", "filePicker_description": "Elige un archivo de tu CryptDrive para incrustarlo o sube uno nuevo",
"comingSoon": "Próximamente...", "filePicker_filter": "Filtrar por nombre",
"newVersion": "<b>CryptPad ha sido actualizado!</b><br>Puedes ver lo que ha cambiado aquí (en inglés):<br><a href=\"https://github.com/xwiki-labs/cryptpad/releases/tag/{0}\" target=\"_blank\">Notas de versión para CryptPad {0}</a>", "or": "o",
"pinLimitReachedAlertNoAccounts": "Has llegado a tu límite de espacio", "languageButton": "Lenguaje",
"previewButtonTitle": "Mostrar/esconder la vista previa Markdown", "languageButtonTitle": "Elige el lenguaje para resaltado de sintaxis",
"fm_info_anonymous": "No estás conectado, así que estos pads pueden ser borrados (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">¿por qué?</a>). <a href=\"/register/\">Regístrate</a> o <a href=\"/login/\">Inicia sesión</a> para asegurarlos.", "themeButton": "Tema",
"fm_alert_anonymous": "Hola, estás usando CryptPad anónimamente. Está bien, pero tus pads pueden ser borrados después de un périodo de inactividad. Hemos desactivado funciones avanzadas de CryptDrive para usuarios anónimos porque queremos dejar claro que no es un lugar seguro para almacenar cosas. Puedes <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">leer este articulo</a> (en inglés) acerca de por qué hacemos esto y por qué deberías <a href=\"/register/\">Registrarte</a> e <a href=\"/login/\">Iniciar sesión</a>.", "themeButtonTitle": "Selecciona el tema de color para los editores de código y presentación",
"fm_error_cantPin": "Error del servidor. Por favor, recarga la página e inténtalo de nuevo.", "canvas_opacityLabel": "Opacidad: {0}",
"upload_notEnoughSpace": "No tienes suficiente espacio para este archivo en tu CryptDrive", "canvas_widthLabel": "Talla: {0}",
"upload_tooLarge": "Este archivo supera el límite de carga.", "moreActions": "Más acciones",
"upload_choose": "Escoge un archivo", "importButton": "Importar",
"upload_pending": "Esperando", "exportButton": "Exportar",
"upload_cancelled": "Cancelado", "saveTitle": "Guardar título (enter)",
"upload_name": "Nombre", "forgetButton": "Eliminar",
"upload_size": "Tamaño", "printText": "Imprimir",
"upload_progress": "Progreso", "slideOptionsText": "Opciones",
"download_button": "Descifrar y descargar", "historyText": "Historial",
"warn_notPinned": "Este pad no está en ningún CryptDrive. Expirará después de 3 meses. <a href='/about.html#pinning'>Acerca de...</a>", "openLinkInNewTab": "Abrir enlace en pestaña nueva",
"poll_remove": "Quitar", "profileButton": "Perfil",
"poll_edit": "Editar", "profile_urlPlaceholder": "URL",
"poll_locked": "Cerrado", "profile_namePlaceholder": "Nombre mostrado en su perfil",
"poll_unlocked": "Abierto", "profile_avatar": "Imagen",
"poll_show_help_button": "Mostrar ayuda", "profile_upload": "Subir una imagen",
"poll_hide_help_button": "Esconder ayuda", "profile_error": "Error al crear tu perfil: {0}",
"common_connectionLost": "<b>Conexión perdida</b><br>El documento está ahora en modo sólo lectura hasta que la conexión vuelva.", "profile_register": "Tienes que registrarte para crear un perfil",
"updated_0_common_connectionLost": "<b>Conexión perdida</b><br>El documento está ahora en modo sólo lectura hasta que la conexión vuelva.", "profile_create": "Crear perfil",
"supportCryptpad": "Ayudar a CryptPad", "profile_description": "Descripción",
"pinLimitReachedAlert": "Has llegado a tu límite de espacio. Los nuevos pads no serán guardados en tu CryptDrive.<br>Puedes eliminar pads de tu CryptDrive o <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">suscribirte a una oferta premium</a> para obtener más espacio.", "profile_fieldSaved": "Guardado: {0}",
"updated_0_pinLimitReachedAlert": "Has llegado a tu límite de espacio. Los nuevos pads no serán guardados en tu CryptDrive.<br>Puedes eliminar pads de tu CryptDrive o <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">suscribirte a una oferta premium</a> para obtener más espacio.", "download_mt_button": "Descargar",
"fm_info_trash": "Vacía tu papelera para liberar espacio en tu CryptDrive.", "updated_0_header_logoTitle": "Volver a tu CryptDrive",
"updated_0_fm_info_trash": "Vacía tu papelera para liberar espacio en tu CryptDrive.", "realtime_unrecoverableError": "El motor de tiempo real ha encontrado un error. Haga clic en OK para recargar la página.",
"fs_migration": "Tu CryptDrive fue actualizado a una nueva versión.<br><strong>Por favor, recarga la página.</strong>", "typing": "Escribiendo",
"login_notRegistered": "¿No estás registrado?", "profile_inviteButton": "Conectar",
"upload_mustLogin": "Tienes que estar conectado para subir archivos", "profile_inviteButtonTitle": "Crear un enlace de invitación para este usuario.",
"uploadButton": "Subir", "profile_inviteExplanation": "Hacer clic en <strong>OK</strong> creará un enlace de mensaje seguro que <em>sólo {0} podrá ver.</em><br><br>El enlace será copiado a tu portapapeles y puede ser compartido públicamente.",
"uploadButtonTitle": "Subir un archivo a la carpeta", "profile_viewMyProfile": "Ver mi perfil",
"filePickerButton": "Incrustar un archivo", "userlist_addAsFriendTitle": "Agregar \"{0}\" como contacto",
"filePicker_close": "Cerrar", "userlist_thisIsYou": "Tú mismo (\"{0}\")",
"filePicker_description": "Elige un archivo de tu CryptDrive para incrustarlo o sube uno nuevo", "contacts_title": "Contactos",
"filePicker_filter": "Filtrar por nombre", "contacts_addError": "Error al agregar este contacto a la lista",
"or": "o", "contacts_added": "Invitación aceptada",
"languageButton": "Lenguaje", "contacts_rejected": "Invitación denegada",
"languageButtonTitle": "Elige el lenguaje para resaltado de sintaxis", "contacts_request": "<em>{0}</em> quiere agregarte como contacto. ¿<b>Aceptar</b>?",
"themeButton": "Tema", "contacts_send": "Enviar",
"themeButtonTitle": "Selecciona el tema de color para los editores de código y presentación", "contacts_remove": "Eliminar este contacto",
"canvas_opacityLabel": "Opacidad: {0}", "contacts_confirmRemove": "¿Estás seguro de que quieres eliminar <em>{0}</em> de tus contactos?",
"canvas_widthLabel": "Talla: {0}", "contacts_info1": "Estos son tus contactos. Desde aquí, puedes:",
"moreActions": "Más acciones", "contacts_info2": "Hacer clic en el icono de tu contacto para chatear",
"importButton": "Importar", "contacts_info3": "Hacer doble-clic para ver su perfil",
"exportButton": "Exportar", "contacts_info4": "Cualquier participante puede eliminar definitivamente el historial de chat",
"saveTitle": "Guardar título (enter)", "settings_cat_account": "Cuenta",
"forgetButton": "Eliminar", "settings_cat_drive": "CryptDrive",
"printText": "Imprimir", "settings_backupCategory": "Copia de seguridad",
"slideOptionsText": "Opciones", "settings_resetNewTitle": "Limpiar CryptDrive",
"historyText": "Historial", "settings_resetButton": "Eliminar",
"openLinkInNewTab": "Abrir enlace en pestaña nueva", "settings_resetTipsAction": "Reiniciar",
"profileButton": "Perfil", "settings_userFeedbackTitle": "Feedback",
"profile_urlPlaceholder": "URL", "settings_logoutEverywhereButton": "Cerrar sesión",
"profile_namePlaceholder": "Nombre mostrado en su perfil", "upload_title": "Subir archivo",
"profile_avatar": "Imagen", "userlist_pending": "Pendiente...",
"profile_upload": "Subir una imagen", "contacts_typeHere": "Escribe un mensaje aquí...",
"profile_error": "Error al crear tu perfil: {0}", "contacts_removeHistoryTitle": "Borrar el historial de chat",
"profile_register": "Tienes que registrarte para crear un perfil", "contacts_confirmRemoveHistory": "¿Estás seguro de que quieres borrar el historial de forma permanente? No se podrán recuparar los datos.",
"profile_create": "Crear perfil", "contacts_removeHistoryServerError": "Hubo un error al borrar el historial. Inténtalo de nuevo más tarde.",
"profile_description": "Descripción", "todo_title": "CryptTodo",
"profile_fieldSaved": "Guardado: {0}", "todo_newTodoNamePlaceholder": "Describe tu tarea...",
"download_mt_button": "Descargar", "todo_newTodoNameTitle": "Añadir tarea a la lista",
"updated_0_header_logoTitle": "Volver a tu CryptDrive", "todo_markAsCompleteTitle": "Marcar esta tarea como completa",
"realtime_unrecoverableError": "El motor de tiempo real ha encontrado un error. Haga clic en OK para recargar la página.", "todo_markAsIncompleteTitle": "Marcar esta tarea como incompleta",
"typing": "Escribiendo", "todo_removeTaskTitle": "Borrar esta tarea de la lista",
"profile_inviteButton": "Conectar", "topbar_whatIsCryptpad": "Qué es CryptPad",
"profile_inviteButtonTitle": "Crear un enlace de invitación para este usuario.", "header_homeTitle": "Volver a la página de inicio",
"profile_inviteExplanation": "Hacer clic en <strong>OK</strong> creará un enlace de mensaje seguro que <em>sólo {0} podrá ver.</em><br><br>El enlace será copiado a tu portapapeles y puede ser compartido públicamente.", "userListButton": "Lista de usuarios",
"profile_viewMyProfile": "Ver mi perfil", "userAccountButton": "Tu cuenta",
"userlist_addAsFriendTitle": "Agregar \"{0}\" como contacto", "canvas_saveToDrive": "Guardar esta imagen como archivo en tu CryptDrive",
"userlist_thisIsYou": "Tú mismo (\"{0}\")", "canvas_currentBrush": "Pincel actual",
"contacts_title": "Contactos", "canvas_chooseColor": "Eligir un color",
"contacts_addError": "Error al agregar este contacto a la lista", "fm_viewListButton": "Lista",
"contacts_added": "Invitación aceptada", "fm_viewGridButton": "Cuadrícula",
"contacts_rejected": "Invitación denegada", "settings_cat_code": "Código",
"contacts_request": "<em>{0}</em> quiere agregarte como contacto. ¿<b>Aceptar</b>?", "settings_codeIndentation": "Indentación del editor de código (espacios)",
"contacts_send": "Enviar", "settings_codeUseTabs": "Utilizar tabulaciones en vez de espacios",
"contacts_remove": "Eliminar este contacto", "pad_showToolbar": "Mostrar la barra de herramientas",
"contacts_confirmRemove": "¿Estás seguro de que quieres eliminar <em>{0}</em> de tus contactos?", "pad_hideToolbar": "Esconder la barra de herramientas",
"contacts_info1": "Estos son tus contactos. Desde aquí, puedes:", "main_catch_phrase": "El Cloud Zero Knowledge",
"contacts_info2": "Hacer clic en el icono de tu contacto para chatear", "main_richTextPad": "Pad de Texto Enriquecido",
"contacts_info3": "Hacer doble-clic para ver su perfil", "main_codePad": "Pad de Código",
"contacts_info4": "Cualquier participante puede eliminar definitivamente el historial de chat", "main_slidePad": "Presentación Markdown",
"settings_cat_account": "Cuenta", "main_pollPad": "Encuesta",
"settings_cat_drive": "CryptDrive", "main_whiteboardPad": "Pizarra",
"settings_backupCategory": "Copia de seguridad", "main_localPads": "Pad Locales",
"settings_resetNewTitle": "Limpiar CryptDrive", "main_yourCryptDrive": "Tu CryptDrive"
"settings_resetButton": "Eliminar",
"settings_resetTipsAction": "Reiniciar",
"settings_userFeedbackTitle": "Feedback",
"settings_logoutEverywhereButton": "Cerrar sesión",
"upload_title": "Subir archivo",
"userlist_pending": "Pendiente...",
"contacts_typeHere": "Escribe un mensaje aquí...",
"contacts_removeHistoryTitle": "Borrar el historial de chat",
"contacts_confirmRemoveHistory": "¿Estás seguro de que quieres borrar el historial de forma permanente? No se podrán recuparar los datos.",
"contacts_removeHistoryServerError": "Hubo un error al borrar el historial. Inténtalo de nuevo más tarde.",
"todo_title": "CryptTodo",
"todo_newTodoNamePlaceholder": "Describe tu tarea...",
"todo_newTodoNameTitle": "Añadir tarea a la lista",
"todo_markAsCompleteTitle": "Marcar esta tarea como completa",
"todo_markAsIncompleteTitle": "Marcar esta tarea como incompleta",
"todo_removeTaskTitle": "Borrar esta tarea de la lista",
"topbar_whatIsCryptpad": "Qué es CryptPad",
"header_homeTitle": "Volver a la página de inicio",
"userListButton": "Lista de usuarios",
"userAccountButton": "Tu cuenta",
"canvas_saveToDrive": "Guardar esta imagen como archivo en tu CryptDrive",
"canvas_currentBrush": "Pincel actual",
"canvas_chooseColor": "Eligir un color",
"fm_viewListButton": "Lista",
"fm_viewGridButton": "Cuadrícula",
"settings_cat_code": "Código",
"settings_codeIndentation": "Indentación del editor de código (espacios)",
"settings_codeUseTabs": "Utilizar tabulaciones en vez de espacios",
"pad_showToolbar": "Mostrar la barra de herramientas",
"pad_hideToolbar": "Esconder la barra de herramientas",
"main_catch_phrase": "El Cloud Zero Knowledge",
"main_richTextPad": "Pad de Texto Enriquecido",
"main_codePad": "Pad de Código",
"main_slidePad": "Presentación Markdown",
"main_pollPad": "Encuesta",
"main_whiteboardPad": "Pizarra",
"main_localPads": "Pad Locales",
"main_yourCryptDrive": "Tu CryptDrive"
} }

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,110 +1,99 @@
{ {
"_languageName": "Polish", "main_title": "Cryptpad: Wspólne edytowanie w czasie rzeczywistym, bez wiedzy specjalistycznej",
"main_title": "Cryptpad: Wspólne edytowanie w czasie rzeczywistym, bez wiedzy specjalistycznej", "type": {
"main_slogan": "Jedność siłą - Współpraca kluczem", "pad": "Pad",
"type": { "code": "Kod",
"pad": "Pad", "poll": "Balot",
"code": "Kod", "slide": "Prezentacja"
"poll": "Balot", },
"slide": "Prezentacja" "common_connectionLost": "Przerwano połączenie z serwerem",
}, "disconnected": "Rozłączony",
"common_connectionLost": "Przerwano połączenie z serwerem", "synchronizing": "Synchronizacja",
"disconnected": "Rozłączony", "reconnecting": "Wznawianie połączenia...",
"synchronizing": "Synchronizacja", "lag": "Lag",
"reconnecting": "Wznawianie połączenia...", "readonly": "Tylko do odczytu",
"lag": "Lag", "anonymous": "Anonimowy",
"readonly": "Tylko do odczytu", "yourself": "Ty",
"anonymous": "Anonimowy", "anonymousUsers": "użytkownicy anonimowi",
"yourself": "Ty", "anonymousUser": "użytkownik anonimowy",
"anonymousUsers": "użytkownicy anonimowi", "users": "Użytkownicy",
"anonymousUser": "użytkownik anonimowy", "and": "i",
"users": "Użytkownicy", "viewer": "czytający",
"and": "i", "viewers": "czytających",
"viewer": "czytający", "editor": "edytujący",
"viewers": "czytających", "editors": "edytujących",
"editor": "edytujący", "greenLight": "Wszystkie systemy działają poprawnie",
"editors": "edytujących", "orangeLight": "Słabe łącze może wpłynąć na działanie aplikacji",
"greenLight": "Wszystkie systemy działają poprawnie", "redLight": "Zostałeś rozłączony z sesją",
"orangeLight": "Słabe łącze może wpłynąć na działanie aplikacji", "importButtonTitle": "Importuj dokument z pliku lokalnego",
"redLight": "Zostałeś rozłączony z sesją", "exportButtonTitle": "Zapisz ten dokument do pliku",
"importButtonTitle": "Importuj dokument z pliku lokalnego", "exportPrompt": "Jak chciałbyś nazwać swój plik?",
"exportButtonTitle": "Zapisz ten dokument do pliku", "changeNamePrompt": "Zmień swoją nazwę (Pozostaw puste, by być anonimowym): ",
"exportPrompt": "Jak chciałbyś nazwać swój plik?", "clickToEdit": "Naciśnij by edytować",
"changeNamePrompt": "Zmień swoją nazwę (Pozostaw puste, by być anonimowym): ", "forgetButtonTitle": "Usuń ten dokument z listy wyświetlanej na stronie głównej",
"clickToEdit": "Naciśnij by edytować", "forgetPrompt": "Wciskając OK usuniesz ten URL z pamięci lokalnej, jesteś tego pewien?",
"forgetButtonTitle": "Usuń ten dokument z listy wyświetlanej na stronie głównej", "shareButton": "Udostępnij",
"forgetPrompt": "Wciskając OK usuniesz ten URL z pamięci lokalnej, jesteś tego pewien?", "shareSuccess": "Pomyślnie skopiowano URL",
"shareButton": "Udostępnij", "presentButtonTitle": "Otwórz tryb prezentacji",
"shareSuccess": "Pomyślnie skopiowano URL", "backgroundButtonTitle": "Zmień kolor tła dla tej prezentacji",
"presentButtonTitle": "Otwórz tryb prezentacji", "colorButtonTitle": "Zmień kolor tekstu dla tej prezentacji",
"backgroundButtonTitle": "Zmień kolor tła dla tej prezentacji", "editShare": "Udostępnij URL do edycji",
"colorButtonTitle": "Zmień kolor tekstu dla tej prezentacji", "editShareTitle": "Zapisz URL do edycji w schowku",
"editShare": "Udostępnij URL do edycji", "viewShare": "Udostępnij URL tylko do odczytu",
"editShareTitle": "Zapisz URL do edycji w schowku", "viewShareTitle": "Zapisz URL tylko do odczytu w schowku",
"viewShare": "Udostępnij URL tylko do odczytu", "viewOpen": "Otwórz podgląd w nowej karcie",
"viewShareTitle": "Zapisz URL tylko do odczytu w schowku", "viewOpenTitle": "Otwórz ten dokument w nowej karcie, tylko do odczytu",
"viewOpen": "Otwórz podgląd w nowej karcie", "notifyJoined": "{0} dołączył do sesji współpracy",
"viewOpenTitle": "Otwórz ten dokument w nowej karcie, tylko do odczytu", "notifyRenamed": "{0} jest teraz znany jako {1}",
"notifyJoined": "{0} dołączył do sesji współpracy", "notifyLeft": "{0} opuścił sesję współpracy",
"notifyRenamed": "{0} jest teraz znany jako {1}", "okButton": "OK (enter)",
"notifyLeft": "{0} opuścił sesję współpracy", "cancelButton": "Anuluj (esc)",
"tryIt": "Wypróbuj!", "poll_title": "Prosty koordynator spotkań",
"okButton": "OK (enter)", "poll_subtitle": "Proste planowanie spotkań, <em>w czasie rzeczywistym</em>",
"cancelButton": "Anuluj (esc)", "poll_p_save": "Twoje ustawienia aktualizowane są na bieżąco. Nie martw się zapisywaniem.",
"poll_title": "Prosty koordynator spotkań", "poll_p_encryption": "Wszystko co robisz jest szyfrowane, więc tylko osoby z linkiem mają tu dostęp. Nawet serwer nie widzi co kombinujesz.",
"poll_subtitle": "Proste planowanie spotkań, <em>w czasie rzeczywistym</em>", "wizardLog": "Naciśnij przycisk w lewym-górnym rogu by wrócić do planu",
"poll_p_save": "Twoje ustawienia aktualizowane są na bieżąco. Nie martw się zapisywaniem.", "wizardTitle": "Uzyj kreatora by stworzyć opcje do głosowania",
"poll_p_encryption": "Wszystko co robisz jest szyfrowane, więc tylko osoby z linkiem mają tu dostęp. Nawet serwer nie widzi co kombinujesz.", "wizardConfirm": "Jesteś pewny, że chcesz dodać te opcje do głosowania?",
"wizardLog": "Naciśnij przycisk w lewym-górnym rogu by wrócić do planu", "poll_closeWizardButton": "Zamknij kreator",
"wizardTitle": "Uzyj kreatora by stworzyć opcje do głosowania", "poll_closeWizardButtonTitle": "Zamyka kreator",
"wizardConfirm": "Jesteś pewny, że chcesz dodać te opcje do głosowania?", "poll_wizardComputeButton": "Ustawienia kalkulacji",
"poll_closeWizardButton": "Zamknij kreator", "poll_wizardClearButton": "Wyczyść tabelę",
"poll_closeWizardButtonTitle": "Zamyka kreator", "poll_wizardDescription": "Automatycznie stwórz część opcji poprzez wpisanie ilości dat i godzin",
"poll_wizardComputeButton": "Ustawienia kalkulacji", "poll_wizardAddDateButton": "+ Daty",
"poll_wizardClearButton": "Wyczyść tabelę", "poll_wizardAddTimeButton": "+ Godziny",
"poll_wizardDescription": "Automatycznie stwórz część opcji poprzez wpisanie ilości dat i godzin", "poll_optionPlaceholder": "Opcja",
"poll_wizardAddDateButton": "+ Daty", "poll_userPlaceholder": "Twoje imię",
"poll_wizardAddTimeButton": "+ Godziny", "poll_removeOption": "Jesteś pewien, że chcesz usunąć tę opcję?",
"poll_optionPlaceholder": "Opcja", "poll_removeUser": "Jesteś pewien, że chcesz usunąć tego użytkownika?",
"poll_userPlaceholder": "Twoje imię", "poll_titleHint": "Tytuł",
"poll_removeOption": "Jesteś pewien, że chcesz usunąć tę opcję?", "poll_descriptionHint": "Opis",
"poll_removeUser": "Jesteś pewien, że chcesz usunąć tego użytkownika?", "button_newpad": "STWÓRZ PAD WYSIWYG",
"poll_titleHint": "Tytuł", "button_newcode": "STWÓRZ PAD DO KODU",
"poll_descriptionHint": "Opis", "button_newpoll": "STWÓRZ GŁOSOWANIE",
"main_p2": "Ten projekt wykorzystuje wizualny edytor <a href=\"http://ckeditor.com/\">CKEditor</a> , <a href=\"https://codemirror.net/\">CodeMirror</a>, oraz silnik czasu rzeczywistego <a href=\"https://github.com/xwiki-contrib/chainpad\">ChainPad</a>.", "button_newslide": "STWÓRZ PREZENTACJĘ",
"main_howitworks": "Jak to działa", "policy_title": "Polityka prywatności CryptPad",
"main_howitworks_p1": "CryptPad wykorzystuje wariant algorytmu <a href=\"https://en.wikipedia.org/wiki/Operational_transformation\">Transformacji operacyjnej</a> który jest wstanie odnaleźć rozdzielony konsensus wprowadzanych danych. Używa do tego <a href=\"https://bitcoin.org/bitcoin.pdf\">Łańcuch blokowy Nakamoto</a>, twór zpopularyzowany przez <a href=\"https://en.wikipedia.org/wiki/Bitcoin\">Bitcoin</a>. W ten sposób algorytm może pominąć potrzebę centralnego serwera do rozwiązywania Konfliktów Operacji Przekształcania poprzez Edycję. Bez potrzeby rozwiązywania konfliktów, serwer może pozostać w niewiedzy o zawartości która jest edytowana w dokumencie.", "policy_whatweknow": "Co o tobie wiemy",
"main_about_p2": "Jeżeli masz jakieś pytania lub komentarze, możesz napisać na <a href=\"https://twitter.com/cryptpad\">tweeterze</a>, otworzyć problem na <a href=\"https://github.com/xwiki-labs/cryptpad/issues/\" title=\"our issue tracker\">githubie</a>, przywitać się na ircu (<a href=\"http://webchat.freenode.net?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7\" title=\"freenode webchat\">irc.freenode.net</a>), lub wysłać nam <a href=\"mailto:research@xwiki.com\">email</a>.", "policy_whatweknow_p1": "Jako aplikacja udostępniana w internecie, CryptPad ma dostęp do metadanych wystawianych przez protokół HTTP. W skład tych danych wchodzi adres IP oraz różne inne nagłówki HTTP które pozwalają na identyfikację twojej przeglądarki. Możesz podejrzeć jakie informacje udostępnia twoja przeglądarka odwiedzając <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"what http headers is my browser sending\">WhatIsMyBrowser.com</a>.",
"button_newpad": "STWÓRZ PAD WYSIWYG", "policy_whatweknow_p2": "Używamy <a href=\"https://piwik.org/\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"open source analytics platform\">Piwik</a>, Open Sourcowej platformy analitycznej, aby dowiedzieć się czegoś o naszych użytkownikach. Piwik mówi nam, skąd dowiedziałeś się o Cryptpad. Bezpośrednio przez adres, silnik wyszukiwany, czy z polecenia innej usługi internetowej jak Reddit czy Twitter. Uczymy się również gdy nas odwiedzasz, jakie linki odwiedzasz z naszej strony informacyjnej i jak długo pozostajesz na konkretnych stronach.",
"button_newcode": "STWÓRZ PAD DO KODU", "policy_howweuse": "Jak wykorzystujemy zebraną wiedzę",
"button_newpoll": "STWÓRZ GŁOSOWANIE", "policy_howweuse_p1": "Dzieki tym informacjom możemy podejmować lepsze decyzje przy promocji CryptPad, poprzez ocenę które z podjętych przez nas prób okazały się udane. Informacja o twojej lokalizacji daje nam znać, czy powinniśmy zapewnić lepsze wsparcie dla języków poza Angielskim.",
"button_newslide": "STWÓRZ PREZENTACJĘ", "policy_howweuse_p2": "Informacje o twojej przeglądarce (czy jest to aplikacja desktopowa, czy działająca na systemie mobilnym) pozwalają nam na decydowanie przy priorytezowaniu ulepszeń funkcji. Nasz zespół deweloperski jest mały, a my staramy się dokonywać wyborów które poprawią doświadczenia jak największej liczby użytkowników.",
"policy_title": "Polityka prywatności CryptPad", "policy_whatwetell": "Jakie dane przekazujemy innym",
"policy_whatweknow": "Co o tobie wiemy", "policy_whatwetell_p1": "Nie dostarczamy osobom trzecim żadnych danych które udało się nam zebrać, lub tych które nam przekazałeś sam, dopóki nie jesteśmy do tego zobligowani prawnie.",
"policy_whatweknow_p1": "Jako aplikacja udostępniana w internecie, CryptPad ma dostęp do metadanych wystawianych przez protokół HTTP. W skład tych danych wchodzi adres IP oraz różne inne nagłówki HTTP które pozwalają na identyfikację twojej przeglądarki. Możesz podejrzeć jakie informacje udostępnia twoja przeglądarka odwiedzając <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"what http headers is my browser sending\">WhatIsMyBrowser.com</a>.", "policy_links": "Adresy innych stron",
"policy_whatweknow_p2": "Używamy <a href=\"https://piwik.org/\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"open source analytics platform\">Piwik</a>, Open Sourcowej platformy analitycznej, aby dowiedzieć się czegoś o naszych użytkownikach. Piwik mówi nam, skąd dowiedziałeś się o Cryptpad. Bezpośrednio przez adres, silnik wyszukiwany, czy z polecenia innej usługi internetowej jak Reddit czy Twitter. Uczymy się również gdy nas odwiedzasz, jakie linki odwiedzasz z naszej strony informacyjnej i jak długo pozostajesz na konkretnych stronach.", "policy_links_p1": "Ta witryna zawiera łącza do innych stron, włączając w to te stworzone przez inne organizacje. Nie jesteśmy odpowiedzialni za praktyki dotyczące prywatności oraz zawartość usługodawców poza tą witryną. Jako główną zasadę przyjmujemy, że łącza do stron zewnętrznych uruchamiane są w nowej karcie lub oknie, aby upewnić cię iż opuszczasz Cryptpad.",
"policy_howweuse": "Jak wykorzystujemy zebraną wiedzę", "policy_ads": "Promocja i reklama",
"policy_howweuse_p1": "Dzieki tym informacjom możemy podejmować lepsze decyzje przy promocji CryptPad, poprzez ocenę które z podjętych przez nas prób okazały się udane. Informacja o twojej lokalizacji daje nam znać, czy powinniśmy zapewnić lepsze wsparcie dla języków poza Angielskim.", "policy_ads_p1": "Nie wyświetlamy żadnej zawartości promocyjnej online, choć możemy udostępniać łącza do podmiotów finansujących nasze badania.",
"policy_howweuse_p2": "Informacje o twojej przeglądarce (czy jest to aplikacja desktopowa, czy działająca na systemie mobilnym) pozwalają nam na decydowanie przy priorytezowaniu ulepszeń funkcji. Nasz zespół deweloperski jest mały, a my staramy się dokonywać wyborów które poprawią doświadczenia jak największej liczby użytkowników.", "policy_choices": "Co możesz zrobić",
"policy_whatwetell": "Jakie dane przekazujemy innym", "policy_choices_open": "Nasz kod jest open source, więc zawsze masz możliwość hostowania swojej własnej wersji Cryptpad.",
"policy_whatwetell_p1": "Nie dostarczamy osobom trzecim żadnych danych które udało się nam zebrać, lub tych które nam przekazałeś sam, dopóki nie jesteśmy do tego zobligowani prawnie.", "policy_choices_vpn": "Jeżeli chcesz korzystać z wersji udostępnianej przez nas, lecz nie chcesz pokazywać swojego adresu IP, możesz chronić swój adres wykorzystując <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"downloads from the Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">przeglądarki Tor</a>, lub <a href=\"https://riseup.net/en/vpn\" title=\"VPNs provided by Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.",
"policy_links": "Adresy innych stron", "policy_choices_ads": "Masz również możliwość blokady naszej platformy analitycznej wykorzystując narzędzia adblock, takie jak <a href=\"https://www.eff.org/privacybadger\" title=\"download privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.",
"policy_links_p1": "Ta witryna zawiera łącza do innych stron, włączając w to te stworzone przez inne organizacje. Nie jesteśmy odpowiedzialni za praktyki dotyczące prywatności oraz zawartość usługodawców poza tą witryną. Jako główną zasadę przyjmujemy, że łącza do stron zewnętrznych uruchamiane są w nowej karcie lub oknie, aby upewnić cię iż opuszczasz Cryptpad.", "tos_title": "Warunki korzystania z usług Cryptpad",
"policy_ads": "Promocja i reklama", "tos_legal": "Prosimy abyś nie był złośliwy, obelżywy i nie wykorzystywał tego oprogramowania do celow niezgodnych z prawem.",
"policy_ads_p1": "Nie wyświetlamy żadnej zawartości promocyjnej online, choć możemy udostępniać łącza do podmiotów finansujących nasze badania.", "tos_availability": "Mamy nadzieję iż uznasz tę usługę za przydatną, lecz dostępność i wydajność nie mogą być przez nas gwarantowane. Prosimy, abyś eksportował swoje dane regularnie.",
"policy_choices": "Co możesz zrobić", "tos_e2ee": "Dokumenty Cryptpad mogą być odczytywane i modyfikowane przez każdego kto może zgadnąć lub w inny sposób uzyskać identyfikator dokumentu. Polecamy korzystania z oprogramowania szyfrującego end-to-end (e2ee) do udostępniania linków URL. Nie będziesz rościł sobie żadnych wierzytelności w wypadku gdy taki URL dostanie się w niepowołane ręce.",
"policy_choices_open": "Nasz kod jest open source, więc zawsze masz możliwość hostowania swojej własnej wersji Cryptpad.", "tos_logs": "Metadane dostarczane przez twoją przeglądarkę do serwera mogą być zapisywane i przechowywane w celu utrzymywania serwisu.",
"policy_choices_vpn": "Jeżeli chcesz korzystać z wersji udostępnianej przez nas, lecz nie chcesz pokazywać swojego adresu IP, możesz chronić swój adres wykorzystując <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"downloads from the Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">przeglądarki Tor</a>, lub <a href=\"https://riseup.net/en/vpn\" title=\"VPNs provided by Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.", "tos_3rdparties": "Nie dostarczamy indywidualizowanych danych do osób trzecich, poza sytuacjami dyktowanymi prawnie.",
"policy_choices_ads": "Masz również możliwość blokady naszej platformy analitycznej wykorzystując narzędzia adblock, takie jak <a href=\"https://www.eff.org/privacybadger\" title=\"download privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.", "header_logoTitle": "Przejdź na stronę główną"
"tos_title": "Warunki korzystania z usług Cryptpad",
"tos_legal": "Prosimy abyś nie był złośliwy, obelżywy i nie wykorzystywał tego oprogramowania do celow niezgodnych z prawem.",
"tos_availability": "Mamy nadzieję iż uznasz tę usługę za przydatną, lecz dostępność i wydajność nie mogą być przez nas gwarantowane. Prosimy, abyś eksportował swoje dane regularnie.",
"tos_e2ee": "Dokumenty Cryptpad mogą być odczytywane i modyfikowane przez każdego kto może zgadnąć lub w inny sposób uzyskać identyfikator dokumentu. Polecamy korzystania z oprogramowania szyfrującego end-to-end (e2ee) do udostępniania linków URL. Nie będziesz rościł sobie żadnych wierzytelności w wypadku gdy taki URL dostanie się w niepowołane ręce.",
"tos_logs": "Metadane dostarczane przez twoją przeglądarkę do serwera mogą być zapisywane i przechowywane w celu utrzymywania serwisu.",
"tos_3rdparties": "Nie dostarczamy indywidualizowanych danych do osób trzecich, poza sytuacjami dyktowanymi prawnie.",
"bottom_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Stworzone z <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" /> we <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" /></a>",
"bottom_support": "<a href=\"http://labs.xwiki.com/\" title=\"XWiki Labs\" target=\"_blank\" rel=\"noopener noreferrer\">Projekt <img src=\"/customize/logo-xwiki2.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/> Labs </a> we wspolpracy z <a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Pełne <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" /> z <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" title=\"France\" alt=\"France\"/> od <img src=\"/customize/logo-xwiki.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/></a>",
"header_support": "<a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_logoTitle": "Przejdź na stronę główną"
} }

View File

@ -1,379 +1,340 @@
{ {
"_languageName": "Brazilian Portuguese", "main_title": "Cryptpad: Zero Knowledge, Edição Colaborativa em Tempo Real",
"main_title": "Cryptpad: Zero Knowledge, Edição Colaborativa em Tempo Real", "type": {
"main_slogan": "União é Força - Colaboração é a Chave", "pad": "Notas",
"type": { "code": "Código",
"pad": "Notas", "poll": "votação",
"code": "Código", "slide": "Apresentação",
"poll": "votação", "drive": "Drive",
"slide": "Apresentação", "whiteboard": "Whiteboard",
"drive": "Drive", "file": "File",
"whiteboard": "Whiteboard", "media": "Media"
"file": "File", },
"media": "Media" "button_newpad": "Novo bloco RTF",
}, "button_newcode": "Novo bloco de código",
"button_newpad": "Novo bloco RTF", "button_newpoll": "Novo questionário",
"button_newcode": "Novo bloco de código", "button_newslide": "Nova apresentação",
"button_newpoll": "Novo questionário", "button_newwhiteboard": "Novo quadro branco",
"button_newslide": "Nova apresentação", "common_connectionLost": "<b>Conexão com o Servidor Perdida</b><br>Você agora está em modo somente leitura até a conexão ser restaurada.",
"button_newwhiteboard": "Novo quadro branco", "websocketError": "Incapaz de se conectar com o servidor websocket...",
"updated_0_common_connectionLost": "<b>Conexão com o Servidor Perdida</b><br>Você agora está em modo somente leitura até a conexão ser restaurada.", "typeError": "Este bloco não é compatível com a aplicação selecionada",
"common_connectionLost": "<b>Conexão com o Servidor Perdida</b><br>Você agora está em modo somente leitura até a conexão ser restaurada.", "onLogout": "você foi desconectado, {0}clique aqui{1} para se conectar, <br>ou pressione <em>ESC</em> para acessar seu bloco em modo somente leitura.",
"websocketError": "Incapaz de se conectar com o servidor websocket...", "wrongApp": "Incapaz de mostrar o conteúdo em tempo real no seu navegador. Por favor tente recarregar a página.",
"typeError": "Este bloco não é compatível com a aplicação selecionada", "loading": "Carregando...",
"onLogout": "você foi desconectado, {0}clique aqui{1} para se conectar, <br>ou pressione <em>ESC</em> para acessar seu bloco em modo somente leitura.", "error": "Erro",
"wrongApp": "Incapaz de mostrar o conteúdo em tempo real no seu navegador. Por favor tente recarregar a página.", "saved": "Salvo",
"loading": "Carregando...", "synced": "Tudo foi salvo",
"error": "Erro", "deleted": "Bloco deletado do seu CryptDrive",
"saved": "Salvo", "disconnected": "Desconectado",
"synced": "Tudo foi salvo", "synchronizing": "Sincronizando",
"deleted": "Bloco deletado do seu CryptDrive", "reconnecting": "Reconectando...",
"disconnected": "Desconectado", "lag": "Lag",
"synchronizing": "Sincronizando", "readonly": "Somente leitura",
"reconnecting": "Reconectando...", "anonymous": "Anonimo",
"lag": "Lag", "yourself": "Você",
"readonly": "Somente leitura", "anonymousUsers": "Usuários anônimos",
"anonymous": "Anonimo", "anonymousUser": "Usuário anônimo",
"yourself": "Você", "users": "Usuários",
"anonymousUsers": "Usuários anônimos", "and": "e",
"anonymousUser": "Usuário anônimo", "viewer": "vizualizações",
"users": "Usuários", "viewers": "leitores",
"and": "e", "editor": "editor",
"viewer": "vizualizações", "editors": "editores",
"viewers": "leitores", "language": "Lingua",
"editor": "editor", "comingSoon": "Em breve...",
"editors": "editores", "newVersion": "<b>O CryptPad foi atualizado!</b><br>Cheque as novidades na última versão:<br><a href=\"https://github.com/xwiki-labs/cryptpad/releases/tag/{0}\" target=\"_blank\">Notas da atualização do CryptPad {0}</a>",
"language": "Lingua", "upgrade": "Upgrade",
"comingSoon": "Em breve...", "upgradeTitle": "Faça um upgrade na sua conta para aumentar o limite de armazenamento",
"newVersion": "<b>O CryptPad foi atualizado!</b><br>Cheque as novidades na última versão:<br><a href=\"https://github.com/xwiki-labs/cryptpad/releases/tag/{0}\" target=\"_blank\">Notas da atualização do CryptPad {0}</a>", "MB": "MB",
"upgrade": "Upgrade", "GB": "GB",
"upgradeTitle": "Faça um upgrade na sua conta para aumentar o limite de armazenamento", "KB": "KB",
"MB": "MB", "formattedMB": "{0} MB",
"GB": "GB", "formattedGB": "{0} GB",
"KB": "KB", "formattedKB": "{0} KB",
"formattedMB": "{0} MB", "greenLight": "Tudo está funcionando bem",
"formattedGB": "{0} GB", "orangeLight": "Sua conexão lenta pode impactar sua experiência",
"formattedKB": "{0} KB", "redLight": "Você está desconectado da sua sessão",
"greenLight": "Tudo está funcionando bem", "pinLimitReached": "Você alcançou o limite de armazenamento",
"orangeLight": "Sua conexão lenta pode impactar sua experiência", "pinLimitReachedAlert": "Você alcançou o limite de armazenamento. Novos blocos não serão mais salvos no seu CryptDrive.<br>Você pode deletar blocos do seu CryptDrive ou <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">se inscrever como premium</a> para aumentar o limite de espaço.",
"redLight": "Você está desconectado da sua sessão", "pinLimitNotPinned": "Você alcançou o limite de armazenamento.<br>Este bloco não está armazenado no seu CryptDrive.",
"pinLimitReached": "Você alcançou o limite de armazenamento", "pinLimitDrive": "Você alcançou o limite de armazenamento.<br>Você não pode criar novos blocos.",
"updated_0_pinLimitReachedAlert": "Você alcançou o limite de armazenamento. Novos blocos não serão mais salvos no seu CryptDrive.<br>Você pode deletar blocos do seu CryptDrive ou <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">se inscrever como premium</a> para aumentar o limite de espaço.", "importButtonTitle": "Importar um documento de um arquivo local",
"pinLimitReachedAlert": "Você alcançou o limite de armazenamento. Novos blocos não serão mais salvos no seu CryptDrive.<br>Você pode deletar blocos do seu CryptDrive ou <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">se inscrever como premium</a> para aumentar o limite de espaço.", "exportButtonTitle": "Exportar esta sesão para um arquivo local",
"pinAboveLimitAlert": "A partir desta atualização, nós estamos impondo um limite de 50MB no armazenamento gratuito. Você está atualmente usando {0}. Você irá precisar deletar alguns blocos ou se inscrever no <a href=\"https://accounts.cryptpad.fr/#!on={1}\" target=\"_blank\">accounts.cryptpad.fr</a>. Sua contribuição irá nos ajudar a melhorar o CryptPad e expandir a metodologia Zero Knowledge. Por favor contacte o <a href=\"https://accounts.cryptpad.fr/#/support\" target=\"_blank\">suporte</a> se você possui outras dúvidas.", "exportPrompt": "Como deseja nomear seu arquivo?",
"pinLimitNotPinned": "Você alcançou o limite de armazenamento.<br>Este bloco não está armazenado no seu CryptDrive.", "changeNamePrompt": "Mude seu nome (deixe em branco para se manter anônimo): ",
"pinLimitDrive": "Você alcançou o limite de armazenamento.<br>Você não pode criar novos blocos.", "user_rename": "Mudar nome de exibição",
"importButtonTitle": "Importar um documento de um arquivo local", "user_displayName": "Nome visível",
"exportButtonTitle": "Exportar esta sesão para um arquivo local", "user_accountName": "Nome da Conta",
"exportPrompt": "Como deseja nomear seu arquivo?", "clickToEdit": "Clique para Editar",
"changeNamePrompt": "Mude seu nome (deixe em branco para se manter anônimo): ", "forgetButtonTitle": "Remova este documento da listagem da sua página",
"user_rename": "Mudar nome de exibição", "forgetPrompt": "Clicando OK você irá remover o endereço deste bloco de notas do armazenamento local, você tem certeza?",
"user_displayName": "Nome visível", "movedToTrash": "That pad has been moved to the trash.<br><a href=\"/drive/\">Access my Drive</a>",
"user_accountName": "Nome da Conta", "shareButton": "Compartilhar",
"clickToEdit": "Clique para Editar", "shareSuccess": "Endereço copiado para o clipboard",
"forgetButtonTitle": "Remova este documento da listagem da sua página", "newButton": "Novo",
"forgetPrompt": "Clicando OK você irá remover o endereço deste bloco de notas do armazenamento local, você tem certeza?", "newButtonTitle": "Criar um novo bloco",
"movedToTrash": "That pad has been moved to the trash.<br><a href=\"/drive/\">Access my Drive</a>", "saveTemplateButton": "Salvar como modelo",
"shareButton": "Compartilhar", "saveTemplatePrompt": "Escolha o nome do modelo",
"shareSuccess": "Endereço copiado para o clipboard", "templateSaved": "Modelo salvo!",
"newButton": "Novo", "selectTemplate": "Selecione um modelo ou pressione ESC",
"newButtonTitle": "Criar um novo bloco", "previewButtonTitle": "Mostrar ou esconder o modo de visualização markdown",
"saveTemplateButton": "Salvar como modelo", "presentButtonTitle": "Entrar no modo apresentação",
"saveTemplatePrompt": "Escolha o nome do modelo", "backgroundButtonTitle": "Mudar cor do fundo da apresentação",
"templateSaved": "Modelo salvo!", "colorButtonTitle": "Mudar a cor do texto no modo apresentação",
"selectTemplate": "Selecione um modelo ou pressione ESC", "printButton": "Imprimir (Enter)",
"previewButtonTitle": "Mostrar ou esconder o modo de visualização markdown", "printOptions": "Opções de leiaute",
"presentButtonTitle": "Entrar no modo apresentação", "printSlideNumber": "Mostrar o número do slide",
"backgroundButtonTitle": "Mudar cor do fundo da apresentação", "printDate": "Mostrar a data",
"colorButtonTitle": "Mudar a cor do texto no modo apresentação", "printTitle": "Mostrar título do bloco",
"printButton": "Imprimir (Enter)", "printCSS": "Custom style rules (CSS):",
"printButtonTitle": "Imprimir seus slides ou exportá-los como PDF", "printTransition": "Ativar animações de transição",
"printOptions": "Opções de leiaute", "slideOptionsTitle": "Personalizar seus slides",
"printSlideNumber": "Mostrar o número do slide", "slideOptionsButton": "Salvar (Enter)",
"printDate": "Mostrar a data", "editShare": "Compartilhar endereço editável",
"printTitle": "Mostrar título do bloco", "editShareTitle": "Copiar endereço editável",
"printCSS": "Custom style rules (CSS):", "editOpen": "Abrir endereço editável em nova aba",
"printTransition": "Ativar animações de transição", "editOpenTitle": "Abrir este bloco em modo editável em nova aba",
"slideOptionsTitle": "Personalizar seus slides", "viewShare": "Compartilhar endereço de visualização",
"slideOptionsButton": "Salvar (Enter)", "viewShareTitle": "Copiar o endereço somente leitura",
"editShare": "Compartilhar endereço editável", "notifyJoined": "{0} entraram na sessão colaborativa",
"editShareTitle": "Copiar endereço editável", "notifyRenamed": "{0} agora é conhecido como {1}",
"editOpen": "Abrir endereço editável em nova aba", "notifyLeft": "{0} deixou essa sessão colaborativa",
"editOpenTitle": "Abrir este bloco em modo editável em nova aba", "okButton": "OK (Enter)",
"viewShare": "Compartilhar endereço de visualização", "cancel": "Cancelar",
"viewShareTitle": "Copiar o endereço somente leitura", "cancelButton": "Cancelar (ESC)",
"notifyJoined": "{0} entraram na sessão colaborativa", "historyButton": "Exibir histórico do documento",
"notifyRenamed": "{0} agora é conhecido como {1}", "history_next": "Ir para próxima versão",
"notifyLeft": "{0} deixou essa sessão colaborativa", "history_prev": "Ir para versão anterior",
"okButton": "OK (Enter)", "history_closeTitle": "Fechar o histórico",
"cancel": "Cancelar", "history_restoreTitle": "Restaurar a versão selecionada do documento",
"cancelButton": "Cancelar (ESC)", "history_restorePrompt": "Você tem certeza que deseja substituir a versão atual do documento pela que está sendo exibida agora?",
"historyButton": "Exibir histórico do documento", "history_restoreDone": "Documento restaurado",
"history_next": "Ir para próxima versão", "history_version": "Versão:",
"history_prev": "Ir para versão anterior", "poll_title": "Seletor de dados zero knowledge",
"history_goTo": "Ir para versão selecionada", "poll_subtitle": "Zero Knowledge, agendamento <em>em tempo real</em>",
"history_close": "Voltar", "poll_p_save": "Suas configurações são atualizadas instantaneamente, assim você nunca terá de salvá-las",
"history_closeTitle": "Fechar o histórico", "poll_p_encryption": "Tudo que der entrada é encriptado para que apenas as pessoas com o link possam acessá-las. Nem mesmo o servidor pode ver suas mudanças.",
"history_restore": "Restaurar", "wizardLog": "Clique no botão no topo esquerdo para voltar para sua enquete",
"history_restoreTitle": "Restaurar a versão selecionada do documento", "wizardTitle": "Use o assistente para criar sua enquete",
"history_restorePrompt": "Você tem certeza que deseja substituir a versão atual do documento pela que está sendo exibida agora?", "wizardConfirm": "Você está realmente pronto para adicionar estas opções em sua enquete?",
"history_restoreDone": "Documento restaurado", "poll_publish_button": "Publicar",
"history_version": "Versão:", "poll_admin_button": "Admin",
"tryIt": "Try it out!", "poll_create_user": "Adicionar novo usuário",
"poll_title": "Seletor de dados zero knowledge", "poll_create_option": "Adicionar nova opção",
"poll_subtitle": "Zero Knowledge, agendamento <em>em tempo real</em>", "poll_commit": "Submeter",
"poll_p_save": "Suas configurações são atualizadas instantaneamente, assim você nunca terá de salvá-las", "poll_closeWizardButton": "Fechar assistente",
"poll_p_encryption": "Tudo que der entrada é encriptado para que apenas as pessoas com o link possam acessá-las. Nem mesmo o servidor pode ver suas mudanças.", "poll_closeWizardButtonTitle": "Fechar assistente",
"wizardLog": "Clique no botão no topo esquerdo para voltar para sua enquete", "poll_wizardComputeButton": "Computar opções",
"wizardTitle": "Use o assistente para criar sua enquete", "poll_wizardClearButton": "Limpar tabela",
"wizardConfirm": "Você está realmente pronto para adicionar estas opções em sua enquete?", "poll_wizardDescription": "Automaticamente criar um número de opções entrando qualquer número de seguimentos de datas e horários",
"poll_publish_button": "Publicar", "poll_wizardAddDateButton": "+ Datas",
"poll_admin_button": "Admin", "poll_wizardAddTimeButton": "+ Horários",
"poll_create_user": "Adicionar novo usuário", "poll_optionPlaceholder": "Alternativa",
"poll_create_option": "Adicionar nova opção", "poll_userPlaceholder": "Seu nome",
"poll_commit": "Submeter", "poll_removeOption": "Você tem certeza que deseja remover esta opção?",
"poll_closeWizardButton": "Fechar assistente", "poll_removeUser": "Você tem certeza que quer remover este usuário?",
"poll_closeWizardButtonTitle": "Fechar assistente", "poll_titleHint": "Título",
"poll_wizardComputeButton": "Computar opções", "poll_descriptionHint": "Descrição",
"poll_wizardClearButton": "Limpar tabela", "canvas_clear": "Limpar",
"poll_wizardDescription": "Automaticamente criar um número de opções entrando qualquer número de seguimentos de datas e horários", "canvas_delete": "Deletar seleção",
"poll_wizardAddDateButton": "+ Datas", "canvas_disable": "Desabilitar desenho",
"poll_wizardAddTimeButton": "+ Horários", "canvas_enable": "Habilitar desenho",
"poll_optionPlaceholder": "Alternativa", "canvas_width": "Largura",
"poll_userPlaceholder": "Seu nome", "canvas_opacity": "Opacidade",
"poll_removeOption": "Você tem certeza que deseja remover esta opção?", "fm_rootName": "Documentos",
"poll_removeUser": "Você tem certeza que quer remover este usuário?", "fm_trashName": "Lixeira",
"poll_titleHint": "Título", "fm_unsortedName": "Arquivos não organizados",
"poll_descriptionHint": "Descrição", "fm_filesDataName": "Todos os Arquivos",
"canvas_clear": "Limpar", "fm_templateName": "Temas",
"canvas_delete": "Deletar seleção", "fm_searchName": "Busca",
"canvas_disable": "Desabilitar desenho", "fm_searchPlaceholder": "Buscar...",
"canvas_enable": "Habilitar desenho", "fm_newButton": "Novo",
"canvas_width": "Largura", "fm_newButtonTitle": "Criar um novo bloco ou diretório",
"canvas_opacity": "Opacidade", "fm_newFolder": "Novo diretório",
"fm_rootName": "Documentos", "fm_newFile": "Novo bloco",
"fm_trashName": "Lixeira", "fm_folder": "Diretório",
"fm_unsortedName": "Arquivos não organizados", "fm_folderName": "Nome do diretório",
"fm_filesDataName": "Todos os Arquivos", "fm_numberOfFolders": "# de diretórios",
"fm_templateName": "Temas", "fm_numberOfFiles": "# de arquivos",
"fm_searchName": "Busca", "fm_fileName": "Nome do arquivo",
"fm_searchPlaceholder": "Buscar...", "fm_title": "Título",
"fm_newButton": "Novo", "fm_type": "Tipo",
"fm_newButtonTitle": "Criar um novo bloco ou diretório", "fm_lastAccess": "Último acesso",
"fm_newFolder": "Novo diretório", "fm_creation": "Criação",
"fm_newFile": "Novo bloco", "fm_forbidden": "Ação não permitida",
"fm_folder": "Diretório", "fm_originalPath": "Caminho original",
"fm_folderName": "Nome do diretório", "fm_openParent": "Exibir no diretório",
"fm_numberOfFolders": "# de diretórios", "fm_noname": "Documento sem título",
"fm_numberOfFiles": "# de arquivos", "fm_emptyTrashDialog": "Você tem certeza que deseja limpar a lixeira??",
"fm_fileName": "Nome do arquivo", "fm_removeSeveralPermanentlyDialog": "Você tem certeza que deseja deletar estes {0} elementos da lixeira permanentemente?",
"fm_title": "Título", "fm_removePermanentlyDialog": "Você tem certeza que deseja deletar este elemento da lixeira permanentemente?",
"fm_type": "Tipo", "fm_removeSeveralDialog": "Você tem certeza que deseja mover estes {0} elementos para a lixeira?",
"fm_lastAccess": "Último acesso", "fm_removeDialog": "Você tem certeza que deseja mover {0} para a lixeira?",
"fm_creation": "Criação", "fm_restoreDialog": "Você tem certeza que deseja restaurar {0} de volta para seu diretório original?",
"fm_forbidden": "Ação não permitida", "fm_unknownFolderError": "O diretório selecionado ou visitado por último não existe mais. Abrindo diretório superior...",
"fm_originalPath": "Caminho original", "fm_contextMenuError": "Incapaz de abrir o menu de contextualização para este elementos. Se o problema persistir, tente recarregar a página.",
"fm_openParent": "Exibir no diretório", "fm_selectError": "Incapaz de selecionar o elemento marcado. Se o problema persistir, tente recarregar a página.",
"fm_noname": "Documento sem título", "fm_categoryError": "Incapaz de abrir a categoria selecionada, Exibindo diretório raiz",
"fm_emptyTrashDialog": "Você tem certeza que deseja limpar a lixeira??", "fm_info_root": "Crie quantos diretórios aninhados aqui desejar para organizar seus arquivos..",
"fm_removeSeveralPermanentlyDialog": "Você tem certeza que deseja deletar estes {0} elementos da lixeira permanentemente?", "fm_info_unsorted": "Contém todos os arquivos que você visitou e não estão ainda organizados na pasta Documentos ou foram movidos para a pasta lixeira",
"fm_removePermanentlyDialog": "Você tem certeza que deseja deletar este elemento da lixeira permanentemente?", "fm_info_trash": "Empty your trash to free space in your CryptDrive.",
"fm_removeSeveralDialog": "Você tem certeza que deseja mover estes {0} elementos para a lixeira?", "fm_info_allFiles": "Contém todos os arquivos de \"Documentos\", \"Não organizados\" e \"Lixeira\". Não é possível mover ou remover arquivos daqui.",
"fm_removeDialog": "Você tem certeza que deseja mover {0} para a lixeira?", "fm_info_anonymous": "Você não está logado, então estes blocos podem ser deletados! (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">Descubra o porque</a>). <a href=\"/register/\">Cadastre-se</a> or <a href=\"/login/\">Entre</a> Para deixá-los salvos.",
"fm_restoreDialog": "Você tem certeza que deseja restaurar {0} de volta para seu diretório original?", "fm_alert_backupUrl": "Link de backup desta conta.<br>É <strong>fortemente recomendado</strong> que você deixe para você e somente você.<br>Você pode usá-lo para resgatar os seus dados caso a memória do seu navegador se perca.<br>Qualquer um com este link pode editar ou apagar todos os arquivos no gerenciador da conta.<br>",
"fm_unknownFolderError": "O diretório selecionado ou visitado por último não existe mais. Abrindo diretório superior...", "fm_alert_anonymous": "Ola! Você está utilizando o CryptPad anonimamente, isto é ok, mas seus blocos podem ser apagados se ficarem muito tempo inativo. Nós desativamos as funções avançadas nas contas anônimas para que isto fique claro para você Este não é um bom lugar apra salvar senhas! Entenda: <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">Clicando aqui!</a> Porque estamos fazendo isso e porque você deveria criar uma onta? <a href=\"/register/\">Sign up</a> and <a href=\"/login/\">Clique e entenda!</a>.",
"fm_contextMenuError": "Incapaz de abrir o menu de contextualização para este elementos. Se o problema persistir, tente recarregar a página.", "fm_backup_title": "Link de restauração",
"fm_selectError": "Incapaz de selecionar o elemento marcado. Se o problema persistir, tente recarregar a página.", "fm_nameFile": "Como deseja nomear este arquivo?",
"fm_categoryError": "Incapaz de abrir a categoria selecionada, Exibindo diretório raiz", "fm_error_cantPin": "Erro interno do servidor. Por favor recarregue a página e tente novamente.",
"fm_info_root": "Crie quantos diretórios aninhados aqui desejar para organizar seus arquivos..", "fc_newfolder": "Nova pasta",
"fm_info_unsorted": "Contém todos os arquivos que você visitou e não estão ainda organizados na pasta Documentos ou foram movidos para a pasta lixeira", "fc_rename": "Renomear",
"updated_0_fm_info_trash": "Empty your trash to free space in your CryptDrive.", "fc_open": "Abrir",
"fm_info_trash": "Empty your trash to free space in your CryptDrive.", "fc_open_ro": "Abrir (somente leitura)",
"fm_info_allFiles": "Contém todos os arquivos de \"Documentos\", \"Não organizados\" e \"Lixeira\". Não é possível mover ou remover arquivos daqui.", "fc_delete": "Deletar",
"fm_info_anonymous": "Você não está logado, então estes blocos podem ser deletados! (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">Descubra o porque</a>). <a href=\"/register/\">Cadastre-se</a> or <a href=\"/login/\">Entre</a> Para deixá-los salvos.", "fc_restore": "Restaurar",
"fm_alert_backupUrl": "Link de backup desta conta.<br>É <strong>fortemente recomendado</strong> que você deixe para você e somente você.<br>Você pode usá-lo para resgatar os seus dados caso a memória do seu navegador se perca.<br>Qualquer um com este link pode editar ou apagar todos os arquivos no gerenciador da conta.<br>", "fc_remove": "Deletar permanentemente",
"fm_alert_anonymous": "Ola! Você está utilizando o CryptPad anonimamente, isto é ok, mas seus blocos podem ser apagados se ficarem muito tempo inativo. Nós desativamos as funções avançadas nas contas anônimas para que isto fique claro para você Este não é um bom lugar apra salvar senhas! Entenda: <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">Clicando aqui!</a> Porque estamos fazendo isso e porque você deveria criar uma onta? <a href=\"/register/\">Sign up</a> and <a href=\"/login/\">Clique e entenda!</a>.", "fc_empty": "Esvaziar lixeira",
"fm_backup_title": "Link de restauração", "fc_prop": "Propriedades",
"fm_nameFile": "Como deseja nomear este arquivo?", "fc_sizeInKilobytes": "tamanho em Kilobytes",
"fm_error_cantPin": "Erro interno do servidor. Por favor recarregue a página e tente novamente.", "fo_moveUnsortedError": "Você não pode mover uma pasta na lista de notas não organizadas",
"fc_newfolder": "Nova pasta", "fo_existingNameError": "Nome já em uso neste diretório. Por favor escolha outro.",
"fc_rename": "Renomear", "fo_moveFolderToChildError": "Você não pode mover uma sub-diretório para dentro de um de seus sub-diretórios",
"fc_open": "Abrir", "fo_unableToRestore": "Fomos incapazes de restaurar este arquivo para sua posição original. Você pode tentar move-lo para o local de destino porém.",
"fc_open_ro": "Abrir (somente leitura)", "fo_unavailableName": "Um arquivo ou diretório com o mesmo nome já existe no novo locao. Renomeie-o e tente novamente.",
"fc_delete": "Deletar", "login_login": "Entrar",
"fc_restore": "Restaurar", "login_makeAPad": "Criar bloco anonimamente",
"fc_remove": "Deletar permanentemente", "login_nologin": "Navegar nos blocos locais",
"fc_empty": "Esvaziar lixeira", "login_register": "Cadastro",
"fc_prop": "Propriedades", "logoutButton": "Sair",
"fc_sizeInKilobytes": "tamanho em Kilobytes", "settingsButton": "Configurações",
"fo_moveUnsortedError": "Você não pode mover uma pasta na lista de notas não organizadas", "login_username": "Usuário",
"fo_existingNameError": "Nome já em uso neste diretório. Por favor escolha outro.", "login_password": "Senha",
"fo_moveFolderToChildError": "Você não pode mover uma sub-diretório para dentro de um de seus sub-diretórios", "login_confirm": "Confirme sua senha",
"fo_unableToRestore": "Fomos incapazes de restaurar este arquivo para sua posição original. Você pode tentar move-lo para o local de destino porém.", "login_remember": "Memorize-me",
"fo_unavailableName": "Um arquivo ou diretório com o mesmo nome já existe no novo locao. Renomeie-o e tente novamente.", "login_hashing": "Encriptando sua senha, isto pode tomar algum tempo.",
"login_login": "Entrar", "login_hello": "Ola {0},",
"login_makeAPad": "Criar bloco anonimamente", "login_helloNoName": "Ola,",
"login_nologin": "Navegar nos blocos locais", "login_accessDrive": "Acesse seu diretório",
"login_register": "Cadastro", "login_orNoLogin": "ou",
"logoutButton": "Sair", "login_noSuchUser": "Usuário ou senha inválido. Tente nocamente ou cadastre-se",
"settingsButton": "Configurações", "login_invalUser": "É necessário um usuário",
"login_username": "Usuário", "login_invalPass": "É necessário uma senha",
"login_password": "Senha", "login_unhandledError": "Um erro não esperado ocorreu :(",
"login_confirm": "Confirme sua senha", "register_importRecent": "Importar histórico de blocos (Recomendado)",
"login_remember": "Memorize-me", "register_acceptTerms": "Eu aceito <a href='/terms.html'>os termos de serviço</a>",
"login_hashing": "Encriptando sua senha, isto pode tomar algum tempo.", "register_passwordsDontMatch": "Senhas não coincidem!",
"login_hello": "Ola {0},", "register_mustAcceptTerms": "Você precisa aceitar os termos de serviço.",
"login_helloNoName": "Ola,", "register_mustRememberPass": "Nós não podemos restaurar sua senha caso você a esqueça. É muito importante que você lembre-se dela! Clique nesta caixa de seleção para confirmar que você compreendeu isto.",
"login_accessDrive": "Acesse seu diretório", "register_header": "Bem vindo ao CryptPad",
"login_orNoLogin": "ou", "register_explanation": "<p>Lets go over a couple things first</p><ul><li>Your password is your secret key which encrypts all of your pads. If you lose it there is no way we can recover your data.</li><li>You can import pads which were recently viewed in your browser so you have them in your account.</li><li>If you are using a shared computer, you need to log out when you are done, closing the tab is not enough.</li></ul>",
"login_noSuchUser": "Usuário ou senha inválido. Tente nocamente ou cadastre-se", "register_writtenPassword": "I have written down my username and password, proceed",
"login_invalUser": "É necessário um usuário", "register_cancel": "Go back",
"login_invalPass": "É necessário uma senha", "register_warning": "Zero Knowledge means that we can't recover your data if you lose your password.",
"login_unhandledError": "Um erro não esperado ocorreu :(", "register_alreadyRegistered": "This user already exists, do you want to log in?",
"register_importRecent": "Importar histórico de blocos (Recomendado)", "settings_title": "Settings",
"register_acceptTerms": "Eu aceito <a href='/terms.html'>os termos de serviço</a>", "settings_save": "Save",
"register_passwordsDontMatch": "Senhas não coincidem!", "settings_backup": "Backup",
"register_mustAcceptTerms": "Você precisa aceitar os termos de serviço.", "settings_restore": "Restore",
"register_mustRememberPass": "Nós não podemos restaurar sua senha caso você a esqueça. É muito importante que você lembre-se dela! Clique nesta caixa de seleção para confirmar que você compreendeu isto.", "settings_reset": "Remove all the files and folders from your CryptDrive",
"register_header": "Bem vindo ao CryptPad", "settings_resetPrompt": "This action will remove all the pads from your drive.<br>Are you sure you want to continue?<br>Type “<em>I love CryptPad</em>” to confirm.",
"register_explanation": "<p>Lets go over a couple things first</p><ul><li>Your password is your secret key which encrypts all of your pads. If you lose it there is no way we can recover your data.</li><li>You can import pads which were recently viewed in your browser so you have them in your account.</li><li>If you are using a shared computer, you need to log out when you are done, closing the tab is not enough.</li></ul>", "settings_resetDone": "Your drive is now empty!",
"register_writtenPassword": "I have written down my username and password, proceed", "settings_resetError": "Incorrect verification text. Your CryptDrive has not been changed.",
"register_cancel": "Go back", "settings_resetTips": "Tips in CryptDrive",
"register_warning": "Zero Knowledge means that we can't recover your data if you lose your password.", "settings_resetTipsButton": "Reset the available tips in CryptDrive",
"register_alreadyRegistered": "This user already exists, do you want to log in?", "settings_resetTipsDone": "All the tips are now visible again.",
"settings_title": "Settings", "settings_importTitle": "Import this browser's recent pads in my CryptDrive",
"settings_save": "Save", "settings_import": "Import",
"settings_backupTitle": "Backup or restore all your data", "settings_importConfirm": "Are you sure you want to import recent pads from this browser to your user account's CryptDrive?",
"settings_backup": "Backup", "settings_importDone": "Import completed",
"settings_restore": "Restore", "settings_userFeedbackHint1": "CryptPad provides some very basic feedback to the server, to let us know how to improve your experience.",
"settings_resetTitle": "Clean your drive", "settings_userFeedbackHint2": "Your pad's content will never be shared with the server.",
"settings_reset": "Remove all the files and folders from your CryptDrive", "settings_userFeedback": "Enable user feedback",
"settings_resetPrompt": "This action will remove all the pads from your drive.<br>Are you sure you want to continue?<br>Type “<em>I love CryptPad</em>” to confirm.", "settings_anonymous": "You are not logged in. Settings here are specific to this browser.",
"settings_resetDone": "Your drive is now empty!", "settings_publicSigningKey": "Public Signing Key",
"settings_resetError": "Incorrect verification text. Your CryptDrive has not been changed.", "settings_usage": "Usage",
"settings_resetTips": "Tips in CryptDrive", "settings_usageTitle": "See the total size of your pinned pads in MB",
"settings_resetTipsButton": "Reset the available tips in CryptDrive", "settings_pinningNotAvailable": "Pinned pads are only available to registered users.",
"settings_resetTipsDone": "All the tips are now visible again.", "settings_pinningError": "Something went wrong",
"settings_importTitle": "Import this browser's recent pads in my CryptDrive", "settings_usageAmount": "Your pinned pads occupy {0}MB",
"settings_import": "Import", "settings_logoutEverywhereTitle": "Log out everywhere",
"settings_importConfirm": "Are you sure you want to import recent pads from this browser to your user account's CryptDrive?", "settings_logoutEverywhere": "Log out of all other web sessions",
"settings_importDone": "Import completed", "settings_logoutEverywhereConfirm": "Are you sure? You will need to log in with all your devices.",
"settings_userFeedbackHint1": "CryptPad provides some very basic feedback to the server, to let us know how to improve your experience.", "upload_serverError": "Server Error: unable to upload your file at this time.",
"settings_userFeedbackHint2": "Your pad's content will never be shared with the server.", "upload_uploadPending": "You already have an upload in progress. Cancel it and upload your new file?",
"settings_userFeedback": "Enable user feedback", "upload_success": "Your file ({0}) has been successfully uploaded and added to your drive.",
"settings_anonymous": "You are not logged in. Settings here are specific to this browser.", "upload_notEnoughSpace": "There is not enough space for this file in your CryptDrive.",
"settings_publicSigningKey": "Public Signing Key", "upload_tooLarge": "This file exceeds the maximum upload size.",
"settings_usage": "Usage", "upload_choose": "Choose a file",
"settings_usageTitle": "See the total size of your pinned pads in MB", "upload_pending": "Pending",
"settings_pinningNotAvailable": "Pinned pads are only available to registered users.", "upload_cancelled": "Cancelled",
"settings_pinningError": "Something went wrong", "upload_name": "File name",
"settings_usageAmount": "Your pinned pads occupy {0}MB", "upload_size": "Size",
"settings_logoutEverywhereTitle": "Log out everywhere", "upload_progress": "Progress",
"settings_logoutEverywhere": "Log out of all other web sessions", "download_button": "Decrypt & Download",
"settings_logoutEverywhereConfirm": "Are you sure? You will need to log in with all your devices.", "main_info": "<h1>Collaborate in Confidence</h1><br> Grow your ideas together with shared documents while <strong>Zero Knowledge</strong> technology secures your privacy; even from us.",
"upload_serverError": "Server Error: unable to upload your file at this time.", "main_richText": "Rich Text editor",
"upload_uploadPending": "You already have an upload in progress. Cancel it and upload your new file?", "main_code": "Code editor",
"upload_success": "Your file ({0}) has been successfully uploaded and added to your drive.", "main_slide": "Slide editor",
"upload_notEnoughSpace": "There is not enough space for this file in your CryptDrive.", "main_poll": "Polls",
"upload_tooLarge": "This file exceeds the maximum upload size.", "main_drive": "CryptDrive",
"upload_choose": "Choose a file", "footer_applications": "Applications",
"upload_pending": "Pending", "footer_contact": "Contact",
"upload_cancelled": "Cancelled", "footer_aboutUs": "About us",
"upload_name": "File name", "about": "About",
"upload_size": "Size", "privacy": "Privacy",
"upload_progress": "Progress", "contact": "Contact",
"download_button": "Decrypt & Download", "terms": "ToS",
"warn_notPinned": "This pad is not in anyone's CryptDrive. It will expire after 3 months. <a href='/about.html#pinning'>Learn more...</a>", "blog": "Blog",
"main_p2": "This project uses the <a href=\"http://ckeditor.com/\">CKEditor</a> Visual Editor, <a href=\"https://codemirror.net/\">CodeMirror</a>, and the <a href=\"https://github.com/xwiki-contrib/chainpad\">ChainPad</a> realtime engine.", "policy_title": "Política de privacidade do Cryptpad",
"main_howitworks_p1": "CryptPad uses a variant of the <a href=\"https://en.wikipedia.org/wiki/Operational_transformation\">Operational transformation</a> algorithm which is able to find distributed consensus using a <a href=\"https://bitcoin.org/bitcoin.pdf\">Nakamoto Blockchain</a>, a construct popularized by <a href=\"https://en.wikipedia.org/wiki/Bitcoin\">Bitcoin</a>. This way the algorithm can avoid the need for a central server to resolve Operational Transform Edit Conflicts and without the need for resolving conflicts, the server can be kept unaware of the content which is being edited on the pad.", "policy_whatweknow": "O que nós sabemos sobre você",
"main_about_p2": "If you have any questions or comments, you can <a href=\"https://twitter.com/cryptpad\">tweet us</a>, open an issue <a href=\"https://github.com/xwiki-labs/cryptpad/issues/\" title=\"our issue tracker\">on github</a>, come say hi on irc (<a href=\"http://webchat.freenode.net?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7\" title=\"freenode webchat\">irc.freenode.net</a>), or <a href=\"mailto:research@xwiki.com\">send us an email</a>.", "policy_whatweknow_p1": "Por ser uma aplicação hospedada na web, O Cryptpad tem acesso aos metadados expostos pelo protocolo HTTP. Isso inclui seu endereço IP, e vários cabeçalhos do HTTP que podem ser usados para identificar seu browser particular. Você pode ver que informações seu navegador está compartilhando ao visitar <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"Que cabeçalhos meu navegador está disponibilizando\">WhatIsMyBrowser.com</a>.",
"main_info": "<h1>Collaborate in Confidence</h1><br> Grow your ideas together with shared documents while <strong>Zero Knowledge</strong> technology secures your privacy; even from us.", "policy_whatweknow_p2": "Nós usamos a plataforma de análise <a href=\"https://piwik.org/\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"plataforma analítica open source\">Piwik</a>, uma plataforma analítica open source, para aprender mais sobre nossos usos. Piwik nos informa como você encontrou o Cryptpad, via digitação direta, através de mecanismos de busca, ou via link de outro serviço web como o Reddit ou o Twitter. Nós também aprendemos com suas visitas, que links você clica enquanto está em nossas páginas de informações, e quanto tempo você fica nestas páginas.",
"main_howitworks": "How It Works", "policy_howweuse": "Como utilizamos o que nós aprendemos",
"main_zeroKnowledge": "Zero Knowledge", "policy_howweuse_p1": "Nos utilizamos estas informações para tomar melhores decisões sobre como promover o Cryptpad, ao avaliar quais dos nosso esforços passados foram mais bem sucedidos. Informações sobre sua localização nos ajudam a decidir se nós devemos considerar prover melhor suporte para idiomas além do inglês.",
"main_zeroKnowledge_p": "You don't have to trust that we <em>won't</em> look at your pads, with CryptPad's revolutionary Zero Knowledge Technology we <em>can't</em>. Learn more about how we protect your <a href=\"/privacy.html\" title='Privacy'>Privacy and Security</a>.", "policy_howweuse_p2": "As informações sobre o seu navegador de internet (não importando se é um desktop ou um equipamento móvel) nos ajudam a tomar melhores decisões ao priorizar melhorias futuras. Nossa equipe de desenvolvimento é pequena, e nós tentamos fazer as melhores escolhas em pró de auxiliar a experiência de utilização do máximo de nossos usuários possíveis.",
"main_writeItDown": "Write it down", "policy_whatwetell": "O que contamos a terceiros sobre você",
"main_writeItDown_p": "The greatest projects come from the smallest ideas. Take down the moments of inspiration and unexpected ideas because you never know which one might be a breakthrough.", "policy_whatwetell_p1": "Nós não informamos terceiros a informação que armazenamos ou que provemos a você, salvo caso sejamos legalmente requisitados a faze-lo.",
"main_share": "Share the link, share the pad", "policy_links": "Links para outros sites",
"main_share_p": "Grow your ideas together: conduct efficient meetings, collaborate on TODO lists and make quick presentations with all your friends and all your devices.", "policy_links_p1": "Este site contém ligações para outros sites, incluindo aqueles produzidos por terceiros. Nós não nos responsabilizamos pelas práticas de privacidade ou o conteúdo destes sites. Como regra geral, links para páginas fora de nosso domínio são lançadas em novas janelas ou abas, para deixar claro a todos os visitantes que eles estão deixando o site Cryptpad.fr.",
"main_organize": "Get organized", "policy_ads": "Publicidade",
"main_organize_p": "With CryptPad Drive, you can keep your sights on what's important. Folders allow you to keep track of your projects and have a global vision of where things are going.", "policy_ads_p1": "Nós não disponibilizamos publicidade online, porém podemos prover links de acesso para obtenção de financiamento para auxiliar em nossa pesquisa e desenvolvimento.",
"main_richText": "Rich Text editor", "policy_choices": "As escolhas que você tem",
"main_richText_p": "Edit rich text pads collaboratively with our realtime Zero Knowledge <a href=\"http://ckeditor.com\" target=\"_blank\">CkEditor</a> application.", "policy_choices_open": "Nosso código fonte é open source, portanto você sempre tem a opção de hospedar sua própria instância do Cryptpad.",
"main_code": "Code editor", "policy_choices_vpn": "Se você deseja usar nosso site principal, porém não deseja expor seu endereço IP, Você pode se proteger utilizando o <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"Baixe o tor\" target=\"_blank\" rel=\"noopener noreferrer\">Navegador seguro Tor</a>, ou uma <a href=\"https://riseup.net/en/vpn\" title=\"VPNs providas pelo Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.",
"main_code_p": "Edit code from your software collaboratively with our realtime Zero Knowledge <a href=\"https://www.codemirror.net\" target=\"_blank\">CodeMirror</a> application.", "policy_choices_ads": "Se você deseja apenas bloquear nossa plataforma analítica, você pode utilizar ferramentas de bloqueio de propagandas como o <a href=\"https://www.eff.org/privacybadger\" title=\"baixe o privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.",
"main_slide": "Slide editor", "tos_title": "Termos de serviço doCryptpad",
"main_slide_p": "Create your presentations using the Markdown syntax, and display them in your browser.", "tos_legal": "Pedimos encarecidamente que, como usuário desta plataforma, você evite a prática de quaisquer atos ilegais e que evite a utilização maliciosa e/ou abusiva desta plataforma.",
"main_poll": "Polls", "tos_availability": "Nós esperamos que você ache este serviço útil, porém nós não podemos garantir a disponibilidade constante ou a alta performance do mesmo. Por favor, mantenha um backup dos seus dados como forma de segurança adicional.",
"main_poll_p": "Plan your meeting or your event, or vote for the best solution regarding your problem.", "tos_e2ee": "Os documentos do CryptPad podem ser modificados por qualquer um que conseguir adivinhar ou obter de qualquer forma o seu identificador único. Nós recomendamos que você utilize criptografia ponto a ponto de mensagens (e2ee) sempre que possível para compartilhar suas URL's. Nós não assumimos qualquer responsabilidade sobre chaves e/ou URLs e seus respectivos conteúdos vazadas para o público.",
"main_drive": "CryptDrive", "tos_logs": "Os Metadados providos pelo seu navegador para nosso servidor podem ser armazenados com o propósito de manter o serviço em funcionamento",
"footer_applications": "Applications", "tos_3rdparties": "Nós não disponibilizamos dados individuais para terceiros, salvo quando requisitado legalmente.",
"footer_contact": "Contact", "header_logoTitle": "Go to the main page",
"footer_aboutUs": "About us", "driveReadmeTitle": "What is CryptPad?",
"about": "About", "readme_welcome": "Welcome to CryptPad !",
"privacy": "Privacy", "readme_p1": "Welcome to CryptPad, this is where you can take note of things alone and with friends.",
"contact": "Contact", "readme_p2": "This pad will give you a quick walk through of how you can use CryptPad to take notes, keep them organized and work together on them.",
"terms": "ToS", "readme_cat1": "Get to know your CryptDrive",
"blog": "Blog", "readme_cat1_l1": "Make a pad: In your CryptDrive, click {0} then {1} and you can make a pad.",
"policy_title": "Política de privacidade do Cryptpad", "readme_cat1_l2": "Open Pads from your CryptDrive: double-click on a pad icon to open it.",
"policy_whatweknow": "O que nós sabemos sobre você", "readme_cat1_l3": "Organize your pads: When you are logged in, every pad you access will be shown as in the {0} section of your drive.",
"policy_whatweknow_p1": "Por ser uma aplicação hospedada na web, O Cryptpad tem acesso aos metadados expostos pelo protocolo HTTP. Isso inclui seu endereço IP, e vários cabeçalhos do HTTP que podem ser usados para identificar seu browser particular. Você pode ver que informações seu navegador está compartilhando ao visitar <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"Que cabeçalhos meu navegador está disponibilizando\">WhatIsMyBrowser.com</a>.", "readme_cat1_l3_l1": "You can click and drag files into folders in the {0} section of your drive and make new folders.",
"policy_whatweknow_p2": "Nós usamos a plataforma de análise <a href=\"https://piwik.org/\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"plataforma analítica open source\">Piwik</a>, uma plataforma analítica open source, para aprender mais sobre nossos usos. Piwik nos informa como você encontrou o Cryptpad, via digitação direta, através de mecanismos de busca, ou via link de outro serviço web como o Reddit ou o Twitter. Nós também aprendemos com suas visitas, que links você clica enquanto está em nossas páginas de informações, e quanto tempo você fica nestas páginas.", "readme_cat1_l3_l2": "Remember to try right clicking on icons because there are often additional menus.",
"policy_howweuse": "Como utilizamos o que nós aprendemos", "readme_cat1_l4": "Put old pads in the trash: You can click and drag your pads into the {0} the same way you drag them into folders.",
"policy_howweuse_p1": "Nos utilizamos estas informações para tomar melhores decisões sobre como promover o Cryptpad, ao avaliar quais dos nosso esforços passados foram mais bem sucedidos. Informações sobre sua localização nos ajudam a decidir se nós devemos considerar prover melhor suporte para idiomas além do inglês.", "readme_cat2": "Make pads like a pro",
"policy_howweuse_p2": "As informações sobre o seu navegador de internet (não importando se é um desktop ou um equipamento móvel) nos ajudam a tomar melhores decisões ao priorizar melhorias futuras. Nossa equipe de desenvolvimento é pequena, e nós tentamos fazer as melhores escolhas em pró de auxiliar a experiência de utilização do máximo de nossos usuários possíveis.", "edit": "edit",
"policy_whatwetell": "O que contamos a terceiros sobre você", "view": "view",
"policy_whatwetell_p1": "Nós não informamos terceiros a informação que armazenamos ou que provemos a você, salvo caso sejamos legalmente requisitados a faze-lo.", "readme_cat2_l1": "The {0} button in your pad allows you to give access to collaborators to either {1} or to {2} the pad.",
"policy_links": "Links para outros sites", "readme_cat2_l2": "Change the title of the pad by clicking on the pencil",
"policy_links_p1": "Este site contém ligações para outros sites, incluindo aqueles produzidos por terceiros. Nós não nos responsabilizamos pelas práticas de privacidade ou o conteúdo destes sites. Como regra geral, links para páginas fora de nosso domínio são lançadas em novas janelas ou abas, para deixar claro a todos os visitantes que eles estão deixando o site Cryptpad.fr.", "readme_cat3": "Discover CryptPad apps",
"policy_ads": "Publicidade", "readme_cat3_l1": "With CryptPad code editor, you can collaborate on code like Javascript and markdown like HTML and Markdown",
"policy_ads_p1": "Nós não disponibilizamos publicidade online, porém podemos prover links de acesso para obtenção de financiamento para auxiliar em nossa pesquisa e desenvolvimento.", "readme_cat3_l2": "With CryptPad slide editor, you can make quick presentations using Markdown",
"policy_choices": "As escolhas que você tem", "readme_cat3_l3": "With CryptPoll you can take quick votes, especially for scheduling meetings which fit with everybody's calendar",
"policy_choices_open": "Nosso código fonte é open source, portanto você sempre tem a opção de hospedar sua própria instância do Cryptpad.", "tips": {
"policy_choices_vpn": "Se você deseja usar nosso site principal, porém não deseja expor seu endereço IP, Você pode se proteger utilizando o <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"Baixe o tor\" target=\"_blank\" rel=\"noopener noreferrer\">Navegador seguro Tor</a>, ou uma <a href=\"https://riseup.net/en/vpn\" title=\"VPNs providas pelo Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.", "shortcuts": "`ctrl+b`, `ctrl+i` and `ctrl+u` are quick shortcuts for bold, italic and underline.",
"policy_choices_ads": "Se você deseja apenas bloquear nossa plataforma analítica, você pode utilizar ferramentas de bloqueio de propagandas como o <a href=\"https://www.eff.org/privacybadger\" title=\"baixe o privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.", "indent": "In numbered and bulleted lists, you can use tab or shift+tab to quickly increase or decrease indentation.",
"tos_title": "Termos de serviço doCryptpad", "store": "Every time you visit a pad, if you're logged in it will be saved to your CryptDrive.",
"tos_legal": "Pedimos encarecidamente que, como usuário desta plataforma, você evite a prática de quaisquer atos ilegais e que evite a utilização maliciosa e/ou abusiva desta plataforma.", "marker": "You can highlight text in a pad using the \"marker\" item in the styles dropdown menu."
"tos_availability": "Nós esperamos que você ache este serviço útil, porém nós não podemos garantir a disponibilidade constante ou a alta performance do mesmo. Por favor, mantenha um backup dos seus dados como forma de segurança adicional.", },
"tos_e2ee": "Os documentos do CryptPad podem ser modificados por qualquer um que conseguir adivinhar ou obter de qualquer forma o seu identificador único. Nós recomendamos que você utilize criptografia ponto a ponto de mensagens (e2ee) sempre que possível para compartilhar suas URL's. Nós não assumimos qualquer responsabilidade sobre chaves e/ou URLs e seus respectivos conteúdos vazadas para o público.", "feedback_about": "If you're reading this, you were probably curious why CryptPad is requesting web pages when you perform certain actions",
"tos_logs": "Os Metadados providos pelo seu navegador para nosso servidor podem ser armazenados com o propósito de manter o serviço em funcionamento", "feedback_privacy": "We care about your privacy, and at the same time we want CryptPad to be very easy to use. We use this file to figure out which UI features matter to our users, by requesting it along with a parameter specifying which action was taken.",
"tos_3rdparties": "Nós não disponibilizamos dados individuais para terceiros, salvo quando requisitado legalmente.", "feedback_optout": "If you would like to opt out, visit <a href='/settings/'>your user settings page</a>, where you'll find a checkbox to enable or disable user feedback"
"bottom_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Feito com <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" /> na <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" /></a>",
"bottom_support": "<a href=\"http://labs.xwiki.com/\" title=\"XWiki Labs\" target=\"_blank\" rel=\"noopener noreferrer\">Um projeto do laboratório <img src=\"/customize/logo-xwiki2.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/></a> com o suporte da <a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Com <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" /> da <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" title=\"France\" alt=\"France\"/> por <img src=\"/customize/logo-xwiki.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/></a>",
"header_support": "<a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_logoTitle": "Go to the main page",
"initialState": "<p>This is&nbsp;<strong>CryptPad</strong>, the Zero Knowledge realtime collaborative editor. Everything is saved as you type.<br>Share the link to this pad to edit with friends or use the <span class=\"fa fa-share-alt\"></span> button to share a <em>read-only link</em>&nbsp;which allows viewing but not editing.</p>",
"codeInitialState": "# CryptPad's Zero Knowledge collaborative code editor\n\n* What you type here is encrypted so only people who have the link can access it.\n* You can choose the programming language to highlight and the UI color scheme in the upper right.",
"slideInitialState": "# CryptSlide\n1. Write your slides content using markdown syntax\n - Learn more about markdown syntax [here](http://www.markdowntutorial.com/)\n2. Separate your slides with ---\n3. Click on the \"Play\" button to see the result - Your slides are updated in realtime",
"driveReadmeTitle": "What is CryptPad?",
"readme_welcome": "Welcome to CryptPad !",
"readme_p1": "Welcome to CryptPad, this is where you can take note of things alone and with friends.",
"readme_p2": "This pad will give you a quick walk through of how you can use CryptPad to take notes, keep them organized and work together on them.",
"readme_cat1": "Get to know your CryptDrive",
"readme_cat1_l1": "Make a pad: In your CryptDrive, click {0} then {1} and you can make a pad.",
"readme_cat1_l2": "Open Pads from your CryptDrive: double-click on a pad icon to open it.",
"readme_cat1_l3": "Organize your pads: When you are logged in, every pad you access will be shown as in the {0} section of your drive.",
"readme_cat1_l3_l1": "You can click and drag files into folders in the {0} section of your drive and make new folders.",
"readme_cat1_l3_l2": "Remember to try right clicking on icons because there are often additional menus.",
"readme_cat1_l4": "Put old pads in the trash: You can click and drag your pads into the {0} the same way you drag them into folders.",
"readme_cat2": "Make pads like a pro",
"edit": "edit",
"view": "view",
"readme_cat2_l1": "The {0} button in your pad allows you to give access to collaborators to either {1} or to {2} the pad.",
"readme_cat2_l2": "Change the title of the pad by clicking on the pencil",
"readme_cat3": "Discover CryptPad apps",
"readme_cat3_l1": "With CryptPad code editor, you can collaborate on code like Javascript and markdown like HTML and Markdown",
"readme_cat3_l2": "With CryptPad slide editor, you can make quick presentations using Markdown",
"readme_cat3_l3": "With CryptPoll you can take quick votes, especially for scheduling meetings which fit with everybody's calendar",
"tips": {
"lag": "The green icon in the upper right shows the quality of your internet connection to the CryptPad server.",
"shortcuts": "`ctrl+b`, `ctrl+i` and `ctrl+u` are quick shortcuts for bold, italic and underline.",
"indent": "In numbered and bulleted lists, you can use tab or shift+tab to quickly increase or decrease indentation.",
"title": "You can set the title of your pad by clicking the top center.",
"store": "Every time you visit a pad, if you're logged in it will be saved to your CryptDrive.",
"marker": "You can highlight text in a pad using the \"marker\" item in the styles dropdown menu."
},
"feedback_about": "If you're reading this, you were probably curious why CryptPad is requesting web pages when you perform certain actions",
"feedback_privacy": "We care about your privacy, and at the same time we want CryptPad to be very easy to use. We use this file to figure out which UI features matter to our users, by requesting it along with a parameter specifying which action was taken.",
"feedback_optout": "If you would like to opt out, visit <a href='/settings/'>your user settings page</a>, where you'll find a checkbox to enable or disable user feedback"
} }

View File

@ -1,351 +1,313 @@
{ {
"main_title": "CryptPad: Zero Knowledge, Colaborare în timp real", "main_title": "CryptPad: Zero Knowledge, Colaborare în timp real",
"main_slogan": "Puterea stă în cooperare - Colaborarea este cheia", "button_newpad": "Filă Text Nouă",
"button_newpad": "Filă Text Nouă", "button_newcode": "Filă Cod Nouă",
"button_newcode": "Filă Cod Nouă", "button_newpoll": "Sondaj Nou",
"button_newpoll": "Sondaj Nou", "button_newslide": "Prezentare Nouă",
"button_newslide": "Prezentare Nouă", "button_newwhiteboard": "Fila Desen Nouă",
"button_newwhiteboard": "Fila Desen Nouă", "common_connectionLost": "<b>Conexiunea la server este pierdută</b><br>Până la revenirea conexiunii, vei fi în modul citire",
"updated_0_common_connectionLost": "<b>Conexiunea la server este pierdută</b><br>Până la revenirea conexiunii, vei fi în modul citire", "websocketError": "Conexiune inexistentă către serverul websocket...",
"common_connectionLost": "<b>Conexiunea la server este pierdută</b><br>Până la revenirea conexiunii, vei fi în modul citire", "typeError": "Această filă nu este compatibilă cu aplicația aleasă",
"websocketError": "Conexiune inexistentă către serverul websocket...", "onLogout": "Nu mai ești autentificat, {0}apasă aici{1} să te autentifici<br>sau apasă <em>Escape</em>să accesezi fila în modul citire.",
"typeError": "Această filă nu este compatibilă cu aplicația aleasă", "wrongApp": "Momentan nu putem arăta conținutul sesiunii în timp real în fereastra ta. Te rugăm reîncarcă pagina.",
"onLogout": "Nu mai ești autentificat, {0}apasă aici{1} să te autentifici<br>sau apasă <em>Escape</em>să accesezi fila în modul citire.", "loading": "Încarcă...",
"wrongApp": "Momentan nu putem arăta conținutul sesiunii în timp real în fereastra ta. Te rugăm reîncarcă pagina.", "error": "Eroare",
"loading": "Încarcă...", "saved": "Salvat",
"error": "Eroare", "synced": "Totul a fost salvat",
"saved": "Salvat", "deleted": "Pad șters din CryptDrive-ul tău",
"synced": "Totul a fost salvat", "disconnected": "Deconectat",
"deleted": "Pad șters din CryptDrive-ul tău", "synchronizing": "Se sincronizează",
"disconnected": "Deconectat", "reconnecting": "Reconectare...",
"synchronizing": "Se sincronizează", "lag": "Decalaj",
"reconnecting": "Reconectare...", "readonly": "Mod citire",
"lag": "Decalaj", "anonymous": "Anonim",
"readonly": "Mod citire", "yourself": "Tu",
"anonymous": "Anonim", "anonymousUsers": "editori anonimi",
"yourself": "Tu", "anonymousUser": "editor anonim",
"anonymousUsers": "editori anonimi", "users": "Utilizatori",
"anonymousUser": "editor anonim", "and": "Și",
"users": "Utilizatori", "viewer": "privitor",
"and": "Și", "viewers": "privitori",
"viewer": "privitor", "editor": "editor",
"viewers": "privitori", "editors": "editori",
"editor": "editor", "language": "Limbă",
"editors": "editori", "upgrade": "Actualizare",
"language": "Limbă", "upgradeTitle": "Actualizează-ți contul pentru a mări limita de stocare",
"upgrade": "Actualizare", "MB": "MB",
"upgradeTitle": "Actualizează-ți contul pentru a mări limita de stocare", "greenLight": "Totul funcționează corespunzător",
"MB": "MB", "orangeLight": "Conexiunea lentă la internet îți poate afecta experiența",
"greenLight": "Totul funcționează corespunzător", "redLight": "Ai fost deconectat de la sesiune",
"orangeLight": "Conexiunea lentă la internet îți poate afecta experiența", "pinLimitReached": "Ai atins limita de stocare",
"redLight": "Ai fost deconectat de la sesiune", "pinLimitReachedAlert": "Ai atins limita de stocare. Noile pad-uri nu vor mai fi stocate în CryptDrive.<br>Pentru a rezolva această problemă, poți să nlături pad-uri din CryptDrive-ul tău (incluzând gunoiul) sau să subscrii la un pachet premium pentru a-ți extinde spațiul de stocare.",
"pinLimitReached": "Ai atins limita de stocare", "pinLimitNotPinned": "Ai atins limita de stocare.<br>Acest pad nu va fi stocat n CryptDrive-ul tău.",
"pinLimitReachedAlert": "Ai atins limita de stocare. Noile pad-uri nu vor mai fi stocate în CryptDrive.<br>Pentru a rezolva această problemă, poți să nlături pad-uri din CryptDrive-ul tău (incluzând gunoiul) sau să subscrii la un pachet premium pentru a-ți extinde spațiul de stocare.", "pinLimitDrive": "Ai atins limita de stocare.<br>Nu poți să creezi alte pad-uri.",
"pinLimitNotPinned": "Ai atins limita de stocare.<br>Acest pad nu va fi stocat n CryptDrive-ul tău.", "importButtonTitle": "Importă un pad dintr-un fișier local",
"pinLimitDrive": "Ai atins limita de stocare.<br>Nu poți să creezi alte pad-uri.", "exportButtonTitle": "Exportă pad-ul acesta către un fișier local",
"importButtonTitle": "Importă un pad dintr-un fișier local", "exportPrompt": "Cum ai vrea să îți denumești fișierul?",
"exportButtonTitle": "Exportă pad-ul acesta către un fișier local", "changeNamePrompt": "Schimbă-ți numele (lasă necompletat dacă vrei să fii anonim): ",
"exportPrompt": "Cum ai vrea să îți denumești fișierul?", "user_rename": "Schimbă numele afișat",
"changeNamePrompt": "Schimbă-ți numele (lasă necompletat dacă vrei să fii anonim): ", "user_displayName": "Nume afișat",
"user_rename": "Schimbă numele afișat", "user_accountName": "Nume cont",
"user_displayName": "Nume afișat", "clickToEdit": "Click pentru editare",
"user_accountName": "Nume cont", "forgetButtonTitle": "Mută acest pad la gunoi",
"clickToEdit": "Click pentru editare", "forgetPrompt": "Click-ul pe OK va muta acest pad la gunoi. Ești sigur?",
"forgetButtonTitle": "Mută acest pad la gunoi", "movedToTrash": "Acest pad a fost mutat la gunoi.<br><a href=\"/drive/\">Acesează-mi Drive-ul</a>",
"forgetPrompt": "Click-ul pe OK va muta acest pad la gunoi. Ești sigur?", "shareButton": "Distribuie",
"movedToTrash": "Acest pad a fost mutat la gunoi.<br><a href=\"/drive/\">Acesează-mi Drive-ul</a>", "shareSuccess": "Link copiat în clipboard",
"shareButton": "Distribuie", "newButton": "Nou",
"shareSuccess": "Link copiat în clipboard", "newButtonTitle": "Crează un nou pad",
"newButton": "Nou", "saveTemplateButton": "Salvează ca șablon",
"newButtonTitle": "Crează un nou pad", "saveTemplatePrompt": "Alege un titlu pentru șablon",
"saveTemplateButton": "Salvează ca șablon", "templateSaved": "Șablon salvat!",
"saveTemplatePrompt": "Alege un titlu pentru șablon", "selectTemplate": "Selectează un șablon sau apasă escape",
"templateSaved": "Șablon salvat!", "presentButtonTitle": "Intră în modul de prezentare",
"selectTemplate": "Selectează un șablon sau apasă escape", "backgroundButtonTitle": "Schimbă culoarea de fundal din prezentare",
"presentButtonTitle": "Intră în modul de prezentare", "colorButtonTitle": "Schimbă culoarea textului în modul de prezentare",
"backgroundButtonTitle": "Schimbă culoarea de fundal din prezentare", "printButton": "Printează (enter)",
"colorButtonTitle": "Schimbă culoarea textului în modul de prezentare", "printOptions": "Opțiuni schemă",
"printButton": "Printează (enter)", "printSlideNumber": "Afișează numărul slide-ului",
"printButtonTitle": "Printează-ți slide-urile sau exportă-le ca fișier PDF", "printDate": "Afișează data",
"printOptions": "Opțiuni schemă", "printTitle": "Afișează titlul pad-ului",
"printSlideNumber": "Afișează numărul slide-ului", "printCSS": "Reguli de stil personalizate (CSS):",
"printDate": "Afișează data", "printTransition": "Permite tranziția animațiilor",
"printTitle": "Afișează titlul pad-ului", "slideOptionsTitle": "Personalizează-ți slide-urile",
"printCSS": "Reguli de stil personalizate (CSS):", "slideOptionsButton": "Salvează (enter)",
"printTransition": "Permite tranziția animațiilor", "editShare": "Editează link-ul",
"slideOptionsTitle": "Personalizează-ți slide-urile", "editShareTitle": "Copiază link-ul de editare în clipboard",
"slideOptionsButton": "Salvează (enter)", "editOpen": "Deschide link-ul de editare într-o nouă filă",
"editShare": "Editează link-ul", "editOpenTitle": "Deschide acest pad în modul de editare într-o nouă filă",
"editShareTitle": "Copiază link-ul de editare în clipboard", "viewShare": "Link în modul citire",
"editOpen": "Deschide link-ul de editare într-o nouă filă", "viewShareTitle": "Copiază link-ul în modul de citire în clipboard",
"editOpenTitle": "Deschide acest pad în modul de editare într-o nouă filă", "viewOpen": "Deschide link-ul în modul de citire într-o filă nouă",
"viewShare": "Link în modul citire", "viewOpenTitle": "Deschide acest pad în modul de citire într-o nouă filă",
"viewShareTitle": "Copiază link-ul în modul de citire în clipboard", "notifyJoined": "{0} s-au alăturat sesiunii colaborative",
"viewOpen": "Deschide link-ul în modul de citire într-o filă nouă", "notifyRenamed": "{0} e cunoscut ca {1}",
"viewOpenTitle": "Deschide acest pad în modul de citire într-o nouă filă", "notifyLeft": "{0} au părăsit sesiunea colaborativă",
"notifyJoined": "{0} s-au alăturat sesiunii colaborative", "okButton": "OK (enter)",
"notifyRenamed": "{0} e cunoscut ca {1}", "cancel": "Anulează",
"notifyLeft": "{0} au părăsit sesiunea colaborativă", "cancelButton": "Anulează (esc)",
"okButton": "OK (enter)", "historyButton": "Afișează istoricul documentului",
"cancel": "Anulează", "history_next": "Mergi la versiunea următoare",
"cancelButton": "Anulează (esc)", "history_prev": "Mergi la versiunea trecută",
"historyButton": "Afișează istoricul documentului", "history_closeTitle": "Închide istoricul",
"history_next": "Mergi la versiunea următoare", "history_restoreTitle": "Restabilește versiunea selectată a documentului",
"history_prev": "Mergi la versiunea trecută", "history_restorePrompt": "Ești sigur că vrei să înlocuiești versiunea curentă a documentului cu cea afișată?",
"history_goTo": "Mergi la sesiunea selectată", "history_restoreDone": "Document restabilit",
"history_close": "Înapoi", "history_version": "Versiune:",
"history_closeTitle": "Închide istoricul", "poll_title": "Zero Knowledge Selector Dată",
"history_restore": "Restabilește", "poll_subtitle": "Zero Knowledge, <em>realtime</em> programare",
"history_restoreTitle": "Restabilește versiunea selectată a documentului", "poll_p_save": "Setările tale sunt actualizate instant, așa că tu nu trebuie să salvezi.",
"history_restorePrompt": "Ești sigur că vrei să înlocuiești versiunea curentă a documentului cu cea afișată?", "poll_p_encryption": "Tot conținutul tău este criptat ca doar persoanele cărora tu le dai link-ul să aibă acces. Nici serverul nu poate să vadă ce modifici.",
"history_restoreDone": "Document restabilit", "wizardLog": "Click pe butonul din dreapta sus pentru a te ntoarce la sondajul tău",
"history_version": "Versiune:", "wizardTitle": "Folosește wizard-ul pentru a crea sondajul tău",
"poll_title": "Zero Knowledge Selector Dată", "wizardConfirm": "Ești pregătit să adaugi aceste opțiuni la sondajul tău?",
"poll_subtitle": "Zero Knowledge, <em>realtime</em> programare", "poll_publish_button": "Publică",
"poll_p_save": "Setările tale sunt actualizate instant, așa că tu nu trebuie să salvezi.", "poll_admin_button": "Admin",
"poll_p_encryption": "Tot conținutul tău este criptat ca doar persoanele cărora tu le dai link-ul să aibă acces. Nici serverul nu poate să vadă ce modifici.", "poll_create_user": "Adaugă un nou utilizator",
"wizardLog": "Click pe butonul din dreapta sus pentru a te ntoarce la sondajul tău", "poll_create_option": "Adaugă o nouă opțiune",
"wizardTitle": "Folosește wizard-ul pentru a crea sondajul tău", "poll_commit": "Comite",
"wizardConfirm": "Ești pregătit să adaugi aceste opțiuni la sondajul tău?", "poll_closeWizardButton": "Închide wizard-ul",
"poll_publish_button": "Publică", "poll_closeWizardButtonTitle": "Închide wizard-ul",
"poll_admin_button": "Admin", "poll_wizardComputeButton": "Calculează Opțiunile",
"poll_create_user": "Adaugă un nou utilizator", "poll_wizardClearButton": "Curăță Tabelul",
"poll_create_option": "Adaugă o nouă opțiune", "poll_wizardDescription": "Crează automat un număr de opțiuni întroducând orice număr de zile sau intervale orare",
"poll_commit": "Comite", "poll_wizardAddDateButton": "+ Zi",
"poll_closeWizardButton": "Închide wizard-ul", "poll_wizardAddTimeButton": "+ Ore",
"poll_closeWizardButtonTitle": "Închide wizard-ul", "poll_optionPlaceholder": "Opțiune",
"poll_wizardComputeButton": "Calculează Opțiunile", "poll_userPlaceholder": "Numele tău",
"poll_wizardClearButton": "Curăță Tabelul", "poll_removeOption": "Ești sigur că vrei să îndepărtezi această opțiune?",
"poll_wizardDescription": "Crează automat un număr de opțiuni întroducând orice număr de zile sau intervale orare", "poll_removeUser": "Ești sigur că vrei să îndepărtezi aceast utilizator?",
"poll_wizardAddDateButton": "+ Zi", "poll_titleHint": "Titlu",
"poll_wizardAddTimeButton": "+ Ore", "poll_descriptionHint": "Descrie sondajul, și apoi folosește butonul 'publică' când ai terminat. Orice utilizator care are link-ul poate modifica descrierea, dar descurajăm această practică.",
"poll_optionPlaceholder": "Opțiune", "canvas_clear": "Curăță",
"poll_userPlaceholder": "Numele tău", "canvas_delete": "Curăță selecția",
"poll_removeOption": "Ești sigur că vrei să îndepărtezi această opțiune?", "canvas_disable": "Dezactivează modul desen",
"poll_removeUser": "Ești sigur că vrei să îndepărtezi aceast utilizator?", "canvas_enable": "Activează modul desen",
"poll_titleHint": "Titlu", "canvas_width": "Lățime",
"poll_descriptionHint": "Descrie sondajul, și apoi folosește butonul 'publică' când ai terminat. Orice utilizator care are link-ul poate modifica descrierea, dar descurajăm această practică.", "canvas_opacity": "Opacitate",
"canvas_clear": "Curăță", "fm_rootName": "Documente",
"canvas_delete": "Curăță selecția", "fm_trashName": "Gunoi",
"canvas_disable": "Dezactivează modul desen", "fm_unsortedName": "Fișiere nesortate",
"canvas_enable": "Activează modul desen", "fm_filesDataName": "Toate fișierele",
"canvas_width": "Lățime", "fm_templateName": "Șabloane",
"canvas_opacity": "Opacitate", "fm_searchName": "Caută",
"fm_rootName": "Documente", "fm_searchPlaceholder": "Caută...",
"fm_trashName": "Gunoi", "fm_newButton": "Nou",
"fm_unsortedName": "Fișiere nesortate", "fm_newButtonTitle": "Crează un nou pad sau folder",
"fm_filesDataName": "Toate fișierele", "fm_newFolder": "Folder nou",
"fm_templateName": "Șabloane", "fm_newFile": "Pad nou",
"fm_searchName": "Caută", "fm_folder": "Folder",
"fm_searchPlaceholder": "Caută...", "fm_folderName": "Numele folderului",
"fm_newButton": "Nou", "fm_numberOfFolders": "# de foldere",
"fm_newButtonTitle": "Crează un nou pad sau folder", "fm_numberOfFiles": "# of files",
"fm_newFolder": "Folder nou", "fm_fileName": "Nume filă",
"fm_newFile": "Pad nou", "fm_title": "Titlu",
"fm_folder": "Folder", "fm_type": "Tip",
"fm_folderName": "Numele folderului", "fm_lastAccess": "Ultima accesare",
"fm_numberOfFolders": "# de foldere", "fm_creation": "Creare",
"fm_numberOfFiles": "# of files", "fm_forbidden": "Acțiune interzisă",
"fm_fileName": "Nume filă", "fm_originalPath": "Ruta inițială",
"fm_title": "Titlu", "fm_openParent": "Arată în folder",
"fm_type": "Tip", "fm_noname": "Document nedenumit",
"fm_lastAccess": "Ultima accesare", "fm_emptyTrashDialog": "Ești sigur că vrei să golești coșul de gunoi?",
"fm_creation": "Creare", "fm_removeSeveralPermanentlyDialog": "Ești sigur că vrei să ștergi pentru totdeauna aceste {0} elemente din coșul de gunoi?",
"fm_forbidden": "Acțiune interzisă", "fm_removePermanentlyDialog": "Ești sigur că vrei să ștergi acest element pentru totdeauna?",
"fm_originalPath": "Ruta inițială", "fm_removeSeveralDialog": "Ești sigur că vrei să muți aceste {0} elemente la coșul de gunoi?",
"fm_openParent": "Arată în folder", "fm_removeDialog": "Ești sigur că vrei să muți {0} la gunoi?",
"fm_noname": "Document nedenumit", "fm_restoreDialog": "Ești sigur că vrei să restabilești {0} în locația trecută?",
"fm_emptyTrashDialog": "Ești sigur că vrei să golești coșul de gunoi?", "fm_unknownFolderError": "Ultima locație vizitată sau cea selectată nu mai există. Deschidem fișierul părinte...",
"fm_removeSeveralPermanentlyDialog": "Ești sigur că vrei să ștergi pentru totdeauna aceste {0} elemente din coșul de gunoi?", "fm_contextMenuError": "Nu putem deschide meniul de context pentru acest element. Dacă problema persistă, reîncarcă pagina.",
"fm_removePermanentlyDialog": "Ești sigur că vrei să ștergi acest element pentru totdeauna?", "fm_selectError": "Nu putem selecta elementul vizat. Dacă problema persistă, reîncarcă pagina.",
"fm_removeSeveralDialog": "Ești sigur că vrei să muți aceste {0} elemente la coșul de gunoi?", "fm_categoryError": "Nu putem deschide categoria selectată, afișează sursa.",
"fm_removeDialog": "Ești sigur că vrei să muți {0} la gunoi?", "fm_info_root": "Crează câte foldere tip cuib ai nevoie pentru a-ți sorta fișierele.",
"fm_restoreDialog": "Ești sigur că vrei să restabilești {0} în locația trecută?", "fm_info_unsorted": "Conține toate fișierele pe care le-ai vizitat și nu sunt sortate în \"Documente\" sau mutate în \"Gunoi\".",
"fm_unknownFolderError": "Ultima locație vizitată sau cea selectată nu mai există. Deschidem fișierul părinte...", "fm_info_template": "Conține toate pad-urile stocate ca șabloane și pe care le poți refolosi atunci când creezi un nou pad.",
"fm_contextMenuError": "Nu putem deschide meniul de context pentru acest element. Dacă problema persistă, reîncarcă pagina.", "fm_info_trash": "Fișierele șterse din gunoi vor fi șterse și din \"Toate fișierele\", făcând imposibilă recuperarea fișierelor din managerul de fișiere.",
"fm_selectError": "Nu putem selecta elementul vizat. Dacă problema persistă, reîncarcă pagina.", "fm_info_allFiles": "Conține toate fișierele din \"Documente\", \"Nesortate\" și \"Gunoi\". Poți să muți sau să ștergi fișierele aici.",
"fm_categoryError": "Nu putem deschide categoria selectată, afișează sursa.", "fm_info_anonymous": "Nu ești logat cu un cont valid așa că aceste pad-uri vor fi șterse (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">află de ce</a>). <a href=\"/register/\">Înscrie-te</a> sau <a href=\"/login/\">Loghează-te</a> pentru a le salva.",
"fm_info_root": "Crează câte foldere tip cuib ai nevoie pentru a-ți sorta fișierele.", "fm_alert_backupUrl": "Link copie de rezervă pentru acest drive.<br> Este <strong>foarte recomandat</strong> să o păstrezi pentru tine.<br>Poți să o folosești pentru a recupera toate fișierele în cazul în care memoria browserului tău este șterge..<br>Oricine are linkul poate să editeze sau să îndepărteze toate fișierele din managerul tău de documente.<br>",
"fm_info_unsorted": "Conține toate fișierele pe care le-ai vizitat și nu sunt sortate în \"Documente\" sau mutate în \"Gunoi\".", "fm_alert_anonymous": "Salut, momentan folosești CryptPad în mod anonim. Este ok, doar că fișierele tale vor fi șterse după o perioadă de inactivitate. Am dezactivat caracteristicile avansate ale drive-ului pentru utilizatorii anonimi pentru a face clar faptul că stocare documentelor acolo nu este o metodă sigură. Poți să <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">citești mai multe</a> despre motivarea noastră și despre ce de trebuie să te <a href=\"/register/\">Înregistrezi</a> si sa te <a href=\"/login/\">Loghezi</a>.",
"fm_info_template": "Conține toate pad-urile stocate ca șabloane și pe care le poți refolosi atunci când creezi un nou pad.", "fm_backup_title": "Link de backup",
"fm_info_trash": "Fișierele șterse din gunoi vor fi șterse și din \"Toate fișierele\", făcând imposibilă recuperarea fișierelor din managerul de fișiere.", "fm_nameFile": "Cum ai vrea să numești fișierul?",
"fm_info_allFiles": "Conține toate fișierele din \"Documente\", \"Nesortate\" și \"Gunoi\". Poți să muți sau să ștergi fișierele aici.", "fc_newfolder": "Folder nou",
"fm_info_login": "Loghează-te", "fc_rename": "Redenumește",
"fm_info_register": "Înscrie-te", "fc_open": "Deschide",
"fm_info_anonymous": "Nu ești logat cu un cont valid așa că aceste pad-uri vor fi șterse (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">află de ce</a>). <a href=\"/register/\">Înscrie-te</a> sau <a href=\"/login/\">Loghează-te</a> pentru a le salva.", "fc_open_ro": "Deschide (modul citire)",
"fm_alert_backupUrl": "Link copie de rezervă pentru acest drive.<br> Este <strong>foarte recomandat</strong> să o păstrezi pentru tine.<br>Poți să o folosești pentru a recupera toate fișierele în cazul în care memoria browserului tău este șterge..<br>Oricine are linkul poate să editeze sau să îndepărteze toate fișierele din managerul tău de documente.<br>", "fc_delete": "Șterge",
"fm_alert_anonymous": "Salut, momentan folosești CryptPad în mod anonim. Este ok, doar că fișierele tale vor fi șterse după o perioadă de inactivitate. Am dezactivat caracteristicile avansate ale drive-ului pentru utilizatorii anonimi pentru a face clar faptul că stocare documentelor acolo nu este o metodă sigură. Poți să <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">citești mai multe</a> despre motivarea noastră și despre ce de trebuie să te <a href=\"/register/\">Înregistrezi</a> si sa te <a href=\"/login/\">Loghezi</a>.", "fc_restore": "Restaurează",
"fm_backup_title": "Link de backup", "fc_remove": "Șterge permanent",
"fm_nameFile": "Cum ai vrea să numești fișierul?", "fc_empty": "Curăță coșul",
"fc_newfolder": "Folder nou", "fc_prop": "Proprietăți",
"fc_rename": "Redenumește", "fc_sizeInKilobytes": "Dimensiune n Kilobytes",
"fc_open": "Deschide", "fo_moveUnsortedError": "Nu poți să muți un folder la lista de pad-uri nesortate",
"fc_open_ro": "Deschide (modul citire)", "fo_existingNameError": "Numele ales este deja folosit în acest director. Te rugăm să alegi altul.",
"fc_delete": "Șterge", "fo_moveFolderToChildError": "Nu poți să muți un folder într-unul dintre descendenții săi",
"fc_restore": "Restaurează", "fo_unableToRestore": "Nu am reușit să restaurăm fișierul în locația de origine. Poți să ncerci să îl muți într-o nouă locație.",
"fc_remove": "Șterge permanent", "fo_unavailableName": "Un fișier sau un folder cu același nume există deja în locația nouă. Redenumește elementul și încearcă din nou.",
"fc_empty": "Curăță coșul", "login_login": "Loghează-te",
"fc_prop": "Proprietăți", "login_makeAPad": "Crează un pad în modul anonim",
"fc_sizeInKilobytes": "Dimensiune n Kilobytes", "login_nologin": "Răsfoiește pad-urile locale",
"fo_moveUnsortedError": "Nu poți să muți un folder la lista de pad-uri nesortate", "login_register": "Înscrie-te",
"fo_existingNameError": "Numele ales este deja folosit în acest director. Te rugăm să alegi altul.", "logoutButton": "Deloghează-te",
"fo_moveFolderToChildError": "Nu poți să muți un folder într-unul dintre descendenții săi", "settingsButton": "Setări",
"fo_unableToRestore": "Nu am reușit să restaurăm fișierul în locația de origine. Poți să ncerci să îl muți într-o nouă locație.", "login_username": "Nume utilizator",
"fo_unavailableName": "Un fișier sau un folder cu același nume există deja în locația nouă. Redenumește elementul și încearcă din nou.", "login_password": "Parolă",
"login_login": "Loghează-te", "login_confirm": "Confirmă parola",
"login_makeAPad": "Crează un pad în modul anonim", "login_remember": "Ține-mă minte",
"login_nologin": "Răsfoiește pad-urile locale", "login_hashing": "Încriptăm parola, o să mai dureze.",
"login_register": "Înscrie-te", "login_hello": "Salut {0},",
"logoutButton": "Deloghează-te", "login_helloNoName": "Salut,",
"settingsButton": "Setări", "login_accessDrive": "Acesează-ți drive-ul",
"login_username": "Nume utilizator", "login_orNoLogin": "sau",
"login_password": "Parolă", "login_noSuchUser": "Nume de utilizator sau parolă invalide. Încearcă din nou sau înscrie-te.",
"login_confirm": "Confirmă parola", "login_invalUser": "Nume utilizator cerut",
"login_remember": "Ține-mă minte", "login_invalPass": "Parolă cerută",
"login_hashing": "Încriptăm parola, o să mai dureze.", "login_unhandledError": "O eroare neașteptată a avut loc emoticon_unhappy",
"login_hello": "Salut {0},", "register_importRecent": "Importă istoricul pad-ului (Recomandat)",
"login_helloNoName": "Salut,", "register_acceptTerms": "Accept <a href='/terms.html'>termenii serviciului</a>",
"login_accessDrive": "Acesează-ți drive-ul", "register_passwordsDontMatch": "Parolele nu se potrivesc!",
"login_orNoLogin": "sau", "register_mustAcceptTerms": "Trebuie să accepți termenii serviciului",
"login_noSuchUser": "Nume de utilizator sau parolă invalide. Încearcă din nou sau înscrie-te.", "register_mustRememberPass": "Nu putem să îți resetăm parola dacă o uiți. Este foarte important să o ții minte! Bifează căsuța pentru a confirma.",
"login_invalUser": "Nume utilizator cerut", "register_header": "Bine ai venit în CryptPad",
"login_invalPass": "Parolă cerută", "register_explanation": "<p>Hai să stabilim câteva lucruri, mai întâi</p><ul><li>Parola ta este cheia secretă care criptează toate pad-urile tale. Dacă pierzi/uiți parola nu există nici-o metodă prin care îți putem recupera datele.</li><li>Poți importa pad-uri care au fost vizionate recent în browser pentru a le avea în cont.</li><li>Dacă folosești un computer împărțit, trebuie să te deloghezi, închiderea taburilor nu este de ajuns.</li></ul>",
"login_unhandledError": "O eroare neașteptată a avut loc emoticon_unhappy", "register_writtenPassword": "Mi-am notat numele de utilizator și parola, înaintează.",
"register_importRecent": "Importă istoricul pad-ului (Recomandat)", "register_cancel": "Întoarce-te",
"register_acceptTerms": "Accept <a href='/terms.html'>termenii serviciului</a>", "register_warning": "Zero Knowledge înseamnă că noi nu îți putem recupera datele dacă îți pierzi parola.",
"register_passwordsDontMatch": "Parolele nu se potrivesc!", "register_alreadyRegistered": "Acest user există deja, vrei să te loghezi?",
"register_mustAcceptTerms": "Trebuie să accepți termenii serviciului", "settings_title": "Setări",
"register_mustRememberPass": "Nu putem să îți resetăm parola dacă o uiți. Este foarte important să o ții minte! Bifează căsuța pentru a confirma.", "settings_save": "Salvează",
"register_header": "Bine ai venit în CryptPad", "settings_backup": "Copie de rezervă",
"register_explanation": "<p>Hai să stabilim câteva lucruri, mai întâi</p><ul><li>Parola ta este cheia secretă care criptează toate pad-urile tale. Dacă pierzi/uiți parola nu există nici-o metodă prin care îți putem recupera datele.</li><li>Poți importa pad-uri care au fost vizionate recent în browser pentru a le avea în cont.</li><li>Dacă folosești un computer împărțit, trebuie să te deloghezi, închiderea taburilor nu este de ajuns.</li></ul>", "settings_restore": "Restaurează",
"register_writtenPassword": "Mi-am notat numele de utilizator și parola, înaintează.", "settings_reset": "Îndepărtează toate fișierele și folderele din CryptPad-ul tău.",
"register_cancel": "Întoarce-te", "settings_resetPrompt": "Această acțiune va indepărta toate pad-urile din drive-ul tău.<br>Ești sigur că vrei să continui?<br>Tastează “<em>Iubesc CryptPad</em>” pentru a confirma.",
"register_warning": "Zero Knowledge înseamnă că noi nu îți putem recupera datele dacă îți pierzi parola.", "settings_resetDone": "Drive-ul tău este acum gol!",
"register_alreadyRegistered": "Acest user există deja, vrei să te loghezi?", "settings_resetError": "Text de verificare incorect. CryptPad-ul tău nu a fost schimbat.",
"settings_title": "Setări", "settings_resetTips": "Sfaturi în CryptDrive",
"settings_save": "Salvează", "settings_resetTipsButton": "Resetează sfaturile disponibile în CryptDrive",
"settings_backupTitle": "Fă o copie de rezervă sau restaurează toate datele", "settings_resetTipsDone": "Toate sfaturile sunt vizibile din nou.",
"settings_backup": "Copie de rezervă", "settings_importTitle": "Importă pad-urile recente ale acestui browser n CryptDrive-ul meu",
"settings_restore": "Restaurează", "settings_import": "Importă",
"settings_resetTitle": "Curăță-ți drive-ul", "settings_importConfirm": "Ești sigur că vrei să imporți pad-urile recente ale acestui browser în contul tău de CryptDrive?",
"settings_reset": "Îndepărtează toate fișierele și folderele din CryptPad-ul tău.", "settings_importDone": "Import complet",
"settings_resetPrompt": "Această acțiune va indepărta toate pad-urile din drive-ul tău.<br>Ești sigur că vrei să continui?<br>Tastează “<em>Iubesc CryptPad</em>” pentru a confirma.", "settings_userFeedbackHint1": "CryptPad oferă niște feedback foarte simplu serverului, pentru a ne informa cum putem să îți îmbunătățim experiența voastră.",
"settings_resetDone": "Drive-ul tău este acum gol!", "settings_userFeedbackHint2": "Conținutul pad-ului tău nu va fi împărțit cu serverele.",
"settings_resetError": "Text de verificare incorect. CryptPad-ul tău nu a fost schimbat.", "settings_userFeedback": "Activează feedback",
"settings_resetTips": "Sfaturi în CryptDrive", "settings_anonymous": "Nu ești logat. Setările sunt specifice browser-ului.",
"settings_resetTipsButton": "Resetează sfaturile disponibile în CryptDrive", "settings_publicSigningKey": "Cheia de semnătură publică",
"settings_resetTipsDone": "Toate sfaturile sunt vizibile din nou.", "settings_usage": "Uzaj",
"settings_importTitle": "Importă pad-urile recente ale acestui browser n CryptDrive-ul meu", "settings_usageTitle": "Vezi dimensiunea totală a pad-urilor fixate în MB",
"settings_import": "Importă", "settings_pinningNotAvailable": "Pad-urile fixate sunt disponibile doar utilizatorilor înregistrați.",
"settings_importConfirm": "Ești sigur că vrei să imporți pad-urile recente ale acestui browser în contul tău de CryptDrive?", "settings_pinningError": "Ceva nu a funcționat",
"settings_importDone": "Import complet", "settings_usageAmount": "Pad-urile tale fixate ocupă {0}MB",
"settings_userFeedbackHint1": "CryptPad oferă niște feedback foarte simplu serverului, pentru a ne informa cum putem să îți îmbunătățim experiența voastră.", "settings_logoutEverywhereTitle": "Deloghează-te peste tot",
"settings_userFeedbackHint2": "Conținutul pad-ului tău nu va fi împărțit cu serverele.", "settings_logoutEverywhere": "Deloghează-te din toate sesiunile web",
"settings_userFeedback": "Activează feedback", "settings_logoutEverywhereConfirm": "Ești sigur? Va trebui să te loghezi, din nou, pe toate device-urile tale.",
"settings_anonymous": "Nu ești logat. Setările sunt specifice browser-ului.", "upload_serverError": "Eroare de server: fișierele tale nu pot fi încărcate la momentul acesta.",
"settings_publicSigningKey": "Cheia de semnătură publică", "upload_uploadPending": "Ai deja o încărcare în desfășurare. Anulezi și încarci noul fișier?",
"settings_usage": "Uzaj", "upload_success": "Fișierul tău ({0}) a fost ncărcat și adăugat la drive-ul tău cu succes.",
"settings_usageTitle": "Vezi dimensiunea totală a pad-urilor fixate în MB", "main_info": "<h1>Colaborează în siguranță</h1><br> Dezvoltă-ți ideile împreună cu documentele partajate în timp ce tehnologia <strong>Zero Knowledge</strong> îți păstrează securitatea; chiar și de noi.",
"settings_pinningNotAvailable": "Pad-urile fixate sunt disponibile doar utilizatorilor înregistrați.", "main_richText": "Rich Text editor",
"settings_pinningError": "Ceva nu a funcționat", "main_code": "Editor cod",
"settings_usageAmount": "Pad-urile tale fixate ocupă {0}MB", "main_slide": "Editor slide-uri",
"settings_logoutEverywhereTitle": "Deloghează-te peste tot", "main_poll": "Sondaj",
"settings_logoutEverywhere": "Deloghează-te din toate sesiunile web", "main_drive": "CryptDrive",
"settings_logoutEverywhereConfirm": "Ești sigur? Va trebui să te loghezi, din nou, pe toate device-urile tale.", "footer_applications": "Aplicații",
"upload_serverError": "Eroare de server: fișierele tale nu pot fi încărcate la momentul acesta.", "footer_contact": "Contact",
"upload_uploadPending": "Ai deja o încărcare în desfășurare. Anulezi și încarci noul fișier?", "footer_aboutUs": "Despre noi",
"upload_success": "Fișierul tău ({0}) a fost ncărcat și adăugat la drive-ul tău cu succes.", "about": "Despre",
"main_p2": "Acest proiect folosește <a href=\"http://ckeditor.com/\">CKEditor</a> Visual Editor, <a href=\"https://codemirror.net/\">CodeMirror</a>, și <a href=\"https://github.com/xwiki-contrib/chainpad\">ChainPad</a> un motor în timp real.", "privacy": "Privacy",
"main_howitworks_p1": "CryptPad folosește o variantă a algoritmului de <a href=\"https://en.wikipedia.org/wiki/Operational_transformation\">Operational transformation</a> care este capabil să găsescă consens distribuit folosind <a href=\"https://bitcoin.org/bitcoin.pdf\">Nakamoto Blockchain</a>, o construcție popularizată de <a href=\"https://en.wikipedia.org/wiki/Bitcoin\">Bitcoin</a>. Astfel algoritmul poate evita nevoia ca serverul central să rezove conflicte, iar serverul nu este interesat de conținutul care este editat în pad.", "contact": "Contact",
"main_about_p2": "Dacă ai orice fel de întrebare sau comentariu, poți să ne <a href=\"https://twitter.com/cryptpad\">dai un tweet</a>, semnalezi o problemă <a href=\"https://github.com/xwiki-labs/cryptpad/issues/\" title=\"index de probleme\">on github</a>, spui salut pe IRC (<a href=\"http://webchat.freenode.net?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7\" title=\"freenode webchat\">irc.freenode.net</a>), sau <a href=\"research@xwiki.com\">trimiți un email</a>.", "terms": "ToS",
"main_info": "<h1>Colaborează în siguranță</h1><br> Dezvoltă-ți ideile împreună cu documentele partajate în timp ce tehnologia <strong>Zero Knowledge</strong> îți păstrează securitatea; chiar și de noi.", "blog": "Blog",
"main_howitworks": "Cum funcționează", "policy_title": "Politica de confidențialitate CryptPad",
"main_zeroKnowledge": "Zero Knowledge", "policy_whatweknow": "Ce știm despre tine",
"main_zeroKnowledge_p": "Nu trebuie să ne crezi că <em>nu ne uităm</em> la pad-urile tale, cu tehnologia revoluționară Zero Knowledge a CryptPad <em>nu putem</em>. Învață mai multe despre cum îți protejăm <a href=\"/privacy.html\" title='Intimitatea'>Intimitate și Securitate</a>.", "policy_whatweknow_p1": "Ca o aplicație care este găzduită online, CryptPad are acces la metadatele expuse de protocolul HTTP. Asta include adresa IP-ului tău, și alte titluri HTTP care pot fi folosite ca să identifice un browser. Poți să vezi ce informații împărtășește browser-ul tău vizitând <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"what http headers is my browser sending\">WhatIsMyBrowser.com</a>.",
"main_writeItDown": "Notează", "policy_whatweknow_p2": "Folosim <a href=\"https://www.elastic.co/products/kibana\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"platforma de analiză open source\">Kibana</a>, o platformă open source, pentru a afla mai multe despre utilizatorii noștri. Kibana ne spune despre cum ai găsit CryptPad, căutare directă, printr-un motor de căutare, sau prin recomandare de la un alt serviciu online ca Reddit sau Twitter.",
"main_writeItDown_p": "Cele mai importante proiecte vin din idei mici. Notează-ți momentele de inspirație și ideile neașteptate pentru că nu știi niciodată care ar putea fi noua mare descoperire.", "policy_howweuse": "Cum folosim ce aflăm",
"main_share": "Partajează link-ul, partajează pad-ul", "policy_howweuse_p1": "Folosim aceste informații pentru a lua decizii mai bune în promovarea CryptPad, prin evaluarea eforturilor trecute care au fost de succes. Informațiile despre locația ta ne ajută să aflăm dacă ar trebui să oferim suport pentru alte limbi, pe lângă engleză.",
"main_share_p": "Dezvoltă-ți ideile împreună: organizează întâlniri eficiente, colaborează pe liste TODO și fă prezentări scurte cu toți prietenii tăi și device-urile tale.", "policy_howweuse_p2": "Informațiile despre browser-ul tău (dacă este bazat pe un sistem de operare desktop sau mobil) ne ajută să luăm decizii când prioritizăm viitoarele îmbunătățiri. Echipa noastră de dezvoltare este mică, și încercăm să facem alegeri care să îmbunătățească experiența câtor mai mulți utilizatori.",
"main_organize": "Organizează-te", "policy_whatwetell": "Ce le spunem altora despre tine",
"main_organize_p": "Cu CryptPad Drive, poți să stai cu ochii pe ce este important. Folderele îți permit să ții evidența proiectelor tale și să ai o viziune globală asupra evoluției lucrurilor.", "policy_whatwetell_p1": "Nu furnizăm informațiile obținute terților, decât dacă ne este cerut în mod legal.",
"tryIt": "Testează!", "policy_links": "Link-uri către alte site-uri",
"main_richText": "Rich Text editor", "policy_links_p1": "Acest site conține link-uri către alte site-uri, incluzându-le pe cele produse de alte organizații. Nu suntem responsabili pentru practicile de intimitate sau pentru conținutul site-urilor externe. Ca regulă generală, link-urile către site-uri externe sunt deschise ntr-o fereastră noup, pentru a face clar faptul că părăsiți CryptPad.fr.",
"main_richText_p": "Editează texte complexe în mod colaborativ cu Zero Knowledge în timp real. <a href=\"http://ckeditor.com\" target=\"_blank\">CkEditor</a> application.", "policy_ads": "Reclame",
"main_code": "Editor cod", "policy_ads_p1": "Nu afișăm nici o formă de publicitate online, dar s-ar putea să atașăm link-uri către instituțiile care ne finanțează cerecetarea.",
"main_code_p": "Editează cod din softul tău, în mod colaborativ, cu Zero Knowledge în timp real.<a href=\"https://www.codemirror.net\" target=\"_blank\">CodeMirror</a> application.", "policy_choices": "Ce alegeri ai",
"main_slide": "Editor slide-uri", "policy_choices_open": "Codul nostru este open source, așa că tu ai mereu posibilitatea de a-ți găzdui propria instanță de CryptPad.",
"main_slide_p": "Crează-ți prezentări folosind sintaxa Markdown, și afișează-le în browser-ul tău.", "policy_choices_vpn": "Dacă vrei să folosești instanța găzduită de noi, dar nu vrei să îți expui IP-ul, poți să îl protejezi folosind <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"downloads from the Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">Tor browser bundle</a>, sau <a href=\"https://riseup.net/en/vpn\" title=\"VPNs provided by Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.",
"main_poll": "Sondaj", "policy_choices_ads": "Dacă vrei doar să blochezi platforma noastră de analiză, poți folosi soluții de adblocking ca <a href=\"https://www.eff.org/privacybadger\" title=\"download privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.",
"main_poll_p": "Plănuiește întâlniri sau evenimente, sau votează pentru cea mai bună soluție pentru problema ta.", "tos_title": "CryptPad Termeni de Utilizare",
"main_drive": "CryptDrive", "tos_legal": "Te rugăm să nu fii rău intenționat, abuziv, sau să faci orice ilegal.",
"footer_applications": "Aplicații", "tos_availability": "Sperăm că o să găsești acest serviciu util, dar disponibilitatea sau performanța nu poate fi garantată. Te rugăm să îți exporți datele n mod regulat.",
"footer_contact": "Contact", "tos_e2ee": "Conținutul CryptPad poate fi citit sau modificat de oricine care poate ghici sau obține fragmentul identificator al pad-ului. Recomandăm să folosești soluții de comunicare criptate end-to-end-encrypted (e2ee) pentru a partaja link-uri, evitând orice risc în cazul unei scurgeri de informații.",
"footer_aboutUs": "Despre noi", "tos_logs": "Metadatele oferite de browser-ul tău serverului ar putea fi înscrise în scopul de a menține serviciul.",
"about": "Despre", "tos_3rdparties": "Nu oferim date personale terților, decât dacă ne sunt solicitate prin lege.",
"privacy": "Privacy", "header_logoTitle": "Mergi la pagina principală",
"contact": "Contact", "driveReadmeTitle": "Ce este CryptPad?",
"terms": "ToS", "readme_welcome": "Bine ai venit n CryptPad !",
"blog": "Blog", "readme_p1": "Bine ai venit în CryptPad, acesta este locul unde îți poți lua notițe, singur sau cu prietenii.",
"policy_title": "Politica de confidențialitate CryptPad", "readme_p2": "Acest pad o să îți ofere un scurt ghid în cum poți să folosești CryptPad pentru a lua notițe, a le ține organizate și a colabora pe ele.",
"policy_whatweknow": "Ce știm despre tine", "readme_cat1": "Descoperă-ți CryptDrive-ul",
"policy_whatweknow_p1": "Ca o aplicație care este găzduită online, CryptPad are acces la metadatele expuse de protocolul HTTP. Asta include adresa IP-ului tău, și alte titluri HTTP care pot fi folosite ca să identifice un browser. Poți să vezi ce informații împărtășește browser-ul tău vizitând <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"what http headers is my browser sending\">WhatIsMyBrowser.com</a>.", "readme_cat1_l1": "Crează un pad: În CryptDrive-ul tău, dă click {0} apoi {1} și poți să creezi un pad.",
"policy_whatweknow_p2": "Folosim <a href=\"https://www.elastic.co/products/kibana\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"platforma de analiză open source\">Kibana</a>, o platformă open source, pentru a afla mai multe despre utilizatorii noștri. Kibana ne spune despre cum ai găsit CryptPad, căutare directă, printr-un motor de căutare, sau prin recomandare de la un alt serviciu online ca Reddit sau Twitter.", "readme_cat1_l2": "Deschide pad-urile din CryptDrive-ul tău: doublu-click pe iconița unui pad pentru a-l deschide.",
"policy_howweuse": "Cum folosim ce aflăm", "readme_cat1_l3": "Organizează-ți pad-urile: Când ești logat, orice pad accesezi va fi afișat ca în secțiunea {0} a drive-ului tău.",
"policy_howweuse_p1": "Folosim aceste informații pentru a lua decizii mai bune în promovarea CryptPad, prin evaluarea eforturilor trecute care au fost de succes. Informațiile despre locația ta ne ajută să aflăm dacă ar trebui să oferim suport pentru alte limbi, pe lângă engleză.", "readme_cat1_l3_l1": "Poți să folosești funcția click and drag pentru a muta fișierele în folderele secțiunii {0} a drive-ului tău și pentru a crea noi foldere.",
"policy_howweuse_p2": "Informațiile despre browser-ul tău (dacă este bazat pe un sistem de operare desktop sau mobil) ne ajută să luăm decizii când prioritizăm viitoarele îmbunătățiri. Echipa noastră de dezvoltare este mică, și încercăm să facem alegeri care să îmbunătățească experiența câtor mai mulți utilizatori.", "readme_cat1_l3_l2": "Ține minte să încerci click-dreapta pe iconițe pentru că există și meniuri adiționale.",
"policy_whatwetell": "Ce le spunem altora despre tine", "readme_cat1_l4": "Pune pad-urile vechi în gunoi. Poți să folosești funcția click and drag pe pad-uri în categoria {0} la fel ca și în cazul folderelor.",
"policy_whatwetell_p1": "Nu furnizăm informațiile obținute terților, decât dacă ne este cerut în mod legal.", "readme_cat2": "Crează pad-uri ca un profesionist",
"policy_links": "Link-uri către alte site-uri", "edit": "editează",
"policy_links_p1": "Acest site conține link-uri către alte site-uri, incluzându-le pe cele produse de alte organizații. Nu suntem responsabili pentru practicile de intimitate sau pentru conținutul site-urilor externe. Ca regulă generală, link-urile către site-uri externe sunt deschise ntr-o fereastră noup, pentru a face clar faptul că părăsiți CryptPad.fr.", "view": "vezi",
"policy_ads": "Reclame", "readme_cat2_l1": "Butonul {0} din pad-ul tău dă accesul colaboratorilor tăi să {1} sau să {2} pad-ul.",
"policy_ads_p1": "Nu afișăm nici o formă de publicitate online, dar s-ar putea să atașăm link-uri către instituțiile care ne finanțează cerecetarea.", "readme_cat2_l2": "Schimbă titlul pad-ului dând click pe creion",
"policy_choices": "Ce alegeri ai", "readme_cat3": "Descoperă aplicațiile CryptPad",
"policy_choices_open": "Codul nostru este open source, așa că tu ai mereu posibilitatea de a-ți găzdui propria instanță de CryptPad.", "readme_cat3_l1": "Cu editorul de cod CryptPad, poți colabora pe cod ca Javascript și markdown ca HTML și Markdown",
"policy_choices_vpn": "Dacă vrei să folosești instanța găzduită de noi, dar nu vrei să îți expui IP-ul, poți să îl protejezi folosind <a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"downloads from the Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">Tor browser bundle</a>, sau <a href=\"https://riseup.net/en/vpn\" title=\"VPNs provided by Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>.", "readme_cat3_l2": "Cu editorul de slide-uri CryptPad, poți să faci prezentări scurte folosind Markdown",
"policy_choices_ads": "Dacă vrei doar să blochezi platforma noastră de analiză, poți folosi soluții de adblocking ca <a href=\"https://www.eff.org/privacybadger\" title=\"download privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.", "readme_cat3_l3": "Cu CryptPoll poți să organizezi votări rapide, mai ales pentru a programa ntâlniri care se potrivesc calendarelor tuturor",
"tos_title": "CryptPad Termeni de Utilizare", "tips": {
"tos_legal": "Te rugăm să nu fii rău intenționat, abuziv, sau să faci orice ilegal.", "shortcuts": "`ctrl+b`, `ctrl+i` and `ctrl+u` sunt scurtături pentru bold, italic și underline.",
"tos_availability": "Sperăm că o să găsești acest serviciu util, dar disponibilitatea sau performanța nu poate fi garantată. Te rugăm să îți exporți datele n mod regulat.", "marker": "Poți sublinia text într-un pad folosind itemul \"marker\" n meniul de stiluri."
"tos_e2ee": "Conținutul CryptPad poate fi citit sau modificat de oricine care poate ghici sau obține fragmentul identificator al pad-ului. Recomandăm să folosești soluții de comunicare criptate end-to-end-encrypted (e2ee) pentru a partaja link-uri, evitând orice risc în cazul unei scurgeri de informații.", },
"tos_logs": "Metadatele oferite de browser-ul tău serverului ar putea fi înscrise în scopul de a menține serviciul.", "feedback_about": "Dacă citești asta, probabil că ești curios de ce CryptPad cere pagini web atunci când întreprinzi anumite acțiuni",
"tos_3rdparties": "Nu oferim date personale terților, decât dacă ne sunt solicitate prin lege.", "feedback_privacy": "Ne pasă de intimitatea ta, si în același timp vrem să păstrăm CryptPad ușor de folosit. Folosim acest fișier pentru a ne da seama care beneficii UI contează cel mai mult pentru utilizatori, cerându-l alături de un parametru specific atunci când acțiunea se desfășoară",
"bottom_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Realizat cu <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" alt=\"love\" /> n <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" alt=\"Franța\" /></a>", "feedback_optout": "Dacă vrei să ieși, vizitează <a href='/settings/'>setările de pe pagina ta de user</a>, unde vei găsi o căsuță pentru a activa sau dezactiva feedback-ul de la user"
"bottom_support": "<a href=\"http://labs.xwiki.com/\" title=\"XWiki Labs\" target=\"_blank\" rel=\"noopener noreferrer\">Un proiect al <img src=\"/customize/logo-xwiki2.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/> Labs Project </a> cu susținerea <a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">With <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" alt=\"love\" /> from <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" title=\"Franța\" alt=\"Franța\"/> by <img src=\"/customize/logo-xwiki.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/></a>",
"header_support": "<a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_logoTitle": "Mergi la pagina principală",
"initialState": "<p>Acesta este&nbsp;<strong>CryptPad</strong>, editorul colaborativ bazat pe tehnologia Zero Knowledge în timp real. Totul este salvat pe măsură ce scrii.<br>Partajează link-ul către acest pad pentru a edita cu prieteni sau folosește <span class=\"fa fa-share-alt\"></span> butonul pentru a partaja <em>read-only link</em>&nbsp;permițând vizualizarea dar nu și editarea.</p>",
"codeInitialState": "/*\n Acesta este editorul colaborativ de cod bazat pe tehnologia Zero Knowledge CryptPad.\n Ce scrii aici este criptat, așa că doar oamenii care au link-ul pot să-l acceseze.\n Poți să alegi ce limbaj de programare pus n evidență și schema de culori UI n dreapta sus.\n*/",
"slideInitialState": "# CryptSlide\n1. Scrie-ți conținutul slide-urilor folosind sintaxa markdown\n - Află mai multe despre sintaxa markdown [aici](http://www.markdowntutorial.com/)\n2. Separă-ți slide-urile cu ---\n3. Click pe butonul \"Play\" pentru a vedea rezultatele - Slide-urile tale sunt actualizate în timp real.",
"driveReadmeTitle": "Ce este CryptPad?",
"readme_welcome": "Bine ai venit n CryptPad !",
"readme_p1": "Bine ai venit în CryptPad, acesta este locul unde îți poți lua notițe, singur sau cu prietenii.",
"readme_p2": "Acest pad o să îți ofere un scurt ghid în cum poți să folosești CryptPad pentru a lua notițe, a le ține organizate și a colabora pe ele.",
"readme_cat1": "Descoperă-ți CryptDrive-ul",
"readme_cat1_l1": "Crează un pad: În CryptDrive-ul tău, dă click {0} apoi {1} și poți să creezi un pad.",
"readme_cat1_l2": "Deschide pad-urile din CryptDrive-ul tău: doublu-click pe iconița unui pad pentru a-l deschide.",
"readme_cat1_l3": "Organizează-ți pad-urile: Când ești logat, orice pad accesezi va fi afișat ca în secțiunea {0} a drive-ului tău.",
"readme_cat1_l3_l1": "Poți să folosești funcția click and drag pentru a muta fișierele în folderele secțiunii {0} a drive-ului tău și pentru a crea noi foldere.",
"readme_cat1_l3_l2": "Ține minte să încerci click-dreapta pe iconițe pentru că există și meniuri adiționale.",
"readme_cat1_l4": "Pune pad-urile vechi în gunoi. Poți să folosești funcția click and drag pe pad-uri în categoria {0} la fel ca și în cazul folderelor.",
"readme_cat2": "Crează pad-uri ca un profesionist",
"edit": "editează",
"view": "vezi",
"readme_cat2_l1": "Butonul {0} din pad-ul tău dă accesul colaboratorilor tăi să {1} sau să {2} pad-ul.",
"readme_cat2_l2": "Schimbă titlul pad-ului dând click pe creion",
"readme_cat3": "Descoperă aplicațiile CryptPad",
"readme_cat3_l1": "Cu editorul de cod CryptPad, poți colabora pe cod ca Javascript și markdown ca HTML și Markdown",
"readme_cat3_l2": "Cu editorul de slide-uri CryptPad, poți să faci prezentări scurte folosind Markdown",
"readme_cat3_l3": "Cu CryptPoll poți să organizezi votări rapide, mai ales pentru a programa ntâlniri care se potrivesc calendarelor tuturor",
"tips": {
"lag": "Iconița verde din dreapta-sus arată calitatea conexiunii internetului tău la serverele CryptPad.",
"shortcuts": "`ctrl+b`, `ctrl+i` and `ctrl+u` sunt scurtături pentru bold, italic și underline.",
"indentare": "În listele cu bulină sau cele numerotate, poți folosi tab sau shift+tab pentru a mări sau micșora indentarea.",
"titlu": "Poți seta titlul pad-urilor tale prin click pe centru sus.",
"stocare": "De fiecare dată când vizitezi un pad, dacă ești logat va fi salvat pe CryptDrive-ul tău.",
"marker": "Poți sublinia text într-un pad folosind itemul \"marker\" n meniul de stiluri."
},
"feedback_about": "Dacă citești asta, probabil că ești curios de ce CryptPad cere pagini web atunci când întreprinzi anumite acțiuni",
"feedback_privacy": "Ne pasă de intimitatea ta, si în același timp vrem să păstrăm CryptPad ușor de folosit. Folosim acest fișier pentru a ne da seama care beneficii UI contează cel mai mult pentru utilizatori, cerându-l alături de un parametru specific atunci când acțiunea se desfășoară",
"feedback_optout": "Dacă vrei să ieși, vizitează <a href='/settings/'>setările de pe pagina ta de user</a>, unde vei găsi o căsuță pentru a activa sau dezactiva feedback-ul de la user"
} }

View File

@ -1,381 +1,343 @@
{ {
"_languageName": "Chinese", "main_title": "CryptPad: 零知識, 即時協作編寫",
"main_title": "CryptPad: 零知識, 即時協作編寫", "type": {
"main_slogan": "團結就是力量 - 合作是關鍵", "pad": "富文本",
"type": { "code": "編碼",
"pad": "富文本", "poll": "投票",
"code": "編碼", "slide": "投影片簡報",
"poll": "投票", "drive": "磁碟",
"slide": "投影片簡報", "whiteboard": "白板",
"drive": "磁碟", "file": "檔案",
"whiteboard": "白板", "media": "多媒體"
"file": "檔案", },
"media": "多媒體" "button_newpad": "富文件檔案",
}, "button_newcode": "新代碼檔案",
"button_newpad": "富文件檔案", "button_newpoll": "新投票調查",
"button_newcode": "新代碼檔案", "button_newslide": "新簡報",
"button_newpoll": "新投票調查", "button_newwhiteboard": "新白板",
"button_newslide": "新簡報", "common_connectionLost": "<b>伺服器連線中斷</b><br>現在是唯讀狀態,直到連線恢復正常。",
"button_newwhiteboard": "新白板", "websocketError": "無法連結上 websocket 伺服器...",
"updated_0_common_connectionLost": "<b>伺服器連線中斷</b><br>現在是唯讀狀態,直到連線恢復正常。", "typeError": "這個編輯檔與所選的應用程式並不相容",
"common_connectionLost": "<b>伺服器連線中斷</b><br>現在是唯讀狀態,直到連線恢復正常。", "onLogout": "你已登出, {0}點擊這裏{1} 來登入<br>或按<em>Escape</em> 來以唯讀模型使用你的編輯檔案",
"websocketError": "無法連結上 websocket 伺服器...", "wrongApp": "無法在瀏覽器顯示即時期間的內容,請試著再重新載入本頁。",
"typeError": "這個編輯檔與所選的應用程式並不相容", "loading": "載入中...",
"onLogout": "你已登出, {0}點擊這裏{1} 來登入<br>或按<em>Escape</em> 來以唯讀模型使用你的編輯檔案", "error": "錯誤",
"wrongApp": "無法在瀏覽器顯示即時期間的內容,請試著再重新載入本頁。", "saved": "儲存",
"loading": "載入中...", "synced": "所有資料已儲存好了",
"error": "錯誤", "deleted": "自 CryptDrive 刪除檔案",
"saved": "儲存", "disconnected": "已斷線",
"synced": "所有資料已儲存好了", "synchronizing": "同步中",
"deleted": "自 CryptDrive 刪除檔案", "reconnecting": "重新連結...",
"disconnected": "已斷線", "lag": "Lag",
"synchronizing": "同步中", "readonly": "唯讀",
"reconnecting": "重新連結...", "anonymous": "匿名",
"lag": "Lag", "yourself": "你自己",
"readonly": "唯讀", "anonymousUsers": "匿名的編輯群",
"anonymous": "匿名", "anonymousUser": "匿名的編輯群者",
"yourself": "你自己", "users": "用戶",
"anonymousUsers": "匿名的編輯群", "and": "與",
"anonymousUser": "匿名的編輯群者", "viewer": "檢視者",
"users": "用戶", "viewers": "檢視群",
"and": "與", "editor": "編輯者",
"viewer": "檢視者", "editors": "編輯群",
"viewers": "檢視群", "language": "語言",
"editor": "編輯者", "comingSoon": "即將上市...",
"editors": "編輯群", "newVersion": "<b>CryptPad 已更新!</b><br>檢查最新版本有什麼新功能:<br><a href=\"https://github.com/xwiki-labs/cryptpad/releases/tag/{0}\" target=\"_blank\">CryptPad新發佈記事 {0}</a>",
"language": "語言", "upgrade": "昇級",
"comingSoon": "即將上市...", "upgradeTitle": "昇級帳戶以取得更多的儲存空間",
"newVersion": "<b>CryptPad 已更新!</b><br>檢查最新版本有什麼新功能:<br><a href=\"https://github.com/xwiki-labs/cryptpad/releases/tag/{0}\" target=\"_blank\">CryptPad新發佈記事 {0}</a>", "MB": "MB",
"upgrade": "昇級", "GB": "GB",
"upgradeTitle": "昇級帳戶以取得更多的儲存空間", "KB": "KB",
"MB": "MB", "formattedMB": "{0} MB",
"GB": "GB", "formattedGB": "{0} GB",
"KB": "KB", "formattedKB": "{0} KB",
"formattedMB": "{0} MB", "greenLight": "每件事都很順利",
"formattedGB": "{0} GB", "orangeLight": "連線速度慢可能會影響用戶體驗",
"formattedKB": "{0} KB", "redLight": "你這段期間的連線已中斷",
"greenLight": "每件事都很順利", "pinLimitReached": "你已達到儲存容量上限",
"orangeLight": "連線速度慢可能會影響用戶體驗", "pinLimitReachedAlert": "你已達到儲存容量上限,新檔案不會儲存到你的 CryptDrive.<br>要嘛你可以自 CryptDrive 移除原有文件或是 <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">昇級到付費版</a>增加你的儲存容量。",
"redLight": "你這段期間的連線已中斷", "pinLimitNotPinned": "你已達到容量使用上限<br>這個檔案無法儲存到你的 CryptDrive.",
"pinLimitReached": "你已達到儲存容量上限", "pinLimitDrive": "你已達到容量使用上限<br>你不能建立新的編輯檔案",
"updated_0_pinLimitReachedAlert": "你已達到儲存容量上限,新檔案不會儲存到你的 CryptDrive.<br>要嘛你可以自 CryptDrive 移除原有文件或是 <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">昇級到付費版</a>增加你的儲存容量。", "importButtonTitle": "從電腦上傳滙入檔案",
"pinLimitReachedAlert": "你已達到儲存容量上限,新檔案不會儲存到你的 CryptDrive.<br>要嘛你可以自 CryptDrive 移除原有文件或是 <a href=\"https://accounts.cryptpad.fr/#!on={0}\" target=\"_blank\">昇級到付費版</a>增加你的儲存容量。", "exportButtonTitle": "將這個檔案滙出到電腦",
"pinLimitNotPinned": "你已達到容量使用上限<br>這個檔案無法儲存到你的 CryptDrive.", "exportPrompt": "你希望怎麼命名你的檔案?",
"pinLimitDrive": "你已達到容量使用上限<br>你不能建立新的編輯檔案", "changeNamePrompt": "更換你的名稱(若留空白則會成為無名氏): ",
"importButtonTitle": "從電腦上傳滙入檔案", "user_rename": "改變顯示名稱",
"exportButtonTitle": "將這個檔案滙出到電腦", "user_displayName": "顯示名稱",
"exportPrompt": "你希望怎麼命名你的檔案?", "user_accountName": "帳號名稱",
"changeNamePrompt": "更換你的名稱(若留空白則會成為無名氏): ", "clickToEdit": "點擊以編輯",
"user_rename": "改變顯示名稱", "forgetButtonTitle": "將這個檔案移置垃圾筒",
"user_displayName": "顯示名稱", "forgetPrompt": "點擊 OK 將把這個檔案移置垃圾筒,確定要這樣做嗎",
"user_accountName": "帳號名稱", "movedToTrash": "這個檔案已被移置垃圾筒<br><a href=\"/drive/\">讀取我的雲端硬碟</a>",
"clickToEdit": "點擊以編輯", "shareButton": "分享",
"forgetButtonTitle": "將這個檔案移置垃圾筒", "shareSuccess": "複製連結到剪貼版",
"forgetPrompt": "點擊 OK 將把這個檔案移置垃圾筒,確定要這樣做嗎", "newButton": "新",
"movedToTrash": "這個檔案已被移置垃圾筒<br><a href=\"/drive/\">讀取我的雲端硬碟</a>", "newButtonTitle": "建立新的工作檔案",
"shareButton": "分享", "saveTemplateButton": "存成模版",
"shareSuccess": "複製連結到剪貼版", "saveTemplatePrompt": "為這個模版選一個標題",
"newButton": "新", "templateSaved": "模版已儲存!",
"newButtonTitle": "建立新的工作檔案", "selectTemplate": "選擇一個模版或是按 escape 跳出",
"saveTemplateButton": "存成模版", "previewButtonTitle": "顯示或隱藏 Markdown 預覽模式",
"saveTemplatePrompt": "為這個模版選一個標題", "presentButtonTitle": "輸入簡報模式",
"templateSaved": "模版已儲存!", "backgroundButtonTitle": "改變簡報的顏色背景",
"selectTemplate": "選擇一個模版或是按 escape 跳出", "colorButtonTitle": "在簡報模式下改變文字顏色",
"previewButtonTitle": "顯示或隱藏 Markdown 預覽模式", "printButton": "列印 (enter)",
"presentButtonTitle": "輸入簡報模式", "printOptions": "版型選項",
"backgroundButtonTitle": "改變簡報的顏色背景", "printSlideNumber": "顯示投影片號碼",
"colorButtonTitle": "在簡報模式下改變文字顏色", "printDate": "顯示日期",
"printButton": "列印 (enter)", "printTitle": "顯示檔案標題",
"printButtonTitle": "列印投影片或滙出成 PDF 檔案", "printCSS": "自定風格規則 (CSS):",
"printOptions": "版型選項", "printTransition": "啟用轉場動畫",
"printSlideNumber": "顯示投影片號碼", "slideOptionsTitle": "自定你的投影片",
"printDate": "顯示日期", "slideOptionsButton": "儲存 (enter)",
"printTitle": "顯示檔案標題", "editShare": "編輯連結",
"printCSS": "自定風格規則 (CSS):", "editShareTitle": "複製所編輯的連結到剪貼版",
"printTransition": "啟用轉場動畫", "editOpen": "在新分頁開啟連結編輯",
"slideOptionsTitle": "自定你的投影片", "editOpenTitle": "在新分頁開啟這個檔案為編輯模式",
"slideOptionsButton": "儲存 (enter)", "viewShare": "唯讀連結",
"editShare": "編輯連結", "viewShareTitle": "複製唯讀的連結到剪貼版",
"editShareTitle": "複製所編輯的連結到剪貼版", "viewOpen": "在新分頁開啟唯讀連結",
"editOpen": "在新分頁開啟連結編輯", "viewOpenTitle": "在新分頁開啟這個檔案為唯讀模式",
"editOpenTitle": "在新分頁開啟這個檔案為編輯模式", "notifyJoined": "{0} 已加入此協作期間",
"viewShare": "唯讀連結", "notifyRenamed": "{0} 現在改名為 {1}",
"viewShareTitle": "複製唯讀的連結到剪貼版", "notifyLeft": "{0} 已離開了這個協作期間",
"viewOpen": "在新分頁開啟唯讀連結", "okButton": "OK (enter)",
"viewOpenTitle": "在新分頁開啟這個檔案為唯讀模式", "cancel": "取消",
"notifyJoined": "{0} 已加入此協作期間", "cancelButton": "取消 (esc)",
"notifyRenamed": "{0} 現在改名為 {1}", "historyButton": "顯示文件歷史",
"notifyLeft": "{0} 已離開了這個協作期間", "history_next": "到下一個版本",
"okButton": "OK (enter)", "history_prev": "到之前的版本",
"cancel": "取消", "history_closeTitle": "關閉歷史記錄",
"cancelButton": "取消 (esc)", "history_restoreTitle": "將此文件重建到所挑選的版本",
"historyButton": "顯示文件歷史", "history_restorePrompt": "確定要將這個展現的版本來取代現有版本嗎?",
"history_next": "到下一個版本", "history_restoreDone": "文件已重建",
"history_prev": "到之前的版本", "history_version": "版本:",
"history_goTo": "到所選擇的版本", "poll_title": "零知識日期挑選",
"history_close": "回到", "poll_subtitle": "零知識, <em>即時</em> 排程",
"history_closeTitle": "關閉歷史記錄", "poll_p_save": "你的設定會立即更新, 因此從不需要按鍵儲存或擔心遺失。",
"history_restore": "重建", "poll_p_encryption": "你所有幹入的資料都會予以加密,只有取得連結者才可以讀取它。即便是伺服器也不能看到你作了什麼變動。",
"history_restoreTitle": "將此文件重建到所挑選的版本", "wizardLog": "點擊左上方的按鍵以回到你的調查",
"history_restorePrompt": "確定要將這個展現的版本來取代現有版本嗎?", "wizardTitle": "使用精靈來建立調查投票",
"history_restoreDone": "文件已重建", "wizardConfirm": "你真的要新增這些問題到你的調查中嗎?",
"history_version": "版本:", "poll_publish_button": "發佈",
"poll_title": "零知識日期挑選", "poll_admin_button": "管理者",
"poll_subtitle": "零知識, <em>即時</em> 排程", "poll_create_user": "新增使用者",
"poll_p_save": "你的設定會立即更新, 因此從不需要按鍵儲存或擔心遺失。", "poll_create_option": "新增選項",
"poll_p_encryption": "你所有幹入的資料都會予以加密,只有取得連結者才可以讀取它。即便是伺服器也不能看到你作了什麼變動。", "poll_commit": "投入",
"wizardLog": "點擊左上方的按鍵以回到你的調查", "poll_closeWizardButton": "關閉協助精靈",
"wizardTitle": "使用精靈來建立調查投票", "poll_closeWizardButtonTitle": "關閉協助精靈",
"wizardConfirm": "你真的要新增這些問題到你的調查中嗎?", "poll_wizardComputeButton": "計算最適化",
"poll_publish_button": "發佈", "poll_wizardClearButton": "清除表格",
"poll_admin_button": "管理者", "poll_wizardDescription": "透過輸入任何日期或時間分段,可自動建立一些選項",
"poll_create_user": "新增使用者", "poll_wizardAddDateButton": "+ 日期",
"poll_create_option": "新增選項", "poll_wizardAddTimeButton": "+ 時間",
"poll_commit": "投入", "poll_optionPlaceholder": "選項",
"poll_closeWizardButton": "關閉協助精靈", "poll_userPlaceholder": "你的名稱",
"poll_closeWizardButtonTitle": "關閉協助精靈", "poll_removeOption": "確定要移除這個選項嗎?",
"poll_wizardComputeButton": "計算最適化", "poll_removeUser": "確定要移除這位使用者嗎?",
"poll_wizardClearButton": "清除表格", "poll_titleHint": "標題",
"poll_wizardDescription": "透過輸入任何日期或時間分段,可自動建立一些選項", "poll_descriptionHint": "請簡述這個調查目的,完成時使用「發佈鍵」。任何知道此調查連結者可以更改這裏的描述內容,但我們不鼓勵這麼做。.",
"poll_wizardAddDateButton": "+ 日期", "canvas_clear": "清除",
"poll_wizardAddTimeButton": "+ 時間", "canvas_delete": "刪除所選",
"poll_optionPlaceholder": "選項", "canvas_disable": "取消繪圖",
"poll_userPlaceholder": "你的名稱", "canvas_enable": "啟動繪圖",
"poll_removeOption": "確定要移除這個選項嗎?", "canvas_width": "寛度",
"poll_removeUser": "確定要移除這位使用者嗎?", "canvas_opacity": "透明度",
"poll_titleHint": "標題", "fm_rootName": "根目錄",
"poll_descriptionHint": "請簡述這個調查目的,完成時使用「發佈鍵」。任何知道此調查連結者可以更改這裏的描述內容,但我們不鼓勵這麼做。.", "fm_trashName": "垃圾桶",
"canvas_clear": "清除", "fm_unsortedName": "未整理的檔案",
"canvas_delete": "刪除所選", "fm_filesDataName": "所有檔案",
"canvas_disable": "取消繪圖", "fm_templateName": "模版",
"canvas_enable": "啟動繪圖", "fm_searchName": "搜尋",
"canvas_width": "寛度", "fm_searchPlaceholder": "搜尋...",
"canvas_opacity": "透明度", "fm_newButton": "新的",
"fm_rootName": "根目錄", "fm_newButtonTitle": "建立新工作檔案或資料夾",
"fm_trashName": "垃圾桶", "fm_newFolder": "新資料夾",
"fm_unsortedName": "未整理的檔案", "fm_newFile": "新工作檔案",
"fm_filesDataName": "所有檔案", "fm_folder": "資料夾",
"fm_templateName": "模版", "fm_folderName": "資料夾名稱",
"fm_searchName": "搜尋", "fm_numberOfFolders": "# 個資料夾",
"fm_searchPlaceholder": "搜尋...", "fm_numberOfFiles": "# 檔案",
"fm_newButton": "新的", "fm_fileName": "檔案名",
"fm_newButtonTitle": "建立新工作檔案或資料夾", "fm_title": "標題",
"fm_newFolder": "新資料夾", "fm_type": "類型",
"fm_newFile": "新工作檔案", "fm_lastAccess": "上回使用",
"fm_folder": "資料夾", "fm_creation": "創建",
"fm_folderName": "資料夾名稱", "fm_forbidden": "禁止的行為",
"fm_numberOfFolders": "# 個資料夾", "fm_originalPath": "原始路徑",
"fm_numberOfFiles": "# 檔案", "fm_openParent": "顯示在目錄夾中",
"fm_fileName": "檔案名", "fm_noname": "無標題文件",
"fm_title": "標題", "fm_emptyTrashDialog": "確定要清理垃圾筒嗎?",
"fm_type": "類型", "fm_removeSeveralPermanentlyDialog": "確定要將這些 {0} 東西永自垃圾筒移除嗎?",
"fm_lastAccess": "上回使用", "fm_removePermanentlyDialog": "你確定要永久地移除這些項目嗎?",
"fm_creation": "創建", "fm_removeSeveralDialog": "確定要將這些 {0} 東西移至垃圾筒嗎?",
"fm_forbidden": "禁止的行為", "fm_removeDialog": "確定要將移動 {0} 至垃圾筒嗎?",
"fm_originalPath": "原始路徑", "fm_restoreDialog": "確定要重置 {0} 到它之前的位置嗎?",
"fm_openParent": "顯示在目錄夾中", "fm_unknownFolderError": "所選或上回訪問的目錄不再存在了,正開啟上層目錄中...",
"fm_noname": "無標題文件", "fm_contextMenuError": "無法在此元件下打開文本選單。如果這個問題一直發生,請試著重新載入此頁。",
"fm_emptyTrashDialog": "確定要清理垃圾筒嗎?", "fm_selectError": "無法選取目標的要素。如果這個問題一直發生,請試著重新載入此頁。",
"fm_removeSeveralPermanentlyDialog": "確定要將這些 {0} 東西永自垃圾筒移除嗎?", "fm_categoryError": "無法打開所選的類別,正在顯示根目錄。",
"fm_removePermanentlyDialog": "你確定要永久地移除這些項目嗎?", "fm_info_root": "在此建立任何巢狀目錄夾以便於整理分類你的檔案。",
"fm_removeSeveralDialog": "確定要將這些 {0} 東西移至垃圾筒嗎?", "fm_info_unsorted": "包含所有你曾訪問過的檔案,其尚未被整理在 \"根目錄\" 或移到到\"垃圾筒\".",
"fm_removeDialog": "確定要將移動 {0} 至垃圾筒嗎?", "fm_info_template": "包含所有工作檔案已存成模版,便於讓你在建立新工作檔案時套用。",
"fm_restoreDialog": "確定要重置 {0} 到它之前的位置嗎?", "fm_info_trash": "清空垃圾筒好讓 CryptDrive 多出一些空間",
"fm_unknownFolderError": "所選或上回訪問的目錄不再存在了,正開啟上層目錄中...", "fm_info_allFiles": "包含在 \"根目錄\", \"未整理的\" 和 \"垃圾筒\" 裏的所有檔案。這裏你無法移動或移除檔案。",
"fm_contextMenuError": "無法在此元件下打開文本選單。如果這個問題一直發生,請試著重新載入此頁。", "fm_info_anonymous": "你尚未登入,因此這些工作檔案可能會被刪除。 (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">了解原因</a>). <a href=\"/register/\">註冊</a>或<a href=\"/login/\">登入</a>以便保留它們。",
"fm_selectError": "無法選取目標的要素。如果這個問題一直發生,請試著重新載入此頁。", "fm_alert_backupUrl": "這個雲端硬碟的備份連結<br><strong>高度建議</strong>把自己的 IP 資訊保留成只有自己知道<br>萬一瀏覽器記憶被消除,你可以用它來接收所有的檔案。<br>任何知道此連結的人可以編輯或移除你檔案管理底下的所有檔案。<br>",
"fm_categoryError": "無法打開所選的類別,正在顯示根目錄。", "fm_alert_anonymous": "嗨你好, 你目前正以匿名方式在使用 CryptPad , 這也沒問題,不過你的東西過一段時間沒動靜後,就會自動被刪除。 匿名的用戶我們也取消其進階功能,因為我們要明確地讓用戶知道,這裏 不是一個安全存放東西的地方。你可以 <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">進一步了解 </a> 關於 為何我們這樣作,以及為何你最好能夠<a href=\"/register/\">註冊</a> 以及 <a href=\"/login/\">登錄</a>使用。",
"fm_info_root": "在此建立任何巢狀目錄夾以便於整理分類你的檔案。", "fm_backup_title": "備份連結",
"fm_info_unsorted": "包含所有你曾訪問過的檔案,其尚未被整理在 \"根目錄\" 或移到到\"垃圾筒\".", "fm_nameFile": "你想要如何來命名這個檔案呢?",
"fm_info_template": "包含所有工作檔案已存成模版,便於讓你在建立新工作檔案時套用。", "fm_error_cantPin": "內部伺服器出錯,請重新載入本頁並再試一次。",
"updated_0_fm_info_trash": "清空垃圾筒好讓 CryptDrive 多出一些空間", "fc_newfolder": "新資料夾",
"fm_info_trash": "清空垃圾筒好讓 CryptDrive 多出一些空間", "fc_rename": "重新命名",
"fm_info_allFiles": "包含在 \"根目錄\", \"未整理的\" 和 \"垃圾筒\" 裏的所有檔案。這裏你無法移動或移除檔案。", "fc_open": "打開",
"fm_info_anonymous": "你尚未登入,因此這些工作檔案可能會被刪除。 (<a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">了解原因</a>). <a href=\"/register/\">註冊</a>或<a href=\"/login/\">登入</a>以便保留它們。", "fc_open_ro": "打開 (唯讀)",
"fm_alert_backupUrl": "這個雲端硬碟的備份連結<br><strong>高度建議</strong>把自己的 IP 資訊保留成只有自己知道<br>萬一瀏覽器記憶被消除,你可以用它來接收所有的檔案。<br>任何知道此連結的人可以編輯或移除你檔案管理底下的所有檔案。<br>", "fc_delete": "刪除",
"fm_alert_anonymous": "嗨你好, 你目前正以匿名方式在使用 CryptPad , 這也沒問題,不過你的東西過一段時間沒動靜後,就會自動被刪除。 匿名的用戶我們也取消其進階功能,因為我們要明確地讓用戶知道,這裏 不是一個安全存放東西的地方。你可以 <a href=\"https://blog.cryptpad.fr/2017/05/17/You-gotta-log-in/\" target=\"_blank\">進一步了解 </a> 關於 為何我們這樣作,以及為何你最好能夠<a href=\"/register/\">註冊</a> 以及 <a href=\"/login/\">登錄</a>使用。", "fc_restore": "重置",
"fm_backup_title": "備份連結", "fc_remove": "永久刪除",
"fm_nameFile": "你想要如何來命名這個檔案呢?", "fc_empty": "清理垃圾筒",
"fm_error_cantPin": "內部伺服器出錯,請重新載入本頁並再試一次。", "fc_prop": "Properties",
"fc_newfolder": "新資料夾", "fc_sizeInKilobytes": "容量大小 (Kilobytes)",
"fc_rename": "重新命名", "fo_moveUnsortedError": "你不能移動資料夾到未整理的工作檔案清單",
"fc_open": "打開", "fo_existingNameError": "名稱已被使用,請選擇其它名稱",
"fc_open_ro": "打開 (唯讀)", "fo_moveFolderToChildError": "你不能移動資料夾到它的子資料夾底下",
"fc_delete": "刪除", "fo_unableToRestore": "無法將這個檔案重置到原始的位置。你可以試著將它移動到其它新位置。",
"fc_restore": "重置", "fo_unavailableName": "在新位置裏同名的檔案或資料夾名稱已存在,請重新命名後再試看看。",
"fc_remove": "永久刪除", "login_login": "登入",
"fc_empty": "清理垃圾筒", "login_makeAPad": "匿名地建立一個工作檔案",
"fc_prop": "Properties", "login_nologin": "瀏覽本地的工作檔案",
"fc_sizeInKilobytes": "容量大小 (Kilobytes)", "login_register": "註冊",
"fo_moveUnsortedError": "你不能移動資料夾到未整理的工作檔案清單", "logoutButton": "登出",
"fo_existingNameError": "名稱已被使用,請選擇其它名稱", "settingsButton": "設定",
"fo_moveFolderToChildError": "你不能移動資料夾到它的子資料夾底下", "login_username": "用戶名",
"fo_unableToRestore": "無法將這個檔案重置到原始的位置。你可以試著將它移動到其它新位置。", "login_password": "密碼",
"fo_unavailableName": "在新位置裏同名的檔案或資料夾名稱已存在,請重新命名後再試看看。", "login_confirm": "確認你的密碼",
"login_login": "登入", "login_remember": "記住我",
"login_makeAPad": "匿名地建立一個工作檔案", "login_hashing": "散列你的密碼中,這要花上一點時間",
"login_nologin": "瀏覽本地的工作檔案", "login_hello": "Hello {0},",
"login_register": "註冊", "login_helloNoName": "Hello,",
"logoutButton": "登出", "login_accessDrive": "取用你的磁碟",
"settingsButton": "設定", "login_orNoLogin": "或",
"login_username": "用戶名", "login_noSuchUser": "無效的用戶名或密碼,請再試一次或重新註冊",
"login_password": "密碼", "login_invalUser": "要求用戶名",
"login_confirm": "確認你的密碼", "login_invalPass": "要求密碼",
"login_remember": "記住我", "login_unhandledError": "發生了未預期的錯誤 :(",
"login_hashing": "散列你的密碼中,這要花上一點時間", "register_importRecent": "滙入檔案記錄 (建議)",
"login_hello": "Hello {0},", "register_acceptTerms": "我同意 <a href='/terms.html'>服務條款</a>",
"login_helloNoName": "Hello,", "register_passwordsDontMatch": "密碼不相符!",
"login_accessDrive": "取用你的磁碟", "register_mustAcceptTerms": "你必須同意我們的服務條款。",
"login_orNoLogin": "或", "register_mustRememberPass": "如果你忘了密碼,我們也無法為你重置。因此務必自行好好記住! 請在勾選處勾選確認。",
"login_noSuchUser": "無效的用戶名或密碼,請再試一次或重新註冊", "register_header": "歡迎來到 CryptPad",
"login_invalUser": "要求用戶名", "register_explanation": "<p>首先讓我們先了解幾件事</p><ul><li>你的密碼是你用來加密所有工作檔案的密鑰。一旦遺失它,我們也沒辦法幫你恢復你的資料。</li><li>你可以滙入近期在瀏覽器下檢視的工作檔案到你的雲端硬碟裏。</li><li>如果你使用的是公用分享電腦,你需要在完成工作後進行登出,只是關閉分頁是不夠的。</li></ul>",
"login_invalPass": "要求密碼", "register_writtenPassword": "我已記下了我的用戶名和密碼,請繼續",
"login_unhandledError": "發生了未預期的錯誤 :(", "register_cancel": "回去",
"register_importRecent": "滙入檔案記錄 (建議)", "register_warning": "零知識表示如果你遺失了密碼,我們也無法還原你的資料",
"register_acceptTerms": "我同意 <a href='/terms.html'>服務條款</a>", "register_alreadyRegistered": "這名用戶己存在了,你要登入嗎?",
"register_passwordsDontMatch": "密碼不相符!", "settings_title": "設定",
"register_mustAcceptTerms": "你必須同意我們的服務條款。", "settings_save": "儲存",
"register_mustRememberPass": "如果你忘了密碼,我們也無法為你重置。因此務必自行好好記住! 請在勾選處勾選確認。", "settings_backup": "備份",
"register_header": "歡迎來到 CryptPad", "settings_restore": "重建",
"register_explanation": "<p>首先讓我們先了解幾件事</p><ul><li>你的密碼是你用來加密所有工作檔案的密鑰。一旦遺失它,我們也沒辦法幫你恢復你的資料。</li><li>你可以滙入近期在瀏覽器下檢視的工作檔案到你的雲端硬碟裏。</li><li>如果你使用的是公用分享電腦,你需要在完成工作後進行登出,只是關閉分頁是不夠的。</li></ul>", "settings_reset": "從你的 CryptDrive 移除所有的檔案和資料夾",
"register_writtenPassword": "我已記下了我的用戶名和密碼,請繼續", "settings_resetPrompt": "這個動作會自你的雲端硬碟中移除所有工作檔案<br>確定要繼續嗎?<br>輸入 “<em>I love CryptPad</em>” 來確認。",
"register_cancel": "回去", "settings_resetDone": "你的目錄現已清空!",
"register_warning": "零知識表示如果你遺失了密碼,我們也無法還原你的資料", "settings_resetError": "不正確的認證文字,你的 CryptDrive 並未更改。",
"register_alreadyRegistered": "這名用戶己存在了,你要登入嗎?", "settings_resetTips": "使用 CryptDrive 的竅門",
"settings_title": "設定", "settings_resetTipsButton": "在 CryptDrive 下重置可用的訣竅",
"settings_save": "儲存", "settings_resetTipsDone": "所有的訣竅現在都可再次看到了。",
"settings_backupTitle": "備份或重建你所有的資料", "settings_importTitle": "滙入這個瀏覽器近期的工作檔案到我的 CryptDrive",
"settings_backup": "備份", "settings_import": "滙入",
"settings_restore": "重建", "settings_importConfirm": "確定要從這個瀏覽器滙入近期的工作檔案到你的 CryptDrive ",
"settings_resetTitle": "清除你的雲端硬碟", "settings_importDone": "滙入完成",
"settings_reset": "從你的 CryptDrive 移除所有的檔案和資料夾", "settings_userFeedbackHint1": "CryptPad 會提供一些基本的反饋到伺服器,以讓我們知道如何改善用戶體驗。",
"settings_resetPrompt": "這個動作會自你的雲端硬碟中移除所有工作檔案<br>確定要繼續嗎?<br>輸入 “<em>I love CryptPad</em>” 來確認。", "settings_userFeedbackHint2": "你的工作檔案內容絕不會被分享到伺服器",
"settings_resetDone": "你的目錄現已清空!", "settings_userFeedback": "啟用用戶反饋功能",
"settings_resetError": "不正確的認證文字,你的 CryptDrive 並未更改。", "settings_anonymous": "你尚未登入,在此瀏覽器上進行特別設定。",
"settings_resetTips": "使用 CryptDrive 的竅門", "settings_publicSigningKey": "公開金鑰簽署",
"settings_resetTipsButton": "在 CryptDrive 下重置可用的訣竅", "settings_usage": "用法",
"settings_resetTipsDone": "所有的訣竅現在都可再次看到了。", "settings_usageTitle": "查看所有置頂的工作檔案所佔的容量",
"settings_importTitle": "滙入這個瀏覽器近期的工作檔案到我的 CryptDrive", "settings_pinningNotAvailable": "工作檔案置頂功能只開放給已註冊用戶",
"settings_import": "滙入", "settings_pinningError": "有點不對勁",
"settings_importConfirm": "確定要從這個瀏覽器滙入近期的工作檔案到你的 CryptDrive ", "settings_usageAmount": "你置頂的工作檔案佔了 {0}MB",
"settings_importDone": "滙入完成", "settings_logoutEverywhereTitle": "自所有地點登出",
"settings_userFeedbackHint1": "CryptPad 會提供一些基本的反饋到伺服器,以讓我們知道如何改善用戶體驗。", "settings_logoutEverywhere": "自所有其它的網頁期間登出",
"settings_userFeedbackHint2": "你的工作檔案內容絕不會被分享到伺服器", "settings_logoutEverywhereConfirm": "你確定嗎?你將需要登入到所有用到設置。",
"settings_userFeedback": "啟用用戶反饋功能", "upload_serverError": "伺服器出錯:本次無法上傳你的檔案",
"settings_anonymous": "你尚未登入,在此瀏覽器上進行特別設定。", "upload_uploadPending": "你欲上傳檔案正在傳輸中,要取消並上傳新檔案嗎?",
"settings_publicSigningKey": "公開金鑰簽署", "upload_success": "你的檔案 ({0}) 已成功地上傳並放入到你的網路磁碟中。",
"settings_usage": "用法", "upload_notEnoughSpace": "你的 CryptDrive 無足夠空間來存放這個檔案。",
"settings_usageTitle": "查看所有置頂的工作檔案所佔的容量", "upload_tooLarge": "此檔案超過了上傳單一檔案可允許的容量上限。",
"settings_pinningNotAvailable": "工作檔案置頂功能只開放給已註冊用戶", "upload_choose": "選擇一個檔案",
"settings_pinningError": "有點不對勁", "upload_pending": "待處理",
"settings_usageAmount": "你置頂的工作檔案佔了 {0}MB", "upload_cancelled": "已取消的",
"settings_logoutEverywhereTitle": "自所有地點登出", "upload_name": "檔案名",
"settings_logoutEverywhere": "自所有其它的網頁期間登出", "upload_size": "大小",
"settings_logoutEverywhereConfirm": "你確定嗎?你將需要登入到所有用到設置。", "upload_progress": "進度",
"upload_serverError": "伺服器出錯:本次無法上傳你的檔案", "download_button": "解密 & 下載",
"upload_uploadPending": "你欲上傳檔案正在傳輸中,要取消並上傳新檔案嗎?", "main_info": "<h1>Collaborate in Confidence</h1><br> 利用共同享文件發嚮點子,透過 <strong>零知識 </strong> 科技確保隱私安全; 對任何網路服務商都要加以提防。",
"upload_success": "你的檔案 ({0}) 已成功地上傳並放入到你的網路磁碟中。", "main_richText": "富文字編輯器",
"upload_notEnoughSpace": "你的 CryptDrive 無足夠空間來存放這個檔案。", "main_code": "代碼編輯器",
"upload_tooLarge": "此檔案超過了上傳單一檔案可允許的容量上限。", "main_slide": "投影片編輯器",
"upload_choose": "選擇一個檔案", "main_poll": "調查",
"upload_pending": "待處理", "main_drive": "CryptDrive",
"upload_cancelled": "已取消的", "footer_applications": "應用程式",
"upload_name": "檔案名", "footer_contact": "聯繫",
"upload_size": "大小", "footer_aboutUs": "關於 Cryptpad",
"upload_progress": "進度", "about": "關於",
"download_button": "解密 & 下載", "privacy": "隱私",
"warn_notPinned": "這個工作檔案並不在任何人的 CryptDrive 裏,它將在 3 個月到期後刪除。 <a href='/about.html#pinning'>進一步了解...</a>", "contact": "聯繫",
"main_p2": "本專案使用 <a href=\"http://ckeditor.com/\">CKEditor</a> 視覺編輯器, <a href=\"https://codemirror.net/\">CodeMirror</a>, 以及 <a href=\"https://github.com/xwiki-contrib/chainpad\">ChainPad</a> 即時引擊。", "terms": "服務條款",
"main_howitworks_p1": "CryptPad 應用一種變體的 <a href=\"https://en.wikipedia.org/wiki/Operational_transformation\">操作型變換 Operational transformation</a> 演算法,它利用<a href=\"https://bitcoin.org/bitcoin.pdf\">Nakamoto Blockchain</a>來找到分散的共識, Nakamoto Blockchain 是一種建構當前流行的<a href=\"https://en.wikipedia.org/wiki/Bitcoin\">比特幣</a>。這套演算法可避免需要一個中央的伺服器來解析操作型變換編輯衝突,而無須處理解析衝突,伺服器並不知道哪一個檔案被編輯。", "blog": "Blog",
"main_about_p2": "若有任何問題和建議, 可以在<a href=\"https://twitter.com/cryptpad\">tweet us</a>, <a href=\"https://github.com/xwiki-labs/cryptpad/issues/\" title=\"our issue tracker\">github</a>提出問題, 或是來到 irc (<a href=\"http://webchat.freenode.net?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7\" title=\"freenode webchat\">irc.freenode.net</a>)打聲招呼, 再或者 <a href=\"mailto:research@xwiki.com\">寄封電郵給我們</a>.", "policy_title": "CryptPad 隱私政策",
"main_info": "<h1>Collaborate in Confidence</h1><br> 利用共同享文件發嚮點子,透過 <strong>零知識 </strong> 科技確保隱私安全; 對任何網路服務商都要加以提防。", "policy_whatweknow": "我們會知道哪些關於你的資料",
"main_howitworks": "它如何運作", "policy_whatweknow_p1": "作為一個網頁上的應用程式, CryptPad 可以接取 HTTP 協議所曝露的元數據。 這包括你的 IP 地址、各式其它的 HTTP 標頭,其用於識別你特定的瀏覽器。 你可以訪問 <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"what http headers is my browser sending\">WhatIsMyBrowser.com</a>這個網站,知道你的瀏覽器分享了哪些資訊。",
"main_zeroKnowledge": "零知識", "policy_whatweknow_p2": "我們使用 <a href=\"https://www.elastic.co/products/kibana\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"open source analytics platform\">Kibana</a>, 它是一個開源的流量數據分析平台, 以更了解用戶。Kibana 讓我們知道你是如何地發現 CryptPad, 是透過直接接入、攑搜尋引擊或是其它網站的介紹如 Reddit 和 Twitter。",
"main_zeroKnowledge_p": "你不必相信我們所說的<em>並不會</em> 察看你的檔案, CryptPad 革命性的零知識技術讓我們 <em>真的不能看到</em>。 進一步了解在這裏,我們如何保護用戶的 <a href=\"/privacy.html\" title='Privacy'>隱私和安全</a>。", "policy_howweuse": "我們如何利用我們知道的東西",
"main_writeItDown": "寫下它", "policy_howweuse_p1": "我們利用這些資訊評估過去成功的效果,以更佳地決定如何推廣 CryptPad。有關你地理位置的資訊讓我們知道是否該提供英語之外的語言版本支援",
"main_writeItDown_p": "偉大的專案來自不起眼的小點子。記下靈感與點子的瞬間,因為你從不會知道哪個會帶來重大突破。", "policy_howweuse_p2": "有關你的瀏覽器資訊 (是桌面還是手機操作系統) 有助於讓我們決定要優先哪些功能改善。我們開發團隊人很少,我們試著挑選盡可能地提昇更多用戶的使用體驗。",
"main_share": "分享連結, 分享工作檔案", "policy_whatwetell": "我們可以告訴別人關於你的哪些資料",
"main_share_p": "一起來發響想法點子: 在任何設備上,與朋友一起執行有效率的會議, 協作待辦清單與快速製作簡報。", "policy_whatwetell_p1": "我們不會給第三人我們所收集的資訊,除非被依法要求配合。",
"main_organize": "Get organized", "policy_links": "其它網站連結",
"main_organize_p": "利用 CryptPad 空間, 你可以保留看管重要的東西。資料夾讓你可以追踪專案和全盤了解事情的走向狀況。", "policy_links_p1": "本站含有其它網站的連結包括其它組織的産品。我們無法對這些隱私實踐或任何本站以外的內容負責。一般而言連到外站的連結會另啟新視窗以明確讓你知道已離開了CryptPad.fr.",
"tryIt": "Try it out!", "policy_ads": "廣告",
"main_richText": "富文字編輯器", "policy_ads_p1": "我們不會放置任何線上廣告,但會提供一些資助我們研究的機構與團體的網址連結",
"main_richText_p": "利用我們的即時零知識技術,集體協作地編輯富文本檔案 <a href=\"http://ckeditor.com\" target=\"_blank\">CkEditor</a> 應用程式application.", "policy_choices": "你有的選擇",
"main_code": "代碼編輯器", "policy_choices_open": "我們的代碼是開放的,你可以選擇自行在自己的機器上來架設自己的 CryptPad.",
"main_code_p": "利用我們的即時零知識技術,集體協作地編輯程式代碼 <a href=\"https://www.codemirror.net\" target=\"_blank\">CodeMirror</a> 應用程式。", "policy_choices_vpn": "如果你要使用我們架設的服務, 但不希望曝露自己的 IP 地址, 你可以利用<a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"downloads from the Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">Tor 瀏覽器套件</a>來保護隱藏 IP 地址, 或是使用 <a href=\"https://riseup.net/en/vpn\" title=\"VPNs provided by Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>。",
"main_slide": "投影片編輯器", "policy_choices_ads": "如果你只是想要封鎖我們的數據分析器, 你可以使用廣告封鎖工具如 <a hre=\"https://www.eff.org/privacybadger\" title=\"download privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.",
"main_slide_p": "使用 Markdown 語法來建立投影片,並利用瀏覽器來展示投影片。", "tos_title": "CryptPad 服務條款",
"main_poll": "調查", "tos_legal": "請不要惡意、濫用或從事非法活動。",
"main_poll_p": "規劃會議或活動,或是為問題舉行投最佳方案的投票。", "tos_availability": "希望你覺得我們的産品與服務對你有所幫助, 但我們並不能一直百分百保證它的表現穩定與可得性。請記得定期滙出你的資料。",
"main_drive": "CryptDrive", "tos_e2ee": "CryptPad 的內容可以被任何猜出或取得工作檔案分段識別碼的人讀取與修改。我們建議你使用端對端加密 (e2ee) 訊息技術來分享工作檔案連結 以及假設如果一旦連結外漏不會背上任何責任。",
"footer_applications": "應用程式", "tos_logs": "你的瀏覽器提供給伺服器的元數據,可能會因為維護本服務之效能而被收集記錄。",
"footer_contact": "聯繫", "tos_3rdparties": "除非法令要求,我們不會提供任何個人資料給第三方。",
"footer_aboutUs": "關於 Cryptpad", "header_logoTitle": "回到主頁",
"about": "關於", "driveReadmeTitle": "什麼是 CryptPad?",
"privacy": "隱私", "readme_welcome": "歡迎來到 CryptPad !",
"contact": "聯繫", "readme_p1": "歡迎來到 CryptPad, 這裏你可以獨自作個人筆記或是和別人共享協作。",
"terms": "服務條款", "readme_p2": "這個工作檔案可以讓你快速地了解如何使用 CryptPad 作筆記,有效地整理管理文件工作檔案。",
"blog": "Blog", "readme_cat1": "認識如何使用 CryptDrive",
"policy_title": "CryptPad 隱私政策", "readme_cat1_l1": "建立一個工作檔案: 在 CryptDrive 底下, 點擊 {0} 然後 {1} 這樣就可以建立一個新的工作檔案。",
"policy_whatweknow": "我們會知道哪些關於你的資料", "readme_cat1_l2": "從 CryptDrive 開啟工作檔案: 雙擊工作檔案的圖示來開啟它。",
"policy_whatweknow_p1": "作為一個網頁上的應用程式, CryptPad 可以接取 HTTP 協議所曝露的元數據。 這包括你的 IP 地址、各式其它的 HTTP 標頭,其用於識別你特定的瀏覽器。 你可以訪問 <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending\" title=\"what http headers is my browser sending\">WhatIsMyBrowser.com</a>這個網站,知道你的瀏覽器分享了哪些資訊。", "readme_cat1_l3": "分類你的工作檔案:登入之後,每一個你能接取使用的工作檔案會顯示在你雲端硬碟中的 {0} 部份。",
"policy_whatweknow_p2": "我們使用 <a href=\"https://www.elastic.co/products/kibana\" target=\"_blank\" rel=\"noopener noreferrer\" title=\"open source analytics platform\">Kibana</a>, 它是一個開源的流量數據分析平台, 以更了解用戶。Kibana 讓我們知道你是如何地發現 CryptPad, 是透過直接接入、攑搜尋引擊或是其它網站的介紹如 Reddit 和 Twitter。", "readme_cat1_l3_l1": "你可以點擊或是拉曳檔案到雲端硬碟 {0} 區,新增資料夾。",
"policy_howweuse": "我們如何利用我們知道的東西", "readme_cat1_l3_l2": "記得試著點擊圖示,以顯示更多的選項功能。",
"policy_howweuse_p1": "我們利用這些資訊評估過去成功的效果,以更佳地決定如何推廣 CryptPad。有關你地理位置的資訊讓我們知道是否該提供英語之外的語言版本支援", "readme_cat1_l4": "把舊的工作檔案放到垃圾筒:點擊或是拉曳檔案到 {0} 如同把它們拉到文件目錄夾一樣的方法。",
"policy_howweuse_p2": "有關你的瀏覽器資訊 (是桌面還是手機操作系統) 有助於讓我們決定要優先哪些功能改善。我們開發團隊人很少,我們試著挑選盡可能地提昇更多用戶的使用體驗。", "readme_cat2": "像個專業人士來編寫你的工作檔案",
"policy_whatwetell": "我們可以告訴別人關於你的哪些資料", "edit": "編輯",
"policy_whatwetell_p1": "我們不會給第三人我們所收集的資訊,除非被依法要求配合。", "view": "檢視",
"policy_links": "其它網站連結", "readme_cat2_l1": "在工作檔案下的 {0} 按鍵可讓其它的協作者接取 {1} 或是 {2} 工作檔案",
"policy_links_p1": "本站含有其它網站的連結包括其它組織的産品。我們無法對這些隱私實踐或任何本站以外的內容負責。一般而言連到外站的連結會另啟新視窗以明確讓你知道已離開了CryptPad.fr.", "readme_cat2_l2": "若要更改工作檔案的名稱,只要點擊右上的鉛筆圖示即可",
"policy_ads": "廣告", "readme_cat3": "發現其它的 CryptPad 應用",
"policy_ads_p1": "我們不會放置任何線上廣告,但會提供一些資助我們研究的機構與團體的網址連結", "readme_cat3_l1": "使用 CryptPad 代碼編輯器,你可以和其它人協作各種程式碼,如 Javascript、 markdown、 HTML 等等。",
"policy_choices": "你有的選擇", "readme_cat3_l2": "使用 CryptPad 投影片編輯功能,你可以使用 Markdown 快速製作簡報檔。",
"policy_choices_open": "我們的代碼是開放的,你可以選擇自行在自己的機器上來架設自己的 CryptPad.", "readme_cat3_l3": "利用 CryptPoll 你可以快速作個線上調查,尤其是調查每個人有空的會議時間。",
"policy_choices_vpn": "如果你要使用我們架設的服務, 但不希望曝露自己的 IP 地址, 你可以利用<a href=\"https://www.torproject.org/projects/torbrowser.html.en\" title=\"downloads from the Tor project\" target=\"_blank\" rel=\"noopener noreferrer\">Tor 瀏覽器套件</a>來保護隱藏 IP 地址, 或是使用 <a href=\"https://riseup.net/en/vpn\" title=\"VPNs provided by Riseup\" target=\"_blank\" rel=\"noopener noreferrer\">VPN</a>。", "tips": {
"policy_choices_ads": "如果你只是想要封鎖我們的數據分析器, 你可以使用廣告封鎖工具如 <a hre=\"https://www.eff.org/privacybadger\" title=\"download privacy badger\" target=\"_blank\" rel=\"noopener noreferrer\">Privacy Badger</a>.", "shortcuts": "`ctrl+b`, `ctrl+i` 和 `ctrl+u` 分別是粗體字、斜體、與加底線用法的快速鍵。",
"tos_title": "CryptPad 服務條款", "indent": "要使用數字以及符號列表, 可使用 tab 或 shift+tab 快速地增加或滅少縮排指令。",
"tos_legal": "請不要惡意、濫用或從事非法活動。", "store": "每一回你造訪一個工作檔案, 如果是登入狀態,則這些檔案會自動儲存到你的 CryptDrive.",
"tos_availability": "希望你覺得我們的産品與服務對你有所幫助, 但我們並不能一直百分百保證它的表現穩定與可得性。請記得定期滙出你的資料。", "marker": "在格式下拉選單中使用 \"marker\" 可以標注反亮文字."
"tos_e2ee": "CryptPad 的內容可以被任何猜出或取得工作檔案分段識別碼的人讀取與修改。我們建議你使用端對端加密 (e2ee) 訊息技術來分享工作檔案連結 以及假設如果一旦連結外漏不會背上任何責任。", },
"tos_logs": "你的瀏覽器提供給伺服器的元數據,可能會因為維護本服務之效能而被收集記錄。", "feedback_about": "如果你讀了這裏,也許會好奇為何當你執行某些動作時 CryptPad 會請求網頁資訊。",
"tos_3rdparties": "除非法令要求,我們不會提供任何個人資料給第三方。", "feedback_privacy": "我們注重你的隱私,同時也要讓 CryptPad 容易使用。我們利用這個檔案來了解哪一種介面設計為用戶所重視,透過它來請求特別的功能參數。",
"bottom_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Made with <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" alt=\"love\" /> in <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" alt=\"France\" /></a>", "feedback_optout": "如果欲退出客戶資料收集, 請到 <a href='/settings/'>用戶設定頁</a>, 可以找到勾選項目來啟用或關閉用戶回饋功能。"
"bottom_support": "<a href=\"http://labs.xwiki.com/\" title=\"XWiki Labs\" target=\"_blank\" rel=\"noopener noreferrer\">An <img src=\"/customize/logo-xwiki2.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/> Labs Project </a> with the support of <a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_france": "<a href=\"http://www.xwiki.com/\" target=\"_blank\" rel=\"noopener noreferrer\">With <img class=\"bottom-bar-heart\" src=\"/customize/heart.png\" alt=\"love\" /> from <img class=\"bottom-bar-fr\" src=\"/customize/fr.png\" title=\"France\" alt=\"France\"/> by <img src=\"/customize/logo-xwiki.png\" alt=\"XWiki SAS\" class=\"bottom-bar-xwiki\"/></a>",
"header_support": "<a href=\"http://ng.open-paas.org/\" title=\"OpenPaaS::ng\" target=\"_blank\" rel=\"noopener noreferrer\"> <img src=\"/customize/openpaasng.png\" alt=\"OpenPaaS-ng\" class=\"bottom-bar-openpaas\" /></a>",
"header_logoTitle": "回到主頁",
"initialState": "<p>這是&nbsp;<strong>CryptPad</strong>, 零知識即時協作編輯平台,當你輸入時一切已即存好。<br>分享這個工作檔案的網址連結給友人或是使用、 <span class=\"fa fa-share-alt\"></span> 按鈕分享<em>唯讀的連結</em>&nbsp;其只能看不能編寫。</p>",
"codeInitialState": "# CryptPad 零知識即時協作代碼編輯平台\n\n* 你所輸入的東西會予以加密,僅有知道此網頁連結者可以接取這份文件。\n* 你可以在右上角選擇欲編寫的程式語言以及樣版配色風格。",
"slideInitialState": "# CryptSlide\n1. 使用 markdown 語法來寫下你的投影片內容\n - 進一步學習 markdown 語法 [here](http://www.markdowntutorial.com/)\n2. 利用 --- 來區隔不同的投影片\n3. 點擊下方 \"Play\" 鍵來查看成果 - 你的投影片會即時更新",
"driveReadmeTitle": "什麼是 CryptPad?",
"readme_welcome": "歡迎來到 CryptPad !",
"readme_p1": "歡迎來到 CryptPad, 這裏你可以獨自作個人筆記或是和別人共享協作。",
"readme_p2": "這個工作檔案可以讓你快速地了解如何使用 CryptPad 作筆記,有效地整理管理文件工作檔案。",
"readme_cat1": "認識如何使用 CryptDrive",
"readme_cat1_l1": "建立一個工作檔案: 在 CryptDrive 底下, 點擊 {0} 然後 {1} 這樣就可以建立一個新的工作檔案。",
"readme_cat1_l2": "從 CryptDrive 開啟工作檔案: 雙擊工作檔案的圖示來開啟它。",
"readme_cat1_l3": "分類你的工作檔案:登入之後,每一個你能接取使用的工作檔案會顯示在你雲端硬碟中的 {0} 部份。",
"readme_cat1_l3_l1": "你可以點擊或是拉曳檔案到雲端硬碟 {0} 區,新增資料夾。",
"readme_cat1_l3_l2": "記得試著點擊圖示,以顯示更多的選項功能。",
"readme_cat1_l4": "把舊的工作檔案放到垃圾筒:點擊或是拉曳檔案到 {0} 如同把它們拉到文件目錄夾一樣的方法。",
"readme_cat2": "像個專業人士來編寫你的工作檔案",
"edit": "編輯",
"view": "檢視",
"readme_cat2_l1": "在工作檔案下的 {0} 按鍵可讓其它的協作者接取 {1} 或是 {2} 工作檔案",
"readme_cat2_l2": "若要更改工作檔案的名稱,只要點擊右上的鉛筆圖示即可",
"readme_cat3": "發現其它的 CryptPad 應用",
"readme_cat3_l1": "使用 CryptPad 代碼編輯器,你可以和其它人協作各種程式碼,如 Javascript、 markdown、 HTML 等等。",
"readme_cat3_l2": "使用 CryptPad 投影片編輯功能,你可以使用 Markdown 快速製作簡報檔。",
"readme_cat3_l3": "利用 CryptPoll 你可以快速作個線上調查,尤其是調查每個人有空的會議時間。",
"tips": {
"lag": "右上角的綠色圖標顯示你連線至 CryptPad 伺服器的連線品質。",
"shortcuts": "`ctrl+b`, `ctrl+i` 和 `ctrl+u` 分別是粗體字、斜體、與加底線用法的快速鍵。",
"indent": "要使用數字以及符號列表, 可使用 tab 或 shift+tab 快速地增加或滅少縮排指令。",
"title": "點擊正上方來設定工作檔案的標題。",
"store": "每一回你造訪一個工作檔案, 如果是登入狀態,則這些檔案會自動儲存到你的 CryptDrive.",
"marker": "在格式下拉選單中使用 \"marker\" 可以標注反亮文字."
},
"feedback_about": "如果你讀了這裏,也許會好奇為何當你執行某些動作時 CryptPad 會請求網頁資訊。",
"feedback_privacy": "我們注重你的隱私,同時也要讓 CryptPad 容易使用。我們利用這個檔案來了解哪一種介面設計為用戶所重視,透過它來請求特別的功能參數。",
"feedback_optout": "如果欲退出客戶資料收集, 請到 <a href='/settings/'>用戶設定頁</a>, 可以找到勾選項目來啟用或關閉用戶回饋功能。"
} }

View File

@ -5,7 +5,7 @@ define([
'/bower_components/nthen/index.js', '/bower_components/nthen/index.js',
'/common/sframe-common.js', '/common/sframe-common.js',
'/common/hyperscript.js', '/common/hyperscript.js',
'/contacts/messenger-ui.js', '/common/messenger-ui.js',
'/customize/messages.js', '/customize/messages.js',
'/common/common-interface.js', '/common/common-interface.js',

View File

@ -15,10 +15,48 @@
display: flex; display: flex;
min-height: 0; min-height: 0;
} }
#cp-app-debug-content { #cp-app-debug-content, #cp-app-debug-history {
flex: 1; flex: 1;
overflow: auto; overflow: auto;
white-space: pre-wrap; white-space: pre-wrap;
display: none;
}
#cp-app-debug-content {
margin: 50px;
flex-flow: column;
align-items: center;
justify-content: center;
.cp-app-debug-content {
flex: 1;
min-height: 0;
}
.cp-app-debug-progress, .cp-app-debug-init {
text-align: center;
}
#cp-app-debug-loading {
text-align: center;
}
.cp-app-debug-content-hrefs {
td, th {
max-width: 300px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
padding: 0 20px;
}
td:nth-child(3) {
max-width: 500px;
}
.cp-debug-ok {
background-color: #eeffee;
}
.cp-debug-nok {
background-color: #ffeeee;
}
tr:not(:first-child):hover {
background-color: rgba(0,0,0,0.1);
}
}
} }
} }

4200
www/debug/chainpad.dist.js Normal file

File diff suppressed because it is too large Load Diff

View File

@ -13,6 +13,7 @@
<div id="cp-toolbar" class="cp-toolbar-container"></div> <div id="cp-toolbar" class="cp-toolbar-container"></div>
<div id="cp-app-debug"> <div id="cp-app-debug">
<div id="cp-app-debug-content"></div> <div id="cp-app-debug-content"></div>
<div id="cp-app-debug-history"></div>
</div> </div>
</body> </body>
</html> </html>

View File

@ -7,10 +7,14 @@ define([
'/bower_components/nthen/index.js', '/bower_components/nthen/index.js',
'/common/sframe-common.js', '/common/sframe-common.js',
'/common/common-interface.js', '/common/common-interface.js',
'/common/common-hash.js',
'/common/common-constants.js',
'/common/hyperscript.js',
'/api/config', '/api/config',
'/common/common-realtime.js', '/common/common-realtime.js',
'/customize/messages.js', '/customize/messages.js',
'/customize/application_config.js', '/customize/application_config.js',
'/debug/chainpad.dist.js',
'/bower_components/secure-fabric.js/dist/fabric.min.js', '/bower_components/secure-fabric.js/dist/fabric.min.js',
@ -26,10 +30,14 @@ define([
nThen, nThen,
SFCommon, SFCommon,
UI, UI,
Hash,
Constants,
h,
ApiConfig, ApiConfig,
CommonRealtime, CommonRealtime,
Messages, Messages,
AppConfig) AppConfig,
ChainWalk)
{ {
var APP = window.APP = { var APP = window.APP = {
$: $, $: $,
@ -54,6 +62,355 @@ define([
var cpNfInner; var cpNfInner;
var metadataMgr; var metadataMgr;
var readOnly = true; var readOnly = true;
var sframeChan = common.getSframeChannel();
var getHrefsTable = function (chainpad, length, cb, progress) {
var priv = metadataMgr.getPrivateData();
var origin = priv.origin;
var edPublic = priv.edPublic;
var pads = {};
var channelByHref = {};
var isOwned = function (data) {
data = data || {};
return data && data.owners && Array.isArray(data.owners) && data.owners.indexOf(edPublic) !== -1;
};
var parseBlock = function (block, doc) {
var c = block.getContent(doc).doc;
if (!c) { return void console.error(block); }
var p;
try {
p = JSON.parse(c);
if (!p.metadata) {
p = p.drive || {};
}
} catch (e) {
console.error(e);
p = {};
}
// Get pads from the old storage key
var old = p[Constants.oldStorageKey];
var ids = p[Constants.storageKey];
var pad, parsed, chan, href;
if (old && Array.isArray(old)) {
for (var i = 0; i<old.length; i++) {
try {
pad = old[i];
href = pad.href || pad.roHref;
chan = channelByHref[href];
if (!chan && href) {
parsed = Hash.parsePadUrl(href);
chan = parsed.hashData && Util.base64ToHex(parsed.hashData.channel || '');
channelByHref[href] = chan;
}
if (chan && (!pads[chan] || pads[chan].atime < pad.atime)) {
pads[chan] = {
atime: +new Date(pad.atime),
href: href,
title: pad.title,
owned: isOwned(pad),
expired: pad.expire && pad.expire < (+new Date())
};
}
} catch (e) {}
}
}
// Get pads from the new storage key
if (ids) {
for (var id in ids) {
try {
pad = ids[id];
href = pad.href || pad.roHref;
chan = pad.channel || channelByHref[href];
if (!chan) {
if (href) {
parsed = Hash.parsePadUrl(href);
chan = (parsed.hashData && Util.base64ToHex(parsed.hashData.channel || '')) ||
(Hash.getSecrets(parsed.type, parsed.hash, pad.password) || {}).channel;
channelByHref[href] = chan;
}
}
if (chan && (!pads[chan] || pads[chan].atime < pad.atime)) {
pads[chan] = {
atime: +new Date(pad.atime),
href: href,
title: pad.title,
owned: isOwned(pad),
expired: pad.expire && pad.expire < (+new Date())
};
}
} catch (e) {}
}
}
return c;
};
var allChannels;
var deleted;
nThen(function (W) {
var nt = nThen;
// Safely get all the pads from all the states
var i = 0;
var next = function (block, doc) {
nt = nt(W(function (waitFor) {
i++;
var doc2 = parseBlock(block, doc);
progress(Math.min(i/length, 1));
var c = block.getChildren();
setTimeout(waitFor(), 1);
c.forEach(function (b) {
next(b, doc2);
});
})).nThen;
};
var root = chainpad.getRootBlock();
next(root);
}).nThen(function (waitFor) {
// Make the table
allChannels = Object.keys(pads);
sframeChan.query('Q_DRIVE_GETDELETED', {list:allChannels}, waitFor(function (err, data) {
deleted = data;
}));
}).nThen(function () {
// Current status
try {
var parsed = JSON.parse(chainpad.getUserDoc());
var drive = parsed.metadata ? parsed : parsed.drive;
var channels = Object.keys(drive[Constants.storageKey] || {}).map(function (id) {
return drive[Constants.storageKey][id].channel;
});
} catch (e) {
console.error(e);
}
// Header
var rows = [h('tr', [// TODO
h('th', '#'),
h('th', 'Title'),
h('th', 'URL'),
h('th', 'Last visited'),
h('th', 'Owned'),
h('th', 'CryptDrive status'),
h('th', 'Server status'),
])];
// Body
var body = allChannels;
body.sort(function (a, b) {
return pads[a].atime - pads[b].atime;
});
body.forEach(function (id, i) {
var p = pads[id];
var del = deleted.indexOf(id) !== -1;
var removed = channels.indexOf(id) === -1;
rows.push(h('tr', [
h('td', String(i+1)),
h('td', {
title: p.title
}, p.title),
h('td', h('a', {
href: origin+p.href,
target: '_blank'
}, p.href)),
h('td', new Date(p.atime).toLocaleString()),
h('td', p.owned ? 'Yes' : 'No'),
h('td'+(p.expired || removed ?'.cp-debug-nok':'.cp-debug-ok'),
p.expired ? 'Expired' :
(!removed ? 'Stored' : 'Deleted')),// TODO
h('td'+(del?'.cp-debug-nok':'.cp-debug-ok'), del ? 'Missing' : 'Available'),// TODO
]));
});
// Table
var t = h('table', rows);
cb(t);
});
};
var getGraph = function (chainpad, cb) {
var hashes = metadataMgr.getPrivateData().availableHashes;
var hash = hashes.editHash || hashes.viewHash;
var chan = Hash.hrefToHexChannelId('/drive/#'+hash);
var makeGraph = function () {
var out = [
chan + ' digraph {'
];
var parseBlock = function (x) {
var c = x.getChildren();
var label = x.hashOf.slice(0,8) + ' (' + x.parentCount + ' - ' + x.recvOrder + ')';
var p = x.getParent();
if (p && p.getChildren().length === 1 && c.length === 1) {
label = '...';
var gc = c;
while (gc.length === 1) {
c = gc;
gc = c[0].getChildren();
}
}
var nodeInfo = [' p' + x.hashOf + '[label="' + label + '"'];
if (x.isCheckpoint && label !== '...') { nodeInfo.push(',color=red,weight=0.5'); }
nodeInfo.push(']');
out.push(nodeInfo.join(''));
c.forEach(function (child) {
out.push(' p' + x.hashOf + ' -> p' + child.hashOf);
parseBlock(child);
});
};
parseBlock(chainpad.getRootBlock());
out.push('}');
return out.join('\n');
};
cb(makeGraph());
};
var getFullChainpad = function (history, length, cb, progress) {
var chainpad = ChainWalk.create({
userName: 'debug',
initialState: '',
logLevel: 0,
noPrune: true
});
var nt = nThen;
history.forEach(function (msg, i) {
nt = nt(function (waitFor) {
chainpad.message(msg);
progress(Math.min(i/length, 1));
setTimeout(waitFor());
}).nThen;
});
nt(function () {
cb(chainpad);
});
};
var fullHistoryCalled = false;
var getFullHistory = function () {
var priv = metadataMgr.getPrivateData();
if (fullHistoryCalled) { return; }
fullHistoryCalled = true;
// Set spinner
var content = h('div#cp-app-debug-loading', [
h('h2', 'Step 1/3'),
h('p', 'Loading history from the server...'),
h('span.fa.fa-circle-o-notch.fa-spin.fa-3x.fa-fw')
]);
$('#cp-app-debug-content').html('').append(content);
// Update progress bar
var decrypting = false;
var length = 0;
var decryptProgress = h('span', '0%');
sframeChan.on('EV_FULL_HISTORY_STATUS', function (progress) {
if (!decrypting) {
// Add the progress bar the first time
decrypting = true;
var content = h('div.cp-app-debug-progress.cp-loading-progress', [
h('h2', 'Step 2/3'),
h('p', 'Decrypting your history...'),
h('span.fa.fa-circle-o-notch.fa-spin.fa-3x.fa-fw'),
h('br'),
decryptProgress
]);
$('#cp-app-debug-content').html('').append(content);
}
length++;
decryptProgress.innerHTML = (progress*100).toFixed(2) + '%';
});
// Get full history
sframeChan.query('Q_GET_FULL_HISTORY', null, function (err, data) {
// History is ready.
// Display the graph code, and if the doc is a drive, display the button to list all the pads
// Graph
var graph = h('div.cp-app-debug-content-graph');
var seeAllButton = h('button.btn.btn-success', 'Get the list');
var hrefs = h('div.cp-app-debug-content-hrefs', [
h('h2', 'List all the pads ever stored in your CryptDrive'), // TODO
]);
var parseProgress = h('span', '0%');
var content = h('div#cp-app-debug-loading', [
h('h2', 'Step 3/3'),
h('p', 'Parsing history...'),// TODO
h('span.fa.fa-circle-o-notch.fa-spin.fa-3x.fa-fw'),
h('br'),
parseProgress
]);
$('#cp-app-debug-content').html('').append(content);
getFullChainpad(data, length, function (chainpad) {
var content = h('div.cp-app-debug-content', [
graph,
priv.debugDrive ? hrefs : ''
]);
$('#cp-app-debug-content').html('').append(content);
// Table
if (priv.debugDrive) {
var clicked = false;
$(seeAllButton).click(function () {
if (clicked) { return; }
clicked = true;
$(seeAllButton).remove();
// Make the table
var progress = h('span', '0%');
var loading = h('div', [
'Loading data...',
h('br'),
progress
]);
hrefs.append(loading);
getHrefsTable(chainpad, length, function (table) {
loading.innerHTML = '';
hrefs.append(table);
}, function (p) {
progress.innerHTML = (p*100).toFixed(2) + '%';
});
}).appendTo(hrefs);
}
// Graph
var code = h('code');
getGraph(chainpad, function (graphVal) {
code.innerHTML = graphVal;
$(graph).append(h('h2', 'Graph')); // TODO
$(graph).append(code);
});
}, function (p) {
parseProgress.innerHTML = (p*100).toFixed(2) + '%';
});
}, {timeout: 2147483647}); // Max 32-bit integer
};
var getContent = function () {
if ($('#cp-app-debug-content').is(':visible')) {
$('#cp-app-debug-content').hide();
$('#cp-app-debug-history').show();
$('#cp-app-debug-get-content').removeClass('cp-toolbar-button-active');
return;
}
$('#cp-app-debug-content').css('display', 'flex');
$('#cp-app-debug-history').hide();
$('#cp-app-debug-get-content').addClass('cp-toolbar-button-active');
};
var setInitContent = function () {
var button = h('button.btn.btn-success', 'Load history');
$(button).click(getFullHistory);
var content = h('p.cp-app-debug-init', [
'To get better debugging tools, we need to load the entire history of the document. This make take some time.', // TODO
h('br'),
button
]);
$('#cp-app-debug-content').html('').append(content);
};
setInitContent();
var config = APP.config = { var config = APP.config = {
readOnly: readOnly, readOnly: readOnly,
@ -78,7 +435,7 @@ define([
}; };
var displayDoc = function (doc) { var displayDoc = function (doc) {
$('#cp-app-debug-content').text(JSON.stringify(doc, 0, 2)); $('#cp-app-debug-history').text(JSON.stringify(doc, 0, 2));
console.log(doc); console.log(doc);
}; };
@ -114,6 +471,15 @@ define([
var $hist = common.createButton('history', true, {histConfig: histConfig}); var $hist = common.createButton('history', true, {histConfig: histConfig});
$hist.addClass('cp-hidden-if-readonly'); $hist.addClass('cp-hidden-if-readonly');
toolbar.$rightside.append($hist); toolbar.$rightside.append($hist);
var $content = common.createButton(null, true, {
icon: 'fa-question',
title: 'Get debugging graph', // TODO
name: 'graph',
id: 'cp-app-debug-get-content'
});
$content.click(getContent);
toolbar.$rightside.append($content);
}; };
config.onReady = function (info) { config.onReady = function (info) {
@ -133,7 +499,10 @@ define([
displayDoc(hjson); displayDoc(hjson);
} }
metadataMgr.updateTitle('');
initializing = false; initializing = false;
$('#cp-app-debug-history').show();
UI.removeLoadingScreen(); UI.removeLoadingScreen();
}; };

View File

@ -53,6 +53,27 @@ define([
}; };
window.addEventListener('message', onMsg); window.addEventListener('message', onMsg);
}).nThen(function (/*waitFor*/) { }).nThen(function (/*waitFor*/) {
SFCommonO.start(); var hash = localStorage[Constants.userHashKey];
var drive = hash && ('#'+hash === window.location.hash);
if (!window.location.hash) {
if (!hash) {
sessionStorage.redirectTo = '/debug/';
window.location.href = '/login/';
return;
}
drive = true;
window.location.hash = hash;
} else {
var p = Hash.parsePadUrl('/debug/'+window.location.hash);
if (p && p.hashData && p.hashData.app === 'drive') {
drive = true;
}
}
var addData = function (meta) {
meta.debugDrive = drive;
};
SFCommonO.start({
addData:addData
});
}); });
}); });

View File

@ -269,8 +269,11 @@
text-align: center; text-align: center;
padding: 0; padding: 0;
position: relative; position: relative;
display: flex;
background: lighten(@colortheme_drive-bg, 8%);
border-right: 1px solid lighten(@colortheme_drive-bg, 16%);
input { input {
background: lighten(@colortheme_drive-bg, 8%); background: transparent;
color: @colortheme_drive-color; color: @colortheme_drive-color;
.tools_placeholder-color(@colortheme_drive-color); .tools_placeholder-color(@colortheme_drive-color);
outline-width: 0px; outline-width: 0px;
@ -278,16 +281,29 @@
width: 100%; width: 100%;
//border: 1px solid #ccc; //border: 1px solid #ccc;
border: 0; border: 0;
border-right: 1px solid lighten(@colortheme_drive-bg, 16%);
//border-right: 0; //border-right: 0;
height: @variables_bar-height; height: @variables_bar-height;
padding: 0 5px; padding: 0 5px;
padding-left: 45px; padding-left: 45px;
flex: 1;
min-width: 0;
&:focus { &:focus {
outline-width: 0px; outline-width: 0px;
} }
&.cp-app-drive-search-active {
& ~ .cp-app-drive-tree-search-icon {
display: none;
}
& ~ .cp-app-drive-search-cancel {
display: inline-block;
}
}
} }
.cp-app-drive-tree-search-con { .cp-app-drive-search-cancel {
display: none;
cursor: pointer;
}
.cp-app-drive-tree-search-icon, .cp-app-drive-search-cancel {
color: @colortheme_drive-color; color: @colortheme_drive-color;
position: absolute; position: absolute;
left: 20px; // TODO align with drive categories left: 20px; // TODO align with drive categories

View File

@ -111,7 +111,7 @@ define([
var $sortDescIcon = $('<span>', {"class": "fa fa-angle-down sortdesc"}); var $sortDescIcon = $('<span>', {"class": "fa fa-angle-down sortdesc"});
var $closeIcon = $('<span>', {"class": "fa fa-window-close"}); var $closeIcon = $('<span>', {"class": "fa fa-window-close"});
//var $backupIcon = $('<span>', {"class": "fa fa-life-ring"}); //var $backupIcon = $('<span>', {"class": "fa fa-life-ring"});
var $searchIcon = $('<span>', {"class": "fa fa-search cp-app-drive-tree-search-con"}); var $searchIcon = $('<span>', {"class": "fa fa-search cp-app-drive-tree-search-icon"});
var $addIcon = $('<span>', {"class": "fa fa-plus"}); var $addIcon = $('<span>', {"class": "fa fa-plus"});
var $renamedIcon = $('<span>', {"class": "fa fa-flag"}); var $renamedIcon = $('<span>', {"class": "fa fa-flag"});
var $readonlyIcon = $('<span>', {"class": "fa " + faReadOnly}); var $readonlyIcon = $('<span>', {"class": "fa " + faReadOnly});
@ -589,6 +589,7 @@ define([
// Arrow keys to modify the selection // Arrow keys to modify the selection
$(window).keydown(function (e) { $(window).keydown(function (e) {
var $searchBar = $tree.find('#cp-app-drive-tree-search-input'); var $searchBar = $tree.find('#cp-app-drive-tree-search-input');
if (document.activeElement && document.activeElement.nodeName === 'INPUT') { return; }
if ($searchBar.is(':focus') && $searchBar.val()) { return; } if ($searchBar.is(':focus') && $searchBar.val()) { return; }
var $elements = $content.find('.cp-app-drive-element:not(.cp-app-drive-element-header)'); var $elements = $content.find('.cp-app-drive-element:not(.cp-app-drive-element-header)');
@ -2970,6 +2971,13 @@ define([
else { displayDirectory([ROOT]); } else { displayDirectory([ROOT]); }
return; return;
} }
if ($input.val()) {
if (!$input.hasClass('cp-app-drive-search-active')) {
$input.addClass('cp-app-drive-search-active');
}
} else {
$input.removeClass('cp-app-drive-search-active');
}
if (APP.mobile()) { return; } if (APP.mobile()) { return; }
search.to = window.setTimeout(function () { search.to = window.setTimeout(function () {
if (!isInSearchTmp) { search.oldLocation = currentPath.slice(); } if (!isInSearchTmp) { search.oldLocation = currentPath.slice(); }
@ -2978,8 +2986,18 @@ define([
if (!manager.comparePath(newLocation, currentPath.slice())) { displayDirectory(newLocation); } if (!manager.comparePath(newLocation, currentPath.slice())) { displayDirectory(newLocation); }
}, 500); }, 500);
}).appendTo($div); }).appendTo($div);
var cancel = h('span.fa.fa-times.cp-app-drive-search-cancel', {title:Messages.cancel});
cancel.addEventListener('click', function () {
$input.val('');
setSearchCursor(0);
if (search.oldLocation && search.oldLocation.length) { displayDirectory(search.oldLocation); }
});
$div.append(cancel);
$searchIcon.clone().appendTo($div); $searchIcon.clone().appendTo($div);
if (isInSearch) { $input.val(currentPath[1] || ''); } if (isInSearch) {
$input.val(currentPath[1] || '');
if ($input.val()) { $input.addClass('cp-app-drive-search-active'); }
}
$container.append($div); $container.append($div);
}; };

View File

@ -80,12 +80,6 @@ define([
cb(obj); cb(obj);
}); });
}); });
sframeChan.on('Q_DRIVE_GETDELETED', function (data, cb) {
Cryptpad.getDeletedPads(function (err, obj) {
if (err) { return void console.error(err); }
cb(obj);
});
});
sframeChan.on('EV_DRIVE_SET_HASH', function (hash) { sframeChan.on('EV_DRIVE_SET_HASH', function (hash) {
// Update the hash in the address bar // Update the hash in the address bar
if (!Utils.LocalStore.isLoggedIn()) { return; } if (!Utils.LocalStore.isLoggedIn()) { return; }

View File

@ -9,7 +9,7 @@
</head> </head>
<body class="cp-app-oodoc"> <body class="cp-app-oodoc">
<div id="cp-toolbar" class="cp-toolbar-container"></div> <div id="cp-toolbar" class="cp-toolbar-container"></div>
<div id="cp-app-oo-container"> <div id="cp-app-oo-editor">
<div id="cp-app-oo-placeholder"></div> <div id="cp-app-oo-placeholder"></div>
<script type="text/javascript" src="/common/onlyoffice/web-apps/apps/api/documents/api.js"></script> <script type="text/javascript" src="/common/onlyoffice/web-apps/apps/api/documents/api.js"></script>
</div> </div>

View File

@ -9,7 +9,7 @@
</head> </head>
<body class="cp-app-ooslide"> <body class="cp-app-ooslide">
<div id="cp-toolbar" class="cp-toolbar-container"></div> <div id="cp-toolbar" class="cp-toolbar-container"></div>
<div id="cp-app-oo-container"> <div id="cp-app-oo-editor">
<div id="cp-app-oo-placeholder"></div> <div id="cp-app-oo-placeholder"></div>
<script type="text/javascript" src="/common/onlyoffice/web-apps/apps/api/documents/api.js"></script> <script type="text/javascript" src="/common/onlyoffice/web-apps/apps/api/documents/api.js"></script>
</div> </div>

View File

@ -260,6 +260,10 @@ define([
'class': 'cp-app-profile-resizer' 'class': 'cp-app-profile-resizer'
}); });
if (typeof ($croppie.croppie) !== "function") {
return void cb(file);
}
var todo = function () { var todo = function () {
UI.confirm($croppie[0], function (yes) { UI.confirm($croppie[0], function (yes) {
if (!yes) { return; } if (!yes) { return; }