diff --git a/Gemfile b/Gemfile index af2de5e23..1ce7732e3 100644 --- a/Gemfile +++ b/Gemfile @@ -26,7 +26,7 @@ gem 'blurhash', '~> 0.1' gem 'active_model_serializers', '~> 0.10' gem 'addressable', '~> 2.8' -gem 'bootsnap', '~> 1.15.0', require: false +gem 'bootsnap', '~> 1.16.0', require: false gem 'browser' gem 'charlock_holmes', '~> 0.7.7' gem 'chewy', '~> 7.2' diff --git a/Gemfile.lock b/Gemfile.lock index 36659aca3..ab8c48c2f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -122,7 +122,7 @@ GEM debug_inspector (>= 0.0.1) blurhash (0.1.6) ffi (~> 1.14) - bootsnap (1.15.0) + bootsnap (1.16.0) msgpack (~> 1.2) brakeman (5.4.0) browser (4.2.0) @@ -207,7 +207,7 @@ GEM docile (1.4.0) domain_name (0.5.20190701) unf (>= 0.0.5, < 1.0.0) - doorkeeper (5.6.3) + doorkeeper (5.6.4) railties (>= 5) dotenv (2.8.1) dotenv-rails (2.8.1) @@ -229,7 +229,7 @@ GEM tzinfo excon (0.95.0) fabrication (2.30.0) - faker (3.1.0) + faker (3.1.1) i18n (>= 1.8.11, < 2) faraday (1.9.3) faraday-em_http (~> 1.0) @@ -511,7 +511,7 @@ GEM httpclient json-jwt (>= 1.11.0) rack (>= 2.1.0) - rack-proxy (0.7.0) + rack-proxy (0.7.6) rack rack-test (2.0.2) rack (>= 1.3) @@ -611,7 +611,7 @@ GEM parser (>= 3.1.1.0) rubocop-capybara (2.17.0) rubocop (~> 1.41) - rubocop-performance (1.15.2) + rubocop-performance (1.16.0) rubocop (>= 1.7.0, < 2.0) rubocop-ast (>= 0.4.0) rubocop-rails (2.17.4) @@ -744,7 +744,7 @@ GEM addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) - webpacker (5.4.3) + webpacker (5.4.4) activesupport (>= 5.2) rack-proxy (>= 0.6.1) railties (>= 5.2) @@ -770,7 +770,7 @@ DEPENDENCIES better_errors (~> 2.9) binding_of_caller (~> 1.0) blurhash (~> 0.1) - bootsnap (~> 1.15.0) + bootsnap (~> 1.16.0) brakeman (~> 5.4) browser bullet (~> 7.0) diff --git a/app/controllers/api/v1/streaming_controller.rb b/app/controllers/api/v1/streaming_controller.rb index 7cd60615a..b23a60170 100644 --- a/app/controllers/api/v1/streaming_controller.rb +++ b/app/controllers/api/v1/streaming_controller.rb @@ -2,10 +2,10 @@ class Api::V1::StreamingController < Api::BaseController def index - if Rails.configuration.x.streaming_api_base_url != request.host - redirect_to streaming_api_url, status: 301 - else + if Rails.configuration.x.streaming_api_base_url == request.host not_found + else + redirect_to streaming_api_url, status: 301 end end diff --git a/app/controllers/concerns/signature_verification.rb b/app/controllers/concerns/signature_verification.rb index a9950d21f..9c04ab4ca 100644 --- a/app/controllers/concerns/signature_verification.rb +++ b/app/controllers/concerns/signature_verification.rb @@ -227,7 +227,7 @@ module SignatureVerification end def to_header_name(name) - name.split(/-/).map(&:capitalize).join('-') + name.split('-').map(&:capitalize).join('-') end def missing_required_signature_parameters? diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 65017acba..750e15fa3 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -11,7 +11,7 @@ class TagsController < ApplicationController before_action :authenticate_user!, if: :whitelist_mode? before_action :set_local before_action :set_tag - before_action :set_statuses + before_action :set_statuses, if: -> { request.format == :rss } before_action :set_instance_presenter skip_before_action :require_functional!, unless: :whitelist_mode? @@ -44,12 +44,7 @@ class TagsController < ApplicationController end def set_statuses - case request.format&.to_sym - when :json - @statuses = cache_collection(TagFeed.new(@tag, current_account, local: @local).get(PAGE_SIZE, params[:max_id], params[:since_id], params[:min_id]), Status) - when :rss - @statuses = cache_collection(TagFeed.new(@tag, nil, local: @local).get(limit_param), Status) - end + @statuses = cache_collection(TagFeed.new(@tag, nil, local: @local).get(limit_param), Status) end def set_instance_presenter @@ -64,8 +59,6 @@ class TagsController < ApplicationController ActivityPub::CollectionPresenter.new( id: tag_url(@tag), type: :ordered, - size: @tag.statuses.count, - items: @statuses.map { |status| ActivityPub::TagManager.instance.uri_for(status) } ) end end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index af453825b..774643625 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -67,7 +67,7 @@ module ApplicationHelper def link_to_login(name = nil, html_options = nil, &block) target = new_user_session_path - html_options = name if block_given? + html_options = name if block if omniauth_only? && Devise.mappings[:user].omniauthable? && User.omniauth_providers.size == 1 target = omniauth_authorize_path(:user, User.omniauth_providers[0]) @@ -75,7 +75,7 @@ module ApplicationHelper html_options[:method] = :post end - if block_given? + if block link_to(target, html_options, &block) else link_to(name, target, html_options) diff --git a/app/helpers/email_helper.rb b/app/helpers/email_helper.rb index 360783c62..0800601f9 100644 --- a/app/helpers/email_helper.rb +++ b/app/helpers/email_helper.rb @@ -7,7 +7,7 @@ module EmailHelper def email_to_canonical_email(str) username, domain = str.downcase.split('@', 2) - username, = username.gsub('.', '').split('+', 2) + username, = username.delete('.').split('+', 2) "#{username}@#{domain}" end diff --git a/app/helpers/jsonld_helper.rb b/app/helpers/jsonld_helper.rb index 102e4b132..e5787fd47 100644 --- a/app/helpers/jsonld_helper.rb +++ b/app/helpers/jsonld_helper.rb @@ -213,7 +213,7 @@ module JsonLdHelper end end - def load_jsonld_context(url, _options = {}, &_block) + def load_jsonld_context(url, _options = {}, &block) json = Rails.cache.fetch("jsonld:context:#{url}", expires_in: 30.days, raw: true) do request = Request.new(:get, url) request.add_headers('Accept' => 'application/ld+json') @@ -226,6 +226,6 @@ module JsonLdHelper doc = JSON::LD::API::RemoteDocument.new(json, documentUrl: url) - block_given? ? yield(doc) : doc + block ? yield(doc) : doc end end diff --git a/app/javascript/mastodon/components/autosuggest_input.js b/app/javascript/mastodon/components/autosuggest_input.js index 817a41b93..8d2ddb411 100644 --- a/app/javascript/mastodon/components/autosuggest_input.js +++ b/app/javascript/mastodon/components/autosuggest_input.js @@ -51,6 +51,7 @@ export default class AutosuggestInput extends ImmutablePureComponent { searchTokens: PropTypes.arrayOf(PropTypes.string), maxLength: PropTypes.number, lang: PropTypes.string, + spellCheck: PropTypes.string, }; static defaultProps = { @@ -186,7 +187,7 @@ export default class AutosuggestInput extends ImmutablePureComponent { }; render () { - const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus, className, id, maxLength, lang } = this.props; + const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus, className, id, maxLength, lang, spellCheck } = this.props; const { suggestionsHidden } = this.state; return ( @@ -212,6 +213,7 @@ export default class AutosuggestInput extends ImmutablePureComponent { className={className} maxLength={maxLength} lang={lang} + spellCheck={spellCheck} /> diff --git a/app/javascript/mastodon/features/compose/components/compose_form.js b/app/javascript/mastodon/features/compose/components/compose_form.js index a8379c59c..8df144dcc 100644 --- a/app/javascript/mastodon/features/compose/components/compose_form.js +++ b/app/javascript/mastodon/features/compose/components/compose_form.js @@ -243,6 +243,7 @@ class ComposeForm extends ImmutablePureComponent { id='cw-spoiler-input' className='spoiler-input__input' lang={this.props.lang} + spellCheck /> diff --git a/app/javascript/mastodon/features/compose/components/poll_form.js b/app/javascript/mastodon/features/compose/components/poll_form.js index a8bc7d0ac..379ae6821 100644 --- a/app/javascript/mastodon/features/compose/components/poll_form.js +++ b/app/javascript/mastodon/features/compose/components/poll_form.js @@ -93,6 +93,7 @@ class Option extends React.PureComponent { maxLength={100} value={title} lang={lang} + spellCheck onChange={this.handleOptionTitleChange} suggestions={this.props.suggestions} onSuggestionsFetchRequested={this.onSuggestionsFetchRequested} diff --git a/app/javascript/mastodon/features/follow_requests/index.js b/app/javascript/mastodon/features/follow_requests/index.js index d16aa7737..526ae4cde 100644 --- a/app/javascript/mastodon/features/follow_requests/index.js +++ b/app/javascript/mastodon/features/follow_requests/index.js @@ -5,7 +5,6 @@ import ImmutablePureComponent from 'react-immutable-pure-component'; import PropTypes from 'prop-types'; import ImmutablePropTypes from 'react-immutable-proptypes'; import { debounce } from 'lodash'; -import LoadingIndicator from '../../components/loading_indicator'; import Column from '../ui/components/column'; import ColumnBackButtonSlim from '../../components/column_back_button_slim'; import AccountAuthorizeContainer from './containers/account_authorize_container'; @@ -53,16 +52,8 @@ class FollowRequests extends ImmutablePureComponent { render () { const { intl, accountIds, hasMore, multiColumn, locked, domain, isLoading } = this.props; - if (!accountIds) { - return ( - - - - ); - } - const emptyMessage = ; - const unlockedPrependMessage = locked ? null : ( + const unlockedPrependMessage = !locked && accountIds.size > 0 && (
{domain}: {' '} - + + {statusPageUrl && ( + <> + {DividingCircle} + + + )} {canInvite && ( <> {DividingCircle} - + )} {canProfileDirectory && ( <> {DividingCircle} - + )} {DividingCircle} - +

diff --git a/app/javascript/mastodon/initial_state.js b/app/javascript/mastodon/initial_state.js index f58b4eb0e..c9c3a7647 100644 --- a/app/javascript/mastodon/initial_state.js +++ b/app/javascript/mastodon/initial_state.js @@ -134,6 +134,7 @@ export const usePendingItems = getMeta('use_pending_items'); export const version = getMeta('version'); export const translationEnabled = getMeta('translation_enabled'); export const languages = initialState?.languages; +export const statusPageUrl = getMeta('status_page_url'); // Glitch-soc-specific settings export const maxChars = (initialState && initialState.max_toot_chars) || 500; diff --git a/app/javascript/mastodon/locales/af.json b/app/javascript/mastodon/locales/af.json index b5bb1a055..7d7724618 100644 --- a/app/javascript/mastodon/locales/af.json +++ b/app/javascript/mastodon/locales/af.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Kortpadsleutels", "footer.privacy_policy": "Privaatheidsbeleid", "footer.source_code": "Wys bronkode", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Kom aan die gang", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/an.json b/app/javascript/mastodon/locales/an.json index 9ffaa0c59..389c512fe 100644 --- a/app/javascript/mastodon/locales/an.json +++ b/app/javascript/mastodon/locales/an.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Alcorces de teclau", "footer.privacy_policy": "Politica de privacidat", "footer.source_code": "Veyer codigo fuent", + "footer.status": "Status", "generic.saved": "Alzau", "getting_started.heading": "Primers pasos", "hashtag.column_header.tag_mode.all": "y {additional}", diff --git a/app/javascript/mastodon/locales/ar.json b/app/javascript/mastodon/locales/ar.json index 746af3f1e..3e6c989ce 100644 --- a/app/javascript/mastodon/locales/ar.json +++ b/app/javascript/mastodon/locales/ar.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "اختصارات لوحة المفاتيح", "footer.privacy_policy": "سياسة الخصوصية", "footer.source_code": "الاطلاع على الشفرة المصدرية", + "footer.status": "Status", "generic.saved": "تم الحفظ", "getting_started.heading": "استعدّ للبدء", "hashtag.column_header.tag_mode.all": "و {additional}", diff --git a/app/javascript/mastodon/locales/ast.json b/app/javascript/mastodon/locales/ast.json index 18ef12933..23e9b026b 100644 --- a/app/javascript/mastodon/locales/ast.json +++ b/app/javascript/mastodon/locales/ast.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atayos del tecláu", "footer.privacy_policy": "Política de privacidá", "footer.source_code": "Ver el códigu fonte", + "footer.status": "Status", "generic.saved": "Guardóse", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "y {additional}", diff --git a/app/javascript/mastodon/locales/be.json b/app/javascript/mastodon/locales/be.json index 7b422dc94..4dd3a06e0 100644 --- a/app/javascript/mastodon/locales/be.json +++ b/app/javascript/mastodon/locales/be.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Спалучэнні клавіш", "footer.privacy_policy": "Палітыка прыватнасці", "footer.source_code": "Прагледзець зыходны код", + "footer.status": "Статус", "generic.saved": "Захавана", "getting_started.heading": "Пачатак працы", "hashtag.column_header.tag_mode.all": "і {additional}", diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json index 5ddeedeba..cf5df140e 100644 --- a/app/javascript/mastodon/locales/bg.json +++ b/app/javascript/mastodon/locales/bg.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Клавишни комбинации", "footer.privacy_policy": "Политика за поверителност", "footer.source_code": "Преглед на изходния код", + "footer.status": "Status", "generic.saved": "Запазено", "getting_started.heading": "Първи стъпки", "hashtag.column_header.tag_mode.all": "и {additional}", diff --git a/app/javascript/mastodon/locales/bn.json b/app/javascript/mastodon/locales/bn.json index 985958cf1..07609a478 100644 --- a/app/javascript/mastodon/locales/bn.json +++ b/app/javascript/mastodon/locales/bn.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "সংরক্ষণ হয়েছে", "getting_started.heading": "শুরু করা", "hashtag.column_header.tag_mode.all": "এবং {additional}", diff --git a/app/javascript/mastodon/locales/br.json b/app/javascript/mastodon/locales/br.json index 6ded74115..bb19a0452 100644 --- a/app/javascript/mastodon/locales/br.json +++ b/app/javascript/mastodon/locales/br.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Berradennoù klavier", "footer.privacy_policy": "Reolennoù prevezded", "footer.source_code": "Gwelet kod mammenn", + "footer.status": "Status", "generic.saved": "Enrollet", "getting_started.heading": "Loc'hañ", "hashtag.column_header.tag_mode.all": "ha {additional}", diff --git a/app/javascript/mastodon/locales/bs.json b/app/javascript/mastodon/locales/bs.json index 73fb3404c..bd89ec9fd 100644 --- a/app/javascript/mastodon/locales/bs.json +++ b/app/javascript/mastodon/locales/bs.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index 5adec87f7..39e8f12e2 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Dreceres de teclat", "footer.privacy_policy": "Política de privadesa", "footer.source_code": "Mostra el codi font", + "footer.status": "Estat", "generic.saved": "Desat", "getting_started.heading": "Primeres passes", "hashtag.column_header.tag_mode.all": "i {additional}", diff --git a/app/javascript/mastodon/locales/ckb.json b/app/javascript/mastodon/locales/ckb.json index 306764002..8349e34bc 100644 --- a/app/javascript/mastodon/locales/ckb.json +++ b/app/javascript/mastodon/locales/ckb.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "پاشکەوتکرا", "getting_started.heading": "دەست پێکردن", "hashtag.column_header.tag_mode.all": "و {additional}", diff --git a/app/javascript/mastodon/locales/co.json b/app/javascript/mastodon/locales/co.json index 4d94dd2ba..9b75ceeb1 100644 --- a/app/javascript/mastodon/locales/co.json +++ b/app/javascript/mastodon/locales/co.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Salvatu", "getting_started.heading": "Per principià", "hashtag.column_header.tag_mode.all": "è {additional}", diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json index 7ff5aa221..e07ad6ae1 100644 --- a/app/javascript/mastodon/locales/cs.json +++ b/app/javascript/mastodon/locales/cs.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Klávesové zkratky", "footer.privacy_policy": "Zásady ochrany osobních údajů", "footer.source_code": "Zobrazit zdrojový kód", + "footer.status": "Stav", "generic.saved": "Uloženo", "getting_started.heading": "Začínáme", "hashtag.column_header.tag_mode.all": "a {additional}", diff --git a/app/javascript/mastodon/locales/csb.json b/app/javascript/mastodon/locales/csb.json index fbb103d2c..884020da1 100644 --- a/app/javascript/mastodon/locales/csb.json +++ b/app/javascript/mastodon/locales/csb.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/cy.json b/app/javascript/mastodon/locales/cy.json index 407f5dd92..442703ddf 100644 --- a/app/javascript/mastodon/locales/cy.json +++ b/app/javascript/mastodon/locales/cy.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Bysellau brys", "footer.privacy_policy": "Polisi preifatrwydd", "footer.source_code": "Gweld y cod ffynhonnell", + "footer.status": "Status", "generic.saved": "Wedi'i Gadw", "getting_started.heading": "Dechrau", "hashtag.column_header.tag_mode.all": "a {additional}", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index bec230000..1db8b030d 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Tastaturgenveje", "footer.privacy_policy": "Fortrolighedspolitik", "footer.source_code": "Vis kildekode", + "footer.status": "Status", "generic.saved": "Gemt", "getting_started.heading": "Startmenu", "hashtag.column_header.tag_mode.all": "og {additional}", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index 2cdaebe2a..418e985e4 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -247,7 +247,7 @@ "filter_modal.added.expired_explanation": "Diese Filterkategorie ist abgelaufen. Du musst das Ablaufdatum für diese Kategorie ändern.", "filter_modal.added.expired_title": "Abgelaufener Filter!", "filter_modal.added.review_and_configure": "Um diesen Filter zu überprüfen oder noch weiter zu konfigurieren, rufe die {settings_link} auf.", - "filter_modal.added.review_and_configure_title": "Filtereinstellungen", + "filter_modal.added.review_and_configure_title": "Filter-Einstellungen", "filter_modal.added.settings_link": "Einstellungen", "filter_modal.added.short_explanation": "Dieser Post wurde folgender Filterkategorie hinzugefügt: {title}.", "filter_modal.added.title": "Filter hinzugefügt!", @@ -260,7 +260,7 @@ "filter_modal.title.status": "Beitrag per Filter ausblenden", "follow_recommendations.done": "Fertig", "follow_recommendations.heading": "Folge Leuten, deren Beiträge du sehen möchtest! Hier sind einige Vorschläge.", - "follow_recommendations.lead": "Beiträge von Personen, denen du folgst, werden in chronologischer Reihenfolge auf deiner Startseite angezeigt. Hab keine Angst, Fehler zu machen, du kannst den Leuten jederzeit wieder entfolgen!", + "follow_recommendations.lead": "Beiträge von Profilen, denen du folgst, werden in chronologischer Reihenfolge auf deiner Startseite angezeigt. Sei unbesorgt, mal Fehler zu begehen. Du kannst diesen Konten ganz einfach und jederzeit wieder entfolgen.", "follow_request.authorize": "Genehmigen", "follow_request.reject": "Ablehnen", "follow_requests.unlocked_explanation": "Auch wenn dein Konto öffentlich bzw. nicht geschützt ist, haben die Moderator*innen von {domain} gedacht, dass du diesen Follower lieber manuell bestätigen solltest.", @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Tastenkombinationen", "footer.privacy_policy": "Datenschutzerklärung", "footer.source_code": "Quellcode anzeigen", + "footer.status": "Status", "generic.saved": "Gespeichert", "getting_started.heading": "Auf geht's!", "hashtag.column_header.tag_mode.all": "und {additional}", @@ -279,10 +280,10 @@ "hashtag.column_header.tag_mode.none": "ohne {additional}", "hashtag.column_settings.select.no_options_message": "Keine Vorschläge gefunden", "hashtag.column_settings.select.placeholder": "Hashtags eingeben …", - "hashtag.column_settings.tag_mode.all": "All diese", + "hashtag.column_settings.tag_mode.all": "Alle", "hashtag.column_settings.tag_mode.any": "Eines von diesen", "hashtag.column_settings.tag_mode.none": "Keines von diesen", - "hashtag.column_settings.tag_toggle": "Zusätzliche Hashtags für diese Spalte einfügen", + "hashtag.column_settings.tag_toggle": "Zusätzliche Hashtags dieser Spalte hinzufügen", "hashtag.follow": "Hashtag folgen", "hashtag.unfollow": "Hashtag entfolgen", "home.column_settings.basic": "Einfach", @@ -308,7 +309,7 @@ "keyboard_shortcuts.back": "zurücknavigieren", "keyboard_shortcuts.blocked": "Liste gesperrter Profile öffnen", "keyboard_shortcuts.boost": "Beitrag teilen", - "keyboard_shortcuts.column": "Spalte fokussieren", + "keyboard_shortcuts.column": "Auf die aktuelle Spalte fokussieren", "keyboard_shortcuts.compose": "Eingabefeld fokussieren", "keyboard_shortcuts.description": "Beschreibung", "keyboard_shortcuts.direct": "Direktnachrichten öffnen", @@ -340,8 +341,8 @@ "keyboard_shortcuts.unfocus": "Eingabefeld/Suche nicht mehr fokussieren", "keyboard_shortcuts.up": "sich in der Liste hinaufbewegen", "lightbox.close": "Schließen", - "lightbox.compress": "Bildansicht komprimieren", - "lightbox.expand": "Bildansicht erweitern", + "lightbox.compress": "Bildansicht verkleinern", + "lightbox.expand": "Bildansicht vergrößern", "lightbox.next": "Vor", "lightbox.previous": "Zurück", "limited_account_hint.action": "Profil trotzdem anzeigen", @@ -377,7 +378,7 @@ "navigation_bar.discover": "Entdecken", "navigation_bar.domain_blocks": "Gesperrte Domains", "navigation_bar.edit_profile": "Profil bearbeiten", - "navigation_bar.explore": "Entdecken", + "navigation_bar.explore": "Erforschen", "navigation_bar.favourites": "Favoriten", "navigation_bar.filters": "Stummgeschaltete Wörter", "navigation_bar.follow_requests": "Follower-Anfragen", @@ -393,7 +394,7 @@ "navigation_bar.search": "Suche", "navigation_bar.security": "Sicherheit", "not_signed_in_indicator.not_signed_in": "Du musst dich anmelden, um auf diesen Inhalt zugreifen zu können.", - "notification.admin.report": "{target} wurde von {name} gemeldet", + "notification.admin.report": "{name} meldete {target}", "notification.admin.sign_up": "{name} registrierte sich", "notification.favourite": "{name} hat deinen Beitrag favorisiert", "notification.follow": "{name} folgt dir jetzt", @@ -451,7 +452,7 @@ "poll.votes": "{votes, plural, one {# Stimme} other {# Stimmen}}", "poll_button.add_poll": "Umfrage erstellen", "poll_button.remove_poll": "Umfrage entfernen", - "privacy.change": "Sichtbarkeit des Beitrags anpassen", + "privacy.change": "Sichtbarkeit anpassen", "privacy.direct.long": "Nur für die genannten Profile sichtbar", "privacy.direct.short": "Nur erwähnte Profile", "privacy.private.long": "Nur für deine Follower sichtbar", @@ -465,16 +466,16 @@ "refresh": "Aktualisieren", "regeneration_indicator.label": "Wird geladen …", "regeneration_indicator.sublabel": "Deine Startseite wird gerade vorbereitet!", - "relative_time.days": "{number}T", + "relative_time.days": "{number} T.", "relative_time.full.days": "vor {number, plural, one {# Tag} other {# Tagen}}", "relative_time.full.hours": "vor {number, plural, one {# Stunde} other {# Stunden}}", "relative_time.full.just_now": "soeben", "relative_time.full.minutes": "vor {number, plural, one {# Minute} other {# Minuten}}", "relative_time.full.seconds": "vor {number, plural, one {1 Sekunde} other {# Sekunden}}", - "relative_time.hours": "{number} Std", + "relative_time.hours": "{number} Std.", "relative_time.just_now": "jetzt", - "relative_time.minutes": "{number} min", - "relative_time.seconds": "{number} sek", + "relative_time.minutes": "{number} Min.", + "relative_time.seconds": "{number} Sek.", "relative_time.today": "heute", "reply_indicator.cancel": "Abbrechen", "report.block": "Sperren", @@ -530,7 +531,7 @@ "search_results.accounts": "Profile", "search_results.all": "Alles", "search_results.hashtags": "Hashtags", - "search_results.nothing_found": "Nichts für diese Suchbegriffe gefunden", + "search_results.nothing_found": "Nichts zu diesen Suchbegriffen gefunden", "search_results.statuses": "Beiträge", "search_results.statuses_fts_disabled": "Die Suche nach Beitragsinhalten ist auf diesem Mastodon-Server deaktiviert.", "search_results.title": "Suchergebnisse für {q}", @@ -544,9 +545,9 @@ "sign_in_banner.create_account": "Konto erstellen", "sign_in_banner.sign_in": "Anmelden", "sign_in_banner.text": "Melde dich an, um Profilen oder Hashtags zu folgen, Beiträge zu favorisieren, zu teilen und auf sie zu antworten. Du kannst auch von deinem Konto aus auf einem anderen Server interagieren.", - "status.admin_account": "Moderationsoberfläche für @{name} öffnen", - "status.admin_domain": "Moderationsoberfläche für {domain} öffnen", - "status.admin_status": "Diesen Beitrag in der Moderationsoberfläche öffnen", + "status.admin_account": "@{name} moderieren", + "status.admin_domain": "{domain} moderieren", + "status.admin_status": "Beitrag moderieren", "status.block": "@{name} blockieren", "status.bookmark": "Beitrag als Lesezeichen setzen", "status.cancel_reblog_private": "Teilen des Beitrags rückgängig machen", @@ -595,7 +596,7 @@ "status.show_original": "Ursprünglichen Beitrag anzeigen", "status.translate": "Übersetzen", "status.translated_from_with": "Aus {lang} mittels {provider} übersetzt", - "status.uncached_media_warning": "Nicht verfügbar", + "status.uncached_media_warning": "Medien-Datei auf diesem Server noch nicht verfügbar", "status.unmute_conversation": "Stummschaltung der Unterhaltung aufheben", "status.unpin": "Vom Profil lösen", "subscribed_languages.lead": "Nach der Änderung werden nur noch Beiträge in den ausgewählten Sprachen in den Timelines deiner Startseite und deiner Listen angezeigt. Wähle keine Sprache aus, um alle Beiträge zu sehen.", @@ -646,7 +647,7 @@ "upload_progress.label": "Wird hochgeladen …", "upload_progress.processing": "Wird verarbeitet…", "video.close": "Video schließen", - "video.download": "Datei herunterladen", + "video.download": "Video-Datei herunterladen", "video.exit_fullscreen": "Vollbild verlassen", "video.expand": "Video vergrößern", "video.fullscreen": "Vollbild", diff --git a/app/javascript/mastodon/locales/defaultMessages.json b/app/javascript/mastodon/locales/defaultMessages.json index f36929df5..c09411f65 100644 --- a/app/javascript/mastodon/locales/defaultMessages.json +++ b/app/javascript/mastodon/locales/defaultMessages.json @@ -4075,6 +4075,10 @@ "defaultMessage": "About", "id": "footer.about" }, + { + "defaultMessage": "Status", + "id": "footer.status" + }, { "defaultMessage": "Invite people", "id": "footer.invite" diff --git a/app/javascript/mastodon/locales/el.json b/app/javascript/mastodon/locales/el.json index 1ea158054..5c41b7547 100644 --- a/app/javascript/mastodon/locales/el.json +++ b/app/javascript/mastodon/locales/el.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Συντομεύσεις πληκτρολογίου", "footer.privacy_policy": "Πολιτική απορρήτου", "footer.source_code": "Προβολή πηγαίου κώδικα", + "footer.status": "Κατάσταση", "generic.saved": "Αποθηκεύτηκε", "getting_started.heading": "Αφετηρία", "hashtag.column_header.tag_mode.all": "και {additional}", diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json index a787a747b..4ce198b90 100644 --- a/app/javascript/mastodon/locales/en-GB.json +++ b/app/javascript/mastodon/locales/en-GB.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json index 5707e1035..534428d52 100644 --- a/app/javascript/mastodon/locales/en.json +++ b/app/javascript/mastodon/locales/en.json @@ -276,6 +276,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json index 99f455e03..fc2e9d5e7 100644 --- a/app/javascript/mastodon/locales/eo.json +++ b/app/javascript/mastodon/locales/eo.json @@ -3,7 +3,7 @@ "about.contact": "Kontakto:", "about.disclaimer": "Mastodon estas libera, malfermitkoda programo kaj varmarko de la firmao Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Kialo ne disponebla", - "about.domain_blocks.preamble": "Mastodono ebligas vidi la enhavojn de uzantoj el aliaj serviloj en la Fediverso, kaj komuniki kun ili. Jen la limigoj deciditaj de tiu ĉi servilo mem.", + "about.domain_blocks.preamble": "Mastodon ĝenerale rajtigas vidi la enhavojn de uzantoj el aliaj serviloj en la fediverso, kaj komuniki kun ili. Jen la limigoj deciditaj de tiu ĉi servilo mem.", "about.domain_blocks.silenced.explanation": "Vi ne ĝenerale vidos profilojn kaj enhavojn de ĉi tiu servilo, krom se vi eksplice trovas aŭ estas permesita de via sekvato.", "about.domain_blocks.silenced.title": "Limigita", "about.domain_blocks.suspended.explanation": "Neniuj datumoj el tiu servilo estos prilaboritaj, konservitaj, aŭ interŝanĝitaj, do neeblas interagi aŭ komuniki kun uzantoj de tiu servilo.", @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Fulmoklavoj", "footer.privacy_policy": "Politiko de privateco", "footer.source_code": "Montri fontkodon", + "footer.status": "Stato", "generic.saved": "Konservita", "getting_started.heading": "Por komenci", "hashtag.column_header.tag_mode.all": "kaj {additional}", @@ -460,7 +461,7 @@ "privacy.public.short": "Publika", "privacy.unlisted.long": "Videbla por ĉiuj, sed ekskluzive el la funkcio de esploro", "privacy.unlisted.short": "Nelistigita", - "privacy_policy.last_updated": "Laste ĝisdatigita sur {date}", + "privacy_policy.last_updated": "Laste ĝisdatigita en {date}", "privacy_policy.title": "Politiko de privateco", "refresh": "Refreŝigu", "regeneration_indicator.label": "Ŝargado…", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index f490d29cb..c37d8f62d 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atajos de teclado", "footer.privacy_policy": "Política de privacidad", "footer.source_code": "Ver código fuente", + "footer.status": "Estado", "generic.saved": "Guardado", "getting_started.heading": "Inicio de Mastodon", "hashtag.column_header.tag_mode.all": "y {additional}", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index c932c1af2..b371e0e9e 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atajos de teclado", "footer.privacy_policy": "Política de privacidad", "footer.source_code": "Ver código fuente", + "footer.status": "Status", "generic.saved": "Guardado", "getting_started.heading": "Primeros pasos", "hashtag.column_header.tag_mode.all": "y {additional}", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index e9ba8f102..61800fd6b 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atajos de teclado", "footer.privacy_policy": "Política de privacidad", "footer.source_code": "Ver código fuente", + "footer.status": "Estado", "generic.saved": "Guardado", "getting_started.heading": "Primeros pasos", "hashtag.column_header.tag_mode.all": "y {additional}", diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json index de0f9d971..0f9f33080 100644 --- a/app/javascript/mastodon/locales/et.json +++ b/app/javascript/mastodon/locales/et.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Kiirklahvid", "footer.privacy_policy": "Isikuandmete kaitse", "footer.source_code": "Lähtekood", + "footer.status": "Olek", "generic.saved": "Salvestatud", "getting_started.heading": "Alustamine", "hashtag.column_header.tag_mode.all": "ja {additional}", diff --git a/app/javascript/mastodon/locales/eu.json b/app/javascript/mastodon/locales/eu.json index 845606972..39eaeda02 100644 --- a/app/javascript/mastodon/locales/eu.json +++ b/app/javascript/mastodon/locales/eu.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Lasterbideak", "footer.privacy_policy": "Pribatutasun politika", "footer.source_code": "Ikusi iturburu kodea", + "footer.status": "Egoera", "generic.saved": "Gordea", "getting_started.heading": "Menua", "hashtag.column_header.tag_mode.all": "eta {osagarria}", diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json index 6fc890410..10c1b12fb 100644 --- a/app/javascript/mastodon/locales/fa.json +++ b/app/javascript/mastodon/locales/fa.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "میان‌برهای صفحه‌کلید", "footer.privacy_policy": "سیاست محرمانگی", "footer.source_code": "نمایش کد مبدأ", + "footer.status": "Status", "generic.saved": "ذخیره شده", "getting_started.heading": "آغاز کنید", "hashtag.column_header.tag_mode.all": "و {additional}", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index daaab3857..a1decf1ed 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Pikanäppäimet", "footer.privacy_policy": "Tietosuojakäytäntö", "footer.source_code": "Näytä lähdekoodi", + "footer.status": "Tila", "generic.saved": "Tallennettu", "getting_started.heading": "Näin pääset alkuun", "hashtag.column_header.tag_mode.all": "ja {additional}", diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index 60d82ccd8..adcb3aae0 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Knappasnarvegir", "footer.privacy_policy": "Privatlívspolitikkur", "footer.source_code": "Vís keldukotuna", + "footer.status": "Støða", "generic.saved": "Goymt", "getting_started.heading": "At byrja", "hashtag.column_header.tag_mode.all": "og {additional}", diff --git a/app/javascript/mastodon/locales/fr-QC.json b/app/javascript/mastodon/locales/fr-QC.json index 050fd9002..1ad8e9353 100644 --- a/app/javascript/mastodon/locales/fr-QC.json +++ b/app/javascript/mastodon/locales/fr-QC.json @@ -128,7 +128,7 @@ "compose.language.search": "Rechercher des langues…", "compose_form.direct_message_warning_learn_more": "En savoir plus", "compose_form.encryption_warning": "Les publications sur Mastodon ne sont pas chiffrées de bout en bout. Veuillez ne partager aucune information sensible sur Mastodon.", - "compose_form.hashtag_warning": "Ce message n'apparaîtra pas dans les listes de hashtags, car il n'est pas public. Seuls les messages publics peuvent appaître dans les recherches par hashtags.", + "compose_form.hashtag_warning": "Ce message n'apparaîtra pas dans les listes de hashtags, car il n'est pas public. Seuls les messages publics peuvent apparaître dans les recherches par hashtags.", "compose_form.lock_disclaimer": "Votre compte n’est pas {locked}. Tout le monde peut vous suivre et voir vos publications privés.", "compose_form.lock_disclaimer.lock": "verrouillé", "compose_form.placeholder": "À quoi pensez-vous?", @@ -221,7 +221,7 @@ "empty_column.favourites": "Personne n’a encore ajouté cette publication à ses favoris. Lorsque quelqu’un le fera, elle apparaîtra ici.", "empty_column.follow_recommendations": "Il semble qu’aucune suggestion n’ait pu être générée pour vous. Vous pouvez essayer d’utiliser la recherche pour découvrir des personnes que vous pourriez connaître ou explorer les hashtags populaires.", "empty_column.follow_requests": "Vous n’avez pas encore de demande d'abonnement. Lorsque vous en recevrez une, elle apparaîtra ici.", - "empty_column.followed_tags": "You have not followed any hashtags yet. When you do, they will show up here.", + "empty_column.followed_tags": "Vous n'avez pas encore suivi d'hashtags. Lorsque vous le ferez, ils apparaîtront ici.", "empty_column.hashtag": "Il n’y a pas encore de contenu associé à ce hashtag.", "empty_column.home": "Votre fil d'accueil est vide! Suivez plus de personnes pour la remplir. {suggestions}", "empty_column.home.suggestions": "Voir quelques suggestions", @@ -264,7 +264,7 @@ "follow_request.authorize": "Autoriser", "follow_request.reject": "Rejeter", "follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir peut-être consulter manuellement les demandes d'abonnement de ces comptes.", - "followed_tags": "Followed hashtags", + "followed_tags": "Hashtags suivis", "footer.about": "À propos", "footer.directory": "Annuaire des profils", "footer.get_app": "Télécharger l’application", @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Raccourcis clavier", "footer.privacy_policy": "Politique de confidentialité", "footer.source_code": "Voir le code source", + "footer.status": "Status", "generic.saved": "Sauvegardé", "getting_started.heading": "Pour commencer", "hashtag.column_header.tag_mode.all": "et {additional}", @@ -381,7 +382,7 @@ "navigation_bar.favourites": "Favoris", "navigation_bar.filters": "Mots masqués", "navigation_bar.follow_requests": "Demandes d'abonnements", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Hashtags suivis", "navigation_bar.follows_and_followers": "Abonnements et abonnés", "navigation_bar.lists": "Listes", "navigation_bar.logout": "Se déconnecter", @@ -543,7 +544,7 @@ "server_banner.server_stats": "Statistiques du serveur:", "sign_in_banner.create_account": "Créer un compte", "sign_in_banner.sign_in": "Se connecter", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Identifiez-vous pour suivre des profils ou des hashtags, ajouter des favoris, partager et répondre à des messages. Vous pouvez également interagir depuis votre compte sur un autre serveur.", "status.admin_account": "Ouvrir l’interface de modération pour @{name}", "status.admin_domain": "Ouvrir l’interface de modération pour {domain}", "status.admin_status": "Ouvrir ce message dans l’interface de modération", diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json index 0dc5dcb1d..1dcf41c85 100644 --- a/app/javascript/mastodon/locales/fr.json +++ b/app/javascript/mastodon/locales/fr.json @@ -6,7 +6,7 @@ "about.domain_blocks.preamble": "Mastodon vous permet généralement de visualiser le contenu et d'interagir avec les utilisateur⋅rice⋅s de n'importe quel autre serveur dans le fédiverse. Voici les exceptions qui ont été faites sur ce serveur en particulier.", "about.domain_blocks.silenced.explanation": "Vous ne verrez généralement pas les profils et le contenu de ce serveur, à moins que vous ne les recherchiez explicitement ou que vous ne choisissiez de les suivre.", "about.domain_blocks.silenced.title": "Limité", - "about.domain_blocks.suspended.explanation": "Aucune donnée de ce serveur ne sera traitée, enregistrée ou échangée, rendant impossible toute interaction ou communication avec les utilisateurs de ce serveur.", + "about.domain_blocks.suspended.explanation": "Aucune donnée de ce serveur ne sera traitée, enregistrée ou échangée, rendant impossible toute interaction ou communication avec les comptes de ce serveur.", "about.domain_blocks.suspended.title": "Suspendu", "about.not_available": "Cette information n'a pas été rendue disponible sur ce serveur.", "about.powered_by": "Réseau social décentralisé propulsé par {mastodon}", @@ -45,7 +45,7 @@ "account.locked_info": "Ce compte est privé. Son ou sa propriétaire approuve manuellement qui peut le suivre.", "account.media": "Médias", "account.mention": "Mentionner @{name}", - "account.moved_to": "{name} a indiqué que son nouveau compte est maintenant  :", + "account.moved_to": "{name} a indiqué que son nouveau compte est maintenant :", "account.mute": "Masquer @{name}", "account.mute_notifications": "Masquer les notifications de @{name}", "account.muted": "Masqué·e", @@ -71,7 +71,7 @@ "admin.dashboard.monthly_retention": "Taux de rétention des utilisateur·rice·s par mois après inscription", "admin.dashboard.retention.average": "Moyenne", "admin.dashboard.retention.cohort": "Mois d'inscription", - "admin.dashboard.retention.cohort_size": "Nouveaux utilisateurs", + "admin.dashboard.retention.cohort_size": "Nouveaux comptes", "alert.rate_limited.message": "Veuillez réessayer après {retry_time, time, medium}.", "alert.rate_limited.title": "Nombre de requêtes limité", "alert.unexpected.message": "Une erreur inattendue s’est produite.", @@ -96,7 +96,7 @@ "closed_registrations.other_server_instructions": "Puisque Mastodon est décentralisé, vous pouvez créer un compte sur un autre serveur et interagir quand même avec celui-ci.", "closed_registrations_modal.description": "Créer un compte sur {domain} est actuellement impossible, néanmoins souvenez-vous que vous n'avez pas besoin d'un compte spécifiquement sur {domain} pour utiliser Mastodon.", "closed_registrations_modal.find_another_server": "Trouver un autre serveur", - "closed_registrations_modal.preamble": "Mastodon est décentralisé : peu importe où vous créez votre votre, vous serez en mesure de suivre et d'interagir avec quiconque sur ce serveur. Vous pouvez même l'héberger !", + "closed_registrations_modal.preamble": "Mastodon est décentralisé : peu importe où vous créez votre compte, vous serez en mesure de suivre et d'interagir avec quiconque sur ce serveur. Vous pouvez même l'héberger !", "closed_registrations_modal.title": "Inscription sur Mastodon", "column.about": "À propos", "column.blocks": "Comptes bloqués", @@ -128,8 +128,8 @@ "compose.language.search": "Rechercher des langues …", "compose_form.direct_message_warning_learn_more": "En savoir plus", "compose_form.encryption_warning": "Les messages sur Mastodon ne sont pas chiffrés de bout en bout. Ne partagez aucune information sensible sur Mastodon.", - "compose_form.hashtag_warning": "Ce message n'apparaîtra pas dans les listes de hashtags, car il n'est pas public. Seuls les messages publics peuvent appaître dans les recherches par hashtags.", - "compose_form.lock_disclaimer": "Votre compte n’est pas {locked}. Tout le monde peut vous suivre et voir vos messages privés.", + "compose_form.hashtag_warning": "Ce message n'apparaîtra pas dans les listes de hashtags, car il n'est pas public. Seuls les messages publics peuvent apparaître dans les recherches par hashtags.", + "compose_form.lock_disclaimer": "Votre compte n’est pas {locked}. Tout le monde peut vous suivre pour voir vos messages réservés à vos abonné⋅e⋅s.", "compose_form.lock_disclaimer.lock": "verrouillé", "compose_form.placeholder": "Qu’avez-vous en tête ?", "compose_form.poll.add_option": "Ajouter un choix", @@ -185,12 +185,12 @@ "directory.recently_active": "Actif·ve·s récemment", "disabled_account_banner.account_settings": "Paramètres du compte", "disabled_account_banner.text": "Votre compte {disabledAccount} est actuellement désactivé.", - "dismissable_banner.community_timeline": "Voici les messages publics les plus récents des personnes dont les comptes sont hébergés par {domain}.", + "dismissable_banner.community_timeline": "Voici les messages publics les plus récents des comptes hébergés par {domain}.", "dismissable_banner.dismiss": "Rejeter", "dismissable_banner.explore_links": "On parle actuellement de ces nouvelles sur ce serveur, ainsi que sur d'autres serveurs du réseau décentralisé.", "dismissable_banner.explore_statuses": "Ces publications depuis les serveurs du réseau décentralisé, dont celui-ci, sont actuellement en train de gagner de l'ampleur sur ce serveur.", "dismissable_banner.explore_tags": "Ces hashtags sont actuellement en train de gagner de l'ampleur parmi les personnes sur les serveurs du réseau décentralisé dont celui-ci.", - "dismissable_banner.public_timeline": "Voici les publications publiques les plus récentes des personnes de ce serveur et des autres du réseau décentralisé que ce serveur connait.", + "dismissable_banner.public_timeline": "Voici les messages publics les plus récents des personnes de cette instance et des autres instances du réseau décentralisé connues par ce serveur.", "embed.instructions": "Intégrez ce message à votre site en copiant le code ci-dessous.", "embed.preview": "Il apparaîtra comme cela :", "emoji_button.activity": "Activités", @@ -246,7 +246,7 @@ "filter_modal.added.context_mismatch_title": "Incompatibilité du contexte !", "filter_modal.added.expired_explanation": "Cette catégorie de filtre a expiré, vous devrez modifier la date d'expiration pour qu'elle soit appliquée.", "filter_modal.added.expired_title": "Filtre expiré !", - "filter_modal.added.review_and_configure": "Pour passer en revue et approfondir la configuration de cette catégorie de filtre, aller sur le {settings_link}.", + "filter_modal.added.review_and_configure": "Pour examiner et affiner la configuration de cette catégorie de filtre, allez à {settings_link}.", "filter_modal.added.review_and_configure_title": "Paramètres du filtre", "filter_modal.added.settings_link": "page des paramètres", "filter_modal.added.short_explanation": "Ce message a été ajouté à la catégorie de filtre suivante : {title}.", @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Raccourcis clavier", "footer.privacy_policy": "Politique de confidentialité", "footer.source_code": "Voir le code source", + "footer.status": "État", "generic.saved": "Sauvegardé", "getting_started.heading": "Pour commencer", "hashtag.column_header.tag_mode.all": "et {additional}", @@ -290,17 +291,17 @@ "home.column_settings.show_replies": "Afficher les réponses", "home.hide_announcements": "Masquer les annonces", "home.show_announcements": "Afficher les annonces", - "interaction_modal.description.favourite": "Avec un compte Mastodon, vous pouvez ajouter ce post aux favoris pour informer l'auteur que vous l'appréciez et le sauvegarder pour plus tard.", + "interaction_modal.description.favourite": "Avec un compte Mastodon, vous pouvez ajouter ce message à vos favoris pour informer l'auteur⋅rice que vous l'appréciez et pour le sauvegarder pour plus tard.", "interaction_modal.description.follow": "Avec un compte Mastodon, vous pouvez suivre {name} et recevoir leurs posts dans votre fil d'actualité.", - "interaction_modal.description.reblog": "Avec un compte sur Mastodon, vous pouvez booster ce message pour le partager avec vos propres abonnés.", + "interaction_modal.description.reblog": "Avec un compte sur Mastodon, vous pouvez partager ce message pour le faire découvrir à vos propres abonné⋅e⋅s.", "interaction_modal.description.reply": "Avec un compte sur Mastodon, vous pouvez répondre à ce message.", "interaction_modal.on_another_server": "Sur un autre serveur", "interaction_modal.on_this_server": "Sur ce serveur", - "interaction_modal.other_server_instructions": "Copiez et collez cette URL dans le champ de recherche de votre application Mastodon préférée ou l'interface web de votre serveur Mastodon.", + "interaction_modal.other_server_instructions": "Copiez et collez cette URL dans le champ de recherche de votre application Mastodon préférée ou de l'interface web de votre serveur Mastodon.", "interaction_modal.preamble": "Puisque Mastodon est décentralisé, vous pouvez utiliser votre compte existant hébergé par un autre serveur Mastodon ou une plateforme compatible si vous n'avez pas de compte sur celui-ci.", - "interaction_modal.title.favourite": "Ajouter de post de {name} aux favoris", + "interaction_modal.title.favourite": "Ajouter le message de {name} aux favoris", "interaction_modal.title.follow": "Suivre {name}", - "interaction_modal.title.reblog": "Partager la publication de {name}", + "interaction_modal.title.reblog": "Partager le message de {name}", "interaction_modal.title.reply": "Répondre au message de {name}", "intervals.full.days": "{number, plural, one {# jour} other {# jours}}", "intervals.full.hours": "{number, plural, one {# heure} other {# heures}}", @@ -364,7 +365,7 @@ "media_gallery.toggle_visible": "{number, plural, one {Cacher l’image} other {Cacher les images}}", "missing_indicator.label": "Non trouvé", "missing_indicator.sublabel": "Ressource introuvable", - "moved_to_account_banner.text": "Votre compte {disabledAccount} est actuellement désactivé parce que vous avez déplacé vers {movedToAccount}.", + "moved_to_account_banner.text": "Votre compte {disabledAccount} est actuellement désactivé parce que vous l'avez déplacé à {movedToAccount}.", "mute_modal.duration": "Durée", "mute_modal.hide_notifications": "Masquer les notifications de cette personne ?", "mute_modal.indefinite": "Indéfinie", @@ -395,7 +396,7 @@ "not_signed_in_indicator.not_signed_in": "Vous devez vous connecter pour accéder à cette ressource.", "notification.admin.report": "{name} a signalé {target}", "notification.admin.sign_up": "{name} s'est inscrit", - "notification.favourite": "{name} a aimé votre publication", + "notification.favourite": "{name} a ajouté votre message à ses favoris", "notification.follow": "{name} vous suit", "notification.follow_request": "{name} a demandé à vous suivre", "notification.mention": "{name} vous a mentionné·e :", @@ -522,10 +523,10 @@ "search.placeholder": "Rechercher", "search.search_or_paste": "Rechercher ou saisir une URL", "search_popout.search_format": "Recherche avancée", - "search_popout.tips.full_text": "Un texte normal retourne les messages que vous avez écrits, ajoutés à vos favoris, partagés, ou vous mentionnant, ainsi que les identifiants, les noms affichés, et les hashtags des personnes et messages correspondants.", + "search_popout.tips.full_text": "Faire une recherche textuelle retrouve les messages que vous avez écrits, ajoutés à vos favoris, partagés, ou vous mentionnant, ainsi que les identifiants, les noms affichés, et les hashtags des personnes et messages correspondants.", "search_popout.tips.hashtag": "hashtag", "search_popout.tips.status": "message", - "search_popout.tips.text": "Un texte simple renvoie les noms affichés, les identifiants et les hashtags correspondants", + "search_popout.tips.text": "Faire une recherche textuelle retrouve les noms affichés, les identifiants et les hashtags correspondants", "search_popout.tips.user": "utilisateur", "search_results.accounts": "Comptes", "search_results.all": "Tous les résultats", @@ -562,7 +563,7 @@ "status.favourite": "Ajouter aux favoris", "status.filter": "Filtrer ce message", "status.filtered": "Filtré", - "status.hide": "Masquer la publication", + "status.hide": "Masquer le message", "status.history.created": "créé par {name} {date}", "status.history.edited": "édité par {name} {date}", "status.load_more": "Charger plus", @@ -615,7 +616,7 @@ "timeline_hint.remote_resource_not_displayed": "{resource} des autres serveurs ne sont pas affichés.", "timeline_hint.resources.followers": "Les abonnés", "timeline_hint.resources.follows": "Les abonnements", - "timeline_hint.resources.statuses": "Les messages plus anciens", + "timeline_hint.resources.statuses": "Messages plus anciens", "trends.counter_by_accounts": "{count, plural, one {{counter} personne} other {{counter} personnes}} au cours {days, plural, one {des dernières 24h} other {des {days} derniers jours}}", "trends.trending_now": "Tendance en ce moment", "ui.beforeunload": "Votre brouillon sera perdu si vous quittez Mastodon.", @@ -627,7 +628,7 @@ "upload_error.limit": "Taille maximale d'envoi de fichier dépassée.", "upload_error.poll": "L’envoi de fichiers n’est pas autorisé avec les sondages.", "upload_form.audio_description": "Décrire pour les personnes ayant des difficultés d’audition", - "upload_form.description": "Décrire pour les malvoyants", + "upload_form.description": "Décrire pour les malvoyant·e·s", "upload_form.description_missing": "Description manquante", "upload_form.edit": "Modifier", "upload_form.thumbnail": "Changer la vignette", diff --git a/app/javascript/mastodon/locales/fy.json b/app/javascript/mastodon/locales/fy.json index cd7232e27..61273f58f 100644 --- a/app/javascript/mastodon/locales/fy.json +++ b/app/javascript/mastodon/locales/fy.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Fluchtoetsen", "footer.privacy_policy": "Privacybelied", "footer.source_code": "Boarnekoade besjen", + "footer.status": "Steat", "generic.saved": "Bewarre", "getting_started.heading": "Uteinsette", "hashtag.column_header.tag_mode.all": "en {additional}", diff --git a/app/javascript/mastodon/locales/ga.json b/app/javascript/mastodon/locales/ga.json index 61759475d..9212d16bd 100644 --- a/app/javascript/mastodon/locales/ga.json +++ b/app/javascript/mastodon/locales/ga.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Aicearraí méarchláir", "footer.privacy_policy": "Polasaí príobháideachais", "footer.source_code": "Féach ar an gcód foinseach", + "footer.status": "Status", "generic.saved": "Sábháilte", "getting_started.heading": "Ag tosú amach", "hashtag.column_header.tag_mode.all": "agus {additional}", diff --git a/app/javascript/mastodon/locales/gd.json b/app/javascript/mastodon/locales/gd.json index 40d7e77e5..8355f2019 100644 --- a/app/javascript/mastodon/locales/gd.json +++ b/app/javascript/mastodon/locales/gd.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Ath-ghoiridean a’ mheur-chlàir", "footer.privacy_policy": "Poileasaidh prìobhaideachd", "footer.source_code": "Seall am bun-tùs", + "footer.status": "Status", "generic.saved": "Chaidh a shàbhaladh", "getting_started.heading": "Toiseach", "hashtag.column_header.tag_mode.all": "agus {additional}", diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index 25756ea59..1033e6d7d 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atallos do teclado", "footer.privacy_policy": "Política de privacidade", "footer.source_code": "Ver código fonte", + "footer.status": "Estado", "generic.saved": "Gardado", "getting_started.heading": "Primeiros pasos", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json index c1e5eee97..7e3cee334 100644 --- a/app/javascript/mastodon/locales/he.json +++ b/app/javascript/mastodon/locales/he.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "קיצורי מקלדת", "footer.privacy_policy": "מדיניות פרטיות", "footer.source_code": "צפיה בקוד המקור", + "footer.status": "מצב", "generic.saved": "נשמר", "getting_started.heading": "בואו נתחיל", "hashtag.column_header.tag_mode.all": "ו- {additional}", diff --git a/app/javascript/mastodon/locales/hi.json b/app/javascript/mastodon/locales/hi.json index 9ed822e57..3ac57d50d 100644 --- a/app/javascript/mastodon/locales/hi.json +++ b/app/javascript/mastodon/locales/hi.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "कीबोर्ड शॉर्टकट", "footer.privacy_policy": "प्राइवेसी पालिसी", "footer.source_code": "सोर्स कोड देखें", + "footer.status": "Status", "generic.saved": "सेव्ड", "getting_started.heading": "पहले कदम रखें", "hashtag.column_header.tag_mode.all": "और {additional}", diff --git a/app/javascript/mastodon/locales/hr.json b/app/javascript/mastodon/locales/hr.json index 77364d4fa..9be500a7e 100644 --- a/app/javascript/mastodon/locales/hr.json +++ b/app/javascript/mastodon/locales/hr.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Tipkovni prečaci", "footer.privacy_policy": "Pravila o zaštiti privatnosti", "footer.source_code": "Prikaz izvornog koda", + "footer.status": "Status", "generic.saved": "Spremljeno", "getting_started.heading": "Počnimo", "hashtag.column_header.tag_mode.all": "i {additional}", diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json index 2b999fcf5..b5ca1ef3b 100644 --- a/app/javascript/mastodon/locales/hu.json +++ b/app/javascript/mastodon/locales/hu.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Billentyűparancsok", "footer.privacy_policy": "Adatvédelmi szabályzat", "footer.source_code": "Forráskód megtekintése", + "footer.status": "Állapot", "generic.saved": "Elmentve", "getting_started.heading": "Első lépések", "hashtag.column_header.tag_mode.all": "és {additional}", diff --git a/app/javascript/mastodon/locales/hy.json b/app/javascript/mastodon/locales/hy.json index 253dea6f4..cb1dd1bd2 100644 --- a/app/javascript/mastodon/locales/hy.json +++ b/app/javascript/mastodon/locales/hy.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Ստեղնաշարի կարճատներ", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Պահպանուած է", "getting_started.heading": "Ինչպէս սկսել", "hashtag.column_header.tag_mode.all": "եւ {additional}", diff --git a/app/javascript/mastodon/locales/id.json b/app/javascript/mastodon/locales/id.json index 584ce4c4c..a6db3207d 100644 --- a/app/javascript/mastodon/locales/id.json +++ b/app/javascript/mastodon/locales/id.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Pintasan papan ketik", "footer.privacy_policy": "Kebijakan privasi", "footer.source_code": "Lihat kode sumber", + "footer.status": "Status", "generic.saved": "Disimpan", "getting_started.heading": "Mulai", "hashtag.column_header.tag_mode.all": "dan {additional}", diff --git a/app/javascript/mastodon/locales/ig.json b/app/javascript/mastodon/locales/ig.json index e088d08f2..69e4ae08a 100644 --- a/app/javascript/mastodon/locales/ig.json +++ b/app/javascript/mastodon/locales/ig.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Iwu nzuzu", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Mbido", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/io.json b/app/javascript/mastodon/locales/io.json index 49ae3fc71..fedabed58 100644 --- a/app/javascript/mastodon/locales/io.json +++ b/app/javascript/mastodon/locales/io.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Sparesis", "getting_started.heading": "Debuto", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/is.json b/app/javascript/mastodon/locales/is.json index 8e1f3b6bf..56ef257c9 100644 --- a/app/javascript/mastodon/locales/is.json +++ b/app/javascript/mastodon/locales/is.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Flýtileiðir á lyklaborði", "footer.privacy_policy": "Persónuverndarstefna", "footer.source_code": "Skoða frumkóða", + "footer.status": "Staða", "generic.saved": "Vistað", "getting_started.heading": "Komast í gang", "hashtag.column_header.tag_mode.all": "og {additional}", diff --git a/app/javascript/mastodon/locales/it.json b/app/javascript/mastodon/locales/it.json index 41c404c14..e7b480814 100644 --- a/app/javascript/mastodon/locales/it.json +++ b/app/javascript/mastodon/locales/it.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Scorciatoie da tastiera", "footer.privacy_policy": "Politica sulla privacy", "footer.source_code": "Visualizza il codice sorgente", + "footer.status": "Stato", "generic.saved": "Salvato", "getting_started.heading": "Per iniziare", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json index aca58c145..e5c752f32 100644 --- a/app/javascript/mastodon/locales/ja.json +++ b/app/javascript/mastodon/locales/ja.json @@ -45,7 +45,7 @@ "account.locked_info": "このアカウントは承認制アカウントです。相手が承認するまでフォローは完了しません。", "account.media": "メディア", "account.mention": "@{name}さんにメンション", - "account.moved_to": "{name} さんがアカウントを引っ越しました:", + "account.moved_to": "{name}さんがアカウントを引っ越しました:", "account.mute": "@{name}さんをミュート", "account.mute_notifications": "@{name}さんからの通知を受け取らない", "account.muted": "ミュート済み", @@ -54,7 +54,7 @@ "account.posts_with_replies": "投稿と返信", "account.report": "@{name}さんを通報", "account.requested": "フォロー承認待ちです。クリックしてキャンセル", - "account.requested_follow": "{name} さんがあなたにフォローリクエストしました", + "account.requested_follow": "{name}さんがあなたにフォローリクエストしました", "account.share": "@{name}さんのプロフィールを共有する", "account.show_reblogs": "@{name}さんからのブーストを表示", "account.statuses_counter": "{counter} 投稿", @@ -276,6 +276,7 @@ "footer.keyboard_shortcuts": "キーボードショートカット", "footer.privacy_policy": "プライバシーポリシー", "footer.source_code": "ソースコードを表示", + "footer.status": "ステータス", "generic.saved": "保存しました", "getting_started.heading": "スタート", "hashtag.column_header.tag_mode.all": "と{additional}", diff --git a/app/javascript/mastodon/locales/ka.json b/app/javascript/mastodon/locales/ka.json index 714de6dad..2158a8e0f 100644 --- a/app/javascript/mastodon/locales/ka.json +++ b/app/javascript/mastodon/locales/ka.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "დაწყება", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/kab.json b/app/javascript/mastodon/locales/kab.json index 3db7a397f..fc0efa7ea 100644 --- a/app/javascript/mastodon/locales/kab.json +++ b/app/javascript/mastodon/locales/kab.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Inegzumen n unasiw", "footer.privacy_policy": "Tasertit tabaḍnit", "footer.source_code": "Wali tangalt taɣbalut", + "footer.status": "Status", "generic.saved": "Yettwasekles", "getting_started.heading": "Bdu", "hashtag.column_header.tag_mode.all": "d {additional}", diff --git a/app/javascript/mastodon/locales/kk.json b/app/javascript/mastodon/locales/kk.json index 47f4f104d..297885a19 100644 --- a/app/javascript/mastodon/locales/kk.json +++ b/app/javascript/mastodon/locales/kk.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Сақталды", "getting_started.heading": "Желіде", "hashtag.column_header.tag_mode.all": "және {additional}", diff --git a/app/javascript/mastodon/locales/kn.json b/app/javascript/mastodon/locales/kn.json index 7f9574b3f..4c7ed9a84 100644 --- a/app/javascript/mastodon/locales/kn.json +++ b/app/javascript/mastodon/locales/kn.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json index 7332dca16..612b00f46 100644 --- a/app/javascript/mastodon/locales/ko.json +++ b/app/javascript/mastodon/locales/ko.json @@ -1,8 +1,8 @@ { "about.blocks": "제한된 서버들", "about.contact": "연락처:", - "about.disclaimer": "마스토돈은 자유 오픈소스 소프트웨어이며, Mastodon gGmbH의 상표입니다", - "about.domain_blocks.no_reason_available": "이유 비공개", + "about.disclaimer": "Mastodon은 자유 오픈소스 소프트웨어이며, Mastodon gGmbH의 상표입니다", + "about.domain_blocks.no_reason_available": "사유를 밝히지 않음", "about.domain_blocks.preamble": "마스토돈은 일반적으로 연합우주에 있는 어떤 서버의 사용자와도 게시물을 보고 응답을 할 수 있도록 허용합니다. 다음 항목들은 특정한 서버에 대해 만들어 진 예외사항입니다.", "about.domain_blocks.silenced.explanation": "명시적으로 찾아보거나 팔로우를 하기 전까지는, 이 서버에 있는 프로필이나 게시물 등을 일반적으로 볼 수 없습니다.", "about.domain_blocks.silenced.title": "제한됨", @@ -138,8 +138,8 @@ "compose_form.poll.remove_option": "이 항목 삭제", "compose_form.poll.switch_to_multiple": "다중 선택이 가능한 투표로 변경", "compose_form.poll.switch_to_single": "단일 선택 투표로 변경", - "compose_form.publish": "뿌우", - "compose_form.publish_form": "뿌우", + "compose_form.publish": "게시", + "compose_form.publish_form": "게시", "compose_form.publish_loud": "{publish}!", "compose_form.save_changes": "변경사항 저장", "compose_form.sensitive.hide": "미디어를 민감함으로 설정하기", @@ -209,7 +209,7 @@ "emoji_button.symbols": "기호", "emoji_button.travel": "여행과 장소", "empty_column.account_suspended": "계정 정지됨", - "empty_column.account_timeline": "여긴 게시물이 없어요!", + "empty_column.account_timeline": "이곳에는 게시물이 없습니다!", "empty_column.account_unavailable": "프로필 사용 불가", "empty_column.blocks": "아직 아무도 차단하지 않았습니다.", "empty_column.bookmarked_statuses": "아직 북마크에 저장한 게시물이 없습니다. 게시물을 북마크 지정하면 여기에 나타납니다.", @@ -232,7 +232,7 @@ "empty_column.public": "여기엔 아직 아무 것도 없습니다! 공개적으로 무언가 포스팅하거나, 다른 서버의 사용자를 팔로우 해서 채워보세요", "error.unexpected_crash.explanation": "버그 혹은 브라우저 호환성 문제로 이 페이지를 올바르게 표시할 수 없습니다.", "error.unexpected_crash.explanation_addons": "이 페이지는 올바르게 보여질 수 없습니다. 브라우저 애드온이나 자동 번역 도구 등으로 인해 발생된 에러일 수 있습니다.", - "error.unexpected_crash.next_steps": "페이지를 새로고침 해보세요. 그래도 해결되지 않는 경우, 다른 브라우저나 네이티브 앱으로도 마스토돈을 이용하실 수 있습니다.", + "error.unexpected_crash.next_steps": "페이지를 새로고침 해보세요. 도움이 되지 않는다면, 다른 브라우저나 네이티브 앱을 통해서도 Mastodon을 이용할 수 있습니다.", "error.unexpected_crash.next_steps_addons": "그걸 끄고 페이지를 새로고침 해보세요. 그래도 해결되지 않으면, 다른 브라우저나 네이티브 앱으로 마스토돈을 이용해 보실 수 있습니다.", "errors.unexpected_crash.copy_stacktrace": "에러 내용을 클립보드에 복사", "errors.unexpected_crash.report_issue": "문제 신고", @@ -272,15 +272,16 @@ "footer.keyboard_shortcuts": "키보드 단축키", "footer.privacy_policy": "개인정보 정책", "footer.source_code": "소스코드 보기", + "footer.status": "상태", "generic.saved": "저장됨", "getting_started.heading": "시작하기", "hashtag.column_header.tag_mode.all": "및 {additional}", "hashtag.column_header.tag_mode.any": "또는 {additional}", "hashtag.column_header.tag_mode.none": "{additional}를 제외하고", - "hashtag.column_settings.select.no_options_message": "추천할 내용이 없습니다", - "hashtag.column_settings.select.placeholder": "해시태그를 입력하세요…", + "hashtag.column_settings.select.no_options_message": "제안을 찾을 수 없습니다.", + "hashtag.column_settings.select.placeholder": "해시태그를 기입하면...", "hashtag.column_settings.tag_mode.all": "모두", - "hashtag.column_settings.tag_mode.any": "아무것이든", + "hashtag.column_settings.tag_mode.any": "어느것이든", "hashtag.column_settings.tag_mode.none": "이것들을 제외하고", "hashtag.column_settings.tag_toggle": "추가 해시태그를 이 컬럼에 추가합니다", "hashtag.follow": "해시태그 팔로우", @@ -400,11 +401,11 @@ "notification.follow_request": "{name} 님이 팔로우 요청을 보냈습니다", "notification.mention": "{name} 님이 언급하였습니다", "notification.own_poll": "내 투표가 끝났습니다", - "notification.poll": "당신이 참여 한 투표가 종료되었습니다", + "notification.poll": "참여했던 투표가 끝났습니다.", "notification.reblog": "{name} 님이 부스트했습니다", "notification.status": "{name} 님이 방금 게시물을 올렸습니다", "notification.update": "{name} 님이 게시물을 수정했습니다", - "notifications.clear": "알림 지우기", + "notifications.clear": "알림 비우기", "notifications.clear_confirmation": "정말로 알림을 삭제하시겠습니까?", "notifications.column_settings.admin.report": "새 신고:", "notifications.column_settings.admin.sign_up": "새로운 가입:", @@ -494,13 +495,13 @@ "report.mute_explanation": "당신은 해당 계정의 게시물을 보지 않게 됩니다. 해당 계정은 여전히 당신을 팔로우 하거나 당신의 게시물을 볼 수 있으며 해당 계정은 자신이 뮤트 되었는지 알지 못합니다.", "report.next": "다음", "report.placeholder": "코멘트", - "report.reasons.dislike": "마음에 안듭니다", + "report.reasons.dislike": "마음에 안 들어요", "report.reasons.dislike_description": "내가 보기 싫은 종류에 속합니다", - "report.reasons.other": "기타", + "report.reasons.other": "그 밖의 것들", "report.reasons.other_description": "이슈가 다른 분류에 속하지 않습니다", - "report.reasons.spam": "스팸입니다", + "report.reasons.spam": "스팸이에요", "report.reasons.spam_description": "악성 링크, 반응 스팸, 또는 반복적인 답글", - "report.reasons.violation": "서버 규칙을 위반합니다", + "report.reasons.violation": "서버 규칙을 위반해요", "report.reasons.violation_description": "특정 규칙을 위반합니다", "report.rules.subtitle": "해당하는 사항을 모두 선택하세요", "report.rules.title": "어떤 규칙을 위반했나요?", @@ -617,7 +618,7 @@ "timeline_hint.resources.follows": "팔로우", "timeline_hint.resources.statuses": "이전 게시물", "trends.counter_by_accounts": "이전 {days}일 동안 {counter} 명의 사용자", - "trends.trending_now": "지금 유행중", + "trends.trending_now": "지금 유행 중", "ui.beforeunload": "지금 나가면 저장되지 않은 항목을 잃게 됩니다.", "units.short.billion": "{count}B", "units.short.million": "{count}B", diff --git a/app/javascript/mastodon/locales/ku.json b/app/javascript/mastodon/locales/ku.json index 4b12ab6be..ad53c3577 100644 --- a/app/javascript/mastodon/locales/ku.json +++ b/app/javascript/mastodon/locales/ku.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Kurteriyên klavyeyê", "footer.privacy_policy": "Peymana nepeniyê", "footer.source_code": "Koda çavkanî nîşan bide", + "footer.status": "Status", "generic.saved": "Tomarkirî", "getting_started.heading": "Destpêkirin", "hashtag.column_header.tag_mode.all": "û {additional}", diff --git a/app/javascript/mastodon/locales/kw.json b/app/javascript/mastodon/locales/kw.json index 1a8e20035..db4f0022e 100644 --- a/app/javascript/mastodon/locales/kw.json +++ b/app/javascript/mastodon/locales/kw.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Gwithys", "getting_started.heading": "Dhe dhalleth", "hashtag.column_header.tag_mode.all": "ha(g) {additional}", diff --git a/app/javascript/mastodon/locales/la.json b/app/javascript/mastodon/locales/la.json index 2cbafae22..2634a6f06 100644 --- a/app/javascript/mastodon/locales/la.json +++ b/app/javascript/mastodon/locales/la.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "servavit", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/lt.json b/app/javascript/mastodon/locales/lt.json index ea53932f3..c7a27873d 100644 --- a/app/javascript/mastodon/locales/lt.json +++ b/app/javascript/mastodon/locales/lt.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index bb6bfbc82..f54a92378 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Īsinājumtaustiņi", "footer.privacy_policy": "Privātuma politika", "footer.source_code": "Skatīt pirmkodu", + "footer.status": "Statuss", "generic.saved": "Saglabāts", "getting_started.heading": "Darba sākšana", "hashtag.column_header.tag_mode.all": "un {additional}", diff --git a/app/javascript/mastodon/locales/mk.json b/app/javascript/mastodon/locales/mk.json index c2d2bbfbe..b9e5cda1e 100644 --- a/app/javascript/mastodon/locales/mk.json +++ b/app/javascript/mastodon/locales/mk.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Започни", "hashtag.column_header.tag_mode.all": "и {additional}", diff --git a/app/javascript/mastodon/locales/ml.json b/app/javascript/mastodon/locales/ml.json index f3a13938b..3574ede02 100644 --- a/app/javascript/mastodon/locales/ml.json +++ b/app/javascript/mastodon/locales/ml.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "സംരക്ഷിച്ചു", "getting_started.heading": "തുടക്കം കുറിക്കുക", "hashtag.column_header.tag_mode.all": "{additional} ഉം കൂടെ", diff --git a/app/javascript/mastodon/locales/mr.json b/app/javascript/mastodon/locales/mr.json index 5004f5209..1ba6aa957 100644 --- a/app/javascript/mastodon/locales/mr.json +++ b/app/javascript/mastodon/locales/mr.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/ms.json b/app/javascript/mastodon/locales/ms.json index 593690408..3f971026e 100644 --- a/app/javascript/mastodon/locales/ms.json +++ b/app/javascript/mastodon/locales/ms.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Pintasan papan kekunci", "footer.privacy_policy": "Dasar privasi", "footer.source_code": "Lihat kod sumber", + "footer.status": "Status", "generic.saved": "Disimpan", "getting_started.heading": "Mari bermula", "hashtag.column_header.tag_mode.all": "dan {additional}", diff --git a/app/javascript/mastodon/locales/my.json b/app/javascript/mastodon/locales/my.json index c0fa7822e..76d864fee 100644 --- a/app/javascript/mastodon/locales/my.json +++ b/app/javascript/mastodon/locales/my.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index 5b753cf2a..91ca4ebf2 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Sneltoetsen", "footer.privacy_policy": "Privacybeleid", "footer.source_code": "Broncode bekijken", + "footer.status": "Status", "generic.saved": "Opgeslagen", "getting_started.heading": "Aan de slag", "hashtag.column_header.tag_mode.all": "en {additional}", diff --git a/app/javascript/mastodon/locales/nn.json b/app/javascript/mastodon/locales/nn.json index b645ce087..9ed91cc34 100644 --- a/app/javascript/mastodon/locales/nn.json +++ b/app/javascript/mastodon/locales/nn.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Snøggtastar", "footer.privacy_policy": "Personvernsreglar", "footer.source_code": "Vis kjeldekode", + "footer.status": "Status", "generic.saved": "Gøymt", "getting_started.heading": "Kom i gang", "hashtag.column_header.tag_mode.all": "og {additional}", @@ -381,7 +382,7 @@ "navigation_bar.favourites": "Favorittar", "navigation_bar.filters": "Målbundne ord", "navigation_bar.follow_requests": "Fylgjeførespurnader", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Fulgte emneknagger", "navigation_bar.follows_and_followers": "Fylgje og fylgjarar", "navigation_bar.lists": "Lister", "navigation_bar.logout": "Logg ut", diff --git a/app/javascript/mastodon/locales/no.json b/app/javascript/mastodon/locales/no.json index e67cd61ea..0cc3f121b 100644 --- a/app/javascript/mastodon/locales/no.json +++ b/app/javascript/mastodon/locales/no.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Hurtigtaster", "footer.privacy_policy": "Personvernregler", "footer.source_code": "Vis kildekode", + "footer.status": "Status", "generic.saved": "Lagret", "getting_started.heading": "Kom i gang", "hashtag.column_header.tag_mode.all": "og {additional}", diff --git a/app/javascript/mastodon/locales/oc.json b/app/javascript/mastodon/locales/oc.json index 65a3e8852..1367cc893 100644 --- a/app/javascript/mastodon/locales/oc.json +++ b/app/javascript/mastodon/locales/oc.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Acorchis clavièr", "footer.privacy_policy": "Politica de confidencialitat", "footer.source_code": "Veire lo còdi font", + "footer.status": "Status", "generic.saved": "Enregistrat", "getting_started.heading": "Per començar", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/pa.json b/app/javascript/mastodon/locales/pa.json index 08145fe8c..e22ab1f22 100644 --- a/app/javascript/mastodon/locales/pa.json +++ b/app/javascript/mastodon/locales/pa.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json index 359328865..50966c266 100644 --- a/app/javascript/mastodon/locales/pl.json +++ b/app/javascript/mastodon/locales/pl.json @@ -276,6 +276,7 @@ "footer.keyboard_shortcuts": "Skróty klawiszowe", "footer.privacy_policy": "Polityka prywatności", "footer.source_code": "Zobacz kod źródłowy", + "footer.status": "Status", "generic.saved": "Zapisano", "getting_started.heading": "Rozpocznij", "hashtag.column_header.tag_mode.all": "i {additional}", diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json index 34098d5a0..02804f0f6 100644 --- a/app/javascript/mastodon/locales/pt-BR.json +++ b/app/javascript/mastodon/locales/pt-BR.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atalhos de teclado", "footer.privacy_policy": "Política de privacidade", "footer.source_code": "Exibir código-fonte", + "footer.status": "Status", "generic.saved": "Salvo", "getting_started.heading": "Primeiros passos", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/pt-PT.json b/app/javascript/mastodon/locales/pt-PT.json index f544e1eb7..ae0a2df31 100644 --- a/app/javascript/mastodon/locales/pt-PT.json +++ b/app/javascript/mastodon/locales/pt-PT.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Atalhos do teclado", "footer.privacy_policy": "Política de privacidade", "footer.source_code": "Ver código-fonte", + "footer.status": "Estado", "generic.saved": "Guardado", "getting_started.heading": "Primeiros passos", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/ro.json b/app/javascript/mastodon/locales/ro.json index f6348e2f3..683924c70 100644 --- a/app/javascript/mastodon/locales/ro.json +++ b/app/javascript/mastodon/locales/ro.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Comenzi rapide de la tastatură", "footer.privacy_policy": "Politica de confidenţialitate", "footer.source_code": "Vizualizează codul sursă", + "footer.status": "Status", "generic.saved": "Salvat", "getting_started.heading": "Primii pași", "hashtag.column_header.tag_mode.all": "și {additional}", diff --git a/app/javascript/mastodon/locales/ru.json b/app/javascript/mastodon/locales/ru.json index d4bfe11e7..f8275452c 100644 --- a/app/javascript/mastodon/locales/ru.json +++ b/app/javascript/mastodon/locales/ru.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Сочетания клавиш", "footer.privacy_policy": "Политика конфиденциальности", "footer.source_code": "Исходный код", + "footer.status": "Статус", "generic.saved": "Сохранено", "getting_started.heading": "Начать", "hashtag.column_header.tag_mode.all": "и {additional}", @@ -381,7 +382,7 @@ "navigation_bar.favourites": "Избранное", "navigation_bar.filters": "Игнорируемые слова", "navigation_bar.follow_requests": "Запросы на подписку", - "navigation_bar.followed_tags": "Followed hashtags", + "navigation_bar.followed_tags": "Отслеживаемые хэштеги", "navigation_bar.follows_and_followers": "Подписки и подписчики", "navigation_bar.lists": "Списки", "navigation_bar.logout": "Выйти", @@ -543,7 +544,7 @@ "server_banner.server_stats": "Статистика сервера:", "sign_in_banner.create_account": "Создать учётную запись", "sign_in_banner.sign_in": "Войти", - "sign_in_banner.text": "Sign in to follow profiles or hashtags, favourite, share and reply to posts. You can also interact from your account on a different server.", + "sign_in_banner.text": "Войдите, чтобы отслеживать профили, хэштеги или избранное, делиться сообщениями и отвечать на них. Вы также можете взаимодействовать с вашей учётной записью на другом сервере.", "status.admin_account": "Открыть интерфейс модератора для @{name}", "status.admin_domain": "Открыть интерфейс модерации {domain}", "status.admin_status": "Открыть этот пост в интерфейсе модератора", diff --git a/app/javascript/mastodon/locales/sa.json b/app/javascript/mastodon/locales/sa.json index ba8340300..e9deab43d 100644 --- a/app/javascript/mastodon/locales/sa.json +++ b/app/javascript/mastodon/locales/sa.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/sc.json b/app/javascript/mastodon/locales/sc.json index f06e02c17..100f8ecbd 100644 --- a/app/javascript/mastodon/locales/sc.json +++ b/app/javascript/mastodon/locales/sc.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Polìtica de riservadesa", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Sarvadu", "getting_started.heading": "Comente cumintzare", "hashtag.column_header.tag_mode.all": "e {additional}", diff --git a/app/javascript/mastodon/locales/sco.json b/app/javascript/mastodon/locales/sco.json index bb3389f90..c428d6683 100644 --- a/app/javascript/mastodon/locales/sco.json +++ b/app/javascript/mastodon/locales/sco.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboord shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View the soorce code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Gettin stertit", "hashtag.column_header.tag_mode.all": "an {additional}", diff --git a/app/javascript/mastodon/locales/si.json b/app/javascript/mastodon/locales/si.json index e6c9fccab..a5ffbc615 100644 --- a/app/javascript/mastodon/locales/si.json +++ b/app/javascript/mastodon/locales/si.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "සුරැකිණි", "getting_started.heading": "පටන් ගන්න", "hashtag.column_header.tag_mode.all": "සහ {additional}", diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json index a341c4291..ba50e846a 100644 --- a/app/javascript/mastodon/locales/sk.json +++ b/app/javascript/mastodon/locales/sk.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Klávesové skratky", "footer.privacy_policy": "Zásady súkromia", "footer.source_code": "Zobraziť zdrojový kód", + "footer.status": "Stav", "generic.saved": "Uložené", "getting_started.heading": "Začni tu", "hashtag.column_header.tag_mode.all": "a {additional}", diff --git a/app/javascript/mastodon/locales/sl.json b/app/javascript/mastodon/locales/sl.json index 26c7376b3..d706eac77 100644 --- a/app/javascript/mastodon/locales/sl.json +++ b/app/javascript/mastodon/locales/sl.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Tipkovne bližnjice", "footer.privacy_policy": "Pravilnik o zasebnosti", "footer.source_code": "Pokaži izvorno kodo", + "footer.status": "Stanje", "generic.saved": "Shranjeno", "getting_started.heading": "Kako začeti", "hashtag.column_header.tag_mode.all": "in {additional}", diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json index f1ac38fdf..927cf7659 100644 --- a/app/javascript/mastodon/locales/sq.json +++ b/app/javascript/mastodon/locales/sq.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Shkurtore tastiere", "footer.privacy_policy": "Rregulla privatësie", "footer.source_code": "Shihni kodin burim", + "footer.status": "Gjendje", "generic.saved": "U ruajt", "getting_started.heading": "Si t’ia fillohet", "hashtag.column_header.tag_mode.all": "dhe {additional}", diff --git a/app/javascript/mastodon/locales/sr-Latn.json b/app/javascript/mastodon/locales/sr-Latn.json index 34e7b20de..a3ffb413c 100644 --- a/app/javascript/mastodon/locales/sr-Latn.json +++ b/app/javascript/mastodon/locales/sr-Latn.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Tasterske prečice", "footer.privacy_policy": "Politika privatnosti", "footer.source_code": "Prikaži izvorni kod", + "footer.status": "Status", "generic.saved": "Sačuvano", "getting_started.heading": "Prvi koraci", "hashtag.column_header.tag_mode.all": "i {additional}", diff --git a/app/javascript/mastodon/locales/sr.json b/app/javascript/mastodon/locales/sr.json index be36045c2..ea39d230a 100644 --- a/app/javascript/mastodon/locales/sr.json +++ b/app/javascript/mastodon/locales/sr.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Тастерске пречице", "footer.privacy_policy": "Политика приватности", "footer.source_code": "Прикажи изворни код", + "footer.status": "Статус", "generic.saved": "Сачувано", "getting_started.heading": "Први кораци", "hashtag.column_header.tag_mode.all": "и {additional}", diff --git a/app/javascript/mastodon/locales/sv.json b/app/javascript/mastodon/locales/sv.json index 2d6cd4ab1..75a9467be 100644 --- a/app/javascript/mastodon/locales/sv.json +++ b/app/javascript/mastodon/locales/sv.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Tangentbordsgenvägar", "footer.privacy_policy": "Integritetspolicy", "footer.source_code": "Visa källkod", + "footer.status": "Status", "generic.saved": "Sparad", "getting_started.heading": "Kom igång", "hashtag.column_header.tag_mode.all": "och {additional}", diff --git a/app/javascript/mastodon/locales/szl.json b/app/javascript/mastodon/locales/szl.json index 08145fe8c..e22ab1f22 100644 --- a/app/javascript/mastodon/locales/szl.json +++ b/app/javascript/mastodon/locales/szl.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/ta.json b/app/javascript/mastodon/locales/ta.json index 06e169da5..0cd309ed8 100644 --- a/app/javascript/mastodon/locales/ta.json +++ b/app/javascript/mastodon/locales/ta.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "சேமிக்கப்பட்டது", "getting_started.heading": "முதன்மைப் பக்கம்", "hashtag.column_header.tag_mode.all": "மற்றும் {additional}", diff --git a/app/javascript/mastodon/locales/tai.json b/app/javascript/mastodon/locales/tai.json index 43b30eb9a..875a8c944 100644 --- a/app/javascript/mastodon/locales/tai.json +++ b/app/javascript/mastodon/locales/tai.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/te.json b/app/javascript/mastodon/locales/te.json index 3fdd55233..f4e3b7ff2 100644 --- a/app/javascript/mastodon/locales/te.json +++ b/app/javascript/mastodon/locales/te.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "మొదలుపెడదాం", "hashtag.column_header.tag_mode.all": "మరియు {additional}", diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json index 9598c6a19..aaac5b784 100644 --- a/app/javascript/mastodon/locales/th.json +++ b/app/javascript/mastodon/locales/th.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "แป้นพิมพ์ลัด", "footer.privacy_policy": "นโยบายความเป็นส่วนตัว", "footer.source_code": "ดูโค้ดต้นฉบับ", + "footer.status": "สถานะ", "generic.saved": "บันทึกแล้ว", "getting_started.heading": "เริ่มต้นใช้งาน", "hashtag.column_header.tag_mode.all": "และ {additional}", diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index 60cb03a84..5d085495b 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -58,7 +58,7 @@ "account.share": "@{name} adlı kişinin profilini paylaş", "account.show_reblogs": "@{name} kişisinin boostlarını göster", "account.statuses_counter": "{count, plural, one {{counter} Gönderi} other {{counter} Gönderi}}", - "account.unblock": "@{name}'in engelini kaldır", + "account.unblock": "@{name} adlı kişinin engelini kaldır", "account.unblock_domain": "{domain} alan adının engelini kaldır", "account.unblock_short": "Engeli kaldır", "account.unendorse": "Profilimde öne çıkarma", @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Klavye kısayolları", "footer.privacy_policy": "Gizlilik politikası", "footer.source_code": "Kaynak kodu görüntüle", + "footer.status": "Durum", "generic.saved": "Kaydedildi", "getting_started.heading": "Başlarken", "hashtag.column_header.tag_mode.all": "ve {additional}", diff --git a/app/javascript/mastodon/locales/tt.json b/app/javascript/mastodon/locales/tt.json index 1922e5890..76009ba1e 100644 --- a/app/javascript/mastodon/locales/tt.json +++ b/app/javascript/mastodon/locales/tt.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Клавиатура кыска юллары", "footer.privacy_policy": "Хосусыйлык сәясәте", "footer.source_code": "Чыганак кодын карау", + "footer.status": "Status", "generic.saved": "Сакланды", "getting_started.heading": "Эшкә урнашу", "hashtag.column_header.tag_mode.all": "һәм {additional}", diff --git a/app/javascript/mastodon/locales/ug.json b/app/javascript/mastodon/locales/ug.json index 08145fe8c..e22ab1f22 100644 --- a/app/javascript/mastodon/locales/ug.json +++ b/app/javascript/mastodon/locales/ug.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "and {additional}", diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json index 0528c3c2a..7f509d039 100644 --- a/app/javascript/mastodon/locales/uk.json +++ b/app/javascript/mastodon/locales/uk.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Комбінації клавіш", "footer.privacy_policy": "Політика приватності", "footer.source_code": "Перегляд програмного коду", + "footer.status": "Статус", "generic.saved": "Збережено", "getting_started.heading": "Розпочати", "hashtag.column_header.tag_mode.all": "та {additional}", diff --git a/app/javascript/mastodon/locales/ur.json b/app/javascript/mastodon/locales/ur.json index cd94b3275..8980ca531 100644 --- a/app/javascript/mastodon/locales/ur.json +++ b/app/javascript/mastodon/locales/ur.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "آغاز کریں", "hashtag.column_header.tag_mode.all": "اور {additional}", diff --git a/app/javascript/mastodon/locales/uz.json b/app/javascript/mastodon/locales/uz.json index 118d8be0c..0f450b32a 100644 --- a/app/javascript/mastodon/locales/uz.json +++ b/app/javascript/mastodon/locales/uz.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Klaviatura yorliqlari", "footer.privacy_policy": "Maxfiylik siyosati", "footer.source_code": "Kodini ko'rish", + "footer.status": "Status", "generic.saved": "Saqlandi", "getting_started.heading": "Ishni boshlash", "hashtag.column_header.tag_mode.all": "va {additional}", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index 0798d7b26..4ee65e72a 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Phím tắt", "footer.privacy_policy": "Chính sách bảo mật", "footer.source_code": "Mã nguồn", + "footer.status": "Trạng thái", "generic.saved": "Đã lưu", "getting_started.heading": "Quản lý", "hashtag.column_header.tag_mode.all": "và {additional}", diff --git a/app/javascript/mastodon/locales/zgh.json b/app/javascript/mastodon/locales/zgh.json index 35b6b7200..4f190a4bc 100644 --- a/app/javascript/mastodon/locales/zgh.json +++ b/app/javascript/mastodon/locales/zgh.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "Keyboard shortcuts", "footer.privacy_policy": "Privacy policy", "footer.source_code": "View source code", + "footer.status": "Status", "generic.saved": "Saved", "getting_started.heading": "Getting started", "hashtag.column_header.tag_mode.all": "ⴷ {additional}", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index ea1ae3179..2cfed5224 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "快捷键列表", "footer.privacy_policy": "隐私政策", "footer.source_code": "查看源代码", + "footer.status": "状态", "generic.saved": "已保存", "getting_started.heading": "开始使用", "hashtag.column_header.tag_mode.all": "以及 {additional}", diff --git a/app/javascript/mastodon/locales/zh-HK.json b/app/javascript/mastodon/locales/zh-HK.json index 931221484..f99a1c00c 100644 --- a/app/javascript/mastodon/locales/zh-HK.json +++ b/app/javascript/mastodon/locales/zh-HK.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "鍵盤快速鍵", "footer.privacy_policy": "私隱政策", "footer.source_code": "查看原始碼", + "footer.status": "Status", "generic.saved": "已儲存", "getting_started.heading": "開始使用", "hashtag.column_header.tag_mode.all": "以及{additional}", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index 63ee6ec6b..1e8dd8051 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -272,6 +272,7 @@ "footer.keyboard_shortcuts": "鍵盤快速鍵", "footer.privacy_policy": "隱私權政策", "footer.source_code": "檢視原始碼", + "footer.status": "狀態", "generic.saved": "已儲存", "getting_started.heading": "開始使用", "hashtag.column_header.tag_mode.all": "以及 {additional}", diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index 32a387a4e..25cbbf000 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -5798,6 +5798,7 @@ a.status-card.compact:hover { &__container { padding: 30px; pointer-events: all; + overflow-y: auto; } .status__content { diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb index 4dfbfc665..a4b1af9d8 100644 --- a/app/lib/activitypub/activity/create.rb +++ b/app/lib/activitypub/activity/create.rb @@ -285,7 +285,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity media_attachments rescue Addressable::URI::InvalidURIError => e - Rails.logger.debug "Invalid URL in attachment: #{e}" + Rails.logger.debug { "Invalid URL in attachment: #{e}" } media_attachments end diff --git a/app/lib/delivery_failure_tracker.rb b/app/lib/delivery_failure_tracker.rb index 66c1fd8c0..c90716632 100644 --- a/app/lib/delivery_failure_tracker.rb +++ b/app/lib/delivery_failure_tracker.rb @@ -6,7 +6,7 @@ class DeliveryFailureTracker FAILURE_DAYS_THRESHOLD = 7 def initialize(url_or_host) - @host = url_or_host.start_with?('https://') || url_or_host.start_with?('http://') ? Addressable::URI.parse(url_or_host).normalized_host : url_or_host + @host = url_or_host.start_with?('https://', 'http://') ? Addressable::URI.parse(url_or_host).normalized_host : url_or_host end def track_failure! diff --git a/app/lib/extractor.rb b/app/lib/extractor.rb index aea60dae5..ead4cdddd 100644 --- a/app/lib/extractor.rb +++ b/app/lib/extractor.rb @@ -18,7 +18,7 @@ module Extractor return [] if entities.empty? entities = remove_overlapping_entities(entities) - entities.each(&block) if block_given? + entities.each(&block) if block entities end diff --git a/app/lib/link_details_extractor.rb b/app/lib/link_details_extractor.rb index b0c4e4f42..2e0672abe 100644 --- a/app/lib/link_details_extractor.rb +++ b/app/lib/link_details_extractor.rb @@ -248,7 +248,7 @@ class LinkDetailsExtractor structured_data rescue Oj::ParseError, EncodingError - Rails.logger.debug("Invalid JSON-LD in #{@original_url}") + Rails.logger.debug { "Invalid JSON-LD in #{@original_url}" } next end.first end diff --git a/app/lib/scope_transformer.rb b/app/lib/scope_transformer.rb index fdfc6cf13..adcb711f8 100644 --- a/app/lib/scope_transformer.rb +++ b/app/lib/scope_transformer.rb @@ -28,7 +28,7 @@ class ScopeTransformer < Parslet::Transform def merge!(other_scope) raise ArgumentError unless other_scope.namespace == namespace && other_scope.term == term - @access.concat(other_scope.instance_variable_get('@access')) + @access.concat(other_scope.instance_variable_get(:@access)) @access.uniq! @access.sort! diff --git a/app/lib/vacuum/access_tokens_vacuum.rb b/app/lib/vacuum/access_tokens_vacuum.rb index 4f3878027..7b91f74a5 100644 --- a/app/lib/vacuum/access_tokens_vacuum.rb +++ b/app/lib/vacuum/access_tokens_vacuum.rb @@ -9,10 +9,10 @@ class Vacuum::AccessTokensVacuum private def vacuum_revoked_access_tokens! - Doorkeeper::AccessToken.where('revoked_at IS NOT NULL').where('revoked_at < NOW()').delete_all + Doorkeeper::AccessToken.where.not(revoked_at: nil).where('revoked_at < NOW()').delete_all end def vacuum_revoked_access_grants! - Doorkeeper::AccessGrant.where('revoked_at IS NOT NULL').where('revoked_at < NOW()').delete_all + Doorkeeper::AccessGrant.where.not(revoked_at: nil).where('revoked_at < NOW()').delete_all end end diff --git a/app/models/concerns/omniauthable.rb b/app/models/concerns/omniauthable.rb index feac0a1f5..7d54e9d6d 100644 --- a/app/models/concerns/omniauthable.rb +++ b/app/models/concerns/omniauthable.rb @@ -97,8 +97,7 @@ module Omniauthable def ensure_valid_username(starting_username) starting_username = starting_username.split('@')[0] temp_username = starting_username.gsub(/[^a-z0-9_]+/i, '') - validated_username = temp_username.truncate(30, omission: '') - validated_username + temp_username.truncate(30, omission: '') end end end diff --git a/app/models/concerns/remotable.rb b/app/models/concerns/remotable.rb index ffe8a7565..cb8f46e68 100644 --- a/app/models/concerns/remotable.rb +++ b/app/models/concerns/remotable.rb @@ -27,11 +27,11 @@ module Remotable public_send("#{attachment_name}=", ResponseWithLimit.new(response, limit)) end rescue Mastodon::UnexpectedResponseError, HTTP::TimeoutError, HTTP::ConnectionError, OpenSSL::SSL::SSLError => e - Rails.logger.debug "Error fetching remote #{attachment_name}: #{e}" + Rails.logger.debug { "Error fetching remote #{attachment_name}: #{e}" } public_send("#{attachment_name}=", nil) if public_send("#{attachment_name}_file_name").present? raise e unless suppress_errors rescue Paperclip::Errors::NotIdentifiedByImageMagickError, Addressable::URI::InvalidURIError, Mastodon::HostValidationError, Mastodon::LengthValidationError, Paperclip::Error, Mastodon::DimensionsValidationError, Mastodon::StreamValidationError => e - Rails.logger.debug "Error fetching remote #{attachment_name}: #{e}" + Rails.logger.debug { "Error fetching remote #{attachment_name}: #{e}" } public_send("#{attachment_name}=", nil) if public_send("#{attachment_name}_file_name").present? end diff --git a/app/models/form/admin_settings.rb b/app/models/form/admin_settings.rb index f76ee42e7..6b468e3ea 100644 --- a/app/models/form/admin_settings.rb +++ b/app/models/form/admin_settings.rb @@ -40,6 +40,7 @@ class Form::AdminSettings media_cache_retention_period content_cache_retention_period backups_retention_period + status_page_url ).freeze INTEGER_KEYS = %i( @@ -85,6 +86,7 @@ class Form::AdminSettings validates :show_domain_blocks_rationale, inclusion: { in: %w(disabled users all) }, if: -> { defined?(@show_domain_blocks_rationale) } validates :media_cache_retention_period, :content_cache_retention_period, :backups_retention_period, numericality: { only_integer: true }, allow_blank: true, if: -> { defined?(@media_cache_retention_period) || defined?(@content_cache_retention_period) || defined?(@backups_retention_period) } validates :site_short_description, length: { maximum: 200 }, if: -> { defined?(@site_short_description) } + validates :status_page_url, url: true validate :validate_site_uploads KEYS.each do |key| diff --git a/app/models/session_activation.rb b/app/models/session_activation.rb index 3a59bad93..0b7fa6fe4 100644 --- a/app/models/session_activation.rb +++ b/app/models/session_activation.rb @@ -59,7 +59,7 @@ class SessionActivation < ApplicationRecord end def exclusive(id) - where('session_id != ?', id).destroy_all + where.not(session_id: id).destroy_all end end diff --git a/app/models/setting.rb b/app/models/setting.rb index 4bcaa060f..c6558d692 100644 --- a/app/models/setting.rb +++ b/app/models/setting.rb @@ -23,7 +23,7 @@ class Setting < RailsSettings::Base def [](key) return super(key) unless rails_initialized? - val = Rails.cache.fetch(cache_key(key, nil)) do + Rails.cache.fetch(cache_key(key, nil)) do db_val = object(key) if db_val @@ -35,7 +35,6 @@ class Setting < RailsSettings::Base default_settings[key] end end - val end def all_as_records diff --git a/app/models/trends/history.rb b/app/models/trends/history.rb index 74723e35c..83532e7bc 100644 --- a/app/models/trends/history.rb +++ b/app/models/trends/history.rb @@ -87,8 +87,8 @@ class Trends::History end def each(&block) - if block_given? - (0...7).map { |i| block.call(get(i.days.ago)) } + if block + (0...7).map { |i| yield(get(i.days.ago)) } else to_enum(:each) end diff --git a/app/models/user.rb b/app/models/user.rb index a813ac83c..5ac1f663c 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -266,7 +266,7 @@ class User < ApplicationRecord end def inactive_message - !approved? ? :pending : super + approved? ? super : :pending end def approve! diff --git a/app/presenters/instance_presenter.rb b/app/presenters/instance_presenter.rb index fba3cc734..e3ba984f7 100644 --- a/app/presenters/instance_presenter.rb +++ b/app/presenters/instance_presenter.rb @@ -38,6 +38,10 @@ class InstancePresenter < ActiveModelSerializers::Model Setting.site_terms end + def status_page_url + Setting.status_page_url + end + def domain Rails.configuration.x.local_domain end diff --git a/app/serializers/initial_state_serializer.rb b/app/serializers/initial_state_serializer.rb index c45de4e06..8243a103f 100644 --- a/app/serializers/initial_state_serializer.rb +++ b/app/serializers/initial_state_serializer.rb @@ -47,6 +47,7 @@ class InitialStateSerializer < ActiveModel::Serializer single_user_mode: Rails.configuration.x.single_user_mode, translation_enabled: TranslationService.configured?, trends_as_landing_page: Setting.trends_as_landing_page, + status_page_url: Setting.status_page_url, } if object.current_account diff --git a/app/serializers/rest/account_serializer.rb b/app/serializers/rest/account_serializer.rb index c4e281b80..b95a61e89 100644 --- a/app/serializers/rest/account_serializer.rb +++ b/app/serializers/rest/account_serializer.rb @@ -129,10 +129,10 @@ class REST::AccountSerializer < ActiveModel::Serializer end def roles - if object.suspended? + if object.suspended? || object.user.nil? [] else - [object.user.role].compact.filter { |role| role.highlighted? } + [object.user.role].compact.filter(&:highlighted?) end end diff --git a/app/serializers/rest/instance_serializer.rb b/app/serializers/rest/instance_serializer.rb index 24a1c1ae6..c97db9c5f 100644 --- a/app/serializers/rest/instance_serializer.rb +++ b/app/serializers/rest/instance_serializer.rb @@ -45,6 +45,7 @@ class REST::InstanceSerializer < ActiveModel::Serializer { urls: { streaming: Rails.configuration.x.streaming_api_base_url, + status: object.status_page_url, }, accounts: { @@ -97,8 +98,6 @@ class REST::InstanceSerializer < ActiveModel::Serializer def registrations_message if Setting.closed_registrations_message.present? markdown.render(Setting.closed_registrations_message) - else - nil end end diff --git a/app/services/activitypub/fetch_featured_collection_service.rb b/app/services/activitypub/fetch_featured_collection_service.rb index a746ef4d6..1208820df 100644 --- a/app/services/activitypub/fetch_featured_collection_service.rb +++ b/app/services/activitypub/fetch_featured_collection_service.rb @@ -53,7 +53,7 @@ class ActivityPub::FetchFeaturedCollectionService < BaseService status.id rescue ActiveRecord::RecordInvalid => e - Rails.logger.debug "Invalid pinned status #{uri}: #{e.message}" + Rails.logger.debug { "Invalid pinned status #{uri}: #{e.message}" } nil end diff --git a/app/services/activitypub/fetch_remote_account_service.rb b/app/services/activitypub/fetch_remote_account_service.rb index 7aba8269e..567dd8a14 100644 --- a/app/services/activitypub/fetch_remote_account_service.rb +++ b/app/services/activitypub/fetch_remote_account_service.rb @@ -6,7 +6,7 @@ class ActivityPub::FetchRemoteAccountService < ActivityPub::FetchRemoteActorServ actor = super return actor if actor.nil? || actor.is_a?(Account) - Rails.logger.debug "Fetching account #{uri} failed: Expected Account, got #{actor.class.name}" + Rails.logger.debug { "Fetching account #{uri} failed: Expected Account, got #{actor.class.name}" } raise Error, "Expected Account, got #{actor.class.name}" unless suppress_errors end end diff --git a/app/services/activitypub/fetch_remote_actor_service.rb b/app/services/activitypub/fetch_remote_actor_service.rb index 4f60ea5e8..8908d21e2 100644 --- a/app/services/activitypub/fetch_remote_actor_service.rb +++ b/app/services/activitypub/fetch_remote_actor_service.rb @@ -38,7 +38,7 @@ class ActivityPub::FetchRemoteActorService < BaseService ActivityPub::ProcessAccountService.new.call(@username, @domain, @json, only_key: only_key, verified_webfinger: !only_key, request_id: request_id) rescue Error => e - Rails.logger.debug "Fetching actor #{uri} failed: #{e.message}" + Rails.logger.debug { "Fetching actor #{uri} failed: #{e.message}" } raise unless suppress_errors end diff --git a/app/services/activitypub/fetch_remote_key_service.rb b/app/services/activitypub/fetch_remote_key_service.rb index 32e82b47a..8eb97c1e6 100644 --- a/app/services/activitypub/fetch_remote_key_service.rb +++ b/app/services/activitypub/fetch_remote_key_service.rb @@ -38,7 +38,7 @@ class ActivityPub::FetchRemoteKeyService < BaseService find_actor(owner_uri, @owner, suppress_errors) rescue Error => e - Rails.logger.debug "Fetching key #{uri} failed: #{e.message}" + Rails.logger.debug { "Fetching key #{uri} failed: #{e.message}" } raise unless suppress_errors end diff --git a/app/services/activitypub/process_collection_service.rb b/app/services/activitypub/process_collection_service.rb index fffe30195..52f48bd49 100644 --- a/app/services/activitypub/process_collection_service.rb +++ b/app/services/activitypub/process_collection_service.rb @@ -11,7 +11,7 @@ class ActivityPub::ProcessCollectionService < BaseService begin @json = compact(@json) if @json['signature'].is_a?(Hash) rescue JSON::LD::JsonLdError => e - Rails.logger.debug "Error when compacting JSON-LD document for #{value_or_id(@json['actor'])}: #{e.message}" + Rails.logger.debug { "Error when compacting JSON-LD document for #{value_or_id(@json['actor'])}: #{e.message}" } @json = original_json.without('signature') end @@ -71,8 +71,8 @@ class ActivityPub::ProcessCollectionService < BaseService @account = ActivityPub::LinkedDataSignature.new(@json).verify_actor! @account = nil unless @account.is_a?(Account) @account - rescue JSON::LD::JsonLdError => e - Rails.logger.debug "Could not verify LD-Signature for #{value_or_id(@json['actor'])}: #{e.message}" + rescue JSON::LD::JsonLdError, RDF::WriterError => e + Rails.logger.debug { "Could not verify LD-Signature for #{value_or_id(@json['actor'])}: #{e.message}" } nil end end diff --git a/app/services/activitypub/process_status_update_service.rb b/app/services/activitypub/process_status_update_service.rb index 11b38ab92..1dc393e28 100644 --- a/app/services/activitypub/process_status_update_service.rb +++ b/app/services/activitypub/process_status_update_service.rb @@ -94,7 +94,7 @@ class ActivityPub::ProcessStatusUpdateService < BaseService @next_media_attachments << media_attachment rescue Addressable::URI::InvalidURIError => e - Rails.logger.debug "Invalid URL in attachment: #{e}" + Rails.logger.debug { "Invalid URL in attachment: #{e}" } end end diff --git a/app/services/fetch_link_card_service.rb b/app/services/fetch_link_card_service.rb index e5b5b730e..4d55aa5e2 100644 --- a/app/services/fetch_link_card_service.rb +++ b/app/services/fetch_link_card_service.rb @@ -30,7 +30,7 @@ class FetchLinkCardService < BaseService attach_card if @card&.persisted? rescue HTTP::Error, OpenSSL::SSL::SSLError, Addressable::URI::InvalidURIError, Mastodon::HostValidationError, Mastodon::LengthValidationError => e - Rails.logger.debug "Error fetching link #{@original_url}: #{e}" + Rails.logger.debug { "Error fetching link #{@original_url}: #{e}" } nil end diff --git a/app/services/fetch_oembed_service.rb b/app/services/fetch_oembed_service.rb index 7d0879c79..9851ac098 100644 --- a/app/services/fetch_oembed_service.rb +++ b/app/services/fetch_oembed_service.rb @@ -82,7 +82,7 @@ class FetchOEmbedService return if @endpoint_url.blank? body = Request.new(:get, @endpoint_url).perform do |res| - res.code != 200 ? nil : res.body_with_limit + res.code == 200 ? res.body_with_limit : nil end validate(parse_for_format(body)) if body.present? diff --git a/app/services/fetch_resource_service.rb b/app/services/fetch_resource_service.rb index 73204e55d..4470fca01 100644 --- a/app/services/fetch_resource_service.rb +++ b/app/services/fetch_resource_service.rb @@ -12,7 +12,7 @@ class FetchResourceService < BaseService process(url) rescue HTTP::Error, OpenSSL::SSL::SSLError, Addressable::URI::InvalidURIError, Mastodon::HostValidationError, Mastodon::LengthValidationError => e - Rails.logger.debug "Error fetching resource #{@url}: #{e}" + Rails.logger.debug { "Error fetching resource #{@url}: #{e}" } nil end diff --git a/app/services/keys/claim_service.rb b/app/services/keys/claim_service.rb index ae9e24a24..0451c3cb1 100644 --- a/app/services/keys/claim_service.rb +++ b/app/services/keys/claim_service.rb @@ -58,7 +58,7 @@ class Keys::ClaimService < BaseService @result = Result.new(@target_account, @device_id, key_id: json['id'], key: json['publicKeyBase64'], signature: json.dig('signature', 'signatureValue')) rescue HTTP::Error, OpenSSL::SSL::SSLError, Mastodon::Error => e - Rails.logger.debug "Claiming one-time key for #{@target_account.acct}:#{@device_id} failed: #{e}" + Rails.logger.debug { "Claiming one-time key for #{@target_account.acct}:#{@device_id} failed: #{e}" } nil end diff --git a/app/services/keys/query_service.rb b/app/services/keys/query_service.rb index ac3388bdc..404854c9f 100644 --- a/app/services/keys/query_service.rb +++ b/app/services/keys/query_service.rb @@ -73,7 +73,7 @@ class Keys::QueryService < BaseService Device.new(device_id: device['id'], name: device['name'], identity_key: device.dig('identityKey', 'publicKeyBase64'), fingerprint_key: device.dig('fingerprintKey', 'publicKeyBase64'), claim_url: device['claim']) end rescue HTTP::Error, OpenSSL::SSL::SSLError, Mastodon::Error => e - Rails.logger.debug "Querying devices for #{@account.acct} failed: #{e}" + Rails.logger.debug { "Querying devices for #{@account.acct} failed: #{e}" } nil end end diff --git a/app/services/resolve_account_service.rb b/app/services/resolve_account_service.rb index d8b81a7b9..1ba372cd6 100644 --- a/app/services/resolve_account_service.rb +++ b/app/services/resolve_account_service.rb @@ -54,7 +54,7 @@ class ResolveAccountService < BaseService fetch_account! rescue Webfinger::Error => e - Rails.logger.debug "Webfinger query for #{@uri} failed: #{e}" + Rails.logger.debug { "Webfinger query for #{@uri} failed: #{e}" } raise unless @options[:suppress_errors] end diff --git a/app/services/verify_link_service.rb b/app/services/verify_link_service.rb index 9708cdd73..707aeb4e0 100644 --- a/app/services/verify_link_service.rb +++ b/app/services/verify_link_service.rb @@ -11,7 +11,7 @@ class VerifyLinkService < BaseService field.mark_verified! rescue OpenSSL::SSL::SSLError, HTTP::Error, Addressable::URI::InvalidURIError, Mastodon::HostValidationError, Mastodon::LengthValidationError, IPAddr::AddressFamilyError => e - Rails.logger.debug "Error fetching link #{@url}: #{e}" + Rails.logger.debug { "Error fetching link #{@url}: #{e}" } nil end @@ -19,7 +19,7 @@ class VerifyLinkService < BaseService def perform_request! @body = Request.new(:get, @url).add_headers('Accept' => 'text/html').perform do |res| - res.code != 200 ? nil : res.body_with_limit + res.code == 200 ? res.body_with_limit : nil end end diff --git a/app/views/admin/settings/about/show.html.haml b/app/views/admin/settings/about/show.html.haml index 6ee719e36..cbba20faa 100644 --- a/app/views/admin/settings/about/show.html.haml +++ b/app/views/admin/settings/about/show.html.haml @@ -23,6 +23,9 @@ .fields-row__column.fields-row__column-6.fields-group = f.input :show_domain_blocks_rationale, wrapper: :with_label, collection: %i(disabled users all), label_method: lambda { |value| t("admin.settings.domain_blocks.#{value}") }, include_blank: false, collection_wrapper_tag: 'ul', item_wrapper_tag: 'li' + .fields-group + = f.input :status_page_url, wrapper: :with_block_label, input_html: { placeholder: "https://status.#{Rails.configuration.x.local_domain}" } + .fields-group = f.input :site_terms, wrapper: :with_block_label, as: :text, input_html: { rows: 8 } diff --git a/app/workers/activitypub/processing_worker.rb b/app/workers/activitypub/processing_worker.rb index 5e36fab51..1bb94b7f2 100644 --- a/app/workers/activitypub/processing_worker.rb +++ b/app/workers/activitypub/processing_worker.rb @@ -15,6 +15,6 @@ class ActivityPub::ProcessingWorker ActivityPub::ProcessCollectionService.new.call(body, actor, override_timestamps: true, delivered_to_account_id: delivered_to_account_id, delivery: true) rescue ActiveRecord::RecordInvalid => e - Rails.logger.debug "Error processing incoming ActivityPub object: #{e}" + Rails.logger.debug { "Error processing incoming ActivityPub object: #{e}" } end end diff --git a/app/workers/import/relationship_worker.rb b/app/workers/import/relationship_worker.rb index 6791b15c3..c2728c196 100644 --- a/app/workers/import/relationship_worker.rb +++ b/app/workers/import/relationship_worker.rb @@ -49,7 +49,7 @@ class Import::RelationshipWorker .with_error_handler { |error, handle| error.is_a?(HTTP::Error) || error.is_a?(OpenSSL::SSL::SSLError) ? handle.call(error) : raise(error) } .run else - block.call + yield end end end diff --git a/app/workers/scheduler/user_cleanup_scheduler.rb b/app/workers/scheduler/user_cleanup_scheduler.rb index 63f9ed78c..45cfbc62e 100644 --- a/app/workers/scheduler/user_cleanup_scheduler.rb +++ b/app/workers/scheduler/user_cleanup_scheduler.rb @@ -15,7 +15,7 @@ class Scheduler::UserCleanupScheduler def clean_unconfirmed_accounts! User.where('confirmed_at is NULL AND confirmation_sent_at <= ?', 2.days.ago).reorder(nil).find_in_batches do |batch| # We have to do it separately because of missing database constraints - AccountModerationNote.where(account_id: batch.map(&:account_id)).delete_all + AccountModerationNote.where(target_account_id: batch.map(&:account_id)).delete_all Account.where(id: batch.map(&:account_id)).delete_all User.where(id: batch.map(&:id)).delete_all end diff --git a/config.ru b/config.ru index 3476455ef..d7295e476 100644 --- a/config.ru +++ b/config.ru @@ -1,5 +1,5 @@ # frozen_string_literal: true # This file is used by Rack-based servers to start the application. -require ::File.expand_path('../config/environment', __FILE__) +require ::File.expand_path('config/environment', __dir__) run Rails.application diff --git a/config/locales/activerecord.fr.yml b/config/locales/activerecord.fr.yml index e2d950d1f..bd34fcbcf 100644 --- a/config/locales/activerecord.fr.yml +++ b/config/locales/activerecord.fr.yml @@ -19,7 +19,7 @@ fr: account: attributes: username: - invalid: seulement des lettres, des nombres et des tirets bas + invalid: seulement des lettres, des chiffres et des tirets bas reserved: est réservé admin/webhook: attributes: diff --git a/config/locales/ast.yml b/config/locales/ast.yml index 0a85b4c9a..f612d4d28 100644 --- a/config/locales/ast.yml +++ b/config/locales/ast.yml @@ -368,6 +368,7 @@ ast: discovery: Descubrimientu localization: body: Mastodon tradúcenlu voluntarios, + guide_link: https://crowdin.com/project/mastodon guide_link_text: tol mundu pue collaborar. sensitive_content: Conteníu sensible toot_layout: Distribución de los artículos @@ -713,6 +714,10 @@ ast: unlisted_long: Tol mundu pue velos, mas nun apaecen nes llinies de tiempu públiques statuses_cleanup: exceptions: Esceiciones + interaction_exceptions: Esceiciones basaes nes interaiciones + keep_direct: Caltener los mensaxes direutos + keep_pinned: Caltener los artículos fixaos + keep_polls: Caltener les encuestes min_age: '1209600': 2 selmanes '15778476': 6 meses diff --git a/config/locales/da.yml b/config/locales/da.yml index 913f275cc..d89aef9f3 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -142,7 +142,7 @@ da: show: created_reports: Indsendte anmeldelser targeted_reports: Anmeldt af andre - silence: Brgræns + silence: Begræns silenced: Begrænset statuses: Indlæg strikes: Tidligere anmeldelser @@ -603,7 +603,7 @@ da: delete: Slet placeholder: Beskriv udførte foranstaltninger eller andre relevante opdateringer... title: Notater - notes_description_html: Se og skriv notater til andre moderatorer og dit fremtid selv + notes_description_html: Se og skriv notater til andre moderatorer og dit fremtidige jeg processed_msg: 'Anmeldelse #%{id} er blev behandlet' quick_actions_description_html: 'Træf en hurtig foranstaltning eller rul ned for at se anmeldt indhold:' remote_user_placeholder: fjernbrugeren fra %{instance} diff --git a/config/locales/de.yml b/config/locales/de.yml index ee5f3c28e..605eb8e73 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -84,7 +84,7 @@ de: remote: Extern title: Herkunft login_status: Anmeldestatus - media_attachments: Medienanhänge + media_attachments: Speicherplatz memorialize: In Gedenkseite umwandeln memorialized: Gedenkseite memorialized_msg: "%{username} wurde erfolgreich in ein Gedenkseiten-Konto umgewandelt" @@ -108,7 +108,7 @@ de: previous_strikes_description_html: one: Dieses Konto hat einen Verstoß. other: Dieses Konto hat %{count} Verstöße. - promote: Befördern + promote: Berechtigungen erweitern protocol: Protokoll public: Öffentlich push_subscription_expires: PuSH-Abonnement läuft aus @@ -194,7 +194,7 @@ de: destroy_instance: Domain-Daten entfernen destroy_ip_block: IP-Regel löschen destroy_status: Beitrag löschen - destroy_unavailable_domain: Nicht verfügbare Domain löschen + destroy_unavailable_domain: Nicht-verfügbare Domain entfernen destroy_user_role: Rolle entfernen disable_2fa_user: 2FA deaktivieren disable_custom_emoji: Eigenes Emoji deaktivieren @@ -270,7 +270,7 @@ de: reopen_report_html: "%{name} hat die Meldung %{target} wieder geöffnet" resend_user_html: "%{name} hat erneut eine Bestätigungs-E-Mail für %{target} gesendet" reset_password_user_html: "%{name} hat das Passwort von %{target} zurückgesetzt" - resolve_report_html: "%{name} hat die Meldung %{target} bearbeitet" + resolve_report_html: "%{name} hat die Meldung %{target} geklärt" sensitive_account_html: "%{name} hat die Medien von %{target} mit einer Inhaltswarnung versehen" silence_account_html: "%{name} hat das Konto von %{target} stummgeschaltet" suspend_account_html: "%{name} hat das Konto von %{target} gesperrt" @@ -286,7 +286,7 @@ de: update_status_html: "%{name} hat einen Beitrag von %{target} aktualisiert" update_user_role_html: "%{name} hat die Rolle %{target} geändert" deleted_account: gelöschtes Konto - empty: Keine Protokolle gefunden. + empty: Protokolle nicht gefunden. filter_by_action: Nach Aktion filtern filter_by_user: Nach Benutzer*in filtern title: Protokoll @@ -604,7 +604,7 @@ de: create_and_resolve: Mit Kommentar lösen create_and_unresolve: Mit Kommentar wieder öffnen delete: Löschen - placeholder: Bitte beschreibe, welche Maßnahmen ergriffen wurden oder andere damit verbundene Aktualisierungen … + placeholder: Bitte beschreibe, welche Maßnahmen bzw. Sanktionen ergriffen worden sind, und führe alles auf, was es Erwähnenswertes zu diesem Profil zu berichten gibt … title: Notizen notes_description_html: Notiz an dich und andere Moderator*innen hinterlassen processed_msg: 'Meldung #%{id} erfolgreich bearbeitet' diff --git a/config/locales/devise.fr.yml b/config/locales/devise.fr.yml index 1047fae0b..8eb744d94 100644 --- a/config/locales/devise.fr.yml +++ b/config/locales/devise.fr.yml @@ -15,21 +15,21 @@ fr: pending: Votre compte est toujours en cours d'approbation. timeout: Votre session a expiré. Veuillez vous reconnecter pour continuer. unauthenticated: Vous devez vous connecter ou vous inscrire pour continuer. - unconfirmed: Vous devez valider votre adresse courriel pour continuer. + unconfirmed: Vous devez valider votre adresse de courriel pour continuer. mailer: confirmation_instructions: - action: Vérifier l’adresse courriel + action: Vérifier l’adresse de courriel action_with_app: Confirmer et retourner à %{app} explanation: Vous avez créé un compte sur %{host} avec cette adresse courriel. Vous êtes à un clic de l’activer. Si ce n’était pas vous, veuillez ignorer ce courriel. explanation_when_pending: Vous avez demandé à vous inscrire à %{host} avec cette adresse de courriel. Une fois que vous aurez confirmé cette adresse, nous étudierons votre demande. Vous ne pourrez pas vous connecter d’ici-là. Si votre demande est refusée, vos données seront supprimées du serveur, aucune action supplémentaire de votre part n’est donc requise. Si vous n’êtes pas à l’origine de cette demande, veuillez ignorer ce message. extra_html: Merci de consultez également les règles du serveur et nos conditions d’utilisation. subject: 'Mastodon : Merci de confirmer votre inscription sur %{instance}' - title: Vérifiez l’adresse courriel + title: Vérifiez l’adresse de courriel email_changed: - explanation: 'L’adresse courriel de votre compte est en cours de modification pour devenir :' + explanation: 'L’adresse de courriel de votre compte est en cours de modification pour devenir :' extra: Si vous n’avez pas changé votre adresse courriel, il est probable que quelqu’un ait eu accès à votre compte. Veuillez changer votre mot de passe immédiatement ou contacter l’administrateur·rice du serveur si vous êtes bloqué·e hors de votre compte. subject: 'Mastodon : Courriel modifié' - title: Nouvelle adresse courriel + title: Nouvelle adresse de courriel password_change: explanation: Le mot de passe de votre compte a été changé. extra: Si vous n’avez pas changé votre mot de passe, il est probable que quelqu’un ait eu accès à votre compte. Veuillez changer votre mot de passe immédiatement ou contacter l’administrateur·rice du serveur si vous êtes bloqué·e hors de votre compte. @@ -37,8 +37,8 @@ fr: title: Mot de passe modifié reconfirmation_instructions: explanation: Confirmez la nouvelle adresse pour changer votre courriel. - extra: Si ce changement n’a pas été initié par vous, veuillez ignorer ce courriel. L’adresse courriel du compte Mastodon ne changera pas tant que vous n’aurez pas cliqué sur le lien ci-dessus. - subject: 'Mastodon : Confirmez l’adresse courriel pour %{instance}' + extra: Si ce changement n’a pas été initié par vous, veuillez ignorer ce courriel. L’adresse de courriel du compte Mastodon ne changera pas tant que vous n’aurez pas cliqué sur le lien ci-dessus. + subject: 'Mastodon : Confirmez l’adresse de courriel pour %{instance}' title: Vérifier l’adresse courriel reset_password_instructions: action: Modifier le mot de passe @@ -82,8 +82,8 @@ fr: success: Authentifié avec succès via %{kind}. passwords: no_token: Vous ne pouvez accéder à cette page sans passer par un courriel de réinitialisation de mot de passe. Si vous êtes passé⋅e par un courriel de ce type, assurez-vous d’utiliser l’URL complète. - send_instructions: Vous allez recevoir les instructions de réinitialisation du mot de passe dans quelques instants. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables. - send_paranoid_instructions: Si votre adresse électronique existe dans notre base de données, vous allez recevoir un lien de réinitialisation par courriel. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables. + send_instructions: Si votre adresse de courriel existe dans notre base de données, vous allez recevoir un lien de réinitialisation par courriel. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables. + send_paranoid_instructions: Si votre adresse de courriel existe dans notre base de données, vous allez recevoir un lien de réinitialisation par courriel. Veuillez, dans le cas où vous ne recevriez pas ce message, vérifier votre dossier d’indésirables. updated: Votre mot de passe a été modifié avec succès, vous êtes maintenant connecté. updated_not_active: Votre mot de passe a été modifié avec succès. registrations: @@ -92,8 +92,8 @@ fr: signed_up_but_inactive: Vous êtes bien enregistré·e. Vous ne pouvez cependant pas vous connecter car votre compte n’est pas encore activé. signed_up_but_locked: Vous êtes bien enregistré·e. Vous ne pouvez cependant pas vous connecter car votre compte est verrouillé. signed_up_but_pending: Un message avec un lien de confirmation a été envoyé à votre adresse courriel. Après avoir cliqué sur le lien, nous examinerons votre demande. Vous serez informé·e si elle a été approuvée. - signed_up_but_unconfirmed: Un message contenant un lien de confirmation a été envoyé à votre adresse courriel. Ouvrez ce lien pour activer votre compte. Veuillez vérifier votre dossier d'indésirables si vous ne recevez pas le courriel. - update_needs_confirmation: Votre compte a bien été mis à jour, mais nous devons vérifier votre nouvelle adresse courriel. Merci de vérifier vos courriels et de cliquer sur le lien de confirmation pour finaliser la validation de votre nouvelle adresse. Si vous n'avez pas reçu le courriel, vérifiez votre dossier de spams. + signed_up_but_unconfirmed: Un message contenant un lien de confirmation a été envoyé à votre adresse de courriel. Ouvrez ce lien pour activer votre compte. Veuillez vérifier votre dossier d'indésirables si vous ne recevez pas le courriel. + update_needs_confirmation: Votre compte a bien été mis à jour, mais nous devons vérifier votre nouvelle adresse de courriel. Merci de vérifier vos courriels et de cliquer sur le lien de confirmation pour finaliser la validation de votre nouvelle adresse. Si vous n'avez pas reçu le courriel, vérifiez votre dossier d’indésirables. updated: Votre compte a été modifié avec succès. sessions: already_signed_out: Déconnecté·e avec succès. diff --git a/config/locales/doorkeeper.fr.yml b/config/locales/doorkeeper.fr.yml index 7819d1fd8..d777c925a 100644 --- a/config/locales/doorkeeper.fr.yml +++ b/config/locales/doorkeeper.fr.yml @@ -86,7 +86,7 @@ fr: invalid_grant: L’autorisation accordée est invalide, expirée, annulée, ne concorde pas avec l’URL de redirection utilisée dans la requête d’autorisation, ou a été délivrée à un autre client. invalid_redirect_uri: L’URL de redirection n’est pas valide. invalid_request: - missing_param: 'Paramètre requis manquant: %{value}.' + missing_param: 'Paramètre requis manquant : %{value}.' request_not_authorized: La requête doit être autorisée. Le paramètre requis pour l'autorisation de la requête est manquant ou non valide. unknown: La requête omet un paramètre requis, inclut une valeur de paramètre non prise en charge ou est autrement mal formée. invalid_resource_owner: Les identifiants fournis par le propriétaire de la ressource ne sont pas valides ou le propriétaire de la ressource ne peut être trouvé @@ -149,18 +149,18 @@ fr: scopes: admin:read: lire toutes les données du serveur admin:read:accounts: lire les informations sensibles de tous les comptes - admin:read:canonical_email_blocks: lire les informations sensibles de tous les bloqueurs d'e-mails canoniques + admin:read:canonical_email_blocks: lire les informations sensibles de tous les bloqueurs de courriels canoniques admin:read:domain_allows: lire les informations sensibles de tous les domaines autorisés - admin:read:domain_blocks: lire les informations sensibles de tous les blocqueurs de domaines - admin:read:email_domain_blocks: lire les informations sensibles de tous les blocqueurs d'e-mails de domaines + admin:read:domain_blocks: lire les informations sensibles de tous les bloqueurs de domaines + admin:read:email_domain_blocks: lire les informations sensibles de tous les bloqueurs de domaines de courriel admin:read:ip_blocks: lire les informations sensibles de tous les blocqueurs d'IP admin:read:reports: lire les informations sensibles de tous les signalements et des comptes signalés admin:write: modifier toutes les données sur le serveur admin:write:accounts: effectuer des actions de modération sur les comptes - admin:write:canonical_email_blocks: effectuer des actions de modération sur les bloqueurs d'e-mails canoniques + admin:write:canonical_email_blocks: effectuer des actions de modération sur les bloqueurs de courriels canoniques admin:write:domain_allows: effectuer des actions de modération sur les autorisations de domaines admin:write:domain_blocks: effectuer des actions de modération sur des bloqueurs de domaines - admin:write:email_domain_blocks: effectuer des actions de modération sur des bloqueurs d'e-mails de domaines + admin:write:email_domain_blocks: effectuer des actions de modération sur des bloqueurs de domaines de courriel admin:write:ip_blocks: effectuer des actions de modération sur des bloqueurs d'IP admin:write:reports: effectuer des actions de modération sur les signalements crypto: utiliser le chiffrement de bout-en-bout diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml index 3bda08dcd..b02e00bf0 100644 --- a/config/locales/en-GB.yml +++ b/config/locales/en-GB.yml @@ -110,6 +110,75 @@ en-GB: other: This account has %{count} strikes. promote: Promote protocol: Protocol + public: Public + push_subscription_expires: PuSH subscription expires + redownload: Refresh profile + redownloaded_msg: Successfully refreshed %{username}'s profile from origin + reject: Reject + rejected_msg: Successfully rejected %{username}'s sign-up application + remote_suspension_irreversible: The data of this account has been irreversibly deleted. + remote_suspension_reversible_hint_html: The account has been suspended on their server, and the data will be fully removed on %{date}. Until then, the remote server can restore this account without any ill effects. If you wish to remove all of the account's data immediately, you can do so below. + remove_avatar: Remove avatar + remove_header: Remove header + removed_avatar_msg: Successfully removed %{username}'s avatar image + removed_header_msg: Successfully removed %{username}'s header image + resend_confirmation: + already_confirmed: This user is already confirmed + send: Resend confirmation email + success: Confirmation email successfully sent! + reset: Reset + reset_password: Reset password + resubscribe: Resubscribe + role: Role + search: Search + search_same_email_domain: Other users with the same e-mail domain + search_same_ip: Other users with the same IP + security_measures: + only_password: Only password + password_and_2fa: Password and 2FA + sensitive: Force-sensitive + sensitized: Marked as sensitive + shared_inbox_url: Shared inbox URL + show: + created_reports: Made reports + targeted_reports: Reported by others + silence: Limit + silenced: Limited + statuses: Posts + strikes: Previous strikes + subscribe: Subscribe + suspend: Suspend + suspended: Suspended + suspension_irreversible: The data of this account has been irreversibly deleted. You can unsuspend the account to make it usable but it will not recover any data it previously had. + suspension_reversible_hint_html: The account has been suspended, and the data will be fully removed on %{date}. Until then, the account can be restored without any ill effects. If you wish to remove all of the account's data immediately, you can do so below. + title: Accounts + unblock_email: Unblock email address + unblocked_email_msg: Successfully unblocked %{username}'s email address + unconfirmed_email: Unconfirmed email + undo_sensitized: Undo force-sensitive + undo_silenced: Undo limit + undo_suspension: Undo suspension + unsilenced_msg: Successfully undid limit of %{username}'s account + unsubscribe: Unsubscribe + unsuspended_msg: Successfully unsuspended %{username}'s account + username: Username + view_domain: View summary for domain + warn: Warn + web: Web + whitelisted: Allowed for federation + action_logs: + action_types: + approve_appeal: Approve Appeal + approve_user: Approve User + assigned_to_self_report: Assign Report + change_email_user: Change E-mail for User + change_role_user: Change Role of User + confirm_user: Confirm User + create_account_warning: Create Warning + create_announcement: Create Announcement + create_canonical_email_block: Create E-mail Block + create_custom_emoji: Create Custom Emoji + unassigned_report: Unassign Report roles: categories: devops: DevOps @@ -132,7 +201,15 @@ en-GB: platforms: blackberry: BlackBerry chrome_os: ChromeOS + two_factor_authentication: + recovery_codes_regenerated: Recovery codes successfully regenerated + recovery_instructions_html: If you ever lose access to your phone, you can use one of the recovery codes below to regain access to your account. Keep the recovery codes safe. For example, you may print them and store them with other important documents. + webauthn: Security keys user_mailer: + appeal_approved: + action: Go to your account + explanation: The appeal of the strike against your account on %{strike_date} that you submitted on %{appeal_date} has been approved. Your account is once again in good standing. + subject: Your appeal from %{date} has been approved warning: subject: silence: Your account %{acct} has been limited @@ -161,3 +238,8 @@ en-GB: otp_lost_help_html: If you lost access to both, you may get in touch with %{email} seamless_external_login: You are logged in via an external service, so password and e-mail settings are not available. signed_in_as: 'Signed in as:' + webauthn_credentials: + not_enabled: You haven't enabled WebAuthn yet + not_supported: This browser doesn't support security keys + otp_required: To use security keys please enable two-factor authentication first. + registered_on: Registered on %{date} diff --git a/config/locales/eo.yml b/config/locales/eo.yml index 2131e253c..dc783a82c 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -1,7 +1,7 @@ --- eo: about: - about_mastodon_html: 'La socia retejo de la estonteco: sen reklamo, sen kompania observado, etika desegno, kaj malcentrigo! Regu viajn datumojn per Mastodon!' + about_mastodon_html: 'La socia retejo de la estonteco: sen reklamo, sen observado por firmao, etika desegno, kaj malcentrigo! Regu viajn informojn per Mastodon!' contact_missing: Ne elektita contact_unavailable: Ne disponebla hosted_on: "%{domain} estas nodo de Mastodon" @@ -223,8 +223,8 @@ eo: update_custom_emoji: Ĝisdatigi proprajn emoĝiojn update_domain_block: Ĝigdatigi domajnan blokadon update_ip_block: Krei IP-regulon - update_status: Ĝisdatigi staton - update_user_role: Ĝisdatigi Rolon + update_status: Ĝisdatigi afiŝon + update_user_role: Ĝisdatigi rolon actions: approve_appeal_html: "%{name} aprobis kontroldecidapelacion de %{target}" approve_user_html: "%{name} aprobis registriĝon de %{target}" @@ -278,12 +278,12 @@ eo: unsensitive_account_html: "%{name} malmarkis audovidaĵojn de %{target} kiel sentemaj" unsilence_account_html: "%{name} malfaris limon de konto de %{target}" unsuspend_account_html: "%{name} malsuspendis la konton de %{target}" - update_announcement_html: "%{name} ĝisdatigis anoncon %{target}" - update_custom_emoji_html: "%{name} ĝisdatigis emoĝion %{target}" + update_announcement_html: "%{name} ĝisdatigis la anoncon %{target}" + update_custom_emoji_html: "%{name} ĝisdatigis la emoĝion %{target}" update_domain_block_html: "%{name} ĝisdatigis domajnblokon por %{target}" update_ip_block_html: "%{name} ŝanĝis regulon por IP %{target}" update_status_html: "%{name} ĝisdatigis mesaĝon de %{target}" - update_user_role_html: "%{name} ŝanĝis rolon %{target}" + update_user_role_html: "%{name} ŝanĝis la rolon %{target}" deleted_account: forigita konto empty: Neniu ĵurnalo trovita. filter_by_action: Filtri per ago @@ -556,7 +556,7 @@ eo: pending: Atendante aprobon de la ripetilo save_and_enable: Konservi kaj ebligi setup: Agordi konekton al ripetilo - signatures_not_enabled: Ripetiloj ne ĝuste funkcias dum sekura reĝimo au limigita federacio reĝimo ebligitas + signatures_not_enabled: Relajsoj eble ne funkcias ĝuste dum sekura reĝimo aŭ reĝimo de limigita federado estas ŝaltita status: Stato title: Ripetiloj report_notes: @@ -601,6 +601,7 @@ eo: placeholder: Priskribu faritajn agojn, aŭ ajnan novan informon pri tiu signalo… title: Notoj notes_description_html: Vidi kaj lasi notojn por aliaj kontrolantoj kaj estonta vi + processed_msg: 'La raporto #%{id} sukcese prilaborita' quick_actions_description_html: 'Agu au movu malsupre por vidi raportitajn enhavojn:' remote_user_placeholder: la ekstera uzanto de %{instance} reopen: Remalfermi signalon @@ -613,9 +614,21 @@ eo: status: Mesaĝoj statuses: Raportita enhavo statuses_description_html: Sentema enhavo referencitas kun la raportita konto + summary: + action_preambles: + delete_html: 'Vi ja tuj forigos kelke da afiŝoj de @%{acct}. Tio faros kiel jene:' + mark_as_sensitive_html: 'Vi ja tuj markos kelke da afiŝoj de @%{acct} kiel tiklaj. Tio faros kiel:' + silence_html: 'Vi ja tuj limigos kelke da afiŝoj de @%{acct}. Tio faros kiel:' + suspend_html: 'Vi ja tuj suspendos la konton de @%{acct}. Tio faros kiel:' + actions: + suspend_html: Suspendi @%{acct}, fari ties profilon kaj enhavojn neatingeblaj kaj maleblaj interagi kun + close_report: 'Marki la raporto #%{id} kiel solvita' + close_reports_html: Marki ĉiuj raportoj kontraŭ @%{acct} kiel solvitaj + send_email_html: Sendi al @%{acct} retpoŝtaĵon de averto target_origin: Origino de raportita konto title: Signaloj unassign: Malasigni + unknown_action_msg: 'Nekonata ago: %{action}' unresolved: Nesolvitaj updated_at: Ĝisdatigita view_profile: Vidi profilon @@ -710,6 +723,7 @@ eo: preamble: Interesa enhavo estas grava por novaj uzantoj kiuj eble ne konas ajn iun. profile_directory: Profilujo public_timelines: Publikaj templinioj + publish_discovered_servers: Publikigi la malkovritajn servilojn publish_statistics: Publikigi statistikojn title: Eltrovado trends: Tendencoj @@ -938,6 +952,8 @@ eo: auth: apply_for_account: Peti konton change_password: Pasvorto + confirmations: + wrong_email_hint: Se tiu retpoŝtadreso ne estas ĝusta, vi povas ŝanĝi ĝin en la agordoj pri la konto. delete_account: Forigi konton delete_account_html: Se vi deziras forigi vian konton, vi povas fari tion ĉi tie. Vi bezonos konfirmi vian peton. description: @@ -1366,6 +1382,8 @@ eo: unrecognized_emoji: ne estas rekonita emoĝio relationships: activity: Konta aktiveco + confirm_remove_selected_followers: Ĉu vi certas, ke vi volas forigi la elektitajn sekvantojn? + confirm_remove_selected_follows: Ĉu vi certas, ke vi volas forigi la elektitajn sekvatojn? dormant: Dormanta follow_selected_followers: Sekvi selektitajn sekvantojn followers: Sekvantoj diff --git a/config/locales/fr-QC.yml b/config/locales/fr-QC.yml index ed4c900f7..504ab8486 100644 --- a/config/locales/fr-QC.yml +++ b/config/locales/fr-QC.yml @@ -392,7 +392,7 @@ fr-QC: 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: "Limiter rendra les messages des comptes de ce domaine invisibles à ceux qui ne les suivent pas. Suspendre supprimera tout le contenu, les médias, et données de profile pour les comptes de ce domaine de votre serveur. Utilisez Aucun si vous voulez simplement rejeter les fichiers multimédia." + desc_html: "Limiter rendra les messages des comptes de ce domaine invisibles pour tous les comptes qui ne les suivent pas. Suspendre supprimera de votre serveur tout le contenu, les médias et données de profil pour les comptes sur ce domaine. Utilisez Aucun si vous voulez simplement rejeter les fichiers multimédia." noop: Aucune silence: Limiter suspend: Suspendre @@ -438,11 +438,12 @@ fr-QC: import: description_html: Vous êtes sur le point d'importer une liste de blocs de domaine. Veuillez examiner cette liste très attentivement, spécialement si vous n'êtes pas l'auteur de cette liste. existing_relationships_warning: Relations de suivi existantes - private_comment_description_html: 'Pour vous aider à suivre d''où viennent les blocs importés, des blocs importés seront créés avec le commentaire privé suivant : %{comment}' + private_comment_description_html: 'Pour vous aider à savoir d''où proviennent les blocages importés, ceux-ci seront créés avec le commentaire privé suivant : %{comment}' private_comment_template: Importé depuis %{source} le %{date} - title: Importer des blocs de domaine + title: Importer des blocages de domaine + invalid_domain_block: 'Un ou plusieurs blocages de domaine ont été ignorés en raison des erreurs suivantes : %{error}' new: - title: Importer des blocs de domaine + title: Importer des blocages de domaine no_file: Aucun fichier sélectionné follow_recommendations: description_html: "Les recommandations d'abonnement aident les nouvelles personnes à trouver rapidement du contenu intéressant. Si un·e utilisateur·rice n'a pas assez interagi avec les autres pour avoir des recommandations personnalisées, ces comptes sont alors recommandés. La sélection est mise à jour quotidiennement depuis un mélange de comptes ayant le plus d'interactions récentes et le plus grand nombre d'abonné·e·s locaux pour une langue donnée." @@ -589,6 +590,7 @@ fr-QC: comment: none: Aucun comment_description_html: 'Pour fournir plus d''informations, %{name} a écrit :' + confirm_action: Confirmer l'action de modération contre @%{acct} created_at: Signalé delete_and_resolve: Supprimer les messages forwarded: Transféré @@ -605,6 +607,7 @@ fr-QC: placeholder: Décrivez quelles actions ont été prises, ou toute autre mise à jour… title: Remarques notes_description_html: Voir et laisser des notes aux autres modérateurs et à votre futur moi-même + processed_msg: 'Le signalement #%{id} a été traité avec succès' quick_actions_description_html: 'Faites une action rapide ou faites défiler vers le bas pour voir le contenu signalé :' remote_user_placeholder: l'utilisateur·rice distant·e de %{instance} reopen: Ré-ouvrir le signalement @@ -617,9 +620,28 @@ fr-QC: status: Statut statuses: Contenu signalé statuses_description_html: Le contenu offensant sera cité dans la communication avec le compte signalé + summary: + action_preambles: + delete_html: 'Vous êtes sur le point de supprimer certains messages de @%{acct}. Cela va :' + mark_as_sensitive_html: 'Vous êtes sur le point de marquer certains messages de @%{acct} comme sensibles. Cela va :' + silence_html: 'Vous êtes sur le point de limiter le compte de @%{acct}. Cela va :' + suspend_html: 'Vous êtes sur le point de suspendre le compte de @%{acct}. Cela va :' + actions: + delete_html: supprimer les messages incriminés + mark_as_sensitive_html: marquer le média des messages incriminés comme sensible + silence_html: limiter drastiquement la portée du compte de @%{acct} en rendant son profil, ainsi que ses contenus, visibles uniquement des personnes déjà abonnées ou qui le recherchent manuellement + suspend_html: suspendre le compte de @%{acct}, ce qui empêche toute interaction avec son profil et tout accès à ses contenus + close_report: 'marquer le signalement #%{id} comme résolu' + close_reports_html: marquer tous les signalements de @%{acct} comme résolus + delete_data_html: effacer le profil de @%{acct} et ses contenus dans 30 jours, à moins que la suspension du compte ne soit annulée entre temps + preview_preamble_html: "@%{acct} recevra un avertissement contenant les éléments suivants :" + record_strike_html: enregistrer une sanction contre @%{acct} pour vous aider à prendre des mesures supplémentaires en cas d'infractions futures de ce compte + send_email_html: envoyer un courriel d'avertissement à @%{acct} + warning_placeholder: Arguments supplémentaires pour l'action de modération (facultatif). target_origin: Origine du compte signalé title: Signalements unassign: Dés-assigner + unknown_action_msg: 'Action inconnue : %{action}' unresolved: Non résolus updated_at: Mis à jour view_profile: Voir le profil @@ -943,6 +965,8 @@ fr-QC: auth: apply_for_account: Demander un compte change_password: Mot de passe + confirmations: + wrong_email_hint: Si cette adresse courriel est incorrecte, vous pouvez la modifier dans vos paramètres de compte. delete_account: Supprimer le compte delete_account_html: Si vous désirez supprimer votre compte, vous pouvez cliquer ici. Il vous sera demandé de confirmer cette action. description: diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 75f975623..278fc9e77 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -38,12 +38,12 @@ fr: avatar: Avatar by_domain: Domaine change_email: - changed_msg: Courriel modifié avec succès ! - current_email: Courriel actuel - label: Modifier le courriel - new_email: Nouveau courriel + changed_msg: Adresse de courriel modifiée avec succès ! + current_email: Adresse de courriel actuelle + label: Modifier l’adresse de courriel + new_email: Nouvelle adresse de courriel submit: Modifier le courriel - title: Modifier le courriel pour %{username} + title: Modifier l’adresse de courriel pour %{username} change_role: changed_msg: Rôle modifié avec succès ! label: Modifier le rôle @@ -64,7 +64,7 @@ fr: display_name: Nom affiché domain: Domaine edit: Éditer - email: Courriel + email: Adresse de courriel email_status: État du courriel enable: Dégeler enable_sign_in_token_auth: Activer l'authentification basée sur les jetons envoyés par courriel @@ -152,9 +152,9 @@ fr: suspension_irreversible: Les données de ce compte ont été irréversiblement supprimées. Vous pouvez annuler la suspension du compte pour le rendre utilisable, mais il ne récupérera aucune donnée qu’il avait auparavant. suspension_reversible_hint_html: Le compte a été suspendu et les données seront complètement supprimées le %{date}. D’ici là, le compte peut être restauré sans aucun effet néfaste. Si vous souhaitez supprimer toutes les données du compte immédiatement, vous pouvez le faire ci-dessous. title: Comptes - unblock_email: Débloquer l'adresse courriel - unblocked_email_msg: L'adresse courriel de %{username} a été débloquée avec succès - unconfirmed_email: Courriel non confirmé + unblock_email: Débloquer l’adresse de courriel + unblocked_email_msg: L’adresse de courriel de %{username} a été débloquée avec succès + unconfirmed_email: Adresse de courriel non confirmée undo_sensitized: Annuler sensible undo_silenced: Annuler la limitation undo_suspension: Annuler la suspension @@ -169,11 +169,11 @@ fr: action_logs: action_types: approve_appeal: Approuver l'appel - approve_user: Approuver l’utilisateur + approve_user: Approuver le compte assigned_to_self_report: Affecter le signalement - change_email_user: Modifier le courriel pour ce compte - change_role_user: Changer le rôle de l’utilisateur·rice - confirm_user: Confirmer l’utilisateur + change_email_user: Modifier l’adresse de courriel pour ce compte + change_role_user: Changer le rôle du compte + confirm_user: Confirmer le compte create_account_warning: Créer une alerte create_announcement: Créer une annonce create_canonical_email_block: Créer un blocage de domaine de courriel @@ -202,11 +202,11 @@ fr: disable_user: Désactiver le compte enable_custom_emoji: Activer les émojis personnalisées enable_sign_in_token_auth_user: Activer l'authentification basée sur les jetons envoyés par courriel pour l'utilisateur·rice - enable_user: Activer l’utilisateur + enable_user: Activer le compte memorialize_account: Ériger en mémorial - promote_user: Promouvoir l’utilisateur + promote_user: Promouvoir le compte reject_appeal: Rejeter l'appel - reject_user: Rejeter l’utilisateur + reject_user: Rejeter le compte remove_avatar_user: Supprimer l’avatar reopen_report: Rouvrir le signalement resend_user: Renvoyer l'e-mail de confirmation @@ -216,7 +216,7 @@ fr: silence_account: Limiter le compte suspend_account: Suspendre le compte unassigned_report: Ne plus assigner le signalement - unblock_email_account: Débloquer l'adresse courriel + unblock_email_account: Débloquer l’adresse de courriel unsensitive_account: Ne pas marquer les médias de votre compte comme sensibles unsilence_account: Annuler la limitation du compte unsuspend_account: Annuler la suspension du compte @@ -235,7 +235,7 @@ fr: confirm_user_html: "%{name} a confirmé l'adresse courriel de l'utilisateur %{target}" create_account_warning_html: "%{name} a envoyé un avertissement à %{target}" create_announcement_html: "%{name} a créé une nouvelle annonce %{target}" - create_canonical_email_block_html: "%{name} a bloqué l’e-mail avec le hachage %{target}" + create_canonical_email_block_html: "%{name} a bloqué le courriel avec le hachage %{target}" create_custom_emoji_html: "%{name} a téléversé un nouvel émoji %{target}" create_domain_allow_html: "%{name} a autorisé la fédération avec le domaine %{target}" create_domain_block_html: "%{name} a bloqué le domaine %{target}" @@ -245,7 +245,7 @@ fr: create_user_role_html: "%{name} a créé le rôle %{target}" demote_user_html: "%{name} a rétrogradé l'utilisateur·rice %{target}" destroy_announcement_html: "%{name} a supprimé l'annonce %{target}" - destroy_canonical_email_block_html: "%{name} a débloqué l'email avec le hash %{target}" + destroy_canonical_email_block_html: "%{name} a débloqué le courriel avec le hachage %{target}" destroy_custom_emoji_html: "%{name} a supprimé l'émoji %{target}" destroy_domain_allow_html: "%{name} a rejeté la fédération avec le domaine %{target}" destroy_domain_block_html: "%{name} a débloqué le domaine %{target}" @@ -275,7 +275,7 @@ fr: silence_account_html: "%{name} a limité le compte de %{target}" suspend_account_html: "%{name} a suspendu le compte de %{target}" unassigned_report_html: "%{name} a désassigné le signalement %{target}" - unblock_email_account_html: "%{name} a débloqué l'adresse courriel de %{target}" + unblock_email_account_html: "%{name} a débloqué l’adresse de courriel de %{target}" unsensitive_account_html: "%{name} a enlevé le marquage comme sensible du média de %{target}" unsilence_account_html: "%{name} a annulé la limitation du compte de %{target}" unsuspend_account_html: "%{name} a réactivé le compte de %{target}" @@ -342,10 +342,10 @@ fr: updated_msg: Émoji mis à jour avec succès ! upload: Téléverser dashboard: - active_users: utilisateurs actifs + active_users: comptes actifs interactions: interactions media_storage: Stockage des médias - new_users: nouveaux utilisateurs + new_users: nouveaux comptes opened_reports: rapports ouverts pending_appeals_html: one: "%{count} appel en attente" @@ -398,7 +398,7 @@ fr: suspend: Suspendre title: Nouveau blocage de domaine no_domain_block_selected: Aucun blocage de domaine n'a été modifié car aucun n'a été sélectionné - not_permitted: Vous n’êtes pas autorisé à effectuer cette action + not_permitted: Vous n’êtes pas autorisé⋅e à effectuer cette action obfuscate: Obfusquer le nom de domaine obfuscate_hint: Obfusquer partiellement le nom de domaine dans la liste si la publication de la liste des limitations de domaine est activée private_comment: Commentaire privé @@ -432,12 +432,12 @@ fr: title: Blocage de domaines de courriel export_domain_allows: new: - title: Autoriser l'importation de domaine + title: Importer les autorisations de domaine no_file: Aucun fichier sélectionné export_domain_blocks: import: - description_html: Vous êtes sur le point d'importer une liste de blocs de domaine. Veuillez examiner cette liste très attentivement, spécialement si vous n'êtes pas l'auteur de cette liste. - existing_relationships_warning: Relations de suivi existantes + description_html: Vous êtes sur le point d'importer une liste de bloqueurs de domaine. Veuillez examiner cette liste très attentivement, surtout si vous ne l'avez pas créée vous-même. + existing_relationships_warning: Relations d'abonnement existantes private_comment_description_html: 'Pour vous aider à savoir d''où proviennent les blocages importés, ceux-ci seront créés avec le commentaire privé suivant : %{comment}' private_comment_template: Importé depuis %{source} le %{date} title: Importer des blocages de domaine @@ -558,7 +558,7 @@ fr: pending: En attente de l’approbation du relai save_and_enable: Sauvegarder et activer setup: Paramétrer une connexion de relais - signatures_not_enabled: Les relais ne fonctionneront pas correctement lorsque le mode sécurisé ou le mode liste blanche est activé + signatures_not_enabled: Les relais peuvent ne pas fonctionner correctement lorsque les modes sécurisé ou de fédération limitée sont activés status: Statut title: Relais report_notes: @@ -729,11 +729,11 @@ fr: preamble: Contrôle comment le contenu créé par les utilisateurs est enregistré et stocké dans Mastodon. title: Rétention du contenu default_noindex: - desc_html: Affecte tous les utilisateurs qui n'ont pas modifié ce paramètre eux-mêmes - title: Ne pas indexer par défaut les utilisateurs dans les moteurs de recherche + desc_html: Affecte tous les comptes qui n'ont pas modifié ce paramètre + title: Par défaut, ne pas indexer les comptes dans les moteurs de recherche discovery: follow_recommendations: Suivre les recommandations - preamble: Faire apparaître un contenu intéressant est essentiel pour interagir avec de nouveaux utilisateurs qui ne connaissent peut-être personne sur Mastodonte. Contrôlez le fonctionnement des différentes fonctionnalités de découverte sur votre serveur. + preamble: Il est essentiel de donner de la visibilité à des contenus intéressants pour attirer des utilisateur⋅rice⋅s néophytes qui ne connaissent peut-être personne sur Mastodon. Contrôlez le fonctionnement des différentes fonctionnalités de découverte sur votre serveur. profile_directory: Annuaire des profils public_timelines: Fils publics publish_discovered_servers: Publier les serveurs découverts @@ -966,7 +966,7 @@ fr: apply_for_account: Demander un compte change_password: Mot de passe confirmations: - wrong_email_hint: Si cette adresse courriel est incorrecte, vous pouvez la modifier dans vos paramètres de compte. + wrong_email_hint: Si cette adresse de courriel est incorrecte, vous pouvez la modifier dans vos paramètres de compte. delete_account: Supprimer le compte delete_account_html: Si vous désirez supprimer votre compte, vous pouvez cliquer ici. Il vous sera demandé de confirmer cette action. description: @@ -1003,7 +1003,7 @@ fr: email_settings_hint_html: Le courriel de confirmation a été envoyé à %{email}. Si cette adresse de courriel n’est pas correcte, vous pouvez la modifier dans les paramètres du compte. title: Configuration sign_in: - preamble_html: Connectez-vous avec vos identifiants %{domain} . Si votre compte est hébergé sur un autre serveur, vous ne pourrez pas vous connecter ici. + preamble_html: Connectez-vous avec vos identifiants sur %{domain}. Si votre compte est hébergé sur un autre serveur, vous ne pourrez pas vous connecter ici. title: Se connecter à %{domain} sign_up: preamble: Avec un compte sur ce serveur Mastodon, vous serez en mesure de suivre toute autre personne sur le réseau, quel que soit l’endroit où son compte est hébergé. @@ -1059,7 +1059,7 @@ fr: deletes: challenge_not_passed: Les renseignements que vous avez entrés n'étaient pas exacts confirm_password: Entrez votre mot de passe actuel pour vérifier votre identité - confirm_username: Entrez votre nom d'utilisateur pour confirmer la procédure + confirm_username: Entrez votre identifiant pour confirmer la procédure proceed: Supprimer le compte success_msg: Votre compte a été supprimé avec succès warning: @@ -1396,7 +1396,7 @@ fr: activity: Activité du compte confirm_follow_selected_followers: Voulez-vous vraiment suivre les abonné⋅e⋅s sélectionné⋅e⋅s ? confirm_remove_selected_followers: Voulez-vous vraiment supprimer les abonné⋅e⋅s sélectionné⋅e⋅s ? - confirm_remove_selected_follows: Voulez-vous vraiment suivre les abonnements sélectionnés ? + confirm_remove_selected_follows: Voulez-vous vraiment supprimer les abonnements sélectionnés ? dormant: Dormant follow_selected_followers: Suivre les abonné·e·s sélectionné·e·s followers: Abonné·e diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 4f2f820a7..288d56ca5 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -265,7 +265,7 @@ ja: reject_user_html: "%{name}さんが%{target}さんからの登録を拒否しました" remove_avatar_user_html: "%{name}さんが%{target}さんのアイコンを削除しました" reopen_report_html: "%{name}さんが通報 %{target}を未解決に戻しました" - resend_user_html: "%{name} が %{target} の確認メールを再送信しました" + resend_user_html: "%{name}さんが%{target}の確認メールを再送信しました" reset_password_user_html: "%{name}さんが%{target}さんのパスワードをリセットしました" resolve_report_html: "%{name}さんが通報 %{target}を解決済みにしました" sensitive_account_html: "%{name}さんが%{target}さんのメディアを閲覧注意にマークしました" @@ -433,7 +433,7 @@ ja: private_comment_description_html: 'ブロックのインポート元を判別できるようにするため、ブロックは次のプライベートコメントを追加してインポートされます: %{comment}' private_comment_template: "%{source} から %{date} にインポートしました" title: ドメインブロックをインポート - invalid_domain_block: '次のエラーのため、1つ以上のドメインブロックがスキップされました: %{error}' + invalid_domain_block: 'エラーが発生したため、ブロックできなかったドメインがあります: %{error}' new: title: ドメインブロックをインポート no_file: ファイルが選択されていません diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 557e499f3..2f362ab66 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -72,7 +72,7 @@ ko: follows: 팔로우 header: 헤더 inbox_url: 수신함 URL - invite_request_text: 가입 하려는 이유 + invite_request_text: 가입하려는 이유 invited_by: 초대자 ip: IP joined: 가입 @@ -495,7 +495,7 @@ ko: destroyed_msg: "%{domain}의 데이터는 곧바로 지워지도록 대기열에 들어갔습니다." empty: 도메인이 하나도 없습니다. known_accounts: - other: "%{count}개의 알려진 계정" + other: "%{count} 개의 알려진 계정" moderation: all: 모두 limited: 제한됨 @@ -594,7 +594,7 @@ ko: create_and_resolve: 종결 및 참고사항 기재 create_and_unresolve: 재검토 및 참고사항 기재 delete: 삭제 - placeholder: 어떤 대응을 했는지 서설 또는 그 밖의 관련된 갱신 사항들 + placeholder: 어떤 대응을 했는지 설명 또는 그 밖의 관련된 갱신 사항들 title: 참고사항 notes_description_html: 확인하고 다른 중재자나 미래의 자신을 위해 기록을 작성합니다 processed_msg: '신고 #%{id}가 정상적으로 처리되었습니다' @@ -766,7 +766,7 @@ ko: reblogs: 리블로그 status_changed: 게시물 변경됨 title: 계정 게시물 - trending: 유행중 + trending: 유행 중 visibility: 공개 설정 with_media: 미디어 있음 strikes: @@ -856,7 +856,7 @@ ko: used_by_over_week: other: 지난 주 동안 %{count} 명의 사람들이 사용했습니다 title: 유행 - trending: 유행중 + trending: 유행 중 warning_presets: add_new: 새로 추가 delete: 삭제 @@ -1167,7 +1167,7 @@ ko: hint: 이 필터는 다른 기준에 관계 없이 선택된 개별적인 게시물들에 적용됩니다. 웹 인터페이스에서 더 많은 게시물들을 이 필터에 추가할 수 있습니다. title: 필터링된 게시물 footer: - trending_now: 지금 유행중 + trending_now: 지금 유행 중 generic: all: 모두 all_items_on_page_selected_html: @@ -1243,7 +1243,7 @@ ko: title: 인증 이력 media_attachments: validations: - images_and_video: 이미 사진이 첨부 된 게시물엔 동영상을 첨부 할 수 없습니다 + images_and_video: 이미 사진이 첨부된 게시물엔 동영상을 첨부 할 수 없습니다 not_ready: 처리가 끝나지 않은 파일은 첨부할 수 없습니다. 잠시 후에 다시 시도해 주세요! too_many: 최대 4개까지 첨부할 수 있습니다 migrations: diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 671d998d9..9aa13fd45 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -638,6 +638,11 @@ ru: status: Статус statuses: Содержимое относящееся к жалобе statuses_description_html: Нарушающее правила содержимое будет процитировано при коммуникации с фигурирующим в жалобе аккаунтом + summary: + close_report: 'Отметить жалобу #%{id} как решённую' + close_reports_html: Отметить все жалобы на @%{acct} как разрешённые + delete_data_html: Удалить профиль и контент @%{acct} через 30 дней, если за это время они не будут разблокированы + preview_preamble_html: "@%{acct} получит предупреждение со следующим содержанием:" target_origin: Происхождение объекта жалобы title: Жалобы unassign: Снять назначение diff --git a/config/locales/simple_form.ca.yml b/config/locales/simple_form.ca.yml index 3b5738375..bcabca034 100644 --- a/config/locales/simple_form.ca.yml +++ b/config/locales/simple_form.ca.yml @@ -91,11 +91,13 @@ ca: site_short_description: Una descripció curta per a ajudar a identificar de manera única el teu servidor. Qui el fa anar, per a qui és? site_terms: Fes servir la teva pròpia política de privacitat o deixa-ho en blanc per a la per defecte. Es pot estructurar amb format Markdown. site_title: Com pot la gent referir-se al teu servidor a part del seu nom de domini. + status_page_url: URL de la pàgina on els usuaris poden veure l'estat d'aquest servidor durant una interrupció del servei theme: El tema que els visitants i els nous usuaris veuen. thumbnail: Una imatge d'aproximadament 2:1 que es mostra al costat la informació del teu servidor. timeline_preview: Els visitants amb sessió no iniciada seran capaços de navegar per els tuts més recents en el teu servidor. trendable_by_default: Omet la revisió manual del contingut en tendència. Els articles individuals poden encara ser eliminats després del fet. trends: Les tendències mostren quins tuts, etiquetes i notícies estan guanyant força en el teu servidor. + trends_as_landing_page: Mostra el contingut en tendència als usuaris i visitants no autenticats enlloc de la descripció d'aquest servidor. Requereix que les tendències estiguin activades. form_challenge: current_password: Estàs entrant en una àrea segura imports: @@ -251,11 +253,13 @@ ca: site_short_description: Descripció del servidor site_terms: Política de Privacitat site_title: Nom del servidor + status_page_url: URL de la pàgina de l'estat theme: Tema per defecte thumbnail: Miniatura del servidor timeline_preview: Permet l'accés no autenticat a les línies de temps públiques trendable_by_default: Permet tendències sense revisió prèvia trends: Activa les tendències + trends_as_landing_page: Fer servir les tendències com a pàgina inicial interactions: must_be_follower: Bloqueja les notificacions de persones que no em segueixen must_be_following: Bloqueja les notificacions de persones no seguides diff --git a/config/locales/simple_form.cs.yml b/config/locales/simple_form.cs.yml index d1244b24e..7025c6385 100644 --- a/config/locales/simple_form.cs.yml +++ b/config/locales/simple_form.cs.yml @@ -91,11 +91,13 @@ cs: site_short_description: Krátký popis, který pomůže jednoznačně identifikovat váš server. Kdo ho provozuje, pro koho je určen? site_terms: Použijte vlastní zásady ochrany osobních údajů nebo ponechte prázdné pro použití výchozího nastavení. Může být strukturováno pomocí Markdown syntaxe. site_title: Jak mohou lidé odkazovat na váš server kromě názvu domény. + status_page_url: URL stránky, kde mohou lidé vidět stav tohoto serveru během výpadku theme: Vzhled stránky, který vidí noví a odhlášení uživatelé. thumbnail: Přibližně 2:1 obrázek zobrazený vedle informací o vašem serveru. timeline_preview: Odhlášení uživatelé budou moci procházet nejnovější veřejné příspěvky na serveru. trendable_by_default: Přeskočit manuální kontrolu populárního obsahu. Jednotlivé položky mohou být odstraněny z trendů později. trends: Trendy zobrazují, které příspěvky, hashtagy a zprávy získávají na serveru pozornost. + trends_as_landing_page: Zobrazit populární obsah odhlášeným uživatelům a návštěvníkům místo popisu tohoto serveru. Vyžaduje povolení trendů. form_challenge: current_password: Vstupujete do zabezpečeného prostoru imports: @@ -251,11 +253,13 @@ cs: site_short_description: Popis serveru site_terms: Ochrana osobních údajů site_title: Název serveru + status_page_url: URL stránky se stavem theme: Výchozí motiv thumbnail: Miniatura serveru timeline_preview: Povolit neověřený přístup k veřejným časovým osám trendable_by_default: Povolit trendy bez předchozí revize trends: Povolit trendy + trends_as_landing_page: Použít trendy jako vstupní stránku interactions: must_be_follower: Blokovat oznámení od lidí, kteří vás nesledují must_be_following: Blokovat oznámení od lidí, které nesledujete diff --git a/config/locales/simple_form.da.yml b/config/locales/simple_form.da.yml index 0958426b6..3116f02d8 100644 --- a/config/locales/simple_form.da.yml +++ b/config/locales/simple_form.da.yml @@ -88,11 +88,13 @@ da: site_short_description: En kort beskrivelse mhp. entydigt at kunne identificere denne server. Hvem kører den, hvem er den for? site_terms: Brug egen fortrolighedspolitik eller lad stå tomt for standardpolitikken. Kan struktureres med Markdown-syntaks. site_title: Hvordan folk kan henvise til serveren udover domænenavnet. + status_page_url: URL'en til en side, hvor status for denne server kan ses under en afbrydelse theme: Tema, som udloggede besøgende og nye brugere ser. thumbnail: Et ca. 2:1 billede vist sammen med serveroplysningerne. timeline_preview: Udloggede besøgende kan gennemse serverens seneste offentlige indlæg. trendable_by_default: Spring manuel gennemgang af trendindhold over. Individuelle elementer kan stadig fjernes fra trends efter kendsgerningen. trends: Tendenser viser, hvilke indlæg, hashtags og nyheder opnår momentum på serveren. + trends_as_landing_page: Vis tendensindhold til udloggede brugere og besøgende i stedet for en beskrivelse af denne server. Kræver, at tendenser er aktiveret. form_challenge: current_password: Du bevæger dig ind på et sikkert område imports: @@ -247,6 +249,7 @@ da: site_short_description: Serverbeskrivelse site_terms: Fortrolighedspolitik site_title: Servernavn + status_page_url: Statusside-URL theme: Standardtema thumbnail: Serverminiaturebillede timeline_preview: Tillad ikke-godkendt adgang til offentlige tidslinjer diff --git a/config/locales/simple_form.de.yml b/config/locales/simple_form.de.yml index 8c48db793..2ee277100 100644 --- a/config/locales/simple_form.de.yml +++ b/config/locales/simple_form.de.yml @@ -91,11 +91,13 @@ de: site_short_description: Eine kurze Beschreibung zur eindeutigen Identifizierung des Servers. Wer betreibt ihn, für wen ist er bestimmt? site_terms: Verwende eine eigene Datenschutzerklärung oder lasse das Feld leer, um die allgemeine Vorlage zu verwenden. Kann mit der Markdown-Syntax formatiert werden. site_title: Wie Personen neben dem Domainnamen auf deinen Server verweisen können. + status_page_url: URL einer Seite, auf der der Status des Servers während eines Ausfalls angezeigt werden kann theme: Das Design, das abgemeldete Besucher und neue Benutzer sehen. thumbnail: Ein Bild ungefähr im 2:1-Format, das neben den Server-Informationen angezeigt wird. timeline_preview: Besucher*innen und ausgeloggte Benutzer*innen können die neuesten öffentlichen Beiträge dieses Servers aufrufen. trendable_by_default: Manuelles Überprüfen angesagter Inhalte überspringen. Einzelne Elemente können später noch aus den Trends entfernt werden. trends: Trends zeigen, welche Beiträge, Hashtags und Nachrichten auf deinem Server immer beliebter werden. + trends_as_landing_page: Dies zeigt nicht angemeldeten Personen Trendinhalte anstelle einer Beschreibung des Servers an. Erfordert, dass Trends aktiviert sind. form_challenge: current_password: Du betrittst einen gesicherten Bereich imports: @@ -202,7 +204,7 @@ de: setting_disable_swiping: Wischgesten deaktivieren setting_display_media: Medien-Anzeige setting_display_media_default: Standard - setting_display_media_hide_all: Alle Medien verstecken + setting_display_media_hide_all: Alle Medien verbergen setting_display_media_show_all: Alle Medien anzeigen setting_expand_spoilers: Beiträge mit Inhaltswarnung immer ausklappen setting_hide_network: Deine Follower und „Folge ich“ nicht anzeigen @@ -251,11 +253,13 @@ de: site_short_description: Serverbeschreibung site_terms: Datenschutzerklärung site_title: Servername + status_page_url: URL der Statusseite theme: Standard-Design thumbnail: Vorschaubild des Servers timeline_preview: Nicht-authentifizierten Zugriff auf die öffentliche Timeline gestatten trendable_by_default: Trends ohne vorherige Überprüfung erlauben trends: Trends aktivieren + trends_as_landing_page: Trends als Landingpage verwenden interactions: must_be_follower: Benachrichtigungen von Profilen verbergen, die mir nicht folgen must_be_following: Benachrichtigungen von Profilen verbergen, denen ich nicht folge diff --git a/config/locales/simple_form.el.yml b/config/locales/simple_form.el.yml index 0a52204c0..d28435c7d 100644 --- a/config/locales/simple_form.el.yml +++ b/config/locales/simple_form.el.yml @@ -189,6 +189,8 @@ el: registrations_mode: Ποιος μπορεί να εγγραφεί site_contact_email: E-mail επικοινωνίας site_contact_username: Όνομα χρήστη επικοινωνίας + status_page_url: URL σελίδας κατάστασης + trends_as_landing_page: Χρήση των τάσεων ως σελίδα προορισμού interactions: must_be_follower: Μπλόκαρε τις ειδοποιήσεις από όσους δεν σε ακολουθούν must_be_following: Μπλόκαρε τις ειδοποιήσεις από όσους δεν ακολουθείς diff --git a/config/locales/simple_form.en-GB.yml b/config/locales/simple_form.en-GB.yml index d66a708af..27aa80c42 100644 --- a/config/locales/simple_form.en-GB.yml +++ b/config/locales/simple_form.en-GB.yml @@ -91,11 +91,13 @@ en-GB: site_short_description: A short description to help uniquely identify your server. Who is running it, who is it for? site_terms: Use your own privacy policy or leave blank to use the default. Can be structured with Markdown syntax. site_title: How people may refer to your server besides its domain name. + status_page_url: URL of a page where people can see the status of this server during an outage theme: Theme that logged out visitors and new users see. thumbnail: A roughly 2:1 image displayed alongside your server information. timeline_preview: Logged out visitors will be able to browse the most recent public posts available on the server. trendable_by_default: Skip manual review of trending content. Individual items can still be removed from trends after the fact. trends: Trends show which posts, hashtags and news stories are gaining traction on your server. + trends_as_landing_page: Show trending content to logged-out users and visitors instead of a description of this server. Requires trends to be enabled. form_challenge: current_password: You are entering a secure area imports: @@ -251,11 +253,13 @@ en-GB: site_short_description: Server description site_terms: Privacy Policy site_title: Server name + status_page_url: Status page URL theme: Default theme thumbnail: Server thumbnail timeline_preview: Allow unauthenticated access to public timelines trendable_by_default: Allow trends without prior review trends: Enable trends + trends_as_landing_page: Use trends as the landing page interactions: must_be_follower: Block notifications from non-followers must_be_following: Block notifications from people you don't follow diff --git a/config/locales/simple_form.en.yml b/config/locales/simple_form.en.yml index d01f0ae75..96b0131ef 100644 --- a/config/locales/simple_form.en.yml +++ b/config/locales/simple_form.en.yml @@ -91,6 +91,7 @@ en: site_short_description: A short description to help uniquely identify your server. Who is running it, who is it for? site_terms: Use your own privacy policy or leave blank to use the default. Can be structured with Markdown syntax. site_title: How people may refer to your server besides its domain name. + status_page_url: URL of a page where people can see the status of this server during an outage theme: Theme that logged out visitors and new users see. thumbnail: A roughly 2:1 image displayed alongside your server information. timeline_preview: Logged out visitors will be able to browse the most recent public posts available on the server. @@ -252,6 +253,7 @@ en: site_short_description: Server description site_terms: Privacy Policy site_title: Server name + status_page_url: Status page URL theme: Default theme thumbnail: Server thumbnail timeline_preview: Allow unauthenticated access to public timelines diff --git a/config/locales/simple_form.eo.yml b/config/locales/simple_form.eo.yml index 7537f0a4a..4f1a6341b 100644 --- a/config/locales/simple_form.eo.yml +++ b/config/locales/simple_form.eo.yml @@ -245,6 +245,7 @@ eo: site_short_description: Priskribo de servilo site_terms: Privateca politiko site_title: Nomo de la servilo + status_page_url: URL de la paĝo de stato theme: Implicita etoso thumbnail: Bildeto de servilo timeline_preview: Permesi la neaŭtentigitan aliron al la publikaj templinioj diff --git a/config/locales/simple_form.es-AR.yml b/config/locales/simple_form.es-AR.yml index 0fdbfd937..bcceccfb1 100644 --- a/config/locales/simple_form.es-AR.yml +++ b/config/locales/simple_form.es-AR.yml @@ -91,11 +91,13 @@ es-AR: site_short_description: Una breve descripción para ayudar a identificar individualmente a tu servidor. ¿Quién lo administra, a quién va dirigido? site_terms: Usá tu propia política de privacidad o dejala en blanco para usar la predeterminada. Puede estructurarse con sintaxis Markdown. site_title: Cómo la gente puede referirse a tu servidor además de su nombre de dominio. + status_page_url: Dirección web de una página donde la gente puede ver el estado de este servidor durante un apagón theme: El tema que los visitantes no registrados y los nuevos usuarios ven. thumbnail: Una imagen de aproximadamente 2:1 se muestra junto a la información de tu servidor. timeline_preview: Los visitantes no registrados podrán navegar por los mensajes públicos más recientes disponibles en el servidor. trendable_by_default: Omití la revisión manual del contenido en tendencia. Los elementos individuales aún podrán eliminarse de las tendencias. trends: Las tendencias muestran qué mensajes, etiquetas y noticias están ganando tracción en tu servidor. + trends_as_landing_page: Mostrar contenido en tendencia para usuarios que no iniciaron sesión y visitantes, en lugar de una descripción de este servidor. Requiere que las tendencias estén habilitadas. form_challenge: current_password: Estás ingresando en un área segura imports: @@ -251,11 +253,13 @@ es-AR: site_short_description: Descripción del servidor site_terms: Política de privacidad site_title: Nombre del servidor + status_page_url: Dirección web de la página de estado theme: Tema predeterminado thumbnail: Miniatura del servidor timeline_preview: Permitir el acceso no autenticado a las líneas temporales públicas trendable_by_default: Permitir tendencias sin revisión previa trends: Habilitar tendencias + trends_as_landing_page: Usar las tendencias como la página de destino interactions: must_be_follower: Bloquear notificaciones de cuentas que no te siguen must_be_following: Bloquear notificaciones de cuentas que no seguís diff --git a/config/locales/simple_form.es-MX.yml b/config/locales/simple_form.es-MX.yml index 0f0f5bb07..52d8974f2 100644 --- a/config/locales/simple_form.es-MX.yml +++ b/config/locales/simple_form.es-MX.yml @@ -91,11 +91,13 @@ es-MX: site_short_description: Una breve descripción para ayudar a identificar su servidor de forma única. ¿Quién lo administra, a quién va dirigido? site_terms: Utiliza tu propia política de privacidad o déjala en blanco para usar la predeterminada Puede estructurarse con formato Markdown. site_title: Cómo puede referirse la gente a tu servidor además de por el nombre de dominio. + status_page_url: URL de una página donde las personas pueden ver el estado de este servidor durante una interrupción theme: El tema que los visitantes no registrados y los nuevos usuarios ven. thumbnail: Una imagen de aproximadamente 2:1 se muestra junto a la información de tu servidor. timeline_preview: Los visitantes no registrados podrán navegar por los mensajes públicos más recientes disponibles en el servidor. trendable_by_default: Omitir la revisión manual del contenido en tendencia. Los elementos individuales aún podrán eliminarse de las tendencias. trends: Las tendencias muestran qué mensajes, etiquetas y noticias están ganando tracción en tu servidor. + trends_as_landing_page: Mostrar contenido en tendencia para usuarios y visitantes desconectados en lugar de una descripción de este servidor. Requiere tendencias para ser habilitado. form_challenge: current_password: Estás entrando en un área segura imports: @@ -251,11 +253,13 @@ es-MX: site_short_description: Descripción del servidor site_terms: Política de Privacidad site_title: Nombre del servidor + status_page_url: URL de página de estado theme: Tema por defecto thumbnail: Miniatura del servidor timeline_preview: Permitir el acceso no autenticado a las líneas de tiempo públicas trendable_by_default: Permitir tendencias sin revisión previa trends: Habilitar tendencias + trends_as_landing_page: Usar tendencias como página de destino interactions: must_be_follower: Bloquear notificaciones de personas que no te siguen must_be_following: Bloquear notificaciones de personas que no sigues diff --git a/config/locales/simple_form.es.yml b/config/locales/simple_form.es.yml index 759297930..fc8c332e0 100644 --- a/config/locales/simple_form.es.yml +++ b/config/locales/simple_form.es.yml @@ -91,6 +91,7 @@ es: site_short_description: Una breve descripción para ayudar a identificar su servidor de forma única. ¿Quién lo administra, a quién va dirigido? site_terms: Utiliza tu propia política de privacidad o déjala en blanco para usar la predeterminada Puede estructurarse con formato Markdown. site_title: Cómo puede referirse la gente a tu servidor además de por el nombre de dominio. + status_page_url: URL de la página donde la gente pueda ver el estado de este servidor durante la exclusión theme: El tema que los visitantes no registrados y los nuevos usuarios ven. thumbnail: Una imagen de aproximadamente 2:1 se muestra junto a la información de tu servidor. timeline_preview: Los visitantes no registrados podrán navegar por los mensajes públicos más recientes disponibles en el servidor. diff --git a/config/locales/simple_form.et.yml b/config/locales/simple_form.et.yml index 7e5a04ab2..8b7dace23 100644 --- a/config/locales/simple_form.et.yml +++ b/config/locales/simple_form.et.yml @@ -91,11 +91,13 @@ et: site_short_description: Lühikirjeldus serveri unikaalseks identifitseerimiseks. Kes haldab, kellele mõeldud? site_terms: Lisa siia serveri isikuandmete kaitse põhimõtted või jäta tühjaks, et kasutada geneerilisi. Tekstis on lubatud Markdowni süntaks. site_title: Kuidas inimesed saavad serverile viidata, lisaks domeeninimele. + status_page_url: Lehe URL, kus saab serveri maas oleku ajal näha serveri olekut theme: Teema, mida näevad sisenemata ning uued kasutajad. thumbnail: Umbes 2:1 mõõdus pilt serveri informatsiooni kõrval. timeline_preview: Sisenemata külastajatel on võimalik sirvida viimaseid avalikke postitusi serveril. trendable_by_default: Populaarse sisu ülevaatuse vahele jätmine. Pärast seda on siiski võimalik üksikuid üksusi trendidest eemaldada. trends: Populaarsuse suunad näitavad millised postitused, sildid ja uudislood koguvad sinu serveris tähelepanu. + trends_as_landing_page: Näitab välja logitud kasutajatele ja külalistele serveri kirjelduse asemel populaarset sisu. Populaarne sisu (trendid) peab selleks olema sisse lülitatud. form_challenge: current_password: Turvalisse alasse sisenemine imports: @@ -251,11 +253,13 @@ et: site_short_description: Serveri lühikirjeldus site_terms: Isikuandmete kaitse site_title: Serveri nimi + status_page_url: Oleku lehe URL theme: Vaikmisi teema thumbnail: Serveri pisipilt timeline_preview: Luba autentimata ligipääs avalikele ajajoontele trendable_by_default: Luba trendid eelneva ülevaatuseta trends: Luba trendid + trends_as_landing_page: Kasuta maabumislehena lehte Populaarne interactions: must_be_follower: Keela teavitused mittejälgijatelt must_be_following: Keela teavitused kasutajatelt, keda sa ei jälgi diff --git a/config/locales/simple_form.eu.yml b/config/locales/simple_form.eu.yml index 29042deb5..175e0c96d 100644 --- a/config/locales/simple_form.eu.yml +++ b/config/locales/simple_form.eu.yml @@ -91,11 +91,13 @@ eu: site_short_description: Zure zerbitzaria identifikatzen laguntzen duen deskribapen laburra. Nork du ardura? Nori zuzendua dago? site_terms: Erabili zure pribatutasun politika edo hutsik utzi lehenetsia erabiltzeko. Markdown sintaxiarekin egituratu daiteke. site_title: Jendeak nola deituko dion zure zerbitzariari, domeinu-izenaz gain. + status_page_url: Kanporatua dagoen jendeak zerbitzari honen egoera ikus dezaten gune baten URL theme: Saioa hasi gabeko erabiltzaileek eta berriek ikusiko duten gaia. thumbnail: Zerbitzariaren informazioaren ondoan erakusten den 2:1 inguruko irudia. timeline_preview: Saioa hasi gabeko erabiltzaileek ezingo dituzte arakatu zerbitzariko bidalketa publiko berrienak. trendable_by_default: Saltatu joeretako edukiaren eskuzko berrikuspena. Ondoren elementuak banan-bana kendu daitezke joeretatik. trends: Joeretan zure zerbitzarian bogan dauden bidalketa, traola eta albisteak erakusten dira. + trends_as_landing_page: Saioa hasita ez duten erabiltzaileei eta bisitariei pil-pilean dagoen edukia erakutsi zerbitzari honen deskribapena erakutsi ordez. Joerak aktibatuak edukitzea beharrezkoa da. form_challenge: current_password: Zonalde seguruan sartzen ari zara imports: @@ -251,11 +253,13 @@ eu: site_short_description: Zerbitzariaren deskribapena site_terms: Pribatutasun politika site_title: Zerbitzariaren izena + status_page_url: Egoera-orriaren URL theme: Lehenetsitako gaia thumbnail: Zerbitzariaren koadro txikia timeline_preview: Onartu autentifikatu gabeko sarbidea denbora lerro publikoetara trendable_by_default: Onartu joerak aurrez berrikusi gabe trends: Gaitu joerak + trends_as_landing_page: Joerak erabili helburuko orri gisa interactions: must_be_follower: Blokeatu jarraitzaile ez direnen jakinarazpenak must_be_following: Blokeatu zuk jarraitzen ez dituzu horien jakinarazpenak diff --git a/config/locales/simple_form.fi.yml b/config/locales/simple_form.fi.yml index ffcf16e01..39c6befdf 100644 --- a/config/locales/simple_form.fi.yml +++ b/config/locales/simple_form.fi.yml @@ -18,6 +18,7 @@ fi: disable: Estä käyttäjää käyttämästä tiliään, mutta älä poista tai piilota sen sisältöä. none: Käytä tätä lähettääksesi varoituksen käyttäjälle käynnistämättä mitään muita toimintoja. sensitive: Pakota kaikki tämän käyttäjän mediatiedostot arkaluontoisiksi. + suspend: Estä kaikki vuorovaikutus tältä -tai tälle tilille ja poista sen kaikki sisältö. Päätös voidaan peruuttaa 30 päivän aikana. Sulkee kaikki raportit tätä tiliä vasten. warning_preset_id: Valinnainen. Voit silti lisätä mukautetun tekstin esiasetuksen loppuun announcement: all_day: Kun valittu, vain valittu aikaväli näytetään @@ -89,11 +90,13 @@ fi: site_short_description: Lyhyt kuvaus auttaa yksilöimään palvelimesi. Kuka sitä johtaa, kenelle se on tarkoitettu? site_terms: Käytä omaa tietosuojakäytäntöä tai jätä tyhjäksi, jos haluat käyttää oletusta. Voidaan jäsentää Markdown-syntaksilla. site_title: Kuinka ihmiset voivat viitata palvelimeen sen verkkotunnuksen lisäksi. + status_page_url: URL-osoite, jonka kautta palvelimen tila voidaan tarkastaa sen ollessa tavoittamattomissa theme: Teema, jonka uloskirjautuneet vierailijat ja uudet käyttäjät näkevät. thumbnail: Noin 2:1 kuva näytetään palvelimen tietojen rinnalla. timeline_preview: Uloskirjautuneet vierailijat voivat selata uusimpia julkisia viestejä, jotka ovat saatavilla palvelimella. trendable_by_default: Ohita suositun sisällön manuaalinen tarkistus. Yksittäisiä kohteita voidaan edelleen poistaa jälkikäteen. trends: Trendit osoittavat, mitkä julkaisut, aihetunnisteet ja uutiset ovat saamassa vetoa palvelimellasi. + trends_as_landing_page: Näytä suosittu sisältö uloskirjautuneille käyttäjille ja kävijöille palvelimen kuvauksen sijaan. Edellyttää suositun sisällön käyttöönottoa. form_challenge: current_password: Olet menossa suojatulle alueelle imports: @@ -249,11 +252,13 @@ fi: site_short_description: Palvelimen kuvaus site_terms: Tietosuojakäytäntö site_title: Palvelimen nimi + status_page_url: Tilasivun URL-osoite theme: Oletusteema thumbnail: Palvelimen pikkukuva timeline_preview: Salli todentamaton pääsy julkiselle aikajanalle trendable_by_default: Salli trendit ilman ennakkotarkastusta trends: Trendit käyttöön + trends_as_landing_page: Käytä suosittua sisältöä aloitussivuna interactions: must_be_follower: Estä ilmoitukset käyttäjiltä, jotka eivät seuraa sinua must_be_following: Estä ilmoitukset käyttäjiltä, joita et seuraa diff --git a/config/locales/simple_form.fo.yml b/config/locales/simple_form.fo.yml index 36e98f5b7..2713d1f89 100644 --- a/config/locales/simple_form.fo.yml +++ b/config/locales/simple_form.fo.yml @@ -91,11 +91,13 @@ fo: site_short_description: Ein stutt lýsing at eyðmerkja ambætaran hjá tær. Hvør rekur hann og hvønn er hann til? site_terms: Brúka tín egna privatlívspolitikk ella lat vera blankt fyri at brúka tann sjálvsetta. Kann skrivast við Markdown syntaksi. site_title: Hvussu fólk kunnu vísa til ambætaran hjá tær útyvir at brúka navnaøkið. + status_page_url: Slóð til eina síðu, har ið fólk kunnu síggja støðuna á hesum ambætaranum í sambandi við streymslit theme: Uppsetingareyðkenni, sum vitjandi, ið ikki eru ritaði inn, og nýggir brúkarar síggja. thumbnail: Ein mynd í lutfallinum 2:1, sum verður víst saman við ambætaraupplýsingunum hjá tær. timeline_preview: Vitjandi, sum eru ritaði út, fara at kunna blaða ígjøgnum nýggjastu almennu postarnar, sum eru tøkir á ambætaranum. trendable_by_default: Loyp uppum serskilda eftirkannan av tilfari, sum er vælumtókt. Einstakir lutir kunnu framvegis strikast frá listum við vælumtóktum tilfari seinni. trends: Listar við vælumtóktum tilfari vísa, hvørjir postar, frámerki og tíðindasøgur hava framburð á tínum ambætara. + trends_as_landing_page: Vís vitjandi og brúkarum, sum ikki eru innritaðir, rák í staðin fyri eina lýsing av ambætaranum. Krevur at rák eru virkin. form_challenge: current_password: Tú ert á veg til eitt trygt øki imports: @@ -251,11 +253,13 @@ fo: site_short_description: Ambætaralýsing site_terms: Privatlívspolitikkur site_title: Ambætaranavn + status_page_url: Slóð til støðusíðu theme: Sjálvvalt uppsetingareyðkenni thumbnail: Ambætarasmámynd timeline_preview: Loyv teimum, sum ikki eru ritaði inn, atgongd til almennar tíðarlinjur trendable_by_default: Loyv vælumtóktum tilfari uttan at viðgera tað fyrst trends: Loyv ráki + trends_as_landing_page: Brúka rák sum lendingarsíðu interactions: must_be_follower: Blokera fráboðanum frá teimum, sum ikki fylgja tær must_be_following: Blokera fráboðanum frá teimum, tú ikki fylgir diff --git a/config/locales/simple_form.fr-QC.yml b/config/locales/simple_form.fr-QC.yml index 8bba3b541..bc78f0ae6 100644 --- a/config/locales/simple_form.fr-QC.yml +++ b/config/locales/simple_form.fr-QC.yml @@ -18,6 +18,8 @@ fr-QC: disable: Empêcher l’utilisateur·rice d’utiliser son compte, mais ne pas supprimer ou masquer son contenu. none: Utilisez ceci pour envoyer un avertissement à l’utilisateur·rice, sans déclencher aucune autre action. sensitive: Forcer toutes les pièces jointes de cet·te utilisateur·rice à être signalées comme sensibles. + silence: Empêcher l'utilisateur⋅rice de publier des messages en visibilité publique et cacher tous ses messages et notifications aux comptes non abonnés. Cloture tous les signalements concernant ce compte. + suspend: Empêcher toute interaction depuis ou vers ce compte et supprimer son contenu. Réversible dans les 30 jours. Cloture tous les signalements concernant ce compte. warning_preset_id: Facultatif. Vous pouvez toujours ajouter un texte personnalisé à la fin de la présélection announcement: all_day: Coché, seules les dates de l’intervalle de temps seront affichées @@ -72,6 +74,7 @@ fr-QC: hide: Cacher complètement le contenu filtré, faire comme s'il n'existait pas warn: Cacher le contenu filtré derrière un avertissement mentionnant le nom du filtre form_admin_settings: + activity_api_enabled: Nombre de messages publiés localement, de comptes actifs et de nouvelles inscriptions par tranche hebdomadaire backups_retention_period: Conserve les archives générées par l'utilisateur selon le nombre de jours spécifié. bootstrap_timeline_accounts: Ces comptes seront épinglés en tête de liste des recommandations pour les nouveaux utilisateurs. closed_registrations_message: Affiché lorsque les inscriptions sont fermées @@ -79,6 +82,7 @@ fr-QC: custom_css: Vous pouvez appliquer des styles personnalisés sur la version Web de Mastodon. mascot: Remplace l'illustration dans l'interface Web avancée. media_cache_retention_period: Les fichiers multimédias téléchargés seront supprimés après le nombre de jours spécifiés lorsque la valeur est positive, et seront téléchargés à nouveau sur demande. + peers_api_enabled: Une liste de noms de domaine que ce serveur a rencontrés dans le fediverse. Aucune donnée indiquant si vous vous fédérez ou non avec un serveur particulier n'est incluse ici, seulement l'information que votre serveur connaît un autre serveur. Cette option est utilisée par les services qui collectent des statistiques sur la fédération en général. profile_directory: L'annuaire des profils répertorie tous les utilisateurs qui ont opté pour être découverts. require_invite_text: Lorsque les inscriptions nécessitent une approbation manuelle, rendre le texte de l’invitation "Pourquoi voulez-vous vous inscrire ?" obligatoire plutôt que facultatif site_contact_email: Comment les personnes peuvent vous joindre pour des demandes de renseignements juridiques ou d'assistance. @@ -227,6 +231,7 @@ fr-QC: hide: Cacher complètement warn: Cacher derrière un avertissement form_admin_settings: + activity_api_enabled: Publie des statistiques agrégées sur l'activité des utilisateur⋅rice⋅s dans l'API backups_retention_period: Période d'archivage utilisateur bootstrap_timeline_accounts: Toujours recommander ces comptes aux nouveaux utilisateurs closed_registrations_message: Message personnalisé lorsque les inscriptions ne sont pas disponibles @@ -234,6 +239,7 @@ fr-QC: custom_css: CSS personnalisé mascot: Mascotte personnalisée (héritée) media_cache_retention_period: Durée de rétention des médias dans le cache + peers_api_enabled: Publie la liste des serveurs découverts dans l'API profile_directory: Activer l’annuaire des profils registrations_mode: Qui peut s’inscrire require_invite_text: Exiger une raison pour s’inscrire diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml index d9398ff88..d395b8517 100644 --- a/config/locales/simple_form.fr.yml +++ b/config/locales/simple_form.fr.yml @@ -3,7 +3,7 @@ fr: simple_form: hints: account_alias: - acct: Spécifiez le nom d'utilisateur@domaine du compte à partir duquel vous souhaitez migrer + acct: Spécifiez l’identifiant@domaine du compte à partir duquel vous souhaitez migrer account_migration: acct: Spécifiez l’identifiant@domaine du compte vers lequel vous souhaitez migrer account_warning_preset: @@ -35,13 +35,13 @@ fr: bot: Signale aux autres que ce compte exécute principalement des actions automatisées et pourrait ne pas être surveillé context: Un ou plusieurs contextes où le filtre devrait s’appliquer current_password: Par mesure de sécurité, veuillez saisir le mot de passe de ce compte - current_username: Pour confirmer, veuillez saisir le nom d'utilisateur de ce compte + current_username: Pour confirmer, veuillez saisir l’identifiant de ce compte digest: Uniquement envoyé après une longue période d’inactivité en cas de messages personnels reçus pendant votre absence discoverable: Permet à votre compte d’être découvert par des inconnus par le biais de recommandations, de tendances et autres fonctionnalités email: Vous recevrez un courriel de confirmation fields: Vous pouvez avoir jusqu’à 4 éléments affichés en tant que tableau sur votre profil header: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px - inbox_url: Copiez l’URL depuis la page d’accueil du relai que vous souhaitez utiliser + inbox_url: Copiez l’URL depuis la page d’accueil du relais que vous souhaitez utiliser irreversible: Les messages filtrés disparaîtront irrévocablement, même si le filtre est supprimé plus tard locale: La langue de l’interface, des courriels et des notifications locked: Nécessite que vous approuviez manuellement chaque abonné·e @@ -59,7 +59,7 @@ fr: setting_show_application: Le nom de l’application que vous utilisez pour publier sera affichée dans la vue détaillée de vos messages setting_use_blurhash: Les dégradés sont basés sur les couleurs des images cachées mais n’en montrent pas les détails setting_use_pending_items: Cacher les mises à jour des fils d’actualités derrière un clic, au lieu de les afficher automatiquement - username: Votre nom d’utilisateur sera unique sur %{domain} + username: Votre identifiant sera unique sur %{domain} whole_word: Si le mot-clé ou la phrase est alphanumérique, alors le filtre ne sera appliqué que s’il correspond au mot entier domain_allow: domain: Ce domaine pourra récupérer des données de ce serveur et les données entrantes seront traitées et stockées @@ -78,24 +78,26 @@ fr: backups_retention_period: Conserve les archives générées par l'utilisateur selon le nombre de jours spécifié. bootstrap_timeline_accounts: Ces comptes seront épinglés en tête de liste des recommandations pour les nouveaux utilisateurs. closed_registrations_message: Affiché lorsque les inscriptions sont fermées - content_cache_retention_period: Les publications depuis d'autres serveurs seront supprimées après un nombre de jours spécifiés lorsque défini sur une valeur positive. Cela peut être irréversible. + content_cache_retention_period: Lorsque la valeur est positive, les messages publiés depuis d'autres serveurs seront supprimés après le nombre de jours défini. Cela peut être irréversible. custom_css: Vous pouvez appliquer des styles personnalisés sur la version Web de Mastodon. mascot: Remplace l'illustration dans l'interface Web avancée. - media_cache_retention_period: Les fichiers multimédias téléchargés seront supprimés après le nombre de jours spécifiés lorsque la valeur est positive, et seront téléchargés à nouveau sur demande. - peers_api_enabled: Une liste de noms de domaine que ce serveur a rencontrés dans le fediverse. Aucune donnée indiquant si vous vous fédérez ou non avec un serveur particulier n'est incluse ici, seulement l'information que votre serveur connaît un autre serveur. Cette option est utilisée par les services qui collectent des statistiques sur la fédération en général. - profile_directory: L'annuaire des profils répertorie tous les utilisateurs qui ont opté pour être découverts. + media_cache_retention_period: Lorsque la valeur est positive, les fichiers multimédias téléchargés seront supprimés après le nombre de jours défini et pourront être à nouveau téléchargés sur demande. + peers_api_enabled: Une liste de noms de domaine que ce serveur a rencontrés dans le fédiverse. Aucune donnée indiquant si vous vous fédérez ou non avec un serveur particulier n'est incluse ici, seulement l'information que votre serveur connaît un autre serveur. Cette option est utilisée par les services qui collectent des statistiques sur la fédération en général. + profile_directory: L'annuaire des profils répertorie tous les comptes qui choisi d'être découvrables. require_invite_text: Lorsque les inscriptions nécessitent une approbation manuelle, rendre le texte de l’invitation "Pourquoi voulez-vous vous inscrire ?" obligatoire plutôt que facultatif - site_contact_email: Comment les personnes peuvent vous joindre pour des demandes de renseignements juridiques ou d'assistance. + site_contact_email: Comment l'on peut vous joindre pour des requêtes d'assistance ou d'ordre juridique. site_contact_username: Comment les gens peuvent vous contacter sur Mastodon. - site_extended_description: Toute information supplémentaire qui peut être utile aux visiteurs et à vos utilisateurs. Peut être structurée avec la syntaxe Markdown. - site_short_description: Une courte description pour aider à identifier de manière unique votre serveur. Qui l'exécute, à qui il est destiné ? - site_terms: Utilisez votre propre politique de confidentialité ou laissez vide pour utiliser la syntaxe par défaut. Peut être structurée avec la syntaxe Markdown. - site_title: Comment les personnes peuvent se référer à votre serveur en plus de son nom de domaine. + site_extended_description: Toute information supplémentaire qui peut être utile aux non-inscrit⋅e⋅s et à vos utilisateur⋅rice⋅s. Peut être structurée avec la syntaxe Markdown. + site_short_description: Une description brève pour aider à faire connaître votre serveur de manière unique. Qui s'en occupe ? à qui est-il destiné ? + site_terms: Utilisez votre propre politique de confidentialité ou laissez vide pour utiliser les conditions définies par défaut. Peut être structurée avec la syntaxe Markdown. + site_title: Comment l'on peut faire référence à votre serveur, autrement que par le nom de domaine. + status_page_url: URL d'une page où les gens peuvent voir l'état de ce serveur en cas de panne theme: Thème que verront les utilisateur·rice·s déconnecté·e·s ainsi que les nouveaux·elles utilisateur·rice·s. thumbnail: Une image d'environ 2:1 affichée à côté des informations de votre serveur. - timeline_preview: Les visiteurs déconnectés pourront parcourir les derniers messages publics disponibles sur le serveur. + timeline_preview: Les utilisateur⋅rice⋅s déconnecté⋅e⋅s pourront parcourir les derniers messages publics disponibles sur le serveur. trendable_by_default: Ignorer l'examen manuel du contenu tendance. Des éléments individuels peuvent toujours être supprimés des tendances après coup. - trends: Les tendances montrent quelles publications, hashtags et actualités sont en train de gagner en traction sur votre serveur. + trends: Les tendances montrent quelles publications, hashtags et actualités gagnent en ampleur sur votre serveur. + trends_as_landing_page: Afficher le contenu tendance au lieu d'une description de ce serveur pour les comptes déconnectés et les non-inscrit⋅e⋅s. Nécessite que les tendances soient activées. form_challenge: current_password: Vous entrez une zone sécurisée imports: @@ -174,7 +176,7 @@ fr: data: Données discoverable: Suggérer ce compte aux autres display_name: Nom public - email: Adresse courriel + email: Adresse de courriel expires_in: Expire après fields: Métadonnées du profil header: Image d’en-tête @@ -220,7 +222,7 @@ fr: title: Nom type: Type d’import username: Identifiant - username_or_email: Nom d’utilisateur·rice ou courriel + username_or_email: Identifiant ou adresse courriel whole_word: Mot entier email_domain_block: with_dns_records: Inclure les enregistrements MX et IP du domaine @@ -232,8 +234,8 @@ fr: warn: Cacher derrière un avertissement form_admin_settings: activity_api_enabled: Publie des statistiques agrégées sur l'activité des utilisateur⋅rice⋅s dans l'API - backups_retention_period: Période d'archivage utilisateur - bootstrap_timeline_accounts: Toujours recommander ces comptes aux nouveaux utilisateurs + backups_retention_period: Durée de rétention des archives utilisateur + bootstrap_timeline_accounts: Toujours recommander ces comptes aux nouveaux⋅elles utilisateur⋅rice⋅s closed_registrations_message: Message personnalisé lorsque les inscriptions ne sont pas disponibles content_cache_retention_period: Durée de rétention du contenu dans le cache custom_css: CSS personnalisé @@ -245,17 +247,19 @@ fr: require_invite_text: Exiger une raison pour s’inscrire show_domain_blocks: Afficher les blocages de domaines show_domain_blocks_rationale: Montrer pourquoi les domaines ont été bloqués - site_contact_email: E-mail de contact - site_contact_username: Nom d'utilisateur du contact + site_contact_email: Adresse de courriel de contact + site_contact_username: Identifiant du contact site_extended_description: Description étendue site_short_description: Description du serveur site_terms: Politique de confidentialité site_title: Nom du serveur + status_page_url: URL de la page de l'état du serveur theme: Thème par défaut thumbnail: Miniature du serveur timeline_preview: Autoriser l’accès non authentifié aux fils publics trendable_by_default: Autoriser les tendances sans révision préalable trends: Activer les tendances + trends_as_landing_page: Utiliser les tendances comme page d'accueil interactions: must_be_follower: Bloquer les notifications des personnes qui ne vous suivent pas must_be_following: Bloquer les notifications des personnes que vous ne suivez pas @@ -275,12 +279,12 @@ fr: notification_emails: appeal: Une personne fait appel d'une décision des modérateur·rice·s digest: Envoyer des courriels récapitulatifs - favourite: Quelqu’un a ajouté mon message à ses favoris - follow: Quelqu’un vient de me suivre - follow_request: Quelqu’un demande à me suivre - mention: Quelqu’un me mentionne + favourite: Quelqu’un a ajouté votre message à ses favoris + follow: Quelqu’un vient de vous suivre + follow_request: Quelqu’un demande à vous suivre + mention: Quelqu’un vous a mentionné⋅e pending_account: Nouveau compte en attente d’approbation - reblog: Quelqu’un a partagé mon message + reblog: Quelqu’un a partagé votre message report: Nouveau signalement soumis trending_tag: Nouvelle tendance nécessitant supervision rule: diff --git a/config/locales/simple_form.fy.yml b/config/locales/simple_form.fy.yml index 768635912..be950189b 100644 --- a/config/locales/simple_form.fy.yml +++ b/config/locales/simple_form.fy.yml @@ -91,11 +91,13 @@ fy: site_short_description: In koarte beskriuwing om it unike karakter fan jo server te toanen. Wa beheart de server, wat is de doelgroep? site_terms: Brûk jo eigen privacybeleid of lit leech om de standertwearde te brûken. Kin mei Markdown opmakke wurde. site_title: Hoe minsken bûten de domeinnamme nei jo server ferwize kinne. + status_page_url: URL fan in side dêr’t minsken de steat fan dizze server sjen kinne wylst in steuring theme: Tema dy’t ôfmelde besikers en nije brûkers sjen. thumbnail: In ôfbylding fan ûngefear in ferhâlding fan 2:1 dy’t njonken jo serverynformaasje toand wurdt. timeline_preview: Net oanmelde besikers kinne de meast resinte, op de server oanwêzige iepenbiere berjochten besjen. trendable_by_default: Hânmjittige beoardieling fan trends oerslaan. Yndividuele items kinne letter dochs noch ôfkard wurde. trends: Trends toane hokker berjochten, hashtags en nijsberjochten op jo server oan populariteit winne. + trends_as_landing_page: Toan trending ynhâld oan ôfmelde brûkers en besikers yn stee fan in beskriuwing fan dizze server. Fereasket dat trends ynskeakele binne. form_challenge: current_password: Jo betrêdzje in feilige omjouwing imports: @@ -251,11 +253,13 @@ fy: site_short_description: Serveromskriuwing site_terms: Privacybelied site_title: Servernamme + status_page_url: URL fan steatside theme: Standerttema thumbnail: Serverthumbnail timeline_preview: Tagong ta de iepenbiere tiidlinen sûnder oan te melden tastean trendable_by_default: Trends goedkarre sûnder yn it foar geande beoardieling trends: Trends ynskeakelje + trends_as_landing_page: Lit trends op de startside sjen interactions: must_be_follower: Meldingen fan minsken dy’t jo net folgje blokkearje must_be_following: Meldingen fan minsken dy’t jo net folgje blokkearje diff --git a/config/locales/simple_form.gl.yml b/config/locales/simple_form.gl.yml index a0156e8c2..c4a6da566 100644 --- a/config/locales/simple_form.gl.yml +++ b/config/locales/simple_form.gl.yml @@ -91,11 +91,13 @@ gl: site_short_description: Breve descrición que axuda a identificar de xeito único o teu servidor. Quen o xestiona, a quen vai dirixido? site_terms: Escribe a túa propia política de privacidade ou usa o valor por defecto. Podes usar sintaxe Markdow. site_title: De que xeito se pode referir o teu servidor ademáis do seu nome de dominio. + status_page_url: URL dunha páxina onde se pode ver o estado deste servidor cando non está a funcionar theme: Decorado que verán visitantes e novas usuarias. thumbnail: Imaxe con proporcións 2:1 mostrada xunto á información sobre o servidor. timeline_preview: Visitantes e usuarias non conectadas poderán ver as publicacións públicas máis recentes do servidor. trendable_by_default: Omitir a revisión manual das tendencias. Poderás igualmente eliminar manualmente os elementos que vaian aparecendo. trends: As tendencias mostran publicacións, cancelos e novas historias que teñen popularidade no teu servidor. + trends_as_landing_page: Mostrar contidos en voga para as persoas sen sesión iniciada e visitantes no lugar dunha descrición deste servidor. Require ter activado Tendencias. form_challenge: current_password: Estás entrando nun área segura imports: @@ -251,11 +253,13 @@ gl: site_short_description: Descrición do servidor site_terms: Política de Privacidade site_title: Nome do servidor + status_page_url: URL da páxina do estado theme: Decorado por omisión thumbnail: Icona do servidor timeline_preview: Permitir acceso á cronoloxía pública sen autenticación trendable_by_default: Permitir tendencias sen aprobación previa trends: Activar tendencias + trends_as_landing_page: Usar as tendencias como páxina de benvida interactions: must_be_follower: Bloquear as notificacións de non-seguidoras must_be_following: Bloquea as notificacións de persoas que non segues diff --git a/config/locales/simple_form.he.yml b/config/locales/simple_form.he.yml index 8afa07860..8e6631e36 100644 --- a/config/locales/simple_form.he.yml +++ b/config/locales/simple_form.he.yml @@ -91,11 +91,13 @@ he: site_short_description: תיאור קצר שיעזור להבחין בייחודיות השרת שלך. מי מריץ אותו, למי הוא מיועד? site_terms: נסחו מדיניות פרטיות או השאירו ריק כדי להשתמש בברירת המחדל. ניתן לנסח בעזרת תחביר מארקדאון. site_title: כיצד יקרא השרת שלך על ידי הקהל מלבד שם המתחם. - theme: ערכת המראה שיראו משתמשים חדשים ולא מחוברים. + status_page_url: כתובת לבדיקת מצב שרת זה בעת תקלה + theme: ערכת המראה שיראו משתמשים חדשים ומשתמשים שאינם מחוברים. thumbnail: תמונה ביחס 2:1 בערך שתוצג ליד המידע על השרת שלך. timeline_preview: משתמשים מנותקים יוכלו לדפדף בהודעות ציר הזמן הציבורי שעל השרת. trendable_by_default: לדלג על בדיקה ידנית של התכנים החמים. פריטים ספציפיים עדיין ניתנים להסרה לאחר מעשה. trends: נושאים חמים יציגו אילו הודעות, תגיות וידיעות חדשות צוברות חשיפה על השרת שלך. + trends_as_landing_page: הצג למבקרים ולמשתמשים שאינם מחוברים את הנושאים החמים במקום את תיאור השרת. מחייב הפעלה של אפשרות הנושאים החמים. form_challenge: current_password: את.ה נכנס. ת לאזור מאובטח imports: @@ -251,11 +253,13 @@ he: site_short_description: תיאור השרת site_terms: מדיניות פרטיות site_title: שם השרת + status_page_url: URL של עמוד סטטוס חיצוני theme: ערכת נושא ברירת מחדל thumbnail: תמונה ממוזערת מהשרת timeline_preview: הרשאת גישה בלתי מאומתת לפיד הפומבי trendable_by_default: הרשאה לפריטים להופיע בנושאים החמים ללא אישור מוקדם trends: אפשר פריטים חמים (טרנדים) + trends_as_landing_page: דף הנחיתה יהיה "נושאים חמים" interactions: must_be_follower: חסימת התראות משאינם עוקבים must_be_following: חסימת התראות משאינם נעקבים diff --git a/config/locales/simple_form.hu.yml b/config/locales/simple_form.hu.yml index a8b891afe..81d74cebe 100644 --- a/config/locales/simple_form.hu.yml +++ b/config/locales/simple_form.hu.yml @@ -91,11 +91,13 @@ hu: site_short_description: Rövid leírás, amely segíthet a kiszolgálód egyedi azonosításában. Ki futtatja, kinek készült? site_terms: Használd a saját adatvédelmi irányelveidet, vagy hagyd üresen az alapértelmezett használatához. Markdown szintaxis használható. site_title: Hogyan hivatkozhatnak mások a kiszolgálódra a domain nevén kívül. + status_page_url: Annak az oldalnak az URL-je, melyen ennek a kiszolgálónak az állapotát látják az emberek egy leállás során theme: A téma, melyet a kijelentkezett látogatók és az új felhasználók látnak. thumbnail: Egy durván 2:1 arányú kép, amely a kiszolgálóinformációk mellett jelenik meg. timeline_preview: A kijelentkezett látogatók továbbra is böngészhetik a kiszolgáló legfrissebb nyilvános bejegyzéseit. trendable_by_default: Kézi felülvizsgálat kihagyása a felkapott tartalmaknál. Az egyes elemek utólag távolíthatók el a trendek közül. trends: A trendek azt mondják meg, hogy mely bejegyzések, hashtagek és hírbejegyzések felkapottak a kiszolgálódon. + trends_as_landing_page: Felkapott tartalmak mutatása a kijelentkezett felhasználók és látogatók számára ennek a kiszolgálónak a leírása helyett. Szükséges hozzá a trendek engedélyezése. form_challenge: current_password: Beléptél egy biztonsági térben imports: @@ -251,11 +253,13 @@ hu: site_short_description: Kiszolgáló leírása site_terms: Adatvédelmi szabályzat site_title: Kiszolgáló neve + status_page_url: Állapotoldal URL-je theme: Alapértelmezett téma thumbnail: Kiszolgáló bélyegképe timeline_preview: A nyilvános idővonalak hitelesítés nélküli elérésének engedélyezése trendable_by_default: Trendek engedélyezése előzetes ellenőrzés nélkül trends: Trendek engedélyezése + trends_as_landing_page: Trendek használata nyitóoldalként interactions: must_be_follower: Nem követőidtől érkező értesítések tiltása must_be_following: Nem követettjeidtől érkező értesítések tiltása diff --git a/config/locales/simple_form.is.yml b/config/locales/simple_form.is.yml index dcb77ca4e..ed17c9753 100644 --- a/config/locales/simple_form.is.yml +++ b/config/locales/simple_form.is.yml @@ -91,11 +91,13 @@ is: site_short_description: Stutt lýsing sem hjálpar til við að auðkenna netþjóninn þinn. Hver er að reka hann, fyrir hverja er hann? site_terms: Notaðu þína eigin persónuverndarstefnu eða skildu þetta eftir autt til að nota sjálfgefna stefnu. Má sníða með Markdown-málskipan. site_title: Hvað fólk kallar netþjóninn þinn annað en með heiti lénsins. + status_page_url: Slóð á síðu þar sem fólk getur séð ástand netþjónsins þegar vandræði koma upp theme: Þema sem útskráðir gestir og nýjir notendur sjá. thumbnail: Mynd um það bil 2:1 sem birtist samhliða upplýsingum um netþjóninn þinn. timeline_preview: Gestir sem ekki eru skráðir inn munu geta skoðað nýjustu opinberu færslurnar sem tiltækar eru á þjóninum. trendable_by_default: Sleppa handvirkri yfirferð á vinsælu efni. Áfram verður hægt að fjarlægja stök atriði úr vinsældarlistum. trends: Vinsældir sýna hvaða færslur, myllumerki og fréttasögur séu í umræðunni á netþjóninum þínum. + trends_as_landing_page: Sýna vinsælt efni til ekki-innskráðra notenda í stað lýsingar á þessum netþjóni. Krefst þess að vinsældir efnis sé virkjað. form_challenge: current_password: Þú ert að fara inn á öryggissvæði imports: @@ -251,11 +253,13 @@ is: site_short_description: Lýsing á vefþjóni site_terms: Persónuverndarstefna site_title: Heiti vefþjóns + status_page_url: Slóð á ástandssíðu theme: Sjálfgefið þema thumbnail: Smámynd vefþjóns timeline_preview: Leyfa óauðkenndan aðgang að opinberum tímalínum trendable_by_default: Leyfa vinsælt efni án undanfarandi yfirferðar trends: Virkja vinsælt + trends_as_landing_page: Nota vinsælasta sem upphafssíðu interactions: must_be_follower: Loka á tilkynningar frá þeim sem ekki eru fylgjendur must_be_following: Loka á tilkynningar frá þeim sem þú fylgist ekki með diff --git a/config/locales/simple_form.it.yml b/config/locales/simple_form.it.yml index 4dc27cc61..3af09275f 100644 --- a/config/locales/simple_form.it.yml +++ b/config/locales/simple_form.it.yml @@ -91,11 +91,13 @@ it: site_short_description: Una breve descrizione per aiutare a identificare in modo univoco il tuo server. Chi lo gestisce, a chi è rivolto? site_terms: Usa la tua politica sulla privacy o lascia vuoto per usare l'impostazione predefinita. Può essere strutturata con la sintassi Markdown. site_title: In che modo le persone possono fare riferimento al tuo server oltre al suo nome di dominio. + status_page_url: URL di una pagina in cui le persone possono visualizzare lo stato di questo server durante un disservizio theme: Tema visualizzato dai visitatori e dai nuovi utenti disconnessi. thumbnail: Un'immagine approssimativamente 2:1 visualizzata insieme alle informazioni del tuo server. timeline_preview: I visitatori disconnessi potranno sfogliare i post pubblici più recenti disponibili sul server. trendable_by_default: Salta la revisione manuale dei contenuti di tendenza. I singoli elementi possono ancora essere rimossi dalle tendenze dopo il fatto. trends: Le tendenze mostrano quali post, hashtag e notizie stanno guadagnando popolarità sul tuo server. + trends_as_landing_page: Mostra i contenuti di tendenza agli utenti disconnessi e ai visitatori, invece di una descrizione di questo server. Richiede l'abilitazione delle tendenze. form_challenge: current_password: Stai entrando in un'area sicura imports: @@ -251,11 +253,13 @@ it: site_short_description: Descrizione del server site_terms: Politica sulla privacy site_title: Nome del server + status_page_url: URL della pagina di stato theme: Tema predefinito thumbnail: Miniatura del server timeline_preview: Consenti l'accesso non autenticato alle timeline pubbliche trendable_by_default: Consenti le tendenze senza revisione preventiva trends: Abilita le tendenze + trends_as_landing_page: Utilizza le tendenze come pagina di destinazione interactions: must_be_follower: Blocca notifiche da chi non ti segue must_be_following: Blocca notifiche dalle persone che non segui diff --git a/config/locales/simple_form.ja.yml b/config/locales/simple_form.ja.yml index 779555da3..f7e2cb954 100644 --- a/config/locales/simple_form.ja.yml +++ b/config/locales/simple_form.ja.yml @@ -84,18 +84,20 @@ ja: media_cache_retention_period: 正の値に設定されている場合、ダウンロードされたメディアファイルは指定された日数の後に削除され、リクエストに応じて再ダウンロードされます。 peers_api_enabled: このサーバーが Fediverse で遭遇したドメイン名のリストです。このサーバーが知っているだけで、特定のサーバーと連合しているかのデータは含まれません。これは一般的に Fediverse に関する統計情報を収集するサービスによって使用されます。 profile_directory: ディレクトリには、掲載する設定をしたすべてのユーザーが一覧表示されます。 - require_invite_text: アカウント登録が承認制の場合、申請事由の入力を必須にします + require_invite_text: アカウント登録が承認制の場合、登録の際の申請事由の入力を必須にします site_contact_email: 法律またはサポートに関する問い合わせ先 site_contact_username: マストドンでの連絡方法 site_extended_description: 訪問者やユーザーに役立つかもしれない任意の追加情報。Markdownが使えます。 site_short_description: 運営している人や組織、想定しているユーザーなど、サーバーの特徴を説明する短いテキスト site_terms: 独自のプライバシーポリシーを使用するか空白にしてデフォルトのプライバシーポリシーを使用します。Markdownが使えます。 site_title: ドメイン名以外でサーバーを参照する方法 + status_page_url: 障害発生時などにユーザーがサーバーの状態を確認できるページのURL theme: ログインしていない人と新規ユーザーに表示されるテーマ。 thumbnail: サーバー情報と共に表示される、アスペクト比が約 2:1 の画像。 - timeline_preview: ログアウトした人でも、サーバー上で利用可能な最新の公開投稿を閲覧することができます。 - trendable_by_default: トレンドコンテンツの手動レビューをスキップする。個々のコンテンツは後でトレンドから削除できます。 - trends: トレンドは、サーバー上でどの投稿、ハッシュタグ、ニュース記事が人気を集めているかを示します。 + timeline_preview: ログインしていないユーザーがサーバー上の最新の公開投稿を閲覧できるようにします。 + trendable_by_default: トレンドの審査を省略します。トレンドは掲載後でも個別に除外できます。 + trends: トレンドは、サーバー上で人気を集めている投稿、ハッシュタグ、ニュース記事などが表示されます。 + trends_as_landing_page: ログインしていないユーザーに対して、サーバーの説明の代わりにトレンドコンテンツを表示します。トレンドを有効にする必要があります。 form_challenge: current_password: セキュリティ上重要なエリアにアクセスしています imports: @@ -122,11 +124,11 @@ ja: chosen_languages: 選択すると、選択した言語の投稿のみが公開タイムラインに表示されるようになります role: このロールはユーザーが持つ権限を管理します user_role: - color: UI 全体で使用される色(RGB hex 形式) + color: UI 全体でロールの表示に使用される色(16進数RGB形式) highlighted: これによりロールが公開されます。 name: ロールのバッジを表示する際の表示名 permissions_as_keys: このロールを持つユーザーは次の機能にアクセスできます - position: 特定の状況では、より高いロールが競合の解決を決定します。特定のアクションは優先順位が低いロールでのみ実行できます。 + position: 場合により、より高いロールのユーザーが紛争の解決を決定します。特定のアクションは優先度が低いロールでのみ実行できます。 webhook: events: 送信するイベントを選択 url: イベントの送信先 @@ -233,16 +235,16 @@ ja: form_admin_settings: activity_api_enabled: APIでユーザーアクティビティに関する集計統計を公開する backups_retention_period: ユーザーアーカイブの保持期間 - bootstrap_timeline_accounts: 新規ユーザーに必ずおすすめするアカウント - closed_registrations_message: サインアップできない場合のカスタムメッセージ + bootstrap_timeline_accounts: おすすめユーザーに常に表示するアカウント + closed_registrations_message: アカウント作成を停止している時のカスタムメッセージ content_cache_retention_period: コンテンツキャッシュの保持期間 custom_css: カスタムCSS mascot: カスタムマスコット(レガシー) media_cache_retention_period: メディアキャッシュの保持期間 - peers_api_enabled: APIで接続しているサーバーのリストを公開する + peers_api_enabled: 発見したサーバーのリストをAPIで公開する profile_directory: ディレクトリを有効にする registrations_mode: 新規登録が可能な人 - require_invite_text: 意気込み理由の入力を必須にする。 + require_invite_text: 申請事由の入力を必須にする show_domain_blocks: ドメインブロックを表示 show_domain_blocks_rationale: ドメインがブロックされた理由を表示 site_contact_email: 連絡先メールアドレス @@ -251,11 +253,13 @@ ja: site_short_description: サーバーの説明 site_terms: プライバシーポリシー site_title: サーバーの名前 + status_page_url: ステータスページのURL theme: デフォルトテーマ thumbnail: サーバーのサムネイル timeline_preview: 公開タイムラインへの未認証のアクセスを許可する - trendable_by_default: 審査前のハッシュタグのトレンドへの表示を許可する + trendable_by_default: 審査前のトレンドの掲載を許可する trends: トレンドを有効にする + trends_as_landing_page: 新規登録画面にトレンドを表示する interactions: must_be_follower: フォロワー以外からの通知をブロック must_be_following: フォローしていないユーザーからの通知をブロック diff --git a/config/locales/simple_form.ko.yml b/config/locales/simple_form.ko.yml index 007fa8561..d08226261 100644 --- a/config/locales/simple_form.ko.yml +++ b/config/locales/simple_form.ko.yml @@ -91,11 +91,13 @@ ko: site_short_description: 이 서버를 특별하게 구분할 수 있는 짧은 설명. 누가 운영하고, 누구를 위한 것인가요? site_terms: 자신만의 개인정보 정책을 사용하거나 비워두는 것으로 기본값을 사용할 수 있습니다. 마크다운 문법을 사용할 수 있습니다. site_title: 사람들이 이 서버를 도메인 네임 대신에 부를 이름. + status_page_url: 이 서버가 중단된 동안 사람들이 서버의 상태를 볼 수 있는 페이지 URL theme: 로그인 하지 않은 사용자나 새로운 사용자가 보게 될 테마. thumbnail: 대략 2:1 비율의 이미지가 서버 정보 옆에 표시됩니다. timeline_preview: 로그아웃 한 사용자들이 이 서버에 있는 최신 공개글들을 볼 수 있게 합니다. trendable_by_default: 유행하는 콘텐츠에 대한 수동 승인을 건너뜁니다. 이 설정이 적용된 이후에도 각각의 항목들을 삭제할 수 있습니다. trends: 트렌드는 어떤 게시물, 해시태그 그리고 뉴스 기사가 이 서버에서 인기를 끌고 있는지 보여줍니다. + trends_as_landing_page: 로그아웃한 사용자와 방문자에게 서버 설명 대신하여 유행하는 내용을 보여줍니다. 유행 기능을 활성화해야 합니다. form_challenge: current_password: 당신은 보안 구역에 진입하고 있습니다 imports: @@ -251,11 +253,13 @@ ko: site_short_description: 서버 설명 site_terms: 개인정보 정책 site_title: 서버 이름 + status_page_url: 상태 페이지 URL theme: 기본 테마 thumbnail: 서버 썸네일 timeline_preview: 로그인 하지 않고 공개 타임라인에 접근하는 것을 허용 trendable_by_default: 사전 리뷰 없이 트렌드에 오르는 것을 허용 trends: 유행 활성화 + trends_as_landing_page: 유행을 방문 페이지로 쓰기 interactions: must_be_follower: 나를 팔로우 하지 않는 사람에게서 온 알림을 차단 must_be_following: 내가 팔로우 하지 않는 사람에게서 온 알림을 차단 diff --git a/config/locales/simple_form.lv.yml b/config/locales/simple_form.lv.yml index aec79eaa0..ff727235e 100644 --- a/config/locales/simple_form.lv.yml +++ b/config/locales/simple_form.lv.yml @@ -91,11 +91,13 @@ lv: site_short_description: Īss apraksts, kas palīdzēs unikāli identificēt tavu serveri. Kurš to darbina, kam tas paredzēts? site_terms: Izmanto pats savu konfidencialitātes politiku vai atstāj tukšu, lai izmantotu noklusējuma iestatījumu. Var strukturēt ar Markdown sintaksi. site_title: Kā cilvēki var atsaukties uz tavu serveri, izņemot tā domēna nosaukumu. + status_page_url: Tās lapas URL, kurā lietotāji var redzēt šī servera statusu pārtraukuma laikā theme: Tēma, kuru redz apmeklētāji, kuri ir atteikušies, un jaunie lietotāji. thumbnail: Aptuveni 2:1 attēls, kas tiek parādīts kopā ar tava servera informāciju. timeline_preview: Atteikušies apmeklētāji varēs pārlūkot jaunākās serverī pieejamās publiskās ziņas. trendable_by_default: Izlaist aktuālā satura manuālu pārskatīšanu. Atsevišķas preces joprojām var noņemt no tendencēm pēc fakta. trends: Tendences parāda, kuras ziņas, atsauces un ziņu stāsti gūst panākumus tavā serverī. + trends_as_landing_page: Šī servera apraksta vietā rādīt aktuālo saturu lietotājiem un apmeklētājiem, kuri ir atteikušies. Nepieciešams iespējot tendences. form_challenge: current_password: Tu ieej drošā zonā imports: @@ -251,11 +253,13 @@ lv: site_short_description: Servera apraksts site_terms: Privātuma Politika site_title: Servera nosaukums + status_page_url: Statusa lapas URL theme: Noklusētā tēma thumbnail: Servera sīkbilde timeline_preview: Atļaut neautentificētu piekļuvi publiskajām ziņu lentām trendable_by_default: Atļaut tendences bez iepriekšējas pārskatīšanas trends: Iespējot tendences + trends_as_landing_page: Izmantojiet tendences kā galveno lapu interactions: must_be_follower: Bloķēt paziņojumus no ne-sekotājiem must_be_following: Bloķēt paziņojumus no cilvēkiem, kuriem tu neseko diff --git a/config/locales/simple_form.nl.yml b/config/locales/simple_form.nl.yml index ce474dab7..44e9e7819 100644 --- a/config/locales/simple_form.nl.yml +++ b/config/locales/simple_form.nl.yml @@ -91,11 +91,13 @@ nl: site_short_description: Een korte beschrijving om het unieke karakter van je server te tonen. Wie beheert de server, wat is de doelgroep? site_terms: Gebruik je eigen privacybeleid of laat leeg om de standaardwaarde te gebruiken. Kan worden opgemaakt met Markdown. site_title: Hoe mensen buiten de domeinnaam naar je server kunnen verwijzen. + status_page_url: URL van een pagina waar mensen de status van deze server kunnen zien tijdens een storing theme: Thema die (niet ingelogde) bezoekers en nieuwe gebruikers zien. thumbnail: Een afbeelding van ongeveer een verhouding van 2:1 die naast jouw serverinformatie wordt getoond. timeline_preview: Bezoekers (die niet zijn ingelogd) kunnen de meest recente, op de server aanwezige openbare berichten bekijken. trendable_by_default: Handmatige beoordeling van trends overslaan. Individuele items kunnen later alsnog worden afgekeurd. trends: Trends laten zien welke berichten, hashtags en nieuwsberichten op jouw server aan populariteit winnen. + trends_as_landing_page: Toon trending inhoud aan uitgelogde gebruikers en bezoekers in plaats van een beschrijving van deze server. Vereist dat trends zijn ingeschakeld. form_challenge: current_password: Je betreedt een veilige omgeving imports: @@ -251,11 +253,13 @@ nl: site_short_description: Serveromschrijving site_terms: Privacybeleid site_title: Servernaam + status_page_url: URL van statuspagina theme: Standaardthema thumbnail: Serverthumbnail timeline_preview: Toegang tot de openbare tijdlijnen zonder in te loggen toestaan trendable_by_default: Trends goedkeuren zonder voorafgaande beoordeling trends: Trends inschakelen + trends_as_landing_page: Laat trends op de startpagina zien interactions: must_be_follower: Meldingen van mensen die jou niet volgen blokkeren must_be_following: Meldingen van mensen die jij niet volgt blokkeren diff --git a/config/locales/simple_form.pl.yml b/config/locales/simple_form.pl.yml index 712a8ea14..b6d351cb2 100644 --- a/config/locales/simple_form.pl.yml +++ b/config/locales/simple_form.pl.yml @@ -91,11 +91,13 @@ pl: site_short_description: Krótki opis, który pomoże w unikalnym zidentyfikowaniu Twojego serwera. Kto go obsługuje, do kogo jest skierowany? site_terms: Użyj własnej polityki prywatności lub zostaw puste, aby użyć domyślnej. Może być sformatowana za pomocą składni Markdown. site_title: Jak ludzie mogą odwoływać się do Twojego serwera inaczej niże przez nazwę jego domeny. + status_page_url: Adres URL strony, na której odwiedzający mogą zobaczyć status tego serwera w trakcie awarii theme: Motyw, który widzą wylogowani i nowi użytkownicy. thumbnail: Obraz o proporcjach mniej więcej 2:1 wyświetlany obok informacji o serwerze. timeline_preview: Wylogowani użytkownicy będą mogli przeglądać najnowsze publiczne wpisy dostępne na serwerze. trendable_by_default: Pomiń ręczny przegląd treści trendów. Pojedyncze elementy nadal mogą być usuwane z trendów po fakcie. trends: Tendencje pokazują, które posty, hasztagi i newsy zyskują popularność na Twoim serwerze. + trends_as_landing_page: Pokaż najpopularniejsze treści niezalogowanym użytkownikom i odwiedzającym zamiast opisu tego serwera. Wymaga włączenia trendów. form_challenge: current_password: Wchodzisz w strefę bezpieczną imports: @@ -251,11 +253,13 @@ pl: site_short_description: Opis serwera site_terms: Polityka prywatności site_title: Nazwa serwera + status_page_url: Adres URL strony statusu theme: Domyślny motyw thumbnail: Miniaturka serwera timeline_preview: Zezwalaj na nieuwierzytelniony dostęp do publicznych osi czasu trendable_by_default: Zezwalaj na trendy bez wcześniejszego przeglądu trends: Włącz trendy + trends_as_landing_page: Użyj trendów jako strony początkowej interactions: must_be_follower: Nie wyświetlaj powiadomień od osób, które Cię nie obserwują must_be_following: Nie wyświetlaj powiadomień od osób, których nie obserwujesz diff --git a/config/locales/simple_form.pt-PT.yml b/config/locales/simple_form.pt-PT.yml index 3de885530..4e34c5897 100644 --- a/config/locales/simple_form.pt-PT.yml +++ b/config/locales/simple_form.pt-PT.yml @@ -91,11 +91,13 @@ pt-PT: site_short_description: Uma breve descrição para ajudar a identificar de forma única o seu servidor. Quem o está a gerir, e a quem se destina? site_terms: Use a sua própria política de privacidade ou deixe em branco para usar a política padrão. Pode ser estruturada com a sintaxe Markdown. site_title: Como as pessoas podem referir-se ao seu servidor para além do seu nome de domínio. + status_page_url: URL de uma página onde as pessoas podem ver o estado deste servidor durante uma interrupção theme: Tema que os visitantes e os novos utilizadores veem. thumbnail: Uma imagem de cerca de 2:1, apresentada ao lado da informação do seu servidor. timeline_preview: Os visitantes sem sessão iniciada poderão consultar as publicações públicas mais recentes disponíveis no servidor. trendable_by_default: Ignorar a revisão manual do conteúdo em alta. Elementos em avulso poderão ainda assim ser retirados das tendências mesmo após a sua apresentação. trends: As publicações em alta mostram quais as publicações, etiquetas e notícias que estão a ganhar destaque no seu servidor. + trends_as_landing_page: Mostrar conteúdo de tendências para usuários logados e visitantes em vez de uma descrição deste servidor. Requer que as tendências sejam ativadas. form_challenge: current_password: Está a entrar numa área segura imports: @@ -251,11 +253,13 @@ pt-PT: site_short_description: Descrição do servidor site_terms: Política de privacidade site_title: Nome do servidor + status_page_url: URL da página de estado theme: Tema predefinido thumbnail: Miniatura do servidor timeline_preview: Permitir acesso não autenticado às cronologias públicas trendable_by_default: Permitir publicações em alta sem revisão prévia trends: Activar publicações em alta + trends_as_landing_page: Usar tendências como página inicial interactions: must_be_follower: Bloquear notificações de não-seguidores must_be_following: Bloquear notificações de pessoas que não segues diff --git a/config/locales/simple_form.sk.yml b/config/locales/simple_form.sk.yml index 78c8ea7e0..e8fb86f29 100644 --- a/config/locales/simple_form.sk.yml +++ b/config/locales/simple_form.sk.yml @@ -149,6 +149,7 @@ sk: name: Haštag form_admin_settings: peers_api_enabled: Zverejni zoznam objavených serverov v API + status_page_url: URL adresa stránky stavu interactions: must_be_follower: Blokuj oboznámenia od užívateľov, ktorí ma nenasledujú must_be_following: Blokuj oboznámenia od ľudí, ktorých nesledujem diff --git a/config/locales/simple_form.sl.yml b/config/locales/simple_form.sl.yml index 8bf5e43f1..ac14735a9 100644 --- a/config/locales/simple_form.sl.yml +++ b/config/locales/simple_form.sl.yml @@ -91,11 +91,13 @@ sl: site_short_description: Kratek opis v pomoč za identifikacijo vašega strežnika. Kdo ga vzdržuje, komu je namenjen? site_terms: Uporabite svoj lasten pravilnik o zasebnosti ali pustite prazno za privzetega. Lahko ga strukturirate s skladnjo Markdown. site_title: Kako naj imenujejo vaš strežnik poleg njegovega domenskega imena. + status_page_url: URL strani, kjer je moč videti stanje tega strežnika med prekinjenim delovanjem theme: Tema, ki jo vidijo odjavljeni obiskovalci in novi uporabniki. thumbnail: Slika v razmerju stranic približno 2:1, prikazana vzdolž podatkov o vašem strežniku. timeline_preview: Odjavljeni obiskovalci bodo lahko brskali po najnovejših javnih objavah, ki so na voljo na strežniku. trendable_by_default: Preskočite ročni pregled vsebine v trendu. Posamezne elemente še vedno lahko odstranite iz trenda post festum. trends: Trendi prikažejo, katere objave, ključniki in novice privlačijo zanimanje na vašem strežniku. + trends_as_landing_page: Odjavljenim uporabnikom in obiskovalcem namesto opisa tega strežnika pokažite vsebine v trendu. Trendi morajo biti omogočeni. form_challenge: current_password: Vstopate v varovano območje imports: @@ -251,11 +253,13 @@ sl: site_short_description: Opis strežnika site_terms: Pravilnik o zasebnosti site_title: Ime strežnika + status_page_url: URL strani stanja theme: Privzeta tema thumbnail: Sličica strežnika timeline_preview: Omogoči neoverjen dostop do javnih časovnic trendable_by_default: Dovoli trende brez predhodnega pregleda trends: Omogoči trende + trends_as_landing_page: Uporabi trende za pristopno stran interactions: must_be_follower: Blokiraj obvestila nesledilcev must_be_following: Blokiraj obvestila oseb, ki jim ne sledite diff --git a/config/locales/simple_form.sq.yml b/config/locales/simple_form.sq.yml index 3c86da496..a11037fa9 100644 --- a/config/locales/simple_form.sq.yml +++ b/config/locales/simple_form.sq.yml @@ -91,11 +91,13 @@ sq: site_short_description: Një përshkrim i shkurtër për të ndihmuar identifikimin unik të shërbyesit tuaj. Kush e mban në punë, për kë është? site_terms: Përdorni rregullat tuaja të privatësisë, ose lëreni të zbrazët që të përdoren ato parazgjedhje. Mund të hartohet me sintaksë Markdown. site_title: Si mund t’i referohen njerëzit shërbyesit tuaj, përveç emrit të tij të përkatësisë. + status_page_url: URL e faqe ku njerëzit mund të shohin gjendjen e këtij shërbyesi, gjatë një ndërprerje të funksionimit theme: Temë që shohin vizitorët që kanë bërë daljen dhe përdorues të rinj. thumbnail: Një figurë afërsisht 2:1 e shfaqur tok me hollësi mbi shërbyesin tuaj. timeline_preview: Vizitorët që kanë bërë daljen do të jenë në gjendje të shfletojnë postimet më të freskëta publike të passhme në shërbyes. trendable_by_default: Anashkalo shqyrtim dorazi lënde në modë. Gjëra individuale prapë mund të hiqen nga lëndë në modë pas publikimi. trends: Gjërat në modë shfaqin cilat postime, hashtagë dhe histori të reja po tërheqin vëmendjen në shërbyesin tuaj. + trends_as_landing_page: Shfaq lëndë në modë për përdorues jo të futur në llogari dhe për vizitorë, në vend se të një përshkrimi të këtij shërbyesi. Lyp që të jenë të aktivizuara gjërat në modë. form_challenge: current_password: Po hyni në një zonë të sigurt imports: @@ -251,11 +253,13 @@ sq: site_short_description: Përshkrim shërbyesi site_terms: Rregulla Privatësie site_title: Emër shërbyesi + status_page_url: URL faqeje gjendjesh theme: Temë parazgjedhje thumbnail: Miniaturë shërbyesi timeline_preview: Lejo hyrje pa mirëfilltësim te rrjedha kohore publike trendable_by_default: Lejoni gjëra në modë pa shqyrtim paraprak trends: Aktivizo gjëra në modë + trends_as_landing_page: Përdor gjërat në modë si faqe hyrëse interactions: must_be_follower: Blloko njoftime nga jo-ndjekës must_be_following: Blloko njoftime nga persona që s’i ndiqni diff --git a/config/locales/simple_form.th.yml b/config/locales/simple_form.th.yml index d7b306bd2..ed111ecc9 100644 --- a/config/locales/simple_form.th.yml +++ b/config/locales/simple_form.th.yml @@ -91,11 +91,13 @@ th: site_short_description: คำอธิบายแบบสั้นเพื่อช่วยระบุเซิร์ฟเวอร์ของคุณอย่างไม่ซ้ำกัน ผู้ดำเนินการเซิร์ฟเวอร์ เซิร์ฟเวอร์สำหรับใคร? site_terms: ใช้นโยบายความเป็นส่วนตัวของคุณเองหรือเว้นว่างไว้เพื่อใช้ค่าเริ่มต้น สามารถจัดโครงสร้างด้วยไวยากรณ์ Markdown site_title: วิธีที่ผู้คนอาจอ้างอิงถึงเซิร์ฟเวอร์ของคุณนอกเหนือจากชื่อโดเมนของเซิร์ฟเวอร์ + status_page_url: URL ของหน้าที่ผู้คนสามารถเห็นสถานะของเซิร์ฟเวอร์นี้ในระหว่างการหยุดทำงาน theme: ชุดรูปแบบที่ผู้เยี่ยมชมที่ออกจากระบบและผู้ใช้ใหม่เห็น thumbnail: แสดงภาพ 2:1 โดยประมาณควบคู่ไปกับข้อมูลเซิร์ฟเวอร์ของคุณ timeline_preview: ผู้เยี่ยมชมที่ออกจากระบบจะสามารถเรียกดูโพสต์สาธารณะล่าสุดที่มีในเซิร์ฟเวอร์ trendable_by_default: ข้ามการตรวจทานเนื้อหาที่กำลังนิยมด้วยตนเอง ยังคงสามารถเอารายการแต่ละรายการออกจากแนวโน้มได้หลังเกิดเหตุ trends: แนวโน้มแสดงว่าโพสต์, แฮชแท็ก และเรื่องข่าวใดกำลังได้รับความสนใจในเซิร์ฟเวอร์ของคุณ + trends_as_landing_page: แสดงเนื้อหาที่กำลังนิยมแก่ผู้ใช้และผู้เยี่ยมชมที่ออกจากระบบแทนที่จะเป็นคำอธิบายของเซิร์ฟเวอร์นี้ ต้องมีการเปิดใช้งานแนวโน้ม form_challenge: current_password: คุณกำลังเข้าสู่พื้นที่ปลอดภัย imports: @@ -179,7 +181,7 @@ th: fields: ข้อมูลอภิพันธุ์โปรไฟล์ header: ส่วนหัว honeypot: "%{label} (ไม่ต้องกรอก)" - inbox_url: URL กล่องขาเข้าแบบรีเลย์ + inbox_url: URL ของกล่องขาเข้าของรีเลย์ irreversible: ลบแทนที่จะซ่อน locale: ภาษาส่วนติดต่อ locked: ต้องมีคำขอติดตาม @@ -251,11 +253,13 @@ th: site_short_description: คำอธิบายเซิร์ฟเวอร์ site_terms: นโยบายความเป็นส่วนตัว site_title: ชื่อเซิร์ฟเวอร์ + status_page_url: URL ของหน้าสถานะ theme: ชุดรูปแบบเริ่มต้น thumbnail: ภาพขนาดย่อเซิร์ฟเวอร์ timeline_preview: อนุญาตการเข้าถึงเส้นเวลาสาธารณะที่ไม่ได้รับรองความถูกต้อง trendable_by_default: อนุญาตแนวโน้มโดยไม่มีการตรวจทานล่วงหน้า trends: เปิดใช้งานแนวโน้ม + trends_as_landing_page: ใช้แนวโน้มเป็นหน้าเริ่มต้น interactions: must_be_follower: ปิดกั้นการแจ้งเตือนจากผู้ที่ไม่ใช่ผู้ติดตาม must_be_following: ปิดกั้นการแจ้งเตือนจากผู้คนที่คุณไม่ได้ติดตาม diff --git a/config/locales/simple_form.tr.yml b/config/locales/simple_form.tr.yml index 5f5cdbb39..3e0e7470d 100644 --- a/config/locales/simple_form.tr.yml +++ b/config/locales/simple_form.tr.yml @@ -91,11 +91,13 @@ tr: site_short_description: Sunucunuzu tekil olarak tanımlamaya yardımcı olacak kısa tanım. Kim işletiyor, kimin için? site_terms: Kendi gizlilik politikanızı kullanın veya varsayılanı kullanmak için boş bırakın. Markdown sözdizimiyle biçimlendirilebilir. site_title: İnsanlar sunucunuzu alan adı dışında nasıl isimlendirmeli. + status_page_url: İnsanların bir kesinti halinde sunucunun durumunu görebilecekleri bir sayfanın URL'si theme: Giriş yapmamış ziyaretçilerin ve yeni kullanıcıların gördüğü tema. thumbnail: Sunucu bilginizin yanında gösterilen yaklaşık 2:1'lik görüntü. timeline_preview: Giriş yapmamış ziyaretçiler, sunucuda mevcut olan en son genel gönderileri tarayabilecekler. trendable_by_default: Öne çıkan içeriğin elle incelenmesini atla. Tekil öğeler sonrada öne çıkanlardan kaldırılabilir. trends: Öne çıkanlar, sunucunuzda ilgi toplayan gönderileri, etiketleri ve haber yazılarını gösterir. + trends_as_landing_page: Giriş yapmış kullanıcılar ve ziyaretçilere sunucunun açıklması yerine öne çıkan içeriği göster. Öne çıkanların etkin olması gerekir. form_challenge: current_password: Güvenli bir bölgeye giriyorsunuz imports: @@ -251,11 +253,13 @@ tr: site_short_description: Sunucu açıklaması site_terms: Gizlilik Politikası site_title: Sunucu adı + status_page_url: Durum sayfası URL'si theme: Öntanımlı tema thumbnail: Sunucu küçük resmi timeline_preview: Genel zaman çizelgelerine yetkisiz erişime izin ver trendable_by_default: Ön incelemesiz öne çıkanlara izin ver trends: Öne çıkanları etkinleştir + trends_as_landing_page: Giriş sayfası olarak öne çıkanları kullan interactions: must_be_follower: Takipçim olmayan kişilerden gelen bildirimleri engelle must_be_following: Takip etmediğim kişilerden gelen bildirimleri engelle diff --git a/config/locales/simple_form.uk.yml b/config/locales/simple_form.uk.yml index a14c631c2..be4d4b764 100644 --- a/config/locales/simple_form.uk.yml +++ b/config/locales/simple_form.uk.yml @@ -91,11 +91,13 @@ uk: site_short_description: Короткий опис, щоб допомогти однозначно ідентифікувати ваш сервер. Хто ним керує, для кого він потрібен? site_terms: Використовуйте власну політику приватності або залиште поле порожнім, щоб використовувати усталене значення. Може бути структуровано за допомогою синтаксису Markdown. site_title: Як люди можуть посилатися на ваш сервер, окрім його доменного імені. + status_page_url: URL сторінки, на якій люди можуть бачити статус цього сервера під час його збою в роботі theme: Тема, яку бачать відвідувачі, що вийшли з системи, та нові користувачі. thumbnail: Зображення приблизно 2:1, що показується поряд з відомостями про ваш сервер. timeline_preview: Зареєстровані відвідувачі зможуть переглядати останні публічні дописи, доступні на сервері. trendable_by_default: Пропустити ручний огляд популярних матеріалів. Індивідуальні елементи все ще можна вилучити з популярних постфактум. trends: Популярні показують, які дописи, хештеґи та новини набувають популярності на вашому сервері. + trends_as_landing_page: Показувати популярні матеріали для зареєстрованих користувачів і відвідувачів замість опису цього сервера. Для активації потрібні тренди. form_challenge: current_password: Ви входите до безпечної зони imports: @@ -251,11 +253,13 @@ uk: site_short_description: Опис сервера site_terms: Політика приватності site_title: Назва сервера + status_page_url: URL сторінки статусу theme: Стандартна тема thumbnail: Мініатюра сервера timeline_preview: Дозволити неавтентифікований доступ до публічних стрічок trendable_by_default: Дозволити популярне без попереднього огляду trends: Увімкнути популярні + trends_as_landing_page: Використовуйте тенденції як цільову сторінку interactions: must_be_follower: Блокувати сповіщення від непідписаних людей must_be_following: Блокувати сповіщення від людей, на яких ви не підписані diff --git a/config/locales/simple_form.vi.yml b/config/locales/simple_form.vi.yml index fb2ca90fd..b5da24dd1 100644 --- a/config/locales/simple_form.vi.yml +++ b/config/locales/simple_form.vi.yml @@ -91,11 +91,13 @@ vi: site_short_description: Mô tả ngắn gọn để giúp nhận định máy chủ của bạn. Ai đang điều hành nó, nó là cho ai? site_terms: Sử dụng chính sách bảo mật của riêng bạn hoặc để trống để sử dụng mặc định. Có thể soạn bằng cú pháp Markdown. site_title: Cách mọi người có thể tham chiếu đến máy chủ của bạn ngoài tên miền của nó. + status_page_url: URL của trang nơi mọi người có thể xem trạng thái của máy chủ này khi ngừng hoạt động theme: Chủ đề mà khách truy cập đăng xuất và người mới nhìn thấy. thumbnail: 'Một hình ảnh tỉ lệ 2: 1 được hiển thị cùng với thông tin máy chủ của bạn.' timeline_preview: Khách truy cập đã đăng xuất sẽ có thể xem các tút công khai gần đây nhất trên máy chủ. trendable_by_default: Bỏ qua việc duyệt thủ công nội dung thịnh hành. Các mục riêng lẻ vẫn có thể bị xóa khỏi xu hướng sau này. trends: Hiển thị những tút, hashtag và tin tức đang được thảo luận nhiều trên máy chủ của bạn. + trends_as_landing_page: Hiển thị nội dung thịnh hành cho người dùng đã đăng xuất và khách truy cập thay vì mô tả về máy chủ này. Yêu cầu xu hướng được kích hoạt. form_challenge: current_password: Biểu mẫu này an toàn imports: @@ -251,11 +253,13 @@ vi: site_short_description: Mô tả máy chủ site_terms: Chính sách bảo mật site_title: Tên máy chủ + status_page_url: URL trang trạng thái theme: Chủ đề mặc định thumbnail: Hình thu nhỏ của máy chủ timeline_preview: Cho phép truy cập vào dòng thời gian công khai trendable_by_default: Cho phép thịnh hành mà không cần duyệt trước trends: Bật thịnh hành + trends_as_landing_page: Dùng trang thịnh hành làm trang chào mừng interactions: must_be_follower: Chặn thông báo từ những người không theo dõi bạn must_be_following: Chặn thông báo từ những người bạn không theo dõi diff --git a/config/locales/simple_form.zh-CN.yml b/config/locales/simple_form.zh-CN.yml index 4ac81354d..18ba22921 100644 --- a/config/locales/simple_form.zh-CN.yml +++ b/config/locales/simple_form.zh-CN.yml @@ -91,11 +91,13 @@ zh-CN: site_short_description: 有助于区分你的服务器独特性的简短描述。谁在管理?供谁使用? site_terms: 使用你自己的隐私政策或留空以使用默认版。可以使用 Markdown 语法。 site_title: 除了域名,人们还可以如何指代你的服务器。 + status_page_url: 配置一个网址,当服务中断时,人们可以通过该网址查看服务器的状态。 theme: 给未登录访客和新用户使用的主题。 thumbnail: 与服务器信息一并展示的约 2:1 比例的图像。 timeline_preview: 未登录访客将能够浏览服务器上最新的公共嘟文。 trendable_by_default: 跳过对热门内容的手工审核。个别项目仍可在之后从趋势中删除。 trends: 趋势中会显示正在你服务器上受到关注的嘟文、标签和新闻故事。 + trends_as_landing_page: 向注销的用户和访问者显示趋势内容,而不是对该服务器的描述,需要启用趋势。 form_challenge: current_password: 你正在进入安全区域 imports: @@ -251,11 +253,13 @@ zh-CN: site_short_description: 本站简介 site_terms: 隐私政策 site_title: 本站名称 + status_page_url: 静态页面地址 theme: 默认主题 thumbnail: 本站缩略图 timeline_preview: 时间轴预览 trendable_by_default: 允许在未审核的情况下将话题置为热门 trends: 启用趋势 + trends_as_landing_page: 使用趋势作为登陆页面 interactions: must_be_follower: 屏蔽来自未关注我的用户的通知 must_be_following: 屏蔽来自我未关注的用户的通知 diff --git a/config/locales/simple_form.zh-TW.yml b/config/locales/simple_form.zh-TW.yml index a4036e91b..855c40242 100644 --- a/config/locales/simple_form.zh-TW.yml +++ b/config/locales/simple_form.zh-TW.yml @@ -91,11 +91,13 @@ zh-TW: site_short_description: 一段有助於辨別您伺服器的簡短說明。例如:誰運行該伺服器、該伺服器是提供給哪些人群? site_terms: 使用您自己的隱私權政策,或者保留空白以使用預設值。可由 Markdown 語法撰寫。 site_title: 除了網域外,其他人該如何指稱您的伺服器。 + status_page_url: 當服務中斷時,可以提供使用者了解伺服器資訊頁面之 URL theme: 未登入之訪客或新使用者所見之佈景主題。 thumbnail: 大約 2:1 圖片會顯示於您伺服器資訊之旁。 timeline_preview: 未登入之訪客能夠瀏覽此伺服器上最新的公開嘟文。 trendable_by_default: 跳過手動審核熱門內容。仍能在登上熱門趨勢後移除個別內容。 trends: 熱門趨勢將顯示於您伺服器上正在吸引大量注意力的嘟文、主題標籤、或者新聞。 + trends_as_landing_page: 顯示熱門趨勢內容給未登入使用者及訪客而不是關於此伺服器之描述。需要啟用熱門趨勢。 form_challenge: current_password: 您正要進入安全區域 imports: @@ -251,11 +253,13 @@ zh-TW: site_short_description: 伺服器描述 site_terms: 隱私權政策 site_title: 伺服器名稱 + status_page_url: 狀態頁面 URL theme: 預設佈景主題 thumbnail: 伺服器縮圖 timeline_preview: 允許未登入使用者瀏覽公開時間軸 trendable_by_default: 允許熱門趨勢直接顯示,不需經過審核 trends: 啟用熱門趨勢 + trends_as_landing_page: 以熱門趨勢作為登陸頁面 interactions: must_be_follower: 封鎖非跟隨者的通知 must_be_following: 封鎖您未跟隨之使用者的通知 diff --git a/config/locales/sk.yml b/config/locales/sk.yml index f5042f92b..d450fa08f 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -351,6 +351,7 @@ sk: no_file: Nevybraný žiaden súbor export_domain_blocks: import: + existing_relationships_warning: Existujúce vzťahy nasledovania title: Nahraj zákazy domén new: title: Nahraj zákazy domén @@ -376,6 +377,7 @@ sk: policies: reject_media: Zamietni médiá reject_reports: Zamietni hlásenia + silence: Obmedzená suspend: Vylúč policy: Zásady reason: Verejné odôvodnenie @@ -472,6 +474,7 @@ sk: delete: Vymaž placeholder: Opíš aké opatrenia boli urobené, alebo akékoľvek iné súvisiace aktualizácie… title: Poznámky + remote_user_placeholder: vzdialený užívateľ z %{instance} reopen: Znovu otvor report report: 'Nahlásiť #%{id}' reported_account: Nahlásený účet diff --git a/config/locales/th.yml b/config/locales/th.yml index 0135574ff..8081559db 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -71,7 +71,7 @@ th: followers: ผู้ติดตาม follows: การติดตาม header: ส่วนหัว - inbox_url: URL กล่องขาเข้า + inbox_url: URL ของกล่องขาเข้า invite_request_text: เหตุผลสำหรับการเข้าร่วม invited_by: เชิญโดย ip: IP @@ -135,7 +135,7 @@ th: password_and_2fa: รหัสผ่านและ 2FA sensitive: บังคับให้ละเอียดอ่อน sensitized: ทำเครื่องหมายว่าละเอียดอ่อนแล้ว - shared_inbox_url: URL กล่องขาเข้าที่แบ่งปัน + shared_inbox_url: URL ของกล่องขาเข้าที่แบ่งปัน show: created_reports: รายงานที่สร้าง targeted_reports: รายงานโดยผู้อื่น @@ -543,11 +543,11 @@ th: enable: เปิดใช้งาน enable_hint: เมื่อเปิดใช้งาน เซิร์ฟเวอร์ของคุณจะบอกรับโพสต์สาธารณะทั้งหมดจากรีเลย์นี้ และจะเริ่มส่งโพสต์สาธารณะของเซิร์ฟเวอร์นี้ไปยังรีเลย์ enabled: เปิดใช้งานอยู่ - inbox_url: URL รีเลย์ + inbox_url: URL ของรีเลย์ pending: กำลังรอการอนุมัติของรีเลย์ save_and_enable: บันทึกแล้วเปิดใช้งาน - setup: ตั้งค่าการเชื่อมต่อแบบรีเลย์ - signatures_not_enabled: รีเลย์จะทำงานไม่ถูกต้องขณะที่มีการเปิดใช้งานโหมดปลอดภัยหรือโหมดการติดต่อกับภายนอกแบบจำกัด + setup: ตั้งค่าการเชื่อมต่อรีเลย์ + signatures_not_enabled: รีเลย์อาจทำงานไม่ถูกต้องขณะที่มีการเปิดใช้งานโหมดปลอดภัยหรือโหมดการติดต่อกับภายนอกแบบจำกัด status: สถานะ title: รีเลย์ report_notes: diff --git a/lib/active_record/database_tasks_extensions.rb b/lib/active_record/database_tasks_extensions.rb index e274f476d..d52186113 100644 --- a/lib/active_record/database_tasks_extensions.rb +++ b/lib/active_record/database_tasks_extensions.rb @@ -11,7 +11,7 @@ module ActiveRecord ActiveRecord::Base.establish_connection(db_config) Mastodon::Snowflake.define_timestamp_id - original_load_schema.bind(self).call(db_config, *args) + original_load_schema.bind_call(self, db_config, *args) Mastodon::Snowflake.ensure_id_sequences_exist end diff --git a/lib/mastodon/premailer_webpack_strategy.rb b/lib/mastodon/premailer_webpack_strategy.rb index 56ef09c1a..4356b7285 100644 --- a/lib/mastodon/premailer_webpack_strategy.rb +++ b/lib/mastodon/premailer_webpack_strategy.rb @@ -13,7 +13,7 @@ module PremailerWebpackStrategy HTTP.get(url).to_s else url = url[1..-1] if url.start_with?('/') - File.read(Rails.root.join('public', url)) + File.read(Rails.public_path.join(url)) end css.gsub(/url\(\//, "url(#{asset_host}/") diff --git a/lib/mastodon/statuses_cli.rb b/lib/mastodon/statuses_cli.rb index d4c2e6cf2..baab83e29 100644 --- a/lib/mastodon/statuses_cli.rb +++ b/lib/mastodon/statuses_cli.rb @@ -93,7 +93,7 @@ module Mastodon c.table_name = 'statuses_to_be_deleted' end - Object.const_set('StatusToBeDeleted', klass) + Object.const_set(:StatusToBeDeleted, klass) scope = StatusToBeDeleted processed = 0 @@ -175,7 +175,7 @@ module Mastodon c.table_name = 'conversations_to_be_deleted' end - Object.const_set('ConversationsToBeDeleted', klass) + Object.const_set(:ConversationsToBeDeleted, klass) scope = ConversationsToBeDeleted processed = 0 diff --git a/lib/rails/engine_extensions.rb b/lib/rails/engine_extensions.rb index 4848b15f2..4e3767db9 100644 --- a/lib/rails/engine_extensions.rb +++ b/lib/rails/engine_extensions.rb @@ -2,7 +2,7 @@ module Rails module EngineExtensions # Rewrite task loading code to filter digitalocean.rake task def run_tasks_blocks(app) - Railtie.instance_method(:run_tasks_blocks).bind(self).call(app) + Railtie.instance_method(:run_tasks_blocks).bind_call(self, app) paths["lib/tasks"].existent.reject { |ext| ext.end_with?('digitalocean.rake') }.sort.each { |ext| load(ext) } end end diff --git a/lib/tasks/assets.rake b/lib/tasks/assets.rake index 5931aae61..e1102af33 100644 --- a/lib/tasks/assets.rake +++ b/lib/tasks/assets.rake @@ -14,7 +14,7 @@ namespace :assets do File.write(dest, html) end - render_static_page 'errors/500', layout: 'error', dest: Rails.root.join('public', 'assets', '500.html') + render_static_page 'errors/500', layout: 'error', dest: Rails.public_path.join('assets', '500.html') end end diff --git a/lib/tasks/branding.rake b/lib/tasks/branding.rake index 2eec7c9e1..d1c1c9ded 100644 --- a/lib/tasks/branding.rake +++ b/lib/tasks/branding.rake @@ -54,7 +54,7 @@ namespace :branding do rsvg_convert.run(size: size, input: favicon_source, output: output_path) end - convert.run(input: favicons, output: Rails.root.join('public', 'favicon.ico')) + convert.run(input: favicons, output: Rails.public_path.join('favicon.ico')) apple_icon_sizes.each do |size| rsvg_convert.run(size: size, input: app_icon_source, output: output_dest.join("apple-touch-icon-#{size}x#{size}.png")) @@ -69,7 +69,7 @@ namespace :branding do task generate_app_badge: :environment do rsvg_convert = Terrapin::CommandLine.new('rsvg-convert', '--stylesheet :stylesheet -w :size -h :size --keep-aspect-ratio :input -o :output') badge_source = Rails.root.join('app', 'javascript', 'images', 'logo-symbol-icon.svg') - output_dest = Rails.root.join('public') + output_dest = Rails.public_path stylesheet = Rails.root.join('lib', 'assets', 'wordmark.light.css') rsvg_convert.run(stylesheet: stylesheet, input: badge_source, size: 192, output: output_dest.join('badge.png')) diff --git a/lib/tasks/emojis.rake b/lib/tasks/emojis.rake index 473aee9cc..02d772b48 100644 --- a/lib/tasks/emojis.rake +++ b/lib/tasks/emojis.rake @@ -1,8 +1,8 @@ # frozen_string_literal: true def gen_border(codepoint, color) - input = Rails.root.join('public', 'emoji', "#{codepoint}.svg") - dest = Rails.root.join('public', 'emoji', "#{codepoint}_border.svg") + input = Rails.public_path.join('emoji', "#{codepoint}.svg") + dest = Rails.public_path.join('emoji', "#{codepoint}_border.svg") doc = File.open(input) { |f| Nokogiri::XML(f) } svg = doc.at_css('svg') if svg.key?('viewBox') @@ -69,7 +69,7 @@ namespace :emojis do end end - existence_maps = grouped_codes.map { |c| c.index_with { |cc| File.exist?(Rails.root.join('public', 'emoji', "#{codepoints_to_filename(cc)}.svg")) } } + existence_maps = grouped_codes.map { |c| c.index_with { |cc| File.exist?(Rails.public_path.join('emoji', "#{codepoints_to_filename(cc)}.svg")) } } map = {} existence_maps.each do |group| diff --git a/lib/tasks/mastodon.rake b/lib/tasks/mastodon.rake index 876383d7f..1184e5273 100644 --- a/lib/tasks/mastodon.rake +++ b/lib/tasks/mastodon.rake @@ -463,10 +463,10 @@ namespace :mastodon do prompt.say 'Running `RAILS_ENV=production rails db:setup` ...' prompt.say "\n\n" - if !system(env.transform_values(&:to_s).merge({ 'RAILS_ENV' => 'production', 'SAFETY_ASSURED' => '1' }), 'rails db:setup') - prompt.error 'That failed! Perhaps your configuration is not right' - else + if system(env.transform_values(&:to_s).merge({ 'RAILS_ENV' => 'production', 'SAFETY_ASSURED' => '1' }), 'rails db:setup') prompt.ok 'Done!' + else + prompt.error 'That failed! Perhaps your configuration is not right' end end @@ -479,10 +479,10 @@ namespace :mastodon do prompt.say 'Running `RAILS_ENV=production rails assets:precompile` ...' prompt.say "\n\n" - if !system(env.transform_values(&:to_s).merge({ 'RAILS_ENV' => 'production' }), 'rails assets:precompile') - prompt.error 'That failed! Maybe you need swap space?' - else + if system(env.transform_values(&:to_s).merge({ 'RAILS_ENV' => 'production' }), 'rails assets:precompile') prompt.say 'Done!' + else + prompt.error 'That failed! Maybe you need swap space?' end end end diff --git a/package.json b/package.json index 726e5d2c0..193b908f6 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "atrament": "0.2.4", "arrow-key-navigation": "^1.2.0", "autoprefixer": "^9.8.8", - "axios": "^1.2.6", + "axios": "^1.3.2", "babel-loader": "^8.3.0", "babel-plugin-lodash": "^3.3.4", "babel-plugin-preval": "^5.1.0", @@ -67,7 +67,7 @@ "glob": "^8.1.0", "history": "^4.10.1", "http-link-header": "^1.1.0", - "immutable": "^4.2.2", + "immutable": "^4.2.4", "imports-loader": "^1.2.0", "intl": "^1.2.5", "intl-messageformat": "^2.2.0", @@ -117,7 +117,7 @@ "requestidlecallback": "^0.3.0", "reselect": "^4.1.7", "rimraf": "^4.1.2", - "sass": "^1.57.1", + "sass": "^1.58.0", "sass-loader": "^10.2.0", "stacktrace-js": "^2.0.2", "stringz": "^2.1.0", diff --git a/spec/models/concerns/remotable_spec.rb b/spec/models/concerns/remotable_spec.rb index 9cc849ded..ca2d65d2d 100644 --- a/spec/models/concerns/remotable_spec.rb +++ b/spec/models/concerns/remotable_spec.rb @@ -194,7 +194,9 @@ RSpec.describe Remotable do let(:error_class) { error_class } it 'calls Rails.logger.debug' do - expect(Rails.logger).to receive(:debug).with(/^Error fetching remote #{hoge}: /) + expect(Rails.logger).to receive(:debug) do |&block| + expect(block.call).to match(/^Error fetching remote #{hoge}: /) + end foo.hoge_remote_url = url end end diff --git a/spec/models/session_activation_spec.rb b/spec/models/session_activation_spec.rb index 450dc1399..8db06c622 100644 --- a/spec/models/session_activation_spec.rb +++ b/spec/models/session_activation_spec.rb @@ -118,8 +118,8 @@ RSpec.describe SessionActivation, type: :model do let(:id) { '1' } it 'calls where.destroy_all' do - expect(described_class).to receive_message_chain(:where, :destroy_all) - .with('session_id != ?', id).with(no_args) + expect(described_class).to receive_message_chain(:where, :not, :destroy_all) + .with(session_id: id).with(no_args) described_class.exclusive(id) end diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 02827a388..c197bc007 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -1,5 +1,5 @@ ENV['RAILS_ENV'] ||= 'test' -require File.expand_path('../../config/environment', __FILE__) +require File.expand_path('../config/environment', __dir__) abort("The Rails environment is running in production mode!") if Rails.env.production? diff --git a/spec/workers/scheduler/user_cleanup_scheduler_spec.rb b/spec/workers/scheduler/user_cleanup_scheduler_spec.rb new file mode 100644 index 000000000..da99f10f9 --- /dev/null +++ b/spec/workers/scheduler/user_cleanup_scheduler_spec.rb @@ -0,0 +1,39 @@ +require 'rails_helper' + +describe Scheduler::UserCleanupScheduler do + subject { described_class.new } + + let!(:new_unconfirmed_user) { Fabricate(:user) } + let!(:old_unconfirmed_user) { Fabricate(:user) } + let!(:confirmed_user) { Fabricate(:user) } + let!(:moderation_note) { Fabricate(:account_moderation_note, account: Fabricate(:account), target_account: old_unconfirmed_user.account) } + + describe '#perform' do + before do + # Need to update the already-existing users because their initialization overrides confirmation_sent_at + new_unconfirmed_user.update!(confirmed_at: nil, confirmation_sent_at: Time.now.utc) + old_unconfirmed_user.update!(confirmed_at: nil, confirmation_sent_at: 1.week.ago) + confirmed_user.update!(confirmed_at: 1.day.ago) + end + + it 'deletes the old unconfirmed user' do + expect { subject.perform }.to change { User.exists?(old_unconfirmed_user.id) }.from(true).to(false) + end + + it "deletes the old unconfirmed user's account" do + expect { subject.perform }.to change { Account.exists?(old_unconfirmed_user.account_id) }.from(true).to(false) + end + + it 'does not delete the new unconfirmed user or their account' do + subject.perform + expect(User.exists?(new_unconfirmed_user.id)).to be true + expect(Account.exists?(new_unconfirmed_user.account_id)).to be true + end + + it 'does not delete the confirmed user or their account' do + subject.perform + expect(User.exists?(confirmed_user.id)).to be true + expect(Account.exists?(confirmed_user.account_id)).to be true + end + end +end diff --git a/streaming/index.js b/streaming/index.js index 45ea26bd6..dbebb573e 100644 --- a/streaming/index.js +++ b/streaming/index.js @@ -127,7 +127,6 @@ const startWorker = async (workerId) => { database: process.env.DB_NAME || 'mastodon_development', host: process.env.DB_HOST || pg.defaults.host, port: process.env.DB_PORT || pg.defaults.port, - max: 10, }, production: { @@ -136,20 +135,19 @@ const startWorker = async (workerId) => { database: process.env.DB_NAME || 'mastodon_production', host: process.env.DB_HOST || 'localhost', port: process.env.DB_PORT || 5432, - max: 10, }, }; - if (!!process.env.DB_SSLMODE && process.env.DB_SSLMODE !== 'disable') { - pgConfigs.development.ssl = true; - pgConfigs.production.ssl = true; - } - const app = express(); app.set('trust proxy', process.env.TRUSTED_PROXY_IP ? process.env.TRUSTED_PROXY_IP.split(/(?:\s*,\s*|\s+)/) : 'loopback,uniquelocal'); - const pgPool = new pg.Pool(Object.assign(pgConfigs[env], dbUrlToConfig(process.env.DATABASE_URL))); + const pgPool = new pg.Pool(Object.assign(pgConfigs[env], dbUrlToConfig(process.env.DATABASE_URL), { + max: process.env.DB_POOL || 10, + connectionTimeoutMillis: 15000, + ssl: !!process.env.DB_SSLMODE && process.env.DB_SSLMODE !== 'disable', + })); + const server = http.createServer(app); const redisNamespace = process.env.REDIS_NAMESPACE || null; @@ -858,6 +856,27 @@ const startWorker = async (workerId) => { res.end('OK'); }); + app.get('/metrics', (req, res) => server.getConnections((err, count) => { + res.writeHeader(200, { 'Content-Type': 'application/openmetrics-text; version=1.0.0; charset=utf-8' }); + res.write('# TYPE connected_clients gauge\n'); + res.write('# HELP connected_clients The number of clients connected to the streaming server\n'); + res.write(`connected_clients ${count}.0\n`); + res.write('# TYPE connected_channels gauge\n'); + res.write('# HELP connected_channels The number of Redis channels the streaming server is subscribed to\n'); + res.write(`connected_channels ${Object.keys(subs).length}.0\n`); + res.write('# TYPE pg.pool.total_connections gauge \n'); + res.write('# HELP pg.pool.total_connections The total number of clients existing within the pool\n'); + res.write(`pg.pool.total_connections ${pgPool.totalCount}.0\n`); + res.write('# TYPE pg.pool.idle_connections gauge \n'); + res.write('# HELP pg.pool.idle_connections The number of clients which are not checked out but are currently idle in the pool\n'); + res.write(`pg.pool.idle_connections ${pgPool.idleCount}.0\n`); + res.write('# TYPE pg.pool.waiting_queries gauge \n'); + res.write('# HELP pg.pool.waiting_queries The number of queued requests waiting on a client when all clients are checked out\n'); + res.write(`pg.pool.waiting_queries ${pgPool.waitingCount}.0\n`); + res.write('# EOF\n'); + res.end(); + })); + app.use(authenticationMiddleware); app.use(errorMiddleware); diff --git a/yarn.lock b/yarn.lock index 87619a1b8..e0dcd6eab 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1449,7 +1449,7 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jest/types@^29.3.1", "@jest/types@^29.4.1": +"@jest/types@^29.4.1": version "29.4.1" resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.4.1.tgz#f9f83d0916f50696661da72766132729dcb82ecb" integrity sha512-zbrAXDUOnpJ+FMST2rV7QZOgec8rskg2zv8g2ajeqitp4tvZiyqTCYXANrKsM+ryj5o+LI+ZN2EgU9drrkiwSA== @@ -2545,10 +2545,10 @@ axe-core@^4.6.2: resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.6.3.tgz#fc0db6fdb65cc7a80ccf85286d91d64ababa3ece" integrity sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg== -axios@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.2.6.tgz#eacb6d065baa11bad5959e7ffa0cb6745c65f392" - integrity sha512-rC/7F08XxZwjMV4iuWv+JpD3E0Ksqg9nac4IIg6RwNuF0JTeWoCo/mBNG54+tNhhI11G3/VDRbdDQTs9hGp4pQ== +axios@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.3.2.tgz#7ac517f0fa3ec46e0e636223fd973713a09c72b3" + integrity sha512-1M3O703bYqYuPhbHeya5bnhpYVsDDRyQSabNja04mZtboLNSuZ4YrltestrLXfHgmzua4TpUqRiVKbiQuo2epw== dependencies: follow-redirects "^1.15.0" form-data "^4.0.0" @@ -5749,10 +5749,10 @@ ignore@^5.2.0, ignore@^5.2.1: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== -immutable@^4.0.0, immutable@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.2.2.tgz#2da9ff4384a4330c36d4d1bc88e90f9e0b0ccd16" - integrity sha512-fTMKDwtbvO5tldky9QZ2fMX7slR0mYpY5nbnFWYp0fOzDhHqhgIw9KoYgxLWsoNTS9ZHGauHj18DTyEw6BK3Og== +immutable@^4.0.0, immutable@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.2.4.tgz#83260d50889526b4b531a5e293709a77f7c55a2a" + integrity sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w== import-cwd@^2.0.0: version "2.1.0" @@ -6781,7 +6781,7 @@ jest-snapshot@^29.4.1: pretty-format "^29.4.1" semver "^7.3.5" -jest-util@^29.3.1, jest-util@^29.4.1: +jest-util@^29.4.1: version "29.4.1" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.4.1.tgz#2eeed98ff4563b441b5a656ed1a786e3abc3e4c4" integrity sha512-bQy9FPGxVutgpN4VRc0hk6w7Hx/m6L53QxpDreTZgJd9gfx/AV2MjyPde9tGyZRINAUrSv57p2inGBu2dRLmkQ== @@ -9706,10 +9706,10 @@ sass-loader@^10.2.0: schema-utils "^3.0.0" semver "^7.3.2" -sass@^1.57.1: - version "1.57.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.57.1.tgz#dfafd46eb3ab94817145e8825208ecf7281119b5" - integrity sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw== +sass@^1.58.0: + version "1.58.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.58.0.tgz#ee8aea3ad5ea5c485c26b3096e2df6087d0bb1cc" + integrity sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0"