diff options
Diffstat (limited to 'config')
44 files changed, 1014 insertions, 186 deletions
diff --git a/config/initializers/oj.rb b/config/initializers/oj.rb new file mode 100644 index 000000000..de3e17f2e --- /dev/null +++ b/config/initializers/oj.rb @@ -0,0 +1 @@ +Oj.default_options = { mode: :compat, time_format: :ruby, use_to_json: true } diff --git a/config/initializers/rabl_init.rb b/config/initializers/rabl_init.rb deleted file mode 100644 index 132a42144..000000000 --- a/config/initializers/rabl_init.rb +++ /dev/null @@ -1,7 +0,0 @@ -Rabl.configure do |config| - config.json_engine = Oj - config.cache_all_output = false - config.cache_sources = Rails.env.production? - config.include_json_root = false - config.view_paths = [Rails.root.join('app/views')] -end diff --git a/config/locales/activerecord.de.yml b/config/locales/activerecord.de.yml index 668abe2a3..7d09856d7 100644 --- a/config/locales/activerecord.de.yml +++ b/config/locales/activerecord.de.yml @@ -10,4 +10,4 @@ de: status: attributes: reblog: - taken: of status already exists + taken: des Status existiert schon diff --git a/config/locales/activerecord.nl.yml b/config/locales/activerecord.nl.yml index eeabab34a..797209665 100644 --- a/config/locales/activerecord.nl.yml +++ b/config/locales/activerecord.nl.yml @@ -6,7 +6,7 @@ nl: account: attributes: username: - invalid: alleen letters, nummers en underscores + invalid: alleen letters, nummers en laag streepje status: attributes: reblog: diff --git a/config/locales/ar.yml b/config/locales/ar.yml index 666b8cb97..a96b353c1 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -5,25 +5,58 @@ ar: about_this: عن مثيل الخادوم هذا closed_registrations: التسجيلات في مثيل الخادوم هذا مُغلقة حاليًا. contact: للتواصل معنا + contact_unavailable: غير متوفر description_headline: ما هو %{domain}? domain_count_after: خوادم أخرى domain_count_before: متصل بـ + features: + not_a_product_title: إنك إنسان و لست سلعة + find_another_instance: إبحث عن مثيل خادوم آخر + hosted_on: ماستدون مُستضاف على %{domain} + learn_more: تعلم المزيد other_instances: خوادم أخرى source_code: الشفرة المصدرية status_count_after: منشورا status_count_before: نشروا user_count_after: مستخدم user_count_before: يستضيف + what_is_mastodon: ما هو ماستدون ؟ accounts: follow: إتبع followers: متابِعون following: يتابعون + media: الوسائط nothing_here: لا يوجد أي شيء هنا ! people_followed_by: الأشخاص الذين يتبعهم %{name} people_who_follow: الأشخاص الذين يتبعون %{name} posts: منشورات + posts_with_replies: التبويقات و الردود remote_follow: إتبع عن بعد + reserved_username: إسم المستخدم محجوز + roles: + admin: المدير unfollow: إلغاء المتابعة + admin: + account_moderation_notes: + created_at: التاريخ + delete: حذف + accounts: + are_you_sure: متأكد ؟ + by_domain: النطاق + confirm: تأكيد + display_name: عرض الإسم + domain: النطاق + edit: تعديل + email: البريد الإلكتروني + enable: تفعيل + enabled: مفعَّل + followers: المتابِعون + follows: يتابع + ip: عنوان الإيبي + media_attachments: الوسائط المرفقة + order: + title: الترتيب + profile_url: رابط الملف الشخصي application_mailer: settings: 'تغيير تفضيلات البريد الإلكتروني : %{link}' signature: إشعارات ماستدون من %{instance} @@ -156,9 +189,13 @@ ar: description_html: If you enable <strong>two-factor authentication</strong>, logging in will require you to be in possession of your phone, which will generate tokens for you to enter. disable: تعطيل enable: تفعيل + enabled: نظام المصادقة بخطوتين مُفعَّل enabled_success: تم تفعيل إثبات الهوية المزدوج بنجاح + generate_recovery_codes: توليد رموز الإسترجاع instructions_html: "<strong>Scan this QR code into Google Authenticator or a similiar TOTP app on your phone</strong>. From now on, that app will generate tokens that you will have to enter when logging in." manual_instructions: 'If you can''t scan the QR code and need to enter it manually, here is the plain-text secret:' + recovery_codes: النسخ الإحتياطي لرموز الإسترجاع + recovery_codes_regenerated: تم إعادة توليد رموز الإسترجاع الإحتياطية بنجاح setup: تنشيط wrong_code: الرمز الذي أدخلته غير صالح. تحقق من صحة الوقت على الخادم و الجهاز. users: diff --git a/config/locales/ca.yml b/config/locales/ca.yml index fa8cf49f0..357e39e31 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -49,16 +49,16 @@ ca: reserved_username: El nom d'usuari està reservat roles: admin: Admin - moderator: Mod + moderator: Moderador unfollow: Deixar de seguir admin: account_moderation_notes: account: Moderador create: Crear created_at: Data - created_msg: La nota de moderació s'ha creat correctament. + created_msg: La nota de moderació s'ha creat correctament! delete: Suprimeix - destroyed_msg: S'ha destruït la nota de moderació. + destroyed_msg: S'ha destruït la nota de moderació! accounts: are_you_sure: Estàs segur? by_domain: Domini @@ -133,6 +133,32 @@ ca: unsubscribe: Donar-se de baixa username: Nom d'usuari web: Web + action_logs: + actions: + confirm_user: "%{name} ha confirmat l'adreça de correu electrònic de l'usuari %{target}" + create_custom_emoji: "%{name} ha penjat un nou emoji %{target}" + create_domain_block: "%{name} ha bloquejat el domini %{target}" + create_email_domain_block: "%{name} ha afegit a la llista negra el domini del correu electrònic %{target}" + demote_user: "%{name} ha degradat l'usuari %{target}" + destroy_domain_block: "%{name} ha desbloquejat el domini %{target}" + destroy_email_domain_block: "%{name} ha afegit a la llista negra el domini de correu electrònic %{target}" + destroy_status: "%{name} estat eliminat per %{target}" + disable_2fa_user: "%{name} ha desactivat el requisit de dos factors per a l'usuari %{target}" + disable_custom_emoji: "%{name} ha desactivat l'emoji %{target}" + disable_user: "%{name} ha desactivat l'accés per a l'usuari %{target}" + enable_custom_emoji: "%{name} ha activat l'emoji %{target}" + enable_user: "%{name} ha activat l'accés per a l'usuari %{target}" + memorialize_account: "%{name} ha convertit el compte %{target} en una pàgina de memòria" + promote_user: "%{name} ha promogut l'usuari %{target}" + reset_password_user: "%{name} restablirà la contrasenya de l'usuari %{target}" + resolve_report: "%{name} ha descartat l'informe %{target}" + silence_account: "%{name} ha silenciat el compte de %{target}" + suspend_account: "%{name} ha suspès el compte de %{target}" + unsilence_account: "%{name} ha silenciat el compte de %{target}" + unsuspend_account: "%{name} ha llevat la suspensió del compte de %{target}" + update_custom_emoji: "%{name} ha actualizat l'emoji %{target}" + update_status: "%{name} estat actualizat per %{target}" + title: Registre d'auditoria custom_emojis: copied_msg: S'ha creat correctament la còpia local del emoji copy: Copia @@ -155,7 +181,7 @@ ca: title: Emojis personatlitzats unlisted: Sense classificar update_failed_msg: No s'ha pogut actualitzar aquest emoji - updated_msg: Emoji s'ha actualitzat correctament. + updated_msg: Emoji s'ha actualitzat correctament! upload: Carrega domain_blocks: add_new: Afegeix @@ -164,9 +190,9 @@ ca: domain: Domini new: create: Crea un bloqueig - hint: El bloqueig de domini no impedirà la creació de nous comptes en la base de dades, però s´aplicaran mètodes de moderació específics sobre aquests comptes + hint: El bloqueig de domini no impedirà la creació de nous comptes en la base de dades, però s´aplicaran de manera retroactiva mètodes de moderació específics sobre aquests comptes. severity: - desc_html: "<strong>Silenci</strong> farà les publicacions del compte invisibles a tothom que no l'estigui seguint. La suspencsió eliminarà tots els continguts, multimèdia i les dades del perfil del compte." + desc_html: "<strong>Silenci</strong> farà les publicacions del compte invisibles a tothom que no l'estigui seguint. <strong>La suspensió</strong> eliminarà tots els continguts, multimèdia i les dades del perfil del compte. Usa <strong>Cap</strong> si només vols rebutjar el fitxers multimèdia." noop: Cap silence: Silenci suspend: Suspensió @@ -205,6 +231,13 @@ ca: reset: Restablir search: Cerca title: Instàncies conegudes + invites: + filter: + all: Tot + available: Disponible + expired: Caducat + title: Filtre + title: Convida reports: action_taken_by: Mesures adoptades per are_you_sure: Estàs segur? @@ -243,6 +276,9 @@ ca: deletion: desc_html: Permet a qualsevol esborrar el seu compte title: Obre la supressió del compte + min_invite_role: + disabled: Ningú + title: Permet les invitacions de open: desc_html: Permet que qualsevol pugui crear un compte title: Registre obert @@ -250,7 +286,7 @@ ca: desc_html: Mostra una insígnia de personal en una pàgina d'usuari title: Mostra insígnia de personal site_description: - desc_html: Es mostra com un paràgraf a la pàgina principal i s'utilitza com una etiqueta meta.<br>Pots utilitzar etiquetes HTML, en particular <code><a></code> i <code><em></code>. + desc_html: Paràgraf introductori a la pàgina principal i en etiquetes meta.<br>Pots utilitzar etiquetes HTML, en particular <code><a></code> i <code><em></code>. title: Descripció del lloc site_description_extended: desc_html: Un bon lloc per al codi de conducta, regles, directrius i altres coses que distingeixen la vostra instància. Pots utilitzar etiquetes HTML @@ -282,7 +318,7 @@ ca: title: Estats del compte with_media: Amb contingut multimèdia subscriptions: - callback_url: Callback URL + callback_url: URL de retorn confirmed: Confirmat expires_in: Expira en last_delivery: Últim lliurament @@ -316,6 +352,8 @@ ca: invalid_reset_password_token: L'enllaç de restabliment de la contrasenya no és vàlid o ha caducat. Torna-ho a provar.. login: Inicia sessió logout: Tanca sessió + migrate_account: Mou a un compte diferent + migrate_account_html: Si vols redirigir aquest compte a un altre diferent, el pots <a href="%{path}">configurar aquí</a>. register: Registra't resend_confirmation: Torna a enviar el correu de confirmació reset_password: Restableix la contrasenya @@ -361,8 +399,8 @@ ca: title: La verificació de seguretat ha fallat '429': Estrangulat '500': - content: We're sorry, but something went wrong on our end. - title: This page is not correct + content: Ho sentim, però alguna cosa ha fallat a la nostra banda. + title: Aquesta pàgina no es correcte noscript_html: Per utilitzar Mastodon si us plau activa JavaScript. També podeu provar una de les <a href="https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md"> aplicacions natives</a> per Mastodon per a la vostra plataforma. exports: blocks: Persones que has bloquejat @@ -372,7 +410,7 @@ ca: storage: Emmagatzematge followers: domain: Domini - explanation_html: Si desitges garantir la privacitat de les teves publicacions, has de ser conscient de qui t'està seguint. <strong> Les publicacions privades es lliuren a totes les instàncies on tens seguidors </ strong>. És possible que vulguis revisar-los i eliminar seguidors si no confies en que la teva privacitat sigui respectada pel personal o el programari d'aquests casos + explanation_html: Si desitges garantir la privacitat de les teves publicacions, has de ser conscient de qui t'està seguint. <strong> Les publicacions privades es lliuren a totes les instàncies on tens seguidors </ strong>. És possible que vulguis revisar-los i eliminar seguidors si no confies en que la teva privacitat sigui respectada pel personal o el programari d'aquestes instàncies. followers_count: Nombre de seguidors lock_link: Bloca el teu compte purge: Elimina dels seguidors @@ -398,19 +436,46 @@ ca: muting: Llista d'apagats upload: Carregar in_memoriam_html: En Memòria. + invites: + delete: Desactivar + expired: Caducat + expires_in: + '1800': 30 minuts + '21600': 6 hores + '3600': 1 hora + '43200': 12 hores + '86400': 1 dia + expires_in_prompt: Mai + generate: Genera + max_uses: + one: 1 ús + other: "%{count} usos" + max_uses_prompt: Sense limit + prompt: Genera i comparteix enllaços amb altres persones per donar accés a aquesta instància + table: + expires_at: Caduca + uses: Usos + title: Convida persones landing_strip_html: "<strong>%{name}</strong> és un usuari/a de %{link_to_root_path}. Pots seguir-lo/la o interactuar amb ell/a si tens un compte a qualsevol node del fediverse." landing_strip_signup_html: Si no en tens, pots <a href="%{sign_up_path}">registrar-te aquí</a>. media_attachments: validations: images_and_video: No es pot adjuntar un vídeo a una publicació que ja contingui imatges too_many: No es poden adjuntar més de 4 fitxers + migrations: + acct: usuari@domini del nou compte + currently_redirecting: 'El teu perfil està configurat com a redirecció a:' + proceed: Desa + updated_msg: La configuració de la migració del compte s'ha actualitzat correctament! + moderation: + title: Moderació notification_mailer: digest: body: 'Un resum del que et vas perdre en %{instance} desde la darrera visita el %{since}:' mention: "%{name} t'ha mencionat en:" new_followers_summary: - one: Visca!. Algú més t´ha començat a seguir - other: Genial!. Et segueixen %{count} persones més + one: Visca!. Algú més t´ha començat a seguir! + other: Genial!. Et segueixen %{count} persones més! subject: one: "1 notificació nova des de la darrera visita \U0001F418" other: "%{count} notificacions noves des de la darrera visita \U0001F418" @@ -427,7 +492,7 @@ ca: body: "%{name} t'ha mencionat en:" subject: "%{name} t'ha mencionat" reblog: - body: "%{name} ha retootejat el teu estat" + body: "%{name} ha impulsat el teu estat:" subject: "%{name} ha retootejat el teu estat" number: human: @@ -465,7 +530,7 @@ ca: title: "%{name} t'ha retootejat" remote_follow: acct: Escriu l'usuari@domini de la persona que vols seguir - missing_resource: No s'ha pogut trobar la URL de redirecció necessaria per al compte. + missing_resource: No s'ha pogut trobar la URL de redirecció necessaria per al compte proceed: Comença a seguir prompt: 'Seguiràs a:' sessions: @@ -516,6 +581,7 @@ ca: export: Exportar informació followers: Seguidors autoritzats import: Importar + migrate: Migració del compte notifications: Notificacions preferences: Preferències settings: Configuració @@ -612,6 +678,8 @@ ca: <p>Originalment adaptat a la <a href="https://github.com/discourse/discourse">política de privadesa del Discurs</a>.</p> title: "%{instance} Condicions del servei i política de privadesa" + themes: + default: Mastodont time: formats: default: "%b %d, %Y, %H:%M" @@ -628,7 +696,7 @@ ca: manual_instructions: 'Si no pots escanejar el codi QR code i necessites introduir-lo manualment, aquí tens el secret en text pla:' recovery_codes: Codis de recuperació de còpia de seguretat recovery_codes_regenerated: Codis de recuperació regenerats amb èxit - recovery_instructions_html: Si mai perds l'accéss al telèfon pots utilitzar un dels codis de recuperació a continuació per a recuperar l'accés al teu compte. Cal mantenir els codis de recuperació en lloc segur, per exemple imprimint-los i guardar-los amb altres documents importants. + recovery_instructions_html: Si mai perds l'accéss al teu telèfon pots utilitzar un dels codis de recuperació a continuació per a recuperar l'accés al teu compte. <strong>Cal mantenir els codis de recuperació en lloc segur</strong>. Per exemple, imprimint-los i guardar-los amb altres documents importants. setup: Establir wrong_code: El codi introduït no és vàlid! És correcta l'hora del servidor i del dispositiu? users: diff --git a/config/locales/de.yml b/config/locales/de.yml index db96f7de7..470395767 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -39,6 +39,7 @@ de: followers: Folgende following: Folgt media: Medien + moved_html: "%{name} ist auf %{new_profile_link} umgezogen:" nothing_here: Hier gibt es nichts! people_followed_by: Profile, denen %{name} folgt people_who_follow: Profile, die %{name} folgen @@ -48,6 +49,7 @@ de: reserved_username: Dieser Profilname ist belegt roles: admin: Admin + moderator: Mod unfollow: Entfolgen admin: account_moderation_notes: @@ -59,15 +61,21 @@ de: destroyed_msg: Moderationsnotiz erfolgreich gelöscht! accounts: are_you_sure: Bist du sicher? + by_domain: Domain confirm: Bestätigen confirmed: Bestätigt + demote: Degradieren + disable: Ausschalten disable_two_factor_authentication: 2FA abschalten + disabled: Ausgeschaltet display_name: Anzeigename domain: Domain edit: Bearbeiten email: E-Mail + enable: Freischalten + enabled: Freigegeben feed_url: Feed-URL - followers: Folgende + followers: Folger followers_url: Followers URL follows: Folgt inbox_url: Inbox URL @@ -77,7 +85,9 @@ de: local: Lokal remote: Entfernt title: Ort + login_status: Loginstatus media_attachments: Medienanhänge + memorialize: In Gedenkmal verwandeln moderation: all: Alle silenced: Stummgeschaltet @@ -94,6 +104,7 @@ de: outbox_url: Outbox URL perform_full_suspension: Vollständige Sperre durchführen profile_url: Profil-URL + promote: Befördern protocol: Protokoll public: Öffentlich push_subscription_expires: PuSH-Abonnement läuft aus @@ -101,6 +112,11 @@ de: reset: Zurücksetzen reset_password: Passwort zurücksetzen resubscribe: Wieder abonnieren + role: Berechtigungen + roles: + admin: Administrator + moderator: Moderator + user: Nutzer salmon_url: Salmon-URL search: Suche shared_inbox_url: Shared Inbox URL @@ -117,6 +133,29 @@ de: unsubscribe: Abbestellen username: Profilname web: Web + action_logs: + actions: + confirm_user: "%{name} hat die E-Mail-Adresse von %{target} bestätigt" + create_custom_emoji: "%{name} hat neues Emoji %{target} hochgeladen" + create_domain_block: "%{name} hat die Domain %{target} blockiert" + create_email_domain_block: "%{name} hat die E-Mail-Domain %{target} geblacklistet" + demote_user: "%{name} stufte Benutzer %{target} herunter" + destroy_domain_block: "%{name} hat die Domain %{target} entblockt" + destroy_email_domain_block: "%{name} hat die E-Mail-Domain %{target} gewhitelistet" + destroy_status: "%{name} hat Status von %{target} entfernt" + disable_custom_emoji: "%{name} hat Emoji %{target} deaktiviert" + enable_custom_emoji: "%{name} hat das %{target} Emoji aktiviert" + enable_user: "%{name} hat die Anmeldung für den Benutzer %{target} aktiviert" + memorialize_account: "%{name} hat %{target}s Profil in eine Gedenkseite umgewandelt" + reset_password_user: "%{name} hat das Passwort für den Benutzer %{target} zurückgesetzt" + resolve_report: "%{name} hat die Meldung %{target} abgelehnt" + silence_account: "%{name} hat %{target}s Account stummgeschaltet" + suspend_account: "%{name} hat %{target}s Account gesperrt" + unsilence_account: "%{name} hat die Stummschaltung von %{target}s Account aufgehoben" + unsuspend_account: "%{name} hat die Sperrung von %{target}s Account aufgehoben" + update_custom_emoji: "%{name} hat das %{target} Emoji aktualisiert" + update_status: "%{name} hat den Status von %{target} aktualisiert" + title: Überprüfungsprotokoll custom_emojis: copied_msg: Eine lokale Kopie des Emojis wurde erstellt copy: Kopieren diff --git a/config/locales/devise.ar.yml b/config/locales/devise.ar.yml index 169221352..4fd19244d 100644 --- a/config/locales/devise.ar.yml +++ b/config/locales/devise.ar.yml @@ -1,9 +1,14 @@ --- ar: devise: + confirmations: + confirmed: تم التحقق من عنوان بريدك الإلكتروني بنجاح. failure: + already_authenticated: لقد تم تسجيل دخولك من قبل. inactive: لم يتم تنشيط حسابك بعد. + last_attempt: بإمكانك إعادة المحاولة مرة واحدة قبل أن يتم قفل حسابك. locked: إن حسابك مقفل. + unconfirmed: يجب عليك تأكيد عنوان بريدك الإلكتروني قبل المواصلة. mailer: password_change: subject: 'ماستدون : تم تغيير كلمة المرور' @@ -15,6 +20,7 @@ ar: updated: تم تغيير كلمة المرور بنجاح. أنت مسجل الآن. updated_not_active: تم تغيير كلمة المرور بنجاح. registrations: + destroyed: إلى اللقاء ! لقد تم إلغاء حسابك. نتمنى أن نراك مجددا. signed_up: أهلا وسهلا ! تم تسجيل دخولك بنجاح. updated: تم تحديث حسابك بنجاح. sessions: diff --git a/config/locales/devise.he.yml b/config/locales/devise.he.yml index ddb688625..4a2811b1f 100644 --- a/config/locales/devise.he.yml +++ b/config/locales/devise.he.yml @@ -51,9 +51,9 @@ he: unlocked: נעילת חשבונך בוטלה בהצלחה. נא להכנס לחשבון על מנת להמשיך. errors: messages: - already_confirmed: כבר אושר. נא לנסות להכנס לחשבון. - confirmation_period_expired: האישור צריך להתקבל תוך %{period}, נא לבקש חדש. - expired: פג תוקפו. נא לבקש חדש. + already_confirmed: כבר אושר. נא לנסות להכנס לחשבון + confirmation_period_expired: האישור צריך להתקבל תוך %{period}, נא לבקש חדש + expired: פג תוקפו. נא לבקש חדש not_found: לא נמצא not_locked: לא היה נעול not_saved: diff --git a/config/locales/devise.nl.yml b/config/locales/devise.nl.yml index ff79d036e..8c2c7b6a1 100644 --- a/config/locales/devise.nl.yml +++ b/config/locales/devise.nl.yml @@ -35,7 +35,7 @@ nl: updated: Jouw wachtwoord is gewijzigd. Je bent nu ingelogd. updated_not_active: Jouw wachtwoord is gewijzigd. registrations: - destroyed: Jouw account is verwijderd. Wellicht tot ziens! + destroyed: Jouw account is succesvol verwijderd. Wellicht tot ziens. signed_up: Je bent geregistreerd. signed_up_but_inactive: Je bent geregistreerd. Je kon alleen niet automatisch ingelogd worden omdat jouw account nog niet geactiveerd is. signed_up_but_locked: Je bent ingeschreven. Je kon alleen niet automatisch ingelogd worden omdat jouw account is opgeschort. @@ -43,6 +43,7 @@ nl: update_needs_confirmation: Je hebt je e-mailadres succesvol gewijzigd, maar we moeten je nieuwe mailadres nog bevestigen. Controleer jouw e-mail en klik op de link in de mail om jouw e-mailadres te bevestigen. Kijk tussen je spam wanneer niks werd ontvangen. updated: Jouw accountgegevens zijn opgeslagen. sessions: + already_signed_out: Succesvol uitgelogd. signed_in: Je bent succesvol ingelogd. signed_out: Je bent succesvol uitgelogd. unlocks: diff --git a/config/locales/doorkeeper.ar.yml b/config/locales/doorkeeper.ar.yml index 7980e107a..1925d5a65 100644 --- a/config/locales/doorkeeper.ar.yml +++ b/config/locales/doorkeeper.ar.yml @@ -30,7 +30,7 @@ ar: error: عفوا ! تحقق من خُلوّ الاستمارة من الأخطاء من فضلك help: native_redirect_uri: إستخدم %{native_redirect_uri} للاختبار و التجريب محليا - redirect_uri: إستخدم خطا واحدا لكل رابط. + redirect_uri: إستخدم خطا واحدا لكل رابط scopes: Separate scopes with spaces. Leave blank to use the default scopes. index: callback_url: رابط رد النداء @@ -54,10 +54,10 @@ ar: title: حدث هناك خطأ new: able_to: يُخوَّل لهذا التطبيق القيام بـ - prompt: طلبَ تطبيق %{client_name} تصريحا لاستعمال حسابك. + prompt: طلبَ تطبيق %{client_name} تصريحا لاستعمال حسابك title: إذن بالتصريح show: - title: Copy this authorization code and paste it to the application. + title: قم بنسخ رمز المصادقة و إلصاقه على التطبيق. authorized_applications: buttons: revoke: إبطال التصريح diff --git a/config/locales/doorkeeper.ca.yml b/config/locales/doorkeeper.ca.yml index c2d2b79b9..c1748d05b 100644 --- a/config/locales/doorkeeper.ca.yml +++ b/config/locales/doorkeeper.ca.yml @@ -3,8 +3,10 @@ ca: activerecord: attributes: doorkeeper/application: - name: Nom + name: Nom de l'aplicació redirect_uri: URI per a redirecció + scopes: Àmbits + website: Lloc web de l'aplicació errors: models: doorkeeper/application: @@ -33,9 +35,13 @@ ca: redirect_uri: Utilitza una línia per URI scopes: Separa els àmbits amb espais. Deixa-ho en blanc per a utilitzar els àmbits per defecte. index: - callback_url: Callback URL + application: Aplicació + callback_url: URL de retorn + delete: Suprimeix name: Nom new: Aplicació nova + scopes: Àmbits + show: Mostra title: Les teves aplicacions new: title: Aplicació nova @@ -67,6 +73,7 @@ ca: application: Aplicació created_at: Creat el date_format: "%A-%m-%d %H:%M:%S" + scopes: Àmbits title: Les teves aplicacions autoritzades errors: messages: @@ -76,12 +83,12 @@ ca: invalid_grant: La concessió d'autorizació oferida és invàlida, ha vençut, s'ha revocat, no coincideix amb l'URI de redirecció utilizada en la petició d'autorizació, o fou emesa per a un altre client. invalid_redirect_uri: L'URI de redirecció inclòs no és vàlid. invalid_request: En la petició manca un paràmetre necessari o inclou un valor de paràmetre no suportat o te un altre tipus de format incorrecte. - invalid_resource_owner: Les credencials del propietari del recurso proporcionat no son vàlides, o el propietari del recurs no pot ser trobat. + invalid_resource_owner: Les credencials del propietari del recurs proporcionat no son vàlides, o el propietari del recurs no pot ser trobat invalid_scope: L'àmbit demanat és invàlid, desconegut o erroni. invalid_token: - expired: L'identificador d'accés ha caducat. - revoked: L'identificador d'accés fou revocat. - unknown: L'identificador d'accés és invàlid. + expired: L'identificador d'accés ha caducat + revoked: L'identificador d'accés fou revocat + unknown: L'identificador d'accés és invàlid resource_owner_authenticator_not_configured: El propietari del recurs ha fallat perquè Doorkeeper.configure.resource_owner_authenticator està sense configurar. server_error: El servidor de l'autorizació ha trobat unca condició inesperada que ha impedit complir la sol·licitud. temporarily_unavailable: El servidor de l'autorizació és actualment incapaç de gestionar la petició degut a una sobrecàrrega temporal o una tasca de manteniment del servidor. diff --git a/config/locales/doorkeeper.es.yml b/config/locales/doorkeeper.es.yml index ca6e620d8..976fae82c 100644 --- a/config/locales/doorkeeper.es.yml +++ b/config/locales/doorkeeper.es.yml @@ -36,7 +36,7 @@ es: scopes: Separe los ámbitos con espacios. Déjelo en blanco para utilizar los ámbitos por defecto. index: application: Aplicación - callback_url: Callback URL + callback_url: URL de callback delete: Eliminar name: Nombre new: Nueva aplicación @@ -48,7 +48,7 @@ es: show: actions: Acciones application_id: Id de la aplicación - callback_urls: Callback URLs + callback_urls: URLs de callback scopes: Ámbitos secret: Secreto title: 'Aplicación: %{name}' @@ -63,7 +63,7 @@ es: prompt: La aplicación %{client_name} solicita tener acceso a su cuenta title: Se requiere autorización show: - title: Copy this authorization code and paste it to the application. + title: Copia este código de autorización y pégalo en la aplicación. authorized_applications: buttons: revoke: Revocar @@ -83,12 +83,12 @@ es: invalid_grant: La concesión de autorización ofrecida es inválida, venció, se revocó, no coincide con la URI de redirección utilizada en la petición de autorización, o fue emitida para otro cliente. invalid_redirect_uri: La URI de redirección incluida no es válida. invalid_request: En la petición falta un parámetro necesario o incluye un valor de parámetro no soportado o tiene otro tipo de formato incorrecto. - invalid_resource_owner: Las credenciales del propietario del recurso proporcionado no son válidas, o el propietario del recurso no puede ser encontrado. + invalid_resource_owner: Las credenciales proporcionadas del propietario del recurso no son válidas, o el propietario del recurso no puede ser encontrado invalid_scope: El ámbito pedido es inválido, desconocido o erróneo. invalid_token: - expired: El identificador de acceso finalizó. - revoked: El identificador de acceso fue revocado. - unknown: El identificador de acceso es inválido. + expired: El autentificador de acceso expiró + revoked: El autentificador de acceso fue revocado + unknown: El autentificador de acceso es inválido resource_owner_authenticator_not_configured: El propietario del recurso falló debido a que Doorkeeper.configure.resource_owner_authenticator está sin configurar. server_error: El servidor de la autorización entontró una condición inesperada que le impidió cumplir con la solicitud. temporarily_unavailable: El servidor de la autorización es actualmente incapaz de manejar la petición debido a una sobrecarga temporal o un trabajo de mantenimiento del servidor. diff --git a/config/locales/doorkeeper.fr.yml b/config/locales/doorkeeper.fr.yml index 1dcc0da18..a6b58156a 100644 --- a/config/locales/doorkeeper.fr.yml +++ b/config/locales/doorkeeper.fr.yml @@ -6,6 +6,7 @@ fr: name: Nom redirect_uri: L’URL de redirection scope: Portée + scopes: Étendue website: Site web de l'application errors: models: @@ -35,9 +36,13 @@ fr: redirect_uri: Utiliser une ligne par URL scopes: Séparer les portées avec des espaces. Laisser vide pour utiliser les portées par défaut. index: + application: Application callback_url: URL de retour d’appel + delete: Effacer name: Nom new: Nouvelle application + scopes: Scopes + show: Voir title: Vos applications new: title: Nouvelle application diff --git a/config/locales/doorkeeper.he.yml b/config/locales/doorkeeper.he.yml index 78e72a56f..d797b0ac9 100644 --- a/config/locales/doorkeeper.he.yml +++ b/config/locales/doorkeeper.he.yml @@ -5,6 +5,8 @@ he: doorkeeper/application: name: שם redirect_uri: קישורית הפניה + scopes: תחומים + website: אתר יישום errors: models: doorkeeper/application: @@ -33,16 +35,20 @@ he: redirect_uri: שימוש בשורה אחת לכל קישורית scopes: יש להפריד תחומים בעזרת רווחים. נה להשאיר ריק על מנת להשתמש בתחום ברירת המחדל. index: - callback_url: Callback URL + application: יישום + callback_url: כתובת גישה חוזרת (Callback URL) + delete: למחוק name: שם new: ישום חדש + scopes: תחומים + show: להציג title: ישומך new: title: ישום חדש show: actions: פעולות application_id: זהות ישום - callback_urls: Callback URLs + callback_urls: כתובות לקריאה חוזרת (Callback URLs) scopes: תחומים secret: סוד title: 'ישום: %{name}' @@ -57,7 +63,7 @@ he: prompt: ישום %{client_name} מבקש גישה לחשבונך title: נדרשת הרשאה show: - title: Copy this authorization code and paste it to the application. + title: יש להעתיק את קוד ההרשאה הזה ולהדביקו ביישום שביקש אותו. authorized_applications: buttons: revoke: ביטול @@ -77,7 +83,7 @@ he: invalid_grant: חוזה ההרשאה המצורף אינו חוקי, אינו תקף, מבוטל, או שאינו מתאים לקישורית ההפניה שבשימוש על ידי בקשת ההרשאה, או שהופק על ידי לקוח אחר. invalid_redirect_uri: קישורית ההפניה המצורפת אינה חוקית. invalid_request: הבקשה חסרה פרמטר נדרש, מכילה פרמטר עם ערך שאיננו נתמך, או שתצורתה שגויה. - invalid_resource_owner: הרשאות בעלי המשאב שהוזנו אינן חוקיות, או שלא ניתן למצוא את בעלי המשאב. + invalid_resource_owner: הרשאות בעלי המשאב שהוזנו אינן חוקיות, או שלא ניתן למצוא את בעלי המשאב invalid_scope: התחום המבוקש אינו חוקי, אינו ידוע, או שתצורותו שגויה. invalid_token: expired: פג תוקף אסימון הגישה @@ -104,7 +110,7 @@ he: admin: nav: applications: ישומים - oauth2_provider: OAuth2 Provider + oauth2_provider: ספק OAuth2 application: title: נדרשת הרשאת OAuth scopes: diff --git a/config/locales/doorkeeper.nl.yml b/config/locales/doorkeeper.nl.yml index f97aa8111..3dd0a7d26 100644 --- a/config/locales/doorkeeper.nl.yml +++ b/config/locales/doorkeeper.nl.yml @@ -32,7 +32,7 @@ nl: error: Oops! Controleer het formulier op fouten help: native_redirect_uri: Gebruik %{native_redirect_uri} voor lokale tests - redirect_uri: 'Gebruik één regel per URI. ' + redirect_uri: Gebruik één regel per URI scopes: Toestemmingen met spaties van elkaar scheiden. Laat leeg om de standaardtoestemmingen te gebruiken. index: application: Toepassing @@ -60,10 +60,10 @@ nl: title: Er is een fout opgetreden new: able_to: Deze toepassing zal in staat zijn om - prompt: "%{client_name} autoriseren om uw account te gebruiken?" + prompt: "%{client_name} autoriseren om je account te gebruiken" title: Autorisatie vereist show: - title: Copy this authorization code and paste it to the application. + title: Kopieer deze autorisatiecode en plak het in de applicatie. authorized_applications: buttons: revoke: Intrekken @@ -73,6 +73,7 @@ nl: application: Toepassing created_at: Aangemaakt op date_format: "%d-%m-%Y %H:%M:%S" + scopes: Toestemmingen title: Jouw geautoriseerde toepassingen errors: messages: @@ -82,7 +83,7 @@ nl: invalid_grant: De verstrekte autorisatie is ongeldig, verlopen, ingetrokken, komt niet overeen met de redirect-URI die is opgegeven of werd uitgegeven aan een andere client. invalid_redirect_uri: De opgegeven redirect-URI is ongeldig. invalid_request: Het verzoek mist een vereiste parameter, bevat een niet ondersteunde parameterwaarde of is anderszins onjuist. - invalid_resource_owner: De verstrekte resource-eigenaargegevens zijn ogeldig of de resource-eigenaar kan niet worden gevonden. + invalid_resource_owner: De verstrekte resource-eigenaargegevens zijn ongeldig of de resource-eigenaar kan niet worden gevonden invalid_scope: De opgevraagde scope is ongeldig, onbekend of onjuist. invalid_token: expired: Het toegangssleutel is verlopen @@ -92,8 +93,8 @@ nl: server_error: De autorisatieserver is is een onverwachte situatie tegengekomen die het verzoek verhinderde. temporarily_unavailable: De autorisatieserver is momenteel niet in staat het verzoek te behandelen als gevolg van een tijdelijke overbelasting of onderhoud aan de server. unauthorized_client: De client is niet bevoegd om dit verzoek op deze manier uit te voeren. - unsupported_grant_type: Het type autorisatie wordt niet door de autorisatieserver ondersteund - unsupported_response_type: De autorisatieserver ondersteund dit antwoordtype niet + unsupported_grant_type: Het type autorisatie wordt niet door de autorisatieserver ondersteund. + unsupported_response_type: De autorisatieserver ondersteund dit antwoordtype niet. flash: applications: create: diff --git a/config/locales/doorkeeper.pt-BR.yml b/config/locales/doorkeeper.pt-BR.yml index 53cadec38..f3da6fcd1 100644 --- a/config/locales/doorkeeper.pt-BR.yml +++ b/config/locales/doorkeeper.pt-BR.yml @@ -51,7 +51,7 @@ pt-BR: callback_urls: URLs de retorno scopes: Autorizações secret: Segredo do cliente - title: 'Application: %{name}' + title: 'Aplicativo: %{name}' authorizations: buttons: authorize: Autorizar @@ -63,7 +63,7 @@ pt-BR: prompt: O aplicativo %{client_name} solicita acesso à sua conta title: Autorização necessária show: - title: Copy this authorization code and paste it to the application. + title: Copie este código de autorização e cole no aplicativo. authorized_applications: buttons: revoke: Revogar @@ -83,7 +83,7 @@ pt-BR: invalid_grant: A garantia de autorização é inválida, expirou, foi revogada, não é equivalente à URI de redirecionamento usada da solicitação de autorização ou foi emitida por outro cliente. invalid_redirect_uri: A URI de redirecionamento incluída não é válida. invalid_request: A solicitação não possui um parâmetro obrigatório, inclui um valor não suportado ou está mal formatada. - invalid_resource_owner: As credenciais do proprietário não são válidas ou o proprietário não pôde ser encontrado. + invalid_resource_owner: As credenciais do proprietário informadas não são válidas ou o proprietário não pôde ser encontrado invalid_scope: A autorização requirida é inválida, desconhecida ou está mal formatada. invalid_token: expired: O token de acesso expirou diff --git a/config/locales/doorkeeper.pt.yml b/config/locales/doorkeeper.pt.yml index 30d9f7f5a..039b90ffa 100644 --- a/config/locales/doorkeeper.pt.yml +++ b/config/locales/doorkeeper.pt.yml @@ -3,8 +3,10 @@ pt: activerecord: attributes: doorkeeper/application: - name: Nome - redirect_uri: Redirect URI + name: Nome da Aplicação + redirect_uri: URL de redirecionamento + scopes: Scopes + website: Site da Aplicação errors: models: doorkeeper/application: @@ -33,9 +35,12 @@ pt: redirect_uri: Utiliza uma linha por URI scopes: Separate scopes with spaces. Leave blank to use the default scopes. index: + application: Aplicações callback_url: Callback URL + delete: Eliminar name: Nome new: Nova Aplicação + show: Mostrar title: As tuas aplicações new: title: Nova aplicação @@ -57,7 +62,7 @@ pt: prompt: Aplicação %{client_name} pede acesso à tua conta title: Autorização é necessária show: - title: Copy this authorization code and paste it to the application. + title: Copiar o código desta autorização e colar na aplicação. authorized_applications: buttons: revoke: Revogar diff --git a/config/locales/es.yml b/config/locales/es.yml index ca3bdd983..18b93b08e 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -1,6 +1,7 @@ --- es: about: + about_hashtag_html: Estos son toots públicos etiquetados con <strong>#%{hashtag}</strong>. Puedes interactuar con ellos si tienes una cuenta en cualquier parte del fediverso. about_mastodon_html: Mastodon es un servidor de red social <em>libre y de código abierto</em>. Una alternativa <em>descentralizada</em> a plataformas comerciales, que evita el riesgo de que una única compañía monopolice tu comunicación. Cualquiera puede ejecutar Mastodon y participar sin problemas en la <em>red social</em>. about_this: Acerca de esta instancia closed_registrations: Los registros están actualmente cerrados en esta instancia. @@ -21,7 +22,7 @@ es: real_conversation_body: Con 500 caracteres a tu disposición y soporte para contenido granular y advertencias de contenido, puedes expresarte como quieras. real_conversation_title: Hecho para verdaderas conversaciones within_reach_body: Aplicaciones múltiples para iOS, Android, y otras plataformas gracias a un ecosistema de APIs amigable al desarrollador para permitirte estar con tus amigos donde sea. - within_reach_title: Always within reach + within_reach_title: Siempre al alcance find_another_instance: Busca otra instancia generic_description: "%{domain} es un servidor en la red" hosted_on: Mastodon hosteado en %{domain} @@ -38,6 +39,7 @@ es: followers: Seguidores following: Siguiendo media: Media + moved_html: "%{name} se ha trasladado a %{new_profile_link}:" nothing_here: "¡No hay nada aquí!" people_followed_by: Usuarios a quien %{name} sigue people_who_follow: Usuarios que siguen a %{name} @@ -47,17 +49,31 @@ es: reserved_username: El nombre de usuario está reservado roles: admin: Administrador + moderator: Moderador unfollow: Dejar de seguir admin: + account_moderation_notes: + account: Moderador + create: Crear + created_at: Fecha + created_msg: "¡Nota de moderación creada con éxito!" + delete: Borrar + destroyed_msg: "¡Nota de moderación destruida con éxito!" accounts: are_you_sure: "¿Estás seguro?" + by_domain: Dominio confirm: Confirmar confirmed: Confirmado + demote: Degradar + disable: Deshabilitar disable_two_factor_authentication: Desactivar autenticación de dos factores + disabled: Deshabilitada display_name: Nombre domain: Dominio edit: Editar email: E-mail + enable: Habilitar + enabled: Habilitada feed_url: URL de notificaciones followers: Seguidores followers_url: URL de los seguidores @@ -69,12 +85,15 @@ es: local: Local remote: Remoto title: Localización + login_status: Estado del login media_attachments: Multimedia + memorialize: Convertir en memorial moderation: all: Todos silenced: Silenciados suspended: Suspendidos title: Moderación + moderation_notes: Notas de moderación most_recent_activity: Actividad más reciente most_recent_ip: IP más reciente not_subscribed: No se está suscrito @@ -85,6 +104,7 @@ es: outbox_url: URL de bandeja de salida perform_full_suspension: Performar suspensión completa profile_url: URL del perfil + promote: Promocionar protocol: Protocolo public: Público push_subscription_expires: Expiración de la suscripción PuSH @@ -92,6 +112,11 @@ es: reset: Reiniciar reset_password: Reiniciar contraseña resubscribe: Re-suscribir + role: Permisos + roles: + admin: Administrador + moderator: Moderador + user: Usuario salmon_url: URL de salmón search: Buscar shared_inbox_url: URL de bandeja compartida @@ -108,6 +133,56 @@ es: unsubscribe: Desuscribir username: Nombre de usuario web: Web + action_logs: + actions: + confirm_user: "%{name} confirmó la dirección de correo del usuario %{target}" + create_custom_emoji: "%{name} subió un nuevo emoji %{target}" + create_domain_block: "%{name} bloqueó el dominio %{target}" + create_email_domain_block: "%{name} puso en lista negra el dominio de correos %{target}" + demote_user: "%{name} degradó al usuario %{target}" + destroy_domain_block: "%{name} desbloqueó el dominio %{target}" + destroy_email_domain_block: "%{name} puso en lista blanca el dominio de correos %{target}" + destroy_status: "%{name} eliminó el estado de %{target}" + disable_2fa_user: "%{name} deshabilitó el requerimiento de dos factores para el usuario %{target}" + disable_custom_emoji: "%{name} deshabilitó el emoji %{target}" + disable_user: "%{name} deshabilitó el acceso del usuario %{target}" + enable_custom_emoji: "%{name} habilitó el emoji %{target}" + enable_user: "%{name} habilitó el acceso del usuario %{target}" + memorialize_account: "%{name} convirtió la cuenta de %{target} en una página de memorial" + promote_user: "%{name} promoción al usuario %{target}" + reset_password_user: "%{name} restauró la contraseña del usuario %{target}" + resolve_report: "%{name} desestimó el reporte %{target}" + silence_account: "%{name} silenció la cuenta de %{target}" + suspend_account: "%{name} suspendió la cuenta de %{target}" + unsilence_account: "%{name} desactivó el silenciado de la cuenta de %{target}" + unsuspend_account: "%{name} desactivó la suspensión de la cuenta de %{target}" + update_custom_emoji: "%{name} actualizó el emoji %{target}" + update_status: "%{name} actualizó el estado de %{target}" + title: Log de auditoría + custom_emojis: + copied_msg: Copia local del emoji creada con éxito + copy: Copiar + copy_failed_msg: No se pudo realizar una copia local de ese emoji + created_msg: "¡Emoji creado con éxito!" + delete: Borrar + destroyed_msg: "¡Emojo destruido con éxito!" + disable: Deshabilitar + disabled_msg: Se deshabilitó con éxito ese emoji + emoji: Emoji + enable: Habilitar + enabled_msg: Se habilitó con éxito ese emoji + image_hint: PNG de hasta 50KB + listed: Listados + new: + title: Añadir nuevo emoji personalizado + overwrite: Sobrescribir + shortcode: Código de atajo + shortcode_hint: Al menos 2 caracteres, solo caracteres alfanuméricos y guiones bajos + title: Emojis personalizados + unlisted: Sin listar + update_failed_msg: No se pudo actualizar ese emoji + updated_msg: "¡Emoji actualizado con éxito!" + upload: Subir domain_blocks: add_new: Añadir nuevo created_msg: El bloque de dominio está siendo procesado @@ -140,12 +215,29 @@ es: undo: Deshacer title: Bloques de Dominio undo: Deshacer + email_domain_blocks: + add_new: Añadir nuevo + created_msg: Dominio de correo añadido a la lista negra con éxito + delete: Borrar + destroyed_msg: Dominio de correo borrado de la lista negra con éxito + domain: Dominio + new: + create: Añadir dominio + title: Nueva entrada en la lista negra de correo + title: Lista negra de correo instances: account_count: Cuentas conocidas domain_name: Dominio reset: Reiniciar search: Buscar title: Instancias conocidas + invites: + filter: + all: Todas + available: Disponibles + expired: Expiradas + title: Filtrar + title: Invitaciones reports: action_taken_by: Acción tomada por are_you_sure: "¿Estás seguro?" @@ -172,7 +264,7 @@ es: view: Ver settings: bootstrap_timeline_accounts: - desc_html: Separa nombres de usuarios múltiples con coma. Solo funcionará con cuentas desbloqueadas. Si está vacío, el predeterminado son todos los administradores locales + desc_html: Separa con comas los nombres de usuario. Solo funcionará para cuentas locales desbloqueadas. Si se deja vacío, se tomará como valor por defecto a todos los administradores locales. title: Seguimientos predeterminados para usuarios nuevos contact_information: email: Correo de trabajo @@ -184,9 +276,15 @@ es: deletion: desc_html: Permite a cualquiera a eliminar su cuenta title: Eliminación de cuenta abierta + min_invite_role: + disabled: Nadie + title: Permitir invitaciones de open: desc_html: Permite a cualquiera a registrar una cuenta title: Registro abierto + show_staff_badge: + desc_html: Mostrar un parche de staff en la página de un usuario + title: Mostrar parche de staff site_description: desc_html: Párrafo introductorio en la portada y en meta tags. Puedes usar tags HTML, en particular <code><a></code> y <code><em></code>. title: Descripción de instancia @@ -232,6 +330,7 @@ es: body: "%{reporter} ha reportado a %{target}" subject: Nuevo reporte para la %{instance} (#%{id}) application_mailer: + salutation: "%{name}," settings: 'Cambiar preferencias de correo: %{link}' signature: Notificaciones de Mastodon desde %{instance} view: 'Vista:' @@ -246,12 +345,15 @@ es: auth: agreement_html: Al registrarte aceptas <a href="%{rules_path}">nuestros y términos y condiciones del servicio</a> y <a href="%{terms_path}">nuestras políticas de privacidda</a>. change_password: Cambiar contraseña + delete_account: Borrar cuenta delete_account_html: Si desea eliminar su cuenta, puede <a href="%{path}">proceder aquí</a>. Será pedido de una confirmación. didnt_get_confirmation: "¿No recibió el correo de confirmación?" forgot_password: "¿Olvidaste tu contraseña?" invalid_reset_password_token: El token de reinicio de contraseña es inválido o expiró. Por favor pide uno nuevo. login: Iniciar sesión logout: Cerrar sesión + migrate_account: Mudarse a otra cuenta + migrate_account_html: Si deseas redireccionar esta cuenta a otra distinta, puedes <a href="%{path}">configurarlo aquí</a>. register: Registrarse resend_confirmation: Volver a enviar el correo de confirmación reset_password: Restablecer contraseña @@ -296,11 +398,15 @@ es: content: Verificación de seguridad fallida. ¿Estás bloqueando algunas cookies? title: Verificación de seguridad fallida '429': Asfixiado + '500': + content: Lo sentimos, algo ha funcionado mal por nuestra parte. + title: Esta página no es correcta noscript_html: Para usar la aplicación web de Mastodon, por favor activa Javascript. Alternativamente, prueba alguna de las <a href="https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md">aplicaciones nativas</a> para Mastodon para tu plataforma. exports: blocks: Personas que has bloqueado csv: CSV follows: Personas que sigues + mutes: Tienes en silencio storage: Almacenamiento followers: domain: Dominio @@ -329,19 +435,47 @@ es: following: Lista de seguidos muting: Lista de silenciados upload: Cargar + in_memoriam_html: In Memoriam. + invites: + delete: Desactivar + expired: Expiradas + expires_in: + '1800': 30 minutos + '21600': 6 horas + '3600': 1 hora + '43200': 12 horas + '86400': 1 día + expires_in_prompt: Nunca + generate: Generar + max_uses: + one: 1 uso + other: "%{count} usos" + max_uses_prompt: Sin límite + prompt: Generar y compartir enlaces con otros para conceder acceso a este nodo + table: + expires_at: Expira + uses: Usos + title: Invitar a gente landing_strip_html: "<strong>%{name}</strong> es un usuario en %{link_to_root_path}. Puedes seguirlo(a) o interactuar con el o ella si tienes una cuenta en cualquier parte del fediverse." landing_strip_signup_html: Si no tienes una, puedes <a href="%{sign_up_path}">registrarte aquí</a>. media_attachments: validations: images_and_video: No se puede adjuntar un video a un estado que ya contenga imágenes too_many: No se pueden adjuntar más de 4 archivos + migrations: + acct: username@domain de la nueva cuenta + currently_redirecting: 'Tu perfil está redireccionado a:' + proceed: Guardar + updated_msg: "¡La configuración de migración de tu cuenta ha sido actualizada con éxito!" + moderation: + title: Moderación notification_mailer: digest: body: 'Un resumen de lo que te perdiste en %{instance} desde tu última visita el %{since}:' mention: "%{name} te ha mencionado en:" new_followers_summary: - one: "¡Hurra! Alguien más te ha comenzado a seguir" - other: "¡Genial! Te han seguido %{count} nuevas personas" + one: "¡Hurra! ¡Tienes un nuevo seguidor!" + other: "¡Genial! ¡Tienes %{count} nuevos seguidores!" subject: one: "1 nueva notificación desde tu última visita \U0001F418" other: "%{count} nuevas notificaciones desde tu última visita \U0001F418" @@ -358,7 +492,7 @@ es: body: 'Fuiste mencionado por %{name} en:' subject: Fuiste mencionado por %{name} reblog: - body: "%{name} ha retooteado tu estado" + body: "%{name} ha retooteado tu estado:" subject: "%{name} ha retooteado tu estado" number: human: @@ -375,6 +509,11 @@ es: next: Próximo prev: Anterior truncate: "…" + preferences: + languages: Idiomas + other: Otros + publishing: Publicación + web: Web push_notifications: favourite: title: "%A {name} le gustó tu estado" @@ -383,7 +522,7 @@ es: group: title: "%{count} notificaciones" mention: - action_boost: Boost + action_boost: Retoot action_expand: Mostrar más action_favourite: Me Gusta title: "%{name} te mencionó" @@ -391,7 +530,7 @@ es: title: "%{name} boosteó tu estado" remote_follow: acct: Ingesa el usuario@dominio de la persona que quieres seguir - missing_resource: No se pudo encontrar la URL de redirección necesaria para su cuenta. + missing_resource: No se pudo encontrar la URL de redirección requerida para tu cuenta proceed: Proceder a seguir prompt: 'Vas a seguir a:' sessions: @@ -430,15 +569,20 @@ es: windows: Windows windows_mobile: Windows Mobile windows_phone: Windows Phone - revoke: Revoke + revoke: Revocar revoke_success: Sesión revocada exitosamente title: Sesiones settings: authorized_apps: Aplicaciones autorizadas back: Volver al inicio + delete: Borrar cuenta + development: Desarrollo edit_profile: Editar perfil export: Exportar información + followers: Seguidores autorizados import: Importar + migrate: Migración de cuenta + notifications: Notificaciones preferences: Preferencias settings: Ajustes two_factor_authentication: Autenticación de dos factores @@ -534,6 +678,8 @@ es: <p>Adaptado originalmente del <a href="https://github.com/discourse/discourse">discurso de las políticas de privacidad</a>.</p> title: Términos del Servicio y Políticas de Privacidad de %{instance} + themes: + default: Mastodon time: formats: default: "%d de %b del %Y, %H:%M" @@ -542,11 +688,14 @@ es: description_html: Si habilitas la <strong>autenticación de dos factores</strong>, se requerirá estar en posesión de su teléfono, lo que generará tokens para que usted pueda iniciar sesión. disable: Deshabilitar enable: Habilitar + enabled: La autenticación de dos factores está activada enabled_success: Verificación de dos factores activada exitosamente generate_recovery_codes: generar códigos de recuperación instructions_html: "<strong>Escanea este código QR desde Google Authenticator o una aplicación similar en su teléfono</strong>. Desde ahora, esta aplicación va a generar tokens que tienes que ingresar cuando quieras iniciar sesión." lost_recovery_codes: Los códigos de recuperación te permiten obtener acceso a tu cuenta si pierdes tu teléfono. Si has perdido tus códigos de recuperación, puedes regenerarlos aquí. Tus viejos códigos de recuperación se harán inválidos. + manual_instructions: 'Si no puedes escanear el código QR y necesitas introducirlo manualmente, este es el secreto en texto plano:' recovery_codes: Hacer copias de seguridad de tus códigos de recuperación + recovery_codes_regenerated: Códigos de recuperación regenerados con éxito recovery_instructions_html: Si pierdes acceso a tu teléfono, puedes usar uno de los siguientes códigos de recuperación para obtener acceso a tu cuenta. <strong>Mantenlos a salvo</strong>. Por ejemplo, puedes imprimirlos y guardarlos con otros documentos importantes. setup: Configurar wrong_code: "¡El código ingresado es inválido! ¿El dispositivo y tiempo del servidor están correctos?" diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 2fd875b2c..cd97f5967 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -39,6 +39,7 @@ fr: followers: Abonné⋅e⋅s following: Abonnements media: Médias + moved_html: "%{name} a déménagé vers %{new_profile_link} :" nothing_here: Rien à voir ici ! people_followed_by: Personnes suivies par %{name} people_who_follow: Personnes qui suivent %{name} @@ -48,6 +49,7 @@ fr: reserved_username: Ce nom d’utilisateur⋅ice est réservé roles: admin: Admin + moderator: Modérateur·trice unfollow: Ne plus suivre admin: account_moderation_notes: @@ -59,13 +61,19 @@ fr: destroyed_msg: Note de modération supprimée avec succès ! accounts: are_you_sure: Êtes-vous certain⋅e ? + by_domain: Domaine confirm: Confirmer confirmed: Confirmé + demote: Rétrograder + disable: Désactiver disable_two_factor_authentication: Désactiver l’authentification à deux facteurs + disabled: Désactivé display_name: Nom affiché domain: Domaine edit: Éditer email: Courriel + enable: Activer + enabled: Activé feed_url: URL du flux followers: Abonné⋅e⋅s followers_url: URL des abonné·e·s @@ -77,7 +85,9 @@ fr: local: Local remote: Distant title: Situation + login_status: Statut de connexion media_attachments: Fichiers médias + memorialize: Convertir en mémorial moderation: all: Tous silenced: Masqués @@ -94,13 +104,19 @@ fr: outbox_url: URL de sortie perform_full_suspension: Effectuer une suspension complète profile_url: URL du profil + promote: Promouvoir protocol: Protocole - public: Public + public: Publique push_subscription_expires: Expiration de l’abonnement PuSH redownload: Rafraîchir les avatars reset: Réinitialiser reset_password: Réinitialiser le mot de passe resubscribe: Se réabonner + role: Permissions + roles: + admin: Administrateur + moderator: Modérateur + user: Utilisateur salmon_url: URL Salmon search: Rechercher shared_inbox_url: URL de la boite de réception partagée @@ -117,6 +133,31 @@ fr: unsubscribe: Se désabonner username: Nom d’utilisateur⋅ice web: Web + action_logs: + actions: + confirm_user: "%{name} adresse e-mail confirmée de l'utilisateur %{target}" + create_custom_emoji: "%{name} a importé de nouveaux emoji %{target}" + create_domain_block: "%{name} a bloqué le domaine %{target}" + create_email_domain_block: "%{name} a blacklisté le domaine de l'e-mail %{target}" + destroy_domain_block: "%{name} a débloqué le domaine %{target}" + destroy_email_domain_block: "%{name} a mis le domaine de l'e-mail %{target} sur liste blanche" + destroy_status: "%{name} a enlevé le statut de %{target}" + disable_2fa_user: "%{name} a désactivé l'authentification à deux facteurs pour l'utilisateur %{target}" + disable_custom_emoji: "%{name} a désactivé l'emoji %{target}" + disable_user: "%{name} a désactivé le login pour l'utilisateur %{target}" + enable_custom_emoji: "%{name} a activé l'emoji %{target}" + enable_user: "%{name} a activé le login pour l'utilisateur %{target}" + memorialize_account: "%{name} a transformé le compte de %{target} en une page de mémorial" + promote_user: "%{name} a promu l'utilisateur %{target}" + reset_password_user: "%{name} a réinitialisé le mot de passe de %{target}" + resolve_report: "%{name} n'a pas pris en compte la dénonciation de %{target}" + silence_account: "%{name} a mis le compte %{target} en mode silence" + suspend_account: "%{name} a suspendu le compte %{target}" + unsilence_account: "%{name} a mis fin au mode silence de %{target}" + unsuspend_account: "%{name} a réactivé le compte de %{target}" + update_custom_emoji: "%{name} a mis à jour l'emoji %{target}" + update_status: "%{name} a mis à jour le statut de %{target}" + title: Journal d'audit custom_emojis: copied_msg: Copie locale de l’émoji créée avec succès ! copy: Copier @@ -130,11 +171,16 @@ fr: enable: Activer enabled_msg: Émoji activé avec succès image_hint: PNG de moins de 50 Ko + listed: Listé new: title: Ajouter un nouvel émoji personnalisé + overwrite: Réécrire shortcode: Raccourci shortcode_hint: Au moins deux caractères, seulement des caractères alphanumériques ou des tirets bas title: Émoji personnalisés + unlisted: Délisté + update_failed_msg: N'a pas pu mettre à jour cet emoji + updated_msg: Emoji mis à jour avec succès ! upload: Téléverser domain_blocks: add_new: Ajouter @@ -145,13 +191,13 @@ fr: create: Créer le blocage hint: Le blocage de domaine n’empêchera pas la création de comptes dans la base de données, mais il appliquera automatiquement et rétrospectivement des méthodes de modération spécifiques sur ces comptes. severity: - desc_html: "<strong>Silence</strong> rendra les messages des comptes concernés invisibles à ceux qui ne les suivent pas. <strong>Suspend</strong> supprimera tout le contenu des comptes concernés, les médias, et les données du profil." + desc_html: "<strong>Silence</strong> rendra les messages des comptes concernés invisibles à ceux qui ne les suivent pas. <strong>Suspendre</strong> supprimera tout le contenu des comptes concernés, les médias, et les données du profil." noop: Aucune silence: Masqué suspend: Suspendre title: Nouveau blocage de domaine reject_media: Fichiers média rejetés - reject_media_hint: Supprime localement les fichiers média stockés et refuse d’en télécharger ultérieurement. Ne concerne pas les suspensions. + reject_media_hint: Supprime localement les fichiers média stockés et refuse d’en télécharger ultérieurement. Ne concerne pas les suspensions severities: noop: Aucune silence: Masquer @@ -184,6 +230,13 @@ fr: reset: Réinitialiser search: Rechercher title: Instances connues + invites: + filter: + all: Tout + available: Disponible + expired: Expiré + title: Filtre + title: Invitations reports: action_taken_by: Intervention de are_you_sure: Êtes vous certain⋅e ? @@ -222,11 +275,17 @@ fr: deletion: desc_html: Permettre à tou·te·s les utilisateur·ice·s de supprimer leur compte title: Autoriser les suppressions de compte + min_invite_role: + disabled: Personne + title: Autoriser les invitations par open: desc_html: Autoriser tout le monde à créer un compte title: Ouvrir les inscriptions + show_staff_badge: + desc_html: Montrer un badge de responsable sur une page utilisateur + title: Montrer un badge de responsable site_description: - desc_html: Affichée sous la forme d’un paragraphe sur la page d’accueil et utilisée comme balise meta.<br>Vous pouvez utiliser des balises HTML, en particulier <code><a></code> et <code><em></code>. + desc_html: Affichée sous la forme d’un paragraphe sur la page d’accueil et utilisée comme balise meta.<br/>Vous pouvez utiliser des balises HTML, en particulier <code><a></code> et <code><em></code>. title: Description du site site_description_extended: desc_html: Affichée sur la page d’informations complémentaires du site<br>Vous pouvez utiliser des balises HTML @@ -273,7 +332,7 @@ fr: salutation: "%{name}," settings: 'Changer les préférences courriel : %{link}' signature: Notifications de Mastodon depuis %{instance} - view: 'Voir :' + view: 'Voir :' applications: created: Application créée avec succès destroyed: Application supprimée avec succès @@ -292,6 +351,8 @@ fr: invalid_reset_password_token: Le lien de réinitialisation du mot de passe est invalide ou a expiré. Merci de réessayer. login: Se connecter logout: Se déconnecter + migrate_account: Déplacer vers un compte différent + migrate_account_html: Si vous voulez rediriger ce compte vers un autre, vous pouvez le <a href="%{path}">configurer ici</a>. register: S’inscrire resend_confirmation: Envoyer à nouveau les consignes de confirmation reset_password: Réinitialiser le mot de passe @@ -299,8 +360,8 @@ fr: authorize_follow: error: Malheureusement, il y a eu une erreur en cherchant les détails du compte distant follow: Suivre - follow_request: 'Vous avez demandé à suivre:' - following: 'Youpi ! Vous suivez :' + follow_request: 'Vous avez demandé à suivre :' + following: 'Youpi ! Vous suivez :' post_follow: close: Ou bien, vous pouvez fermer cette fenêtre. return: Retour au profil de l’utilisateur⋅ice @@ -323,7 +384,7 @@ fr: deletes: bad_password_msg: Bien essayé ! Mot de passe incorrect confirm_password: Entrez votre mot de passe pour vérifier votre identité - description_html: Cela va supprimer votre compte et le désactiver de manière <strong>permanente et irréversible</strong>. Votre nom d’utilisateur⋅ice restera réservé afin d’éviter la confusion + description_html: Cela va supprimer votre compte et le désactiver de manière <strong>permanente et irréversible</strong>. Votre nom d’utilisateur⋅ice restera réservé afin d’éviter la confusion. proceed: Supprimer compte success_msg: Votre compte a été supprimé avec succès warning_html: Seule la suppression du contenu depuis cette instance est garantie. Le contenu qui a été partagé est susceptible de laisser des traces. Les serveurs hors-lignes ainsi que ceux n’étant plus abonnés à vos publications ne mettront pas leur base de données à jour. @@ -335,11 +396,11 @@ fr: '422': content: Vérification de sécurité échouée. Bloquez-vous les cookies ? title: Vérification de sécurité échouée - '429': Trop de requêtes émises dans un délai donné. + '429': Trop de requêtes émises dans un délai donné '500': content: Nous sommes désolé·e·s, mais quelque chose s’est mal passé de notre côté. title: Cette page n’est pas correcte - noscript_html: Pour utiliser Mastodon, veuillez activer JavaScript + noscript_html: Pour utiliser Mastodon, veuillez activer JavaScript. Sinon, essayez l'une des <a href="https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md">applications natives</a> pour Mastodon pour votre plate-forme. exports: blocks: Vous bloquez csv: CSV @@ -363,8 +424,8 @@ fr: powered_by: propulsé par %{link} save_changes: Enregistrer les modifications validation_errors: - one: Quelque chose ne va pas ! Vérifiez l’erreur ci-dessous. - other: Certaines choses ne vont pas ! Vérifiez les erreurs ci-dessous. + one: Quelque chose ne va pas ! Vérifiez l’erreur ci-dessous + other: Certaines choses ne vont pas ! Vérifiez les %{count} erreurs ci-dessous imports: preface: Vous pouvez importer certaines données comme les personnes que vous suivez ou bloquez sur votre compte sur cette instance à partir de fichiers créés sur une autre instance. success: Vos données ont été importées avec succès et seront traitées en temps et en heure @@ -373,16 +434,44 @@ fr: following: Liste d’utilisateur⋅ice⋅s suivi⋅e⋅s muting: Liste d’utilisateur⋅ice⋅s que vous masquez upload: Importer + in_memoriam_html: In Memoriam. + invites: + delete: Désactiver + expired: Expiré + expires_in: + '1800': 30 minutes + '21600': 6 heures + '3600': 1 heure + '43200': 12 heures + '86400': 1 jour + expires_in_prompt: Jamais + generate: Générer + max_uses: + one: 1 usage + other: "%{count} usages" + max_uses_prompt: Pas de limite + prompt: Générer et partager des liens avec les autres pour donner accès à cette instance + table: + expires_at: Expire + uses: Utilise + title: Personnes invitées landing_strip_html: <strong>%{name}</strong> utilise %{link_to_root_path}. Vous pouvez læ suivre et interagir si vous possédez un compte quelque part dans le "fediverse". landing_strip_signup_html: Si ce n’est pas le cas, vous pouvez <a href="%{sign_up_path}">en créer un ici</a>. media_attachments: validations: images_and_video: Impossible de joindre une vidéo à un statut contenant déjà des images too_many: Impossible de joindre plus de 4 fichiers + migrations: + acct: utilisateur@domaine du nouveau compte + currently_redirecting: 'Votre profile va être redirigé vers :' + proceed: Enregistrer + updated_msg: Les paramètres de votre migration de compte ont été mis à jour avec succès ! + moderation: + title: Modération notification_mailer: digest: - body: 'Voici ce que vous avez raté sur ${instance} depuis votre dernière visite (%{}) :' - mention: "%{name} vous a mentionné⋅e" + body: 'Voici ce que vous avez raté sur ${instance} depuis votre dernière visite le %{since} :' + mention: "%{name} vous a mentionné⋅e dans :" new_followers_summary: one: Vous avez un⋅e nouvel⋅le abonné⋅e ! Youpi ! other: Vous avez %{count} nouveaux⋅elles abonné⋅e⋅s ! Incroyable ! @@ -390,7 +479,7 @@ fr: one: "Une nouvelle notification depuis votre dernière visite \U0001F418" other: "%{count} nouvelles notifications depuis votre dernière visite \U0001F418" favourite: - body: "%{name} a ajouté votre post à ses favoris :" + body: "%{name} a ajouté votre post à ses favoris :" subject: "%{name} a ajouté votre post à ses favoris" follow: body: "%{name} vous suit !" @@ -399,10 +488,10 @@ fr: body: "%{name} a demandé à vous suivre" subject: 'Abonné⋅es en attente : %{name}' mention: - body: "%{name} vous a mentionné⋅e dans :" + body: "%{name} vous a mentionné⋅e dans :" subject: "%{name} vous a mentionné·e" reblog: - body: "%{name} a partagé votre statut :" + body: "%{name} a partagé votre statut :" subject: "%{name} a partagé votre statut" number: human: @@ -442,7 +531,7 @@ fr: acct: Entrez votre pseudo@instance depuis lequel vous voulez suivre ce⋅tte utilisateur⋅rice missing_resource: L’URL de redirection n’a pas pu être trouvée proceed: Continuez pour suivre - prompt: 'Vous allez suivre :' + prompt: 'Vous allez suivre :' sessions: activity: Dernière activité browser: Navigateur @@ -491,6 +580,7 @@ fr: export: Export de données followers: Abonné⋅es autorisé⋅es import: Import de données + migrate: Migration de compte notifications: Notifications preferences: Préférences settings: Réglages @@ -587,6 +677,8 @@ fr: <p>Originellement adapté à partir de la politique de confidentialité de <a href="https://github.com/discourse/discourse">Discourse</a>.</p> title: "%{instance} Conditions d’utilisations et politique de confidentialité" + themes: + default: Mastodon time: formats: default: "%d %b %Y, %H:%M" @@ -600,7 +692,7 @@ fr: generate_recovery_codes: Générer les codes de récupération instructions_html: "<strong>Scannez ce QR code grâce à Google Authenticator, Authy ou une application similaire sur votre téléphone</strong>. Désormais, cette application génèrera des jetons que vous devrez saisir à chaque connexion." lost_recovery_codes: Les codes de récupération vous permettent de retrouver les accès à votre comptre si vous perdez votre téléphone. Si vous perdez vos codes de récupération, vous pouvez les générer à nouveau ici. Vos anciens codes de récupération seront invalidés. - manual_instructions: 'Si vous ne pouvez pas scanner ce QR code et devez l’entrer manuellement, voici le secret en clair :' + manual_instructions: 'Si vous ne pouvez pas scanner ce QR code et devez l’entrer manuellement, voici le secret en clair :' recovery_codes: Codes de récupération recovery_codes_regenerated: Codes de récupération régénérés avec succès recovery_instructions_html: Si vous perdez l’accès à votre téléphone, vous pouvez utiliser un des codes de récupération ci-dessous pour récupérer l’accès à votre compte. Conservez les codes de récupération en toute sécurité, par exemple, en les imprimant et en les stockant avec vos autres documents importants. @@ -609,4 +701,4 @@ fr: users: invalid_email: L’adresse courriel est invalide invalid_otp_token: Le code d’authentification à deux facteurs est invalide - signed_in_as: 'Connecté·e en tant que :' + signed_in_as: 'Connecté·e en tant que :' diff --git a/config/locales/he.yml b/config/locales/he.yml index 84d6d8468..4b977ce1b 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -1,54 +1,99 @@ --- he: about: + about_hashtag_html: אלו סטטוסים פומביים המתוייגים בתור<strong>#%{hashtag}</strong>. ניתן להגיב, להדהד או לחבב אותם אם יש לך חשבון בכל מקום בפדרציה. about_mastodon_html: מסטודון היא רשת חברתית <em>חופשית, מבוססת תוכנה חופשית ("קוד פתוח")</em>. כאלטרנטיבה <em>בלתי ריכוזית</em> לפלטפרומות המסחריות, מסטודון מאפשרת להמנע מהסיכונים הנלווים להפקדת התקשורת שלך בידי חברה יחידה. שמת את מבטחך בשרת אחד — לא משנה במי בחרת, תמיד אפשר לדבר עם כל שאר המשתמשים. לכל מי שרוצה יש את האפשרות להקים שרת מסטודון עצמאי, ולהשתתף ב<em>רשת החברתית</em> באופן חלק. about_this: אודות שרת זה closed_registrations: הרשמות סגורות לשרת זה לעת עתה. contact: צור קשר + contact_missing: אין + contact_unavailable: לא רלוונטי/חסר description_headline: מהו %{domain}? domain_count_after: שרתים אחרים domain_count_before: מחובר אל + extended_description_html: | + <h3>מקום טוב לכללים</h3> + <p>התיאור המורחב טרם הוגדר.</p> + features: + humane_approach_body: מתוך למידה מכשלים של רשתות אחרות, מסטודון מכוונת להחלטות תכנוניות אתיות שנאבקות בשימוש לרעה של מדיה חברתית. + humane_approach_title: גישה הומאנית יותר + not_a_product_body: מסטודון איננה רשת מסחרית. אין פרסום, אין כריית מידע, אין גנים סגורים. אין סמכות מרכזית. + not_a_product_title: את(ה) אדם, לא מוצר + real_conversation_body: עם 500 תווים לרשותך, ואפשרויות פרטניות לאזהרות תוכן והסתרת מדיה, יש לך את החופש להתבטא כרצונך. + real_conversation_title: בנוי לשיחות אמתיות + within_reach_body: שלל אפליקציות עבור iOS, אנדרואיד ופלטפורמות אחרות שיאפשרו לך לשמור על קשר עם חברים בכל מקום, תודות למערכת מנשקי תוכנה ידידותיים למפתחים. + within_reach_title: תמיד במרחק נגיעה + find_another_instance: לאיתור שרת אחר + generic_description: "%{domain} הוא שרת אחד בתוך הרשת" + hosted_on: מסטודון שיושב בכתובת %{domain} + learn_more: מידע נוסף other_instances: שרתים אחרים source_code: קוד מקור status_count_after: הודעות status_count_before: שכתבו user_count_after: משתמשים user_count_before: ביתם של + what_is_mastodon: מה זה מסטודון? accounts: follow: לעקוב followers: עוקבים following: נעקבים + media: מדיה + moved_html: "%{name} עבר(ה) אל %{new_profile_link}:" nothing_here: אין פה שום דבר! people_followed_by: הנעקבים של %{name} people_who_follow: העוקבים של %{name} posts: הודעות + posts_with_replies: חצרוצים ותגובות remote_follow: מעקב מרחוק + reserved_username: שם המשתמש שמור + roles: + admin: מנהל + moderator: מנחה unfollow: הפסקת מעקב admin: + account_moderation_notes: + account: מנחה דיון + create: ליצור + created_at: תאריך + created_msg: הודעת מנחה נוצרה בהצלחה! + delete: למחוק + destroyed_msg: הודעת מנחה נמחקה בהצלחה! accounts: are_you_sure: בטוח? - confirm: אשר + by_domain: שם מתחם + confirm: אישור confirmed: אושר + demote: הורדה בדרגה + disable: לחסום disable_two_factor_authentication: ביטול הזדהות דו-שלבית + disabled: נחסם display_name: שם לתצוגה domain: תחום edit: עריכה email: דוא"ל + enable: לאפשר + enabled: מאופשר feed_url: כתובת פיד followers: עוקבים + followers_url: כתובת עוקבים follows: נעקבים + inbox_url: כתובת תיבה נכנסת ip: כתובת IP location: all: הכל local: מקומי remote: מרחוק title: מיקום + login_status: מצב חיבור media_attachments: תוספות מדיה + memorialize: הפוך לדף זכרון moderation: all: הכל silenced: מושתקים suspended: מושהים title: ניהול קהילה + moderation_notes: הודעות מנחה most_recent_activity: פעילות עדכנית most_recent_ip: כתובות אחרונות not_subscribed: לא רשום @@ -56,25 +101,49 @@ he: alphabetic: אלפביתי most_recent: עדכני title: סידור + outbox_url: כתובת תיבת דואר יוצא perform_full_suspension: ביצוע השעייה מלאה profile_url: כתובת פרופיל + promote: להעלות בדרגה + protocol: פרטיכל public: פומבי push_subscription_expires: הרשמה להודעות בדחיפה פגה + redownload: לקריאה מחדש של האווטאר reset: איפוס reset_password: אתחול סיסמא + resubscribe: להרשם מחדש + role: הרשאות + roles: + admin: מנהל מערכת + moderator: מנחה דיונים + user: משתמש(ת) salmon_url: כתובת סלמון search: חיפוש + shared_inbox_url: תיבה משותפת לדואר נכנס show: created_reports: דיווחים מאת חשבון זה report: דו"ח targeted_reports: דיווחים נגד חשבון זה silence: השתקה statuses: הודעות + subscribe: הרשמה title: חשבונות undo_silenced: ביטול השתקה undo_suspension: ביטול השעייה + unsubscribe: הפסקת הרשמה username: שם משתמש web: רשת + action_logs: + actions: + confirm_user: יש אישור מאת %{name} על כתובת הדוא"ל של %{target} + create_custom_emoji: "%{name} תרמה/תרם אמוג'י חדש %{target}" + create_domain_block: "%{name} חסמה/חסם את שם המתחם %{target}" + create_email_domain_block: מתחם דוא"ל %{target} הוסף לרשימה השחורה ע"י %{name} + demote_user: '%{name} הורד(ה) בדרגה ע"י %{target}' + destroy_domain_block: החסימה על מתחם %{target} הוסרה ע"י %{name} + destroy_email_domain_block: מתחם דוא"ל %{target} הוכנס לרשימה הלבנה ע"י %{name} + destroy_status: ההודעה של %{target} הוסרה ע"י %{name} + disable_2fa_user: אימות דו שלבי של %{target} הוסר ע"י %{name} domain_blocks: add_new: הוספת חדש created_msg: חסימת שרת בתהליך @@ -84,12 +153,12 @@ he: create: יצירת חסימה hint: חסימת השרת לא תמנע יצירת רישומי חשבון במסד הנתונים, אבל תבצע פעולות ניהול קהילה מסוימות על חשבונות אלו אוטומטית ורטרואקטיבית. severity: - desc_html: "<strong>השתקה</strong> תחביא הודעות מחשבון זה לכל מי שלא עוקב אחריו. <strong>השעייה</strong> תסיר מהשרת את כל התוכן, מדיה ותכונות הפרופיל שמקושרות לחשבון זה." + desc_html: "<strong>השתקה</strong> תחביא הודעות מחשבון זה לכל מי שלא עוקב אחריו. <strong>השעייה</strong> תסיר מהשרת את כל התוכן, מדיה ותכונות הפרופיל שמקושרות לחשבון זה. <strong>כלום</strong> כדי לחסום קבצי מדיה בלבד." silence: השתקה suspend: השעייה title: חסימת שרת חדשה reject_media: חסימת קבצי מדיה - reject_media_hint: מסירה קבצי מדיה השמורים מקומית ומונעת מהורדת קבצים נוספים בעתיד. לא רלוונטי להשעיות. + reject_media_hint: מסירה קבצי מדיה השמורים מקומית ומונעת מהורדת קבצים נוספים בעתיד. לא רלוונטי להשעיות severities: silence: השתקה suspend: השעייה @@ -143,7 +212,7 @@ he: open: title: הרשמה פתוחה site_description: - desc_html: מוצג כפסקה על הדף הראשי ומשמש כתגית מטא.<br>ניתן להשתמש בתגיות HTML, ובמיוחד ב־<code><a></code> ו־<code><em></code>. + desc_html: מוצג כפסקה על הדף הראשי ומשמש כתגית מטא. ניתן להשתמש בתגיות HTML, ובמיוחד ב־<code> < a> </code> ו־<code> < em> </code> . title: תיאור האתר site_description_extended: desc_html: מוצג על עמוד המידע הנוסף<br>ניתן להשתמש בתגיות HTML @@ -155,7 +224,7 @@ he: confirmed: מאושר expires_in: פג תוקף ב- last_delivery: משלוח אחרון - title: WebSub + title: מנוי WebSub topic: נושא title: ניהול application_mailer: @@ -323,7 +392,7 @@ he: lost_recovery_codes: קודי האחזור מאפשרים אחזור גישה לחשבון במידה ומכשירך אבד. במידה וקודי האחזור אבדו, ניתן לייצרם מחדש כאן. תוקף קודי האחזור הישנים יפוג. manual_instructions: 'במידה ולא ניתן לסרוק את קוד ה-QR אלא יש צורך להקליד אותו ידנית, להלן סוד כמוס בלתי מוצפן:' recovery_codes_regenerated: קודי האחזור יוצרו בהצלחה - recovery_instructions_html: במידה והגישה למכשירך תאבד, ניתן לייצר קודי אחזור למטה על מנת לאחזר גישה לחשבונך בכל עת. נא לשמור על קודי הגישה במקום בטוח )לדוגמא על ידי הדפסתם ושמירתם עם מסמכים חשובים אחרים, או שימוש בתוכנה ייעודית לניהול סיסמאות וסודות( + recovery_instructions_html: במידה והגישה למכשירך תאבד, ניתן לייצר קודי אחזור למטה על מנת לאחזר גישה לחשבונך בכל עת. <strong>נא לשמור על קודי הגישה במקום בטוח</strong>. לדוגמא על ידי הדפסתם ושמירתם עם מסמכים חשובים אחרים, או שימוש בתוכנה ייעודית לניהול סיסמאות וסודות. setup: הכנה wrong_code: הקוד שהוזן שגוי! האם הזמן בשרת והזמן במכשירך נכונים? users: diff --git a/config/locales/ja.yml b/config/locales/ja.yml index a008d9cc4..3097fb22b 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -448,7 +448,7 @@ ja: expires_in_prompt: 無期限 generate: 作成 max_uses: - one: 1 + one: '1' other: "%{count}" max_uses_prompt: 無制限 prompt: リンクを生成・共有してこのインスタンスへの新規登録を受け付けることができます。 @@ -456,6 +456,14 @@ ja: expires_at: 有効期限 uses: 使用 title: 新規ユーザーの招待 + keyword_mutes: + add_keyword: キーワードを追加 + edit: 編集 + edit_keyword: キーワードを編集 + keyword: キーワード + match_whole_word: 単語全体が一致 + remove: 削除 + remove_all: すべて削除 landing_strip_html: "<strong>%{name}</strong> さんはインスタンス %{link_to_root_path} のユーザーです。アカウントさえ持っていればフォローしたり会話したりできます。" landing_strip_signup_html: もしお持ちでないなら <a href="%{sign_up_path}">こちら</a> からサインアップできます。 media_attachments: diff --git a/config/locales/ko.yml b/config/locales/ko.yml index fd6351486..333bcc689 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -39,6 +39,7 @@ ko: followers: 팔로워 following: 팔로잉 media: 미디어 + moved_html: "%{name}은 %{new_profile_link}으로 이동되었습니다:" nothing_here: 아무 것도 없습니다. people_followed_by: "%{name} 님이 팔로우 중인 계정" people_who_follow: "%{name} 님을 팔로우 중인 계정" @@ -48,6 +49,7 @@ ko: reserved_username: 이 아이디는 예약되어 있습니다. roles: admin: Admin + moderator: 모드 unfollow: 팔로우 해제 admin: account_moderation_notes: @@ -59,13 +61,18 @@ ko: destroyed_msg: 모더레이션 기록이 성공적으로 삭제되었습니다. accounts: are_you_sure: 정말로 실행하시겠습니까? + by_domain: 도메인 confirm: 확인 confirmed: 확인됨 + disable: 비활성화 disable_two_factor_authentication: 2단계 인증을 비활성화 + disabled: 비활성화된 display_name: 이름 domain: 도메인 edit: 편집 email: E-mail + enable: 활성화 + enabled: 활성화된 feed_url: 피드 URL followers: 팔로워 수 followers_url: 팔로워 URL @@ -77,6 +84,7 @@ ko: local: 로컬 remote: 리모트 title: 위치 + login_status: 로그인 상태 media_attachments: 첨부된 미디어 moderation: all: 전체 @@ -101,6 +109,10 @@ ko: reset: 초기화 reset_password: 비밀번호 초기화 resubscribe: 다시 구독 + role: 권한 + roles: + admin: 관리자 + user: 사용자 salmon_url: Salmon URL search: 검색 shared_inbox_url: 공유된 inbox URL diff --git a/config/locales/nl.yml b/config/locales/nl.yml index cda771ce2..2410c1112 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -39,6 +39,7 @@ nl: followers: Volgers following: Volgend media: Media + moved_html: "%{name} is verhuisd naar %{new_profile_link}:" nothing_here: Hier is niets! people_followed_by: Mensen die %{name} volgt people_who_follow: Mensen die %{name} volgen @@ -48,6 +49,7 @@ nl: reserved_username: Deze gebruikersnaam is gereserveerd roles: admin: Beheerder + moderator: Mod unfollow: Ontvolgen admin: account_moderation_notes: @@ -59,13 +61,19 @@ nl: destroyed_msg: Verwijderen van opmerking voor moderatoren geslaagd! accounts: are_you_sure: Weet je het zeker? + by_domain: Domein confirm: Bevestigen confirmed: Bevestigd + demote: Degraderen + disable: Uitschakelen disable_two_factor_authentication: 2FA uitschakelen + disabled: Uitgeschakeld display_name: Weergavenaam domain: Domein edit: Bewerken email: E-mail + enable: Inschakelen + enabled: Ingeschakeld feed_url: Feed-URL followers: Volgers followers_url: Volgers-URL @@ -77,7 +85,9 @@ nl: local: Lokaal remote: Extern title: Locatie + login_status: Aanmeld status media_attachments: Media-bijlagen + memorialize: Verander in memoriam moderation: all: Alles silenced: Genegeerd @@ -94,6 +104,7 @@ nl: outbox_url: Outbox-URL perform_full_suspension: Volledig opschorten profile_url: Profiel-URL + promote: Promoten protocol: Protocol public: Openbaar push_subscription_expires: PuSH-abonnement verloopt op @@ -101,6 +112,11 @@ nl: reset: Opnieuw reset_password: Wachtwoord opnieuw instellen resubscribe: Opnieuw abonneren + role: Permissies + roles: + admin: Beheerder + moderator: Moderateur + user: Persoon salmon_url: Salmon-URL search: Zoeken shared_inbox_url: Gedeelde inbox-URL @@ -117,6 +133,24 @@ nl: unsubscribe: Opzeggen username: Gebruikersnaam web: Webapp + action_logs: + actions: + confirm_user: "%{name} bevestigd e-mailadres van persoon %{target}" + create_custom_emoji: "%{name} heeft de nieuwe emoji %{target} geupload" + create_domain_block: "%{name} heeft domein %{target} geblokkeerd" + create_email_domain_block: "%{name} heeft e-maildomein %{target} geblacklist" + demote_user: "%{name} heeft persoon %{target} gedegradeerd" + destroy_domain_block: "%{name} heeft domein %{target} vrijgegeven" + destroy_email_domain_block: "%{name} heeft e-maildomein %{target} gewhitelist" + destroy_status: "%{name} heeft status van %{target} verwijderd" + disable_2fa_user: "%{name} heeft tweefactor voorwaarden van persoon %{target} uitgeschakeld" + disable_custom_emoji: "%{name} heeft emoji %{target} uitgeschakeld" + disable_user: "%{name} heeft de login van persoon %{target} uitgeschakeld" + enable_custom_emoji: "%{name} heeft emoji %{target} ingeschakeld" + enable_user: "%{name} heeft de login voor persoon %{target} ingeschakeld" + memorialize_account: "%{name} heeft %{target}'s account gewijzigd in een memoriam pagina" + promote_user: "%{name} heeft persoon %{target} gepromoveerd" + reset_password_user: "%{name} heeft het wachtwoord van gebruiker %{target} opnieuw ingesteld" custom_emojis: copied_msg: Lokale kopie van emoji maken geslaagd copy: Kopiëren @@ -156,7 +190,7 @@ nl: noop: Geen silence: Negeren suspend: Opschorten - severity: Zwaarte + severity: Strengheid show: affected_accounts: one: Eén account in de database aangepast diff --git a/config/locales/oc.yml b/config/locales/oc.yml index e5d036303..a9bad2d34 100644 --- a/config/locales/oc.yml +++ b/config/locales/oc.yml @@ -39,11 +39,12 @@ oc: followers: Seguidors following: Abonaments media: Mèdias + moved_html: "%{name} a mudat a %{new_profile_link} :" nothing_here: I a pas res aquí ! people_followed_by: Lo mond que %{name} sèc people_who_follow: Lo mond que sègon %{name} posts: Tuts - posts_with_replies: Tuts amb responsas + posts_with_replies: Tuts e responsas remote_follow: Sègre a distància reserved_username: Aqueste nom d’utilizaire es reservat roles: @@ -62,6 +63,7 @@ oc: by_domain: Domeni confirm: Confirmar confirmed: Confirmat + demote: Retrogradar disable: Desactivar disable_two_factor_authentication: Desactivar 2FA disabled: Desactivat @@ -101,6 +103,7 @@ oc: outbox_url: URL Outbox perform_full_suspension: Botar en tren la suspension complèta profile_url: URL del perfil + promote: Promòure protocol: Protocòl public: Public push_subscription_expires: Fin de l’abonament PuSH @@ -108,6 +111,11 @@ oc: reset: Reïnicializar reset_password: Reïnicializar lo senhal resubscribe: Se tornar abonar + role: Permissions + roles: + admin: Admin + moderator: Mod + user: Uitlizaire salmon_url: URL Salmon search: Cercar shared_inbox_url: URL de recepcion partejada @@ -124,6 +132,32 @@ oc: unsubscribe: Se desabonar username: Nom d’utilizaire web: Web + action_logs: + actions: + confirm_user: "%{name} confirmèt l’adreça a %{target}" + create_custom_emoji: "%{name} mandèt un nòu emoji %{target}" + create_domain_block: "%{name} bloquèt lo domeni %{target}" + create_email_domain_block: "%{name} botèt a la lista nègra lo domeni de corrièl %{target}" + demote_user: "%{name} retragradèt l‘utilizaire %{target}" + destroy_domain_block: "%{name} desbloquèt lo domeni %{target}" + destroy_email_domain_block: "%{name} botèt a la lista blanca lo domeni de corrièl %{target}" + destroy_status: "%{name} levèt l‘estatut a %{target}" + disable_2fa_user: "%{name} desactivèt l’autentificacion en dos temps per %{target}" + disable_custom_emoji: "%{name} desactivèt l‘emoji %{target}" + disable_user: "%{name} desactivèt la connexion per %{target}" + enable_custom_emoji: "%{name} activèt l‘emoji %{target}" + enable_user: "%{name} activèt la connexion per %{target}" + memorialize_account: "%{name} transformèt en memorial la pagina de perfil a %{target}" + promote_user: "%{name} promoguèt %{target}" + reset_password_user: "%{name} reïnicializèt lo senhal a %{target}" + resolve_report: "%{name} anullèt lo rapòrt de %{target}" + silence_account: "%{name} metèt en silenci lo compte a %{target}" + suspend_account: "%{name} susprenguèt lo compte a %{target}" + unsilence_account: "%{name} levèt lo silenci del compte a %{target}" + unsuspend_account: "%{name} restabliguèt lo compte a %{target}" + update_custom_emoji: "%{name} metèt a jorn l’emoji %{target}" + update_status: "%{name} metèt a jorn l’estatut a %{target}" + title: Audit log custom_emojis: copied_msg: Còpia locala de l’emoji ben creada copy: Copiar @@ -196,6 +230,8 @@ oc: reset: Reïnicializar search: Cercar title: Instàncias conegudas + invites: + title: Covits reports: action_taken_by: Mesura menada per are_you_sure: Es segur ? @@ -237,6 +273,9 @@ oc: open: desc_html: Autorizar lo monde a se marcar title: Inscripcions + show_staff_badge: + desc_html: Mostrar lo badge Personal sus la pagina de perfil + title: Mostrar lo badge personal site_description: desc_html: Afichada jos la forma de paragraf sus la pagina d’acuèlh e utilizada coma balisa meta.<br> Podètz utilizar de balisas HTML, coma <code><a></code> e <code><em></code>. title: Descripcion del site diff --git a/config/locales/pl.yml b/config/locales/pl.yml index 19ee154ab..baa26f1dc 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -277,6 +277,9 @@ pl: deletion: desc_html: Pozwól każdemu na usunięcie konta title: Możliwość usunięcia + min_invite_role: + disabled: Nikt + title: Kto może zapraszać użytkowników open: desc_html: Pozwól każdemu na założenie konta title: Otwarta rejestracja @@ -474,6 +477,7 @@ pl: acct: nazwa@domena nowego konta currently_redirecting: 'Obecnie Twoje konto przekierowuje do:' proceed: Zapisz + updated_msg: Pomyślnie zaktualizowano ustawienia i migracji Twojego konta! moderation: title: Moderacja notification_mailer: @@ -689,6 +693,8 @@ pl: <p>Tekst bazuje na <a href="https://github.com/discourse/discourse">polityce prywatności Discourse</a>.</p> title: Zasady korzystania i polityka prywatności %{instance} + themes: + default: Mastodon time: formats: default: "%b %d, %Y, %H:%M" diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index de2b9c778..760bb69a2 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -39,6 +39,7 @@ pt-BR: followers: Seguidores following: Seguindo media: Mídia + moved_html: "%{name} se mudou para %{new_profile_link}:" nothing_here: Não há nada aqui! people_followed_by: Pessoas que %{name} segue people_who_follow: Pessoas que seguem %{name} @@ -48,6 +49,7 @@ pt-BR: reserved_username: Este usuário está reservado roles: admin: Administrador + moderator: Moderador unfollow: Deixar de seguir admin: account_moderation_notes: @@ -76,7 +78,7 @@ pt-BR: followers: Seguidores followers_url: URL de seguidores follows: Segue - inbox_url: Inbox URL + inbox_url: URL da caixa de entrada ip: IP location: all: Todos @@ -115,7 +117,7 @@ pt-BR: admin: Administrador moderator: Moderador user: Usuário - salmon_url: Salmon URL + salmon_url: URL Salmon search: Pesquisar shared_inbox_url: URL da Inbox Compartilhada show: @@ -131,18 +133,39 @@ pt-BR: unsubscribe: Desinscrever-se username: Nome de usuário web: Web + action_logs: + actions: + confirm_user: "%{name} confirmou o endereço de e-mail do usuário %{target}" + create_custom_emoji: "%{name} enviou o emoji novo %{target}" + create_domain_block: "%{name} bloqueou o domínio %{target}" + create_email_domain_block: "%{name} colocou o domínio de e-mail %{target} na lista negra" + demote_user: "%{name} rebaixou o usuário %{target}" + destroy_domain_block: "%{name} desbloqueou o domínio %{target}" + destroy_email_domain_block: "%{name} retirou o domínio de e-mail %{target} da lista negra" + destroy_status: "%{name} removeu postagem feita por %{target}" + disable_2fa_user: "%{name} desabilitou a exigência de autenticação em dois passos para o usuário %{target}" + disable_custom_emoji: "%{name} desabilitou o emoji %{target}" + disable_user: "%{name} desabilitou o acesso para o usuário %{target}" + enable_custom_emoji: "%{name} habilitou o emoji %{target}" + enable_user: "%{name} habilitou o acesso para o usuário %{target}" + memorialize_account: "%{name} transformou a conta de %{target} em um memorial" + promote_user: "%{name} promoveu o usuário %{target}" + reset_password_user: "%{name} redefiniu a senha do usuário %{target}" + resolve_report: "%{name} dispensou o relatório %{target}" + silence_account: "%{name} silenciou a conta de %{target}" + suspend_account: "%{name} suspendeu a conta de %{target}" custom_emojis: - copied_msg: Cópia local do emoji criada com sucesso! + copied_msg: Cópia local do emoji criada com sucesso copy: Copiar copy_failed_msg: Não foi possível criar uma cópia local deste emoji created_msg: Emoji criado com sucesso! delete: Excluir destroyed_msg: Emoji deletado com sucesso! disable: Desabilitar - disabled_msg: Emoji desabilitado com sucesso! + disabled_msg: Emoji desabilitado com sucesso emoji: Emoji enable: Habilitar - enabled_msg: Emoji habilitado com sucesso! + enabled_msg: Emoji habilitado com sucesso image_hint: PNG de até 50KB listed: Listado new: @@ -170,7 +193,7 @@ pt-BR: suspend: Suspensão title: Novo bloqueio de domínio reject_media: Rejeitar arquivos de mídia - reject_media_hint: Remove arquivos de mídia armazenados localmente e recusa quaisquer outros no futuro. Irrelevante para suspensões. + reject_media_hint: Remove arquivos de mídia armazenados localmente e recusa quaisquer outros no futuro. Irrelevante para suspensões severities: noop: Nenhum silence: Silêncio @@ -236,7 +259,7 @@ pt-BR: username: Contate usuário registrations: closed_message: - desc_html: Exibido na página inicial quando cadastros estão fechados. Você pode usar tags HTML. + desc_html: Exibido na página inicial quando cadastros estão fechados. Você pode usar tags HTML title: Mensagem de cadastros fechados deletion: desc_html: Permitir que qualquer um delete a sua conta @@ -248,10 +271,10 @@ pt-BR: desc_html: Parágrafo introdutório na página inicial e em meta tags. Você pode usar tags HTML, em especial <code><a></code> e <code><em></code>. title: Descrição da instância site_description_extended: - desc_html: Um ótimo lugar para seu código de conduta, regras, diretrizes e outras coisas para diferenciar a sua instância. Você pode usar tags HTML. + desc_html: Um ótimo lugar para seu código de conduta, regras, diretrizes e outras coisas para diferenciar a sua instância. Você pode usar tags HTML title: Informação estendida customizada site_terms: - desc_html: Você pode escrever a sua própria política de privacidade, termos de serviço, entre outras coisas.Você pode usar tags HTML. + desc_html: Você pode escrever a sua própria política de privacidade, termos de serviço, entre outras coisas. Você pode usar tags HTML title: Termos de serviço customizados site_title: Nome da instância thumbnail: @@ -277,7 +300,7 @@ pt-BR: title: Postagens da conta with_media: Com mídia subscriptions: - callback_url: Callback URL + callback_url: URL de Callback confirmed: Confirmado expires_in: Expira em last_delivery: Última entrega @@ -316,7 +339,7 @@ pt-BR: reset_password: Modificar senha set_new_password: Definir uma nova senha authorize_follow: - error: Infelizmente, ocorreu um erro quando visualizando a conta remota. + error: Infelizmente, ocorreu um erro ao buscar a conta remota follow: Seguir follow_request: 'Você mandou uma solicitação de seguidor para:' following: 'Sucesso! Você agora está seguindo:' @@ -340,7 +363,7 @@ pt-BR: x_months: "%{count} meses" x_seconds: "%{count} segundos" deletes: - bad_password_msg: Boa tentativa, hackers! Senha incorreta. + bad_password_msg: Boa tentativa, hackers! Senha incorreta confirm_password: Insira a sua senha atual para verificar a sua identidade description_html: Isto vai <strong>permanente e irreversivelmente</strong> remover conteúdo de sua conta e desativá-la. O seu nome de usuário permanecerá reservado para previnir futuros roubos de identidade. proceed: Excluir conta @@ -379,7 +402,7 @@ pt-BR: unlocked_warning_title: A sua conta não está trancada generic: changes_saved_msg: Mudanças salvas com sucesso! - powered_by: powered by %{link} + powered_by: graças a tecnologia de %{link} save_changes: Salvar mudanças validation_errors: one: Algo não está certo! Por favor, reveja o erro abaixo @@ -392,13 +415,13 @@ pt-BR: following: Pessoas que você segue muting: Lista de silêncio upload: Enviar - in_memoriam_html: Em memória de + in_memoriam_html: Em memória. landing_strip_html: "<strong>%{name}</strong> é um usuário no %{link_to_root_path}. Você pode segui-lo ou interagir com ele se você tiver uma conta em qualquer lugar no fediverso." landing_strip_signup_html: Se não, você pode <a href="%{sign_up_path}">se cadastrar aqui</a>. media_attachments: validations: - images_and_video: Não é possível anexar um vídeo a uma postagem que já contém imagens. - too_many: Não é possível anexar mais de quatro imagens. + images_and_video: Não é possível anexar um vídeo a uma postagem que já contém imagens + too_many: Não é possível anexar mais de 4 imagens notification_mailer: digest: body: 'Aqui está um resumo do que você perdeu no %{instance} desde o seu último acesso em %{since}:' @@ -417,7 +440,7 @@ pt-BR: subject: "%{name} está te seguindo" follow_request: body: "%{name} requisitou autorização para te seguir" - subject: 'Pending follower: %{name}' + subject: 'Seguidor pendente: %{name}' mention: body: 'Você foi mencionado por %{name} em:' subject: Você foi mencionado por %{name} @@ -472,7 +495,7 @@ pt-BR: chrome: Chrome edge: Microsoft Edge firefox: Firefox - generic: Unknown browser + generic: Navegador desconhecido ie: Internet Explorer micro_messenger: MicroMessenger nokia: Nokia S40 Ovi Browser diff --git a/config/locales/pt.yml b/config/locales/pt.yml index 140f6b71b..c476bac59 100644 --- a/config/locales/pt.yml +++ b/config/locales/pt.yml @@ -1,52 +1,98 @@ --- pt: about: - about_mastodon_html: Mastodon é uma rede social <em>grátis e em código aberto</em>. Uma alternativa <em>descentralizada</em> às plataformas comerciais, que evita o risco de uma única empresa monopolizar a tua comunicação. Escolhe um servidor que confies, não importa qual, pois vais poder comunicar com todos os outros. Qualquer um pode criar uma instância Mastodon e participar nesta <em>rede social</em>. + about_hashtag_html: Estes são toots públicos marcados com <strong>#%{hashtag}</strong>. Podes interagir com eles se tiveres uma conta Mastodon. + about_mastodon_html: Mastodon é uma rede social baseada em protocolos abertos da web e software livre e gratuito. É descentralizado como e-mail. about_this: Sobre esta instância closed_registrations: Novos registos estão fechados nesta instância. contact: Contacto + contact_missing: Não definido + contact_unavailable: N/A description_headline: O que é o %{domain}? domain_count_after: outras instâncias domain_count_before: Ligado a + extended_description_html: | + <h3>Um bom lugar para regras</h3> + <p>A descrição da instância ainda não foi feita.</p> + features: + humane_approach_body: Aprendendo com erros de outras redes sociais, Mastodon tem como objetivo fazer decisões éticas de design para combater o utilização errada de redes sociais. + humane_approach_title: Uma abordagem mais humana + not_a_product_body: Mastodon não é uma rede comercial. Sem publicidade, sem recolha de dados ou portas fechadas. Não existe uma autoridade central. + not_a_product_title: Tu és uma pessoa, não um produto + real_conversation_body: Com 500 caracteres à sua disposição e suporte para conteúdo granular e avisos de conteúdo, podes te expressar da forma que desejares. + real_conversation_title: Feito para conversas reais + within_reach_body: Várias aplicações para iOS, Android e outras plataformas graças a um ecossistema de API amigável para desenvolvedores, permitem-te que te mantenhas em contacto com os teus amigos em qualquer lugar. + within_reach_title: Sempre ao teu alcance + find_another_instance: Encontra outra instância + generic_description: "%{domain} é um servidor na rede" + hosted_on: Mastodon em %{domain} + learn_more: Saber mais other_instances: Outras instâncias source_code: Código fonte status_count_after: publicações status_count_before: Que fizeram user_count_after: utilizadores user_count_before: Casa para + what_is_mastodon: O que é o Mastodon? accounts: follow: Seguir followers: Seguidores following: A seguir + media: Media + moved_html: "%{name} mudou-se para %{new_profile_link}:" nothing_here: Não há nada aqui! people_followed_by: Pessoas seguidas por %{name} people_who_follow: Pessoas que seguem %{name} posts: Posts + posts_with_replies: Posts e Respostas remote_follow: Seguir remotamente + reserved_username: Este nome de utilizadores é reservado + roles: + admin: Administrador + moderator: Moderador unfollow: Deixar de seguir admin: + account_moderation_notes: + account: Moderador + create: Criar + created_at: Data + created_msg: Nota de moderação criada com sucesso! + delete: Eliminar + destroyed_msg: Nota de moderação excluída com sucesso! accounts: are_you_sure: Tens a certeza? + by_domain: Domínio confirm: Confirme confirmed: Confirmado + demote: Rebaixar + disable: Desativar + disable_two_factor_authentication: Desativar 2FA + disabled: Desativado display_name: Nome a mostrar domain: Domínio edit: Editar email: E-mail + enable: Ativar + enabled: Ativado feed_url: URL do Feed followers: Seguidores + followers_url: URL dos seguidores follows: A seguir + inbox_url: URL da caixa de entrada + ip: IP location: all: Todos local: Local remote: Remoto title: Local + login_status: Estado de início de sessão media_attachments: Media anexa moderation: all: Todos silenced: Silenciados suspended: Supensos title: Moderação + moderation_notes: Notas de moderação most_recent_activity: Actividade mais recente most_recent_ip: IP mais recente not_subscribed: Não inscrito @@ -56,10 +102,26 @@ pt: title: Ordem perform_full_suspension: Fazer suspensão completa profile_url: URL do perfil + promote: Promover + protocol: Protocolo public: Público push_subscription_expires: PuSH subscription expires + redownload: Atualizar avatar + reset: Restaurar reset_password: Reset palavra-passe + resubscribe: Reinscrever + role: Permissões + roles: + admin: Administrador + moderator: Moderador + user: Utilizador salmon_url: Salmon URL + search: Pesquisar + shared_inbox_url: URL da caixa de entrada compartilhada + show: + created_reports: Relatórios gerados por esta conta + report: relatórios + targeted_reports: Relatórios feitos sobre esta conta silence: Silêncio statuses: Status title: Contas @@ -67,6 +129,14 @@ pt: undo_suspension: Desfazer supensão username: Usuário web: Web + action_logs: + actions: + confirm_user: "%{name} confirmou o endereço de e-mail do utilizador %{target}" + create_custom_emoji: "%{name} enviado emoji novo %{target}" + create_domain_block: "%{name} bloqueou o domínio %{target}" + create_email_domain_block: "%{name} adicionou na lista negra o domínio de correio electrónico %{target}" + demote_user: "%{name} rebaixou o utilizador %{target}" + destroy_domain_block: "%{name} desbloqueou o domínio %{target}" domain_blocks: add_new: Adicionar novo created_msg: Bloqueio do domínio está a ser processado diff --git a/config/locales/simple_form.ca.yml b/config/locales/simple_form.ca.yml index f8402af21..2ff3348f3 100644 --- a/config/locales/simple_form.ca.yml +++ b/config/locales/simple_form.ca.yml @@ -20,7 +20,7 @@ ca: sessions: otp: Introdueix el codi de dos factors des del teu telèfon o utilitza un dels teus codis de recuperació. user: - filtered_languages: Els idiomes seleccionats seran eliminats de les línies de temps públiques. + filtered_languages: Els idiomes seleccionats seran eliminats de les línies de temps públiques labels: defaults: avatar: Avatar @@ -30,10 +30,12 @@ ca: data: Informació display_name: Mostrar nom email: Direcció de correu electrònic + expires_in: Caduca després filtered_languages: Idiomes filtrats header: Img. capçalera locale: Idioma locked: Fer privat aquest compte + max_uses: Nombre màxim d'usos new_password: Nova contrasenya note: Biografia otp_attempt: Codi de dos factors diff --git a/config/locales/simple_form.de.yml b/config/locales/simple_form.de.yml index 9933093ca..3c5e467a2 100644 --- a/config/locales/simple_form.de.yml +++ b/config/locales/simple_form.de.yml @@ -30,10 +30,12 @@ de: data: Daten display_name: Anzeigename email: E-Mail-Adresse + expires_in: Gültig bis filtered_languages: Gefilterte Sprachen header: Kopfbild locale: Sprache locked: Gesperrtes Profil + max_uses: Max Verwendungen new_password: Neues Passwort note: Über mich otp_attempt: Zwei-Faktor-Authentisierungs-Code @@ -54,6 +56,7 @@ de: interactions: must_be_follower: Benachrichtigungen von Nicht-Folgenden blockieren must_be_following: Benachrichtigungen von Profilen blockieren, denen ich nicht folge + must_be_following_dm: Private Nachrichten von Profilen denen ich nicht folge blockieren notification_emails: digest: Schicke Übersichts-E-Mails favourite: E-Mail senden, wenn jemand meinen Beitrag favorisiert diff --git a/config/locales/simple_form.en.yml b/config/locales/simple_form.en.yml index ff1a40ccd..756f6b119 100644 --- a/config/locales/simple_form.en.yml +++ b/config/locales/simple_form.en.yml @@ -13,8 +13,9 @@ en: note: one: <span class="note-counter">1</span> character left other: <span class="note-counter">%{count}</span> characters left + setting_flavour: Affects how Mastodon looks when you're logged in from any device setting_noindex: Affects your public profile and status pages - setting_theme: Affects how Mastodon looks when you're logged in from any device. + setting_skin: Reskins the selected Mastodon flavour imports: data: CSV file exported from another Mastodon instance sessions: @@ -45,10 +46,11 @@ en: setting_default_privacy: Post privacy setting_default_sensitive: Always mark media as sensitive setting_delete_modal: Show confirmation dialog before deleting a toot + setting_flavour: Flavour setting_noindex: Opt-out of search engine indexing setting_reduce_motion: Reduce motion in animations + setting_skin: Skin setting_system_font_ui: Use system's default font - setting_theme: Site theme setting_unfollow_modal: Show confirmation dialog before unfollowing someone severity: Severity type: Import type diff --git a/config/locales/simple_form.es.yml b/config/locales/simple_form.es.yml index 63a0710d1..01fe2af4c 100644 --- a/config/locales/simple_form.es.yml +++ b/config/locales/simple_form.es.yml @@ -4,6 +4,7 @@ es: hints: defaults: avatar: PNG, GIF o JPG. Máximo 2MB. Será escalado a 120x120px + digest: Enviado tras un largo periodo de inactividad, con un resumen de las menciones que has recibido durante tu ausencia display_name: one: <span class="name-counter">1</span> caracter restante other: <span class="name-counter">%{count}</span> caracteres restantes @@ -13,12 +14,13 @@ es: one: <span class="name-counter">1</span> caracter restante other: <span class="name-counter">%{count}</span> caracteres restantes setting_noindex: Afecta a tu perfil público y páginas de estado + setting_theme: Afecta al aspecto de Mastodon cuando te identificas desde cualquier dispositivo. imports: data: Archivo CSV exportado desde otra instancia de Mastodon sessions: otp: Ingresa el código de autenticación de dos factores de tu teléfono o usa uno de tus códigos de recuperación. user: - filtered_languages: Los lenguajes seleccionados serán removidos de tus líneas de tiempo públicas. + filtered_languages: Los idiomas seleccionados dejarán de mostrarse para ti en las líneas de tiempo públicas labels: defaults: avatar: Avatar @@ -28,21 +30,33 @@ es: data: Información display_name: Mostrar nombre email: Dirección de correo electrónico + expires_in: Expirar tras + filtered_languages: Idiomas filtrados header: Img. cabecera locale: Idioma locked: Hacer privada esta cuenta + max_uses: Máx. número de usos new_password: Nueva contraseña note: Biografía otp_attempt: Código de dos factores password: Contraseña + setting_auto_play_gif: Reproducir automáticamente los GIFs animados setting_boost_modal: Mostrar ventana de confirmación antes de un Retoot setting_default_privacy: Privacidad de publicaciones + setting_default_sensitive: Marcar siempre imágenes como sensibles + setting_delete_modal: Mostrar diálogo de confirmación antes de borrar un toot + setting_noindex: Excluirse del indexado de motores de búsqueda + setting_reduce_motion: Reducir el movimiento de las animaciones + setting_system_font_ui: Utilizar la tipografía por defecto del sistema + setting_theme: Tema del sitio + setting_unfollow_modal: Mostrar diálogo de confirmación antes de dejar de seguir a alguien severity: Severidad type: Importar tipo username: Nombre de usuario interactions: must_be_follower: Bloquear notificaciones de personas que no te siguen must_be_following: Bloquear notificaciones de personas que no sigues + must_be_following_dm: Bloquear mensajes directos de la gente que no sigues notification_emails: digest: Enviar resumen de correos electrónicos favourite: Enviar correo electrónico cuando alguien de a favorito en su publicación diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml index 06ab018a7..2397e5161 100644 --- a/config/locales/simple_form.fr.yml +++ b/config/locales/simple_form.fr.yml @@ -30,10 +30,12 @@ fr: data: Données display_name: Nom public email: Adresse courriel + expires_in: Expire après filtered_languages: Langues filtrées header: Image d’en-tête locale: Langue locked: Verrouiller le compte + max_uses: Nombre maximum d'utilisations new_password: Nouveau mot de passe note: Présentation otp_attempt: Code d’identification à deux facteurs @@ -54,6 +56,7 @@ fr: interactions: must_be_follower: Masquer les notifications des personnes qui ne vous suivent pas must_be_following: Masquer les notifications des personnes que vous ne suivez pas + must_be_following_dm: Bloquer les messages directs des personnes que vous ne suivez pas notification_emails: digest: Envoyer des courriels récapitulatifs favourite: Envoyer un courriel lorsque quelqu’un ajoute mes statuts à ses favoris diff --git a/config/locales/simple_form.he.yml b/config/locales/simple_form.he.yml index d6af5e7ac..604236a73 100644 --- a/config/locales/simple_form.he.yml +++ b/config/locales/simple_form.he.yml @@ -4,6 +4,7 @@ he: hints: defaults: avatar: PNG, GIF או JPG. מקסימום 2MB. גודל התמונה יוקטן ל-120x120px + digest: נשלח לאחר תקופה ארוכה של אי-פעילות עם סיכום איזכורים שקיבלת בהעדרך display_name: one: נותרה אות<span class="name-counter">אחת</span> other: נותרו<span class="name-counter">%{count}</span> אותיות @@ -12,12 +13,14 @@ he: note: one: נותרה אות<span class="note-counter">אחת</span> other: נותרו <span class="note-counter">%{count}</span> אותיות + setting_noindex: משפיע על הפרופיל הציבורי שלך ועמודי ההודעות + setting_theme: משפיע על המראה של מסטודון בעת החיבור המזוהה מכל מכשיר שהוא. imports: data: קובץ CSV שיוצא משרת מסטודון אחר sessions: otp: נא להקליד קוד אימות דו-שלבי ממכשירך או קוד אחזור גישה. user: - filtered_languages: בחירת שפות להסתרה מציר הזמן הציבורי שלך. + filtered_languages: שפות שנבחרו יוסתרו מציר הזמן הציבורי בשבילך labels: defaults: avatar: תמונת פרופיל @@ -27,9 +30,12 @@ he: data: מידע display_name: שם להצגה email: כתובת דוא"ל + expires_in: תפוגה לאחר + filtered_languages: שפות מסוננות header: ראשה locale: שפה locked: הפוך חשבון לפרטי + max_uses: מספר מרבי של שימושים new_password: סיסמא חדשה note: אודות otp_attempt: קוד אימות דו-שלבי @@ -37,12 +43,20 @@ he: setting_auto_play_gif: ניגון אוטומטי של גיפים setting_boost_modal: הצגת דיאלוג אישור לפני הדהוד setting_default_privacy: פרטיות ההודעות + setting_default_sensitive: תמיד לתת סימון "רגיש" למדיה + setting_delete_modal: להראות תיבת אישור לפני מחיקת חיצרוץ + setting_noindex: לבקש הסתרה ממנועי חיפוש + setting_reduce_motion: הפחתת תנועה בהנפשות + setting_system_font_ui: להשתמש בגופן ברירת המחדל של המערכת + setting_theme: ערכת העיצוב של האתר + setting_unfollow_modal: להראות תיבת אישור לפני הפסקת מעקב אחרי אחרים severity: חומרה type: סוג יבוא username: שם משתמש interactions: must_be_follower: חסימת התראות משאינם עוקבים must_be_following: חסימת התראות משאינם נעקבים + must_be_following_dm: חסימת הודעות ישירות מכותבים שאינם במעקב notification_emails: digest: שליחת הודעות דוא"ל מסכמות favourite: שליחת דוא"ל כשמחבבים חצרוץ diff --git a/config/locales/simple_form.nl.yml b/config/locales/simple_form.nl.yml index 5637bd848..f2847e7ca 100644 --- a/config/locales/simple_form.nl.yml +++ b/config/locales/simple_form.nl.yml @@ -4,23 +4,23 @@ nl: hints: defaults: avatar: PNG, GIF of JPG. Maximaal 2MB. Wordt teruggeschaald naar 120x120px - digest: Wordt na een lange periode van inactiviteit verzonden, met een samenvatting van vermeldingen tijdens je afwezigheid. + digest: Wordt na een lange periode van inactiviteit verzonden met een samenvatting van vermeldingen tijdens je afwezigheid display_name: one: <span class="name-counter">1</span> teken over other: <span class="name-counter">%{count}</span> tekens over header: PNG, GIF of JPG. Maximaal 2MB. Wordt teruggeschaald naar 700x335px - locked: Vereist dat je handmatig volgers moet accepteren en stelt de privacy van toots standaard in op alleen volgers + locked: Vereist dat je handmatig volgers moet accepteren note: one: <span class="note-counter">1</span> teken over other: <span class="note-counter">%{count}</span> tekens over setting_noindex: Heeft invloed op jouw openbare profiel en toots - setting_theme: Heeft invloed op hoe de webapp van Mastodon er uit ziet, op elk apparaat waarmee je inlogt. + setting_theme: Heeft invloed op hoe Mastodon eruitziet op elk apparaat waarmee je inlogt. imports: data: CSV-bestand dat op een andere Mastodon-server werd geëxporteerd sessions: otp: Voer de tweestaps-aanmeldcode vanaf jouw mobiele telefoon in of gebruik een van jouw herstelcode's. user: - filtered_languages: De geselecteerde talen worden uit de lokale en globale tijdlijn verwijderd. + filtered_languages: De geselecteerde talen worden uit de lokale en globale tijdlijn verwijderd labels: defaults: avatar: Avatar @@ -30,10 +30,12 @@ nl: data: Gegevens display_name: Weergavenaam email: E-mailadres + expires_in: Vervalt na filtered_languages: Talen filteren header: Omslagfoto locale: Taal locked: Maak account besloten + max_uses: Max aantal keer te gebruiken new_password: Nieuwe wachtwoord note: Bio otp_attempt: Tweestaps-aanmeldcode @@ -46,12 +48,15 @@ nl: setting_noindex: Jouw toots niet door zoekmachines laten indexeren setting_reduce_motion: Langzamere animaties setting_system_font_ui: Standaardlettertype van jouw systeem gebruiken + setting_theme: Site thema setting_unfollow_modal: Vraag voor het ontvolgen van iemand een bevestiging + severity: Strengheid type: Importtype username: gebruikersnaam interactions: must_be_follower: Blokkeer meldingen van mensen die jou niet volgen must_be_following: Blokkeer meldingen van mensen die jij niet volgt + must_be_following_dm: Blokkeer directe berichten van mensen die jij niet volgt notification_emails: digest: Verstuur periodiek e-mails met een samenvatting favourite: Verstuur een e-mail wanneer iemand jouw toot als favoriet markeert diff --git a/config/locales/simple_form.pt-BR.yml b/config/locales/simple_form.pt-BR.yml index 9d60e0171..2ed0e3329 100644 --- a/config/locales/simple_form.pt-BR.yml +++ b/config/locales/simple_form.pt-BR.yml @@ -4,7 +4,7 @@ pt-BR: hints: defaults: avatar: PNG, GIF or JPG. Arquivos de até 2MB. Eles serão diminuídos para 120x120px - digest: Enviado após um longo período de inatividade com um resumo das menções que você recebeu em sua ausência. + digest: Enviado após um longo período de inatividade com um resumo das menções que você recebeu em sua ausência display_name: one: <span class="name-counter">1</span> caracter restante other: <span class="name-counter">%{count}</span> caracteres restantes @@ -20,7 +20,7 @@ pt-BR: sessions: otp: Insira o código de autenticação do seu celular ou use um dos códigos de recuperação. user: - filtered_languages: Selecione os idiomas que devem ser removidos de suas timelines públicas. + filtered_languages: Selecione os idiomas que devem ser removidos de suas timelines públicas labels: defaults: avatar: Avatar @@ -30,10 +30,12 @@ pt-BR: data: Dados display_name: Nome de exibição email: Endereço de e-mail + expires_in: Expira em filtered_languages: Idiomas filtrados header: Cabeçalho locale: Idioma locked: Trancar conta + max_uses: Número máximo de usos new_password: Nova senha note: Bio otp_attempt: Código de autenticação em dois passos @@ -54,6 +56,7 @@ pt-BR: interactions: must_be_follower: Bloquear notificações de não-seguidores must_be_following: Bloquear notificações de pessoas que você não segue + must_be_following_dm: Bloquear mensagens diretas de pessoas que você não segue notification_emails: digest: Mandar e-mails com relatórios favourite: Mandar um e-mail quando alguém favoritar suas postagens diff --git a/config/locales/simple_form.pt.yml b/config/locales/simple_form.pt.yml index 0df7a9bb9..a5afd02d3 100644 --- a/config/locales/simple_form.pt.yml +++ b/config/locales/simple_form.pt.yml @@ -30,6 +30,7 @@ pt: password: Palavra-passe setting_boost_modal: Pedir confirmação antes de partilhar um post setting_default_privacy: Privacidade padrão de posts + setting_reduce_motion: Reduzir movimento em animações severity: Severity type: Import type username: Utilizador diff --git a/config/locales/simple_form.zh-CN.yml b/config/locales/simple_form.zh-CN.yml index 23a1f59da..b1888f4e3 100644 --- a/config/locales/simple_form.zh-CN.yml +++ b/config/locales/simple_form.zh-CN.yml @@ -26,10 +26,12 @@ zh-CN: data: 数据文件 display_name: 昵称 email: 电子邮件地址 + expires_in: 失效时间 filtered_languages: 语言过滤 header: 个人资料页横幅图片 locale: 语言 locked: 保护你的帐户(锁嘟) + max_uses: 最大使用次数 new_password: 新密码 note: 简介 otp_attempt: 双重认证代码 diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index ec913113f..cd087c3e8 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -2,10 +2,10 @@ zh-CN: about: about_hashtag_html: 这里展示的是带有话题标签 <strong>#%{hashtag}</strong> 的公开嘟文。如果你想与他们互动,你需要在任意一个 Mastodon 实例或与其兼容的网站上拥有一个帐户。 - about_mastodon_html: Mastodon(长毛象)是一个基于开放式网络协议和自由、开源软件建立的社交网络,有着类似于电子邮件的分布式设计。 + about_mastodon_html: Mastodon(长毛象)是一个建立在开放式网络协议和自由、开源软件之上的社交网络,有着类似于电子邮件的分布式设计。 about_this: 关于本实例 closed_registrations: 这个实例目前没有开放注册。不过,你可以前往其他实例注册一个帐户,同样可以加入到这个网络中哦! - contact: 联络 + contact: 联系方式 contact_missing: 未设定 contact_unavailable: 未公开 description_headline: 关于 %{domain} @@ -46,7 +46,7 @@ zh-CN: posts: 嘟文 posts_with_replies: 嘟文和回复 remote_follow: 跨站关注 - reserved_username: 此用户名已保留 + reserved_username: 此用户名已被保留 roles: admin: 管理员 moderator: 协管 @@ -56,9 +56,9 @@ zh-CN: account: 管理员 create: 新建 created_at: 日期 - created_msg: 管理记录建立成功! + created_msg: 管理备忘建立成功! delete: 删除 - destroyed_msg: 管理记录删除成功! + destroyed_msg: 管理备忘删除成功! accounts: are_you_sure: 你确定吗? by_domain: 域名 @@ -93,7 +93,7 @@ zh-CN: silenced: 已隐藏 suspended: 已封禁 title: 帐户状态 - moderation_notes: 管理记录 + moderation_notes: 管理备忘 most_recent_activity: 最后一次活跃的时间 most_recent_ip: 最后一次活跃的 IP 地址 not_subscribed: 未订阅 @@ -116,7 +116,7 @@ zh-CN: roles: admin: 管理员 moderator: 协管 - user: 用户 + user: 普通用户 salmon_url: Salmon URL search: 搜索 shared_inbox_url: 公用收件箱(Shared Inbox)URL @@ -133,6 +133,32 @@ zh-CN: unsubscribe: 取消订阅 username: 用户名 web: 站内页面 + action_logs: + actions: + confirm_user: "%{name} 确认了用户 %{target} 的电子邮件地址" + create_custom_emoji: "%{name} 添加了新的自定义表情 %{target}" + create_domain_block: "%{name} 屏蔽了域名 %{target}" + create_email_domain_block: "%{name} 屏蔽了电子邮件域名 %{target}" + demote_user: "%{name} 对用户 %{target} 进行了降任操作" + destroy_domain_block: "%{name} 解除了对域名 %{target} 的屏蔽" + destroy_email_domain_block: "%{name} 解除了对电子邮件域名 %{target} 的屏蔽" + destroy_status: "%{name} 删除了 %{target} 的嘟文" + disable_2fa_user: "%{name} 停用了用户 %{target} 的双重认证" + disable_custom_emoji: "%{name} 停用了自定义表情 %{target}" + disable_user: "%{name} 将用户 %{target} 设置为禁止登录" + enable_custom_emoji: "%{name} 启用了自定义表情 %{target}" + enable_user: "%{name} 将用户 %{target} 设置为允许登录" + memorialize_account: "%{name} 将 %{target} 的帐户设置为追悼帐户" + promote_user: "%{name} 对用户 %{target} 进行了升任操作" + reset_password_user: "%{name} 重置了用户 %{target} 的密码" + resolve_report: "%{name} 处理了举报 %{target}" + silence_account: "%{name} 隐藏了用户 %{target}" + suspend_account: "%{name} 封禁了用户 %{target}" + unsilence_account: "%{name} 解除了用户 %{target} 的隐藏状态" + unsuspend_account: "%{name} 解除了用户 %{target} 的封禁状态" + update_custom_emoji: "%{name} 更新了自定义表情 %{target}" + update_status: "%{name} 刷新了 %{target} 的嘟文" + title: 运营日志 custom_emojis: copied_msg: 成功将表情复制到本地 copy: 复制 @@ -156,14 +182,14 @@ zh-CN: unlisted: 已隐藏 update_failed_msg: 表情更新失败! updated_msg: 表情更新成功! - upload: 上传 + upload: 上传新表情 domain_blocks: add_new: 添加新条目 created_msg: 正在进行域名屏蔽 destroyed_msg: 域名屏蔽已撤销 domain: 域名 new: - create: 添加域名屏蔽 + create: 添加屏蔽 hint: 域名屏蔽不会阻止该域名下的帐户进入本站的数据库,但是会对来自这个域名的帐户自动进行预先设置的管理操作。 severity: desc_html: 选择<strong>自动隐藏</strong>会将该域名下帐户发送的嘟文设置为仅关注者可见;选择<strong>自动封禁</strong>会将该域名下帐户发送的嘟文、媒体文件以及个人资料数据从本实例上删除;如果你只是想拒绝接收来自该域名的任何媒体文件,请选择<strong>无</strong>。 @@ -194,7 +220,7 @@ zh-CN: destroyed_msg: 电子邮件域名屏蔽删除成功 domain: 域名 new: - create: 添加屏蔽 + create: 添加域名 title: 添加电子邮件域名屏蔽 title: 电子邮件域名屏蔽 instances: @@ -203,6 +229,13 @@ zh-CN: reset: 重置 search: 搜索 title: 已知实例 + invites: + filter: + all: 全部 + available: 可用 + expired: 已失效 + title: 筛选 + title: 邀请用户 reports: action_taken_by: 操作执行者 are_you_sure: 你确定吗? @@ -241,6 +274,9 @@ zh-CN: deletion: desc_html: 允许所有人删除自己的帐户 title: 开放删除帐户权限 + min_invite_role: + disabled: 没有人 + title: 允许发送邀请的用户组 open: desc_html: 允许任何人建立一个帐户 title: 开放注册 @@ -314,6 +350,8 @@ zh-CN: invalid_reset_password_token: 密码重置令牌无效或已过期。请重新发起重置密码请求。 login: 登录 logout: 登出 + migrate_account: 迁移到另一个帐户 + migrate_account_html: 如果你希望引导其他人关注另一个帐户,请<a href="%{path}">点击这里设置</a>。 register: 注册 resend_confirmation: 重新发送确认邮件 reset_password: 重置密码 @@ -348,7 +386,7 @@ zh-CN: description_html: 继续操作将会<strong>永久地、不可撤销地</strong>删除你帐户中的内容,并冻结你的帐户。你的用户名将会被保留,以防有人冒用你的身份。 proceed: 删除帐户 success_msg: 你的帐户已经成功删除 - warning_html: 我们只能保证本实例上的内容已经被彻底删除。对于已经被广泛传播的内容,它们在本实例以外的某些地方可能仍然可见。此外,失去连接的服务器以及停止接收订阅的服务器上的数据亦无法删除。 + warning_html: 我们只能保证本实例上的内容将会被彻底删除。对于已经被广泛传播的内容,它们在本实例以外的某些地方可能仍然可见。此外,失去连接的服务器以及停止接收订阅的服务器上的数据亦无法删除。 warning_title: 关于已传播的内容的警告 errors: '403': 无权查看 @@ -394,12 +432,37 @@ zh-CN: muting: 隐藏列表 upload: 上传 in_memoriam_html: 谨此悼念。 + invites: + delete: 停用 + expired: 已失效 + expires_in: + '1800': 30 分钟后 + '21600': 6 小时后 + '3600': 1 小时后 + '43200': 12 小时后 + '86400': 1 天后 + expires_in_prompt: 永不过期 + generate: 生成邀请链接 + max_uses: "%{count} 次" + max_uses_prompt: 无限制 + prompt: 生成可供分享的链接以便邀请他人在本实例注册 + table: + expires_at: 失效时间 + uses: 已使用次数 + title: 邀请用户 landing_strip_html: "<strong>%{name}</strong> 是一位来自 %{link_to_root_path} 的用户。如果你想关注他们或者与他们互动,你需要在任意一个 Mastodon 实例或与其兼容的网站上拥有一个帐户。" landing_strip_signup_html: 还没有这种帐户?你可以<a href="%{sign_up_path}">在本站注册一个</a>。 media_attachments: validations: images_and_video: 无法在嘟文中同时插入视频和图片 too_many: 最多只能添加 4 张图片 + migrations: + acct: 新帐户的 用户名@域名 + currently_redirecting: 目前你的个人资料页显示的新帐户是: + proceed: 保存 + updated_msg: 帐户迁移设置更新成功! + moderation: + title: 运营 notification_mailer: digest: body: 自从你最后一次(时间是%{since})登录 %{instance} 以来,你错过了这些嘟嘟滴滴: @@ -508,8 +571,9 @@ zh-CN: development: 开发 edit_profile: 更改个人信息 export: 导出 - followers: 授权的关注者 + followers: 已授权的关注者 import: 导入 + migrate: 帐户迁移 notifications: 通知 preferences: 首选项 settings: 设置 diff --git a/config/settings.yml b/config/settings.yml index 01478972c..5aad45da2 100644 --- a/config/settings.yml +++ b/config/settings.yml @@ -27,7 +27,8 @@ defaults: &defaults reduce_motion: false system_font_ui: false noindex: false - theme: 'glitch' + flavour: 'glitch' + skin: 'default' notification_emails: follow: false reblog: false diff --git a/config/webpack/configuration.js b/config/webpack/configuration.js index 74f75d89b..9cdd6f934 100644 --- a/config/webpack/configuration.js +++ b/config/webpack/configuration.js @@ -1,25 +1,57 @@ // Common configuration for webpacker loaded from config/webpacker.yml -const { basename, dirname, join, resolve } = require('path'); +const { basename, dirname, extname, join, resolve } = require('path'); const { env } = require('process'); const { safeLoad } = require('js-yaml'); -const { readFileSync } = require('fs'); +const { lstatSync, readFileSync } = require('fs'); const glob = require('glob'); const configPath = resolve('config', 'webpacker.yml'); const loadersDir = join(__dirname, 'loaders'); const settings = safeLoad(readFileSync(configPath), 'utf8')[env.NODE_ENV]; -const themeFiles = glob.sync('app/javascript/themes/*/theme.yml'); -const themes = {}; +const flavourFiles = glob.sync('app/javascript/flavours/*/theme.yml'); +const skinFiles = glob.sync('app/javascript/skins/*/*'); +const flavours = {}; -for (let i = 0; i < themeFiles.length; i++) { - const themeFile = themeFiles[i]; - const data = safeLoad(readFileSync(themeFile), 'utf8'); +const core = function () { + const coreFile = resolve('app', 'javascript', 'core', 'theme.yml'); + const data = safeLoad(readFileSync(coreFile), 'utf8'); if (!data.pack_directory) { - data.pack_directory = dirname(themeFile); + data.pack_directory = dirname(coreFile); } - if (data.pack) { - themes[basename(dirname(themeFile))] = data; + return data.pack ? data : {}; +}(); + +for (let i = 0; i < flavourFiles.length; i++) { + const flavourFile = flavourFiles[i]; + const data = safeLoad(readFileSync(flavourFile), 'utf8'); + data.name = basename(dirname(flavourFile)); + data.skin = {}; + if (!data.pack_directory) { + data.pack_directory = dirname(flavourFile); + } + if (data.pack && typeof data.pack === 'object') { + flavours[data.name] = data; + } +} + +for (let i = 0; i < skinFiles.length; i++) { + const skinFile = skinFiles[i]; + let skin = basename(skinFile); + const name = basename(dirname(skinFile)); + if (!flavours[name]) { + continue; + } + const data = flavours[name].skin; + if (lstatSync(skinFile).isDirectory()) { + data[skin] = {}; + const skinPacks = glob.sync(resolve(skinFile, '*.{css,scss}')); + for (let j = 0; j < skinPacks.length; j++) { + const pack = skinPacks[i]; + data[skin][basename(pack, extname(pack))] = pack; + } + } else if ((skin = skin.match(/^(.*)\.s?css$/i))) { + data[skin[1]] = { common: skinFile }; } } @@ -43,7 +75,8 @@ const output = { module.exports = { settings, - themes, + core, + flavours, env, loadersDir, output, diff --git a/config/webpack/generateLocalePacks.js b/config/webpack/generateLocalePacks.js index cd3bed50c..a943589f7 100644 --- a/config/webpack/generateLocalePacks.js +++ b/config/webpack/generateLocalePacks.js @@ -57,7 +57,7 @@ Object.keys(glitchMessages).forEach(function (key) { // import messages from '../../app/javascript/mastodon/locales/${locale}.json'; import localeData from ${JSON.stringify(localeDataPath)}; -import { setLocale } from '../../app/javascript/mastodon/locales'; +import { setLocale } from 'locales'; ${glitchInject} setLocale({messages: mergedMessages, localeData: localeData}); `; diff --git a/config/webpack/shared.js b/config/webpack/shared.js index 5d176db4e..e4b057ffb 100644 --- a/config/webpack/shared.js +++ b/config/webpack/shared.js @@ -1,38 +1,60 @@ // Note: You must restart bin/webpack-dev-server for changes to take effect const webpack = require('webpack'); -const { basename, dirname, join, relative, resolve } = require('path'); +const { basename, join, resolve } = require('path'); const { sync } = require('glob'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const ManifestPlugin = require('webpack-manifest-plugin'); const extname = require('path-complete-extname'); -const { env, settings, themes, output, loadersDir } = require('./configuration.js'); +const { env, settings, core, flavours, output, loadersDir } = require('./configuration.js'); const localePackPaths = require('./generateLocalePacks'); -const extensionGlob = `**/*{${settings.extensions.join(',')}}*`; -const entryPath = join(settings.source_path, settings.source_entry_path); -const packPaths = sync(join(entryPath, extensionGlob)); +function reducePacks (data, into = {}) { + if (!data.pack) { + return into; + } + Object.keys(data.pack).reduce((map, entry) => { + const pack = data.pack[entry]; + if (!pack) { + return map; + } + const packFile = typeof pack === 'string' ? pack : pack.filename; + if (packFile) { + map[data.name ? `flavours/${data.name}/${entry}` : `core/${entry}`] = resolve(data.pack_directory, packFile); + } + return map; + }, into); + if (data.name) { + Object.keys(data.skin).reduce((map, entry) => { + const skin = data.skin[entry]; + const skinName = entry; + if (!skin) { + return map; + } + Object.keys(skin).reduce((map, entry) => { + const packFile = skin[entry]; + if (!packFile) { + return map; + } + map[`skins/${data.name}/${skinName}/${entry}`] = resolve(packFile); + return map; + }, into); + return map; + }, into); + } + return into; +} module.exports = { entry: Object.assign( - packPaths.reduce((map, entry) => { - const localMap = map; - const namespace = relative(join(entryPath), dirname(entry)); - localMap[join(namespace, basename(entry, extname(entry)))] = resolve(entry); - return localMap; - }, {}), + { locales: resolve('app', 'javascript', 'locales') }, localePackPaths.reduce((map, entry) => { const localMap = map; localMap[basename(entry, extname(entry, extname(entry)))] = resolve(entry); return localMap; }, {}), - Object.keys(themes).reduce( - (themePaths, name) => { - const themeData = themes[name]; - themePaths[`themes/${name}`] = resolve(themeData.pack_directory, themeData.pack); - return themePaths; - }, {} - ) + reducePacks(core), + Object.keys(flavours).reduce((map, entry) => reducePacks(flavours[entry], map), {}) ), output: { @@ -64,7 +86,7 @@ module.exports = { writeToFileEmit: true, }), new webpack.optimize.CommonsChunkPlugin({ - name: 'common', + name: 'locales', minChunks: Infinity, // It doesn't make sense to use common chunks with multiple frontend support. }), ], diff --git a/config/webpacker.yml b/config/webpacker.yml index 8d8470651..50d95813a 100644 --- a/config/webpacker.yml +++ b/config/webpacker.yml @@ -2,7 +2,6 @@ default: &default source_path: app/javascript - source_entry_path: packs public_output_path: packs cache_path: tmp/cache/webpacker @@ -13,17 +12,6 @@ default: &default # Reload manifest.json on all requests so we reload latest compiled packs cache_manifest: false - extensions: - - .js - - .sass - - .scss - - .css - - .png - - .svg - - .gif - - .jpeg - - .jpg - development: <<: *default compile: true |