about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/helpers/settings_helper.rb1
-rw-r--r--app/javascript/mastodon/containers/mastodon.js2
-rw-r--r--app/javascript/mastodon/locales/ca.json168
-rw-r--r--app/javascript/mastodon/locales/index.js2
-rw-r--r--app/views/user_mailer/confirmation_instructions.ca.html.erb12
-rw-r--r--app/views/user_mailer/confirmation_instructions.ca.text.erb12
-rw-r--r--app/views/user_mailer/password_change.ca.html.erb3
-rw-r--r--app/views/user_mailer/password_change.ca.text.erb3
-rw-r--r--app/views/user_mailer/reset_password_instructions.ca.html.erb8
-rw-r--r--app/views/user_mailer/reset_password_instructions.ca.text.erb8
-rw-r--r--config/application.rb1
-rw-r--r--config/locales/ca.yml342
-rw-r--r--config/locales/devise.ca.yml61
-rw-r--r--config/locales/doorkeeper.ca.yml112
-rw-r--r--config/locales/simple_form.ca.yml49
15 files changed, 784 insertions, 0 deletions
diff --git a/app/helpers/settings_helper.rb b/app/helpers/settings_helper.rb
index 2f8b923e4..172ef33ca 100644
--- a/app/helpers/settings_helper.rb
+++ b/app/helpers/settings_helper.rb
@@ -5,6 +5,7 @@ module SettingsHelper
     en: 'English',
     ar: 'العربية',
     bg: 'Български',
+    ca: 'Català',
     de: 'Deutsch',
     eo: 'Esperanto',
     es: 'Español',
diff --git a/app/javascript/mastodon/containers/mastodon.js b/app/javascript/mastodon/containers/mastodon.js
index 09ee09142..ef2af8041 100644
--- a/app/javascript/mastodon/containers/mastodon.js
+++ b/app/javascript/mastodon/containers/mastodon.js
@@ -45,6 +45,7 @@ import Report from '../features/report';
 import { IntlProvider, addLocaleData } from 'react-intl';
 import ar from 'react-intl/locale-data/ar';
 import bg from 'react-intl/locale-data/bg';
+import ca from 'react-intl/locale-data/ca';
 import de from 'react-intl/locale-data/de';
 import en from 'react-intl/locale-data/en';
 import eo from 'react-intl/locale-data/eo';
@@ -81,6 +82,7 @@ const browserHistory = useRouterHistory(createBrowserHistory)({
 addLocaleData([
   ...ar,
   ...bg,
+  ...ca,
   ...de,
   ...en,
   ...eo,
diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json
new file mode 100644
index 000000000..6a1deabc0
--- /dev/null
+++ b/app/javascript/mastodon/locales/ca.json
@@ -0,0 +1,168 @@
+{
+  "account.block": "Bloquejar @{name}",
+  "account.disclaimer": "Aquest usuari és d'un altra instància. Aquest número podria ser més gran.",
+  "account.edit_profile": "Editar perfil",
+  "account.follow": "Seguir",
+  "account.followers": "Seguidors",
+  "account.follows": "Seguint",
+  "account.follows_you": "et segueix",
+  "account.mention": "Esmentar @{name}",
+  "account.mute": "Silenciar @{name}",
+  "account.posts": "Publicacions",
+  "account.report": "Informe @{name}",
+  "account.requested": "Esperant aprovació",
+  "account.unblock": "Desbloquejar @{name}",
+  "account.unfollow": "Deixar de seguir",
+  "account.unmute": "Treure silenci de @{name}",
+  "boost_modal.combo": "Pots premer {combo} per saltar-te això el proper cop",
+  "column.blocks": "Usuaris bloquejats",
+  "column.community": "Línia de temps local",
+  "column.favourites": "Favorits",
+  "column.follow_requests": "Peticions per seguir-te",
+  "column.home": "Inici",
+  "column.mutes": "Usuaris silenciats",
+  "column.notifications": "Notificacions",
+  "column.public": "Línia de temps federada",
+  "column_back_button.label": "Enrere",
+  "column_subheading.navigation": "Navegació",
+  "column_subheading.settings": "Configuració",
+  "compose_form.lock_disclaimer": "El teu compte no està bloquejat {locked}. Tothom pot seguir-te i veure els teus missatges a seguidors.",
+  "compose_form.lock_disclaimer.lock": "bloquejat",
+  "compose_form.placeholder": "En què estàs pensant?",
+  "compose_form.privacy_disclaimer": "El teu missatge serà lliurat als usuaris esmentats en els dominis {domains}. Confies en {domainsCount, plural, one {that server} other {those servers}}? Els missatges privats només funcionen en instàncies Mastodon. Si {domains} {domainsCount, plural, one {is not a Mastodon instance} other {are not Mastodon instances}}, res indicarà que el teu missatge no es públic i pot ser impulsat (boosted) o ser visible per destinataris no desitjats.",
+  "compose_form.publish": "Toot",
+  "compose_form.sensitive": "Marcar multimèdia com a sensible",
+  "compose_form.spoiler": "Amagar text darrera l'advertència",
+  "compose_form.spoiler_placeholder": "Advertència de contingut",
+  "confirmation_modal.cancel": "Cancel·lar",
+  "confirmations.block.confirm": "Bloquejar",
+  "confirmations.block.message": "Estàs segur que vols bloquejar {name}?",
+  "confirmations.delete.confirm": "Esborrar",
+  "confirmations.delete.message": "Estàs segur que vols esborrar aquest estat?",
+  "confirmations.mute.confirm": "Silenciar",
+  "confirmations.mute.message": "Estàs segur que vols silenciar {name}?",
+  "emoji_button.activity": "Activitat",
+  "emoji_button.flags": "Flags",
+  "emoji_button.food": "Menjar i Beure",
+  "emoji_button.label": "Inserir emoji",
+  "emoji_button.nature": "Natura",
+  "emoji_button.objects": "Objectes",
+  "emoji_button.people": "Gent",
+  "emoji_button.search": "Cercar...",
+  "emoji_button.symbols": "Símbols",
+  "emoji_button.travel": "Viatges i Llocs",
+  "empty_column.community": "La línia de temps local és buida. Escriu alguna cosa públicament per fer rodar la pilota!",
+  "empty_column.hashtag": "Encara no hi ha res amb aquesta etiqueta.",
+  "empty_column.home": "Encara no segueixes ningú. Visita {public} o fes cerca per començar i conèixer altres usuaris.",
+  "empty_column.home.inactivity": "La línia Inici és buida. si has estat inactiu durant un temps es regenerarà aviat.",
+  "empty_column.home.public_timeline": "la línia de temps pública",
+  "empty_column.notifications": "Encara no tens notificacions. Interactua amb altres per iniciar la conversa.",
+  "empty_column.public": "No hi ha res aquí! Escriu alguna cosa públicament o segueix manualment usuaris d'altres instàncies per omplir-ho",
+  "follow_request.authorize": "Autoritzar",
+  "follow_request.reject": "Rebutjar",
+  "getting_started.appsshort": "Apps",
+  "getting_started.faq": "FAQ",
+  "getting_started.heading": "començant",
+  "getting_started.open_source_notice": "Mastodon és un programari de codi obert. Pots contribuir o informar de problemes en GitHub a {github}.",
+  "getting_started.support": "{faq} • {userguide} • {apps}",
+  "getting_started.userguide": "Guia de l'usuari",
+  "home.column_settings.advanced": "Avançat",
+  "home.column_settings.basic": "Bàsic",
+  "home.column_settings.filter_regex": "Filtrar per expressió regular",
+  "home.column_settings.show_reblogs": "Mostrar 'boosts'",
+  "home.column_settings.show_replies": "Mostrar respostes",
+  "home.settings": "Ajustos de columna",
+  "lightbox.close": "Tancar",
+  "loading_indicator.label": "Carregant...",
+  "media_gallery.toggle_visible": "Alternar visibilitat",
+  "missing_indicator.label": "No trobat",
+  "navigation_bar.blocks": "Usuaris bloquejats",
+  "navigation_bar.community_timeline": "Línia de temps Local",
+  "navigation_bar.edit_profile": "Editar perfil",
+  "navigation_bar.favourites": "Favorits",
+  "navigation_bar.follow_requests": "Sol·licituds de seguiment",
+  "navigation_bar.info": "Informació addicional",
+  "navigation_bar.logout": "Tancar sessió",
+  "navigation_bar.mutes": "Usuaris silenciats",
+  "navigation_bar.preferences": "Preferències",
+  "navigation_bar.public_timeline": "Línia de temps federada",
+  "notification.favourite": "{name} ha afavorit el teu estat",
+  "notification.follow": "{name} et segueix",
+  "notification.mention": "{name} t'ha esmentat",
+  "notification.reblog": "{name} ha retootejat el teu estat",
+  "notifications.clear": "Netejar notificacions",
+  "notifications.clear_confirmation": "Estàs segur que vols esborrar permanenment totes les teves notificacions?",
+  "notifications.column_settings.alert": "Notificacions d'escriptori",
+  "notifications.column_settings.favourite": "Favorits:",
+  "notifications.column_settings.follow": "Nous seguidors:",
+  "notifications.column_settings.mention": "Mencions:",
+  "notifications.column_settings.reblog": "Boosts:",
+  "notifications.column_settings.show": "Mostrar en la columna",
+  "notifications.column_settings.sound": "Reproduïr so",
+  "notifications.settings": "Ajustos de columna",
+  "onboarding.done": "Fet",
+  "onboarding.next": "Següent",
+  "onboarding.page_five.public_timelines": "La línia de temps local mostra missatges públics de tothom de {domain}. La línia de temps federada mostra els missatges públics de tothom que la gent de {domain} segueix. Aquests són les línies de temps Públiques, una bona manera de descobrir noves persones.",
+  "onboarding.page_four.home": "La línia de temps d'Inici mostra missatges de les persones que segueixes.",
+  "onboarding.page_four.notifications": "La columna Notificacions mostra quan algú interactua amb tu.",
+  "onboarding.page_one.federation": "Mastodon és una xarxa de servidors independents que s'uneixen per fer una més gran xarxa social. A aquests servidors els hi diem instàncies.",
+  "onboarding.page_one.handle": "Ets a {domain}, per tant el teu usuari complert és {handle}",
+  "onboarding.page_one.welcome": "Benvingut a Mastodon!",
+  "onboarding.page_six.admin": "L'administrador de la teva instància és {admin}.",
+  "onboarding.page_six.almost_done": "Quasi fet...",
+  "onboarding.page_six.appetoot": "Bon Appetoot!",
+  "onboarding.page_six.apps_available": "Hi ha {apps} disponibles per iOS, Android i altres plataformes.",
+  "onboarding.page_six.github": "Mastodon és un programari de codi obert. Pots informar d'errors, sol·licitar característiques o contribuir en el codi a {github}.",
+  "onboarding.page_six.guidelines": "Normes de la comunitat",
+  "onboarding.page_six.read_guidelines": "Si us plau llegeix les {guidelines} de {domain}!",
+  "onboarding.page_six.various_app": "aplicacions per mòbils",
+  "onboarding.page_three.profile": "Edita el teu perfil per canviar el teu avatar, bio i el nom de visualització. Allà també trobaràs altres preferències.",
+  "onboarding.page_three.search": "Utilitza la barra de cerca per trobar gent i mirar etiquetes, com a {illustration} i {introductions}. Per buscar una persona que no està en aquesta instància, utilitza tot el seu nom d'usuari complert.",
+  "onboarding.page_two.compose": "Escriu missatges en la columna de redacció. Pots pujar imatges, canviar la configuració de privacitat i afegir les advertències de contingut amb les icones de sota.",
+  "onboarding.skip": "Omet",
+  "privacy.change": "Ajusta l'estat de privacitat",
+  "privacy.direct.long": "Publicar només als usuaris esmentats",
+  "privacy.direct.short": "Directe",
+  "privacy.private.long": "Publicar només a seguidors",
+  "privacy.private.short": "Només seguidors",
+  "privacy.public.long": "Publicar en línies de temps públiques",
+  "privacy.public.short": "Públic",
+  "privacy.unlisted.long": "No publicar en línies de temps públiques",
+  "privacy.unlisted.short": "No llistat",
+  "reply_indicator.cancel": "Cancel·lar",
+  "report.heading": "Nou informe",
+  "report.placeholder": "Comentaris addicionals",
+  "report.submit": "Enviar",
+  "report.target": "Informes",
+  "search.placeholder": "Cercar",
+  "search_results.total": "{count, number} {count, plural, one {result} other {results}}",
+  "status.cannot_reblog": "Aquesta publicació no pot ser retootejada",
+  "status.delete": "Esborrar",
+  "status.favourite": "Favorit",
+  "status.load_more": "Carrega més",
+  "status.media_hidden": "Multimèdia amagat",
+  "status.mention": "Esmentar @{name}",
+  "status.open": "Ampliar aquest estat",
+  "status.reblog": "Boost",
+  "status.reblogged_by": "{name} ha retootejat",
+  "status.reply": "Respondre",
+  "status.replyAll": "Respondre al tema",
+  "status.report": "Informar sobre @{name}",
+  "status.sensitive_toggle": "Clic per veure",
+  "status.sensitive_warning": "Contingut sensible",
+  "status.show_less": "Mostra menys",
+  "status.show_more": "Mostra més",
+  "tabs_bar.compose": "Compondre",
+  "tabs_bar.federated_timeline": "Federada",
+  "tabs_bar.home": "Inici",
+  "tabs_bar.local_timeline": "Local",
+  "tabs_bar.notifications": "Notificacions",
+  "upload_area.title": "Arrossega i deixa anar per carregar",
+  "upload_button.label": "Afegir multimèdia",
+  "upload_form.undo": "Desfer",
+  "upload_progress.label": "Pujant...",
+  "video_player.expand": "Ampliar el vídeo",
+  "video_player.toggle_sound": "Alternar so",
+  "video_player.toggle_visible": "Alternar visibilitat",
+  "video_player.video_error": "El vídeo no es pot reproduir"
+}
diff --git a/app/javascript/mastodon/locales/index.js b/app/javascript/mastodon/locales/index.js
index 5c32b9a69..2c592026e 100644
--- a/app/javascript/mastodon/locales/index.js
+++ b/app/javascript/mastodon/locales/index.js
@@ -1,5 +1,6 @@
 import ar from './ar.json';
 import en from './en.json';
+import ca from './ca.json';
 import de from './de.json';
 import es from './es.json';
 import fa from './fa.json';
@@ -28,6 +29,7 @@ import tr from './tr.json';
 const locales = {
   ar,
   en,
+  ca,
   de,
   es,
   fa,
diff --git a/app/views/user_mailer/confirmation_instructions.ca.html.erb b/app/views/user_mailer/confirmation_instructions.ca.html.erb
new file mode 100644
index 000000000..3591e2433
--- /dev/null
+++ b/app/views/user_mailer/confirmation_instructions.ca.html.erb
@@ -0,0 +1,12 @@
+<p>Benvingut <%= @resource.email %> !</p>
+
+<p>Has creat un compte a <%= @instance %>.</p>
+
+<p>Per confirmar la subscripció si us plau fes clic en el següent vincle : <br>
+<%= link_to 'Confirmar el meu compte', confirmation_url(@resource, confirmation_token: @token) %>
+
+<p>Si us plau, també fes un cop d'ull als nostres <%= link_to 'termes i condicions', terms_url %>.</p>
+
+<p>Sincerament,<p>
+
+<p>L'equip <%= @instance %> </p>
diff --git a/app/views/user_mailer/confirmation_instructions.ca.text.erb b/app/views/user_mailer/confirmation_instructions.ca.text.erb
new file mode 100644
index 000000000..77cc589e6
--- /dev/null
+++ b/app/views/user_mailer/confirmation_instructions.ca.text.erb
@@ -0,0 +1,12 @@
+Benvingut <%= @resource.email %> !
+
+Acabes de crear un compte a <%= @instance %>.
+
+Per confirmar la subscripció, si us plua fes clic en el següent vincle :
+<%= confirmation_url(@resource, confirmation_token: @token) %>
+
+Si us plau també fes un cop d'ull als nostres termes i condicions <%= terms_url %>
+
+Sincerament,
+
+L'equip <%= @instance %>
diff --git a/app/views/user_mailer/password_change.ca.html.erb b/app/views/user_mailer/password_change.ca.html.erb
new file mode 100644
index 000000000..e10c21e1c
--- /dev/null
+++ b/app/views/user_mailer/password_change.ca.html.erb
@@ -0,0 +1,3 @@
+<p>Hola <%= @resource.email %>!</p>
+
+<p>Aquest correu es per a notificar-te que la teva contrasenya a mastodont.cat ha canviat.</p>
diff --git a/app/views/user_mailer/password_change.ca.text.erb b/app/views/user_mailer/password_change.ca.text.erb
new file mode 100644
index 000000000..c2fdfc82c
--- /dev/null
+++ b/app/views/user_mailer/password_change.ca.text.erb
@@ -0,0 +1,3 @@
+Hola <%= @resource.email %>!
+
+Aquest correu es per a notificar-te que la teva contrasenya a mastodont.cat ha canviat.
diff --git a/app/views/user_mailer/reset_password_instructions.ca.html.erb b/app/views/user_mailer/reset_password_instructions.ca.html.erb
new file mode 100644
index 000000000..6f76c441d
--- /dev/null
+++ b/app/views/user_mailer/reset_password_instructions.ca.html.erb
@@ -0,0 +1,8 @@
+<p>Hola <%= @resource.email %>!</p>
+
+<p>Algú ha sol·licitat un enllaç per canviar la contrasenya a mastodont.cat. Això es pot fer a través del següent enllaç.</p>
+
+<p><%= link_to 'Canviar la contrasenya', edit_password_url(@resource, reset_password_token: @token) %></p>
+
+<p>Si no has sol·licitat aquest canvi, si us plau, ignora aquest correu.</p>
+<p>La teva contrasenya no canviarà fins que accedeix a l'enllaç de dalt per crear-ne una de nova.</p>
diff --git a/app/views/user_mailer/reset_password_instructions.ca.text.erb b/app/views/user_mailer/reset_password_instructions.ca.text.erb
new file mode 100644
index 000000000..ca4c494c3
--- /dev/null
+++ b/app/views/user_mailer/reset_password_instructions.ca.text.erb
@@ -0,0 +1,8 @@
+Hola <%= @resource.email %>!
+
+Algú ha sol·licitat un enllaç per canviar la contrasenya a mastodont.cat. Això es pot fer a través del següent enllaç.
+
+<%= edit_password_url(@resource, reset_password_token: @token) %>
+
+Si no has sol·licitat aquest canvi, si us plau, ignora aquest correu.
+La teva contrasenya no canviarà fins que accedeix a l'enllaç de dalt per crear-ne una de nova.
diff --git a/config/application.rb b/config/application.rb
index 070cccaa5..728fbfaef 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -29,6 +29,7 @@ module Mastodon
       :en,
       :ar,
       :bg,
+      :ca,
       :de,
       :eo,
       :es,
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
new file mode 100644
index 000000000..83c6d1c2a
--- /dev/null
+++ b/config/locales/ca.yml
@@ -0,0 +1,342 @@
+---
+ca:
+  about:
+    about_mastodon: Mastodon és un servidor de xarxa social <em>lliure i de codi obert</em>. Una alternativa <em>descentralitzada</em> a plataformes comercials, que evita el risc que una única companyia monopolitzi la teva comunicació. Qualsevol pot executar Mastodon i participar sense problemes en la <em>xarxa social</em>.
+    about_this: Sobre aquesta instància
+    apps: Apps
+    business_email: 'Correu de negocis:'
+    closed_registrations: Els registres estan actualment tancats en aquesta instància.
+    contact: Contacte
+    description_headline: "Què es %{domain}?"
+    domain_count_after: altres instàncies
+    domain_count_before: Connectat a
+    features:
+      api: API pública per a aplicacions i serveis
+      blocks: Moderació de contingut
+      characters: 500 caràcters per publicació
+      chronology: Les histories son cronològiques
+      ethics: 'Disseny ètic: sense anuncis, sense rastrejos'
+      gifv: Vídeos curts i GIFV
+      privacy: Configuracions de privacitat ajustables
+      public: Història federada
+    features_headline: El que distingeix a Mastodon
+    get_started: Començar
+    links: Vincles
+    other_instances: Altres instàncies
+    source_code: Codi font
+    status_count_after: estats
+    status_count_before: Que han escrit
+    terms: Termes
+    user_count_after: usuaris registrats
+    user_count_before: Tenim
+    version: Versió
+  accounts:
+    follow: Seguir
+    followers: Seguidors
+    following: Seguint
+    nothing_here: "No hi ha res aquí!"
+    people_followed_by: Usuaris a qui %{name} segueix
+    people_who_follow: Usuaris que segueixn a %{name}
+    posts: Toots
+    remote_follow: Seguir
+    unfollow: Deixar de seguir
+  activitypub:
+    activity:
+      announce:
+        name: "%{account_name} shared an activity."
+      create:
+        name: "%{account_name} created a note."
+    outbox:
+      name: "%{account_name}'s Outbox"
+      summary: "A collection of activities from user %{account_name}."
+  admin:
+    accounts:
+      are_you_sure: Estàs segur?
+      confirm: Confirma
+      confirmed: Confirmat
+      disable_two_factor_authentication: Desactivar 2FA
+      display_name: Nom de visualització
+      domain: Domini
+      edit: Editar
+      email: E-mail
+      feed_url: URL del feed
+      followers: Seguidors
+      follows: Segueix
+      location:
+        all: Tot
+        local: Local
+        remote: Remot
+        title: Localització
+      media_attachments: Adjunts multimèdia
+      moderation:
+        all: Tot
+        silenced: Silenciat
+        suspended: Suspès
+        title: Moderació
+      most_recent_activity: Activitat més recent
+      most_recent_ip: IP més recent
+      not_subscribed: No subscrit
+      order:
+        alphabetic: Alfabètic
+        most_recent: Més recent
+        title: Ordre
+      perform_full_suspension: Aplicar suspensió completa
+      profile_url: URL del perfil
+      public: Públic
+      push_subscription_expires: La subscripció PuSH expira
+      reset_password: Restablir la contrasenya
+      salmon_url: URL Salmon
+      show:
+        created_reports: Informes creats per aquest compte
+        report: informe
+        targeted_reports: Informes realitzats sobre aquest compte
+      silence: Silenci
+      statuses: Estats
+      title: Comptes
+      undo_silenced: Desfer silenci
+      undo_suspension: Desfer suspensió
+      username: Nom d'usuari
+      web: Web
+    domain_blocks:
+      add_new: Afegir nou
+      created_msg: El bloqueig de domini ara s'està processant
+      destroyed_msg: El bloqueig de domini s'ha desfet
+      domain: Domini
+      new:
+        create: Crear 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
+        severity:
+          desc_html: "<strong>Silenci</strong> farà les publicacions del compte invisibles a tothom que no l'estigui seguint. Suspendre eliminarà tots els continguts, multimèdia i les dades del perfil del compte."
+          silence: Silenci
+          suspend: Suspendre
+        title: Nou bloqueig de domini
+      reject_media: Rebutjar arxius multimèdia
+      reject_media_hint: Elimina arxius multimèdia emmagatzamats localment i impideix descarregar cap en el futur. Irrellevant per suspensions
+      severities:
+        silence: Silenci
+        suspend: Suspendre
+      severity: Severitat
+      show:
+        affected_accounts:
+          one: Un compte en la base de dades afectat
+          other: "%{count} comptes en la base de dades afectats"
+        retroactive:
+          silence: Desfer el silenci a tots els comptes existents d'aquest domini
+          suspend: Desfer la suspensió de tots els comptes d'aquest domini
+        title: Desfer el bloqueig de domini de %{domain}
+        undo: Desfer
+      title: Bloquejos de domini
+      undo: Desfer
+    instances:
+      account_count: Comptes coneguts
+      domain_name: Domini
+      title: Instàncies conegudes
+    pubsubhubbub:
+      callback_url: Callback URL
+      confirmed: Confirmat
+      expires_in: Expira en
+      last_delivery: Últim lliurament
+      title: PubSubHubbub
+      topic: Tòpic
+    reports:
+      comment:
+        label: Comentari
+        none: Cap
+      delete: Esborra
+      id: ID
+      mark_as_resolved: Marca com a resolt
+      report: 'Informe #%{id}'
+      report_contents: Continguts
+      reported_account: Compte reportat
+      reported_by: Reportat per
+      resolved: Resolt
+      silence_account: Silenciar compte
+      status: Estat
+      suspend_account: Suspendre compte
+      target: Objectiu
+      title: Informes
+      unresolved: No resolt
+      view: Vista
+    settings:
+      contact_information:
+        email: Introduir una adreça de correu electrònic pùblica
+        label: Informació de contacte
+        username: Introduir un nom d'usuari
+      registrations:
+        closed_message:
+          desc_html: Apareix en la primera pàgina quan es tanquen els registres<br>Pot utilitzar etiquetes HTML
+          title: Missatge de registre tancat
+        open:
+          disabled: Desactivat
+          enabled: Activat
+          title: Registre obert
+      setting: Ajust
+      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>&lt;a&gt;</code> i <code>&lt;em&gt;</code>.
+        title: Descripció del lloc
+      site_description_extended:
+        desc_html: Apareix a la pàgina d'informació estesa<br>Pot utilitzar etiquetes HTML
+        title: Descripció estesa del lloc
+      site_title: Títol del lloc
+      title: Configuració del lloc
+    title: Administració
+  application_mailer:
+    settings: 'Canviar preferències de correu: %{link}'
+    signature: Notificacions de Mastodon desde %{instance}
+    view: 'Vista:'
+  applications:
+    invalid_url: La URL proporcionada es incorrecte
+  auth:
+    change_password: Canviar contrasenya
+    didnt_get_confirmation: "¿No vas rebre el correu de confirmació?"
+    forgot_password: "¿Has oblidat la contrassenya?"
+    login: Iniciar sessió
+    logout: Tancar sessió
+    register: Enregistrarse
+    resend_confirmation: Tornar a enviar el correu de confirmació
+    reset_password: Restablir contrasenya
+    set_new_password: Establir nova contrasenya
+  authorize_follow:
+    error: Malauradament, ha ocorregut un error buscant el compte remot
+    follow: Seguir
+    prompt_html: 'Tú (<strong>%{self}</strong>) has solicitat seguir:'
+    title: Seguir %{acct}
+  datetime:
+    distance_in_words:
+      about_x_hours: "%{count}h"
+      about_x_months: "%{count}m"
+      about_x_years: "%{count}y"
+      almost_x_years: "%{count}y"
+      half_a_minute: Ara mateix
+      less_than_x_minutes: "%{count}m"
+      less_than_x_seconds: Ara mateix
+      over_x_years: "%{count}y"
+      x_days: "%{count}d"
+      x_minutes: "%{count}m"
+      x_months: "%{count}m"
+      x_seconds: "%{count}s"
+  errors:
+    '403': No tens permís per veure aquesta pàgina.
+    '404': La pàgina que estàs buscant no existeix.
+    '410': La pàgina que estaves buscant ja no existeix.
+    '422':
+      content: La verificació de seguretat ha fallat. Bloquejes les galetes?
+      title: La verificació de seguretat ha fallat
+    '429': Estrangulat
+  exports:
+    blocks: Persones que has bloquejat
+    csv: CSV
+    follows: Persones que segueixes
+    mutes: Persones apagades (muted)
+    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 teves publicacions privades es lliuren a totes les instàncies on es té 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
+    followers_count: Nombre de seguidors
+    lock_link: Bloqueja el teu compte
+    purge: Eliminar de seguidors
+    success:
+      one: En el procés de bloqueig suau de seguidors d'un domini...
+      other: En el procés de bloqueig suau de seguidors de %{count} dominis...
+    true_privacy_html: Si us plau considera que <strong>la autèntica privacitat només es pot aconseguir amb xifrat d'extrem a extrem</strong>.
+    unlocked_warning_html: Tothom pot seguir-te per veure inmediatament les teves publicacions privades. %{lock_link} per poder revisar i rebutjar seguidors.
+    unlocked_warning_title: El teu compte no està bloquejat
+  generic:
+    changes_saved_msg: "Canvis guardats amb èxit!"
+    powered_by: powered by %{link}
+    save_changes: Guardar canvis
+    validation_errors:
+      one: "Alguna cosa no esta bé! Si us plau, revisi l'error"
+      other: "Alguna cosa no esta bé! Si us plau, revisi %{count} errors més a baix"
+  imports:
+    preface: Pots importar algunes dades, com ara totes les persones que estàs seguint o bloquejant, en el teu compte en aquesta instància, desde arxius exportats desde una altra instància.
+    success: Dades rebudes correctament i seran processades en breu
+    types:
+      blocking: Llista de bloqueajats
+      following: Llista de seguits
+      muting: Llista d'apagats
+    upload: Carregar
+  landing_strip_html: <strong>%{name}</strong> és un usuari/a de <strong>%{domain}</strong>. Pots seguir-lo/la o interactuar amb ell/a si tens un compte a qualsevol node del fediverse. 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 un estat que ja contingui imatges
+      too_many: No es poden adjuntar més de 4 arxius
+  notification_mailer:
+    digest:
+      body: 'Un resum del que et vas perdre en %{instance} desde la teva 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!. T'han seguit %{count} noves persones"
+      subject:
+        one: "1 nova notificació desde la teva darrera visita \U0001F418"
+        other: "%{count} noves notificacions desde la teva darrera visita \U0001F418"
+    favourite:
+      body: 'El teu estat ha estat marcat com a favorit per %{name}:'
+      subject: "%{name} ha marcat com a favorit el teu estat"
+    follow:
+      body: "¡%{name} t'està seguint!"
+      subject: "%{name} t'està seguint"
+    follow_request:
+      body: "%{name} ha sol·licitat seguir-te"
+      subject: 'Seguidor pendent: %{name}'
+    mention:
+      body: 'Has estat mencionat per %{name} en:'
+      subject: Has estat mencionat per %{name}
+    reblog:
+      body: "%{name} ha retootejat el teu estat"
+      subject: "%{name} ha retootejat el teu estat"
+  pagination:
+    next: Pròxim
+    prev: Anterior
+    truncate: "&hellip;"
+  remote_follow:
+    acct: Escriu el usuari@domini de la persona que vols seguir
+    missing_resource: No s'ha pogut trobar la URL de redirecció necessaria per el compte.
+    proceed: Procedir a seguir
+    prompt: 'Seguiràs a:'
+  settings:
+    authorized_apps: Aplicacions autoritzades
+    back: Tornar al inici
+    edit_profile: Editar perfil
+    export: Exportar informació
+    followers: Seguidors autoritzats  
+    import: Importar
+    preferences: Preferències
+    settings: Configuració
+    two_factor_authentication: Autenticació de dos factors
+  statuses:
+    open_in_web: Obrir en la web
+    over_character_limit: Límit de caràcters de %{max} superat
+    show_more: Mostrar més
+    visibilities:
+      private: Només seguidors
+      private_long: Només mostrar a seguidors
+      public: Públic
+      public_long: Tothom pot veure-ho
+      unlisted: No llistat
+      unlisted_long: Tothom ho pot veure, però no es mostra en la història federada
+  stream_entries:
+    click_to_show: Clic per mostrar
+    reblogged: retooteado
+    sensitive_content: Contingut sensible
+  time:
+    formats:
+      default: "%b %d, %Y, %H:%M"
+  two_factor_authentication:
+    code_hint: Introdueix el codi generat per l'aplicació autenticadora per a confirmar
+    description_html: Si habilites la <strong>autenticació de dos factors</strong>, et caldrà tenir el teu telèfon, que generarà tokens per a que puguis iniciar sessió.
+    disable: Deshabilitar
+    enable: Habilitar
+    enabled_success: Autenticació de dos factors activada amb èxit
+    generate_recovery_codes: Generar codis de recuperació
+    instructions_html: "<strong>Escaneja aquest codi QR desde Google Authenticator o una aplicació similar del teu telèfon</strong>. Desde ara, aquesta aplicació generarà tokens que tens que ingresar quan volguis iniciar sessió."
+    lost_recovery_codes: Els codis de recuperació et permeten recuperar l'accés al teu compte si perds el telèfon. Si has perdut els teus codis de recuperació els pots regenerar aquí. Els codis de recuperació anteriors seran anul·lats.
+    manual_instructions: 'Si no pots escanejar el codi QR code i necessites introduir-lo manualment, aquí tens el secret en text plà:'
+    recovery_codes_regenerated: Codis de recuperació regenerats amb èxit
+    recovery_instructions: Si alguna vegada perds l'accéss al telèfon pots utilitzar un dels codis de recuperació a continuació per 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.
+    setup: Establir
+    wrong_code: El codi introduït es invalid! Es correcta la hora del servidor i del dispositiu?
+  users:
+    invalid_email: La direcció de correu es incorrecte
+    invalid_otp_token: Codi de dos factors incorrecte
diff --git a/config/locales/devise.ca.yml b/config/locales/devise.ca.yml
new file mode 100644
index 000000000..4ff51b6e0
--- /dev/null
+++ b/config/locales/devise.ca.yml
@@ -0,0 +1,61 @@
+---
+ca:
+  devise:
+    confirmations:
+      confirmed: La seva adreça de correu ha estat confirmada amb èxit.
+      send_instructions: Rebrà un correu electrònic amb instruccions sobre com confirmar la seva adreça de correu en pocs minuts.
+      send_paranoid_instructions: Si la seva adreça de correu electrònic existeix en la nostre base de dades, rebrà un correu electrònic amb instruccions sobre com confirmar la seva adreça de correu en pocs minuts.
+    failure:
+      already_authenticated: Vosté ja està registrat.
+      inactive: el seu compte encara no està actiu.
+      invalid: Invàlid %{authentication_keys} o contrassenya.
+      last_attempt: Té un intent més abans que el seu compte sigui bloquejat.
+      locked: el seu compte ha estat bloquejat.
+      not_found_in_database: Invàlit %{authentication_keys} o contrassenya.
+      timeout: la sessió ha expirat. Si us plau iniciï sessió de nou per a continuar.
+      unauthenticated: Necessita iniciar sessió o registrar-se abans de continuar.
+      unconfirmed: Ha de confirmar la seva adreça de correu electrònic abans de continuar.
+    mailer:
+      confirmation_instructions:
+        subject: 'Mastodon: Instruccions de confirmació'
+      password_change:
+        subject: 'Mastodon: Contrassenya canviada'
+      reset_password_instructions:
+        subject: 'Mastodon: Instruccions per a reiniciar contrassenya'
+      unlock_instructions:
+        subject: 'Mastodon: Instruccions per a desbloquejar'
+    omniauth_callbacks:
+      failure: No podem autentificar-lo desde %{kind} degut a "%{reason}".
+      success: Autentificat amb èxit desde el compte %{kind} .
+    passwords:
+      no_token: No pot accedir aquesta pàgina sense provenir desde el correu de reinici de contrassenya. Si ve desde el correu de reinici de contrassenya, si us pla asseguri que està emprant la adreça complerta proporcionada.
+      send_instructions: Rebrà un correu electrònic amb instruccions sobre com reiniciar la seva contrassenya en pocs minuts.
+      send_paranoid_instructions: Si el seu correu electrònic existeix en la nostre base de dades, rebrà un enllaç de recuperació de contrassenya en la seva adreça de correu en pocs minuts.
+      updated: La seva contrassenya ha estat canviada amb èxit. Ara ja està registrat.
+      updated_not_active: La seva contrassenya ha estat canviada amb èxit.
+    registrations:
+      destroyed: Adéu! el seu compte ha estat cancel·lat amb èxit. Esperem veure'l aviat de nou.
+      signed_up: Benvingut! S'ha registrat amb èxit.
+      signed_up_but_inactive: S´ha registrat amb èxit. No obstant, no podem identificar-lo perque el seu compte no ha estat activat encara.
+      signed_up_but_locked: S´ha registrat amb èxit. No obstant, no podem identificar-lo perque el seu compte està bloquejat.
+      signed_up_but_unconfirmed: Un missatge amb un enllaç de confirmació ha estat enviat per correu electrònic. Si us plau segueixi l'enllaç per activar el seu compte.
+      update_needs_confirmation: Ha actualitzat el seu compte amb èxit, però necessitem verificar la nova adreça de correu. Si us plau comprovi el correu i segueixi l'enllaç per confirmar la nova adreça de correu.
+      updated: el seu compte ha estat actualitzat amb èxit.
+    sessions:
+      already_signed_out: Ha tancat la sessió amb èxit.
+      signed_in: S'ha registrat amb èxit.
+      signed_out: Ha tancat la sessió amb èxit.
+    unlocks:
+      send_instructions: Rebrà un correu electrònic amb instruccions sobre com desbloquejar el seu compte en pocs minuts.
+      send_paranoid_instructions: Si el seu compte existeix, rebrà un correu electrònic amb instruccions sobre com desbloquejarla en pocs minuts.
+      unlocked: El seu compte ha estat bloquejat amb èxit. Si us plau iniciï sessió per continuar.
+  errors:
+    messages:
+      already_confirmed: ja ha estat confirmat, si us plau intenti iniciar sessió
+      confirmation_period_expired: necessita ser confirmat dins de %{period}, si us plau demani una nova
+      expired: ha expirat, si us plau demani una nova
+      not_found: no trobat
+      not_locked: no va ser bloquejada
+      not_saved:
+        one: '1 error ha prohibit aquest %{resource} de ser guardat:'
+        other: "%{count} errors va prohibir aquest %{resource} de ser guardat:"
diff --git a/config/locales/doorkeeper.ca.yml b/config/locales/doorkeeper.ca.yml
new file mode 100644
index 000000000..ef937c4e6
--- /dev/null
+++ b/config/locales/doorkeeper.ca.yml
@@ -0,0 +1,112 @@
+---
+ca:
+  activerecord:
+    attributes:
+      doorkeeper/application:
+        name: Nombre
+        redirect_uri: URI per a redirecció
+    errors:
+      models:
+        doorkeeper/application:
+          attributes:
+            redirect_uri:
+              fragment_present: no pot contenir un fragment.
+              invalid_uri: ha de ser una URI válid.
+              relative_uri: ha de ser una URI absoluta.
+              secured_uri: ha de ser una URI HTTPS/SSL.
+  doorkeeper:
+    applications:
+      buttons:
+        authorize: Autoritzar
+        cancel: Cancel⋅lar
+        destroy: Destruir
+        edit: Editar
+        submit: Enviar
+      confirmations:
+        destroy: Està segur?
+      edit:
+        title: Editar aplicació
+      form:
+        error: Uuups! Comprovi el formulari
+      help:
+        native_redirect_uri: Utilitzi %{native_redirect_uri} per a proves locals
+        redirect_uri: Utilitzi una línia per URI
+        scopes: Separi els àmbits amb espais. Deixa-ho en blanc per utilitzar els àmbits per defecte.
+      index:
+        callback_url: Callback URL
+        name: Nom
+        new: Nova aplicació
+        title: Les teves aplicacions
+      new:
+        title: Nova aplicació
+      show:
+        actions: Accions
+        application_id: Id de la aplicació
+        callback_urls: Callback urls
+        scopes: Àmbits
+        secret: Secret
+        title: 'Aplicació: %{name}'
+    authorizations:
+      buttons:
+        authorize: Autoritzar
+        deny: Desautoritzar
+      error:
+        title: Ha ocorregut un error
+      new:
+        able_to: Serà capaç de
+        prompt: La aplicació %{client_name} sol⋅licita tenir accés al teu compte
+        title: Es requereix autorizació
+      show:
+        title: Codi de autorització
+    authorized_applications:
+      buttons:
+        revoke: Revocar
+      confirmations:
+        revoke: Està segur?
+      index:
+        application: Aplicació
+        created_at: Creat el
+        date_format: "%A-%m-%d %H:%M:%S"
+        title: Les teves aplicacions autoritzades
+    errors:
+      messages:
+        access_denied: El propietari del recurs o servidor de autorizació ha denegat la petició.
+        credential_flow_not_configured: Les credencials de contrasenya del propietari del recurs han fallat degut a que Doorkeeper.configure.resource_owner_from_credentials està sense configurar.
+        invalid_client: La autentificación del cliente falló debido o a que es un cliente desconocido o no está incluída la autentificación del cliente o el método de autentificación no está confirmado.
+        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_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.
+        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.
+        unauthorized_client: El cliente no está autorizado a realizar esta petición utilizando este método.
+        unsupported_grant_type: El tipo de concesión de autorización no está soportado por el servidor de autorización.
+        unsupported_response_type: El servidor de autorización no soporta este tipo de respuesta.
+    flash:
+      applications:
+        create:
+          notice: Aplicació creada.
+        destroy:
+          notice: Aplicació eliminada.
+        update:
+          notice: Aplicació actualitzada.
+      authorized_applications:
+        destroy:
+          notice: Aplicació revocada.
+    layouts:
+      admin:
+        nav:
+          applications: Aplicacions
+          oauth2_provider: Proveïdor OAuth2
+      application:
+        title: OAuth autorització requerida
+    scopes:
+      follow: seguir, bloquejar, desbloquejar i deixar de seguir comptes
+      read: llegir les dades del teu compte
+      write: publicar en el teu nom
diff --git a/config/locales/simple_form.ca.yml b/config/locales/simple_form.ca.yml
new file mode 100644
index 000000000..7940ed37d
--- /dev/null
+++ b/config/locales/simple_form.ca.yml
@@ -0,0 +1,49 @@
+---
+ca:
+  simple_form:
+    hints:
+      defaults:
+        avatar: PNG, GIF o JPG. Màxim 2MB. Serà escalat a 120x120px
+        display_name: Màxim 30 caràcters
+        header: PNG, GIF o JPG. Màxim 2MB. Serà escalat a 700x335px
+        locked: Requereix que aprovis manualment seguidors i les publicacions seran mostrades només als teus seguidors 
+        note: Màxim 160 caràcters
+      imports:
+        data: Arxiu CSV exportat desde una altra instància de Mastodon
+    labels:
+      defaults:
+        avatar: Avatar
+        confirm_new_password: Confirmar nova contrasenya
+        confirm_password: Confirmar contrasenya
+        current_password: Contrasenya actual
+        data: Informació
+        display_name: Mostrar nom
+        email: Direcció de correu electrònic
+        header: Img. capçalera
+        locale: Idioma
+        locked: Fer privat aquest compte
+        new_password: Nova contrasenya
+        note: Biografia
+        otp_attempt: Codi de dos factors
+        password: Contrasenya
+        setting_auto_play_gif: Auto-reproducció de GIFs animats
+        setting_boost_modal: Mostrar finestra de confirmació abans d'un Retoot
+        setting_default_privacy: Privacitat de publicacions
+        severity: Severitat
+        type: Importar tipus
+        username: Nom d´usuari
+      interactions:
+        must_be_follower: Bloquejar notificacions de persones que no et segueixen
+        must_be_following: Bloquejar notificacions de persones que no segueixes
+      notification_emails:
+        digest: Enviar resum de correus electrònics
+        favourite: Enviar correu electrònic quan algú marqui com a favorit en la teva publicació
+        follow: Enviar correu electrònic quan algú et segueixi
+        follow_request: Enviar correu electrònic quan algú sol·liciti seguir-te
+        mention: Enviar correu electrònic quan algú et mencioni
+        reblog: Enviar correu electrònic quan algú comparteixi la seva publicació
+    'no': 'No'
+    required:
+      mark: "*"
+      text: necessari
+    'yes': Sí