about summary refs log tree commit diff
path: root/config
diff options
context:
space:
mode:
authorDavid Yip <yipdw@member.fsf.org>2017-09-09 14:28:08 -0500
committerDavid Yip <yipdw@member.fsf.org>2017-09-09 14:28:08 -0500
commit514fc908a373306b32b2b6b9fc0d849161d88271 (patch)
tree0f0028e424b43dcf4a59b21ccc7170dfe883746b /config
parentb9f7bc149b2a6abfbdaee83e6992b617b8bdb18e (diff)
parent11bddd31ce33b654ef72b00221715e6026486e7c (diff)
Merge tag 'v1.6.0rc3' into sync/upstream
Diffstat (limited to 'config')
-rw-r--r--config/application.rb1
-rw-r--r--config/initializers/ostatus.rb1
-rw-r--r--config/initializers/paperclip.rb15
-rw-r--r--config/initializers/sidekiq.rb3
-rw-r--r--config/locales/ar.yml31
-rw-r--r--config/locales/bg.yml11
-rw-r--r--config/locales/ca.yml11
-rw-r--r--config/locales/de.yml25
-rw-r--r--config/locales/doorkeeper.de.yml4
-rw-r--r--config/locales/doorkeeper.fa.yml18
-rw-r--r--config/locales/doorkeeper.oc.yml6
-rw-r--r--config/locales/eo.yml11
-rw-r--r--config/locales/es.yml11
-rw-r--r--config/locales/fa.yml11
-rw-r--r--config/locales/fi.yml11
-rw-r--r--config/locales/fr.yml11
-rw-r--r--config/locales/he.yml11
-rw-r--r--config/locales/hr.yml11
-rw-r--r--config/locales/hu.yml11
-rw-r--r--config/locales/id.yml11
-rw-r--r--config/locales/io.yml11
-rw-r--r--config/locales/it.yml11
-rw-r--r--config/locales/ko.yml118
-rw-r--r--config/locales/nl.yml11
-rw-r--r--config/locales/no.yml11
-rw-r--r--config/locales/oc.yml12
-rw-r--r--config/locales/pl.yml11
-rw-r--r--config/locales/pt-BR.yml11
-rw-r--r--config/locales/pt.yml11
-rw-r--r--config/locales/ru.yml11
-rw-r--r--config/locales/simple_form.de.yml6
-rw-r--r--config/locales/th.yml11
-rw-r--r--config/locales/tr.yml11
-rw-r--r--config/locales/uk.yml11
-rw-r--r--config/locales/zh-CN.yml11
-rw-r--r--config/locales/zh-HK.yml11
-rw-r--r--config/locales/zh-TW.yml11
37 files changed, 480 insertions, 35 deletions
diff --git a/config/application.rb b/config/application.rb
index eb89f0a10..49382c2b9 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -10,6 +10,7 @@ require_relative '../app/lib/exceptions'
 require_relative '../lib/paperclip/gif_transcoder'
 require_relative '../lib/paperclip/video_transcoder'
 require_relative '../lib/mastodon/version'
+require_relative '../lib/mastodon/unique_retry_job_middleware'
 
 Dotenv::Railtie.load
 
diff --git a/config/initializers/ostatus.rb b/config/initializers/ostatus.rb
index a885545f8..c00aba0de 100644
--- a/config/initializers/ostatus.rb
+++ b/config/initializers/ostatus.rb
@@ -12,6 +12,7 @@ Rails.application.configure do
   config.x.web_domain   = web_host
   config.x.use_https    = https
   config.x.use_s3       = ENV['S3_ENABLED'] == 'true'
+  config.x.use_swift    = ENV['SWIFT_ENABLED'] == 'true'
 
   config.x.alternate_domains = alternate_domains.split(/\s*,\s*/)
 
diff --git a/config/initializers/paperclip.rb b/config/initializers/paperclip.rb
index 740c1a953..e9f455251 100644
--- a/config/initializers/paperclip.rb
+++ b/config/initializers/paperclip.rb
@@ -40,6 +40,21 @@ if ENV['S3_ENABLED'] == 'true'
     Paperclip::Attachment.default_options[:url]           = ':s3_alias_url'
     Paperclip::Attachment.default_options[:s3_host_alias] = ENV['S3_CLOUDFRONT_HOST']
   end
+elsif ENV['SWIFT_ENABLED'] == 'true'
+  Paperclip::Attachment.default_options.merge!(
+    path: ':class/:attachment/:id_partition/:style/:filename',
+    storage: :fog,
+    fog_credentials: {
+      provider: 'OpenStack',
+      openstack_username: ENV.fetch('SWIFT_USERNAME'),
+      openstack_tenant: ENV.fetch('SWIFT_TENANT'),
+      openstack_api_key: ENV.fetch('SWIFT_PASSWORD'),
+      openstack_auth_url: ENV.fetch('SWIFT_AUTH_URL'),
+    },
+    fog_directory: ENV.fetch('SWIFT_CONTAINER'),
+    fog_host: ENV.fetch('SWIFT_OBJECT_URL'),
+    fog_public: true
+  )
 else
   Paperclip::Attachment.default_options[:path] = (ENV['PAPERCLIP_ROOT_PATH'] || ':rails_root/public/system') + '/:class/:attachment/:id_partition/:style/:filename'
   Paperclip::Attachment.default_options[:url]  = (ENV['PAPERCLIP_ROOT_URL'] || '/system') + '/:class/:attachment/:id_partition/:style/:filename'
diff --git a/config/initializers/sidekiq.rb b/config/initializers/sidekiq.rb
index b70784d79..61e131336 100644
--- a/config/initializers/sidekiq.rb
+++ b/config/initializers/sidekiq.rb
@@ -13,4 +13,7 @@ end
 
 Sidekiq.configure_client do |config|
   config.redis = redis_params
+  config.client_middleware do |chain|
+    chain.add Mastodon::UniqueRetryJobMiddleware
+  end
 end
diff --git a/config/locales/ar.yml b/config/locales/ar.yml
index 575c5114c..604b09600 100644
--- a/config/locales/ar.yml
+++ b/config/locales/ar.yml
@@ -47,16 +47,16 @@ ar:
   datetime:
     distance_in_words:
       about_x_hours: "%{count}سا"
-      about_x_months: "%{count}شهر"
-      about_x_years: "%{count}سنة"
-      almost_x_years: "%{count}سنوات"
-      half_a_minute: Just now
-      less_than_x_minutes: "%{count}د"
+      about_x_months: "%{count} شهر"
+      about_x_years: "%{count} سنة"
+      almost_x_years: "%{count} سنوات"
+      half_a_minute: الآن
+      less_than_x_minutes: "%{count} د"
       less_than_x_seconds: الآن
-      over_x_years: "%{count}سنين"
-      x_days: "%{count}أيام"
+      over_x_years: "%{count} سنين"
+      x_days: "%{count} أيام"
       x_minutes: "%{count}د"
-      x_months: "%{count}شه"
+      x_months: "%{count} شه"
       x_seconds: "%{count}ث"
   exports:
     blocks: قمت بحظر
@@ -94,7 +94,7 @@ ar:
         one: "إشعار واحد منذ زيارتك الأخيرة \U0001F418"
         other: "%{count} إشعارات جديدة منذ زيارتك الأخيرة \U0001F418"
     favourite:
-      body: 'Your status was favourited by %{name}:'
+      body: 'أُعجب %{name} بمنشورك'
       subject: "%{name} favourited your status"
     follow:
       body: "%{name} من متتبعيك الآن !"
@@ -108,6 +108,17 @@ ar:
     reblog:
       body: 'Your status was boosted by %{name}:'
       subject: "%{name} boosted your status"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: التالي
     prev: السابق
@@ -148,7 +159,7 @@ ar:
     enabled_success: تم تفعيل إثبات الهوية المزدوج بنجاح
     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:'
-    setup: Set up
+    setup: تنشيط
     wrong_code: الرمز الذي أدخلته غير صالح. تحقق من صحة الوقت على الخادم و الجهاز.
   users:
     invalid_email: عنوان البريد الإلكتروني غير صالح
diff --git a/config/locales/bg.yml b/config/locales/bg.yml
index e7c3e1ef6..13d0394a3 100644
--- a/config/locales/bg.yml
+++ b/config/locales/bg.yml
@@ -108,6 +108,17 @@ bg:
     reblog:
       body: 'Твоята публикация беше споделена от %{name}:'
       subject: "%{name} сподели публикацията ти"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Напред
     prev: Назад
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index b6bff8288..6a92b7f1b 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -340,6 +340,17 @@ ca:
     reblog:
       body: "%{name} ha retootejat el teu estat"
       subject: "%{name} ha retootejat el teu estat"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Pròxim
     prev: Anterior
diff --git a/config/locales/de.yml b/config/locales/de.yml
index 1f3675f47..de6c86737 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -12,15 +12,15 @@ de:
     source_code: Quellcode
     status_count_after: Beiträge verfassten
     status_count_before: die
-    user_count_after: Benutzer
+    user_count_after: Profile
     user_count_before: Heimat für
   accounts:
     follow: Folgen
     followers: Folgende
     following: Folgt
     nothing_here: Hier gibt es nichts!
-    people_followed_by: Nutzer, denen %{name} folgt
-    people_who_follow: Nutzer, die %{name} folgen
+    people_followed_by: Profile, denen %{name} folgt
+    people_who_follow: Profile, die %{name} folgen
     posts: Beiträge
     remote_follow: Folgen
     unfollow: Entfolgen
@@ -67,7 +67,7 @@ de:
       title: Konten
       undo_silenced: Stummschaltung zurücknehmen
       undo_suspension: Sperre zurücknehmen
-      username: Benutzername
+      username: Profilname
       web: Web
     domain_blocks:
       add_new: Neu hinzufügen
@@ -124,7 +124,7 @@ de:
     settings:
       contact_information:
         email: Eine öffentliche E-Mail-Adresse angeben
-        username: Einen Benutzernamen angeben
+        username: Einen Profilnamen angeben
       registrations:
         closed_message:
           desc_html: Wird auf der Frontseite angezeigt, wenn die Registrierung geschlossen ist<br>Du kannst HTML-Tags benutzen
@@ -208,7 +208,7 @@ de:
       following: Folgeliste
       muting: Stummschaltungsliste
     upload: Hochladen
-  landing_strip_html: "<strong>%{name}</strong> ist ein Benutzer auf %{link_to_root_path}. Du kannst ihm folgen oder mit ihm interagieren, sofern du ein Konto irgendwo in der Fediverse hast."
+  landing_strip_html: "<strong>%{name}</strong> hat ein Profil auf %{link_to_root_path}. Du kannst folgen oder interagieren, sofern du ein Konto irgendwo im Fediversum hast."
   landing_strip_signup_html: Wenn nicht, kannst du dich <a href="%{sign_up_path}">hier anmelden</a>.
   media_attachments:
     validations:
@@ -239,12 +239,23 @@ de:
     reblog:
       body: 'Dein Beitrag wurde von %{name} geteilt:'
       subject: "%{name} teilte deinen Beitrag."
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Vorwärts
     prev: Zurück
     truncate: "&hellip;"
   remote_follow:
-    acct: Dein Nutzername@Domain, von dem aus du dieser Person folgen möchtest.
+    acct: Dein Profilname@Domain, von dem aus du dieser Person folgen möchtest.
     missing_resource: Die erforderliche Weiterleitungs-URL konnte leider in deinem Profil nicht gefunden werden.
     proceed: Weiter
     prompt: 'Du wirst dieser Person folgen:'
diff --git a/config/locales/doorkeeper.de.yml b/config/locales/doorkeeper.de.yml
index b37ba1dbe..b0ba2fb98 100644
--- a/config/locales/doorkeeper.de.yml
+++ b/config/locales/doorkeeper.de.yml
@@ -77,7 +77,7 @@ de:
         invalid_grant: Die bereitgestellte Autorisierung ist inkorrekt, abgelaufen, widerrufen, ist mit einem anderen Client verknüpft oder der Redirection URI stimmt nicht mit der Autorisierungs-Anfrage überein.
         invalid_redirect_uri: Der Redirect-URI in der Anfrage ist ungültig.
         invalid_request: Die Anfrage enthält einen nicht-unterstützten Parameter, ein Parameter fehlt oder sie ist anderweitig fehlerhaft.
-        invalid_resource_owner: Die angegebenen Zugangsdaten für den "Resource Owner" sind inkorrekt oder dieser Benutzer existiert nicht.
+        invalid_resource_owner: Die angegebenen Zugangsdaten für den "Resource Owner" sind inkorrekt oder dieses Profil existiert nicht.
         invalid_scope: Der angeforderte Scope ist inkorrekt, unbekannt oder fehlerhaft.
         invalid_token:
           expired: Der Zugriffstoken ist abgelaufen
@@ -108,6 +108,6 @@ de:
       application:
         title: OAuth-Autorisierung nötig
     scopes:
-      follow: Nutzer folgen, blocken, entblocken und entfolgen
+      follow: Profil folgen, blocken, entblocken und entfolgen
       read: deine Daten lesen
       write: Beiträge von deinem Konto aus veröffentlichen
diff --git a/config/locales/doorkeeper.fa.yml b/config/locales/doorkeeper.fa.yml
index 33f453a3f..343580530 100644
--- a/config/locales/doorkeeper.fa.yml
+++ b/config/locales/doorkeeper.fa.yml
@@ -3,8 +3,10 @@ fa:
   activerecord:
     attributes:
       doorkeeper/application:
-        name: Name
+        name: Application name
         redirect_uri: Redirect URI
+        scopes: Scopes
+        website: Application website
     errors:
       models:
         doorkeeper/application:
@@ -33,18 +35,22 @@ fa:
         redirect_uri: Use one line per URI
         scopes: Separate scopes with spaces. Leave blank to use the default scopes.
       index:
+        application: Application
         callback_url: Callback URL
+        delete: Delete
         name: Name
-        new: New Application
+        new: New application
+        scopes: Scopes
+        show: Show
         title: Your applications
       new:
-        title: New Application
+        title: New application
       show:
         actions: Actions
-        application_id: Application Id
-        callback_urls: Callback urls
+        application_id: Client key
+        callback_urls: Callback URLs
         scopes: Scopes
-        secret: Secret
+        secret: Client secret
         title: 'Application: %{name}'
     authorizations:
       buttons:
diff --git a/config/locales/doorkeeper.oc.yml b/config/locales/doorkeeper.oc.yml
index 3d12c9588..b6aebea48 100644
--- a/config/locales/doorkeeper.oc.yml
+++ b/config/locales/doorkeeper.oc.yml
@@ -5,6 +5,8 @@ oc:
       doorkeeper/application:
         name: Nom
         redirect_uri: URL de redireccion
+        scopes: Encastres
+        website: Aplicacion web
     errors:
       models:
         doorkeeper/application:
@@ -33,9 +35,13 @@ oc:
         redirect_uri: Utilizatz una linha per URI
         scopes: Separatz los encastres amb d’espacis. Daissatz void per utilizar l’encastre per defaut.
       index:
+        application: Aplicacion
         callback_url: URL de rapèl
+        delete: Suprimir
         name: Nom
         new: Nòva aplicacion
+        scopes: Encastres
+        show: Veire
         title: Vòstras aplicacions
       new:
         title: Nòva aplicacion
diff --git a/config/locales/eo.yml b/config/locales/eo.yml
index f8b5ec0ac..21def0c5f 100644
--- a/config/locales/eo.yml
+++ b/config/locales/eo.yml
@@ -103,6 +103,17 @@ eo:
     reblog:
       body: "%{name} diskonigis vian mesaĝon:"
       subject: "%{name} diskonigis vian mesaĝon"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Sekva
     prev: Malsekva
diff --git a/config/locales/es.yml b/config/locales/es.yml
index d2d1de14f..a02330521 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -108,6 +108,17 @@ es:
     reblog:
       body: "%{name} ha retooteado tu estado"
       subject: "%{name} ha retooteado tu estado"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Próximo
     prev: Anterior
diff --git a/config/locales/fa.yml b/config/locales/fa.yml
index 08ffb4484..ba726fc75 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -339,6 +339,17 @@ fa:
     reblog:
       body: "%{name} نوشتهٔ شما را بازبوقید:"
       subject: "%{name} نوشتهٔ شما را بازبوقید"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: بعدی
     prev: قبلی
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index b748f7184..08ae90447 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -103,6 +103,17 @@ fi:
     reblog:
       body: 'Sinun statustasi boostasi %{name}:'
       subject: "%{name} boostasi statustasi"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Seuraava
     prev: Edellinen
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 8029d8bd5..6198a5454 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -358,6 +358,17 @@ fr:
     reblog:
       body: "%{name} a partagé votre statut :"
       subject: "%{name} a partagé votre statut"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Suivant
     prev: Précédent
diff --git a/config/locales/he.yml b/config/locales/he.yml
index f04e8ad62..84d6d8468 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -264,6 +264,17 @@ he:
     reblog:
       body: 'חצרוצך הודהד על ידי %{name}:'
       subject: חצרוצך הודהד על ידי%{name}
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: הבא
     prev: הקודם
diff --git a/config/locales/hr.yml b/config/locales/hr.yml
index 52a8bd35f..581912420 100644
--- a/config/locales/hr.yml
+++ b/config/locales/hr.yml
@@ -105,6 +105,17 @@ hr:
     reblog:
       body: 'Tvoj status je potaknut od %{name}:'
       subject: "%{name} je potakao tvoj status"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Sljedeći
     prev: Prošli
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index 53319a673..77551223f 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -45,6 +45,17 @@ hu:
     reblog:
       body: 'Az állapotod reblogolta %{name}:'
       subject: "%{name} reblogolta az állapotod"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Következő
     prev: Előző
diff --git a/config/locales/id.yml b/config/locales/id.yml
index c76b3d6bb..f3a6649d1 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -254,6 +254,17 @@ id:
     reblog:
       body: 'Status anda di-boost oleh %{name}:'
       subject: "%{name} mem-boost status anda"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Selanjutnya
     prev: Sebelumnya
diff --git a/config/locales/io.yml b/config/locales/io.yml
index 112771ee4..4114e5231 100644
--- a/config/locales/io.yml
+++ b/config/locales/io.yml
@@ -239,6 +239,17 @@ io:
     reblog:
       body: "%{name} diskonocigis tua mesajo:"
       subject: "%{name} diskonocigis tua mesajo"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Sequanta
     prev: Preiranta
diff --git a/config/locales/it.yml b/config/locales/it.yml
index 75d56362a..ec0209bc1 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -108,6 +108,17 @@ it:
     reblog:
       body: 'Il tuo status è stato condiviso da %{name}:'
       subject: "%{name} ha condiviso il tuo status"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Avanti
     prev: Indietro
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index f98059526..6fdc3b985 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -1,29 +1,52 @@
 ---
 ko:
   about:
-    about_mastodon_html: Mastodon 은<em>자유로운 오픈 소스</em>소셜 네트워크입니다. 상용 플랫폼의 대체로써 <em>분산형 구조</em>를 채택해, 여러분의 대화가 한 회사에 독점되는 것을 방지합니다. 신뢰할 수 있는 인스턴스를 선택하세요 &mdash; 어떤 인스턴스를 고르더라도, 누구와도 대화할 수 있습니다. 누구나 자신만의 Mastodon 인스턴스를 만들 수 있으며, Seamless하게 <em>소셜 네트워크</em>에 참가할 수 있습니다.
+    about_mastodon_html: Mastodon은 <em>오픈 소스 기반의</em> 소셜 네트워크 서비스 입니다. 상용 플랫폼의 대체로서 <em>분산형 구조</em>를 채택해, 여러분의 대화가 한 회사에 독점되는 것을 방지합니다. 신뢰할 수 있는 인스턴스를 선택하세요 &mdash; 어떤 인스턴스를 고르더라도, 누구와도 대화할 수 있습니다. 누구나 자신만의 Mastodon 인스턴스를 만들 수 있으며, Seamless하게 <em>소셜 네트워크</em>에 참가할 수 있습니다.
     about_this: 이 인스턴스에 대해서
     closed_registrations: 현재 이 인스턴스에서는 신규 등록을 받고 있지 않습니다.
     contact: 연락처
-    description_headline: "%{domain} 는 무엇인가요?"
+    contact_missing: 미설정
+    contact_unavailable: N/A
+    description_headline: "%{domain} (은)는 무엇인가요?"
     domain_count_after: 개의 인스턴스
-    domain_count_before: 연결됨
+    domain_count_before: 연결된
+    extended_description_html: |
+      <h3>룰을 작성하는 장소</h3>
+      <p>아직 설명이 작성되지 않았습니다.</p>
+    features:
+      humane_approach_body: 다른 SNS의 실패를 교훈삼아, Mastodon은 소셜미디어가 잘못 사용되는 것을 막기 위하여 윤리적인 설계를 추구합니다.
+      humane_approach_title: 보다 배려를 의식한 설계를 추구
+      not_a_product_body: Mastodon은 이익을 추구하는 SNS가 아닙니다. 그러므로 광고와 데이터의 수집 및 분석이 존재하지 않고, 유저를 구속하지도 않습니다.
+      not_a_product_title: 여러분은 사람이며, 상품이 아닙니다.
+      real_conversation_body: 자유롭게 사용할 수 있는 500문자의 메세지와 미디어 경고 내용을 바탕으로, 자기자신을 자유롭게 표현할 수 있습니다.
+      real_conversation_title: 진정한 커뮤니케이션을 위하여
+      within_reach_body: 개발자 친화적인 API에 의해서 실현된 iOS나 Android, 그 외의 여러 Platform들 덕분에 어디서든 친구들과 자유롭게 메세지를 주고 받을 수 있습니다.
+      within_reach_title: 언제나 유저의 곁에서
+    find_another_instance: 다른 인스턴스 찾기
+    generic_description: "%{domain} 은 Mastodon의 인스턴스 입니다."
+    hosted_on: Mastodon hosted on %{domain}
+    learn_more: 자세히
     other_instances: 다른 인스턴스
     source_code: 소스 코드
     status_count_after: Toot
     status_count_before: Toot 수
     user_count_after: 명
     user_count_before: 사용자 수
+    what_is_mastodon: Mastodon이란?
   accounts:
     follow: 팔로우
     followers: 팔로워
     following: 팔로잉
+    media: 미디어
     nothing_here: 아무 것도 없습니다.
     people_followed_by: "%{name} 님이 팔로우 중인 계정"
     people_who_follow: "%{name} 님을 팔로우 중인 계정"
-    posts: 포스트
+    posts: Toot
+    posts_with_replies: Toot와 답장
     remote_follow: 리모트 팔로우
     reserved_username: 이 아이디는 예약되어 있습니다.
+    roles:
+      admin: Admin
     unfollow: 팔로우 해제
   admin:
     accounts:
@@ -38,6 +61,7 @@ ko:
       feed_url: 피드 URL
       followers: 팔로워 수
       follows: 팔로잉 수
+      inbox_url: Inbox URL
       ip: IP
       location:
         all: 전체
@@ -57,8 +81,10 @@ ko:
         alphabetic: 알파벳 순
         most_recent: 최근 활동 순
         title: 순서
+      outbox_url: Outbox URL
       perform_full_suspension: 완전히 정지시키기
       profile_url: 프로필 URL
+      protocol: Protocol
       public: 전체 공개
       push_subscription_expires: PuSH 구독 기간 만료
       redownload: 아바타 업데이트
@@ -90,12 +116,14 @@ ko:
         hint: 도메인 차단은 내부 데이터베이스에 계정이 생성되는 것까지는 막을 수 없지만, 그 도메인에서 생성된 계정에 자동적으로 특정한 모더레이션을 적용하게 할 수 있습니다.
         severity:
           desc_html: "<strong>침묵</strong>은 계정을 팔로우 하지 않고 있는 사람들에겐 계정의 Toot을 보이지 않게 합니다. <strong>정지</strong>는 계정의 컨텐츠, 미디어, 프로필 데이터를 삭제합니다."
+          noop: 없음
           silence: 침묵
           suspend: 정지
         title: 새로운 도메인 차단
       reject_media: 미디어 파일 거부하기
       reject_media_hint: 로컬에 저장된 미디어 파일을 삭제하고, 이후로도 다운로드를 거부합니다. 정지하고는 관계 없습니다.
       severities:
+        noop: 없음
         silence: 침묵
         suspend: 정지
       severity: 심각도
@@ -146,16 +174,41 @@ ko:
         closed_message:
           desc_html: 신규 등록을 받지 않을 때 프론트 페이지에 표시됩니다. <br>HTML 태그를 사용할 수 있습니다.
           title: 신규 등록 정지 시 메시지
+        deletion:
+          desc_html: 유저가 자신의 계정을 삭제할 수 있도록 설정합니다.
+          title: 계정 삭제를 허가함
         open:
-          title: 신규 등록을 받음
+          desc_html: 유저가 자신의 계정을 생성할 수 있도록 설정합니다.
+          title: 신규 계정 등록을 받음
       site_description:
         desc_html: 탑 페이지와 meta 태그에 사용됩니다.<br>HTML 태그, 예를 들어<code>&lt;a&gt;</code> 태그와 <code>&lt;em&gt;</code> 태그를 사용할 수 있습니다.
         title: 사이트 설명
       site_description_extended:
         desc_html: 인스턴스 정보 페이지에 표시됩니다.<br>HTML 태그를 사용할 수 있습니다.
         title: 사이트 상세 설명
+      site_terms:
+        desc_html: 당신은 독자적인 개인정보 취급 방침이나 이용약관, 그 외의 법적 근거를 작성할 수 있습니다. 또한 HTML태그를 사용할 수 있습니다.
+        title: 커스텀 서비스 이용 약관
       site_title: 사이트 이름
+      timeline_preview:
+        desc_html: Landing page에 공개 타임라인을 표시합니다.
+        title: 타임라인 프리뷰
       title: 사이트 설정
+    statuses:
+      back_to_account: 계정으로 돌아가기
+      batch:
+        delete: 삭제
+        nsfw_off: NSFW 끄기
+        nsfw_on: NSFW 켜기
+      execute: 실행
+      failed_to_execute: 실행이 실패하였습니다.
+      media:
+        hide: 미디어 숨기기
+        show: 미디어 보여주기
+        title: 미디어
+      no_media: 미디어 없음
+      title: 계정 Toot
+      with_media: 미디어 있음
     subscriptions:
       callback_url: 콜백 URL
       confirmed: 확인됨
@@ -173,13 +226,21 @@ ko:
     signature: Mastodon %{instance} 인스턴스로에서 알림
     view: 'View:'
   applications:
+    created: 어플리케이션이 작성되었습니다.
+    destroyed: 어플리케이션이 삭제되었습니다.
     invalid_url: 올바르지 않은 URL입니다
+    regenerate_token: 토큰 재생성
+    token_regenerated: 액세스 토큰이 재생성되었습니다.
+    warning: 이 데이터는 다른 사람들과 절대로 공유하지 마세요.
+    your_token: 액세스 토큰
   auth:
+    agreement_html: 이 등록으로 <a href="%{rules_path}">이용규약</a> 과 <a href="%{terms_path}">개인정보 취급 방침</a>에 동의하는 것으로 간주됩니다.
     change_password: 보안
     delete_account: 계정 삭제
     delete_account_html: 계정을 삭제하고 싶은 경우, <a href="%{path}">여기서</a> 삭제할 수 있습니다. 삭제 전 확인 화면이 표시됩니다.
     didnt_get_confirmation: 확인 메일을 받지 못하셨습니까?
     forgot_password: 비밀번호를 잊어버리셨습니까?
+    invalid_reset_password_token: 비밀번호 리셋 토큰이 올바르지 못하거나 기간이 만료되었습니다. 다시 요청해주세요.
     login: 로그인
     logout: 로그아웃
     register: 등록하기
@@ -189,6 +250,12 @@ ko:
   authorize_follow:
     error: 리모트 팔로우 도중 오류가 발생했습니다.
     follow: 팔로우
+    follow_request: '당신은 다음 계정에 팔로우 신청을 했습니다:'
+    following: '성공! 당신은 다음 계정을 팔로우 하고 있습니다:'
+    post_follow:
+      close: 혹은, 당신은 이 윈도우를 닫을 수 있습니다
+      return: 유저 프로필로 돌아가기
+      web: 웹으로 가기
     title: "%{acct} 를 팔로우"
   datetime:
     distance_in_words:
@@ -271,8 +338,8 @@ ko:
         one: "1건의 새로운 알림 \U0001F418"
         other: "%{count}건의 새로운 알림 \U0001F418"
     favourite:
-      body: "%{name} 님이 내 Toot을 즐겨찾기에 등록했습니다."
-      subject: "%{name} 님이 내 Toot을 즐겨찾기에 등록했습니다"
+      body: "%{name} 님이 내 Toot를 즐겨찾기에 등록했습니다."
+      subject: "%{name} 님이 내 Toot를 즐겨찾기에 등록했습니다"
     follow:
       body: "%{name} 님이 나를 팔로우 했습니다"
       subject: "%{name} 님이 나를 팔로우 했습니다"
@@ -285,10 +352,35 @@ ko:
     reblog:
       body: "%{name} 님이 내 Toot을 부스트 했습니다:"
       subject: "%{name} 님이 내 Toot을 부스트 했습니다"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: 다음
     prev: 이전
     truncate: "&hellip;"
+  push_notifications:
+    favourite:
+      title: "%{name} 님이 당신의 Toot를 즐겨찾기에 등록했습니다."
+    follow:
+      title: "%{name} 님이 나를 팔로우 하고 있습니다."
+    group:
+      title: "%{count} 건의 알림"
+    mention:
+      action_boost: 부스트
+      action_expand: 더보기
+      action_favourite: 즐겨찾기
+      title: "%{name} 님이 답장을 보냈습니다"
+    reblog:
+      title: "%{name} 님이 당신의 Toot를 부스트 했습니다."
   remote_follow:
     acct: 아이디@도메인을 입력해 주십시오
     missing_resource: 리디렉션 대상을 찾을 수 없습니다
@@ -330,11 +422,14 @@ ko:
       windows: Windows
       windows_mobile: Windows Mobile
       windows_phone: Windows Phone
+    revoke: 삭제
+    revoke_success: 세션이 삭제되었습니다.
     title: 세션
   settings:
     authorized_apps: 인증된 어플리케이션
     back: 돌아가기
     delete: 계정 삭제
+    development: 개발
     edit_profile: 프로필 편집
     export: 데이터 내보내기
     followers: 신뢰 중인 인스턴스
@@ -342,9 +437,14 @@ ko:
     preferences: 사용자 설정
     settings: 설정
     two_factor_authentication: 2단계 인증
+    your_apps: 애플리케이션
   statuses:
     open_in_web: Web으로 열기
     over_character_limit: 최대 %{max}자까지 입력할 수 있습니다
+    pin_errors:
+      ownership: 다른 사람의 Toot는 고정될 수 없습니다.
+      private: 비공개 Toot는 고정될 수 없습니다.
+      reblog: 부스트는 고정될 수 없습니다.
     show_more: 더 보기
     visibilities:
       private: 비공개
@@ -355,8 +455,11 @@ ko:
       unlisted_long: 누구나 볼 수 있지만, 공개 타임라인에는 표시되지 않습니다
   stream_entries:
     click_to_show: 클릭해서 표시
+    pinned: 고정된 Toot
     reblogged: 님이 부스트 했습니다
     sensitive_content: 민감한 컨텐츠
+  terms:
+    title: "%{instance} 이용약관과 개인정보 취급 방침"
   time:
     formats:
       default: "%Y년 %m월 %d일 %H:%M"
@@ -379,3 +482,4 @@ ko:
   users:
     invalid_email: 메일 주소가 올바르지 않습니다
     invalid_otp_token: 2단계 인증 코드가 올바르지 않습니다
+    signed_in_as: '다음과 같이 로그인 중:'
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index 50ae5508b..2b7a1a511 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -337,6 +337,17 @@ nl:
     reblog:
       body: 'Jouw toot werd door %{name} geboost:'
       subject: "%{name} boostte jouw toot"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Volgende
     prev: Vorige
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 996ea1d97..207f86afc 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -257,6 +257,17 @@
     reblog:
       body: 'Din status ble fremhevd av %{name}:'
       subject: "%{name} fremhevde din status"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Neste
     prev: Forrige
diff --git a/config/locales/oc.yml b/config/locales/oc.yml
index 019d3b196..c3807428b 100644
--- a/config/locales/oc.yml
+++ b/config/locales/oc.yml
@@ -103,6 +103,7 @@ oc:
       title: Comptes
       undo_silenced: Levar lo silenci
       undo_suspension: Levar la suspension
+      unsubscribe: Se desabonar
       username: Nom d’utilizaire
       web: Web
     domain_blocks:
@@ -430,6 +431,17 @@ oc:
     reblog:
       body: "%{name} a tornat partejar vòstre estatut :"
       subject: "%{name} a tornat partejar vòstre estatut"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Seguent
     prev: Precedent
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 246028f9b..842baef45 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -355,6 +355,17 @@ pl:
     reblog:
       body: 'Twój wpis został podbity przez %{name}:'
       subject: Twój wpis został podbity przez %{name}
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Następna
     prev: Poprzednia
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index 6dec2b50a..750120299 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -255,6 +255,17 @@ pt-BR:
     reblog:
       body: 'O seu post foi reblogado por %{name}:'
       subject: "%{name} reblogou o seu post"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Next
     prev: Prev
diff --git a/config/locales/pt.yml b/config/locales/pt.yml
index f6dd32200..140f6b71b 100644
--- a/config/locales/pt.yml
+++ b/config/locales/pt.yml
@@ -182,6 +182,17 @@ pt:
     reblog:
       body: 'O teu post foi partilhado por %{name}:'
       subject: "%{name} partilhou o teu post"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Seguinte
     prev: Anterior
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index 52cb71c60..9ca08831e 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -262,6 +262,17 @@ ru:
     reblog:
       body: 'Ваш статус был продвинут %{name}:'
       subject: "%{name} продвинул(а) Ваш статус"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: След
     prev: Пред
diff --git a/config/locales/simple_form.de.yml b/config/locales/simple_form.de.yml
index 85ec0e4fc..c07dc2846 100644
--- a/config/locales/simple_form.de.yml
+++ b/config/locales/simple_form.de.yml
@@ -6,7 +6,7 @@ de:
         avatar: PNG, GIF oder JPG. Maximal 2MB. Wird auf 120x120px herunterskaliert
         display_name: '<span class="name-counter">%{count}</span> Zeichen verbleiben'
         header: PNG, GIF oder JPG. Maximal 2MB. Wird auf 700x335px herunterskaliert
-        locked: Erlaubt dir, Nutzer zu überprüfen, bevor sie dir folgen können
+        locked: Erlaubt dir, Profile zu überprüfen, bevor sie dir folgen können
         note: '<span class="note-counter">%{count}</span> Zeichen verbleiben'
       imports:
         data: CSV-Datei, die von einer anderen Mastodon-Instanz exportiert wurde
@@ -33,10 +33,10 @@ de:
         setting_default_privacy: Beitragsprivatspäre
         severity: Gewichtung
         type: Importtyp
-        username: Nutzername
+        username: Profilname
       interactions:
         must_be_follower: Benachrichtigungen von Nicht-Folgern blockieren
-        must_be_following: Benachrichtigungen von Nutzern blockieren, denen ich nicht folge
+        must_be_following: Benachrichtigungen von Profilen blockieren, denen ich nicht folge
       notification_emails:
         digest: Schicke Übersichts-E-Mails
         favourite: E-Mail senden, wenn jemand meinen Beitrag favorisiert
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 9d0887928..2db3aee8a 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -257,6 +257,17 @@ th:
     reblog:
       body: 'Your status was boosted by %{name}:'
       subject: "%{name} boosted your status"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: ต่อไป
     prev: ย้อนกลับ
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index 91ef9544c..6aff78fa1 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -255,6 +255,17 @@ tr:
     reblog:
       body: "%{name} durumunuzu boost etti:"
       subject: "%{name} durumunuzu boost etti"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Sonraki
     prev: Önceki
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index 4d12ddf4e..995a682a7 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -250,6 +250,17 @@ uk:
     reblog:
       body: 'Ваш статус було передмухнуто %{name}:'
       subject: "%{name} передмухнув ваш статус"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: Далі
     prev: Назад
diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml
index 0672202a2..95c24d0bc 100644
--- a/config/locales/zh-CN.yml
+++ b/config/locales/zh-CN.yml
@@ -261,6 +261,17 @@ zh-CN:
     reblog:
       body: 你的嘟文得到 %{name} 的转嘟
       subject: "%{name} 转嘟(嘟嘟滴)了你的嘟文"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: 下一页
     prev: 上一页
diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml
index 9d6c74008..aa6b1ea6a 100644
--- a/config/locales/zh-HK.yml
+++ b/config/locales/zh-HK.yml
@@ -256,6 +256,17 @@ zh-HK:
     reblog:
       body: 你的文章得到 %{name} 的轉推
       subject: "%{name} 轉推了你的文章"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: 下一頁
     prev: 上一頁
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index 7065acf9a..299a92da7 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -211,6 +211,17 @@ zh-TW:
     reblog:
       body: 您的文章被 %{name} 轉推
       subject: "%{name} 轉推了您的文章"
+  number:
+    human:
+      decimal_units:
+        format: "%n%u"
+        units:
+          billion: B
+          million: M
+          quadrillion: Q
+          thousand: K
+          trillion: T
+          unit: ''
   pagination:
     next: 下一頁
     prev: 上一頁