Merge remote-tracking branch 'parent/main' into upstream-20240109

This commit is contained in:
KMY 2025-01-09 13:20:56 +09:00
commit d35fa72842
333 changed files with 4444 additions and 2541 deletions

View file

@ -61,7 +61,7 @@ body:
value: | value: |
Please at least include those informations: Please at least include those informations:
- Operating system: (eg. Ubuntu 22.04) - Operating system: (eg. Ubuntu 22.04)
- Ruby version: (from `ruby --version`, eg. v3.3.5) - Ruby version: (from `ruby --version`, eg. v3.4.1)
- Node.js version: (from `node --version`, eg. v20.18.0) - Node.js version: (from `node --version`, eg. v20.18.0)
validations: validations:
required: false required: false

View file

@ -24,7 +24,7 @@ permissions:
jobs: jobs:
check-i18n: check-i18n:
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4

View file

@ -50,7 +50,7 @@ jobs:
# Create or update the pull request # Create or update the pull request
- name: Create Pull Request - name: Create Pull Request
uses: peter-evans/create-pull-request@v7.0.5 uses: peter-evans/create-pull-request@v7.0.6
with: with:
commit-message: 'New Crowdin translations' commit-message: 'New Crowdin translations'
title: 'New Crowdin Translations for ${{ github.base_ref || github.ref_name }} (automated)' title: 'New Crowdin Translations for ${{ github.base_ref || github.ref_name }} (automated)'

View file

@ -129,6 +129,7 @@ jobs:
matrix: matrix:
ruby-version: ruby-version:
- '3.2' - '3.2'
- '3.3'
- '.ruby-version' - '.ruby-version'
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -178,7 +179,7 @@ jobs:
test-libvips: test-libvips:
name: Libvips tests name: Libvips tests
runs-on: ubuntu-24.04 runs-on: ubuntu-latest
needs: needs:
- build - build
@ -230,6 +231,7 @@ jobs:
matrix: matrix:
ruby-version: ruby-version:
- '3.2' - '3.2'
- '3.3'
- '.ruby-version' - '.ruby-version'
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
@ -309,6 +311,7 @@ jobs:
matrix: matrix:
ruby-version: ruby-version:
- '3.2' - '3.2'
- '3.3'
- '.ruby-version' - '.ruby-version'
steps: steps:
@ -425,6 +428,7 @@ jobs:
matrix: matrix:
ruby-version: ruby-version:
- '3.2' - '3.2'
- '3.3'
- '.ruby-version' - '.ruby-version'
search-image: search-image:
- docker.elastic.co/elasticsearch/elasticsearch:7.17.13 - docker.elastic.co/elasticsearch/elasticsearch:7.17.13

2
.nvmrc
View file

@ -1 +1 @@
22.12 22.13

View file

@ -29,9 +29,6 @@ Style/IfUnlessModifier:
Style/KeywordArgumentsMerging: Style/KeywordArgumentsMerging:
Enabled: false Enabled: false
Style/MultipleComparison:
Enabled: false
Style/NumericLiterals: Style/NumericLiterals:
AllowedPatterns: AllowedPatterns:
- \d{4}_\d{2}_\d{2}_\d{6} - \d{4}_\d{2}_\d{2}_\d{6}

View file

@ -1 +1 @@
3.3.6 3.4.1

View file

@ -135,7 +135,7 @@ The following changelog entries focus on changes visible to users, administrator
- **Add notifications of severed relationships** (#27511, #29665, #29668, #29670, #29700, #29714, #29712, and #29731 by @ClearlyClaire and @Gargron)\ - **Add notifications of severed relationships** (#27511, #29665, #29668, #29670, #29700, #29714, #29712, and #29731 by @ClearlyClaire and @Gargron)\
Notify local users when they lose relationships as a result of a local moderator blocking a remote account or server, allowing the affected user to retrieve the list of broken relationships.\ Notify local users when they lose relationships as a result of a local moderator blocking a remote account or server, allowing the affected user to retrieve the list of broken relationships.\
Note that this does not notify remote users.\ Note that this does not notify remote users.\
This adds the `severed_relationships` notification type to the REST API and streaming, with a new [`relationship_severance_event` attribute](https://docs.joinmastodon.org/entities/Notification/#relationship_severance_event). This adds the `severed_relationships` notification type to the REST API and streaming, with a new [`event` attribute](https://docs.joinmastodon.org/entities/Notification/#relationship_severance_event).
- **Add hover cards in web UI** (#30754, #30864, #30850, #30879, #30928, #30949, #30948, #30931, and #31300 by @ClearlyClaire, @Gargron, and @renchap)\ - **Add hover cards in web UI** (#30754, #30864, #30850, #30879, #30928, #30949, #30948, #30931, and #31300 by @ClearlyClaire, @Gargron, and @renchap)\
Hovering over an avatar or username will now display a hover card with the first two lines of the user's description and their first two profile fields.\ Hovering over an avatar or username will now display a hover card with the first two lines of the user's description and their first two profile fields.\
This can be disabled in the “Animations and accessibility” section of the preferences. This can be disabled in the “Animations and accessibility” section of the preferences.

View file

@ -10,9 +10,9 @@
ARG TARGETPLATFORM=${TARGETPLATFORM} ARG TARGETPLATFORM=${TARGETPLATFORM}
ARG BUILDPLATFORM=${BUILDPLATFORM} ARG BUILDPLATFORM=${BUILDPLATFORM}
# Ruby image to use for base image, change with [--build-arg RUBY_VERSION="3.3.x"] # Ruby image to use for base image, change with [--build-arg RUBY_VERSION="3.4.x"]
# renovate: datasource=docker depName=docker.io/ruby # renovate: datasource=docker depName=docker.io/ruby
ARG RUBY_VERSION="3.3.6" ARG RUBY_VERSION="3.4.1"
# # Node version to use in base image, change with [--build-arg NODE_MAJOR_VERSION="20"] # # Node version to use in base image, change with [--build-arg NODE_MAJOR_VERSION="20"]
# renovate: datasource=node-version depName=node # renovate: datasource=node-version depName=node
ARG NODE_MAJOR_VERSION="22" ARG NODE_MAJOR_VERSION="22"
@ -20,7 +20,7 @@ ARG NODE_MAJOR_VERSION="22"
ARG DEBIAN_VERSION="bookworm" ARG DEBIAN_VERSION="bookworm"
# Node image to use for base image based on combined variables (ex: 20-bookworm-slim) # Node image to use for base image based on combined variables (ex: 20-bookworm-slim)
FROM docker.io/node:${NODE_MAJOR_VERSION}-${DEBIAN_VERSION}-slim AS node FROM docker.io/node:${NODE_MAJOR_VERSION}-${DEBIAN_VERSION}-slim AS node
# Ruby image to use for base image based on combined variables (ex: 3.3.x-slim-bookworm) # Ruby image to use for base image based on combined variables (ex: 3.4.x-slim-bookworm)
FROM docker.io/ruby:${RUBY_VERSION}-slim-${DEBIAN_VERSION} AS ruby FROM docker.io/ruby:${RUBY_VERSION}-slim-${DEBIAN_VERSION} AS ruby
# Resulting version string is vX.X.X-MASTODON_VERSION_PRERELEASE+MASTODON_VERSION_METADATA # Resulting version string is vX.X.X-MASTODON_VERSION_PRERELEASE+MASTODON_VERSION_METADATA

14
Gemfile
View file

@ -1,12 +1,12 @@
# frozen_string_literal: true # frozen_string_literal: true
source 'https://rubygems.org' source 'https://rubygems.org'
ruby '>= 3.2.0' ruby '>= 3.2.0', '< 3.5.0'
gem 'propshaft' gem 'propshaft'
gem 'puma', '~> 6.3' gem 'puma', '~> 6.3'
gem 'rack', '~> 2.2.7' gem 'rack', '~> 2.2.7'
gem 'rails', '~> 7.2.0' gem 'rails', '~> 8.0'
gem 'thor', '~> 1.2' gem 'thor', '~> 1.2'
gem 'dotenv' gem 'dotenv'
@ -73,13 +73,13 @@ gem 'public_suffix', '~> 6.0'
gem 'pundit', '~> 2.3' gem 'pundit', '~> 2.3'
gem 'rack-attack', '~> 6.6' gem 'rack-attack', '~> 6.6'
gem 'rack-cors', '~> 2.0', require: 'rack/cors' gem 'rack-cors', '~> 2.0', require: 'rack/cors'
gem 'rails-i18n', '~> 7.0' gem 'rails-i18n', '~> 8.0'
gem 'redcarpet', '~> 3.6' gem 'redcarpet', '~> 3.6'
gem 'redis', '~> 4.5', require: ['redis', 'redis/connection/hiredis'] gem 'redis', '~> 4.5', require: ['redis', 'redis/connection/hiredis']
gem 'redis-namespace', '~> 1.10' gem 'redis-namespace', '~> 1.10'
gem 'rqrcode', '~> 2.2' gem 'rqrcode', '~> 2.2'
gem 'ruby-progressbar', '~> 1.13' gem 'ruby-progressbar', '~> 1.13'
gem 'sanitize', '~> 6.0' gem 'sanitize', '~> 7.0'
gem 'scenic', '~> 1.7' gem 'scenic', '~> 1.7'
gem 'sidekiq', '~> 6.5' gem 'sidekiq', '~> 6.5'
gem 'sidekiq-bulk', '~> 0.2.0' gem 'sidekiq-bulk', '~> 0.2.0'
@ -108,7 +108,7 @@ group :opentelemetry do
gem 'opentelemetry-instrumentation-active_model_serializers', '~> 0.21.0', require: false gem 'opentelemetry-instrumentation-active_model_serializers', '~> 0.21.0', require: false
gem 'opentelemetry-instrumentation-concurrent_ruby', '~> 0.21.2', require: false gem 'opentelemetry-instrumentation-concurrent_ruby', '~> 0.21.2', require: false
gem 'opentelemetry-instrumentation-excon', '~> 0.22.0', require: false gem 'opentelemetry-instrumentation-excon', '~> 0.22.0', require: false
gem 'opentelemetry-instrumentation-faraday', '~> 0.24.1', require: false gem 'opentelemetry-instrumentation-faraday', '~> 0.25.0', require: false
gem 'opentelemetry-instrumentation-http', '~> 0.23.2', require: false gem 'opentelemetry-instrumentation-http', '~> 0.23.2', require: false
gem 'opentelemetry-instrumentation-http_client', '~> 0.22.3', require: false gem 'opentelemetry-instrumentation-http_client', '~> 0.22.3', require: false
gem 'opentelemetry-instrumentation-net_http', '~> 0.22.4', require: false gem 'opentelemetry-instrumentation-net_http', '~> 0.22.4', require: false
@ -183,7 +183,7 @@ group :development do
gem 'letter_opener_web', '~> 3.0' gem 'letter_opener_web', '~> 3.0'
# Security analysis CLI tools # Security analysis CLI tools
gem 'brakeman', '~> 6.0', require: false gem 'brakeman', '~> 7.0', require: false
gem 'bundler-audit', '~> 0.9', require: false gem 'bundler-audit', '~> 0.9', require: false
# Linter CLI for HAML files # Linter CLI for HAML files
@ -222,7 +222,7 @@ gem 'concurrent-ruby', require: false
gem 'connection_pool', require: false gem 'connection_pool', require: false
gem 'xorcist', '~> 1.1' gem 'xorcist', '~> 1.1'
gem 'net-http', '~> 0.5.0' gem 'net-http', '~> 0.6.0'
gem 'rubyzip', '~> 2.3' gem 'rubyzip', '~> 2.3'
gem 'hcaptcha', '~> 7.1' gem 'hcaptcha', '~> 7.1'

View file

@ -10,46 +10,45 @@ GIT
GEM GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
actioncable (7.2.2.1) actioncable (8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
nio4r (~> 2.0) nio4r (~> 2.0)
websocket-driver (>= 0.6.1) websocket-driver (>= 0.6.1)
zeitwerk (~> 2.6) zeitwerk (~> 2.6)
actionmailbox (7.2.2.1) actionmailbox (8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
activejob (= 7.2.2.1) activejob (= 8.0.1)
activerecord (= 7.2.2.1) activerecord (= 8.0.1)
activestorage (= 7.2.2.1) activestorage (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
mail (>= 2.8.0) mail (>= 2.8.0)
actionmailer (7.2.2.1) actionmailer (8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
actionview (= 7.2.2.1) actionview (= 8.0.1)
activejob (= 7.2.2.1) activejob (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
mail (>= 2.8.0) mail (>= 2.8.0)
rails-dom-testing (~> 2.2) rails-dom-testing (~> 2.2)
actionpack (7.2.2.1) actionpack (8.0.1)
actionview (= 7.2.2.1) actionview (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
nokogiri (>= 1.8.5) nokogiri (>= 1.8.5)
racc rack (>= 2.2.4)
rack (>= 2.2.4, < 3.2)
rack-session (>= 1.0.1) rack-session (>= 1.0.1)
rack-test (>= 0.6.3) rack-test (>= 0.6.3)
rails-dom-testing (~> 2.2) rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6) rails-html-sanitizer (~> 1.6)
useragent (~> 0.16) useragent (~> 0.16)
actiontext (7.2.2.1) actiontext (8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
activerecord (= 7.2.2.1) activerecord (= 8.0.1)
activestorage (= 7.2.2.1) activestorage (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
globalid (>= 0.6.0) globalid (>= 0.6.0)
nokogiri (>= 1.8.5) nokogiri (>= 1.8.5)
actionview (7.2.2.1) actionview (8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
builder (~> 3.1) builder (~> 3.1)
erubi (~> 1.11) erubi (~> 1.11)
rails-dom-testing (~> 2.2) rails-dom-testing (~> 2.2)
@ -59,22 +58,22 @@ GEM
activemodel (>= 4.1) activemodel (>= 4.1)
case_transform (>= 0.2) case_transform (>= 0.2)
jsonapi-renderer (>= 0.1.1.beta1, < 0.3) jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
activejob (7.2.2.1) activejob (8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
globalid (>= 0.3.6) globalid (>= 0.3.6)
activemodel (7.2.2.1) activemodel (8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
activerecord (7.2.2.1) activerecord (8.0.1)
activemodel (= 7.2.2.1) activemodel (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
timeout (>= 0.4.0) timeout (>= 0.4.0)
activestorage (7.2.2.1) activestorage (8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
activejob (= 7.2.2.1) activejob (= 8.0.1)
activerecord (= 7.2.2.1) activerecord (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
marcel (~> 1.0) marcel (~> 1.0)
activesupport (7.2.2.1) activesupport (8.0.1)
base64 base64
benchmark (>= 0.3) benchmark (>= 0.3)
bigdecimal bigdecimal
@ -86,6 +85,7 @@ GEM
minitest (>= 5.1) minitest (>= 5.1)
securerandom (>= 0.3) securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5) tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.7) addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0) public_suffix (>= 2.0.2, < 7.0)
aes_key_wrap (1.1.0) aes_key_wrap (1.1.0)
@ -94,8 +94,8 @@ GEM
ast (2.4.2) ast (2.4.2)
attr_required (1.0.2) attr_required (1.0.2)
aws-eventstream (1.3.0) aws-eventstream (1.3.0)
aws-partitions (1.1025.0) aws-partitions (1.1032.0)
aws-sdk-core (3.214.0) aws-sdk-core (3.214.1)
aws-eventstream (~> 1, >= 1.3.0) aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.992.0) aws-partitions (~> 1, >= 1.992.0)
aws-sigv4 (~> 1.9) aws-sigv4 (~> 1.9)
@ -103,7 +103,7 @@ GEM
aws-sdk-kms (1.96.0) aws-sdk-kms (1.96.0)
aws-sdk-core (~> 3, >= 3.210.0) aws-sdk-core (~> 3, >= 3.210.0)
aws-sigv4 (~> 1.5) aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.176.1) aws-sdk-s3 (1.177.0)
aws-sdk-core (~> 3, >= 3.210.0) aws-sdk-core (~> 3, >= 3.210.0)
aws-sdk-kms (~> 1) aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5) aws-sigv4 (~> 1.5)
@ -119,14 +119,14 @@ GEM
erubi (>= 1.0.0) erubi (>= 1.0.0)
rack (>= 0.9.0) rack (>= 0.9.0)
rouge (>= 1.0.0) rouge (>= 1.0.0)
bigdecimal (3.1.8) bigdecimal (3.1.9)
bindata (2.5.0) bindata (2.5.0)
binding_of_caller (1.0.1) binding_of_caller (1.0.1)
debug_inspector (>= 1.2.0) debug_inspector (>= 1.2.0)
blurhash (0.1.8) blurhash (0.1.8)
bootsnap (1.18.4) bootsnap (1.18.4)
msgpack (~> 1.2) msgpack (~> 1.2)
brakeman (6.2.2) brakeman (7.0.0)
racc racc
browser (6.2.0) browser (6.2.0)
brpoplpush-redis_script (0.1.3) brpoplpush-redis_script (0.1.3)
@ -160,7 +160,7 @@ GEM
cocoon (1.2.15) cocoon (1.2.15)
color_diff (0.1) color_diff (0.1)
concurrent-ruby (1.3.4) concurrent-ruby (1.3.4)
connection_pool (2.4.1) connection_pool (2.5.0)
cose (1.3.1) cose (1.3.1)
cbor (~> 0.5.9) cbor (~> 0.5.9)
openssl-signature_algorithm (~> 1.0) openssl-signature_algorithm (~> 1.0)
@ -170,7 +170,7 @@ GEM
crass (1.0.6) crass (1.0.6)
css_parser (1.21.0) css_parser (1.21.0)
addressable addressable
csv (3.3.1) csv (3.3.2)
database_cleaner-active_record (2.2.0) database_cleaner-active_record (2.2.0)
activerecord (>= 5.a) activerecord (>= 5.a)
database_cleaner-core (~> 2.0.0) database_cleaner-core (~> 2.0.0)
@ -217,7 +217,7 @@ GEM
htmlentities (~> 4.3.3) htmlentities (~> 4.3.3)
launchy (>= 2.1, < 4.0) launchy (>= 2.1, < 4.0)
mail (~> 2.7) mail (~> 2.7)
erubi (1.13.0) erubi (1.13.1)
et-orbi (1.2.11) et-orbi (1.2.11)
tzinfo tzinfo
excon (0.112.0) excon (0.112.0)
@ -233,16 +233,16 @@ GEM
faraday-net_http (3.4.0) faraday-net_http (3.4.0)
net-http (>= 0.5.0) net-http (>= 0.5.0)
fast_blank (1.0.1) fast_blank (1.0.1)
fastimage (2.3.1) fastimage (2.4.0)
ffi (1.17.0) ffi (1.17.1)
ffi-compiler (1.3.2) ffi-compiler (1.3.2)
ffi (>= 1.15.5) ffi (>= 1.15.5)
rake rake
flatware (2.3.3) flatware (2.3.4)
drb drb
thor (< 2.0) thor (< 2.0)
flatware-rspec (2.3.3) flatware-rspec (2.3.4)
flatware (= 2.3.3) flatware (= 2.3.4)
rspec (>= 3.6) rspec (>= 3.6)
fog-core (2.5.0) fog-core (2.5.0)
builder builder
@ -384,13 +384,13 @@ GEM
llhttp-ffi (0.5.0) llhttp-ffi (0.5.0)
ffi-compiler (~> 1.0) ffi-compiler (~> 1.0)
rake (~> 13.0) rake (~> 13.0)
logger (1.6.3) logger (1.6.4)
lograge (0.14.0) lograge (0.14.0)
actionpack (>= 4) actionpack (>= 4)
activesupport (>= 4) activesupport (>= 4)
railties (>= 4) railties (>= 4)
request_store (~> 1.0) request_store (~> 1.0)
loofah (2.23.1) loofah (2.24.0)
crass (~> 1.0.2) crass (~> 1.0.2)
nokogiri (>= 1.12.0) nokogiri (>= 1.12.0)
mail (2.8.1) mail (2.8.1)
@ -413,9 +413,9 @@ GEM
msgpack (1.7.5) msgpack (1.7.5)
multi_json (1.15.0) multi_json (1.15.0)
mutex_m (0.3.0) mutex_m (0.3.0)
net-http (0.5.0) net-http (0.6.0)
uri uri
net-imap (0.5.2) net-imap (0.5.4)
date date
net-protocol net-protocol
net-ldap (0.19.0) net-ldap (0.19.0)
@ -426,10 +426,10 @@ GEM
net-smtp (0.5.0) net-smtp (0.5.0)
net-protocol net-protocol
nio4r (2.7.4) nio4r (2.7.4)
nokogiri (1.17.2) nokogiri (1.18.1)
mini_portile2 (~> 2.8.2) mini_portile2 (~> 2.8.2)
racc (~> 1.4) racc (~> 1.4)
oj (3.16.8) oj (3.16.9)
bigdecimal (>= 3.0) bigdecimal (>= 3.0)
ostruct (>= 0.2) ostruct (>= 0.2)
omniauth (2.1.2) omniauth (2.1.2)
@ -490,7 +490,7 @@ GEM
opentelemetry-instrumentation-active_job (0.7.8) opentelemetry-instrumentation-active_job (0.7.8)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
opentelemetry-instrumentation-active_model_serializers (0.21.0) opentelemetry-instrumentation-active_model_serializers (0.21.1)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-active_support (>= 0.7.0) opentelemetry-instrumentation-active_support (>= 0.7.0)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
@ -510,7 +510,7 @@ GEM
opentelemetry-instrumentation-excon (0.22.5) opentelemetry-instrumentation-excon (0.22.5)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
opentelemetry-instrumentation-faraday (0.24.8) opentelemetry-instrumentation-faraday (0.25.0)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
opentelemetry-instrumentation-http (0.23.5) opentelemetry-instrumentation-http (0.23.5)
@ -522,7 +522,7 @@ GEM
opentelemetry-instrumentation-net_http (0.22.8) opentelemetry-instrumentation-net_http (0.22.8)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
opentelemetry-instrumentation-pg (0.29.1) opentelemetry-instrumentation-pg (0.29.2)
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
opentelemetry-helpers-sql-obfuscation opentelemetry-helpers-sql-obfuscation
opentelemetry-instrumentation-base (~> 0.22.1) opentelemetry-instrumentation-base (~> 0.22.1)
@ -555,7 +555,8 @@ GEM
opentelemetry-api (~> 1.0) opentelemetry-api (~> 1.0)
orm_adapter (0.5.0) orm_adapter (0.5.0)
ostruct (0.6.1) ostruct (0.6.1)
ox (2.14.18) ox (2.14.19)
bigdecimal (>= 3.0)
parallel (1.26.3) parallel (1.26.3)
parser (3.3.6.0) parser (3.3.6.0)
ast (~> 2.4.1) ast (~> 2.4.1)
@ -607,25 +608,25 @@ GEM
rack rack
rack-session (1.0.2) rack-session (1.0.2)
rack (< 3) rack (< 3)
rack-test (2.1.0) rack-test (2.2.0)
rack (>= 1.3) rack (>= 1.3)
rackup (1.0.1) rackup (1.0.1)
rack (< 3) rack (< 3)
webrick webrick
rails (7.2.2.1) rails (8.0.1)
actioncable (= 7.2.2.1) actioncable (= 8.0.1)
actionmailbox (= 7.2.2.1) actionmailbox (= 8.0.1)
actionmailer (= 7.2.2.1) actionmailer (= 8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
actiontext (= 7.2.2.1) actiontext (= 8.0.1)
actionview (= 7.2.2.1) actionview (= 8.0.1)
activejob (= 7.2.2.1) activejob (= 8.0.1)
activemodel (= 7.2.2.1) activemodel (= 8.0.1)
activerecord (= 7.2.2.1) activerecord (= 8.0.1)
activestorage (= 7.2.2.1) activestorage (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
bundler (>= 1.15.0) bundler (>= 1.15.0)
railties (= 7.2.2.1) railties (= 8.0.1)
rails-controller-testing (1.0.5) rails-controller-testing (1.0.5)
actionpack (>= 5.0.1.rc1) actionpack (>= 5.0.1.rc1)
actionview (>= 5.0.1.rc1) actionview (>= 5.0.1.rc1)
@ -637,12 +638,12 @@ GEM
rails-html-sanitizer (1.6.2) rails-html-sanitizer (1.6.2)
loofah (~> 2.21) loofah (~> 2.21)
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0) nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
rails-i18n (7.0.10) rails-i18n (8.0.1)
i18n (>= 0.7, < 2) i18n (>= 0.7, < 2)
railties (>= 6.0.0, < 8) railties (>= 8.0.0, < 9)
railties (7.2.2.1) railties (8.0.1)
actionpack (= 7.2.2.1) actionpack (= 8.0.1)
activesupport (= 7.2.2.1) activesupport (= 8.0.1)
irb (~> 1.13) irb (~> 1.13)
rackup (>= 1.0.0) rackup (>= 1.0.0)
rake (>= 12.2) rake (>= 12.2)
@ -664,7 +665,7 @@ GEM
redis (>= 4) redis (>= 4)
redlock (1.3.2) redlock (1.3.2)
redis (>= 3.0.0, < 6.0) redis (>= 3.0.0, < 6.0)
regexp_parser (2.9.3) regexp_parser (2.10.0)
reline (0.6.0) reline (0.6.0)
io-console (~> 0.5) io-console (~> 0.5)
request_store (1.7.0) request_store (1.7.0)
@ -722,10 +723,10 @@ GEM
parser (>= 3.3.1.0) parser (>= 3.3.1.0)
rubocop-capybara (2.21.0) rubocop-capybara (2.21.0)
rubocop (~> 1.41) rubocop (~> 1.41)
rubocop-performance (1.23.0) rubocop-performance (1.23.1)
rubocop (>= 1.48.1, < 2.0) rubocop (>= 1.48.1, < 2.0)
rubocop-ast (>= 1.31.1, < 2.0) rubocop-ast (>= 1.31.1, < 2.0)
rubocop-rails (2.27.0) rubocop-rails (2.28.0)
activesupport (>= 4.2.0) activesupport (>= 4.2.0)
rack (>= 1.1) rack (>= 1.1)
rubocop (>= 1.52.0, < 2.0) rubocop (>= 1.52.0, < 2.0)
@ -743,14 +744,14 @@ GEM
ruby-vips (2.2.2) ruby-vips (2.2.2)
ffi (~> 1.12) ffi (~> 1.12)
logger logger
rubyzip (2.3.2) rubyzip (2.4.1)
rufus-scheduler (3.9.2) rufus-scheduler (3.9.2)
fugit (~> 1.1, >= 1.11.1) fugit (~> 1.1, >= 1.11.1)
safety_net_attestation (0.4.0) safety_net_attestation (0.4.0)
jwt (~> 2.0) jwt (~> 2.0)
sanitize (6.1.3) sanitize (7.0.0)
crass (~> 1.0.2) crass (~> 1.0.2)
nokogiri (>= 1.12.0) nokogiri (>= 1.16.8)
scenic (1.8.0) scenic (1.8.0)
activerecord (>= 4.0.0) activerecord (>= 4.0.0)
railties (>= 4.0.0) railties (>= 4.0.0)
@ -808,9 +809,9 @@ GEM
unicode-display_width (>= 1.1.1, < 3) unicode-display_width (>= 1.1.1, < 3)
terrapin (1.0.1) terrapin (1.0.1)
climate_control climate_control
test-prof (1.4.3) test-prof (1.4.4)
thor (1.3.2) thor (1.3.2)
tilt (2.4.0) tilt (2.5.0)
timeout (0.4.3) timeout (0.4.3)
tpm-key_attestation (0.12.1) tpm-key_attestation (0.12.1)
bindata (~> 2.4) bindata (~> 2.4)
@ -890,7 +891,7 @@ DEPENDENCIES
binding_of_caller (~> 1.0) binding_of_caller (~> 1.0)
blurhash (~> 0.1) blurhash (~> 0.1)
bootsnap (~> 1.18.0) bootsnap (~> 1.18.0)
brakeman (~> 6.0) brakeman (~> 7.0)
browser browser
bundler-audit (~> 0.9) bundler-audit (~> 0.9)
capybara (~> 3.39) capybara (~> 3.39)
@ -947,7 +948,7 @@ DEPENDENCIES
memory_profiler memory_profiler
mime-types (~> 3.6.0) mime-types (~> 3.6.0)
mutex_m mutex_m
net-http (~> 0.5.0) net-http (~> 0.6.0)
net-ldap (~> 0.18) net-ldap (~> 0.18)
nokogiri (~> 1.15) nokogiri (~> 1.15)
oj (~> 3.14) oj (~> 3.14)
@ -962,7 +963,7 @@ DEPENDENCIES
opentelemetry-instrumentation-active_model_serializers (~> 0.21.0) opentelemetry-instrumentation-active_model_serializers (~> 0.21.0)
opentelemetry-instrumentation-concurrent_ruby (~> 0.21.2) opentelemetry-instrumentation-concurrent_ruby (~> 0.21.2)
opentelemetry-instrumentation-excon (~> 0.22.0) opentelemetry-instrumentation-excon (~> 0.22.0)
opentelemetry-instrumentation-faraday (~> 0.24.1) opentelemetry-instrumentation-faraday (~> 0.25.0)
opentelemetry-instrumentation-http (~> 0.23.2) opentelemetry-instrumentation-http (~> 0.23.2)
opentelemetry-instrumentation-http_client (~> 0.22.3) opentelemetry-instrumentation-http_client (~> 0.22.3)
opentelemetry-instrumentation-net_http (~> 0.22.4) opentelemetry-instrumentation-net_http (~> 0.22.4)
@ -985,9 +986,9 @@ DEPENDENCIES
rack-attack (~> 6.6) rack-attack (~> 6.6)
rack-cors (~> 2.0) rack-cors (~> 2.0)
rack-test (~> 2.1) rack-test (~> 2.1)
rails (~> 7.2.0) rails (~> 8.0)
rails-controller-testing (~> 1.0) rails-controller-testing (~> 1.0)
rails-i18n (~> 7.0) rails-i18n (~> 8.0)
rdf-normalize (~> 0.5) rdf-normalize (~> 0.5)
redcarpet (~> 3.6) redcarpet (~> 3.6)
redis (~> 4.5) redis (~> 4.5)
@ -1006,7 +1007,7 @@ DEPENDENCIES
ruby-progressbar (~> 1.13) ruby-progressbar (~> 1.13)
ruby-vips (~> 2.2) ruby-vips (~> 2.2)
rubyzip (~> 2.3) rubyzip (~> 2.3)
sanitize (~> 6.0) sanitize (~> 7.0)
scenic (~> 1.7) scenic (~> 1.7)
selenium-webdriver selenium-webdriver
shoulda-matchers shoulda-matchers
@ -1033,7 +1034,7 @@ DEPENDENCIES
xorcist (~> 1.1) xorcist (~> 1.1)
RUBY VERSION RUBY VERSION
ruby 3.3.6p108 ruby 3.4.1p0
BUNDLED WITH BUNDLED WITH
2.6.1 2.6.2

View file

@ -6,7 +6,7 @@ module Admin
def index def index
authorize :software_update, :index? authorize :software_update, :index?
@software_updates = SoftwareUpdate.all.sort_by(&:gem_version) @software_updates = SoftwareUpdate.by_version
end end
private private

View file

@ -25,7 +25,7 @@ module Localized
end end
def available_locale_or_nil(locale_name) def available_locale_or_nil(locale_name)
locale_name.to_sym if locale_name.present? && I18n.available_locales.include?(locale_name.to_sym) locale_name.to_sym if locale_name.respond_to?(:to_sym) && I18n.available_locales.include?(locale_name.to_sym)
end end
def content_locale def content_locale

View file

@ -1,10 +1,8 @@
# frozen_string_literal: true # frozen_string_literal: true
class CustomCssController < ActionController::Base # rubocop:disable Rails/ApplicationController class CustomCssController < ActionController::Base # rubocop:disable Rails/ApplicationController
before_action :set_user_roles
def show def show
expires_in 3.minutes, public: true expires_in 1.month, public: true
render content_type: 'text/css' render content_type: 'text/css'
end end
@ -14,8 +12,4 @@ class CustomCssController < ActionController::Base # rubocop:disable Rails/Appli
Setting.custom_css Setting.custom_css
end end
helper_method :custom_css_styles helper_method :custom_css_styles
def set_user_roles
@user_roles = UserRole.providing_styles
end
end end

View file

@ -263,6 +263,14 @@ module ApplicationHelper
I18n.t 'user_mailer.welcome.hashtags_recent_count', people: number_with_delimiter(people), count: people I18n.t 'user_mailer.welcome.hashtags_recent_count', people: number_with_delimiter(people), count: people
end end
def app_store_url_ios
'https://apps.apple.com/app/mastodon-for-iphone-and-ipad/id1571998974'
end
def app_store_url_android
'https://play.google.com/store/apps/details?id=org.joinmastodon.android'
end
private private
def storage_host_var def storage_host_var

View file

@ -23,8 +23,49 @@ module ThemeHelper
end end
end end
def custom_stylesheet
if active_custom_stylesheet.present?
stylesheet_link_tag(
custom_css_path(active_custom_stylesheet),
host: root_url,
media: :all,
skip_pipeline: true
)
end
end
def system_stylesheet
stylesheet_link_tag(
system_css_path,
host: root_url,
media: :all,
skip_pipeline: true
)
end
def user_custom_stylesheet
stylesheet_link_tag(
user_custom_css_path({ version: user_custom_css_version }),
host: root_url,
media: :all,
skip_pipeline: true
)
end
private private
def active_custom_stylesheet
if cached_custom_css_digest.present?
[:custom, cached_custom_css_digest.to_s.first(8)]
.compact_blank
.join('-')
end
end
def cached_custom_css_digest
Rails.cache.read(:setting_digest_custom_css)
end
def theme_color_for(theme) def theme_color_for(theme)
theme == 'mastodon-light' ? Themes::THEME_COLORS[:light] : Themes::THEME_COLORS[:dark] theme == 'mastodon-light' ? Themes::THEME_COLORS[:light] : Themes::THEME_COLORS[:dark]
end end

View file

@ -119,7 +119,11 @@ function loaded() {
formattedContent = dateFormat.format(datetime); formattedContent = dateFormat.format(datetime);
} }
content.title = formattedContent; const timeGiven = content.dateTime.includes('T');
content.title = timeGiven
? dateTimeFormat.format(datetime)
: dateFormat.format(datetime);
content.textContent = formattedContent; content.textContent = formattedContent;
}); });

View file

@ -12,7 +12,7 @@ import type {
} from 'mastodon/api_types/notifications'; } from 'mastodon/api_types/notifications';
import { allNotificationTypes } from 'mastodon/api_types/notifications'; import { allNotificationTypes } from 'mastodon/api_types/notifications';
import type { ApiStatusJSON } from 'mastodon/api_types/statuses'; import type { ApiStatusJSON } from 'mastodon/api_types/statuses';
import { usePendingItems } from 'mastodon/initial_state'; import { enableEmojiReaction, usePendingItems } from 'mastodon/initial_state';
import type { NotificationGap } from 'mastodon/reducers/notification_groups'; import type { NotificationGap } from 'mastodon/reducers/notification_groups';
import { import {
selectSettingsNotificationsExcludedTypes, selectSettingsNotificationsExcludedTypes,
@ -37,9 +37,15 @@ function excludeAllTypesExcept(filter: string) {
function getExcludedTypes(state: RootState) { function getExcludedTypes(state: RootState) {
const activeFilter = selectSettingsNotificationsQuickFilterActive(state); const activeFilter = selectSettingsNotificationsQuickFilterActive(state);
return activeFilter === 'all' const types =
? selectSettingsNotificationsExcludedTypes(state) activeFilter === 'all'
: excludeAllTypesExcept(activeFilter); ? selectSettingsNotificationsExcludedTypes(state)
: excludeAllTypesExcept(activeFilter);
if (!enableEmojiReaction && !types.includes('emoji_reaction')) {
types.push('emoji_reaction');
}
return types;
} }
function dispatchAssociatedRecords( function dispatchAssociatedRecords(
@ -155,7 +161,7 @@ export const processNewNotificationForGroups = createAppAsyncThunk(
const showInColumn = const showInColumn =
activeFilter === 'all' activeFilter === 'all'
? notificationShows[notification.type] ? notificationShows[notification.type] !== false
: activeFilter === notification.type; : activeFilter === notification.type;
if (!showInColumn) return; if (!showInColumn) return;

View file

@ -1,59 +1,27 @@
import { IntlMessageFormat } from 'intl-messageformat'; import { IntlMessageFormat } from 'intl-messageformat';
import { defineMessages } from 'react-intl'; import { defineMessages } from 'react-intl';
import { List as ImmutableList } from 'immutable';
import { compareId } from 'mastodon/compare_id';
import { enableEmojiReaction, usePendingItems as preferPendingItems } from 'mastodon/initial_state';
import api, { getLinks } from '../api';
import { unescapeHTML } from '../utils/html'; import { unescapeHTML } from '../utils/html';
import { requestNotificationPermission } from '../utils/notifications'; import { requestNotificationPermission } from '../utils/notifications';
import { fetchFollowRequests } from './accounts'; import { fetchFollowRequests } from './accounts';
import { import {
importFetchedAccount, importFetchedAccount,
importFetchedAccounts,
importFetchedStatus,
importFetchedStatuses,
} from './importer'; } from './importer';
import { submitMarkers } from './markers'; import { submitMarkers } from './markers';
import { notificationsUpdate } from "./notifications_typed"; import { notificationsUpdate } from "./notifications_typed";
import { register as registerPushNotifications } from './push_notifications'; import { register as registerPushNotifications } from './push_notifications';
import { saveSettings } from './settings';
import { STATUS_EMOJI_REACTION_UPDATE } from './statuses'; import { STATUS_EMOJI_REACTION_UPDATE } from './statuses';
export * from "./notifications_typed"; export * from "./notifications_typed";
export const NOTIFICATIONS_UPDATE_NOOP = 'NOTIFICATIONS_UPDATE_NOOP';
export const NOTIFICATIONS_EXPAND_REQUEST = 'NOTIFICATIONS_EXPAND_REQUEST';
export const NOTIFICATIONS_EXPAND_SUCCESS = 'NOTIFICATIONS_EXPAND_SUCCESS';
export const NOTIFICATIONS_EXPAND_FAIL = 'NOTIFICATIONS_EXPAND_FAIL';
export const NOTIFICATIONS_FILTER_SET = 'NOTIFICATIONS_FILTER_SET'; export const NOTIFICATIONS_FILTER_SET = 'NOTIFICATIONS_FILTER_SET';
export const NOTIFICATIONS_SCROLL_TOP = 'NOTIFICATIONS_SCROLL_TOP';
export const NOTIFICATIONS_LOAD_PENDING = 'NOTIFICATIONS_LOAD_PENDING';
export const NOTIFICATIONS_MOUNT = 'NOTIFICATIONS_MOUNT';
export const NOTIFICATIONS_UNMOUNT = 'NOTIFICATIONS_UNMOUNT';
export const NOTIFICATIONS_MARK_AS_READ = 'NOTIFICATIONS_MARK_AS_READ';
export const NOTIFICATIONS_SET_BROWSER_SUPPORT = 'NOTIFICATIONS_SET_BROWSER_SUPPORT'; export const NOTIFICATIONS_SET_BROWSER_SUPPORT = 'NOTIFICATIONS_SET_BROWSER_SUPPORT';
export const NOTIFICATIONS_SET_BROWSER_PERMISSION = 'NOTIFICATIONS_SET_BROWSER_PERMISSION'; export const NOTIFICATIONS_SET_BROWSER_PERMISSION = 'NOTIFICATIONS_SET_BROWSER_PERMISSION';
export const NOTIFICATION_REQUESTS_ACCEPT_REQUEST = 'NOTIFICATION_REQUESTS_ACCEPT_REQUEST';
export const NOTIFICATION_REQUESTS_ACCEPT_SUCCESS = 'NOTIFICATION_REQUESTS_ACCEPT_SUCCESS';
export const NOTIFICATION_REQUESTS_ACCEPT_FAIL = 'NOTIFICATION_REQUESTS_ACCEPT_FAIL';
export const NOTIFICATION_REQUESTS_DISMISS_REQUEST = 'NOTIFICATION_REQUESTS_DISMISS_REQUEST';
export const NOTIFICATION_REQUESTS_DISMISS_SUCCESS = 'NOTIFICATION_REQUESTS_DISMISS_SUCCESS';
export const NOTIFICATION_REQUESTS_DISMISS_FAIL = 'NOTIFICATION_REQUESTS_DISMISS_FAIL';
const messages = defineMessages({ const messages = defineMessages({
// mention: { id: 'notification.mention', defaultMessage: '{name} mentioned you' }, mention: { id: 'notification.mention', defaultMessage: '{name} mentioned you' },
group: { id: 'notifications.group', defaultMessage: '{count} notifications' }, group: { id: 'notifications.group', defaultMessage: '{count} notifications' },
'message_admin.report': { id: 'notification.admin.report', defaultMessage: '{name} reported {target}' }, 'message_admin.report': { id: 'notification.admin.report', defaultMessage: '{name} reported {target}' },
'message_admin.sign_up': { id: 'notification.admin.sign_up', defaultMessage: '{name} signed up' }, 'message_admin.sign_up': { id: 'notification.admin.sign_up', defaultMessage: '{name} signed up' },
@ -69,10 +37,6 @@ const messages = defineMessages({
message_update: { id: 'notification.update', defaultMessage: '{name} edited a post' }, message_update: { id: 'notification.update', defaultMessage: '{name} edited a post' },
}); });
export const loadPending = () => ({
type: NOTIFICATIONS_LOAD_PENDING,
});
export function updateEmojiReactions(emoji_reaction) { export function updateEmojiReactions(emoji_reaction) {
return (dispatch) => return (dispatch) =>
dispatch({ dispatch({
@ -83,8 +47,6 @@ export function updateEmojiReactions(emoji_reaction) {
export function updateNotifications(notification, intlMessages, intlLocale) { export function updateNotifications(notification, intlMessages, intlLocale) {
return (dispatch, getState) => { return (dispatch, getState) => {
const activeFilter = getState().getIn(['settings', 'notifications', 'quickFilter', 'active']);
const showInColumn = activeFilter === 'all' ? getState().getIn(['settings', 'notifications', 'shows', notification.type], true) : activeFilter === notification.type;
const showAlert = getState().getIn(['settings', 'notifications', 'alerts', notification.type], true); const showAlert = getState().getIn(['settings', 'notifications', 'alerts', notification.type], true);
const playSound = getState().getIn(['settings', 'notifications', 'sounds', notification.type], true); const playSound = getState().getIn(['settings', 'notifications', 'sounds', notification.type], true);
@ -106,25 +68,9 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
dispatch(submitMarkers()); dispatch(submitMarkers());
if (showInColumn) { // `notificationsUpdate` is still used in `user_lists` and `relationships` reducers
dispatch(importFetchedAccount(notification.account)); dispatch(importFetchedAccount(notification.account));
dispatch(notificationsUpdate({ notification, playSound: playSound && !filtered}));
if (notification.status) {
dispatch(importFetchedStatus(notification.status));
}
if (notification.report) {
dispatch(importFetchedAccount(notification.report.target_account));
}
dispatch(notificationsUpdate({ notification, preferPendingItems, playSound: playSound && !filtered}));
} else if (playSound && !filtered) {
dispatch({
type: NOTIFICATIONS_UPDATE_NOOP,
meta: { sound: 'boop' },
});
}
// Desktop notifications // Desktop notifications
if (typeof window.Notification !== 'undefined' && showAlert && !filtered) { if (typeof window.Notification !== 'undefined' && showAlert && !filtered) {
@ -145,149 +91,8 @@ export function updateNotifications(notification, intlMessages, intlLocale) {
}; };
} }
const excludeTypesFromSettings = state => state.getIn(['settings', 'notifications', 'shows']).filter(enabled => !enabled).keySeq().toJS();
const excludeTypesFromFilter = filter => {
const allTypes = ImmutableList([
'follow',
'follow_request',
'favourite',
'emoji_reaction',
'reblog',
'status_reference',
'mention',
'poll',
'status',
'list_status',
'update',
'admin.sign_up',
'admin.report',
]);
return allTypes.filterNot(item => item === filter).toJS();
};
const noOp = () => {}; const noOp = () => {};
let expandNotificationsController = new AbortController();
export function expandNotifications({ maxId = undefined, forceLoad = false }) {
return async (dispatch, getState) => {
const activeFilter = getState().getIn(['settings', 'notifications', 'quickFilter', 'active']);
const notifications = getState().get('notifications');
const isLoadingMore = !!maxId;
if (notifications.get('isLoading')) {
if (forceLoad) {
expandNotificationsController.abort();
expandNotificationsController = new AbortController();
} else {
return;
}
}
let exclude_types = activeFilter === 'all'
? excludeTypesFromSettings(getState())
: excludeTypesFromFilter(activeFilter);
if (!enableEmojiReaction && !exclude_types.includes('emoji_reaction')) {
exclude_types.push('emoji_reaction');
}
const params = {
max_id: maxId,
exclude_types,
};
if (!params.max_id && (notifications.get('items', ImmutableList()).size + notifications.get('pendingItems', ImmutableList()).size) > 0) {
const a = notifications.getIn(['pendingItems', 0, 'id']);
const b = notifications.getIn(['items', 0, 'id']);
if (a && b && compareId(a, b) > 0) {
params.since_id = a;
} else {
params.since_id = b || a;
}
}
const isLoadingRecent = !!params.since_id;
dispatch(expandNotificationsRequest(isLoadingMore));
try {
const response = await api().get('/api/v1/notifications', { params, signal: expandNotificationsController.signal });
const next = getLinks(response).refs.find(link => link.rel === 'next');
dispatch(importFetchedAccounts(response.data.map(item => item.account)));
dispatch(importFetchedStatuses(response.data.map(item => item.status).filter(status => !!status)));
dispatch(importFetchedAccounts(response.data.filter(item => item.report).map(item => item.report.target_account)));
dispatch(expandNotificationsSuccess(response.data, next ? next.uri : null, isLoadingMore, isLoadingRecent, isLoadingRecent && preferPendingItems));
dispatch(submitMarkers());
} catch(error) {
dispatch(expandNotificationsFail(error, isLoadingMore));
}
};
}
export function expandNotificationsRequest(isLoadingMore) {
return {
type: NOTIFICATIONS_EXPAND_REQUEST,
skipLoading: !isLoadingMore,
};
}
export function expandNotificationsSuccess(notifications, next, isLoadingMore, isLoadingRecent, usePendingItems) {
return {
type: NOTIFICATIONS_EXPAND_SUCCESS,
notifications,
next,
isLoadingRecent: isLoadingRecent,
usePendingItems,
skipLoading: !isLoadingMore,
};
}
export function expandNotificationsFail(error, isLoadingMore) {
return {
type: NOTIFICATIONS_EXPAND_FAIL,
error,
skipLoading: !isLoadingMore,
skipAlert: !isLoadingMore || error.name === 'AbortError',
};
}
export function scrollTopNotifications(top) {
return {
type: NOTIFICATIONS_SCROLL_TOP,
top,
};
}
export function setFilter (filterType) {
return dispatch => {
dispatch({
type: NOTIFICATIONS_FILTER_SET,
path: ['notifications', 'quickFilter', 'active'],
value: filterType,
});
dispatch(expandNotifications({ forceLoad: true }));
dispatch(saveSettings());
};
}
export const mountNotifications = () => ({
type: NOTIFICATIONS_MOUNT,
});
export const unmountNotifications = () => ({
type: NOTIFICATIONS_UNMOUNT,
});
export const markNotificationsAsRead = () => ({
type: NOTIFICATIONS_MARK_AS_READ,
});
// Browser support // Browser support
export function setupBrowserNotifications() { export function setupBrowserNotifications() {
return dispatch => { return dispatch => {

View file

@ -1,10 +0,0 @@
import { createAppAsyncThunk } from 'mastodon/store';
import { fetchNotifications } from './notification_groups';
export const initializeNotifications = createAppAsyncThunk(
'notifications/initialize',
(_, { dispatch }) => {
void dispatch(fetchNotifications());
},
);

View file

@ -9,7 +9,6 @@ export const notificationsUpdate = createAction(
...args ...args
}: { }: {
notification: ApiNotificationJSON; notification: ApiNotificationJSON;
usePendingItems: boolean;
playSound: boolean; playSound: boolean;
}) => ({ }) => ({
payload: args, payload: args,

View file

@ -56,7 +56,7 @@ export const expandSearch = createDataLoadingThunk(
return apiGetSearch({ return apiGetSearch({
q, q,
type, type,
limit: 11, limit: 10,
offset, offset,
}); });
}, },

View file

@ -1,4 +1,4 @@
import { Iterable, fromJS } from 'immutable'; import { fromJS, isIndexed } from 'immutable';
import { hydrateCompose } from './compose'; import { hydrateCompose } from './compose';
import { importFetchedAccounts } from './importer'; import { importFetchedAccounts } from './importer';
@ -9,8 +9,7 @@ export const STORE_HYDRATE_LAZY = 'STORE_HYDRATE_LAZY';
const convertState = rawState => const convertState = rawState =>
fromJS(rawState, (k, v) => fromJS(rawState, (k, v) =>
Iterable.isIndexed(v) ? v.toList() : v.toMap()); isIndexed(v) ? v.toList() : v.toMap());
export function hydrateStore(rawState) { export function hydrateStore(rawState) {
return dispatch => { return dispatch => {

View file

@ -11,7 +11,7 @@ import {
} from './announcements'; } from './announcements';
import { updateConversations } from './conversations'; import { updateConversations } from './conversations';
import { processNewNotificationForGroups, refreshStaleNotificationGroups, pollRecentNotifications as pollRecentGroupNotifications } from './notification_groups'; import { processNewNotificationForGroups, refreshStaleNotificationGroups, pollRecentNotifications as pollRecentGroupNotifications } from './notification_groups';
import { updateNotifications, expandNotifications, updateEmojiReactions } from './notifications'; import { updateNotifications, updateEmojiReactions } from './notifications';
import { updateStatus } from './statuses'; import { updateStatus } from './statuses';
import { import {
updateTimeline, updateTimeline,
@ -112,9 +112,6 @@ export const connectTimelineStream = (timelineId, channelName, params = {}, opti
dispatch(updateEmojiReactions(JSON.parse(data.payload))); dispatch(updateEmojiReactions(JSON.parse(data.payload)));
break; break;
case 'notifications_merged': { case 'notifications_merged': {
const state = getState();
if (state.notifications.top || !state.notifications.mounted)
dispatch(expandNotifications({ forceLoad: true, maxId: undefined }));
dispatch(refreshStaleNotificationGroups()); dispatch(refreshStaleNotificationGroups());
break; break;
} }

View file

@ -1,6 +1,6 @@
import { Component } from 'react'; import { Component } from 'react';
import type { IntlShape } from 'react-intl'; import type { MessageDescriptor, PrimitiveType, IntlShape } from 'react-intl';
import { injectIntl, defineMessages } from 'react-intl'; import { injectIntl, defineMessages } from 'react-intl';
const messages = defineMessages({ const messages = defineMessages({
@ -102,7 +102,13 @@ const getUnitDelay = (units: string) => {
}; };
export const timeAgoString = ( export const timeAgoString = (
intl: Pick<IntlShape, 'formatDate' | 'formatMessage'>, intl: {
formatDate: IntlShape['formatDate'];
formatMessage: (
{ id, defaultMessage }: MessageDescriptor,
values?: Record<string, PrimitiveType>,
) => string;
},
date: Date, date: Date,
now: number, now: number,
year: number, year: number,

View file

@ -176,7 +176,12 @@ class Status extends ImmutablePureComponent {
handleClick = e => { handleClick = e => {
e.preventDefault(); e.preventDefault();
this.handleHotkeyOpen(e);
if (e?.button === 0 && !(e?.ctrlKey || e?.metaKey)) {
this._openStatus();
} else if (e?.button === 1 || (e?.button === 0 && (e?.ctrlKey || e?.metaKey))) {
this._openStatus(true);
}
}; };
handleMouseUp = e => { handleMouseUp = e => {
@ -284,7 +289,11 @@ class Status extends ImmutablePureComponent {
this.props.onMention(this._properStatus().get('account')); this.props.onMention(this._properStatus().get('account'));
}; };
handleHotkeyOpen = (e) => { handleHotkeyOpen = () => {
this._openStatus();
};
_openStatus = (newTab = false) => {
if (this.props.onClick) { if (this.props.onClick) {
this.props.onClick(); this.props.onClick();
return; return;
@ -299,10 +308,10 @@ class Status extends ImmutablePureComponent {
const path = `/@${status.getIn(['account', 'acct'])}/${status.get('id')}`; const path = `/@${status.getIn(['account', 'acct'])}/${status.get('id')}`;
if (e?.button === 0 && !(e?.ctrlKey || e?.metaKey)) { if (newTab) {
history.push(path);
} else if (e?.button === 1 || (e?.button === 0 && (e?.ctrlKey || e?.metaKey))) {
window.open(path, '_blank', 'noopener'); window.open(path, '_blank', 'noopener');
} else {
history.push(path);
} }
}; };
@ -395,6 +404,7 @@ class Status extends ImmutablePureComponent {
toggleHidden: this.handleHotkeyToggleHidden, toggleHidden: this.handleHotkeyToggleHidden,
toggleSensitive: this.handleHotkeyToggleSensitive, toggleSensitive: this.handleHotkeyToggleSensitive,
openMedia: this.handleHotkeyOpenMedia, openMedia: this.handleHotkeyOpenMedia,
onTranslate: this.handleTranslate,
}; };
let media, statusAvatar, prepend, rebloggedByText; let media, statusAvatar, prepend, rebloggedByText;

View file

@ -53,6 +53,7 @@ const messages = defineMessages({
cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' }, cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' },
cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' }, cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },
favourite: { id: 'status.favourite', defaultMessage: 'Favorite' }, favourite: { id: 'status.favourite', defaultMessage: 'Favorite' },
removeFavourite: { id: 'status.remove_favourite', defaultMessage: 'Remove from favorites' },
emojiReaction: { id: 'status.emoji_reaction', defaultMessage: 'Emoji reaction' }, emojiReaction: { id: 'status.emoji_reaction', defaultMessage: 'Emoji reaction' },
bookmark: { id: 'status.bookmark', defaultMessage: 'Bookmark' }, bookmark: { id: 'status.bookmark', defaultMessage: 'Bookmark' },
bookmarkCategory: { id: 'status.bookmark_category', defaultMessage: 'Bookmark category' }, bookmarkCategory: { id: 'status.bookmark_category', defaultMessage: 'Bookmark category' },
@ -335,20 +336,15 @@ class StatusActionBar extends ImmutablePureComponent {
} }
if (!boostMenu) { if (!boostMenu) {
menu.push({ text: intl.formatMessage(status.get('reblogged') ? messages.cancelReblog : messages.reblog), action: this.handleReblogForceModalClick, tag: 'reblog' }); if (publicStatus && allowQuote && (account.getIn(['server_features', 'quote']) || !isHideItem('quote_unavailable_server'))) {
menu.push({ text: intl.formatMessage(messages.quote), action: this.handleQuote, tag: 'reblog' });
}
if (publicStatus) { if (account.getIn(['server_features', 'status_reference']) || !isHideItem('status_reference_unavailable_server')) {
if (allowQuote && (account.getIn(['server_features', 'quote']) || !isHideItem('quote_unavailable_server'))) { menu.push({ text: intl.formatMessage(messages.reference), action: this.handleReference, tag: 'reblog' });
menu.push({ text: intl.formatMessage(messages.quote), action: this.handleQuote, tag: 'reblog' });
}
if (account.getIn(['server_features', 'status_reference']) || !isHideItem('status_reference_unavailable_server')) {
menu.push({ text: intl.formatMessage(messages.reference), action: this.handleReference, tag: 'reblog' });
}
} }
} }
menu.push({ text: intl.formatMessage(status.get('bookmarked') ? messages.removeBookmark : messages.bookmark), action: this.handleBookmarkClickOriginal });
menu.push({ text: intl.formatMessage(messages.bookmarkCategory), action: this.handleBookmarkCategoryAdderClick }); menu.push({ text: intl.formatMessage(messages.bookmarkCategory), action: this.handleBookmarkCategoryAdderClick });
if (writtenByMe && pinnableStatus) { if (writtenByMe && pinnableStatus) {
@ -488,6 +484,9 @@ class StatusActionBar extends ImmutablePureComponent {
<div className='status__action-bar__button-wrapper status__action-bar__button-wrapper__blank' /> <div className='status__action-bar__button-wrapper status__action-bar__button-wrapper__blank' />
)) || null; )) || null;
const bookmarkTitle = intl.formatMessage(status.get('bookmarked') ? messages.removeBookmark : messages.bookmark);
const favouriteTitle = intl.formatMessage(status.get('favourited') ? messages.removeFavourite : messages.favourite);
const isReply = status.get('in_reply_to_account_id') === status.getIn(['account', 'id']); const isReply = status.get('in_reply_to_account_id') === status.getIn(['account', 'id']);
const reblogButton = <IconButton className={classNames('status__action-bar__button', { reblogPrivate })} disabled={!publicStatus && !reblogPrivate} active={status.get('reblogged')} title={reblogTitle} icon='retweet' iconComponent={reblogIconComponent} onClick={this.handleReblogClick} counter={withCounters ? status.get('reblogs_count') : undefined} />; const reblogButton = <IconButton className={classNames('status__action-bar__button', { reblogPrivate })} disabled={!publicStatus && !reblogPrivate} active={status.get('reblogged')} title={reblogTitle} icon='retweet' iconComponent={reblogIconComponent} onClick={this.handleReblogClick} counter={withCounters ? status.get('reblogs_count') : undefined} />;
@ -516,10 +515,10 @@ class StatusActionBar extends ImmutablePureComponent {
)} )}
</div> </div>
<div className='status__action-bar__button-wrapper'> <div className='status__action-bar__button-wrapper'>
<IconButton className='status__action-bar__button star-icon' animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' iconComponent={status.get('favourited') ? StarIcon : StarBorderIcon} onClick={this.handleFavouriteClick} counter={withCounters ? status.get('favourites_count') : undefined} /> <IconButton className='status__action-bar__button star-icon' animate active={status.get('favourited')} title={favouriteTitle} icon='star' iconComponent={status.get('favourited') ? StarIcon : StarBorderIcon} onClick={this.handleFavouriteClick} counter={withCounters ? status.get('favourites_count') : undefined} />
</div> </div>
<div className='status__action-bar__button-wrapper'> <div className='status__action-bar__button-wrapper'>
<IconButton className='status__action-bar__button bookmark-icon' disabled={!signedIn} active={status.get('bookmarked')} title={intl.formatMessage(messages.bookmark)} icon='bookmark' iconComponent={status.get('bookmarked') ? BookmarkIcon : BookmarkBorderIcon} onClick={this.handleBookmarkClick} /> <IconButton className='status__action-bar__button bookmark-icon' disabled={!signedIn} active={status.get('bookmarked')} title={bookmarkTitle} icon='bookmark' iconComponent={status.get('bookmarked') ? BookmarkIcon : BookmarkBorderIcon} onClick={this.handleBookmarkClick} />
</div> </div>
{emojiPickerDropdown} {emojiPickerDropdown}
<div className='status__action-bar__button-wrapper'> <div className='status__action-bar__button-wrapper'>

View file

@ -38,7 +38,7 @@ class TranslateButton extends PureComponent {
if (translation) { if (translation) {
const language = preloadedLanguages.find(lang => lang[0] === translation.get('detected_source_language')); const language = preloadedLanguages.find(lang => lang[0] === translation.get('detected_source_language'));
const languageName = language ? language[2] : translation.get('detected_source_language'); const languageName = language ? language[1] : translation.get('detected_source_language');
const provider = translation.get('provider'); const provider = translation.get('provider');
return ( return (

View file

@ -2,6 +2,7 @@ import { Provider } from 'react-redux';
import { fetchCircles } from 'mastodon/actions/circles'; import { fetchCircles } from 'mastodon/actions/circles';
import { fetchCustomEmojis } from 'mastodon/actions/custom_emojis'; import { fetchCustomEmojis } from 'mastodon/actions/custom_emojis';
import { fetchServer } from 'mastodon/actions/server';
import { hydrateStore } from 'mastodon/actions/store'; import { hydrateStore } from 'mastodon/actions/store';
import { Router } from 'mastodon/components/router'; import { Router } from 'mastodon/components/router';
import Compose from 'mastodon/features/standalone/compose'; import Compose from 'mastodon/features/standalone/compose';
@ -15,6 +16,7 @@ if (initialState) {
store.dispatch(fetchCustomEmojis()); store.dispatch(fetchCustomEmojis());
store.dispatch(fetchCircles()); store.dispatch(fetchCircles());
store.dispatch(fetchServer());
const ComposeContainer = () => ( const ComposeContainer = () => (
<IntlProvider> <IntlProvider>

View file

@ -66,6 +66,10 @@ class KeyboardShortcuts extends ImmutablePureComponent {
<td><kbd>enter</kbd>, <kbd>o</kbd></td> <td><kbd>enter</kbd>, <kbd>o</kbd></td>
<td><FormattedMessage id='keyboard_shortcuts.enter' defaultMessage='to open status' /></td> <td><FormattedMessage id='keyboard_shortcuts.enter' defaultMessage='to open status' /></td>
</tr> </tr>
<tr>
<td><kbd>t</kbd></td>
<td><FormattedMessage id='keyboard_shortcuts.translate' defaultMessage='to translate a post' /></td>
</tr>
<tr> <tr>
<td><kbd>e</kbd></td> <td><kbd>e</kbd></td>
<td><FormattedMessage id='keyboard_shortcuts.open_media' defaultMessage='to open media' /></td> <td><FormattedMessage id='keyboard_shortcuts.open_media' defaultMessage='to open media' /></td>

View file

@ -3,10 +3,10 @@ import { defineMessages, injectIntl } from 'react-intl';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { openModal } from 'mastodon/actions/modal'; import { openModal } from 'mastodon/actions/modal';
import { initializeNotifications } from 'mastodon/actions/notifications_migration'; import { fetchNotifications , setNotificationsFilter } from 'mastodon/actions/notification_groups';
import { showAlert } from '../../../actions/alerts'; import { showAlert } from '../../../actions/alerts';
import { setFilter, requestBrowserPermission } from '../../../actions/notifications'; import { requestBrowserPermission } from '../../../actions/notifications';
import { changeAlerts as changePushNotifications } from '../../../actions/push_notifications'; import { changeAlerts as changePushNotifications } from '../../../actions/push_notifications';
import { changeSetting } from '../../../actions/settings'; import { changeSetting } from '../../../actions/settings';
import ColumnSettings from '../components/column_settings'; import ColumnSettings from '../components/column_settings';
@ -43,7 +43,7 @@ const mapDispatchToProps = (dispatch) => ({
} }
} else if (path[0] === 'quickFilter') { } else if (path[0] === 'quickFilter') {
dispatch(changeSetting(['notifications', ...path], checked)); dispatch(changeSetting(['notifications', ...path], checked));
dispatch(setFilter('all')); dispatch(setNotificationsFilter('all'));
} else if (path[0] === 'alerts' && checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') { } else if (path[0] === 'alerts' && checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') {
if (checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') { if (checked && typeof window.Notification !== 'undefined' && Notification.permission !== 'granted') {
dispatch(requestBrowserPermission((permission) => { dispatch(requestBrowserPermission((permission) => {
@ -60,7 +60,7 @@ const mapDispatchToProps = (dispatch) => ({
dispatch(changeSetting(['notifications', ...path], checked)); dispatch(changeSetting(['notifications', ...path], checked));
if(path[0] === 'group' && path[1] === 'follow') { if(path[0] === 'group' && path[1] === 'follow') {
dispatch(initializeNotifications()); dispatch(fetchNotifications());
} }
} }
}, },

View file

@ -33,6 +33,7 @@ const messages = defineMessages({
cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' }, cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' },
cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' }, cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },
favourite: { id: 'status.favourite', defaultMessage: 'Favorite' }, favourite: { id: 'status.favourite', defaultMessage: 'Favorite' },
removeFavourite: { id: 'status.remove_favourite', defaultMessage: 'Remove from favorites' },
open: { id: 'status.open', defaultMessage: 'Expand this status' }, open: { id: 'status.open', defaultMessage: 'Expand this status' },
}); });
@ -177,11 +178,13 @@ class Footer extends ImmutablePureComponent {
reblogIconComponent = RepeatDisabledIcon; reblogIconComponent = RepeatDisabledIcon;
} }
const favouriteTitle = intl.formatMessage(status.get('favourited') ? messages.removeFavourite : messages.favourite);
return ( return (
<div className='picture-in-picture__footer'> <div className='picture-in-picture__footer'>
<IconButton className='status__action-bar-button' title={replyTitle} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} iconComponent={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? ReplyIcon : replyIconComponent} onClick={this.handleReplyClick} counter={status.get('replies_count')} /> <IconButton className='status__action-bar-button' title={replyTitle} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} iconComponent={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? ReplyIcon : replyIconComponent} onClick={this.handleReplyClick} counter={status.get('replies_count')} />
<IconButton className={classNames('status__action-bar-button', { reblogPrivate })} disabled={!publicStatus && !reblogPrivate} active={status.get('reblogged')} title={reblogTitle} icon='retweet' iconComponent={reblogIconComponent} onClick={this.handleReblogClick} counter={status.get('reblogs_count')} /> <IconButton className={classNames('status__action-bar-button', { reblogPrivate })} disabled={!publicStatus && !reblogPrivate} active={status.get('reblogged')} title={reblogTitle} icon='retweet' iconComponent={reblogIconComponent} onClick={this.handleReblogClick} counter={status.get('reblogs_count')} />
<IconButton className='status__action-bar-button star-icon' animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' iconComponent={StarIcon} onClick={this.handleFavouriteClick} counter={status.get('favourites_count')} /> <IconButton className='status__action-bar-button star-icon' animate active={status.get('favourited')} title={favouriteTitle} icon='star' iconComponent={StarIcon} onClick={this.handleFavouriteClick} counter={status.get('favourites_count')} />
{withOpenButton && <IconButton className='status__action-bar-button' title={intl.formatMessage(messages.open)} icon='external-link' iconComponent={OpenInNewIcon} onClick={this.handleOpenClick} href={`/@${status.getIn(['account', 'acct'])}/${status.get('id')}`} />} {withOpenButton && <IconButton className='status__action-bar-button' title={intl.formatMessage(messages.open)} icon='external-link' iconComponent={OpenInNewIcon} onClick={this.handleOpenClick} href={`/@${status.getIn(['account', 'acct'])}/${status.get('id')}`} />}
</div> </div>
); );

View file

@ -46,8 +46,10 @@ const messages = defineMessages({
cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' }, cancel_reblog_private: { id: 'status.cancel_reblog_private', defaultMessage: 'Unboost' },
cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' }, cannot_reblog: { id: 'status.cannot_reblog', defaultMessage: 'This post cannot be boosted' },
favourite: { id: 'status.favourite', defaultMessage: 'Favorite' }, favourite: { id: 'status.favourite', defaultMessage: 'Favorite' },
removeFavourite: { id: 'status.remove_favourite', defaultMessage: 'Remove from favorites' },
bookmark: { id: 'status.bookmark', defaultMessage: 'Bookmark' }, bookmark: { id: 'status.bookmark', defaultMessage: 'Bookmark' },
bookmark_category: { id: 'status.bookmark_category', defaultMessage: 'Bookmark category' }, bookmark_category: { id: 'status.bookmark_category', defaultMessage: 'Bookmark category' },
removeBookmark: { id: 'status.remove_bookmark', defaultMessage: 'Remove bookmark' },
more: { id: 'status.more', defaultMessage: 'More' }, more: { id: 'status.more', defaultMessage: 'More' },
mute: { id: 'status.mute', defaultMessage: 'Mute @{name}' }, mute: { id: 'status.mute', defaultMessage: 'Mute @{name}' },
muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' }, muteConversation: { id: 'status.mute_conversation', defaultMessage: 'Mute conversation' },
@ -404,6 +406,9 @@ class ActionBar extends PureComponent {
<div className='detailed-status__button__blank' /> <div className='detailed-status__button__blank' />
)) || null; )) || null;
const bookmarkTitle = intl.formatMessage(status.get('bookmarked') ? messages.removeBookmark : messages.bookmark);
const favouriteTitle = intl.formatMessage(status.get('favourited') ? messages.removeFavourite : messages.favourite);
return ( return (
<div className='detailed-status__action-bar'> <div className='detailed-status__action-bar'>
<div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} iconComponent={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? ReplyIcon : replyIconComponent} onClick={this.handleReplyClick} /></div> <div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} iconComponent={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? ReplyIcon : replyIconComponent} onClick={this.handleReplyClick} /></div>
@ -424,8 +429,8 @@ class ActionBar extends PureComponent {
/> />
</div> </div>
)} )}
<div className='detailed-status__button'><IconButton className='star-icon' animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' iconComponent={status.get('favourited') ? StarIcon : StarBorderIcon} onClick={this.handleFavouriteClick} /></div> <div className='detailed-status__button'><IconButton className='star-icon' animate active={status.get('favourited')} title={favouriteTitle} icon='star' iconComponent={status.get('favourited') ? StarIcon : StarBorderIcon} onClick={this.handleFavouriteClick} /></div>
<div className='detailed-status__button'><IconButton className='bookmark-icon' disabled={!signedIn} active={status.get('bookmarked')} title={intl.formatMessage(messages.bookmark)} icon='bookmark' iconComponent={status.get('bookmarked') ? BookmarkIcon : BookmarkBorderIcon} onClick={this.handleBookmarkClick} /></div> <div className='detailed-status__button'><IconButton className='bookmark-icon' disabled={!signedIn} active={status.get('bookmarked')} title={bookmarkTitle} icon='bookmark' iconComponent={status.get('bookmarked') ? BookmarkIcon : BookmarkBorderIcon} onClick={this.handleBookmarkClick} /></div>
{emojiPickerDropdown} {emojiPickerDropdown}
<div className='detailed-status__action-bar-dropdown'> <div className='detailed-status__action-bar-dropdown'>

View file

@ -536,6 +536,10 @@ class Status extends ImmutablePureComponent {
this.handleToggleMediaVisibility(); this.handleToggleMediaVisibility();
}; };
handleHotkeyTranslate = () => {
this.handleTranslate(this.props.status);
};
handleMoveUp = id => { handleMoveUp = id => {
const { status, ancestorsIds, descendantsIds, referenceIds } = this.props; const { status, ancestorsIds, descendantsIds, referenceIds } = this.props;
@ -726,6 +730,7 @@ class Status extends ImmutablePureComponent {
toggleHidden: this.handleHotkeyToggleHidden, toggleHidden: this.handleHotkeyToggleHidden,
toggleSensitive: this.handleHotkeyToggleSensitive, toggleSensitive: this.handleHotkeyToggleSensitive,
openMedia: this.handleHotkeyOpenMedia, openMedia: this.handleHotkeyOpenMedia,
onTranslate: this.handleHotkeyTranslate,
}; };
return ( return (

View file

@ -4,6 +4,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import ImmutablePureComponent from 'react-immutable-pure-component'; import ImmutablePureComponent from 'react-immutable-pure-component';
import { connect } from 'react-redux'; import { connect } from 'react-redux';
import { getAverageFromBlurhash } from 'mastodon/blurhash';
import Audio from 'mastodon/features/audio'; import Audio from 'mastodon/features/audio';
import Footer from 'mastodon/features/picture_in_picture/components/footer'; import Footer from 'mastodon/features/picture_in_picture/components/footer';
@ -26,6 +27,18 @@ class AudioModal extends ImmutablePureComponent {
onChangeBackgroundColor: PropTypes.func.isRequired, onChangeBackgroundColor: PropTypes.func.isRequired,
}; };
componentDidMount () {
const { media, onChangeBackgroundColor } = this.props;
const backgroundColor = getAverageFromBlurhash(media.get('blurhash'));
onChangeBackgroundColor(backgroundColor || { r: 255, g: 255, b: 255 });
}
componentWillUnmount () {
this.props.onChangeBackgroundColor(null);
}
render () { render () {
const { media, status, accountStaticAvatar, onClose } = this.props; const { media, status, accountStaticAvatar, onClose } = this.props;
const options = this.props.options || {}; const options = this.props.options || {};

View file

@ -37,6 +37,10 @@ class VideoModal extends ImmutablePureComponent {
} }
} }
componentWillUnmount () {
this.props.onChangeBackgroundColor(null);
}
render () { render () {
const { media, status, onClose } = this.props; const { media, status, onClose } = this.props;
const options = this.props.options || {}; const options = this.props.options || {};

View file

@ -13,7 +13,7 @@ import { HotKeys } from 'react-hotkeys';
import { focusApp, unfocusApp, changeLayout } from 'mastodon/actions/app'; import { focusApp, unfocusApp, changeLayout } from 'mastodon/actions/app';
import { synchronouslySubmitMarkers, submitMarkers, fetchMarkers } from 'mastodon/actions/markers'; import { synchronouslySubmitMarkers, submitMarkers, fetchMarkers } from 'mastodon/actions/markers';
import { initializeNotifications } from 'mastodon/actions/notifications_migration'; import { fetchNotifications } from 'mastodon/actions/notification_groups';
import { INTRODUCTION_VERSION } from 'mastodon/actions/onboarding'; import { INTRODUCTION_VERSION } from 'mastodon/actions/onboarding';
import { HoverCardController } from 'mastodon/components/hover_card_controller'; import { HoverCardController } from 'mastodon/components/hover_card_controller';
import { PictureInPicture } from 'mastodon/features/picture_in_picture'; import { PictureInPicture } from 'mastodon/features/picture_in_picture';
@ -145,6 +145,7 @@ const keyMap = {
toggleHidden: 'x', toggleHidden: 'x',
toggleSensitive: 'h', toggleSensitive: 'h',
openMedia: 'e', openMedia: 'e',
onTranslate: 't',
}; };
class SwitchingColumnsArea extends PureComponent { class SwitchingColumnsArea extends PureComponent {
@ -461,7 +462,7 @@ class UI extends PureComponent {
if (signedIn) { if (signedIn) {
this.props.dispatch(fetchMarkers()); this.props.dispatch(fetchMarkers());
this.props.dispatch(expandHomeTimeline()); this.props.dispatch(expandHomeTimeline());
this.props.dispatch(initializeNotifications()); this.props.dispatch(fetchNotifications());
this.props.dispatch(fetchServerTranslationLanguages()); this.props.dispatch(fetchServerTranslationLanguages());
setTimeout(() => this.props.dispatch(fetchServer()), 3000); setTimeout(() => this.props.dispatch(fetchServer()), 3000);

View file

@ -165,11 +165,22 @@ export const trendsAsLanding = getMeta('trends_as_landing_page');
export const useBlurhash = getMeta('use_blurhash'); export const useBlurhash = getMeta('use_blurhash');
export const usePendingItems = getMeta('use_pending_items'); export const usePendingItems = getMeta('use_pending_items');
export const version = getMeta('version'); export const version = getMeta('version');
export const languages = initialState?.languages;
export const criticalUpdatesPending = initialState?.critical_updates_pending; export const criticalUpdatesPending = initialState?.critical_updates_pending;
export const statusPageUrl = getMeta('status_page_url'); export const statusPageUrl = getMeta('status_page_url');
export const sso_redirect = getMeta('sso_redirect'); export const sso_redirect = getMeta('sso_redirect');
export const termsOfServiceEnabled = getMeta('terms_of_service_enabled'); export const termsOfServiceEnabled = getMeta('terms_of_service_enabled');
const displayNames = Intl.DisplayNames && new Intl.DisplayNames(getMeta('locale'), {
type: 'language',
fallback: 'none',
languageDisplay: 'standard',
});
export const languages = initialState?.languages?.map(lang => {
// zh-YUE is not a valid CLDR unicode_language_id
return [lang[0], displayNames?.of(lang[0].replace('zh-YUE', 'yue')) || lang[1], lang[2]];
});
/** /**
* @returns {string | undefined} * @returns {string | undefined}
*/ */

View file

@ -16,7 +16,9 @@
"account.badges.group": "Grupu", "account.badges.group": "Grupu",
"account.block": "Bloquiar a @{name}", "account.block": "Bloquiar a @{name}",
"account.block_domain": "Bloquiar el dominiu {domain}", "account.block_domain": "Bloquiar el dominiu {domain}",
"account.block_short": "Bloquiar",
"account.blocked": "Perfil bloquiáu", "account.blocked": "Perfil bloquiáu",
"account.copy": "Copiar l'enlllaz al perfil",
"account.direct": "Mentar a @{name} per privao", "account.direct": "Mentar a @{name} per privao",
"account.disable_notifications": "Dexar d'avisame cuando @{name} espublice artículos", "account.disable_notifications": "Dexar d'avisame cuando @{name} espublice artículos",
"account.domain_blocked": "Dominiu bloquiáu", "account.domain_blocked": "Dominiu bloquiáu",
@ -26,9 +28,12 @@
"account.featured_tags.last_status_never": "Nun hai nengún artículu", "account.featured_tags.last_status_never": "Nun hai nengún artículu",
"account.featured_tags.title": "Etiquetes destacaes de: {name}", "account.featured_tags.title": "Etiquetes destacaes de: {name}",
"account.follow": "Siguir", "account.follow": "Siguir",
"account.follow_back": "Siguir tamién",
"account.followers": "Siguidores", "account.followers": "Siguidores",
"account.followers.empty": "Naide sigue a esti perfil.", "account.followers.empty": "Naide sigue a esti perfil.",
"account.following": "Siguiendo",
"account.follows.empty": "Esti perfil nun sigue a naide.", "account.follows.empty": "Esti perfil nun sigue a naide.",
"account.go_to_profile": "Dir al perfil",
"account.hide_reblogs": "Esconder los artículos compartíos de @{name}", "account.hide_reblogs": "Esconder los artículos compartíos de @{name}",
"account.in_memoriam": "N'alcordanza.", "account.in_memoriam": "N'alcordanza.",
"account.joined_short": "Data de xunión", "account.joined_short": "Data de xunión",
@ -37,6 +42,8 @@
"account.mention": "Mentar a @{name}", "account.mention": "Mentar a @{name}",
"account.moved_to": "{name} indicó qu'agora la so cuenta nueva ye:", "account.moved_to": "{name} indicó qu'agora la so cuenta nueva ye:",
"account.mute": "Desactivar los avisos de @{name}", "account.mute": "Desactivar los avisos de @{name}",
"account.mute_notifications_short": "Silenciar avisos",
"account.mute_short": "Silenciar",
"account.no_bio": "Nun se fornió nenguna descripción.", "account.no_bio": "Nun se fornió nenguna descripción.",
"account.open_original_page": "Abrir la páxina orixinal", "account.open_original_page": "Abrir la páxina orixinal",
"account.posts": "Artículos", "account.posts": "Artículos",
@ -47,6 +54,7 @@
"account.show_reblogs": "Amosar los artículos compartíos de @{name}", "account.show_reblogs": "Amosar los artículos compartíos de @{name}",
"account.unblock": "Desbloquiar a @{name}", "account.unblock": "Desbloquiar a @{name}",
"account.unblock_domain": "Desbloquiar el dominiu «{domain}»", "account.unblock_domain": "Desbloquiar el dominiu «{domain}»",
"account.unblock_short": "Desbloquiar",
"account.unendorse": "Dexar de destacar nel perfil", "account.unendorse": "Dexar de destacar nel perfil",
"account.unfollow": "Dexar de siguir", "account.unfollow": "Dexar de siguir",
"account.unmute": "Activar los avisos de @{name}", "account.unmute": "Activar los avisos de @{name}",
@ -58,14 +66,22 @@
"alert.rate_limited.message": "Volvi tentalo dempués de la hora: {retry_time, time, medium}.", "alert.rate_limited.message": "Volvi tentalo dempués de la hora: {retry_time, time, medium}.",
"alert.unexpected.message": "Prodúxose un error inesperáu.", "alert.unexpected.message": "Prodúxose un error inesperáu.",
"alert.unexpected.title": "¡Meca!", "alert.unexpected.title": "¡Meca!",
"alt_text_badge.title": "Testu alternativu",
"announcement.announcement": "Anunciu", "announcement.announcement": "Anunciu",
"annual_report.summary.followers.followers": "siguidores",
"annual_report.summary.new_posts.new_posts": "artículos nuevos",
"attachments_list.unprocessed": "(ensin procesar)", "attachments_list.unprocessed": "(ensin procesar)",
"block_modal.show_less": "Amosar menos",
"block_modal.show_more": "Amosar más",
"bundle_column_error.error.body": "La páxina solicitada nun se pudo renderizar. Ye posible que seya pola mor d'un fallu nel códigu o por un problema de compatibilidá del restolador.", "bundle_column_error.error.body": "La páxina solicitada nun se pudo renderizar. Ye posible que seya pola mor d'un fallu nel códigu o por un problema de compatibilidá del restolador.",
"bundle_column_error.error.title": "¡Oh, non!", "bundle_column_error.error.title": "¡Oh, non!",
"bundle_column_error.network.body": "Hebo un error al tentar de cargar esta páxina. Esto pudo ser pola mor d'un problema temporal cola conexón a internet o con esti sirvidor.", "bundle_column_error.network.body": "Hebo un error al tentar de cargar esta páxina. Esto pudo ser pola mor d'un problema temporal cola conexón a internet o con esti sirvidor.",
"bundle_column_error.network.title": "Fallu de rede",
"bundle_column_error.retry": "Retentar",
"bundle_column_error.return": "Volver al aniciu", "bundle_column_error.return": "Volver al aniciu",
"bundle_column_error.routing.body": "Nun se pudo atopar la páxina solicitada. ¿De xuru que la URL de la barra de direiciones ta bien escrita?", "bundle_column_error.routing.body": "Nun se pudo atopar la páxina solicitada. ¿De xuru que la URL de la barra de direiciones ta bien escrita?",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "Zarrar",
"closed_registrations.other_server_instructions": "Darréu que Mastodon ye una rede social descentralizada, pues crear una cuenta n'otru sirvidor y siguir interactuando con esti.", "closed_registrations.other_server_instructions": "Darréu que Mastodon ye una rede social descentralizada, pues crear una cuenta n'otru sirvidor y siguir interactuando con esti.",
"closed_registrations_modal.description": "Anguaño nun ye posible crear cuentes en {domain}, mas ten en cuenta que nun precises una cuenta nesti sirvidor pa usar Mastodon.", "closed_registrations_modal.description": "Anguaño nun ye posible crear cuentes en {domain}, mas ten en cuenta que nun precises una cuenta nesti sirvidor pa usar Mastodon.",
"closed_registrations_modal.find_another_server": "Atopar otru sirvidor", "closed_registrations_modal.find_another_server": "Atopar otru sirvidor",
@ -75,8 +91,11 @@
"column.blocks": "Perfiles bloquiaos", "column.blocks": "Perfiles bloquiaos",
"column.bookmarks": "Marcadores", "column.bookmarks": "Marcadores",
"column.community": "Llinia de tiempu llocal", "column.community": "Llinia de tiempu llocal",
"column.create_list": "Crear llista",
"column.direct": "Menciones privaes", "column.direct": "Menciones privaes",
"column.domain_blocks": "Dominios bloquiaos", "column.domain_blocks": "Dominios bloquiaos",
"column.edit_list": "Editar la llista",
"column.favourites": "Favoritos",
"column.follow_requests": "Solicitúes de siguimientu", "column.follow_requests": "Solicitúes de siguimientu",
"column.home": "Aniciu", "column.home": "Aniciu",
"column.lists": "Llistes", "column.lists": "Llistes",
@ -96,6 +115,7 @@
"compose.language.change": "Camudar la llingua", "compose.language.change": "Camudar la llingua",
"compose.language.search": "Buscar llingües…", "compose.language.search": "Buscar llingües…",
"compose.published.body": "Espublizóse l'artículu.", "compose.published.body": "Espublizóse l'artículu.",
"compose.published.open": "Abrir",
"compose_form.direct_message_warning_learn_more": "Saber más", "compose_form.direct_message_warning_learn_more": "Saber más",
"compose_form.encryption_warning": "Los artículos de Mastodon nun tán cifraos de puntu a puntu. Nun compartas nengún tipu d'información sensible per Mastodon.", "compose_form.encryption_warning": "Los artículos de Mastodon nun tán cifraos de puntu a puntu. Nun compartas nengún tipu d'información sensible per Mastodon.",
"compose_form.lock_disclaimer": "La to cuenta nun ye {locked}. Cualesquier perfil pue siguite pa ver los artículos que son namás pa siguidores.", "compose_form.lock_disclaimer": "La to cuenta nun ye {locked}. Cualesquier perfil pue siguite pa ver los artículos que son namás pa siguidores.",
@ -110,6 +130,7 @@
"confirmations.delete.message": "¿De xuru que quies desaniciar esti artículu?", "confirmations.delete.message": "¿De xuru que quies desaniciar esti artículu?",
"confirmations.delete_list.confirm": "Desaniciar", "confirmations.delete_list.confirm": "Desaniciar",
"confirmations.discard_edit_media.confirm": "Escartar", "confirmations.discard_edit_media.confirm": "Escartar",
"confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "La edición va sobrescribir el mensaxe que tas escribiendo. ¿De xuru que quies siguir?", "confirmations.edit.message": "La edición va sobrescribir el mensaxe que tas escribiendo. ¿De xuru que quies siguir?",
"confirmations.logout.confirm": "Zarrar la sesión", "confirmations.logout.confirm": "Zarrar la sesión",
"confirmations.logout.message": "¿De xuru que quies zarrar la sesión?", "confirmations.logout.message": "¿De xuru que quies zarrar la sesión?",
@ -117,7 +138,9 @@
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.unfollow.confirm": "Dexar de siguir", "confirmations.unfollow.confirm": "Dexar de siguir",
"confirmations.unfollow.message": "¿De xuru que quies dexar de siguir a {name}?", "confirmations.unfollow.message": "¿De xuru que quies dexar de siguir a {name}?",
"content_warning.show_more": "Amosar más",
"conversation.delete": "Desaniciar la conversación", "conversation.delete": "Desaniciar la conversación",
"conversation.mark_as_read": "Marcar como lleíu",
"conversation.open": "Ver la conversación", "conversation.open": "Ver la conversación",
"conversation.with": "Con {names}", "conversation.with": "Con {names}",
"copypaste.copied": "Copióse", "copypaste.copied": "Copióse",
@ -126,8 +149,13 @@
"directory.local": "De «{domain}» namás", "directory.local": "De «{domain}» namás",
"directory.new_arrivals": "Cuentes nueves", "directory.new_arrivals": "Cuentes nueves",
"directory.recently_active": "Con actividá recién", "directory.recently_active": "Con actividá recién",
"disabled_account_banner.account_settings": "Axustes de la cuenta",
"dismissable_banner.community_timeline": "Esta seición contién los artículos públicos más actuales de los perfiles agospiaos nel dominiu {domain}.", "dismissable_banner.community_timeline": "Esta seición contién los artículos públicos más actuales de los perfiles agospiaos nel dominiu {domain}.",
"dismissable_banner.dismiss": "Escartar", "dismissable_banner.dismiss": "Escartar",
"domain_block_modal.block": "Bloquiar el sirvidor",
"domain_block_modal.title": "Bloquiar el dominiu?",
"domain_pill.server": "Sirvidor",
"domain_pill.username": "Nome d'usuariu",
"embed.instructions": "Empotra esti artículu nel to sitiu web copiando'l códigu d'abaxo.", "embed.instructions": "Empotra esti artículu nel to sitiu web copiando'l códigu d'abaxo.",
"embed.preview": "Va apaecer asina:", "embed.preview": "Va apaecer asina:",
"emoji_button.activity": "Actividá", "emoji_button.activity": "Actividá",
@ -192,6 +220,7 @@
"follow_suggestions.similar_to_recently_followed_longer": "Aseméyase a los perfiles que siguiesti apocayá", "follow_suggestions.similar_to_recently_followed_longer": "Aseméyase a los perfiles que siguiesti apocayá",
"follow_suggestions.view_all": "Ver too", "follow_suggestions.view_all": "Ver too",
"follow_suggestions.who_to_follow": "A quién siguir", "follow_suggestions.who_to_follow": "A quién siguir",
"followed_tags": "Etiquetes siguíes",
"footer.about": "Tocante a", "footer.about": "Tocante a",
"footer.directory": "Direutoriu de perfiles", "footer.directory": "Direutoriu de perfiles",
"footer.get_app": "Consiguir l'aplicación", "footer.get_app": "Consiguir l'aplicación",
@ -199,12 +228,16 @@
"footer.privacy_policy": "Política de privacidá", "footer.privacy_policy": "Política de privacidá",
"footer.source_code": "Ver el códigu fonte", "footer.source_code": "Ver el códigu fonte",
"footer.status": "Estáu", "footer.status": "Estáu",
"footer.terms_of_service": "Términos del serviciu",
"generic.saved": "Guardóse", "generic.saved": "Guardóse",
"getting_started.heading": "Comienzu", "getting_started.heading": "Comienzu",
"hashtag.column_header.tag_mode.all": "y {additional}", "hashtag.column_header.tag_mode.all": "y {additional}",
"hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.any": "o {additional}",
"hashtag.column_header.tag_mode.none": "ensin {additional}", "hashtag.column_header.tag_mode.none": "ensin {additional}",
"hashtag.column_settings.select.no_options_message": "Nun s'atopó nenguna suxerencia", "hashtag.column_settings.select.no_options_message": "Nun s'atopó nenguna suxerencia",
"hashtag.column_settings.tag_mode.all": "Toes estes",
"hashtag.column_settings.tag_mode.any": "Cualesquiera d'estes",
"hashtag.column_settings.tag_mode.none": "Nenguna d'estes",
"hashtag.counter_by_accounts": "{count, plural, one {{counter} participante} other {{counter} participantes}}", "hashtag.counter_by_accounts": "{count, plural, one {{counter} participante} other {{counter} participantes}}",
"hashtag.follow": "Siguir a la etiqueta", "hashtag.follow": "Siguir a la etiqueta",
"hashtag.unfollow": "Dexar de siguir a la etiqueta", "hashtag.unfollow": "Dexar de siguir a la etiqueta",
@ -212,6 +245,7 @@
"home.column_settings.show_reblogs": "Amosar los artículos compartíos", "home.column_settings.show_reblogs": "Amosar los artículos compartíos",
"home.column_settings.show_replies": "Amosar les rempuestes", "home.column_settings.show_replies": "Amosar les rempuestes",
"home.pending_critical_update.body": "¡Anueva'l sirvidor de Mastodon namás que puedas!", "home.pending_critical_update.body": "¡Anueva'l sirvidor de Mastodon namás que puedas!",
"home.show_announcements": "Amosar anuncios",
"interaction_modal.on_another_server": "N'otru sirvidor", "interaction_modal.on_another_server": "N'otru sirvidor",
"interaction_modal.on_this_server": "Nesti sirvidor", "interaction_modal.on_this_server": "Nesti sirvidor",
"interaction_modal.title.reply": "Rempuesta al artículu de: {name}", "interaction_modal.title.reply": "Rempuesta al artículu de: {name}",
@ -248,13 +282,23 @@
"keyboard_shortcuts.toot": "Comenzar un artículu nuevu", "keyboard_shortcuts.toot": "Comenzar un artículu nuevu",
"keyboard_shortcuts.unfocus": "Desenfocar l'área de composición/busca", "keyboard_shortcuts.unfocus": "Desenfocar l'área de composición/busca",
"keyboard_shortcuts.up": "Xubir na llista", "keyboard_shortcuts.up": "Xubir na llista",
"lightbox.close": "Zarrar",
"lightbox.next": "Siguiente",
"limited_account_hint.action": "Amosar el perfil de toes toes", "limited_account_hint.action": "Amosar el perfil de toes toes",
"lists.add_to_list": "Amestar a la llista",
"lists.add_to_lists": "Amestar {name} a la llista",
"lists.create_list": "Crear llista",
"lists.delete": "Desaniciar la llista", "lists.delete": "Desaniciar la llista",
"lists.edit": "Editar la llista", "lists.edit": "Editar la llista",
"lists.list_name": "Nome de la llista",
"lists.no_lists_yet": "Ensin llistes tovía.",
"lists.replies_policy.followed": "Cualesquier perfil siguíu", "lists.replies_policy.followed": "Cualesquier perfil siguíu",
"lists.replies_policy.list": "Perfiles de la llista", "lists.replies_policy.list": "Perfiles de la llista",
"lists.replies_policy.none": "Naide", "lists.replies_policy.none": "Naide",
"lists.save": "Guardar",
"lists.search": "Buscar",
"load_pending": "{count, plural, one {# elementu nuevu} other {# elementos nuevos}}", "load_pending": "{count, plural, one {# elementu nuevu} other {# elementos nuevos}}",
"loading_indicator.label": "Cargando…",
"navigation_bar.about": "Tocante a", "navigation_bar.about": "Tocante a",
"navigation_bar.blocks": "Perfiles bloquiaos", "navigation_bar.blocks": "Perfiles bloquiaos",
"navigation_bar.bookmarks": "Marcadores", "navigation_bar.bookmarks": "Marcadores",
@ -262,13 +306,17 @@
"navigation_bar.direct": "Menciones privaes", "navigation_bar.direct": "Menciones privaes",
"navigation_bar.domain_blocks": "Dominios bloquiaos", "navigation_bar.domain_blocks": "Dominios bloquiaos",
"navigation_bar.explore": "Esploración", "navigation_bar.explore": "Esploración",
"navigation_bar.favourites": "Favoritos",
"navigation_bar.filters": "Pallabres desactivaes", "navigation_bar.filters": "Pallabres desactivaes",
"navigation_bar.follow_requests": "Solicitúes de siguimientu", "navigation_bar.follow_requests": "Solicitúes de siguimientu",
"navigation_bar.followed_tags": "Etiquetes siguíes",
"navigation_bar.follows_and_followers": "Perfiles que sigues y te siguen", "navigation_bar.follows_and_followers": "Perfiles que sigues y te siguen",
"navigation_bar.lists": "Llistes", "navigation_bar.lists": "Llistes",
"navigation_bar.logout": "Zarrar la sesión", "navigation_bar.logout": "Zarrar la sesión",
"navigation_bar.moderation": "Moderación",
"navigation_bar.mutes": "Perfiles colos avisos desactivaos", "navigation_bar.mutes": "Perfiles colos avisos desactivaos",
"navigation_bar.opened_in_classic_interface": "Los artículos, les cuentes y otres páxines específiques ábrense por defeutu na interfaz web clásica.", "navigation_bar.opened_in_classic_interface": "Los artículos, les cuentes y otres páxines específiques ábrense por defeutu na interfaz web clásica.",
"navigation_bar.personal": "Personal",
"navigation_bar.pins": "Artículos fixaos", "navigation_bar.pins": "Artículos fixaos",
"navigation_bar.preferences": "Preferencies", "navigation_bar.preferences": "Preferencies",
"navigation_bar.public_timeline": "Llinia de tiempu federada", "navigation_bar.public_timeline": "Llinia de tiempu federada",
@ -278,12 +326,19 @@
"notification.admin.sign_up": "{name} rexistróse", "notification.admin.sign_up": "{name} rexistróse",
"notification.follow": "{name} siguióte", "notification.follow": "{name} siguióte",
"notification.follow_request": "{name} solicitó siguite", "notification.follow_request": "{name} solicitó siguite",
"notification.mentioned_you": "{name} mentóte",
"notification.moderation-warning.learn_more": "Deprender más",
"notification.poll": "Finó una encuesta na que votesti",
"notification.reblog": "{name} compartió'l to artículu", "notification.reblog": "{name} compartió'l to artículu",
"notification.status": "{name} ta acabante d'espublizar", "notification.status": "{name} ta acabante d'espublizar",
"notification.update": "{name} editó un artículu", "notification.update": "{name} editó un artículu",
"notification_requests.edit_selection": "Editar",
"notification_requests.exit_selection": "Fecho",
"notifications.clear": "Borrar los avisos", "notifications.clear": "Borrar los avisos",
"notifications.column_settings.admin.report": "Informes nuevos:", "notifications.column_settings.admin.report": "Informes nuevos:",
"notifications.column_settings.admin.sign_up": "Rexistros nuevos:", "notifications.column_settings.admin.sign_up": "Rexistros nuevos:",
"notifications.column_settings.favourite": "Favoritos:",
"notifications.column_settings.filter_bar.advanced": "Amosar toles categoríes",
"notifications.column_settings.follow": "Siguidores nuevos:", "notifications.column_settings.follow": "Siguidores nuevos:",
"notifications.column_settings.follow_request": "Solicitúes de siguimientu nueves:", "notifications.column_settings.follow_request": "Solicitúes de siguimientu nueves:",
"notifications.column_settings.group": "Agrupar", "notifications.column_settings.group": "Agrupar",
@ -296,10 +351,14 @@
"notifications.column_settings.unread_notifications.category": "Avisos ensin lleer", "notifications.column_settings.unread_notifications.category": "Avisos ensin lleer",
"notifications.column_settings.unread_notifications.highlight": "Rescamplar los avisos ensin lleer", "notifications.column_settings.unread_notifications.highlight": "Rescamplar los avisos ensin lleer",
"notifications.column_settings.update": "Ediciones:", "notifications.column_settings.update": "Ediciones:",
"notifications.filter.all": "Too",
"notifications.filter.favourites": "Favoritos",
"notifications.filter.mentions": "Menciones", "notifications.filter.mentions": "Menciones",
"notifications.filter.polls": "Resultaos de la encuesta",
"notifications.group": "{count} avisos", "notifications.group": "{count} avisos",
"notifications.mark_as_read": "Marcar tolos avisos como lleíos", "notifications.mark_as_read": "Marcar tolos avisos como lleíos",
"notifications.permission_required": "Los avisos d'escritoriu nun tán disponibles porque nun se concedió'l permisu riquíu.", "notifications.permission_required": "Los avisos d'escritoriu nun tán disponibles porque nun se concedió'l permisu riquíu.",
"onboarding.profile.note": "Biografía",
"onboarding.profile.note_hint": "Pues @mentar a otros perfiles o poner #etiquetes…", "onboarding.profile.note_hint": "Pues @mentar a otros perfiles o poner #etiquetes…",
"password_confirmation.exceeds_maxlength": "La contraseña de confirmación supera la llongura de caráuteres máxima", "password_confirmation.exceeds_maxlength": "La contraseña de confirmación supera la llongura de caráuteres máxima",
"password_confirmation.mismatching": "La contraseña de confirmación nun concasa", "password_confirmation.mismatching": "La contraseña de confirmación nun concasa",
@ -330,7 +389,9 @@
"relative_time.seconds": "{number} s", "relative_time.seconds": "{number} s",
"relative_time.today": "güei", "relative_time.today": "güei",
"reply_indicator.cancel": "Encaboxar", "reply_indicator.cancel": "Encaboxar",
"reply_indicator.poll": "Encuesta",
"report.block": "Bloquiar", "report.block": "Bloquiar",
"report.categories.legal": "Llegal",
"report.categories.spam": "Spam", "report.categories.spam": "Spam",
"report.categories.violation": "El conteníu incumple una o más normes del sirvidor", "report.categories.violation": "El conteníu incumple una o más normes del sirvidor",
"report.category.subtitle": "Escueyi la meyor opción", "report.category.subtitle": "Escueyi la meyor opción",
@ -346,6 +407,7 @@
"report.placeholder": "Comentarios adicionales", "report.placeholder": "Comentarios adicionales",
"report.reasons.dislike": "Nun me presta", "report.reasons.dislike": "Nun me presta",
"report.reasons.dislike_description": "Nun ye daqué que quiera ver", "report.reasons.dislike_description": "Nun ye daqué que quiera ver",
"report.reasons.legal": "Ye illegal",
"report.reasons.other": "Ye daqué más", "report.reasons.other": "Ye daqué más",
"report.reasons.other_description": "La incidencia nun s'axusta a les demás categoríes", "report.reasons.other_description": "La incidencia nun s'axusta a les demás categoríes",
"report.reasons.spam": "Ye spam", "report.reasons.spam": "Ye spam",
@ -365,7 +427,10 @@
"report.unfollow": "Dexar de siguir a @{name}", "report.unfollow": "Dexar de siguir a @{name}",
"report.unfollow_explanation": "Sigues a esta cuenta. Pa dexar de ver los sos artículos nel to feed d'aniciu, dexa de siguila.", "report.unfollow_explanation": "Sigues a esta cuenta. Pa dexar de ver los sos artículos nel to feed d'aniciu, dexa de siguila.",
"report_notification.attached_statuses": "{count, plural, one {Axuntóse {count} artículu} other {Axuntáronse {count} artículos}}", "report_notification.attached_statuses": "{count, plural, one {Axuntóse {count} artículu} other {Axuntáronse {count} artículos}}",
"report_notification.categories.legal": "Llegal",
"report_notification.categories.legal_sentence": "conteníu illegal", "report_notification.categories.legal_sentence": "conteníu illegal",
"report_notification.categories.spam": "Spam",
"report_notification.categories.spam_sentence": "spam",
"report_notification.open": "Abrir l'informe", "report_notification.open": "Abrir l'informe",
"search.no_recent_searches": "Nun hai nenguna busca recién", "search.no_recent_searches": "Nun hai nenguna busca recién",
"search.placeholder": "Buscar", "search.placeholder": "Buscar",
@ -417,6 +482,7 @@
"status.reblogged_by": "{name} compartió", "status.reblogged_by": "{name} compartió",
"status.reblogs.empty": "Naide nun compartió esti artículu. Cuando daquién lo faiga, apaez equí.", "status.reblogs.empty": "Naide nun compartió esti artículu. Cuando daquién lo faiga, apaez equí.",
"status.redraft": "Desaniciar y reeditar", "status.redraft": "Desaniciar y reeditar",
"status.remove_bookmark": "Desaniciar el marcador",
"status.replied_to": "En rempuesta a {name}", "status.replied_to": "En rempuesta a {name}",
"status.reply": "Responder", "status.reply": "Responder",
"status.replyAll": "Responder al filu", "status.replyAll": "Responder al filu",
@ -429,8 +495,10 @@
"status.uncached_media_warning": "La previsualización nun ta disponible", "status.uncached_media_warning": "La previsualización nun ta disponible",
"status.unmute_conversation": "Activar los avisos de la conversación", "status.unmute_conversation": "Activar los avisos de la conversación",
"status.unpin": "Lliberar del perfil", "status.unpin": "Lliberar del perfil",
"subscribed_languages.save": "Guardar los cambeos",
"tabs_bar.home": "Aniciu", "tabs_bar.home": "Aniciu",
"tabs_bar.notifications": "Avisos", "tabs_bar.notifications": "Avisos",
"terms_of_service.title": "Términos del serviciu",
"time_remaining.days": "{number, plural, one {Queda # día} other {Queden # díes}}", "time_remaining.days": "{number, plural, one {Queda # día} other {Queden # díes}}",
"time_remaining.hours": "{number, plural, one {Queda # hora} other {Queden # hores}}", "time_remaining.hours": "{number, plural, one {Queda # hora} other {Queden # hores}}",
"time_remaining.minutes": "{number, plural, one {Queda # minutu} other {Queden # minutos}}", "time_remaining.minutes": "{number, plural, one {Queda # minutu} other {Queden # minutos}}",
@ -441,6 +509,7 @@
"units.short.billion": "{count} MM", "units.short.billion": "{count} MM",
"units.short.million": "{count} M", "units.short.million": "{count} M",
"units.short.thousand": "{count} mil", "units.short.thousand": "{count} mil",
"upload_area.title": "Arrastra y suelta pa xubir",
"upload_button.label": "Amestar ficheros multimedia", "upload_button.label": "Amestar ficheros multimedia",
"upload_error.poll": "La xuba de ficheros nun ta permitida coles encuestes.", "upload_error.poll": "La xuba de ficheros nun ta permitida coles encuestes.",
"upload_form.audio_description": "Describi'l conteníu pa persones sordes y/o ciegues", "upload_form.audio_description": "Describi'l conteníu pa persones sordes y/o ciegues",
@ -455,6 +524,7 @@
"upload_progress.processing": "Procesando…", "upload_progress.processing": "Procesando…",
"video.close": "Zarrar el videu", "video.close": "Zarrar el videu",
"video.download": "Baxar el ficheru", "video.download": "Baxar el ficheru",
"video.exit_fullscreen": "Colar de la pantalla completa",
"video.expand": "Espander el videu", "video.expand": "Espander el videu",
"video.fullscreen": "Pantalla completa", "video.fullscreen": "Pantalla completa",
"video.hide": "Esconder el videu", "video.hide": "Esconder el videu",

View file

@ -1 +1,246 @@
{} {
"about.blocks": "Moderasiya olunan serverlər",
"about.contact": "Əlaqə:",
"about.disclaimer": "Mastodon pulsuz, açıq-mənbəli proqram təminatıdır və Mastodon gGmbH-nin əmtəə nişanıdır.",
"about.domain_blocks.no_reason_available": "Səbəb naməlumdur",
"about.domain_blocks.preamble": "Mastodon adətən fediversedəki hər hansısa bir serverdən olan məzmuna baxmaq və istifadəçilərlə qarşılıqlı əlaqədə olmaq imkanı verir. Bunlar bu serverdə edilmiş istisnalardır.",
"about.domain_blocks.silenced.explanation": "Siz bu serverdəki profilləri və məzmunu xüsusi olaraq axtarmasanız və ya izləməsəniz ümumiyyətlə görməyəcəksiniz.",
"about.domain_blocks.silenced.title": "Məhdudlaşdırılmış",
"about.domain_blocks.suspended.explanation": "Bu serverdən heç bir data emal edilməyəcək, saxlanılmayacaq və ya mübadilə edilməyəcək və bu serverdən olan istifadəçilərlə hər hansı qarşılıqlı əlaqə qeyri-mümkün olacaq.",
"about.domain_blocks.suspended.title": "Qadağa qoyulub",
"about.not_available": "Bu məlumat bu serverdə əlçatan edilməyib.",
"about.powered_by": "{mastodon} tərəfindən təchiz edilən desentralizasiya edilmiş sosial media",
"about.rules": "Server qaydaları",
"account.account_note_header": "Şəxsi qeyd",
"account.add_or_remove_from_list": "Siyahılara əlavə et və ya sil",
"account.badges.bot": "Avtomatlaşdırılmış",
"account.badges.group": "Qrup",
"account.block": "@{name} istifadəçisini blokla",
"account.block_domain": "{domain} domenini blokla",
"account.block_short": "Blok",
"account.blocked": "Bloklanıb",
"account.cancel_follow_request": "İzləməni ləğv et",
"account.copy": "Profil linkini kopyala",
"account.direct": "@{name} istifadəçisini fərdi olaraq etiketlə",
"account.disable_notifications": "@{name} paylaşım edəndə mənə bildiriş göndərməyi dayandır",
"account.domain_blocked": "Domen bloklanıb",
"account.edit_profile": "Profili redaktə et",
"account.enable_notifications": "@{name} paylaşım edəndə mənə bildiriş göndər",
"account.endorse": "Profildə seçilmişlərə əlavə et",
"account.featured_tags.last_status_at": "Son paylaşım {date} tarixində olub",
"account.featured_tags.last_status_never": "Paylaşım yoxdur",
"account.featured_tags.title": "{name} istifadəçisinin seçilmiş heşteqləri",
"account.follow": "İzlə",
"account.follow_back": "Sən də izlə",
"account.followers": "İzləyicilər",
"account.followers.empty": "Bu istifadəçini hələ ki, heç kim izləmir.",
"account.followers_counter": "{count, plural, one {{counter} izləyici} other {{counter} izləyici}}",
"account.following": "İzləyir",
"account.following_counter": "{count, plural, one {{counter} izləyir} other {{counter} izləyir}}",
"account.follows.empty": "Bu istifadəçi hələ ki, heç kimi izləmir.",
"account.go_to_profile": "Profilə get",
"account.hide_reblogs": "@{name} istifadəçisindən olan gücləndirmələri gizlət",
"account.in_memoriam": "Xatirə.",
"account.joined_short": "Qoşulub",
"account.languages": "Abunə olunmuş dilləri dəyiş",
"account.link_verified_on": "Bu linkin dəqiqliyi {date} tarixində yoxlanılıb",
"account.locked_info": "Bu hesabın məxfilik statusu kilidlənib. Hesabın sahibi onu kimin izləyə biləcəyini manual olaraq təyin edir.",
"account.media": "Media",
"account.mention": "@{name} istifadəçisini teq et",
"account.moved_to": "{name} onun yeni hesabının artıq bu olduğunu bildirdi:",
"account.mute": "@{name} istifadəçisini susdur",
"account.mute_notifications_short": "Bildirişləri səssizləşdir",
"account.mute_short": "Səssizləşdir",
"account.muted": "Səssizləşdirilib",
"account.mutual": "Ortaq",
"account.no_bio": "Təsvir göstərilməyib.",
"account.open_original_page": "Orijinal səhifəni aç",
"account.posts": "Paylaşım",
"account.posts_with_replies": "Paylaşım və cavablar",
"account.report": "@{name} istifadəçisini şikayət et",
"account.requested": "Təsdiq edilməsi gözlənilir. İzləmə sorğusunu ləğv etmək üçün kliklə",
"account.requested_follow": "{name} sizi izləmək sorğusu göndərib",
"account.share": "@{name} profilini paylaş",
"account.show_reblogs": "@{name} istifadəçisindən olan gücləndirmələri göstər",
"account.statuses_counter": "{count, plural, one {{counter} paylaşım} other {{counter} paylaşım}}",
"account.unblock": "@{name} blokunu aç",
"account.unblock_domain": "{domain} domeninin blokunu aç",
"account.unblock_short": "Bloku aç",
"account.unendorse": "Profildə seçilmişlərə əlavə etmə",
"account.unfollow": "İzləmədən çıxar",
"account.unmute": "@{name} səssizləşdirmədən çıxart",
"account.unmute_notifications_short": "Bildirişlərin səsini aç",
"account.unmute_short": "Səssizləşdirmədən çıxart",
"account_note.placeholder": "Qeyd əlavə etmək üçün kliklə",
"admin.dashboard.daily_retention": "Qeydiyyatdan sonrakı günə görə istifadəçi qalma dərəcəsi",
"admin.dashboard.monthly_retention": "Qeydiyyatdan sonrakı aya görə istifadəçi qalma dərəcəsi",
"admin.dashboard.retention.average": "Orta",
"admin.dashboard.retention.cohort": "Qeydiyyatdan keçmə ayı",
"admin.dashboard.retention.cohort_size": "Yeni istifadəçilər",
"admin.impact_report.instance_accounts": "Bunun siləcəyi istifadəçi hesabları",
"admin.impact_report.instance_followers": "İstifadəçilərimizin itirəcəyi izləyici sayı",
"admin.impact_report.instance_follows": "Onların istifadəçilərinin itirəcəyi izləyici sayı",
"admin.impact_report.title": "Təsirin xülasəsi",
"alert.rate_limited.message": "Zəhmət olmasa, {retry_time, time, medium} sonra yenidən cəhd edin.",
"alert.rate_limited.title": "Sürət limiti",
"alert.unexpected.message": "Bilinməyən bir xəta baş verdi.",
"alert.unexpected.title": "Ah!",
"alt_text_badge.title": "Alternativ mətn",
"announcement.announcement": "Elan",
"annual_report.summary.archetype.booster": "Trend ovçusu",
"annual_report.summary.archetype.lurker": "Lurker",
"annual_report.summary.archetype.oracle": "Orakl",
"annual_report.summary.archetype.pollster": "Sorğu ustası",
"annual_report.summary.archetype.replier": "Sosial kəpənək",
"annual_report.summary.followers.followers": "izləyici",
"annual_report.summary.followers.total": "Cəmi {count}",
"annual_report.summary.here_it_is": "{year} icmalınız:",
"annual_report.summary.highlighted_post.by_favourites": "ən çox sevilən postu",
"annual_report.summary.highlighted_post.by_reblogs": "ən çox gücləndirilən paylaşımı",
"annual_report.summary.highlighted_post.by_replies": "ən çox cavabı olan paylaşımı",
"annual_report.summary.highlighted_post.possessive": "{name} istifadəçisinin",
"annual_report.summary.most_used_app.most_used_app": "ən çox istifadə etdiyi tətbiq",
"annual_report.summary.most_used_hashtag.most_used_hashtag": "ən çox istifadə etdiyi heşteq",
"annual_report.summary.most_used_hashtag.none": "Yoxdur",
"annual_report.summary.new_posts.new_posts": "yeni paylaşım",
"annual_report.summary.percentile.text": "<topLabel>Bu sizi {domain} istifadəçilərinin ilk</topLabel><percentage></percentage><bottomLabel>qoyur.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Bunu Berniyə deməyəcəyik.",
"annual_report.summary.thanks": "Mastodonun bir parçası olduğunuz üçün təşəkkür edirik!",
"attachments_list.unprocessed": "(emal edilməyib)",
"audio.hide": "Audionu gizlət",
"block_modal.remote_users_caveat": "Biz {domain} serverindən qərarınıza hörmət etməsini xahiş edəcəyik. Bununla belə, bəzi serverlər blokları fərqli şəkildə idarə edə bildiyi üçün uyğunluğa zəmanət verilmir. İctimai paylaşımlar hələ də daxil olmayan istifadəçilərə görünə bilər.",
"block_modal.show_less": "Daha az göstər",
"block_modal.show_more": "Daha çox göstər",
"block_modal.they_cant_mention": "O səni teq edə bilməz və ya izləyə bilməz.",
"block_modal.they_cant_see_posts": "O sənin paylaşımlarını görməyəcək, sən də onun paylaşımlarını görməyəcəksən.",
"block_modal.they_will_know": "O sənin onu blokladığını görə biləcək.",
"block_modal.title": "İstifadəçi bloklansın?",
"block_modal.you_wont_see_mentions": "Onu teq edən postları görməyəcəksən.",
"boost_modal.combo": "Növbəti dəfə bunu atlamaq üçün {combo} klikləyə bilərsən",
"boost_modal.reblog": "Paylaşım gücləndirilsin?",
"boost_modal.undo_reblog": "Paylaşımın gücləndirilməsi ləğv edilsin?",
"bundle_column_error.copy_stacktrace": "Xəta hesabatını kopyala",
"bundle_column_error.error.body": "Tələb olunan səhifəni göstərmək mümkün olmadı. Bu, kodumuzdakı səhv və ya brauzer uyğunluğu problemi ilə bağlı ola bilər.",
"bundle_column_error.error.title": "Ah, yox!",
"bundle_column_error.network.body": "Bu səhifəni yükləməyə çalışarkən xəta baş verdi. Bu, internet bağlantınız və ya bu serverlə bağlı müvəqqəti problemlə əlaqədar ola bilər.",
"bundle_column_error.network.title": "Şəbəkə xətası",
"bundle_column_error.retry": "Yenidən cəhd et",
"bundle_column_error.return": "Ana səhifəyə qayıt",
"bundle_column_error.routing.body": "Tələb olunan səhifəni tapmaq mümkün olmadı. Ünvan çubuğundakı URL-nin düzgün olduğuna əminsiniz?",
"bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "Bağla",
"bundle_modal_error.message": "Bu ekranı yükləyərkən xəta baş verdi.",
"bundle_modal_error.retry": "Yenidən cəhd et",
"closed_registrations.other_server_instructions": "Mastodon desentralizasiya edilmiş olduğu üçün başqa bir serverdə hesab yarada və hələ də bu serverdən istifadə edə bilərsiniz.",
"closed_registrations_modal.description": "{domain} serverində hesab yaratmaq hazırda mümkün deyil, lakin nəzərə alın ki, Mastodondan istifadə etmək üçün xüsusi olaraq {domain} serverində hesaba ehtiyacınız yoxdur.",
"closed_registrations_modal.find_another_server": "Başqa server tap",
"closed_registrations_modal.preamble": "Mastodon desentralizasiya edilib, ona görə də hesabınızı harada yaratmağınızdan asılı olmayaraq, siz bu serverdə hər kəsi izləyə və onunla əlaqə saxlaya biləcəksiniz. Siz hətta özünüz server aça bilərsiniz!",
"closed_registrations_modal.title": "Mastodonda qeydiyyatdan keçmək",
"column.about": "Haqqında",
"column.blocks": "Bloklanmış istifadəçilər",
"column.bookmarks": "Əlfəcinlər",
"column.community": "Lokal zaman qrafiki",
"column.create_list": "Siyahı yarat",
"column.direct": "Fərdi teqlər",
"column.directory": "Profillər arasında gəz",
"column.domain_blocks": "Bloklanmış domenlər",
"column.edit_list": "Siyahını redaktə et",
"column.favourites": "Sevimlilər",
"column.firehose": "Canlı lentlər",
"column.follow_requests": "İzləyici sorğuları",
"column.home": "Ana səhifə",
"column.list_members": "Siyahı üzvlərini idarə et",
"column.lists": "Siyahılar",
"column.mutes": "Səssizləşdirilmiş istifadəçilər",
"column.notifications": "Bildirişlər",
"column.pins": "Bərkidilmiş paylaşımlar",
"column.public": "Federasiya zaman qrafiki",
"column_back_button.label": "Geriyə",
"column_header.hide_settings": "Parametrləri gizlət",
"column_header.moveLeft_settings": "Sütunu sola köçür",
"column_header.moveRight_settings": "Sütunu sağa köçür",
"column_header.pin": "Bərkit",
"column_header.show_settings": "Parametrləri göstər",
"column_header.unpin": "Bərkitmə",
"column_search.cancel": "İmtina",
"column_subheading.settings": "Parametrlər",
"community.column_settings.local_only": "Sadəcə lokalda",
"community.column_settings.media_only": "Sadəcə media",
"community.column_settings.remote_only": "Sadəcə uzaq serverlər",
"compose.language.change": "Dili dəyiş",
"compose.language.search": "Dil axtar...",
"compose.published.body": "Paylaşıldı.",
"compose.published.open": "Bax",
"compose.saved.body": "Paylaşım yadda saxlandı.",
"compose_form.direct_message_warning_learn_more": "Ətraflı öyrən",
"compose_form.encryption_warning": "Mastodondakı paylaşımlar ucdan-uca şifrələnmir. Mastodonda heç bir həssas məlumat paylaşmayın.",
"compose_form.hashtag_warning": "Bu yazı ictimai olmadığı üçün heç bir heşteqdə göstərilməyəcək. Yalnız açıq yazılar heşteq ilə axtarıla bilər.",
"compose_form.lock_disclaimer": "Hesabınız {locked} deyil. Sadəcə izləyicilər üçün paylaşımlarınıza baxmaq üçün hər kəs sizi izləyə bilər.",
"compose_form.lock_disclaimer.lock": "kilidli",
"compose_form.placeholder": "Ağlınızdan nə keçir?",
"compose_form.poll.duration": "Sorğunun müddəti",
"compose_form.poll.multiple": "Çoxlu cavab",
"compose_form.poll.option_placeholder": "Seçim {number}",
"compose_form.poll.single": "Tək cavab",
"compose_form.poll.switch_to_multiple": "Çoxsaylı cavablara icazə vermək üçün sorğunu redaktə et",
"compose_form.poll.switch_to_single": "Tək cavaba icazə vermək üçün sorğunu redaktə et",
"compose_form.poll.type": "Stil",
"compose_form.publish": "Paylaş",
"compose_form.publish_form": "Yeni paylaşım",
"compose_form.reply": "Cavabla",
"compose_form.save_changes": "Yenilə",
"compose_form.spoiler.marked": "Məzmun xəbərdarlığını sil",
"compose_form.spoiler.unmarked": "Məzmun xəbərdarlığı əlavə et",
"compose_form.spoiler_placeholder": "Məzmun xəbərdarlığı (məcburi deyil)",
"confirmation_modal.cancel": "İmtina",
"confirmations.block.confirm": "Blokla",
"confirmations.delete.confirm": "Sil",
"confirmations.delete.message": "Bu paylaşımı silmək istədiyinizə əminsiniz?",
"confirmations.delete.title": "Paylaşım silinsin?",
"confirmations.delete_list.confirm": "Sil",
"confirmations.delete_list.message": "Bu siyahını həmişəlik silmək istədiyinizə əminsiniz?",
"confirmations.delete_list.title": "Siyahı silinsin?",
"confirmations.discard_edit_media.confirm": "Ləğv et",
"confirmations.discard_edit_media.message": "Media təsvirində və ya önizləmədə yadda saxlanmamış dəyişiklikləriniz var, ləğv edilsin?",
"confirmations.edit.confirm": "Redaktə et",
"confirmations.edit.message": "Redaktə etmək hazırda tərtib etdiyiniz mesajın üzərinə yazacaq. Davam etmək istədiyinizə əminsiniz?",
"confirmations.edit.title": "Paylaşım yenidə yazılsın?",
"confirmations.follow_to_list.confirm": "İzlə və siyahıya əlavə et",
"confirmations.follow_to_list.message": "{name} istifadəçisini siyahıya əlavə etmək üçün onu izləməlisiniz.",
"confirmations.follow_to_list.title": "İstifadəçini izlə?",
"confirmations.logout.confirm": ıxış et",
"confirmations.logout.message": ıxmaq istədiyinizə əminsiniz?",
"confirmations.logout.title": ıxış edilsin?",
"confirmations.mute.confirm": "Səssizləşdir",
"confirmations.redraft.confirm": "Sil və qaralamaya köçür",
"confirmations.redraft.message": "Bu paylaşımı silmək və qaralamaya köçürmək istədiyinizə əminsiniz? Bəyənmələr və gücləndirmələr itəcək və orijinal paylaşıma olan cavablar tənha qalacaq.",
"confirmations.redraft.title": "Paylaşım silinsin & qaralamaya köçürülsün?",
"confirmations.reply.confirm": "Cavabla",
"confirmations.reply.message": "İndi cavab vermək hal-hazırda yazdığınız mesajın üzərinə yazacaq. Davam etmək istədiyinizə əminsiniz?",
"confirmations.reply.title": "Paylaşım yenidən yazılsın?",
"confirmations.unfollow.confirm": "İzləmədən çıxar",
"confirmations.unfollow.message": "{name} izləmədən çıxmaq istədiyinizə əminsiniz?",
"confirmations.unfollow.title": "İstifadəçi izləmədən çıxarılsın?",
"content_warning.hide": "Paylaşımı gizlət",
"content_warning.show": "Yenə də göstər",
"content_warning.show_more": "Daha çox göstər",
"conversation.delete": "Söhbəti sil",
"conversation.mark_as_read": "Oxunmuş kimi qeyd et",
"conversation.open": "Söhbətə bax",
"conversation.with": "{names} ilə",
"copy_icon_button.copied": "Mübadilə buferinə köçürüldü",
"copypaste.copied": "Kopyalandı",
"copypaste.copy_to_clipboard": "Kopyala",
"directory.federated": "Bilinən fediversedən",
"directory.local": "Sadəcə {domain}",
"directory.new_arrivals": "Yeni gələnlər",
"directory.recently_active": "Bayaq aktiv olanlar",
"disabled_account_banner.account_settings": "Hesab parametrləri",
"disabled_account_banner.text": "Sizin hesabınız {disabledAccount} hal-hazırda deaktiv edilib.",
"dismissable_banner.community_timeline": "Bunlar, hesabları {domain} serverində yerləşən insanların ən son ictimai paylaşımlarıdır.",
"dismissable_banner.dismiss": "Bağla",
"dismissable_banner.explore_links": "Bu xəbərlər bu gün fediversedə ən çox paylaşılır. Daha fərqli insanlar tərəfindən dərc edilən daha yeni xəbərlər daha yuxarıda sıralanır.",
"dismissable_banner.explore_statuses": "Fediversedən olan bu paylaşımlar bu gün maraq qazanır. Daha çox gücləndirici və bəyənmə olan daha yeni paylaşımlar daha yuxarıda sıralanır.",
"domain_block_modal.block_account_instead": "@{name} istifadəçisini blokla",
"domain_block_modal.they_can_interact_with_old_posts": "Bu serverdən olan insanlar köhnə paylaşımlarınızla əlaqə qura bilər."
}

View file

@ -87,6 +87,25 @@
"alert.unexpected.title": "Вой!", "alert.unexpected.title": "Вой!",
"alt_text_badge.title": "Альтэрнатыўны тэкст", "alt_text_badge.title": "Альтэрнатыўны тэкст",
"announcement.announcement": "Аб'ява", "announcement.announcement": "Аб'ява",
"annual_report.summary.archetype.booster": "Трэнда-сьледнік",
"annual_report.summary.archetype.lurker": "Назіральнік",
"annual_report.summary.archetype.oracle": "Аракул",
"annual_report.summary.archetype.pollster": "Апытвальнік",
"annual_report.summary.archetype.replier": "Душа кампанійі",
"annual_report.summary.followers.followers": "падпісанты",
"annual_report.summary.followers.total": "Усяго {count}",
"annual_report.summary.here_it_is": "Вось вашыя вынікі {year} году:",
"annual_report.summary.highlighted_post.by_favourites": "самы ўпадабаны допіс",
"annual_report.summary.highlighted_post.by_reblogs": "самы пашыраны допіс",
"annual_report.summary.highlighted_post.by_replies": "самы каментаваны допіс",
"annual_report.summary.highlighted_post.possessive": "{name}",
"annual_report.summary.most_used_app.most_used_app": "самая выкарыстоўваная аплікацыя",
"annual_report.summary.most_used_hashtag.most_used_hashtag": "самы выкарыстоўваны гэштаґ",
"annual_report.summary.most_used_hashtag.none": "Няма",
"annual_report.summary.new_posts.new_posts": "новыя допісы",
"annual_report.summary.percentile.text": "<topLabel>Мэта месьціць вас у топ</topLabel><percentage></percentage><bottomLabel> карыстальнікаў {domain}.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Мы ня скажам аб гэтым Сіняпальцаму.",
"annual_report.summary.thanks": "Дзякуй за ўдзел у Mastodon!",
"attachments_list.unprocessed": "(неапрацаваны)", "attachments_list.unprocessed": "(неапрацаваны)",
"audio.hide": "Схаваць аўдыя", "audio.hide": "Схаваць аўдыя",
"block_modal.remote_users_caveat": "Мы папросім сервер {domain} паважаць ваш выбар. Аднак гэта не гарантуецца, паколькі некаторыя серверы могуць апрацоўваць блакіроўкі іншым чынам. Публічныя паведамленні могуць заставацца бачнымі для ананімных карыстальнікаў.", "block_modal.remote_users_caveat": "Мы папросім сервер {domain} паважаць ваш выбар. Аднак гэта не гарантуецца, паколькі некаторыя серверы могуць апрацоўваць блакіроўкі іншым чынам. Публічныя паведамленні могуць заставацца бачнымі для ананімных карыстальнікаў.",
@ -110,6 +129,7 @@
"bundle_column_error.routing.body": "Запытаная старонка не знойдзена. Вы ўпэўнены, што URL у адрасным радку правільны?", "bundle_column_error.routing.body": "Запытаная старонка не знойдзена. Вы ўпэўнены, што URL у адрасным радку правільны?",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "Закрыць", "bundle_modal_error.close": "Закрыць",
"bundle_modal_error.message": "Падчас загрузкі гэтага экрана штосьці пайшло ня так.",
"bundle_modal_error.retry": "Паспрабуйце зноў", "bundle_modal_error.retry": "Паспрабуйце зноў",
"closed_registrations.other_server_instructions": "Паколькі Mastodon дэцэнтралізаваны, вы можаце стварыць уліковы запіс на іншым серверы і працягваць узаемадзейнічаць з ім.", "closed_registrations.other_server_instructions": "Паколькі Mastodon дэцэнтралізаваны, вы можаце стварыць уліковы запіс на іншым серверы і працягваць узаемадзейнічаць з ім.",
"closed_registrations_modal.description": "Стварэнне ўліковага запісу на {domain} цяпер немагчыма. Заўважце, што няма неабходнасці мець уліковы запіс менавіта на {domain}, каб выкарыстоўваць Mastodon.", "closed_registrations_modal.description": "Стварэнне ўліковага запісу на {domain} цяпер немагчыма. Заўважце, што няма неабходнасці мець уліковы запіс менавіта на {domain}, каб выкарыстоўваць Mastodon.",
@ -120,13 +140,16 @@
"column.blocks": "Заблакіраваныя карыстальнікі", "column.blocks": "Заблакіраваныя карыстальнікі",
"column.bookmarks": "Закладкі", "column.bookmarks": "Закладкі",
"column.community": "Лакальная стужка", "column.community": "Лакальная стужка",
"column.create_list": "Стварыць сьпіс",
"column.direct": "Асабістыя згадванні", "column.direct": "Асабістыя згадванні",
"column.directory": "Праглядзець профілі", "column.directory": "Праглядзець профілі",
"column.domain_blocks": "Заблакіраваныя дамены", "column.domain_blocks": "Заблакіраваныя дамены",
"column.edit_list": "Рэдагаваць сьпіс",
"column.favourites": "Упадабанае", "column.favourites": "Упадабанае",
"column.firehose": "Стужкі", "column.firehose": "Стужкі",
"column.follow_requests": "Запыты на падпіску", "column.follow_requests": "Запыты на падпіску",
"column.home": "Галоўная", "column.home": "Галоўная",
"column.list_members": "Кіраваньне карыстальнікамі сьпіса",
"column.lists": "Спісы", "column.lists": "Спісы",
"column.mutes": "Ігнараваныя карыстальнікі", "column.mutes": "Ігнараваныя карыстальнікі",
"column.notifications": "Апавяшчэнні", "column.notifications": "Апавяшчэнні",
@ -139,6 +162,7 @@
"column_header.pin": "Замацаваць", "column_header.pin": "Замацаваць",
"column_header.show_settings": "Паказаць налады", "column_header.show_settings": "Паказаць налады",
"column_header.unpin": "Адмацаваць", "column_header.unpin": "Адмацаваць",
"column_search.cancel": "Скасаваць",
"column_subheading.settings": "Налады", "column_subheading.settings": "Налады",
"community.column_settings.local_only": "Толькі лакальныя", "community.column_settings.local_only": "Толькі лакальныя",
"community.column_settings.media_only": "Толькі медыя", "community.column_settings.media_only": "Толькі медыя",
@ -181,6 +205,9 @@
"confirmations.edit.confirm": "Рэдагаваць", "confirmations.edit.confirm": "Рэдагаваць",
"confirmations.edit.message": "Калі вы зменіце зараз, гэта ператрэ паведамленне, якое вы пішаце. Вы ўпэўнены, што хочаце працягнуць?", "confirmations.edit.message": "Калі вы зменіце зараз, гэта ператрэ паведамленне, якое вы пішаце. Вы ўпэўнены, што хочаце працягнуць?",
"confirmations.edit.title": "Замяніць допіс?", "confirmations.edit.title": "Замяніць допіс?",
"confirmations.follow_to_list.confirm": "Падпісацца й дадаць у сьпіс",
"confirmations.follow_to_list.message": "Вы мусіце быць падпісаныя на {name} каб дадаць яго ў сьпіс.",
"confirmations.follow_to_list.title": "Падпісацца на карыстальніка?",
"confirmations.logout.confirm": "Выйсці", "confirmations.logout.confirm": "Выйсці",
"confirmations.logout.message": "Вы ўпэўненыя, што хочаце выйсці?", "confirmations.logout.message": "Вы ўпэўненыя, што хочаце выйсці?",
"confirmations.logout.title": "Выйсці?", "confirmations.logout.title": "Выйсці?",
@ -212,6 +239,10 @@
"disabled_account_banner.text": "Ваш уліковы запіс {disabledAccount} часова адключаны.", "disabled_account_banner.text": "Ваш уліковы запіс {disabledAccount} часова адключаны.",
"dismissable_banner.community_timeline": "Гэта самыя апошнія допісы ад людзей, уліковыя запісы якіх размяшчаюцца на {domain}.", "dismissable_banner.community_timeline": "Гэта самыя апошнія допісы ад людзей, уліковыя запісы якіх размяшчаюцца на {domain}.",
"dismissable_banner.dismiss": "Адхіліць", "dismissable_banner.dismiss": "Адхіліць",
"dismissable_banner.explore_links": "Аб гэтых навінах сёньня кажуць на гэтым і йншых сэрвэрах у фэдывёрсу.",
"dismissable_banner.explore_statuses": "Гэтыя самыя папулярныя сёньняшнія допісы ў фэдывёрсе.",
"dismissable_banner.explore_tags": "Гэтыя гэштаґі набіраюць папулярнасьць у фэдывёрсе сёньня. Гэштаґі якія выкарыстоўваюцца большай колькасьцю людзей зьяўляюцца вышэй у сьпісе.",
"dismissable_banner.public_timeline": "Гэта самыя новыя публічныя допісы ад карыстальнікаў фэдывёрсу на якіх падпісаныя карыстальнікі {domain}.",
"domain_block_modal.block": "Заблакіраваць сервер", "domain_block_modal.block": "Заблакіраваць сервер",
"domain_block_modal.block_account_instead": "Заблакіраваць @{name} замест гэтага", "domain_block_modal.block_account_instead": "Заблакіраваць @{name} замест гэтага",
"domain_block_modal.they_can_interact_with_old_posts": "Людзі з гэтага сервера змогуць узаемадзейнічаць з вашымі старымі допісамі.", "domain_block_modal.they_can_interact_with_old_posts": "Людзі з гэтага сервера змогуць узаемадзейнічаць з вашымі старымі допісамі.",
@ -331,8 +362,10 @@
"footer.privacy_policy": "Палітыка прыватнасці", "footer.privacy_policy": "Палітыка прыватнасці",
"footer.source_code": "Прагледзець зыходны код", "footer.source_code": "Прагледзець зыходны код",
"footer.status": "Статус", "footer.status": "Статус",
"footer.terms_of_service": "Умовы абслугоўваньня",
"generic.saved": "Захавана", "generic.saved": "Захавана",
"getting_started.heading": "Пачатак працы", "getting_started.heading": "Пачатак працы",
"hashtag.admin_moderation": "Адкрыць інтэрфэйс мадаратара для #{name}",
"hashtag.column_header.tag_mode.all": "і {additional}", "hashtag.column_header.tag_mode.all": "і {additional}",
"hashtag.column_header.tag_mode.any": "або {additional}", "hashtag.column_header.tag_mode.any": "або {additional}",
"hashtag.column_header.tag_mode.none": "без {additional}", "hashtag.column_header.tag_mode.none": "без {additional}",
@ -351,6 +384,11 @@
"hints.profiles.followers_may_be_missing": "Падпісчыкі гэтага профілю могуць адсутнічаць.", "hints.profiles.followers_may_be_missing": "Падпісчыкі гэтага профілю могуць адсутнічаць.",
"hints.profiles.follows_may_be_missing": "Падпіскі гэтага профілю могуць адсутнічаць.", "hints.profiles.follows_may_be_missing": "Падпіскі гэтага профілю могуць адсутнічаць.",
"hints.profiles.posts_may_be_missing": "Некаторыя допісы гэтага профілю могуць адсутнічаць.", "hints.profiles.posts_may_be_missing": "Некаторыя допісы гэтага профілю могуць адсутнічаць.",
"hints.profiles.see_more_followers": "Глядзець больш падпісаных на {domain}",
"hints.profiles.see_more_follows": "Глядзець больш падпісак на {domain}",
"hints.profiles.see_more_posts": "Глядзець больш допісаў на {domain}",
"hints.threads.replies_may_be_missing": "Адказы зь іншых сэрвэраў могуць адсутнічаць.",
"hints.threads.see_more": "Глядзіце больш адказаў на {domain}",
"home.column_settings.show_reblogs": "Паказваць пашырэнні", "home.column_settings.show_reblogs": "Паказваць пашырэнні",
"home.column_settings.show_replies": "Паказваць адказы", "home.column_settings.show_replies": "Паказваць адказы",
"home.hide_announcements": "Схаваць аб'явы", "home.hide_announcements": "Схаваць аб'явы",
@ -358,7 +396,19 @@
"home.pending_critical_update.link": "Прагледзець абнаўленні", "home.pending_critical_update.link": "Прагледзець абнаўленні",
"home.pending_critical_update.title": "Даступна крытычнае абнаўленне бяспекі!", "home.pending_critical_update.title": "Даступна крытычнае абнаўленне бяспекі!",
"home.show_announcements": "Паказаць аб'явы", "home.show_announcements": "Паказаць аб'явы",
"ignore_notifications_modal.disclaimer": "Mastodon ня можа йнфармаваць карыстальнікаў аб тым, што вы прайігнаравалі йх паведамленьні. Ігнараваньне паведамленьняў не спыніць іх адпраўку.",
"ignore_notifications_modal.filter_instead": "Замест гэтага адфільтраваць",
"ignore_notifications_modal.filter_to_act_users": "Вы па-ранейшаму зможаце прымаць, адхіляць ці скардзіцца на карыстальнікаў",
"ignore_notifications_modal.filter_to_avoid_confusion": "Фільтраваньне дапамагае пазьбегнуць патэнцыйнай блытаніны",
"ignore_notifications_modal.filter_to_review_separately": "Вы можаце прагледзець адфільтраваныя паведамленьні асобна",
"ignore_notifications_modal.ignore": "Ігнараваць паведамленьні",
"ignore_notifications_modal.limited_accounts_title": "Ігнараваць паведамленьні ад абмежаваных уліковых запісаў?",
"ignore_notifications_modal.new_accounts_title": "Ігнараваць паведамленьні ад новых уліковых запісаў?",
"ignore_notifications_modal.not_followers_title": "Ігнараваць паведамленьні ад людзей, якія ня падпісаныя на вас?",
"ignore_notifications_modal.not_following_title": "Ігнараваць апавяшчэнні ад людзей на якіх вы не падпісаны?", "ignore_notifications_modal.not_following_title": "Ігнараваць апавяшчэнні ад людзей на якіх вы не падпісаны?",
"ignore_notifications_modal.private_mentions_title": "Ігнараваць паведамленьні аб непажаданых прыватных згадках?",
"interaction_modal.action.favourite": "Каб працягнуць, вы мусіце ўпадабаць з вашага ўліковага запісу.",
"interaction_modal.action.follow": "Каб працягнуць, вы мусіце падпісацца з вашага ўліковага запісу.",
"interaction_modal.on_another_server": "На іншым серверы", "interaction_modal.on_another_server": "На іншым серверы",
"interaction_modal.on_this_server": "На гэтым серверы", "interaction_modal.on_this_server": "На гэтым серверы",
"interaction_modal.title.favourite": "Упадабаць допіс {name}", "interaction_modal.title.favourite": "Упадабаць допіс {name}",
@ -540,6 +590,7 @@
"notifications.policy.accept_hint": "Паказваць у апавяшчэннях", "notifications.policy.accept_hint": "Паказваць у апавяшчэннях",
"notifications.policy.drop": "Iгнараваць", "notifications.policy.drop": "Iгнараваць",
"notifications.policy.filter": "Фільтраваць", "notifications.policy.filter": "Фільтраваць",
"notifications.policy.filter_limited_accounts_title": "Абмежаваныя ўліковыя запісы",
"notifications.policy.filter_new_accounts.hint": "Створаныя на працягу {days, plural, one {апошняга # дня} few {апошніх # дзён} many {апошніх # дзён} other {апошняй # дня}}", "notifications.policy.filter_new_accounts.hint": "Створаныя на працягу {days, plural, one {апошняга # дня} few {апошніх # дзён} many {апошніх # дзён} other {апошняй # дня}}",
"notifications.policy.filter_new_accounts_title": "Новыя ўліковыя запісы", "notifications.policy.filter_new_accounts_title": "Новыя ўліковыя запісы",
"notifications.policy.filter_not_followers_hint": "Уключаючы людзей, якія падпісаны на вас менш, чым {days, plural, one {# дзень} few {# дні} many {# дзён} other {# дня}}", "notifications.policy.filter_not_followers_hint": "Уключаючы людзей, якія падпісаны на вас менш, чым {days, plural, one {# дзень} few {# дні} many {# дзён} other {# дня}}",
@ -552,7 +603,11 @@
"notifications_permission_banner.enable": "Уключыць апавяшчэнні на працоўным стале", "notifications_permission_banner.enable": "Уключыць апавяшчэнні на працоўным стале",
"notifications_permission_banner.how_to_control": "Каб атрымліваць апавяшчэнні, калі Mastodon не адкрыты, уключыце апавяшчэнні працоўнага стала. Вы зможаце дакладна кантраляваць, якія падзеі будуць ствараць апавяшчэнні з дапамогай {icon} кнопкі, як толькі яны будуць уключаны.", "notifications_permission_banner.how_to_control": "Каб атрымліваць апавяшчэнні, калі Mastodon не адкрыты, уключыце апавяшчэнні працоўнага стала. Вы зможаце дакладна кантраляваць, якія падзеі будуць ствараць апавяшчэнні з дапамогай {icon} кнопкі, як толькі яны будуць уключаны.",
"notifications_permission_banner.title": "Не прапусціце нічога", "notifications_permission_banner.title": "Не прапусціце нічога",
"onboarding.follows.back": "Назад",
"onboarding.follows.done": "Гатова",
"onboarding.follows.empty": "На жаль, зараз немагчыма паказаць вынікі. Вы можаце паспрабаваць выкарыстоўваць пошук і праглядзець старонку агляду, каб знайсці людзей, на якіх можна падпісацца, або паўтарыце спробу пазней.", "onboarding.follows.empty": "На жаль, зараз немагчыма паказаць вынікі. Вы можаце паспрабаваць выкарыстоўваць пошук і праглядзець старонку агляду, каб знайсці людзей, на якіх можна падпісацца, або паўтарыце спробу пазней.",
"onboarding.follows.search": "Пошук",
"onboarding.follows.title": "Падпішыцеся каб пачаць",
"onboarding.profile.discoverable": "Зрабіць мой профіль бачным", "onboarding.profile.discoverable": "Зрабіць мой профіль бачным",
"onboarding.profile.discoverable_hint": "Калі вы звяртаецеся да адкрытасці на Mastodon, вашы паведамленні могуць з'яўляцца ў выніках пошуку і тэндэнцый, а ваш профіль можа быць прапанаваны людзям з такімі ж інтарэсамі.", "onboarding.profile.discoverable_hint": "Калі вы звяртаецеся да адкрытасці на Mastodon, вашы паведамленні могуць з'яўляцца ў выніках пошуку і тэндэнцый, а ваш профіль можа быць прапанаваны людзям з такімі ж інтарэсамі.",
"onboarding.profile.display_name": "Бачнае імя", "onboarding.profile.display_name": "Бачнае імя",
@ -590,6 +645,8 @@
"privacy_policy.title": "Палітыка канфідэнцыйнасці", "privacy_policy.title": "Палітыка канфідэнцыйнасці",
"recommended": "Рэкамендуем", "recommended": "Рэкамендуем",
"refresh": "Абнавiць", "refresh": "Абнавiць",
"regeneration_indicator.please_stand_by": "Калі ласка, пачакайце.",
"regeneration_indicator.preparing_your_home_feed": "Рыхтуем вашую стужку…",
"relative_time.days": "{number} д", "relative_time.days": "{number} д",
"relative_time.full.days": "{number, plural, one {# дзень} few {# дні} many {# дзён} other {# дня}} таму", "relative_time.full.days": "{number, plural, one {# дзень} few {# дні} many {# дзён} other {# дня}} таму",
"relative_time.full.hours": "{number, plural, one {# гадзіна} few {# гадзіны} many {# гадзін} other {# гадзіны}} таму", "relative_time.full.hours": "{number, plural, one {# гадзіна} few {# гадзіны} many {# гадзін} other {# гадзіны}} таму",
@ -673,8 +730,11 @@
"search_results.accounts": "Профілі", "search_results.accounts": "Профілі",
"search_results.all": "Усё", "search_results.all": "Усё",
"search_results.hashtags": "Хэштэгі", "search_results.hashtags": "Хэштэгі",
"search_results.no_results": "Анічога ня знойдзена.",
"search_results.no_search_yet": "Паспрабуйце пашукаць допісы, профілі або гэштаґі.",
"search_results.see_all": "Праглядзець усе", "search_results.see_all": "Праглядзець усе",
"search_results.statuses": "Допісы", "search_results.statuses": "Допісы",
"search_results.title": "Шукаць \"{q}\"",
"server_banner.about_active_users": "Людзі, якія карыстаюцца гэтым сервера на працягу апошніх 30 дзён (Штомесячна Актыўныя Карыстальнікі)", "server_banner.about_active_users": "Людзі, якія карыстаюцца гэтым сервера на працягу апошніх 30 дзён (Штомесячна Актыўныя Карыстальнікі)",
"server_banner.active_users": "актыўныя карыстальнікі", "server_banner.active_users": "актыўныя карыстальнікі",
"server_banner.administered_by": "Адміністратар:", "server_banner.administered_by": "Адміністратар:",
@ -692,6 +752,7 @@
"status.bookmark": "Дадаць закладку", "status.bookmark": "Дадаць закладку",
"status.cancel_reblog_private": "Прыбраць", "status.cancel_reblog_private": "Прыбраць",
"status.cannot_reblog": "Гэты пост нельга пашырыць", "status.cannot_reblog": "Гэты пост нельга пашырыць",
"status.continued_thread": "Працяг тэмы",
"status.copy": "Скапіраваць спасылку на допіс", "status.copy": "Скапіраваць спасылку на допіс",
"status.delete": "Выдаліць", "status.delete": "Выдаліць",
"status.detailed_status": "Дэтальны агляд размовы", "status.detailed_status": "Дэтальны агляд размовы",
@ -725,6 +786,7 @@
"status.reblogs.empty": "Гэты допіс яшчэ ніхто не пашырыў. Калі гэта адбудзецца, гэтых людзей будзе бачна тут.", "status.reblogs.empty": "Гэты допіс яшчэ ніхто не пашырыў. Калі гэта адбудзецца, гэтых людзей будзе бачна тут.",
"status.redraft": "Выдаліць і паправіць", "status.redraft": "Выдаліць і паправіць",
"status.remove_bookmark": "Выдаліць закладку", "status.remove_bookmark": "Выдаліць закладку",
"status.replied_in_thread": "Адказаў у тэме",
"status.replied_to": "Адказаў {name}", "status.replied_to": "Адказаў {name}",
"status.reply": "Адказаць", "status.reply": "Адказаць",
"status.replyAll": "Адказаць у ланцугу", "status.replyAll": "Адказаць у ланцугу",
@ -745,6 +807,7 @@
"subscribed_languages.target": "Змяніць мовы падпіскі для {target}", "subscribed_languages.target": "Змяніць мовы падпіскі для {target}",
"tabs_bar.home": "Галоўная", "tabs_bar.home": "Галоўная",
"tabs_bar.notifications": "Апавяшчэнні", "tabs_bar.notifications": "Апавяшчэнні",
"terms_of_service.title": "Умовы абслугоўваньня",
"time_remaining.days": "{number, plural, one {застаўся # дзень} few {засталося # дні} many {засталося # дзён} other {засталося # дня}}", "time_remaining.days": "{number, plural, one {застаўся # дзень} few {засталося # дні} many {засталося # дзён} other {засталося # дня}}",
"time_remaining.hours": "{number, plural, one {засталася # гадзіна} few {засталося # гадзіны} many {засталося # гадзін} other {засталося # гадзіны}}", "time_remaining.hours": "{number, plural, one {засталася # гадзіна} few {засталося # гадзіны} many {засталося # гадзін} other {засталося # гадзіны}}",
"time_remaining.minutes": "{number, plural, one {засталася # хвіліна} few {засталося # хвіліны} many {засталося # хвілін} other {засталося # хвіліны}}", "time_remaining.minutes": "{number, plural, one {засталася # хвіліна} few {засталося # хвіліны} many {засталося # хвілін} other {засталося # хвіліны}}",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Показване/скриване на текст зад предупреждение на съдържание", "keyboard_shortcuts.toggle_hidden": "Показване/скриване на текст зад предупреждение на съдържание",
"keyboard_shortcuts.toggle_sensitivity": "Показване/скриване на мултимедията", "keyboard_shortcuts.toggle_sensitivity": "Показване/скриване на мултимедията",
"keyboard_shortcuts.toot": "Начало на нова публикация", "keyboard_shortcuts.toot": "Начало на нова публикация",
"keyboard_shortcuts.translate": "за превод на публикация",
"keyboard_shortcuts.unfocus": "Разфокусиране на текстовото поле за съставяне/търсене", "keyboard_shortcuts.unfocus": "Разфокусиране на текстовото поле за съставяне/търсене",
"keyboard_shortcuts.up": "Преместване нагоре в списъка", "keyboard_shortcuts.up": "Преместване нагоре в списъка",
"lightbox.close": "Затваряне", "lightbox.close": "Затваряне",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Още никого не е подсилвал публикацията. Подсилващият ще се покаже тук.", "status.reblogs.empty": "Още никого не е подсилвал публикацията. Подсилващият ще се покаже тук.",
"status.redraft": "Изтриване и преработване", "status.redraft": "Изтриване и преработване",
"status.remove_bookmark": "Премахване на отметката", "status.remove_bookmark": "Премахване на отметката",
"status.remove_favourite": "Премахване от любими",
"status.replied_in_thread": "Отговорено в нишката", "status.replied_in_thread": "Отговорено в нишката",
"status.replied_to": "В отговор до {name}", "status.replied_to": "В отговор до {name}",
"status.reply": "Отговор", "status.reply": "Отговор",

View file

@ -407,6 +407,11 @@
"ignore_notifications_modal.not_followers_title": "Voleu ignorar les notificacions de qui no us segueix?", "ignore_notifications_modal.not_followers_title": "Voleu ignorar les notificacions de qui no us segueix?",
"ignore_notifications_modal.not_following_title": "Voleu ignorar les notificacions de qui no seguiu?", "ignore_notifications_modal.not_following_title": "Voleu ignorar les notificacions de qui no seguiu?",
"ignore_notifications_modal.private_mentions_title": "Voleu ignorar les notificacions de mencions privades no sol·licitades?", "ignore_notifications_modal.private_mentions_title": "Voleu ignorar les notificacions de mencions privades no sol·licitades?",
"interaction_modal.action.favourite": "Per a continuar heu d'afavorir des del vostre compte.",
"interaction_modal.action.follow": "Per a continuar heu de seguir des del vostre compte.",
"interaction_modal.action.reblog": "Per a continuar heu d'impulsar des del vostre compte.",
"interaction_modal.action.reply": "Per a continuar heu de respondre des del vostre compte.",
"interaction_modal.action.vote": "Per a continuar heu de votar des del vostre compte.",
"interaction_modal.go": "Endavant", "interaction_modal.go": "Endavant",
"interaction_modal.no_account_yet": "Encara no teniu cap compte?", "interaction_modal.no_account_yet": "Encara no teniu cap compte?",
"interaction_modal.on_another_server": "A un altre servidor", "interaction_modal.on_another_server": "A un altre servidor",
@ -452,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Mostra/amaga el text marcat com a sensible", "keyboard_shortcuts.toggle_hidden": "Mostra/amaga el text marcat com a sensible",
"keyboard_shortcuts.toggle_sensitivity": "Mostra/amaga contingut", "keyboard_shortcuts.toggle_sensitivity": "Mostra/amaga contingut",
"keyboard_shortcuts.toot": "Escriu un nou tut", "keyboard_shortcuts.toot": "Escriu un nou tut",
"keyboard_shortcuts.translate": "per a traduir una publicació",
"keyboard_shortcuts.unfocus": "Descentra l'àrea de composició de text/cerca", "keyboard_shortcuts.unfocus": "Descentra l'àrea de composició de text/cerca",
"keyboard_shortcuts.up": "Apuja a la llista", "keyboard_shortcuts.up": "Apuja a la llista",
"lightbox.close": "Tanca", "lightbox.close": "Tanca",
@ -687,7 +693,7 @@
"privacy.unlisted.long": "Menys fanfàrries algorísmiques", "privacy.unlisted.long": "Menys fanfàrries algorísmiques",
"privacy.unlisted.short": "Públic silenciós", "privacy.unlisted.short": "Públic silenciós",
"privacy_policy.last_updated": "Darrera actualització {date}", "privacy_policy.last_updated": "Darrera actualització {date}",
"privacy_policy.title": "Política de Privacitat", "privacy_policy.title": "Política de privadesa",
"recommended": "Recomanat", "recommended": "Recomanat",
"refresh": "Actualitza", "refresh": "Actualitza",
"regeneration_indicator.please_stand_by": "Espereu.", "regeneration_indicator.please_stand_by": "Espereu.",
@ -831,6 +837,7 @@
"status.reblogs.empty": "Encara no ha impulsat ningú aquest tut. Quan algú ho faci, apareixerà aquí.", "status.reblogs.empty": "Encara no ha impulsat ningú aquest tut. Quan algú ho faci, apareixerà aquí.",
"status.redraft": "Esborra i reescriu", "status.redraft": "Esborra i reescriu",
"status.remove_bookmark": "Elimina el marcador", "status.remove_bookmark": "Elimina el marcador",
"status.remove_favourite": "Elimina dels preferits",
"status.replied_in_thread": "Respost al fil", "status.replied_in_thread": "Respost al fil",
"status.replied_to": "En resposta a {name}", "status.replied_to": "En resposta a {name}",
"status.reply": "Respon", "status.reply": "Respon",

View file

@ -85,7 +85,26 @@
"alert.rate_limited.title": "Spojení omezena", "alert.rate_limited.title": "Spojení omezena",
"alert.unexpected.message": "Objevila se neočekávaná chyba.", "alert.unexpected.message": "Objevila se neočekávaná chyba.",
"alert.unexpected.title": "Jejda!", "alert.unexpected.title": "Jejda!",
"alt_text_badge.title": "Popisek",
"announcement.announcement": "Oznámení", "announcement.announcement": "Oznámení",
"annual_report.summary.archetype.booster": "Lovec obsahu",
"annual_report.summary.archetype.lurker": "Špión",
"annual_report.summary.archetype.oracle": "Vědma",
"annual_report.summary.archetype.pollster": "Průzkumník",
"annual_report.summary.archetype.replier": "Sociální motýlek",
"annual_report.summary.followers.followers": "sledujících",
"annual_report.summary.followers.total": "{count} celkem",
"annual_report.summary.here_it_is": "Zde je tvůj {year} v přehledu:",
"annual_report.summary.highlighted_post.by_favourites": "nejvíce oblíbený příspěvek",
"annual_report.summary.highlighted_post.by_reblogs": "nejvíce boostovaný příspěvek",
"annual_report.summary.highlighted_post.by_replies": "příspěvek s nejvíce odpověďmi",
"annual_report.summary.highlighted_post.possessive": "{name}",
"annual_report.summary.most_used_app.most_used_app": "nejpoužívanější aplikace",
"annual_report.summary.most_used_hashtag.most_used_hashtag": "nejpoužívanější hashtag",
"annual_report.summary.most_used_hashtag.none": "Žádné",
"annual_report.summary.new_posts.new_posts": "nové příspěvky",
"annual_report.summary.percentile.text": "<topLabel>To vás umisťuje do vrcholu</topLabel><percentage></percentage><bottomLabel>{domain} uživatelů.</bottomLabel>",
"annual_report.summary.thanks": "Děkujeme, že jste součástí Mastodonu!",
"attachments_list.unprocessed": "(nezpracováno)", "attachments_list.unprocessed": "(nezpracováno)",
"audio.hide": "Skrýt zvuk", "audio.hide": "Skrýt zvuk",
"block_modal.remote_users_caveat": "Požádáme server {domain}, aby respektoval vaše rozhodnutí. Úplné dodržování nastavení však není zaručeno, protože některé servery mohou řešit blokování různě. Veřejné příspěvky mohou stále být viditelné pro nepřihlášené uživatele.", "block_modal.remote_users_caveat": "Požádáme server {domain}, aby respektoval vaše rozhodnutí. Úplné dodržování nastavení však není zaručeno, protože některé servery mohou řešit blokování různě. Veřejné příspěvky mohou stále být viditelné pro nepřihlášené uživatele.",
@ -109,6 +128,7 @@
"bundle_column_error.routing.body": "Požadovaná stránka nebyla nalezena. Opravdu je URL v adresním řádku správně?", "bundle_column_error.routing.body": "Požadovaná stránka nebyla nalezena. Opravdu je URL v adresním řádku správně?",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "Zavřít", "bundle_modal_error.close": "Zavřít",
"bundle_modal_error.message": "Něco se pokazilo při načítání této obrazovky.",
"bundle_modal_error.retry": "Zkusit znovu", "bundle_modal_error.retry": "Zkusit znovu",
"closed_registrations.other_server_instructions": "Protože Mastodon je decentralizovaný, můžete si vytvořit účet na jiném serveru a přesto komunikovat s tímto serverem.", "closed_registrations.other_server_instructions": "Protože Mastodon je decentralizovaný, můžete si vytvořit účet na jiném serveru a přesto komunikovat s tímto serverem.",
"closed_registrations_modal.description": "V současné době není možné vytvořit účet na {domain}, ale mějte prosím na paměti, že k používání Mastodonu nepotřebujete účet konkrétně na {domain}.", "closed_registrations_modal.description": "V současné době není možné vytvořit účet na {domain}, ale mějte prosím na paměti, že k používání Mastodonu nepotřebujete účet konkrétně na {domain}.",
@ -119,13 +139,16 @@
"column.blocks": "Blokovaní uživatelé", "column.blocks": "Blokovaní uživatelé",
"column.bookmarks": "Záložky", "column.bookmarks": "Záložky",
"column.community": "Místní časová osa", "column.community": "Místní časová osa",
"column.create_list": "Vytvořit seznam",
"column.direct": "Soukromé zmínky", "column.direct": "Soukromé zmínky",
"column.directory": "Prozkoumat profily", "column.directory": "Prozkoumat profily",
"column.domain_blocks": "Blokované domény", "column.domain_blocks": "Blokované domény",
"column.edit_list": "Upravit seznam",
"column.favourites": "Oblíbené", "column.favourites": "Oblíbené",
"column.firehose": "Živé kanály", "column.firehose": "Živé kanály",
"column.follow_requests": "Žádosti o sledování", "column.follow_requests": "Žádosti o sledování",
"column.home": "Domů", "column.home": "Domů",
"column.list_members": "Spravovat členy seznamu",
"column.lists": "Seznamy", "column.lists": "Seznamy",
"column.mutes": "Skrytí uživatelé", "column.mutes": "Skrytí uživatelé",
"column.notifications": "Oznámení", "column.notifications": "Oznámení",
@ -138,6 +161,7 @@
"column_header.pin": "Připnout", "column_header.pin": "Připnout",
"column_header.show_settings": "Zobrazit nastavení", "column_header.show_settings": "Zobrazit nastavení",
"column_header.unpin": "Odepnout", "column_header.unpin": "Odepnout",
"column_search.cancel": "Zrušit",
"column_subheading.settings": "Nastavení", "column_subheading.settings": "Nastavení",
"community.column_settings.local_only": "Pouze místní", "community.column_settings.local_only": "Pouze místní",
"community.column_settings.media_only": "Pouze média", "community.column_settings.media_only": "Pouze média",
@ -179,6 +203,8 @@
"confirmations.edit.confirm": "Upravit", "confirmations.edit.confirm": "Upravit",
"confirmations.edit.message": "Editovat teď znamená přepsání zprávy, kterou právě tvoříte. Opravdu chcete pokračovat?", "confirmations.edit.message": "Editovat teď znamená přepsání zprávy, kterou právě tvoříte. Opravdu chcete pokračovat?",
"confirmations.edit.title": "Přepsat příspěvek?", "confirmations.edit.title": "Přepsat příspěvek?",
"confirmations.follow_to_list.confirm": "Sledovat a přidat do seznamu",
"confirmations.follow_to_list.title": "Sledovat uživatele?",
"confirmations.logout.confirm": "Odhlásit se", "confirmations.logout.confirm": "Odhlásit se",
"confirmations.logout.message": "Opravdu se chcete odhlásit?", "confirmations.logout.message": "Opravdu se chcete odhlásit?",
"confirmations.logout.title": "Odhlásit se?", "confirmations.logout.title": "Odhlásit se?",
@ -193,6 +219,8 @@
"confirmations.unfollow.message": "Opravdu chcete {name} přestat sledovat?", "confirmations.unfollow.message": "Opravdu chcete {name} přestat sledovat?",
"confirmations.unfollow.title": "Přestat sledovat uživatele?", "confirmations.unfollow.title": "Přestat sledovat uživatele?",
"content_warning.hide": "Skrýt příspěvek", "content_warning.hide": "Skrýt příspěvek",
"content_warning.show": "Přesto zobrazit",
"content_warning.show_more": "Zobrazit více",
"conversation.delete": "Smazat konverzaci", "conversation.delete": "Smazat konverzaci",
"conversation.mark_as_read": "Označit jako přečtené", "conversation.mark_as_read": "Označit jako přečtené",
"conversation.open": "Zobrazit konverzaci", "conversation.open": "Zobrazit konverzaci",
@ -293,6 +321,7 @@
"filter_modal.select_filter.subtitle": "Použít existující kategorii nebo vytvořit novou kategorii", "filter_modal.select_filter.subtitle": "Použít existující kategorii nebo vytvořit novou kategorii",
"filter_modal.select_filter.title": "Filtrovat tento příspěvek", "filter_modal.select_filter.title": "Filtrovat tento příspěvek",
"filter_modal.title.status": "Filtrovat příspěvek", "filter_modal.title.status": "Filtrovat příspěvek",
"filter_warning.matches_filter": "Odpovídá filtru “<span>{title}</span>”",
"filtered_notifications_banner.title": "Filtrovaná oznámení", "filtered_notifications_banner.title": "Filtrovaná oznámení",
"firehose.all": "Vše", "firehose.all": "Vše",
"firehose.local": "Tento server", "firehose.local": "Tento server",
@ -323,6 +352,7 @@
"footer.privacy_policy": "Zásady ochrany osobních údajů", "footer.privacy_policy": "Zásady ochrany osobních údajů",
"footer.source_code": "Zobrazit zdrojový kód", "footer.source_code": "Zobrazit zdrojový kód",
"footer.status": "Stav", "footer.status": "Stav",
"footer.terms_of_service": "Obchodní podmínky",
"generic.saved": "Uloženo", "generic.saved": "Uloženo",
"getting_started.heading": "Začínáme", "getting_started.heading": "Začínáme",
"hashtag.column_header.tag_mode.all": "a {additional}", "hashtag.column_header.tag_mode.all": "a {additional}",
@ -340,6 +370,10 @@
"hashtag.follow": "Sledovat hashtag", "hashtag.follow": "Sledovat hashtag",
"hashtag.unfollow": "Přestat sledovat hashtag", "hashtag.unfollow": "Přestat sledovat hashtag",
"hashtags.and_other": "…a {count, plural, one {# další} few {# další} other {# dalších}}", "hashtags.and_other": "…a {count, plural, one {# další} few {# další} other {# dalších}}",
"hints.profiles.see_more_followers": "Zobrazit více sledujících na {domain}",
"hints.profiles.see_more_follows": "Zobrazit další sledování na {domain}",
"hints.profiles.see_more_posts": "Zobrazit další příspěvky na {domain}",
"hints.threads.see_more": "Zobrazit další odpovědi na {domain}",
"home.column_settings.show_reblogs": "Zobrazit boosty", "home.column_settings.show_reblogs": "Zobrazit boosty",
"home.column_settings.show_replies": "Zobrazit odpovědi", "home.column_settings.show_replies": "Zobrazit odpovědi",
"home.hide_announcements": "Skrýt oznámení", "home.hide_announcements": "Skrýt oznámení",
@ -347,12 +381,17 @@
"home.pending_critical_update.link": "Zobrazit aktualizace", "home.pending_critical_update.link": "Zobrazit aktualizace",
"home.pending_critical_update.title": "K dispozici je kritická bezpečnostní aktualizace!", "home.pending_critical_update.title": "K dispozici je kritická bezpečnostní aktualizace!",
"home.show_announcements": "Zobrazit oznámení", "home.show_announcements": "Zobrazit oznámení",
"ignore_notifications_modal.ignore": "Ignorovat oznámení",
"interaction_modal.go": "Přejít",
"interaction_modal.no_account_yet": "Ještě nemáte účet?",
"interaction_modal.on_another_server": "Na jiném serveru", "interaction_modal.on_another_server": "Na jiném serveru",
"interaction_modal.on_this_server": "Na tomto serveru", "interaction_modal.on_this_server": "Na tomto serveru",
"interaction_modal.title.favourite": "Oblíbit si příspěvek od uživatele {name}", "interaction_modal.title.favourite": "Oblíbit si příspěvek od uživatele {name}",
"interaction_modal.title.follow": "Sledovat {name}", "interaction_modal.title.follow": "Sledovat {name}",
"interaction_modal.title.reblog": "Boostnout příspěvek uživatele {name}", "interaction_modal.title.reblog": "Boostnout příspěvek uživatele {name}",
"interaction_modal.title.reply": "Odpovědět na příspěvek uživatele {name}", "interaction_modal.title.reply": "Odpovědět na příspěvek uživatele {name}",
"interaction_modal.title.vote": "Hlasujte v anketě {name}",
"interaction_modal.username_prompt": "např. {example}",
"intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dní} other {# dní}}", "intervals.full.days": "{number, plural, one {# den} few {# dny} many {# dní} other {# dní}}",
"intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodin} other {# hodin}}", "intervals.full.hours": "{number, plural, one {# hodina} few {# hodiny} many {# hodin} other {# hodin}}",
"intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minut} other {# minut}}", "intervals.full.minutes": "{number, plural, one {# minuta} few {# minuty} many {# minut} other {# minut}}",
@ -388,6 +427,7 @@
"keyboard_shortcuts.toggle_hidden": "Zobrazit/skrýt text za varováním o obsahu", "keyboard_shortcuts.toggle_hidden": "Zobrazit/skrýt text za varováním o obsahu",
"keyboard_shortcuts.toggle_sensitivity": "Zobrazit/skrýt média", "keyboard_shortcuts.toggle_sensitivity": "Zobrazit/skrýt média",
"keyboard_shortcuts.toot": "Začít nový příspěvek", "keyboard_shortcuts.toot": "Začít nový příspěvek",
"keyboard_shortcuts.translate": "k přeložení příspěvku",
"keyboard_shortcuts.unfocus": "Zrušit zaměření na nový příspěvek/hledání", "keyboard_shortcuts.unfocus": "Zrušit zaměření na nový příspěvek/hledání",
"keyboard_shortcuts.up": "Posunout v seznamu nahoru", "keyboard_shortcuts.up": "Posunout v seznamu nahoru",
"lightbox.close": "Zavřít", "lightbox.close": "Zavřít",
@ -398,13 +438,29 @@
"link_preview.author": "Podle {name}", "link_preview.author": "Podle {name}",
"link_preview.more_from_author": "Více od {name}", "link_preview.more_from_author": "Více od {name}",
"link_preview.shares": "{count, plural, one {{counter} příspěvek} few {{counter} příspěvky} many {{counter} příspěvků} other {{counter} příspěvků}}", "link_preview.shares": "{count, plural, one {{counter} příspěvek} few {{counter} příspěvky} many {{counter} příspěvků} other {{counter} příspěvků}}",
"lists.add_member": "Přidat",
"lists.add_to_lists": "Přidat {name} do seznamů",
"lists.create": "Vytvořit",
"lists.create_list": "Vytvořit seznam",
"lists.delete": "Smazat seznam", "lists.delete": "Smazat seznam",
"lists.done": "Hotovo",
"lists.edit": "Upravit seznam", "lists.edit": "Upravit seznam",
"lists.find_users_to_add": "Najít uživatele, které chcete přidat",
"lists.list_members": "Členové seznamu",
"lists.list_name": "Název seznamu",
"lists.new_list_name": "Název nového seznamu",
"lists.no_lists_yet": "Zatím žádné seznamy.",
"lists.no_members_yet": "Zatím žádní členové.",
"lists.no_results_found": "Nebyly nalezeny žádné výsledky.",
"lists.remove_member": "Odstranit",
"lists.replies_policy.followed": "Sledovaným uživatelům", "lists.replies_policy.followed": "Sledovaným uživatelům",
"lists.replies_policy.list": "Členům seznamu", "lists.replies_policy.list": "Členům seznamu",
"lists.replies_policy.none": "Nikomu", "lists.replies_policy.none": "Nikomu",
"lists.save": "Uložit",
"lists.search": "Hledat",
"load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položek} other {# nových položek}}", "load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položek} other {# nových položek}}",
"loading_indicator.label": "Načítání…", "loading_indicator.label": "Načítání…",
"media_gallery.hide": "Skrýt",
"moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován, protože jste se přesunul/a na {movedToAccount}.", "moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován, protože jste se přesunul/a na {movedToAccount}.",
"mute_modal.hide_from_notifications": "Skrýt z notifikací", "mute_modal.hide_from_notifications": "Skrýt z notifikací",
"mute_modal.hide_options": "Skrýt možnosti", "mute_modal.hide_options": "Skrýt možnosti",
@ -416,6 +472,7 @@
"mute_modal.you_wont_see_mentions": "Neuvidíte příspěvky, které je zmiňují.", "mute_modal.you_wont_see_mentions": "Neuvidíte příspěvky, které je zmiňují.",
"mute_modal.you_wont_see_posts": "Stále budou moci vidět vaše příspěvky, ale vy jejich neuvidíte.", "mute_modal.you_wont_see_posts": "Stále budou moci vidět vaše příspěvky, ale vy jejich neuvidíte.",
"navigation_bar.about": "O aplikaci", "navigation_bar.about": "O aplikaci",
"navigation_bar.administration": "Administrace",
"navigation_bar.advanced_interface": "Otevřít pokročilé webové rozhraní", "navigation_bar.advanced_interface": "Otevřít pokročilé webové rozhraní",
"navigation_bar.blocks": "Blokovaní uživatelé", "navigation_bar.blocks": "Blokovaní uživatelé",
"navigation_bar.bookmarks": "Záložky", "navigation_bar.bookmarks": "Záložky",
@ -432,6 +489,7 @@
"navigation_bar.follows_and_followers": "Sledovaní a sledující", "navigation_bar.follows_and_followers": "Sledovaní a sledující",
"navigation_bar.lists": "Seznamy", "navigation_bar.lists": "Seznamy",
"navigation_bar.logout": "Odhlásit se", "navigation_bar.logout": "Odhlásit se",
"navigation_bar.moderation": "Moderace",
"navigation_bar.mutes": "Skrytí uživatelé", "navigation_bar.mutes": "Skrytí uživatelé",
"navigation_bar.opened_in_classic_interface": "Příspěvky, účty a další specifické stránky jsou ve výchozím nastavení otevřeny v klasickém webovém rozhraní.", "navigation_bar.opened_in_classic_interface": "Příspěvky, účty a další specifické stránky jsou ve výchozím nastavení otevřeny v klasickém webovém rozhraní.",
"navigation_bar.personal": "Osobní", "navigation_bar.personal": "Osobní",
@ -448,6 +506,11 @@
"notification.favourite": "Uživatel {name} si oblíbil váš příspěvek", "notification.favourite": "Uživatel {name} si oblíbil váš příspěvek",
"notification.follow": "Uživatel {name} vás začal sledovat", "notification.follow": "Uživatel {name} vás začal sledovat",
"notification.follow_request": "Uživatel {name} požádal o povolení vás sledovat", "notification.follow_request": "Uživatel {name} požádal o povolení vás sledovat",
"notification.label.mention": "Zmínka",
"notification.label.private_mention": "Soukromá zmínka",
"notification.label.reply": "Odpověď",
"notification.mention": "Zmínka",
"notification.mentioned_you": "{name} vás zmínil",
"notification.moderation-warning.learn_more": "Zjistit více", "notification.moderation-warning.learn_more": "Zjistit více",
"notification.moderation_warning": "Obdrželi jste moderační varování", "notification.moderation_warning": "Obdrželi jste moderační varování",
"notification.moderation_warning.action_delete_statuses": "Některé z vašich příspěvků byly odstraněny.", "notification.moderation_warning.action_delete_statuses": "Některé z vašich příspěvků byly odstraněny.",
@ -468,11 +531,15 @@
"notification.status": "Uživatel {name} právě přidal příspěvek", "notification.status": "Uživatel {name} právě přidal příspěvek",
"notification.update": "Uživatel {name} upravil příspěvek", "notification.update": "Uživatel {name} upravil příspěvek",
"notification_requests.accept": "Přijmout", "notification_requests.accept": "Přijmout",
"notification_requests.confirm_accept_multiple.title": "Přijmout žádosti o oznámení?",
"notification_requests.dismiss": "Zamítnout", "notification_requests.dismiss": "Zamítnout",
"notification_requests.edit_selection": "Upravit",
"notification_requests.exit_selection": "Hotovo",
"notification_requests.maximize": "Maximalizovat", "notification_requests.maximize": "Maximalizovat",
"notification_requests.minimize_banner": "Minimalizovat banner filtrovaných oznámení", "notification_requests.minimize_banner": "Minimalizovat banner filtrovaných oznámení",
"notification_requests.notifications_from": "Oznámení od {name}", "notification_requests.notifications_from": "Oznámení od {name}",
"notification_requests.title": "Vyfiltrovaná oznámení", "notification_requests.title": "Vyfiltrovaná oznámení",
"notification_requests.view": "Zobrazit oznámení",
"notifications.clear": "Vyčistit oznámení", "notifications.clear": "Vyčistit oznámení",
"notifications.clear_confirmation": "Opravdu chcete trvale smazat všechna vaše oznámení?", "notifications.clear_confirmation": "Opravdu chcete trvale smazat všechna vaše oznámení?",
"notifications.clear_title": "Vyčistit oznámení?", "notifications.clear_title": "Vyčistit oznámení?",
@ -484,6 +551,7 @@
"notifications.column_settings.filter_bar.category": "Panel rychlého filtrování", "notifications.column_settings.filter_bar.category": "Panel rychlého filtrování",
"notifications.column_settings.follow": "Noví sledující:", "notifications.column_settings.follow": "Noví sledující:",
"notifications.column_settings.follow_request": "Nové žádosti o sledování:", "notifications.column_settings.follow_request": "Nové žádosti o sledování:",
"notifications.column_settings.group": "Skupina",
"notifications.column_settings.mention": "Zmínky:", "notifications.column_settings.mention": "Zmínky:",
"notifications.column_settings.poll": "Výsledky anket:", "notifications.column_settings.poll": "Výsledky anket:",
"notifications.column_settings.push": "Push oznámení", "notifications.column_settings.push": "Push oznámení",
@ -507,6 +575,13 @@
"notifications.permission_denied": "Oznámení na ploše nejsou k dispozici, protože byla zamítnuta žádost o oprávnění je zobrazovat", "notifications.permission_denied": "Oznámení na ploše nejsou k dispozici, protože byla zamítnuta žádost o oprávnění je zobrazovat",
"notifications.permission_denied_alert": "Oznámení na ploše není možné zapnout, protože oprávnění bylo v minulosti zamítnuto", "notifications.permission_denied_alert": "Oznámení na ploše není možné zapnout, protože oprávnění bylo v minulosti zamítnuto",
"notifications.permission_required": "Oznámení na ploše nejsou k dispozici, protože nebylo uděleno potřebné oprávnění.", "notifications.permission_required": "Oznámení na ploše nejsou k dispozici, protože nebylo uděleno potřebné oprávnění.",
"notifications.policy.accept": "Přijmout",
"notifications.policy.accept_hint": "Zobrazit v oznámeních",
"notifications.policy.drop": "Ignorovat",
"notifications.policy.filter": "Filtrovat",
"notifications.policy.filter_hint": "Odeslat do filtrované schránky oznámení",
"notifications.policy.filter_limited_accounts_hint": "Omezeno moderátory serveru",
"notifications.policy.filter_limited_accounts_title": "Moderované účty",
"notifications.policy.filter_new_accounts.hint": "Vytvořeno během {days, plural, one {včerejška} few {posledních # dnů} many {posledních # dní} other {posledních # dní}}", "notifications.policy.filter_new_accounts.hint": "Vytvořeno během {days, plural, one {včerejška} few {posledních # dnů} many {posledních # dní} other {posledních # dní}}",
"notifications.policy.filter_new_accounts_title": "Nové účty", "notifications.policy.filter_new_accounts_title": "Nové účty",
"notifications.policy.filter_not_followers_hint": "Včetně lidí, kteří vás sledovali méně než {days, plural, one {jeden den} few {# dny} many {# dní} other {# dní}}", "notifications.policy.filter_not_followers_hint": "Včetně lidí, kteří vás sledovali méně než {days, plural, one {jeden den} few {# dny} many {# dní} other {# dní}}",
@ -515,10 +590,15 @@
"notifications.policy.filter_not_following_title": "Lidé, které nesledujete", "notifications.policy.filter_not_following_title": "Lidé, které nesledujete",
"notifications.policy.filter_private_mentions_hint": "Vyfiltrováno, pokud to není odpověď na vaši zmínku nebo pokud sledujete odesílatele", "notifications.policy.filter_private_mentions_hint": "Vyfiltrováno, pokud to není odpověď na vaši zmínku nebo pokud sledujete odesílatele",
"notifications.policy.filter_private_mentions_title": "Nevyžádané soukromé zmínky", "notifications.policy.filter_private_mentions_title": "Nevyžádané soukromé zmínky",
"notifications.policy.title": "Spravovat oznámení od…",
"notifications_permission_banner.enable": "Povolit oznámení na ploše", "notifications_permission_banner.enable": "Povolit oznámení na ploše",
"notifications_permission_banner.how_to_control": "Chcete-li dostávat oznámení, i když nemáte Mastodon otevřený, povolte oznámení na ploše. Můžete si zvolit, o kterých druzích interakcí chcete být oznámením na ploše informování pod tlačítkem {icon} výše.", "notifications_permission_banner.how_to_control": "Chcete-li dostávat oznámení, i když nemáte Mastodon otevřený, povolte oznámení na ploše. Můžete si zvolit, o kterých druzích interakcí chcete být oznámením na ploše informování pod tlačítkem {icon} výše.",
"notifications_permission_banner.title": "Nenechte si nic uniknout", "notifications_permission_banner.title": "Nenechte si nic uniknout",
"onboarding.follows.back": "Zpět",
"onboarding.follows.done": "Hotovo",
"onboarding.follows.empty": "Bohužel, žádné výsledky nelze momentálně zobrazit. Můžete zkusit vyhledat nebo procházet stránku s průzkumem a najít lidi, kteří budou sledovat, nebo to zkuste znovu později.", "onboarding.follows.empty": "Bohužel, žádné výsledky nelze momentálně zobrazit. Můžete zkusit vyhledat nebo procházet stránku s průzkumem a najít lidi, kteří budou sledovat, nebo to zkuste znovu později.",
"onboarding.follows.search": "Hledat",
"onboarding.follows.title": "Sledujte lidi a začněte",
"onboarding.profile.discoverable": "Udělat svůj profil vyhledatelným", "onboarding.profile.discoverable": "Udělat svůj profil vyhledatelným",
"onboarding.profile.discoverable_hint": "Když se rozhodnete být vyhledatelný na Mastodonu, vaše příspěvky se mohou objevit ve výsledcích vyhledávání a v populárních, a váš profil může být navrhován lidem s podobnými zájmy.", "onboarding.profile.discoverable_hint": "Když se rozhodnete být vyhledatelný na Mastodonu, vaše příspěvky se mohou objevit ve výsledcích vyhledávání a v populárních, a váš profil může být navrhován lidem s podobnými zájmy.",
"onboarding.profile.display_name": "Zobrazované jméno", "onboarding.profile.display_name": "Zobrazované jméno",
@ -556,6 +636,8 @@
"privacy_policy.title": "Zásady ochrany osobních údajů", "privacy_policy.title": "Zásady ochrany osobních údajů",
"recommended": "Doporučeno", "recommended": "Doporučeno",
"refresh": "Obnovit", "refresh": "Obnovit",
"regeneration_indicator.please_stand_by": "Počkej prosím.",
"regeneration_indicator.preparing_your_home_feed": "Připravujeme vaší domovskou stránku…",
"relative_time.days": "{number} d", "relative_time.days": "{number} d",
"relative_time.full.days": "před {number, plural, one {# dnem} few {# dny} many {# dny} other {# dny}}", "relative_time.full.days": "před {number, plural, one {# dnem} few {# dny} many {# dny} other {# dny}}",
"relative_time.full.hours": "před {number, plural, one {# hodinou} few {# hodinami} many {# hodinami} other {# hodinami}}", "relative_time.full.hours": "před {number, plural, one {# hodinou} few {# hodinami} many {# hodinami} other {# hodinami}}",
@ -639,8 +721,11 @@
"search_results.accounts": "Profily", "search_results.accounts": "Profily",
"search_results.all": "Vše", "search_results.all": "Vše",
"search_results.hashtags": "Hashtagy", "search_results.hashtags": "Hashtagy",
"search_results.no_results": "Nelze najít.",
"search_results.no_search_yet": "Zkuste vyhledat příspěvky, profily nebo hashtagy.",
"search_results.see_all": "Zobrazit vše", "search_results.see_all": "Zobrazit vše",
"search_results.statuses": "Příspěvky", "search_results.statuses": "Příspěvky",
"search_results.title": "Hledat \"{q}\"",
"server_banner.about_active_users": "Lidé používající tento server během posledních 30 dní (měsíční aktivní uživatelé)", "server_banner.about_active_users": "Lidé používající tento server během posledních 30 dní (měsíční aktivní uživatelé)",
"server_banner.active_users": "aktivní uživatelé", "server_banner.active_users": "aktivní uživatelé",
"server_banner.administered_by": "Spravováno:", "server_banner.administered_by": "Spravováno:",
@ -658,6 +743,7 @@
"status.bookmark": "Přidat do záložek", "status.bookmark": "Přidat do záložek",
"status.cancel_reblog_private": "Zrušit boostnutí", "status.cancel_reblog_private": "Zrušit boostnutí",
"status.cannot_reblog": "Tento příspěvek nemůže být boostnutý", "status.cannot_reblog": "Tento příspěvek nemůže být boostnutý",
"status.continued_thread": "Pokračuje ve vlákně",
"status.copy": "Zkopírovat odkaz na příspěvek", "status.copy": "Zkopírovat odkaz na příspěvek",
"status.delete": "Smazat", "status.delete": "Smazat",
"status.detailed_status": "Podrobné zobrazení konverzace", "status.detailed_status": "Podrobné zobrazení konverzace",
@ -666,6 +752,7 @@
"status.edit": "Upravit", "status.edit": "Upravit",
"status.edited": "Naposledy upraveno {date}", "status.edited": "Naposledy upraveno {date}",
"status.edited_x_times": "Upraveno {count, plural, one {{count}krát} few {{count}krát} many {{count}krát} other {{count}krát}}", "status.edited_x_times": "Upraveno {count, plural, one {{count}krát} few {{count}krát} many {{count}krát} other {{count}krát}}",
"status.embed": "Získejte kód pro vložení",
"status.favourite": "Oblíbit", "status.favourite": "Oblíbit",
"status.favourites": "{count, plural, one {oblíbený} few {oblíbené} many {oblíbených} other {oblíbených}}", "status.favourites": "{count, plural, one {oblíbený} few {oblíbené} many {oblíbených} other {oblíbených}}",
"status.filter": "Filtrovat tento příspěvek", "status.filter": "Filtrovat tento příspěvek",
@ -690,6 +777,8 @@
"status.reblogs.empty": "Tento příspěvek ještě nikdo neboostnul. Pokud to někdo udělá, zobrazí se zde.", "status.reblogs.empty": "Tento příspěvek ještě nikdo neboostnul. Pokud to někdo udělá, zobrazí se zde.",
"status.redraft": "Smazat a přepsat", "status.redraft": "Smazat a přepsat",
"status.remove_bookmark": "Odstranit ze záložek", "status.remove_bookmark": "Odstranit ze záložek",
"status.remove_favourite": "Odebrat z oblíbených",
"status.replied_in_thread": "Odpověděli ve vlákně",
"status.replied_to": "Odpověděl/a uživateli {name}", "status.replied_to": "Odpověděl/a uživateli {name}",
"status.reply": "Odpovědět", "status.reply": "Odpovědět",
"status.replyAll": "Odpovědět na vlákno", "status.replyAll": "Odpovědět na vlákno",
@ -710,6 +799,7 @@
"subscribed_languages.target": "Změnit odebírané jazyky na {target}", "subscribed_languages.target": "Změnit odebírané jazyky na {target}",
"tabs_bar.home": "Domů", "tabs_bar.home": "Domů",
"tabs_bar.notifications": "Oznámení", "tabs_bar.notifications": "Oznámení",
"terms_of_service.title": "Podmínky služby",
"time_remaining.days": "{number, plural, one {Zbývá # den} few {Zbývají # dny} many {Zbývá # dní} other {Zbývá # dní}}", "time_remaining.days": "{number, plural, one {Zbývá # den} few {Zbývají # dny} many {Zbývá # dní} other {Zbývá # dní}}",
"time_remaining.hours": "{number, plural, one {Zbývá # hodina} few {Zbývají # hodiny} many {Zbývá # hodin} other {Zbývá # hodin}}", "time_remaining.hours": "{number, plural, one {Zbývá # hodina} few {Zbývají # hodiny} many {Zbývá # hodin} other {Zbývá # hodin}}",
"time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minut} other {Zbývá # minut}}", "time_remaining.minutes": "{number, plural, one {Zbývá # minuta} few {Zbývají # minuty} many {Zbývá # minut} other {Zbývá # minut}}",
@ -727,6 +817,11 @@
"upload_error.poll": "Nahrávání souborů není povoleno s anketami.", "upload_error.poll": "Nahrávání souborů není povoleno s anketami.",
"upload_form.audio_description": "Popis pro sluchově postižené", "upload_form.audio_description": "Popis pro sluchově postižené",
"upload_form.description": "Popis pro zrakově postižené", "upload_form.description": "Popis pro zrakově postižené",
"upload_form.drag_and_drop.instructions": "Chcete-li zvednout přílohu, stiskněte mezerník nebo enter. Při přetažení použijte klávesnicové šipky k přesunutí mediální přílohy v libovolném směru. Stiskněte mezerník nebo enter pro vložení přílohy do nové pozice, nebo stiskněte Esc pro ukončení.",
"upload_form.drag_and_drop.on_drag_cancel": "Přetažení bylo zrušeno. Příloha {item} byla vrácena.",
"upload_form.drag_and_drop.on_drag_end": "Příloha {item} byla vrácena.",
"upload_form.drag_and_drop.on_drag_over": "Příloha {item} byla přesunuta.",
"upload_form.drag_and_drop.on_drag_start": "Zvednuta příloha {item}.",
"upload_form.edit": "Upravit", "upload_form.edit": "Upravit",
"upload_form.thumbnail": "Změnit miniaturu", "upload_form.thumbnail": "Změnit miniaturu",
"upload_form.video_description": "Popis pro sluchově či zrakově postižené", "upload_form.video_description": "Popis pro sluchově či zrakově postižené",

View file

@ -407,6 +407,13 @@
"ignore_notifications_modal.not_followers_title": "Anwybyddu hysbysiadau gan bobl nad ydynt yn eich dilyn?", "ignore_notifications_modal.not_followers_title": "Anwybyddu hysbysiadau gan bobl nad ydynt yn eich dilyn?",
"ignore_notifications_modal.not_following_title": "Anwybyddu hysbysiadau gan bobl nad ydych yn eu dilyn?", "ignore_notifications_modal.not_following_title": "Anwybyddu hysbysiadau gan bobl nad ydych yn eu dilyn?",
"ignore_notifications_modal.private_mentions_title": "Anwybyddu hysbysiadau o Grybwylliadau Preifat digymell?", "ignore_notifications_modal.private_mentions_title": "Anwybyddu hysbysiadau o Grybwylliadau Preifat digymell?",
"interaction_modal.action.favourite": "I barhau, mae angen i chi hoffi o'ch cyfrif.",
"interaction_modal.action.follow": "I barhau, mae angen i chi ddilyn o'ch cyfrif.",
"interaction_modal.action.reblog": "I barhau, mae angen i chi ail-flogio o'ch cyfrif.",
"interaction_modal.action.reply": "I barhau, mae angen i chi ateb o'ch cyfrif.",
"interaction_modal.action.vote": "I barhau, mae angen i chi bleidleisio o'ch cyfrif.",
"interaction_modal.go": "Mynd",
"interaction_modal.no_account_yet": "Dim cyfrif eto?",
"interaction_modal.on_another_server": "Ar weinydd gwahanol", "interaction_modal.on_another_server": "Ar weinydd gwahanol",
"interaction_modal.on_this_server": "Ar y gweinydd hwn", "interaction_modal.on_this_server": "Ar y gweinydd hwn",
"interaction_modal.title.favourite": "Ffafrio postiad {name}", "interaction_modal.title.favourite": "Ffafrio postiad {name}",
@ -414,6 +421,7 @@
"interaction_modal.title.reblog": "Hybu postiad {name}", "interaction_modal.title.reblog": "Hybu postiad {name}",
"interaction_modal.title.reply": "Ymateb i bostiad {name}", "interaction_modal.title.reply": "Ymateb i bostiad {name}",
"interaction_modal.title.vote": "Pleidleisiwch ym mhleidlais {name}", "interaction_modal.title.vote": "Pleidleisiwch ym mhleidlais {name}",
"interaction_modal.username_prompt": "E.e. {example}",
"intervals.full.days": "{number, plural, one {# diwrnod} two {# ddiwrnod} other {# diwrnod}}", "intervals.full.days": "{number, plural, one {# diwrnod} two {# ddiwrnod} other {# diwrnod}}",
"intervals.full.hours": "{number, plural, one {# awr} other {# o oriau}}", "intervals.full.hours": "{number, plural, one {# awr} other {# o oriau}}",
"intervals.full.minutes": "{number, plural, one {# funud} other {# o funudau}}", "intervals.full.minutes": "{number, plural, one {# funud} other {# o funudau}}",
@ -449,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Dangos/cuddio testun tu ôl i CW", "keyboard_shortcuts.toggle_hidden": "Dangos/cuddio testun tu ôl i CW",
"keyboard_shortcuts.toggle_sensitivity": "Dangos/cuddio cyfryngau", "keyboard_shortcuts.toggle_sensitivity": "Dangos/cuddio cyfryngau",
"keyboard_shortcuts.toot": "Dechrau post newydd", "keyboard_shortcuts.toot": "Dechrau post newydd",
"keyboard_shortcuts.translate": "i gyfieithu postiad",
"keyboard_shortcuts.unfocus": "Dad-ffocysu ardal cyfansoddi testun/chwilio", "keyboard_shortcuts.unfocus": "Dad-ffocysu ardal cyfansoddi testun/chwilio",
"keyboard_shortcuts.up": "Symud yn uwch yn y rhestr", "keyboard_shortcuts.up": "Symud yn uwch yn y rhestr",
"lightbox.close": "Cau", "lightbox.close": "Cau",
@ -827,6 +836,7 @@
"status.reblogs.empty": "Does neb wedi hybio'r post yma eto. Pan y bydd rhywun yn gwneud, byddent yn ymddangos yma.", "status.reblogs.empty": "Does neb wedi hybio'r post yma eto. Pan y bydd rhywun yn gwneud, byddent yn ymddangos yma.",
"status.redraft": "Dileu ac ailddrafftio", "status.redraft": "Dileu ac ailddrafftio",
"status.remove_bookmark": "Tynnu nod tudalen", "status.remove_bookmark": "Tynnu nod tudalen",
"status.remove_favourite": "Tynnu o'r ffefrynnau",
"status.replied_in_thread": "Atebodd mewn edefyn", "status.replied_in_thread": "Atebodd mewn edefyn",
"status.replied_to": "Wedi ateb {name}", "status.replied_to": "Wedi ateb {name}",
"status.reply": "Ateb", "status.reply": "Ateb",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Vis/skjul tekst bag CW", "keyboard_shortcuts.toggle_hidden": "Vis/skjul tekst bag CW",
"keyboard_shortcuts.toggle_sensitivity": "Vis/skjul medier", "keyboard_shortcuts.toggle_sensitivity": "Vis/skjul medier",
"keyboard_shortcuts.toot": "Påbegynd nyt indlæg", "keyboard_shortcuts.toot": "Påbegynd nyt indlæg",
"keyboard_shortcuts.translate": "for at oversætte et indlæg",
"keyboard_shortcuts.unfocus": "Fjern fokus fra tekstskrivningsområde/søgning", "keyboard_shortcuts.unfocus": "Fjern fokus fra tekstskrivningsområde/søgning",
"keyboard_shortcuts.up": "Flyt opad på listen", "keyboard_shortcuts.up": "Flyt opad på listen",
"lightbox.close": "Luk", "lightbox.close": "Luk",
@ -481,6 +482,7 @@
"lists.exclusive": "Skjul medlemmer i Hjem", "lists.exclusive": "Skjul medlemmer i Hjem",
"lists.exclusive_hint": "Er nogen er på denne liste, skjul personen i hjemme-feeds for at undgå at se vedkommendes indlæg to gange.", "lists.exclusive_hint": "Er nogen er på denne liste, skjul personen i hjemme-feeds for at undgå at se vedkommendes indlæg to gange.",
"lists.find_users_to_add": "Find brugere at tilføje", "lists.find_users_to_add": "Find brugere at tilføje",
"lists.list_members": "Liste over medlemmer",
"lists.list_members_count": "{count, plural, one {# medlem} other {# medlemmer}}", "lists.list_members_count": "{count, plural, one {# medlem} other {# medlemmer}}",
"lists.list_name": "Listetitel", "lists.list_name": "Listetitel",
"lists.new_list_name": "Ny listetitel", "lists.new_list_name": "Ny listetitel",
@ -835,6 +837,7 @@
"status.reblogs.empty": "Ingen har endnu fremhævet dette indlæg. Når nogen gør, vil det fremgå hér.", "status.reblogs.empty": "Ingen har endnu fremhævet dette indlæg. Når nogen gør, vil det fremgå hér.",
"status.redraft": "Slet og omformulér", "status.redraft": "Slet og omformulér",
"status.remove_bookmark": "Fjern bogmærke", "status.remove_bookmark": "Fjern bogmærke",
"status.remove_favourite": "Fjern fra favoritter",
"status.replied_in_thread": "Svaret i tråd", "status.replied_in_thread": "Svaret i tråd",
"status.replied_to": "Besvarede {name}", "status.replied_to": "Besvarede {name}",
"status.reply": "Besvar", "status.reply": "Besvar",

View file

@ -177,7 +177,7 @@
"compose_form.hashtag_warning": "Dieser Beitrag wird unter keinem Hashtag sichtbar sein, weil er nicht öffentlich ist. Nur öffentliche Beiträge können nach Hashtags durchsucht werden.", "compose_form.hashtag_warning": "Dieser Beitrag wird unter keinem Hashtag sichtbar sein, weil er nicht öffentlich ist. Nur öffentliche Beiträge können nach Hashtags durchsucht werden.",
"compose_form.lock_disclaimer": "Dein Profil ist nicht {locked}. Andere können dir folgen und deine Beiträge sehen, die nur für Follower bestimmt sind.", "compose_form.lock_disclaimer": "Dein Profil ist nicht {locked}. Andere können dir folgen und deine Beiträge sehen, die nur für Follower bestimmt sind.",
"compose_form.lock_disclaimer.lock": "geschützt", "compose_form.lock_disclaimer.lock": "geschützt",
"compose_form.placeholder": "Was gibts Neues?", "compose_form.placeholder": "Was gibts Neues?",
"compose_form.poll.duration": "Umfragedauer", "compose_form.poll.duration": "Umfragedauer",
"compose_form.poll.multiple": "Mehrfachauswahl", "compose_form.poll.multiple": "Mehrfachauswahl",
"compose_form.poll.option_placeholder": "{number}. Auswahl", "compose_form.poll.option_placeholder": "{number}. Auswahl",
@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Beitragstext hinter der Inhaltswarnung anzeigen/ausblenden", "keyboard_shortcuts.toggle_hidden": "Beitragstext hinter der Inhaltswarnung anzeigen/ausblenden",
"keyboard_shortcuts.toggle_sensitivity": "Medien anzeigen/ausblenden", "keyboard_shortcuts.toggle_sensitivity": "Medien anzeigen/ausblenden",
"keyboard_shortcuts.toot": "Neuen Beitrag erstellen", "keyboard_shortcuts.toot": "Neuen Beitrag erstellen",
"keyboard_shortcuts.translate": "Beitrag übersetzen",
"keyboard_shortcuts.unfocus": "Eingabefeld/Suche nicht mehr fokussieren", "keyboard_shortcuts.unfocus": "Eingabefeld/Suche nicht mehr fokussieren",
"keyboard_shortcuts.up": "Ansicht nach oben bewegen", "keyboard_shortcuts.up": "Ansicht nach oben bewegen",
"lightbox.close": "Schließen", "lightbox.close": "Schließen",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Diesen Beitrag hat bisher noch niemand geteilt. Sobald es jemand tut, wird das Profil hier erscheinen.", "status.reblogs.empty": "Diesen Beitrag hat bisher noch niemand geteilt. Sobald es jemand tut, wird das Profil hier erscheinen.",
"status.redraft": "Löschen und neu erstellen", "status.redraft": "Löschen und neu erstellen",
"status.remove_bookmark": "Lesezeichen entfernen", "status.remove_bookmark": "Lesezeichen entfernen",
"status.remove_favourite": "Aus Favoriten entfernen",
"status.replied_in_thread": "Antwortete im Thread", "status.replied_in_thread": "Antwortete im Thread",
"status.replied_to": "Antwortete {name}", "status.replied_to": "Antwortete {name}",
"status.reply": "Antworten", "status.reply": "Antworten",

View file

@ -1,5 +1,5 @@
{ {
"about.blocks": "Συντονισμένοι διακομιστές", "about.blocks": "Συντονιζόμενοι διακομιστές",
"about.contact": "Επικοινωνία:", "about.contact": "Επικοινωνία:",
"about.disclaimer": "Το Mastodon είναι ελεύθερο λογισμικό ανοιχτού κώδικα και εμπορικό σήμα της Mastodon gGmbH.", "about.disclaimer": "Το Mastodon είναι ελεύθερο λογισμικό ανοιχτού κώδικα και εμπορικό σήμα της Mastodon gGmbH.",
"about.domain_blocks.no_reason_available": "Αιτιολογία μη διαθέσιμη", "about.domain_blocks.no_reason_available": "Αιτιολογία μη διαθέσιμη",
@ -407,6 +407,13 @@
"ignore_notifications_modal.not_followers_title": "Αγνόηση ειδοποιήσεων από άτομα που δε σας ακολουθούν;", "ignore_notifications_modal.not_followers_title": "Αγνόηση ειδοποιήσεων από άτομα που δε σας ακολουθούν;",
"ignore_notifications_modal.not_following_title": "Αγνόηση ειδοποιήσεων από άτομα που δεν ακολουθείς;", "ignore_notifications_modal.not_following_title": "Αγνόηση ειδοποιήσεων από άτομα που δεν ακολουθείς;",
"ignore_notifications_modal.private_mentions_title": "Αγνόηση ειδοποιήσεων από μη ζητηθείσες ιδιωτικές αναφορές;", "ignore_notifications_modal.private_mentions_title": "Αγνόηση ειδοποιήσεων από μη ζητηθείσες ιδιωτικές αναφορές;",
"interaction_modal.action.favourite": "Για να συνεχίσεις, θα πρέπει να αγαπήσεις από τον λογαριασμό σου.",
"interaction_modal.action.follow": "Για να συνεχίσεις, θα πρέπει να ακολουθήσεις από τον λογαριασμό σου.",
"interaction_modal.action.reblog": "Για να συνεχίσεις, θα πρέπει να αναδημοσιεύσεις από τον λογαριασμό σου.",
"interaction_modal.action.reply": "Για να συνεχίσεις, θα πρέπει να απαντήσεις από τον λογαριασμό σου.",
"interaction_modal.action.vote": "Για να συνεχίσεις, θα πρέπει να ψηφίσεις από τον λογαριασμό σου.",
"interaction_modal.go": "Πάμε",
"interaction_modal.no_account_yet": "Δεν έχεις ακόμη λογαριασμό;",
"interaction_modal.on_another_server": "Σε διαφορετικό διακομιστή", "interaction_modal.on_another_server": "Σε διαφορετικό διακομιστή",
"interaction_modal.on_this_server": "Σε αυτόν τον διακομιστή", "interaction_modal.on_this_server": "Σε αυτόν τον διακομιστή",
"interaction_modal.title.favourite": "Favorite {name}'s post\nΠροτίμησε την ανάρτηση της/του {name}", "interaction_modal.title.favourite": "Favorite {name}'s post\nΠροτίμησε την ανάρτηση της/του {name}",
@ -414,6 +421,7 @@
"interaction_modal.title.reblog": "Ενίσχυσε την ανάρτηση του {name}", "interaction_modal.title.reblog": "Ενίσχυσε την ανάρτηση του {name}",
"interaction_modal.title.reply": "Απάντηση στην ανάρτηση του {name}", "interaction_modal.title.reply": "Απάντηση στην ανάρτηση του {name}",
"interaction_modal.title.vote": "Ψήφισε στη δημοσκόπηση του χρήστη {name}", "interaction_modal.title.vote": "Ψήφισε στη δημοσκόπηση του χρήστη {name}",
"interaction_modal.username_prompt": "Πχ. {example}",
"intervals.full.days": "{number, plural, one {# μέρα} other {# μέρες}}", "intervals.full.days": "{number, plural, one {# μέρα} other {# μέρες}}",
"intervals.full.hours": "{number, plural, one {# ώρα} other {# ώρες}}", "intervals.full.hours": "{number, plural, one {# ώρα} other {# ώρες}}",
"intervals.full.minutes": "{number, plural, one {# λεπτό} other {# λεπτά}}", "intervals.full.minutes": "{number, plural, one {# λεπτό} other {# λεπτά}}",
@ -539,6 +547,8 @@
"notification.annual_report.view": "Προβολή #Wrapstodon", "notification.annual_report.view": "Προβολή #Wrapstodon",
"notification.favourite": "{name} favorited your post\n{name} προτίμησε την ανάρτηση σου", "notification.favourite": "{name} favorited your post\n{name} προτίμησε την ανάρτηση σου",
"notification.favourite.name_and_others_with_link": "{name} και <a>{count, plural, one {# ακόμη} other {# ακόμη}}</a> αγάπησαν την ανάρτησή σου", "notification.favourite.name_and_others_with_link": "{name} και <a>{count, plural, one {# ακόμη} other {# ακόμη}}</a> αγάπησαν την ανάρτησή σου",
"notification.favourite_pm": "Ο χρήστης {name} αγάπησε την ιδιωτική σου επισήμανση",
"notification.favourite_pm.name_and_others_with_link": "Ο χρήστης {name} και <a>{count, plural, one {# ακόμη} other {# ακόμη}}</a> αγάπησαν την ιδωτική σου επισήμανση",
"notification.follow": "Ο/Η {name} σε ακολούθησε", "notification.follow": "Ο/Η {name} σε ακολούθησε",
"notification.follow.name_and_others": "Ο χρήστης {name} και <a>{count, plural, one {# ακόμη} other {# ακόμη}}</a> σε ακολούθησαν", "notification.follow.name_and_others": "Ο χρήστης {name} και <a>{count, plural, one {# ακόμη} other {# ακόμη}}</a> σε ακολούθησαν",
"notification.follow_request": "Ο/H {name} ζήτησε να σε ακολουθήσει", "notification.follow_request": "Ο/H {name} ζήτησε να σε ακολουθήσει",
@ -685,6 +695,8 @@
"privacy_policy.title": "Πολιτική Απορρήτου", "privacy_policy.title": "Πολιτική Απορρήτου",
"recommended": "Προτεινόμενα", "recommended": "Προτεινόμενα",
"refresh": "Ανανέωση", "refresh": "Ανανέωση",
"regeneration_indicator.please_stand_by": "Παρακαλούμε περίμενε.",
"regeneration_indicator.preparing_your_home_feed": "Ετοιμάζουμε την αρχική σου ροή…",
"relative_time.days": "{number}η", "relative_time.days": "{number}η",
"relative_time.full.days": "πριν από {number, plural, one {# μέρα} other {# μέρες}}", "relative_time.full.days": "πριν από {number, plural, one {# μέρα} other {# μέρες}}",
"relative_time.full.hours": "πριν από {number, plural, one {# ώρα} other {# ώρες}}", "relative_time.full.hours": "πριν από {number, plural, one {# ώρα} other {# ώρες}}",
@ -768,8 +780,11 @@
"search_results.accounts": "Προφίλ", "search_results.accounts": "Προφίλ",
"search_results.all": "Όλα", "search_results.all": "Όλα",
"search_results.hashtags": "Ετικέτες", "search_results.hashtags": "Ετικέτες",
"search_results.no_results": "Κανένα αποτέλεσμα.",
"search_results.no_search_yet": "Δοκίμασε να ψάξεις για δημοσιεύσεις, προφίλ ή ετικέτες.",
"search_results.see_all": "Δες τα όλα", "search_results.see_all": "Δες τα όλα",
"search_results.statuses": "Αναρτήσεις", "search_results.statuses": "Αναρτήσεις",
"search_results.title": "Αναζήτηση για «{q}»",
"server_banner.about_active_users": "Άτομα που χρησιμοποιούν αυτόν τον διακομιστή κατά τις τελευταίες 30 ημέρες (Μηνιαία Ενεργοί Χρήστες)", "server_banner.about_active_users": "Άτομα που χρησιμοποιούν αυτόν τον διακομιστή κατά τις τελευταίες 30 ημέρες (Μηνιαία Ενεργοί Χρήστες)",
"server_banner.active_users": "ενεργοί χρήστες", "server_banner.active_users": "ενεργοί χρήστες",
"server_banner.administered_by": "Διαχειριστής:", "server_banner.administered_by": "Διαχειριστής:",
@ -842,12 +857,13 @@
"subscribed_languages.target": "Αλλαγή εγγεγραμμένων γλωσσών για {target}", "subscribed_languages.target": "Αλλαγή εγγεγραμμένων γλωσσών για {target}",
"tabs_bar.home": "Αρχική", "tabs_bar.home": "Αρχική",
"tabs_bar.notifications": "Ειδοποιήσεις", "tabs_bar.notifications": "Ειδοποιήσεις",
"terms_of_service.title": "Όροι Παροχής Υπηρεσιών",
"time_remaining.days": "απομένουν {number, plural, one {# ημέρα} other {# ημέρες}}", "time_remaining.days": "απομένουν {number, plural, one {# ημέρα} other {# ημέρες}}",
"time_remaining.hours": "απομένουν {number, plural, one {# ώρα} other {# ώρες}}", "time_remaining.hours": "απομένουν {number, plural, one {# ώρα} other {# ώρες}}",
"time_remaining.minutes": "απομένουν {number, plural, one {# λεπτό} other {# λεπτά}}", "time_remaining.minutes": "απομένουν {number, plural, one {# λεπτό} other {# λεπτά}}",
"time_remaining.moments": "Στιγμές που απομένουν", "time_remaining.moments": "Στιγμές που απομένουν",
"time_remaining.seconds": "απομένουν {number, plural, one {# δευτερόλεπτο} other {# δευτερόλεπτα}}", "time_remaining.seconds": "απομένουν {number, plural, one {# δευτερόλεπτο} other {# δευτερόλεπτα}}",
"trends.counter_by_accounts": "{count, plural, one {{counter} άτομο} other {{counter} άτομα} }{days, plural, one { την τελευταία ημέρα} other { τις τελευταίες {days} ημέρες}}", "trends.counter_by_accounts": "{count, plural, one {{counter} άτομο} other {{counter} άτομα}} {days, plural, one {την τελευταία ημέρα} other {τις τελευταίες {days} ημέρες}}",
"trends.trending_now": "Δημοφιλή τώρα", "trends.trending_now": "Δημοφιλή τώρα",
"ui.beforeunload": "Το προσχέδιό σου θα χαθεί αν φύγεις από το Mastodon.", "ui.beforeunload": "Το προσχέδιό σου θα χαθεί αν φύγεις από το Mastodon.",
"units.short.billion": "{count}Δις", "units.short.billion": "{count}Δις",

View file

@ -603,6 +603,7 @@
"keyboard_shortcuts.toggle_hidden": "Show/hide text behind CW", "keyboard_shortcuts.toggle_hidden": "Show/hide text behind CW",
"keyboard_shortcuts.toggle_sensitivity": "Show/hide media", "keyboard_shortcuts.toggle_sensitivity": "Show/hide media",
"keyboard_shortcuts.toot": "Start a new post", "keyboard_shortcuts.toot": "Start a new post",
"keyboard_shortcuts.translate": "to translate a post",
"keyboard_shortcuts.unfocus": "Unfocus compose textarea/search", "keyboard_shortcuts.unfocus": "Unfocus compose textarea/search",
"keyboard_shortcuts.up": "Move up in the list", "keyboard_shortcuts.up": "Move up in the list",
"lightbox.close": "Close", "lightbox.close": "Close",
@ -1052,6 +1053,7 @@
"status.redraft": "Delete & re-draft", "status.redraft": "Delete & re-draft",
"status.reference": "Quiet quote", "status.reference": "Quiet quote",
"status.remove_bookmark": "Remove bookmark", "status.remove_bookmark": "Remove bookmark",
"status.remove_favourite": "Remove from favorites",
"status.replied_in_thread": "Replied in thread", "status.replied_in_thread": "Replied in thread",
"status.replied_to": "Replied to {name}", "status.replied_to": "Replied to {name}",
"status.reply": "Reply", "status.reply": "Reply",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Montri/kaŝi tekston malantaŭ CW", "keyboard_shortcuts.toggle_hidden": "Montri/kaŝi tekston malantaŭ CW",
"keyboard_shortcuts.toggle_sensitivity": "Montri/kaŝi plurmedion", "keyboard_shortcuts.toggle_sensitivity": "Montri/kaŝi plurmedion",
"keyboard_shortcuts.toot": "Komencu novan afiŝon", "keyboard_shortcuts.toot": "Komencu novan afiŝon",
"keyboard_shortcuts.translate": "Traduki afiŝon",
"keyboard_shortcuts.unfocus": "Senfokusigi verki tekstareon/serĉon", "keyboard_shortcuts.unfocus": "Senfokusigi verki tekstareon/serĉon",
"keyboard_shortcuts.up": "Movu supren en la listo", "keyboard_shortcuts.up": "Movu supren en la listo",
"lightbox.close": "Fermi", "lightbox.close": "Fermi",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Ankoraŭ neniu diskonigis tiun afiŝon. Kiam iu faras tion, ri aperos ĉi tie.", "status.reblogs.empty": "Ankoraŭ neniu diskonigis tiun afiŝon. Kiam iu faras tion, ri aperos ĉi tie.",
"status.redraft": "Forigi kaj reskribi", "status.redraft": "Forigi kaj reskribi",
"status.remove_bookmark": "Forigi legosignon", "status.remove_bookmark": "Forigi legosignon",
"status.remove_favourite": "Forigi el plej ŝatataj",
"status.replied_in_thread": "Respondis en fadeno", "status.replied_in_thread": "Respondis en fadeno",
"status.replied_to": "Respondis al {name}", "status.replied_to": "Respondis al {name}",
"status.reply": "Respondi", "status.reply": "Respondi",

View file

@ -103,8 +103,8 @@
"annual_report.summary.most_used_hashtag.most_used_hashtag": "la etiqueta más usada", "annual_report.summary.most_used_hashtag.most_used_hashtag": "la etiqueta más usada",
"annual_report.summary.most_used_hashtag.none": "Ninguna", "annual_report.summary.most_used_hashtag.none": "Ninguna",
"annual_report.summary.new_posts.new_posts": "nuevos mensajes", "annual_report.summary.new_posts.new_posts": "nuevos mensajes",
"annual_report.summary.percentile.text": "<topLabel>Eso te coloca en el top</topLabel><percentage></percentage><bottomLabel>de usuarios de {domain}.</bottomLabel>", "annual_report.summary.percentile.text": "<topLabel>Eso te coloca en la cima del</topLabel><percentage></percentage><bottomLabel>de los usuarios de {domain}.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "No se lo diremos a Bernie.", "annual_report.summary.percentile.we_wont_tell_bernie": "Queda entre nos.",
"annual_report.summary.thanks": "¡Gracias por ser parte de Mastodon!", "annual_report.summary.thanks": "¡Gracias por ser parte de Mastodon!",
"attachments_list.unprocessed": "[sin procesar]", "attachments_list.unprocessed": "[sin procesar]",
"audio.hide": "Ocultar audio", "audio.hide": "Ocultar audio",
@ -129,7 +129,7 @@
"bundle_column_error.routing.body": "No se pudo encontrar la página solicitada. ¿Estás seguro que la dirección web es correcta?", "bundle_column_error.routing.body": "No se pudo encontrar la página solicitada. ¿Estás seguro que la dirección web es correcta?",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "Cerrar", "bundle_modal_error.close": "Cerrar",
"bundle_modal_error.message": "Ha habido algún error mientras cargábamos esta pantalla.", "bundle_modal_error.message": "Algo salió mal al cargar esta pantalla.",
"bundle_modal_error.retry": "Intentá de nuevo", "bundle_modal_error.retry": "Intentá de nuevo",
"closed_registrations.other_server_instructions": "Ya que Mastodon es descentralizado, podés crearte una cuenta en otro servidor y todavía interactuar con éste.", "closed_registrations.other_server_instructions": "Ya que Mastodon es descentralizado, podés crearte una cuenta en otro servidor y todavía interactuar con éste.",
"closed_registrations_modal.description": "Actualmente no es posible crearte una cuenta en {domain}. pero recordá que no necesitás tener una cuenta puntualmente dentro de {domain} para poder usar Mastodon.", "closed_registrations_modal.description": "Actualmente no es posible crearte una cuenta en {domain}. pero recordá que no necesitás tener una cuenta puntualmente dentro de {domain} para poder usar Mastodon.",
@ -205,9 +205,9 @@
"confirmations.edit.confirm": "Editar", "confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "Editar ahora sobreescribirá el mensaje que estás redactando actualmente. ¿Estás seguro que querés seguir?", "confirmations.edit.message": "Editar ahora sobreescribirá el mensaje que estás redactando actualmente. ¿Estás seguro que querés seguir?",
"confirmations.edit.title": "¿Sobrescribir mensaje?", "confirmations.edit.title": "¿Sobrescribir mensaje?",
"confirmations.follow_to_list.confirm": "Seguir y añadir a la lista", "confirmations.follow_to_list.confirm": "Seguir y agregar a la lista",
"confirmations.follow_to_list.message": "Necesitas seguir a {name} para agregarlo a una lista.", "confirmations.follow_to_list.message": "Necesitás seguir a {name} para agregarle a una lista.",
"confirmations.follow_to_list.title": "¿Seguir usuario?", "confirmations.follow_to_list.title": "¿Querés seguirle?",
"confirmations.logout.confirm": "Cerrar sesión", "confirmations.logout.confirm": "Cerrar sesión",
"confirmations.logout.message": "¿Estás seguro que querés cerrar la sesión?", "confirmations.logout.message": "¿Estás seguro que querés cerrar la sesión?",
"confirmations.logout.title": "¿Cerrar sesión?", "confirmations.logout.title": "¿Cerrar sesión?",
@ -239,10 +239,10 @@
"disabled_account_banner.text": "Tu cuenta {disabledAccount} está actualmente deshabilitada.", "disabled_account_banner.text": "Tu cuenta {disabledAccount} está actualmente deshabilitada.",
"dismissable_banner.community_timeline": "Estos son los mensajes públicos más recientes de cuentas alojadas en {domain}.", "dismissable_banner.community_timeline": "Estos son los mensajes públicos más recientes de cuentas alojadas en {domain}.",
"dismissable_banner.dismiss": "Descartar", "dismissable_banner.dismiss": "Descartar",
"dismissable_banner.explore_links": "Estas noticias son las más compartidas hoy en el fediverso. Las noticias más recientes publicadas por más personas diferentes se clasifican mejor.", "dismissable_banner.explore_links": "Estas noticias son las más compartidas hoy en el Fediverso. Las noticias más recientes compartidas por más cuentas se clasifican mejor.",
"dismissable_banner.explore_statuses": "Estas publicaciones del fediverso están ganando popularidad hoy. Las publicaciones más recientes, con más impulsos y favoritos, se clasifican mejor.", "dismissable_banner.explore_statuses": "Estos mensajes del Fediverso están ganando popularidad hoy. Los mensajes más recientes, con más adhesiones y marcados como favoritos, se clasifican mejor.",
"dismissable_banner.explore_tags": "Estas etiquetas están ganando popularidad hoy en el fediverso. Las etiquetas que son utilizadas por más personas diferentes se puntúan más alto.", "dismissable_banner.explore_tags": "Estas etiquetas están ganando popularidad hoy en el Fediverso. Las etiquetas que son utilizadas por más cuentas se clasifican mejor.",
"dismissable_banner.public_timeline": "Estas son las publicaciones más recientes de las personas del fediverso a las que sigue la gente de {domain}.", "dismissable_banner.public_timeline": "Estos son los mensajes más recientes de cuentas del Fediverso a las que sigue la gente de {domain}.",
"domain_block_modal.block": "Bloquear servidor", "domain_block_modal.block": "Bloquear servidor",
"domain_block_modal.block_account_instead": "Bloquear @{name} en su lugar", "domain_block_modal.block_account_instead": "Bloquear @{name} en su lugar",
"domain_block_modal.they_can_interact_with_old_posts": "Las cuentas de este servidor pueden interactuar con tus mensajes antiguos.", "domain_block_modal.they_can_interact_with_old_posts": "Las cuentas de este servidor pueden interactuar con tus mensajes antiguos.",
@ -365,7 +365,7 @@
"footer.terms_of_service": "Términos del servicio", "footer.terms_of_service": "Términos del servicio",
"generic.saved": "Guardado", "generic.saved": "Guardado",
"getting_started.heading": "Inicio de Mastodon", "getting_started.heading": "Inicio de Mastodon",
"hashtag.admin_moderation": "Abrir interfaz de moderación para #{name}", "hashtag.admin_moderation": "Abrir interface de moderación para #{name}",
"hashtag.column_header.tag_mode.all": "y {additional}", "hashtag.column_header.tag_mode.all": "y {additional}",
"hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.any": "o {additional}",
"hashtag.column_header.tag_mode.none": "sin {additional}", "hashtag.column_header.tag_mode.none": "sin {additional}",
@ -407,13 +407,13 @@
"ignore_notifications_modal.not_followers_title": "¿Ignorar notificaciones de cuentas que no te siguen?", "ignore_notifications_modal.not_followers_title": "¿Ignorar notificaciones de cuentas que no te siguen?",
"ignore_notifications_modal.not_following_title": "¿Ignorar notificaciones de cuentas a las que no seguís?", "ignore_notifications_modal.not_following_title": "¿Ignorar notificaciones de cuentas a las que no seguís?",
"ignore_notifications_modal.private_mentions_title": "¿Ignorar notificaciones de menciones privadas no solicitadas?", "ignore_notifications_modal.private_mentions_title": "¿Ignorar notificaciones de menciones privadas no solicitadas?",
"interaction_modal.action.favourite": "Para continuar, tienes que marcar como favorito desde tu cuenta.", "interaction_modal.action.favourite": "Para continuar, tenés que marcar como favorito desde tu cuenta.",
"interaction_modal.action.follow": "Para continuar, tienes que seguir desde tu cuenta.", "interaction_modal.action.follow": "Para continuar, tenés que seguir desde tu cuenta.",
"interaction_modal.action.reblog": "Para continuar, necesitas impulsar desde tu cuenta.", "interaction_modal.action.reblog": "Para continuar, tenés que adherir desde tu cuenta.",
"interaction_modal.action.reply": "Para continuar, tienes que responder desde tu cuenta.", "interaction_modal.action.reply": "Para continuar, tenés que responder desde tu cuenta.",
"interaction_modal.action.vote": "Para continuar, tienes que votar desde tu cuenta.", "interaction_modal.action.vote": "Para continuar, tenés que votar desde tu cuenta.",
"interaction_modal.go": "Ir", "interaction_modal.go": "Ir",
"interaction_modal.no_account_yet": "¿Todavía no tienes cuenta?", "interaction_modal.no_account_yet": "¿Todavía no tenés cuenta?",
"interaction_modal.on_another_server": "En un servidor diferente", "interaction_modal.on_another_server": "En un servidor diferente",
"interaction_modal.on_this_server": "En este servidor", "interaction_modal.on_this_server": "En este servidor",
"interaction_modal.title.favourite": "Marcar como favorito el mensaje de {name}", "interaction_modal.title.favourite": "Marcar como favorito el mensaje de {name}",
@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Mostrar/ocultar texto detrás de la advertencia de contenido (\"CW\")", "keyboard_shortcuts.toggle_hidden": "Mostrar/ocultar texto detrás de la advertencia de contenido (\"CW\")",
"keyboard_shortcuts.toggle_sensitivity": "Mostrar/ocultar medios", "keyboard_shortcuts.toggle_sensitivity": "Mostrar/ocultar medios",
"keyboard_shortcuts.toot": "Comenzar un mensaje nuevo", "keyboard_shortcuts.toot": "Comenzar un mensaje nuevo",
"keyboard_shortcuts.translate": "para traducir un mensaje",
"keyboard_shortcuts.unfocus": "Quitar el foco del área de texto de redacción o de búsqueda", "keyboard_shortcuts.unfocus": "Quitar el foco del área de texto de redacción o de búsqueda",
"keyboard_shortcuts.up": "Subir en la lista", "keyboard_shortcuts.up": "Subir en la lista",
"lightbox.close": "Cerrar", "lightbox.close": "Cerrar",
@ -543,12 +544,12 @@
"notification.admin.report_statuses_other": "{name} denunció a {target}", "notification.admin.report_statuses_other": "{name} denunció a {target}",
"notification.admin.sign_up": "Se registró {name}", "notification.admin.sign_up": "Se registró {name}",
"notification.admin.sign_up.name_and_others": "Se registraron {name} y {count, plural, one {# cuenta más} other {# cuentas más}}", "notification.admin.sign_up.name_and_others": "Se registraron {name} y {count, plural, one {# cuenta más} other {# cuentas más}}",
"notification.annual_report.message": "¡Tu #Wrapstodon {year} te espera! ¡Desvela los momentos más destacados y memorables de tu año en Mastodon!", "notification.annual_report.message": "¡Tu #Wrapstodon {year} te espera! ¡Desvelá los momentos más destacados y memorables de tu año en Mastodon!",
"notification.annual_report.view": "Ver #Wrapstodon", "notification.annual_report.view": "Ver #Wrapstodon",
"notification.favourite": "{name} marcó tu mensaje como favorito", "notification.favourite": "{name} marcó tu mensaje como favorito",
"notification.favourite.name_and_others_with_link": "{name} y <a>{count, plural, one {# cuenta más} other {# cuentas más}}</a> marcaron tu mensaje como favorito", "notification.favourite.name_and_others_with_link": "{name} y <a>{count, plural, one {# cuenta más} other {# cuentas más}}</a> marcaron tu mensaje como favorito",
"notification.favourite_pm": "{name} ha marcado como favorita tu mención privada", "notification.favourite_pm": "{name} marcó como favorito tu mención privada",
"notification.favourite_pm.name_and_others_with_link": "{name} y <a>{count, plural, one {# más} other {# más}}</a> han marcado como favorita tu mención privada", "notification.favourite_pm.name_and_others_with_link": "{name} y <a>{count, plural, one {# más} other {# más}}</a> marcaron como favorito tu mención privada",
"notification.follow": "{name} te empezó a seguir", "notification.follow": "{name} te empezó a seguir",
"notification.follow.name_and_others": "{name} y <a>{count, plural, one {# cuenta más} other {# cuentas más}}</a> te están siguiendo", "notification.follow.name_and_others": "{name} y <a>{count, plural, one {# cuenta más} other {# cuentas más}}</a> te están siguiendo",
"notification.follow_request": "{name} solicitó seguirte", "notification.follow_request": "{name} solicitó seguirte",
@ -695,8 +696,8 @@
"privacy_policy.title": "Política de privacidad", "privacy_policy.title": "Política de privacidad",
"recommended": "Opción recomendada", "recommended": "Opción recomendada",
"refresh": "Refrescar", "refresh": "Refrescar",
"regeneration_indicator.please_stand_by": "Espera, por favor.", "regeneration_indicator.please_stand_by": "Esperá, por favor.",
"regeneration_indicator.preparing_your_home_feed": "Preparando tu página de inicio…", "regeneration_indicator.preparing_your_home_feed": "Preparando tu línea temporal principal…",
"relative_time.days": "{number}d", "relative_time.days": "{number}d",
"relative_time.full.days": "{number, plural,one {hace # día} other {hace # días}}", "relative_time.full.days": "{number, plural,one {hace # día} other {hace # días}}",
"relative_time.full.hours": "{number, plural,one {hace # hora} other {hace # horas}}", "relative_time.full.hours": "{number, plural,one {hace # hora} other {hace # horas}}",
@ -781,10 +782,10 @@
"search_results.all": "Todos", "search_results.all": "Todos",
"search_results.hashtags": "Etiquetas", "search_results.hashtags": "Etiquetas",
"search_results.no_results": "Sin resultados.", "search_results.no_results": "Sin resultados.",
"search_results.no_search_yet": "Intenta buscar publicaciones, perfiles o etiquetas.", "search_results.no_search_yet": "Intentá buscar publicaciones, perfiles o etiquetas.",
"search_results.see_all": "Ver todo", "search_results.see_all": "Ver todo",
"search_results.statuses": "Mensajes", "search_results.statuses": "Mensajes",
"search_results.title": "Búsqueda de \"{q}\"", "search_results.title": "Búsqueda de «{q}»",
"server_banner.about_active_users": "Personas usando este servidor durante los últimos 30 días (Usuarios Activos Mensuales)", "server_banner.about_active_users": "Personas usando este servidor durante los últimos 30 días (Usuarios Activos Mensuales)",
"server_banner.active_users": "usuarios activos", "server_banner.active_users": "usuarios activos",
"server_banner.administered_by": "Administrado por:", "server_banner.administered_by": "Administrado por:",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Todavía nadie adhirió a este mensaje. Cuando alguien lo haga, se mostrará acá.", "status.reblogs.empty": "Todavía nadie adhirió a este mensaje. Cuando alguien lo haga, se mostrará acá.",
"status.redraft": "Eliminar mensaje original y editarlo", "status.redraft": "Eliminar mensaje original y editarlo",
"status.remove_bookmark": "Quitar marcador", "status.remove_bookmark": "Quitar marcador",
"status.remove_favourite": "Quitar de favoritos",
"status.replied_in_thread": "Respuesta en hilo", "status.replied_in_thread": "Respuesta en hilo",
"status.replied_to": "Respondió a {name}", "status.replied_to": "Respondió a {name}",
"status.reply": "Responder", "status.reply": "Responder",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)", "keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)",
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios", "keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios",
"keyboard_shortcuts.toot": "Comenzar una nueva publicación", "keyboard_shortcuts.toot": "Comenzar una nueva publicación",
"keyboard_shortcuts.translate": "para traducir una publicación",
"keyboard_shortcuts.unfocus": "para retirar el foco de la caja de redacción/búsqueda", "keyboard_shortcuts.unfocus": "para retirar el foco de la caja de redacción/búsqueda",
"keyboard_shortcuts.up": "para ir hacia arriba en la lista", "keyboard_shortcuts.up": "para ir hacia arriba en la lista",
"lightbox.close": "Cerrar", "lightbox.close": "Cerrar",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Nadie impulsó esta publicación todavía. Cuando alguien lo haga, aparecerá aquí.", "status.reblogs.empty": "Nadie impulsó esta publicación todavía. Cuando alguien lo haga, aparecerá aquí.",
"status.redraft": "Borrar y volver a borrador", "status.redraft": "Borrar y volver a borrador",
"status.remove_bookmark": "Eliminar marcador", "status.remove_bookmark": "Eliminar marcador",
"status.remove_favourite": "Eliminar de favoritos",
"status.replied_in_thread": "Respondido en el hilo", "status.replied_in_thread": "Respondido en el hilo",
"status.replied_to": "Respondió a {name}", "status.replied_to": "Respondió a {name}",
"status.reply": "Responder", "status.reply": "Responder",

View file

@ -409,7 +409,7 @@
"ignore_notifications_modal.private_mentions_title": "¿Ignorar notificaciones de menciones privadas no solicitadas?", "ignore_notifications_modal.private_mentions_title": "¿Ignorar notificaciones de menciones privadas no solicitadas?",
"interaction_modal.action.favourite": "Para continuar, tienes que marcar como favorito desde tu cuenta.", "interaction_modal.action.favourite": "Para continuar, tienes que marcar como favorito desde tu cuenta.",
"interaction_modal.action.follow": "Para continuar, tienes que seguir desde tu cuenta.", "interaction_modal.action.follow": "Para continuar, tienes que seguir desde tu cuenta.",
"interaction_modal.action.reblog": "Para continuar, necesitas impulsar desde tu cuenta.", "interaction_modal.action.reblog": "Para continuar, tienes que impulsar desde tu cuenta.",
"interaction_modal.action.reply": "Para continuar, tienes que responder desde tu cuenta.", "interaction_modal.action.reply": "Para continuar, tienes que responder desde tu cuenta.",
"interaction_modal.action.vote": "Para continuar, tienes que votar desde tu cuenta.", "interaction_modal.action.vote": "Para continuar, tienes que votar desde tu cuenta.",
"interaction_modal.go": "Ir", "interaction_modal.go": "Ir",
@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)", "keyboard_shortcuts.toggle_hidden": "mostrar/ocultar texto tras aviso de contenido (CW)",
"keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios", "keyboard_shortcuts.toggle_sensitivity": "mostrar/ocultar medios",
"keyboard_shortcuts.toot": "Comienza una nueva publicación", "keyboard_shortcuts.toot": "Comienza una nueva publicación",
"keyboard_shortcuts.translate": "para traducir una publicación",
"keyboard_shortcuts.unfocus": "para retirar el foco de la caja de redacción/búsqueda", "keyboard_shortcuts.unfocus": "para retirar el foco de la caja de redacción/búsqueda",
"keyboard_shortcuts.up": "para ir hacia arriba en la lista", "keyboard_shortcuts.up": "para ir hacia arriba en la lista",
"lightbox.close": "Cerrar", "lightbox.close": "Cerrar",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Nadie ha impulsado esta publicación todavía. Cuando alguien lo haga, aparecerá aquí.", "status.reblogs.empty": "Nadie ha impulsado esta publicación todavía. Cuando alguien lo haga, aparecerá aquí.",
"status.redraft": "Borrar y volver a borrador", "status.redraft": "Borrar y volver a borrador",
"status.remove_bookmark": "Eliminar marcador", "status.remove_bookmark": "Eliminar marcador",
"status.remove_favourite": "Eliminar de favoritos",
"status.replied_in_thread": "Respondió en el hilo", "status.replied_in_thread": "Respondió en el hilo",
"status.replied_to": "Respondió a {name}", "status.replied_to": "Respondió a {name}",
"status.reply": "Responder", "status.reply": "Responder",

View file

@ -12,7 +12,7 @@
"about.powered_by": "Hajutatud sotsiaalmeedia, mille taga on {mastodon}", "about.powered_by": "Hajutatud sotsiaalmeedia, mille taga on {mastodon}",
"about.rules": "Serveri reeglid", "about.rules": "Serveri reeglid",
"account.account_note_header": "Isiklik märge", "account.account_note_header": "Isiklik märge",
"account.add_or_remove_from_list": "Lisa või Eemalda nimekirjadest", "account.add_or_remove_from_list": "Lisa või Eemalda loeteludest",
"account.badges.bot": "Robot", "account.badges.bot": "Robot",
"account.badges.group": "Grupp", "account.badges.group": "Grupp",
"account.block": "Blokeeri @{name}", "account.block": "Blokeeri @{name}",
@ -103,6 +103,7 @@
"annual_report.summary.most_used_hashtag.most_used_hashtag": "enim kasutatud silt", "annual_report.summary.most_used_hashtag.most_used_hashtag": "enim kasutatud silt",
"annual_report.summary.most_used_hashtag.none": "Pole", "annual_report.summary.most_used_hashtag.none": "Pole",
"annual_report.summary.new_posts.new_posts": "uus postitus", "annual_report.summary.new_posts.new_posts": "uus postitus",
"annual_report.summary.percentile.text": "<topLabel>See paneb su top</topLabel><percentage></percentage><bottomLabel> {domain} kasutajate hulka.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Vägev.", "annual_report.summary.percentile.we_wont_tell_bernie": "Vägev.",
"annual_report.summary.thanks": "Tänud olemast osa Mastodonist!", "annual_report.summary.thanks": "Tänud olemast osa Mastodonist!",
"attachments_list.unprocessed": "(töötlemata)", "attachments_list.unprocessed": "(töötlemata)",
@ -149,7 +150,7 @@
"column.follow_requests": "Jälgimistaotlused", "column.follow_requests": "Jälgimistaotlused",
"column.home": "Kodu", "column.home": "Kodu",
"column.list_members": "Halda loendi liikmeid", "column.list_members": "Halda loendi liikmeid",
"column.lists": "Nimekirjad", "column.lists": "Loetelud",
"column.mutes": "Vaigistatud kasutajad", "column.mutes": "Vaigistatud kasutajad",
"column.notifications": "Teated", "column.notifications": "Teated",
"column.pins": "Kinnitatud postitused", "column.pins": "Kinnitatud postitused",
@ -408,6 +409,11 @@
"ignore_notifications_modal.private_mentions_title": "Ignoreeri soovimatute eraviisiliste mainimiste teateid?", "ignore_notifications_modal.private_mentions_title": "Ignoreeri soovimatute eraviisiliste mainimiste teateid?",
"interaction_modal.action.favourite": "Jätkamiseks pead oma konto alt lemmikuks märkima.", "interaction_modal.action.favourite": "Jätkamiseks pead oma konto alt lemmikuks märkima.",
"interaction_modal.action.follow": "Jätkamiseks pead oma konto alt lemmikuks märkima.", "interaction_modal.action.follow": "Jätkamiseks pead oma konto alt lemmikuks märkima.",
"interaction_modal.action.reblog": "Jätkamiseks pead jagama oma konto alt.",
"interaction_modal.action.reply": "Jätkamiseks pead vastama oma konto alt.",
"interaction_modal.action.vote": "Jätkamiseks pead hääletama oma konto alt.",
"interaction_modal.go": "Mine",
"interaction_modal.no_account_yet": "Pole veel kontot?",
"interaction_modal.on_another_server": "Teises serveris", "interaction_modal.on_another_server": "Teises serveris",
"interaction_modal.on_this_server": "Selles serveris", "interaction_modal.on_this_server": "Selles serveris",
"interaction_modal.title.favourite": "Lisa konto {name} postitus lemmikuks", "interaction_modal.title.favourite": "Lisa konto {name} postitus lemmikuks",
@ -415,11 +421,12 @@
"interaction_modal.title.reblog": "Jaga {name} postitust", "interaction_modal.title.reblog": "Jaga {name} postitust",
"interaction_modal.title.reply": "Vasta kasutaja {name} postitusele", "interaction_modal.title.reply": "Vasta kasutaja {name} postitusele",
"interaction_modal.title.vote": "Hääleta {name} küsitluses", "interaction_modal.title.vote": "Hääleta {name} küsitluses",
"interaction_modal.username_prompt": "Nt {example}",
"intervals.full.days": "{number, plural, one {# päev} other {# päeva}}", "intervals.full.days": "{number, plural, one {# päev} other {# päeva}}",
"intervals.full.hours": "{number, plural, one {# tund} other {# tundi}}", "intervals.full.hours": "{number, plural, one {# tund} other {# tundi}}",
"intervals.full.minutes": "{number, plural, one {# minut} other {# minutit}}", "intervals.full.minutes": "{number, plural, one {# minut} other {# minutit}}",
"keyboard_shortcuts.back": "Liigu tagasi", "keyboard_shortcuts.back": "Liigu tagasi",
"keyboard_shortcuts.blocked": "avamaks blokeeritud kasutajate nimistut", "keyboard_shortcuts.blocked": "Ava blokeeritud kasutajate nimistu",
"keyboard_shortcuts.boost": "Jaga", "keyboard_shortcuts.boost": "Jaga",
"keyboard_shortcuts.column": "Fookus veerule", "keyboard_shortcuts.column": "Fookus veerule",
"keyboard_shortcuts.compose": "Fookus teksti koostamise alale", "keyboard_shortcuts.compose": "Fookus teksti koostamise alale",
@ -464,14 +471,30 @@
"link_preview.shares": "{count, plural, one {{counter} postitus} other {{counter} postitust}}", "link_preview.shares": "{count, plural, one {{counter} postitus} other {{counter} postitust}}",
"lists.add_member": "Lisa", "lists.add_member": "Lisa",
"lists.add_to_list": "Lisa loendisse", "lists.add_to_list": "Lisa loendisse",
"lists.delete": "Kustuta nimekiri", "lists.add_to_lists": "Lisa {name} loetellu",
"lists.edit": "Muuda nimekirja", "lists.create": "Loo",
"lists.create_a_list_to_organize": "Loo uus loetelu, et organiseerida oma avalehe lõime",
"lists.create_list": "Loo loetelu",
"lists.delete": "Kustuta loetelu",
"lists.done": "Valmis",
"lists.edit": "Muuda loetelu",
"lists.exclusive": "Peida avalehelt liikmed",
"lists.exclusive_hint": "Kui keegi on selles loetelus, peida ta avalehe lõimest, vältimaks tema postituste kaks korda nägemist.",
"lists.find_users_to_add": "Leia kasutajaid, keda lisada",
"lists.list_members": "Loetelu liikmed",
"lists.list_members_count": "{count, plural, one {# liige} other {# liiget}}",
"lists.list_name": "Loetelu nimi",
"lists.new_list_name": "Loetelu uus nimi",
"lists.no_lists_yet": "Pole veel loetelusid.",
"lists.no_members_yet": "Pole veel liikmeid.", "lists.no_members_yet": "Pole veel liikmeid.",
"lists.no_results_found": "Ei leidnud tulemusi.",
"lists.remove_member": "Eemalda",
"lists.replies_policy.followed": "Igalt jälgitud kasutajalt", "lists.replies_policy.followed": "Igalt jälgitud kasutajalt",
"lists.replies_policy.list": "Listi liikmetelt", "lists.replies_policy.list": "Loetelu liikmetelt",
"lists.replies_policy.none": "Mitte kelleltki", "lists.replies_policy.none": "Mitte kelleltki",
"lists.save": "Salvesta", "lists.save": "Salvesta",
"lists.search": "Otsi", "lists.search": "Otsi",
"lists.show_replies_to": "Kaasa ka loetelu liikmete vastused",
"load_pending": "{count, plural, one {# uus kirje} other {# uut kirjet}}", "load_pending": "{count, plural, one {# uus kirje} other {# uut kirjet}}",
"loading_indicator.label": "Laadimine…", "loading_indicator.label": "Laadimine…",
"media_gallery.hide": "Peida", "media_gallery.hide": "Peida",
@ -501,7 +524,7 @@
"navigation_bar.follow_requests": "Jälgimistaotlused", "navigation_bar.follow_requests": "Jälgimistaotlused",
"navigation_bar.followed_tags": "Jälgitavad märksõnad", "navigation_bar.followed_tags": "Jälgitavad märksõnad",
"navigation_bar.follows_and_followers": "Jälgitavad ja jälgijad", "navigation_bar.follows_and_followers": "Jälgitavad ja jälgijad",
"navigation_bar.lists": "Nimekirjad", "navigation_bar.lists": "Loetelud",
"navigation_bar.logout": "Logi välja", "navigation_bar.logout": "Logi välja",
"navigation_bar.moderation": "Modereerimine", "navigation_bar.moderation": "Modereerimine",
"navigation_bar.mutes": "Vaigistatud kasutajad", "navigation_bar.mutes": "Vaigistatud kasutajad",
@ -626,7 +649,11 @@
"notifications_permission_banner.enable": "Luba töölaua märguanded", "notifications_permission_banner.enable": "Luba töölaua märguanded",
"notifications_permission_banner.how_to_control": "Et saada teateid, ajal mil Mastodon pole avatud, luba töölauamärguanded. Saad täpselt määrata, mis tüüpi tegevused tekitavad märguandeid, kasutates peale teadaannete sisse lülitamist üleval olevat nuppu {icon}.", "notifications_permission_banner.how_to_control": "Et saada teateid, ajal mil Mastodon pole avatud, luba töölauamärguanded. Saad täpselt määrata, mis tüüpi tegevused tekitavad märguandeid, kasutates peale teadaannete sisse lülitamist üleval olevat nuppu {icon}.",
"notifications_permission_banner.title": "Ära jää millestki ilma", "notifications_permission_banner.title": "Ära jää millestki ilma",
"onboarding.follows.back": "Tagasi",
"onboarding.follows.done": "Valmis",
"onboarding.follows.empty": "Kahjuks ei saa hetkel tulemusi näidata. Proovi kasutada otsingut või lehitse uurimise lehte, et leida inimesi, keda jälgida, või proovi hiljem uuesti.", "onboarding.follows.empty": "Kahjuks ei saa hetkel tulemusi näidata. Proovi kasutada otsingut või lehitse uurimise lehte, et leida inimesi, keda jälgida, või proovi hiljem uuesti.",
"onboarding.follows.search": "Otsi",
"onboarding.follows.title": "Jälgi inimesi, et alustada",
"onboarding.profile.discoverable": "Muuda mu profiil avastatavaks", "onboarding.profile.discoverable": "Muuda mu profiil avastatavaks",
"onboarding.profile.discoverable_hint": "Kui nõustud enda avastamisega Mastodonis, võivad sinu postitused ilmuda otsingutulemustes ja trendides ning sinu profiili võidakse soovitada sinuga sarnaste huvidega inimestele.", "onboarding.profile.discoverable_hint": "Kui nõustud enda avastamisega Mastodonis, võivad sinu postitused ilmuda otsingutulemustes ja trendides ning sinu profiili võidakse soovitada sinuga sarnaste huvidega inimestele.",
"onboarding.profile.display_name": "Näidatav nimi", "onboarding.profile.display_name": "Näidatav nimi",

View file

@ -361,6 +361,7 @@
"footer.privacy_policy": "سیاست محرمانگی", "footer.privacy_policy": "سیاست محرمانگی",
"footer.source_code": "نمایش کد مبدأ", "footer.source_code": "نمایش کد مبدأ",
"footer.status": "وضعیت", "footer.status": "وضعیت",
"footer.terms_of_service": "شرایط استفاده از خدمات",
"generic.saved": "ذخیره شده", "generic.saved": "ذخیره شده",
"getting_started.heading": "آغاز کنید", "getting_started.heading": "آغاز کنید",
"hashtag.admin_moderation": "گشودن میانای نظارت برای #{name}", "hashtag.admin_moderation": "گشودن میانای نظارت برای #{name}",
@ -394,13 +395,24 @@
"home.pending_critical_update.link": "دیدن به‌روز رسانی‌ها", "home.pending_critical_update.link": "دیدن به‌روز رسانی‌ها",
"home.pending_critical_update.title": "به‌روز رسانی امنیتی بحرانی موجود است!", "home.pending_critical_update.title": "به‌روز رسانی امنیتی بحرانی موجود است!",
"home.show_announcements": "نمایش اعلامیه‌ها", "home.show_announcements": "نمایش اعلامیه‌ها",
"ignore_notifications_modal.disclaimer": "ماستودون نمی تواند به کاربران اطلاع دهد که اعلان های آنها را نادیده گرفته اید. نادیده گرفتن اعلان ها مانع از ارسال خود پیام ها نمی شود.",
"ignore_notifications_modal.filter_instead": "به جایش پالوده شود", "ignore_notifications_modal.filter_instead": "به جایش پالوده شود",
"ignore_notifications_modal.filter_to_act_users": "همچنان می‌توانید کاربران را بپذیرید، رد کنید یا گزارش دهید",
"ignore_notifications_modal.filter_to_avoid_confusion": "فیلتر کردن به جلوگیری از سردرگمی احتمالی کمک می کند",
"ignore_notifications_modal.filter_to_review_separately": "می توانید اعلان های فیلتر شده را به طور جداگانه بررسی کنید",
"ignore_notifications_modal.ignore": "چشم‌پوشی از آگاهی‌ها", "ignore_notifications_modal.ignore": "چشم‌پوشی از آگاهی‌ها",
"ignore_notifications_modal.limited_accounts_title": "چشم‌پوشی از آگاهی‌های حساب‌های نظارت شده؟", "ignore_notifications_modal.limited_accounts_title": "چشم‌پوشی از آگاهی‌های حساب‌های نظارت شده؟",
"ignore_notifications_modal.new_accounts_title": "چشم‌پوشی از آگاهی‌های حساب‌های جدید؟", "ignore_notifications_modal.new_accounts_title": "چشم‌پوشی از آگاهی‌های حساب‌های جدید؟",
"ignore_notifications_modal.not_followers_title": "چشم‌پوشی از آگاهی‌های افرادی که پیتان نمی‌گیرند؟", "ignore_notifications_modal.not_followers_title": "چشم‌پوشی از آگاهی‌های افرادی که پیتان نمی‌گیرند؟",
"ignore_notifications_modal.not_following_title": "چشم‌پوشی از آگاهی‌های افرادی که پیشان نمی‌گیرید؟", "ignore_notifications_modal.not_following_title": "چشم‌پوشی از آگاهی‌های افرادی که پیشان نمی‌گیرید؟",
"ignore_notifications_modal.private_mentions_title": "چشم‌پوشی از نام‌بری‌های خصوصی ناخواسته؟", "ignore_notifications_modal.private_mentions_title": "چشم‌پوشی از نام‌بری‌های خصوصی ناخواسته؟",
"interaction_modal.action.favourite": "برای ادامه، باید از حساب خود به دلخواه انتخاب کنید.",
"interaction_modal.action.follow": "برای ادامه، باید از حساب کاربری خود دنبال کنید.",
"interaction_modal.action.reblog": "برای ادامه، باید از حساب خود مجددا بلاگ کنید.",
"interaction_modal.action.reply": "برای ادامه، باید از حساب خود پاسخ دهید.",
"interaction_modal.action.vote": "برای ادامه، باید از حساب کاربری خود رای دهید.",
"interaction_modal.go": "برو",
"interaction_modal.no_account_yet": "هنوز حساب کاربری ندارید؟",
"interaction_modal.on_another_server": "روی کارسازی دیگر", "interaction_modal.on_another_server": "روی کارسازی دیگر",
"interaction_modal.on_this_server": "روی این کارساز", "interaction_modal.on_this_server": "روی این کارساز",
"interaction_modal.title.favourite": "فرسته‌های برگزیدهٔ {name}", "interaction_modal.title.favourite": "فرسته‌های برگزیدهٔ {name}",
@ -408,6 +420,7 @@
"interaction_modal.title.reblog": "تقویت فرستهٔ {name}", "interaction_modal.title.reblog": "تقویت فرستهٔ {name}",
"interaction_modal.title.reply": "پاسخ به فرستهٔ {name}", "interaction_modal.title.reply": "پاسخ به فرستهٔ {name}",
"interaction_modal.title.vote": "رأی دادن در نظرسنجی {name}", "interaction_modal.title.vote": "رأی دادن در نظرسنجی {name}",
"interaction_modal.username_prompt": "به عنوان مثال {example}",
"intervals.full.days": "{number, plural, one {# روز} other {# روز}}", "intervals.full.days": "{number, plural, one {# روز} other {# روز}}",
"intervals.full.hours": "{number, plural, one {# ساعت} other {# ساعت}}", "intervals.full.hours": "{number, plural, one {# ساعت} other {# ساعت}}",
"intervals.full.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}}", "intervals.full.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}}",
@ -480,6 +493,7 @@
"lists.replies_policy.none": "هیچ کدام", "lists.replies_policy.none": "هیچ کدام",
"lists.save": "ذخیره", "lists.save": "ذخیره",
"lists.search": "جست‌وجو", "lists.search": "جست‌وجو",
"lists.show_replies_to": "شامل پاسخ از اعضای لیست به",
"load_pending": "{count, plural, one {# مورد جدید} other {# مورد جدید}}", "load_pending": "{count, plural, one {# مورد جدید} other {# مورد جدید}}",
"loading_indicator.label": "در حال بارگذاری…", "loading_indicator.label": "در حال بارگذاری…",
"media_gallery.hide": "نهفتن", "media_gallery.hide": "نهفتن",
@ -529,6 +543,7 @@
"notification.annual_report.view": "دیدن #Wrapstodon", "notification.annual_report.view": "دیدن #Wrapstodon",
"notification.favourite": "{name} فرسته‌تان را برگزید", "notification.favourite": "{name} فرسته‌تان را برگزید",
"notification.favourite.name_and_others_with_link": "{name} و <a>{count, plural, one {# نفر دیگر} other {# نفر دیگر}}</a> فرسته‌تان را برگزیدند", "notification.favourite.name_and_others_with_link": "{name} و <a>{count, plural, one {# نفر دیگر} other {# نفر دیگر}}</a> فرسته‌تان را برگزیدند",
"notification.favourite_pm": "{name} ذکر خصوصی شما را مورد علاقه قرار داد",
"notification.follow": "{name} پی‌گیرتان شد", "notification.follow": "{name} پی‌گیرتان شد",
"notification.follow.name_and_others": "{name} و <a>{count, plural, other {#}} نفر دیگر</a> پیتان گرفتند", "notification.follow.name_and_others": "{name} و <a>{count, plural, other {#}} نفر دیگر</a> پیتان گرفتند",
"notification.follow_request": "{name} درخواست پی‌گیریتان را داد", "notification.follow_request": "{name} درخواست پی‌گیریتان را داد",
@ -553,6 +568,7 @@
"notification.reblog": "{name} فرسته‌تان را تقویت کرد", "notification.reblog": "{name} فرسته‌تان را تقویت کرد",
"notification.reblog.name_and_others_with_link": "{name} و <a>{count, plural, one {# نفر دیگر} other {# نفر دیگر}}</a> فرسته‌تان را تقویت کردند", "notification.reblog.name_and_others_with_link": "{name} و <a>{count, plural, one {# نفر دیگر} other {# نفر دیگر}}</a> فرسته‌تان را تقویت کردند",
"notification.relationships_severance_event": "قطع ارتباط با {name}", "notification.relationships_severance_event": "قطع ارتباط با {name}",
"notification.relationships_severance_event.account_suspension": "یک سرپرست از {from} {target} را به حالت تعلیق درآورده است، به این معنی که دیگر نمی‌توانید به‌روزرسانی‌ها را از آنها دریافت کنید یا با آنها تعامل داشته باشید.",
"notification.relationships_severance_event.learn_more": "بیشتر بدانید", "notification.relationships_severance_event.learn_more": "بیشتر بدانید",
"notification.status": "{name} چیزی فرستاد", "notification.status": "{name} چیزی فرستاد",
"notification.update": "{name} فرسته‌ای را ویرایش کرد", "notification.update": "{name} فرسته‌ای را ویرایش کرد",
@ -565,6 +581,8 @@
"notification_requests.dismiss": "دورانداختن", "notification_requests.dismiss": "دورانداختن",
"notification_requests.edit_selection": "ویرایش", "notification_requests.edit_selection": "ویرایش",
"notification_requests.exit_selection": "انجام شد", "notification_requests.exit_selection": "انجام شد",
"notification_requests.explainer_for_limited_account": "اعلان‌های این حساب فیلتر شده‌اند زیرا حساب توسط یک ناظر محدود شده است.",
"notification_requests.explainer_for_limited_remote_account": "اعلان‌های این حساب فیلتر شده‌اند زیرا حساب یا سرور آن توسط ناظر محدود شده است.",
"notification_requests.maximize": "بیشنه", "notification_requests.maximize": "بیشنه",
"notification_requests.minimize_banner": "کمینه کردن بیرق آگاهی‌های پالوده", "notification_requests.minimize_banner": "کمینه کردن بیرق آگاهی‌های پالوده",
"notification_requests.notifications_from": "آگاهی‌ها از {name}", "notification_requests.notifications_from": "آگاهی‌ها از {name}",
@ -667,6 +685,7 @@
"privacy_policy.title": "سیاست محرمانگی", "privacy_policy.title": "سیاست محرمانگی",
"recommended": "پیشنهادشده", "recommended": "پیشنهادشده",
"refresh": "نوسازی", "refresh": "نوسازی",
"regeneration_indicator.please_stand_by": "لطفا منتظر باشید.",
"relative_time.days": "{number} روز", "relative_time.days": "{number} روز",
"relative_time.full.days": "{number, plural, one {# روز} other {# روز}} پیش", "relative_time.full.days": "{number, plural, one {# روز} other {# روز}} پیش",
"relative_time.full.hours": "{number, plural, one {# ساعت} other {# ساعت}} پیش", "relative_time.full.hours": "{number, plural, one {# ساعت} other {# ساعت}} پیش",
@ -750,13 +769,19 @@
"search_results.accounts": "نمایه‌ها", "search_results.accounts": "نمایه‌ها",
"search_results.all": "همه", "search_results.all": "همه",
"search_results.hashtags": "برچسب‌ها", "search_results.hashtags": "برچسب‌ها",
"search_results.no_results": "هیچ نتیجه ای وجود ندارد.",
"search_results.no_search_yet": "سعی کنید پست ها، نمایه ها یا هشتگ ها را جستجو کنید.",
"search_results.see_all": "دیدن همه", "search_results.see_all": "دیدن همه",
"search_results.statuses": "فرسته‌ها", "search_results.statuses": "فرسته‌ها",
"search_results.title": "جستجو برای \"{q}\"",
"server_banner.about_active_users": "افرادی که در ۳۰ روز گذشته از این کارساز استفاده کرده‌اند (کاربران فعّال ماهانه)", "server_banner.about_active_users": "افرادی که در ۳۰ روز گذشته از این کارساز استفاده کرده‌اند (کاربران فعّال ماهانه)",
"server_banner.active_users": "کاربر فعّال", "server_banner.active_users": "کاربر فعّال",
"server_banner.administered_by": "به مدیریت:", "server_banner.administered_by": "به مدیریت:",
"server_banner.is_one_of_many": "{domain} یکی از بسیاری از سرورهای مستقل ماستودون است که می توانید از آن برای شرکت در fediverse استفاده کنید.",
"server_banner.server_stats": "آمار کارساز:", "server_banner.server_stats": "آمار کارساز:",
"sign_in_banner.create_account": "ایجاد حساب", "sign_in_banner.create_account": "ایجاد حساب",
"sign_in_banner.follow_anyone": "هر کسی را در سراسر fediverse دنبال کنید و همه را به ترتیب زمانی ببینید. هیچ الگوریتم، تبلیغات یا طعمه کلیکی در چشم نیست.",
"sign_in_banner.mastodon_is": "ماستودون بهترین راه برای پیگیری اتفاقات است.",
"sign_in_banner.sign_in": "ورود", "sign_in_banner.sign_in": "ورود",
"sign_in_banner.sso_redirect": "ورود یا ثبت نام", "sign_in_banner.sso_redirect": "ورود یا ثبت نام",
"status.admin_account": "گشودن واسط مدیریت برای @{name}", "status.admin_account": "گشودن واسط مدیریت برای @{name}",
@ -821,6 +846,7 @@
"subscribed_languages.target": "تغییر زبان‌های مشترک شده برای {target}", "subscribed_languages.target": "تغییر زبان‌های مشترک شده برای {target}",
"tabs_bar.home": "خانه", "tabs_bar.home": "خانه",
"tabs_bar.notifications": "آگاهی‌ها", "tabs_bar.notifications": "آگاهی‌ها",
"terms_of_service.title": "شرایط خدمات",
"time_remaining.days": "{number, plural, one {# روز} other {# روز}} باقی مانده", "time_remaining.days": "{number, plural, one {# روز} other {# روز}} باقی مانده",
"time_remaining.hours": "{number, plural, one {# ساعت} other {# ساعت}} باقی مانده", "time_remaining.hours": "{number, plural, one {# ساعت} other {# ساعت}} باقی مانده",
"time_remaining.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}} باقی مانده", "time_remaining.minutes": "{number, plural, one {# دقیقه} other {# دقیقه}} باقی مانده",
@ -838,6 +864,11 @@
"upload_error.poll": "بارگذاری پرونده در نظرسنجی‌ها مجاز نیست.", "upload_error.poll": "بارگذاری پرونده در نظرسنجی‌ها مجاز نیست.",
"upload_form.audio_description": "برای ناشنوایان توصیفش کنید", "upload_form.audio_description": "برای ناشنوایان توصیفش کنید",
"upload_form.description": "برای کم‌بینایان توصیفش کنید", "upload_form.description": "برای کم‌بینایان توصیفش کنید",
"upload_form.drag_and_drop.instructions": "برای دریافت پیوست رسانه، space را فشار دهید یا وارد کنید. در حین کشیدن، از کلیدهای جهت دار برای حرکت دادن پیوست رسانه در هر جهت معین استفاده کنید. برای رها کردن ضمیمه رسانه در موقعیت جدید خود، مجدداً space یا enter را فشار دهید، یا برای لغو، escape را فشار دهید.",
"upload_form.drag_and_drop.on_drag_cancel": "کشیدن لغو شد. پیوست رسانه {item} حذف شد.",
"upload_form.drag_and_drop.on_drag_end": "پیوست رسانه {item} حذف شد.",
"upload_form.drag_and_drop.on_drag_over": "پیوست رسانه {item} منتقل شد.",
"upload_form.drag_and_drop.on_drag_start": "پیوست رسانه {item} برداشته شد.",
"upload_form.edit": "ویرایش", "upload_form.edit": "ویرایش",
"upload_form.thumbnail": "تغییر بندانگشتی", "upload_form.thumbnail": "تغییر بندانگشتی",
"upload_form.video_description": "برای کم‌بینایان یا ناشنوایان توصیفش کنید", "upload_form.video_description": "برای کم‌بینایان یا ناشنوایان توصیفش کنید",

View file

@ -104,6 +104,7 @@
"annual_report.summary.most_used_hashtag.none": "Ei mitään", "annual_report.summary.most_used_hashtag.none": "Ei mitään",
"annual_report.summary.new_posts.new_posts": "uutta julkaisua", "annual_report.summary.new_posts.new_posts": "uutta julkaisua",
"annual_report.summary.percentile.text": "<topLabel>Olet osa huippujoukkoa, johon kuuluu</topLabel><percentage></percentage><bottomLabel>{domain}-käyttäjistä.</bottomLabel>", "annual_report.summary.percentile.text": "<topLabel>Olet osa huippujoukkoa, johon kuuluu</topLabel><percentage></percentage><bottomLabel>{domain}-käyttäjistä.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Emme kerro Bernie Sandersille.",
"annual_report.summary.thanks": "Kiitos, että olet osa Mastodonia!", "annual_report.summary.thanks": "Kiitos, että olet osa Mastodonia!",
"attachments_list.unprocessed": "(käsittelemätön)", "attachments_list.unprocessed": "(käsittelemätön)",
"audio.hide": "Piilota ääni", "audio.hide": "Piilota ääni",
@ -456,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Näytä tai piilota sisältövaroituksella merkitty teksti", "keyboard_shortcuts.toggle_hidden": "Näytä tai piilota sisältövaroituksella merkitty teksti",
"keyboard_shortcuts.toggle_sensitivity": "Näytä tai piilota media", "keyboard_shortcuts.toggle_sensitivity": "Näytä tai piilota media",
"keyboard_shortcuts.toot": "Luo uusi julkaisu", "keyboard_shortcuts.toot": "Luo uusi julkaisu",
"keyboard_shortcuts.translate": "Käännä julkaisu",
"keyboard_shortcuts.unfocus": "Poistu kirjoitus- tai hakukentästä", "keyboard_shortcuts.unfocus": "Poistu kirjoitus- tai hakukentästä",
"keyboard_shortcuts.up": "Siirry luettelossa taaksepäin", "keyboard_shortcuts.up": "Siirry luettelossa taaksepäin",
"lightbox.close": "Sulje", "lightbox.close": "Sulje",
@ -835,6 +837,7 @@
"status.reblogs.empty": "Kukaan ei ole vielä tehostanut tätä julkaisua. Kun joku tekee niin, tulee hän tähän näkyviin.", "status.reblogs.empty": "Kukaan ei ole vielä tehostanut tätä julkaisua. Kun joku tekee niin, tulee hän tähän näkyviin.",
"status.redraft": "Poista ja palauta muokattavaksi", "status.redraft": "Poista ja palauta muokattavaksi",
"status.remove_bookmark": "Poista kirjanmerkki", "status.remove_bookmark": "Poista kirjanmerkki",
"status.remove_favourite": "Poista suosikeista",
"status.replied_in_thread": "Vastasi ketjuun", "status.replied_in_thread": "Vastasi ketjuun",
"status.replied_to": "Vastaus käyttäjälle {name}", "status.replied_to": "Vastaus käyttäjälle {name}",
"status.reply": "Vastaa", "status.reply": "Vastaa",

View file

@ -34,7 +34,9 @@
"account.follow_back": "Sundan pabalik", "account.follow_back": "Sundan pabalik",
"account.followers": "Mga tagasunod", "account.followers": "Mga tagasunod",
"account.followers.empty": "Wala pang sumusunod sa tagagamit na ito.", "account.followers.empty": "Wala pang sumusunod sa tagagamit na ito.",
"account.followers_counter": "{count, plural, one {{counter} tagasunod} other {{counter} tagasunod}}",
"account.following": "Sinusundan", "account.following": "Sinusundan",
"account.following_counter": "{count, plural, one {{counter} sinusundan} other {{counter} sinusundan}}",
"account.follows.empty": "Wala pang sinusundan ang tagagamit na ito.", "account.follows.empty": "Wala pang sinusundan ang tagagamit na ito.",
"account.go_to_profile": "Pumunta sa profile", "account.go_to_profile": "Pumunta sa profile",
"account.hide_reblogs": "Itago ang mga pagpapalakas mula sa {name}", "account.hide_reblogs": "Itago ang mga pagpapalakas mula sa {name}",
@ -46,13 +48,21 @@
"account.media": "Medya", "account.media": "Medya",
"account.mention": "Banggitin si @{name}", "account.mention": "Banggitin si @{name}",
"account.moved_to": "Ipinahihiwatig ni {name} na ang kanilang bagong account ngayon ay:", "account.moved_to": "Ipinahihiwatig ni {name} na ang kanilang bagong account ngayon ay:",
"account.mute": "I-mute si @{name}",
"account.mute_notifications_short": "I-mute ang mga abiso",
"account.mute_short": "I-mute",
"account.muted": "Naka-mute",
"account.mutual": "Ka-mutual",
"account.no_bio": "Walang nakalaan na paglalarawan.", "account.no_bio": "Walang nakalaan na paglalarawan.",
"account.open_original_page": "Buksan ang pinagmulang pahina", "account.open_original_page": "Buksan ang pinagmulang pahina",
"account.posts": "Mga post",
"account.report": "I-ulat si/ang @{name}", "account.report": "I-ulat si/ang @{name}",
"account.requested": "Naghihintay ng pag-apruba. I-click upang ikansela ang hiling sa pagsunod",
"account.requested_follow": "Hinihiling ni {name} na sundan ka", "account.requested_follow": "Hinihiling ni {name} na sundan ka",
"account.share": "Ibahagi ang profile ni @{name}", "account.share": "Ibahagi ang profile ni @{name}",
"account.show_reblogs": "Ipakita ang mga pagpapalakas mula sa/kay {name}", "account.show_reblogs": "Ipakita ang mga pagpapalakas mula sa/kay {name}",
"account.unendorse": "Huwag itampok sa profile", "account.unendorse": "Huwag itampok sa profile",
"account.unfollow": "Huwag nang sundan",
"admin.dashboard.retention.cohort_size": "Mga bagong tagagamit", "admin.dashboard.retention.cohort_size": "Mga bagong tagagamit",
"alert.rate_limited.message": "Mangyaring subukan muli pagkatapos ng {retry_time, time, medium}.", "alert.rate_limited.message": "Mangyaring subukan muli pagkatapos ng {retry_time, time, medium}.",
"audio.hide": "Itago ang tunog", "audio.hide": "Itago ang tunog",
@ -143,7 +153,10 @@
"dismissable_banner.community_timeline": "Ito ang mga pinakamakailang nakapublikong post mula sa mga taong ang mga account hinohost ng {domain}.", "dismissable_banner.community_timeline": "Ito ang mga pinakamakailang nakapublikong post mula sa mga taong ang mga account hinohost ng {domain}.",
"dismissable_banner.dismiss": "Alisin", "dismissable_banner.dismiss": "Alisin",
"domain_block_modal.block": "Harangan ang serbiro", "domain_block_modal.block": "Harangan ang serbiro",
"domain_block_modal.they_wont_know": "Hindi nila malalaman na hinarang sila.",
"domain_block_modal.title": "Harangan ang domain?", "domain_block_modal.title": "Harangan ang domain?",
"domain_block_modal.you_will_lose_relationships": "Mawawala ang lahat ng mga tagasunod at mga taong sinusindan mo mula sa serbirong ito.",
"domain_block_modal.you_wont_see_posts": "Hindi mo makikita ang mga post o mga abiso mula sa mga tagagamit sa serbirong ito.",
"domain_pill.server": "Serbiro", "domain_pill.server": "Serbiro",
"embed.instructions": "I-embed ang post na ito sa iyong pook-sapot sa pamamagitan ng pagsipi ng kodigo sa ilalim.", "embed.instructions": "I-embed ang post na ito sa iyong pook-sapot sa pamamagitan ng pagsipi ng kodigo sa ilalim.",
"embed.preview": "Ito ang magiging itsura:", "embed.preview": "Ito ang magiging itsura:",
@ -179,6 +192,7 @@
"empty_column.hashtag": "Wala pang laman ang hashtag na ito.", "empty_column.hashtag": "Wala pang laman ang hashtag na ito.",
"empty_column.home": "Walang laman ang timeline ng tahanan mo! Sumunod sa marami pang tao para mapunan ito.", "empty_column.home": "Walang laman ang timeline ng tahanan mo! Sumunod sa marami pang tao para mapunan ito.",
"empty_column.list": "Wala pang laman ang listahang ito. Kapag naglathala ng mga bagong post ang mga miyembro ng listahang ito, makikita iyon dito.", "empty_column.list": "Wala pang laman ang listahang ito. Kapag naglathala ng mga bagong post ang mga miyembro ng listahang ito, makikita iyon dito.",
"empty_column.notification_requests": "Malinis na lahat! Walang anuman dito. Kapag nakatanggap ka ng mga bagong abiso, makikita sila dito na batay sa iyong mga setting.",
"errors.unexpected_crash.report_issue": "Iulat ang isyu", "errors.unexpected_crash.report_issue": "Iulat ang isyu",
"explore.suggested_follows": "Mga tao", "explore.suggested_follows": "Mga tao",
"explore.title": "Tuklasin", "explore.title": "Tuklasin",
@ -242,6 +256,7 @@
"navigation_bar.public_timeline": "Pinagsamang timeline", "navigation_bar.public_timeline": "Pinagsamang timeline",
"navigation_bar.search": "Maghanap", "navigation_bar.search": "Maghanap",
"notification.admin.report": "Iniulat ni {name} si {target}", "notification.admin.report": "Iniulat ni {name} si {target}",
"notification.admin.report_statuses_other": "Iniulat ni {name} si {target}",
"notification.follow": "Sinundan ka ni {name}", "notification.follow": "Sinundan ka ni {name}",
"notification.follow.name_and_others": "Sinundan ka ng/nina {name} at <a>{count, plural, one {# iba pa} other {# na iba pa}}</a>", "notification.follow.name_and_others": "Sinundan ka ng/nina {name} at <a>{count, plural, one {# iba pa} other {# na iba pa}}</a>",
"notification.follow_request": "Hinihiling ni {name} na sundan ka", "notification.follow_request": "Hinihiling ni {name} na sundan ka",
@ -251,6 +266,7 @@
"notification.moderation_warning": "Mayroong kang natanggap na babala sa pagtitimpi", "notification.moderation_warning": "Mayroong kang natanggap na babala sa pagtitimpi",
"notification.relationships_severance_event.learn_more": "Matuto nang higit pa", "notification.relationships_severance_event.learn_more": "Matuto nang higit pa",
"notification_requests.accept": "Tanggapin", "notification_requests.accept": "Tanggapin",
"notification_requests.maximize": "Palakihin",
"notification_requests.notifications_from": "Mga abiso mula kay/sa {name}", "notification_requests.notifications_from": "Mga abiso mula kay/sa {name}",
"notifications.clear": "Burahin mga abiso", "notifications.clear": "Burahin mga abiso",
"notifications.clear_title": "Linisin ang mga abiso?", "notifications.clear_title": "Linisin ang mga abiso?",
@ -263,7 +279,10 @@
"notifications.column_settings.unread_notifications.category": "Hindi Nabasang mga Abiso", "notifications.column_settings.unread_notifications.category": "Hindi Nabasang mga Abiso",
"notifications.column_settings.update": "Mga pagbago:", "notifications.column_settings.update": "Mga pagbago:",
"notifications.filter.all": "Lahat", "notifications.filter.all": "Lahat",
"notifications.filter.boosts": "Mga pagpalakas",
"notifications.filter.favourites": "Mga paborito", "notifications.filter.favourites": "Mga paborito",
"notifications.filter.follows": "Mga sinusundan",
"notifications.filter.mentions": "Mga pagbanggit",
"notifications.filter.polls": "Resulta ng botohan", "notifications.filter.polls": "Resulta ng botohan",
"notifications.mark_as_read": "Markahan lahat ng abiso bilang nabasa na", "notifications.mark_as_read": "Markahan lahat ng abiso bilang nabasa na",
"notifications.policy.accept": "Tanggapin", "notifications.policy.accept": "Tanggapin",
@ -317,8 +336,12 @@
"report.thanks.title": "Ayaw mo bang makita ito?", "report.thanks.title": "Ayaw mo bang makita ito?",
"report.thanks.title_actionable": "Salamat sa pag-uulat, titingnan namin ito.", "report.thanks.title_actionable": "Salamat sa pag-uulat, titingnan namin ito.",
"report_notification.categories.other": "Iba pa", "report_notification.categories.other": "Iba pa",
"report_notification.categories.other_sentence": "iba pa",
"report_notification.categories.violation": "Paglabag sa patakaran", "report_notification.categories.violation": "Paglabag sa patakaran",
"report_notification.categories.violation_sentence": "paglabag sa patakaran",
"report_notification.open": "Buksan ang ulat", "report_notification.open": "Buksan ang ulat",
"search.placeholder": "Maghanap",
"search.quick_action.go_to_account": "Pumunta sa profile {x}",
"search.quick_action.open_url": "Buksan ang URL sa Mastodon", "search.quick_action.open_url": "Buksan ang URL sa Mastodon",
"search.search_or_paste": "Maghanap o ilagay ang URL", "search.search_or_paste": "Maghanap o ilagay ang URL",
"search_popout.full_text_search_disabled_message": "Hindi magagamit sa {domain}.", "search_popout.full_text_search_disabled_message": "Hindi magagamit sa {domain}.",
@ -341,6 +364,7 @@
"status.more": "Higit pa", "status.more": "Higit pa",
"status.read_more": "Basahin ang higit pa", "status.read_more": "Basahin ang higit pa",
"status.reblogs.empty": "Wala pang nagpalakas ng post na ito. Kung may sinumang nagpalakas, makikita sila rito.", "status.reblogs.empty": "Wala pang nagpalakas ng post na ito. Kung may sinumang nagpalakas, makikita sila rito.",
"status.remove_favourite": "Tanggalin sa mga paborito",
"status.reply": "Tumugon", "status.reply": "Tumugon",
"status.report": "I-ulat si/ang @{name}", "status.report": "I-ulat si/ang @{name}",
"status.sensitive_warning": "Sensitibong nilalaman", "status.sensitive_warning": "Sensitibong nilalaman",

View file

@ -362,6 +362,7 @@
"footer.privacy_policy": "Privatlívspolitikkur", "footer.privacy_policy": "Privatlívspolitikkur",
"footer.source_code": "Vís keldukotuna", "footer.source_code": "Vís keldukotuna",
"footer.status": "Støða", "footer.status": "Støða",
"footer.terms_of_service": "Tænastutreytir",
"generic.saved": "Goymt", "generic.saved": "Goymt",
"getting_started.heading": "At byrja", "getting_started.heading": "At byrja",
"hashtag.admin_moderation": "Lat umsjónarmarkamót upp fyri #{name}", "hashtag.admin_moderation": "Lat umsjónarmarkamót upp fyri #{name}",
@ -456,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Vís/fjal tekst handan CW", "keyboard_shortcuts.toggle_hidden": "Vís/fjal tekst handan CW",
"keyboard_shortcuts.toggle_sensitivity": "Vís ella fjal innihald", "keyboard_shortcuts.toggle_sensitivity": "Vís ella fjal innihald",
"keyboard_shortcuts.toot": "Byrja nýggjan post", "keyboard_shortcuts.toot": "Byrja nýggjan post",
"keyboard_shortcuts.translate": "at umseta ein post",
"keyboard_shortcuts.unfocus": "Tak skrivi-/leiti-økið úr miðdeplinum", "keyboard_shortcuts.unfocus": "Tak skrivi-/leiti-økið úr miðdeplinum",
"keyboard_shortcuts.up": "Flyt upp á listanum", "keyboard_shortcuts.up": "Flyt upp á listanum",
"lightbox.close": "Lat aftur", "lightbox.close": "Lat aftur",
@ -835,6 +837,7 @@
"status.reblogs.empty": "Eingin hevur stimbrað hendan postin enn. Tá onkur stimbrar postin, verður hann sjónligur her.", "status.reblogs.empty": "Eingin hevur stimbrað hendan postin enn. Tá onkur stimbrar postin, verður hann sjónligur her.",
"status.redraft": "Strika & ger nýggja kladdu", "status.redraft": "Strika & ger nýggja kladdu",
"status.remove_bookmark": "Gloym", "status.remove_bookmark": "Gloym",
"status.remove_favourite": "Strika í yndismerkjum",
"status.replied_in_thread": "Svaraði í tráðnum", "status.replied_in_thread": "Svaraði í tráðnum",
"status.replied_to": "Svaraði {name}", "status.replied_to": "Svaraði {name}",
"status.reply": "Svara", "status.reply": "Svara",
@ -856,6 +859,7 @@
"subscribed_languages.target": "Broyt haldaramál fyri {target}", "subscribed_languages.target": "Broyt haldaramál fyri {target}",
"tabs_bar.home": "Heim", "tabs_bar.home": "Heim",
"tabs_bar.notifications": "Fráboðanir", "tabs_bar.notifications": "Fráboðanir",
"terms_of_service.title": "Tænastutreytir",
"time_remaining.days": "{number, plural, one {# dagur} other {# dagar}} eftir", "time_remaining.days": "{number, plural, one {# dagur} other {# dagar}} eftir",
"time_remaining.hours": "{number, plural, one {# tími} other {# tímar}} eftir", "time_remaining.hours": "{number, plural, one {# tími} other {# tímar}} eftir",
"time_remaining.minutes": "{number, plural, one {# minuttur} other {# minuttir}} eftir", "time_remaining.minutes": "{number, plural, one {# minuttur} other {# minuttir}} eftir",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Déplier/replier texte derrière avertissement", "keyboard_shortcuts.toggle_hidden": "Déplier/replier texte derrière avertissement",
"keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher médias", "keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher médias",
"keyboard_shortcuts.toot": "Commencer un nouveau message", "keyboard_shortcuts.toot": "Commencer un nouveau message",
"keyboard_shortcuts.translate": "traduire un message",
"keyboard_shortcuts.unfocus": "Ne plus se concentrer sur la zone de rédaction/barre de recherche", "keyboard_shortcuts.unfocus": "Ne plus se concentrer sur la zone de rédaction/barre de recherche",
"keyboard_shortcuts.up": "Monter dans la liste", "keyboard_shortcuts.up": "Monter dans la liste",
"lightbox.close": "Fermer", "lightbox.close": "Fermer",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Personne na encore boosté cette publication. Lorsque quelquun le fera, elle apparaîtra ici.", "status.reblogs.empty": "Personne na encore boosté cette publication. Lorsque quelquun le fera, elle apparaîtra ici.",
"status.redraft": "Supprimer et réécrire", "status.redraft": "Supprimer et réécrire",
"status.remove_bookmark": "Retirer des signets", "status.remove_bookmark": "Retirer des signets",
"status.remove_favourite": "Retirer des favoris",
"status.replied_in_thread": "A répondu dans un fil de discussion", "status.replied_in_thread": "A répondu dans un fil de discussion",
"status.replied_to": "A répondu à {name}", "status.replied_to": "A répondu à {name}",
"status.reply": "Répondre", "status.reply": "Répondre",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Déplier/replier le texte derrière un CW", "keyboard_shortcuts.toggle_hidden": "Déplier/replier le texte derrière un CW",
"keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher les médias", "keyboard_shortcuts.toggle_sensitivity": "Afficher/cacher les médias",
"keyboard_shortcuts.toot": "Commencer un nouveau message", "keyboard_shortcuts.toot": "Commencer un nouveau message",
"keyboard_shortcuts.translate": "traduire un message",
"keyboard_shortcuts.unfocus": "Quitter la zone de rédaction/barre de recherche", "keyboard_shortcuts.unfocus": "Quitter la zone de rédaction/barre de recherche",
"keyboard_shortcuts.up": "Monter dans la liste", "keyboard_shortcuts.up": "Monter dans la liste",
"lightbox.close": "Fermer", "lightbox.close": "Fermer",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Personne na encore partagé ce message. Lorsque quelquun le fera, il apparaîtra ici.", "status.reblogs.empty": "Personne na encore partagé ce message. Lorsque quelquun le fera, il apparaîtra ici.",
"status.redraft": "Supprimer et réécrire", "status.redraft": "Supprimer et réécrire",
"status.remove_bookmark": "Retirer des marque-pages", "status.remove_bookmark": "Retirer des marque-pages",
"status.remove_favourite": "Retirer des favoris",
"status.replied_in_thread": "A répondu dans un fil de discussion", "status.replied_in_thread": "A répondu dans un fil de discussion",
"status.replied_to": "En réponse à {name}", "status.replied_to": "En réponse à {name}",
"status.reply": "Répondre", "status.reply": "Répondre",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Para mostrar o texto tras Aviso de Contido (CW)", "keyboard_shortcuts.toggle_hidden": "Para mostrar o texto tras Aviso de Contido (CW)",
"keyboard_shortcuts.toggle_sensitivity": "Para amosar/agochar contido multimedia", "keyboard_shortcuts.toggle_sensitivity": "Para amosar/agochar contido multimedia",
"keyboard_shortcuts.toot": "Para escribir unha nova publicación", "keyboard_shortcuts.toot": "Para escribir unha nova publicación",
"keyboard_shortcuts.translate": "para traducir unha publicación",
"keyboard_shortcuts.unfocus": "Para deixar de destacar a área de escritura/procura", "keyboard_shortcuts.unfocus": "Para deixar de destacar a área de escritura/procura",
"keyboard_shortcuts.up": "Para mover cara arriba na listaxe", "keyboard_shortcuts.up": "Para mover cara arriba na listaxe",
"lightbox.close": "Fechar", "lightbox.close": "Fechar",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Aínda ninguén promoveu esta publicación. Cando alguén o faga, amosarase aquí.", "status.reblogs.empty": "Aínda ninguén promoveu esta publicación. Cando alguén o faga, amosarase aquí.",
"status.redraft": "Eliminar e reescribir", "status.redraft": "Eliminar e reescribir",
"status.remove_bookmark": "Eliminar marcador", "status.remove_bookmark": "Eliminar marcador",
"status.remove_favourite": "Retirar das favoritas",
"status.replied_in_thread": "Respondeu nun fío", "status.replied_in_thread": "Respondeu nun fío",
"status.replied_to": "Respondeu a {name}", "status.replied_to": "Respondeu a {name}",
"status.reply": "Responder", "status.reply": "Responder",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "הצגת/הסתרת טקסט מוסתר מאחורי אזהרת תוכן", "keyboard_shortcuts.toggle_hidden": "הצגת/הסתרת טקסט מוסתר מאחורי אזהרת תוכן",
"keyboard_shortcuts.toggle_sensitivity": "הצגת/הסתרת מדיה", "keyboard_shortcuts.toggle_sensitivity": "הצגת/הסתרת מדיה",
"keyboard_shortcuts.toot": "להתחיל חיצרוץ חדש", "keyboard_shortcuts.toot": "להתחיל חיצרוץ חדש",
"keyboard_shortcuts.translate": "לתרגם הודעה",
"keyboard_shortcuts.unfocus": "לצאת מתיבת חיבור/חיפוש", "keyboard_shortcuts.unfocus": "לצאת מתיבת חיבור/חיפוש",
"keyboard_shortcuts.up": "לנוע במעלה הרשימה", "keyboard_shortcuts.up": "לנוע במעלה הרשימה",
"lightbox.close": "סגירה", "lightbox.close": "סגירה",
@ -836,6 +837,7 @@
"status.reblogs.empty": "עוד לא הידהדו את ההודעה הזו. כאשר זה יקרה, ההדהודים יופיעו כאן.", "status.reblogs.empty": "עוד לא הידהדו את ההודעה הזו. כאשר זה יקרה, ההדהודים יופיעו כאן.",
"status.redraft": "מחיקה ועריכה מחדש", "status.redraft": "מחיקה ועריכה מחדש",
"status.remove_bookmark": "הסרת סימניה", "status.remove_bookmark": "הסרת סימניה",
"status.remove_favourite": "להסיר מרשימת המועדפים",
"status.replied_in_thread": "תגובה לשרשור", "status.replied_in_thread": "תגובה לשרשור",
"status.replied_to": "בתגובה לחשבון {name}", "status.replied_to": "בתגובה לחשבון {name}",
"status.reply": "תגובה", "status.reply": "תגובה",

View file

@ -440,7 +440,7 @@
"keyboard_shortcuts.heading": "Gyorsbillentyűk", "keyboard_shortcuts.heading": "Gyorsbillentyűk",
"keyboard_shortcuts.home": "Saját idővonal megnyitása", "keyboard_shortcuts.home": "Saját idővonal megnyitása",
"keyboard_shortcuts.hotkey": "Gyorsbillentyű", "keyboard_shortcuts.hotkey": "Gyorsbillentyű",
"keyboard_shortcuts.legend": "jelmagyarázat megjelenítése", "keyboard_shortcuts.legend": "Jelmagyarázat megjelenítése",
"keyboard_shortcuts.local": "Helyi idővonal megnyitása", "keyboard_shortcuts.local": "Helyi idővonal megnyitása",
"keyboard_shortcuts.mention": "Szerző megemlítése", "keyboard_shortcuts.mention": "Szerző megemlítése",
"keyboard_shortcuts.muted": "Némított felhasználók listájának megnyitása", "keyboard_shortcuts.muted": "Némított felhasználók listájának megnyitása",
@ -836,6 +836,7 @@
"status.reblogs.empty": "Senki sem tolta még meg ezt a bejegyzést. Ha valaki megteszi, itt fog megjelenni.", "status.reblogs.empty": "Senki sem tolta még meg ezt a bejegyzést. Ha valaki megteszi, itt fog megjelenni.",
"status.redraft": "Törlés és újraírás", "status.redraft": "Törlés és újraírás",
"status.remove_bookmark": "Könyvjelző eltávolítása", "status.remove_bookmark": "Könyvjelző eltávolítása",
"status.remove_favourite": "Eltávolítás a kedvencek közül",
"status.replied_in_thread": "Válaszolva a szálban", "status.replied_in_thread": "Válaszolva a szálban",
"status.replied_to": "Megválaszolva {name} számára", "status.replied_to": "Megválaszolva {name} számára",
"status.reply": "Válasz", "status.reply": "Válasz",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Birta/fela texta á bak við aðvörun vegna efnis", "keyboard_shortcuts.toggle_hidden": "Birta/fela texta á bak við aðvörun vegna efnis",
"keyboard_shortcuts.toggle_sensitivity": "Birta/fela myndir", "keyboard_shortcuts.toggle_sensitivity": "Birta/fela myndir",
"keyboard_shortcuts.toot": "Byrja nýja færslu", "keyboard_shortcuts.toot": "Byrja nýja færslu",
"keyboard_shortcuts.translate": "að þýða færslu",
"keyboard_shortcuts.unfocus": "Taka virkni úr textainnsetningarreit eða leit", "keyboard_shortcuts.unfocus": "Taka virkni úr textainnsetningarreit eða leit",
"keyboard_shortcuts.up": "Fara ofar í listanum", "keyboard_shortcuts.up": "Fara ofar í listanum",
"lightbox.close": "Loka", "lightbox.close": "Loka",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Enginn hefur ennþá endurbirt þessa færslu. Þegar einhver gerir það, mun það birtast hér.", "status.reblogs.empty": "Enginn hefur ennþá endurbirt þessa færslu. Þegar einhver gerir það, mun það birtast hér.",
"status.redraft": "Eyða og endurvinna drög", "status.redraft": "Eyða og endurvinna drög",
"status.remove_bookmark": "Fjarlægja bókamerki", "status.remove_bookmark": "Fjarlægja bókamerki",
"status.remove_favourite": "Fjarlægja úr eftirlætum",
"status.replied_in_thread": "Svaraði í samtali", "status.replied_in_thread": "Svaraði í samtali",
"status.replied_to": "Svaraði til {name}", "status.replied_to": "Svaraði til {name}",
"status.reply": "Svara", "status.reply": "Svara",

View file

@ -682,7 +682,7 @@
"poll_button.add_poll": "Aggiungi un sondaggio", "poll_button.add_poll": "Aggiungi un sondaggio",
"poll_button.remove_poll": "Rimuovi il sondaggio", "poll_button.remove_poll": "Rimuovi il sondaggio",
"privacy.change": "Modifica privacy del post", "privacy.change": "Modifica privacy del post",
"privacy.direct.long": "Tutti quelli menzioniati nel post", "privacy.direct.long": "Tutti quelli menzionati nel post",
"privacy.direct.short": "Persone specifiche", "privacy.direct.short": "Persone specifiche",
"privacy.private.long": "Solo i tuoi follower", "privacy.private.long": "Solo i tuoi follower",
"privacy.private.short": "Follower", "privacy.private.short": "Follower",
@ -836,6 +836,7 @@
"status.reblogs.empty": "Ancora nessuno ha rebloggato questo post. Quando qualcuno lo farà, apparirà qui.", "status.reblogs.empty": "Ancora nessuno ha rebloggato questo post. Quando qualcuno lo farà, apparirà qui.",
"status.redraft": "Elimina e riscrivi", "status.redraft": "Elimina e riscrivi",
"status.remove_bookmark": "Rimuovi segnalibro", "status.remove_bookmark": "Rimuovi segnalibro",
"status.remove_favourite": "Rimuovi dai preferiti",
"status.replied_in_thread": "Ha risposto nella discussione", "status.replied_in_thread": "Ha risposto nella discussione",
"status.replied_to": "Risposta a {name}", "status.replied_to": "Risposta a {name}",
"status.reply": "Rispondi", "status.reply": "Rispondi",

View file

@ -414,6 +414,7 @@
"interaction_modal.title.reblog": "{name} 님의 게시물을 부스트", "interaction_modal.title.reblog": "{name} 님의 게시물을 부스트",
"interaction_modal.title.reply": "{name} 님의 게시물에 답글", "interaction_modal.title.reply": "{name} 님의 게시물에 답글",
"interaction_modal.title.vote": "{name} 님의 투표에 참여", "interaction_modal.title.vote": "{name} 님의 투표에 참여",
"interaction_modal.username_prompt": "예시: {example}",
"intervals.full.days": "{number} 일", "intervals.full.days": "{number} 일",
"intervals.full.hours": "{number} 시간", "intervals.full.hours": "{number} 시간",
"intervals.full.minutes": "{number} 분", "intervals.full.minutes": "{number} 분",
@ -449,6 +450,7 @@
"keyboard_shortcuts.toggle_hidden": "CW로 가려진 텍스트를 표시/비표시", "keyboard_shortcuts.toggle_hidden": "CW로 가려진 텍스트를 표시/비표시",
"keyboard_shortcuts.toggle_sensitivity": "미디어 보이기/숨기기", "keyboard_shortcuts.toggle_sensitivity": "미디어 보이기/숨기기",
"keyboard_shortcuts.toot": "새 게시물 작성", "keyboard_shortcuts.toot": "새 게시물 작성",
"keyboard_shortcuts.translate": "게시물 번역",
"keyboard_shortcuts.unfocus": "작성창에서 포커스 해제", "keyboard_shortcuts.unfocus": "작성창에서 포커스 해제",
"keyboard_shortcuts.up": "리스트에서 위로 이동", "keyboard_shortcuts.up": "리스트에서 위로 이동",
"lightbox.close": "닫기", "lightbox.close": "닫기",

View file

@ -1,14 +1,25 @@
{ {
"about.blocks": "Servī moderātī",
"about.contact": "Ratio:", "about.contact": "Ratio:",
"about.disclaimer": "Mastodon est software līberum, apertum fontem, et nōtam commercium Mastodon gGmbH.",
"about.domain_blocks.no_reason_available": "Ratio abdere est", "about.domain_blocks.no_reason_available": "Ratio abdere est",
"about.domain_blocks.preamble": "Mastodon genērāliter sinit tē contentum ex aliīs servientibus in fedīversō vidēre et cum usoribus ab iīs interāgere. Haē sunt exceptionēs quae in hōc particulārī servientē factae sunt.",
"about.domain_blocks.silenced.explanation": "Tua profilia atque tuum contentum ab hac serve praecipue non videbis, nisi explōrēs expresse aut subsequeris et optēs.", "about.domain_blocks.silenced.explanation": "Tua profilia atque tuum contentum ab hac serve praecipue non videbis, nisi explōrēs expresse aut subsequeris et optēs.",
"about.domain_blocks.silenced.title": "Limitātus",
"about.domain_blocks.suspended.explanation": "Nulla data ab hōc servientē processābuntur, servābuntur aut commūtābuntur, faciendumque omnem interactionem aut communicātiōnem cum usoribus ab hōc servientē impossibilem.",
"about.domain_blocks.suspended.title": "suspensus",
"about.not_available": "Haec informātiō in hōc servientē nōn praebita est.",
"about.powered_by": "Nuntii socīālēs decentralizātī ā {mastodon} sustentātī.",
"about.rules": "Servo praecepta",
"account.account_note_header": "Nota personalia",
"account.add_or_remove_from_list": "Adde aut ēripe ex tabellīs", "account.add_or_remove_from_list": "Adde aut ēripe ex tabellīs",
"account.badges.bot": "Robotum", "account.badges.bot": "Robotum",
"account.badges.group": "Congregatio", "account.badges.group": "Congregatio",
"account.block": "Impedire @{name}", "account.block": "Impedire @{name}",
"account.block_domain": "Imperire dominium {domain}", "account.block_domain": "Imperire dominium {domain}",
"account.block_short": "Imperire",
"account.blocked": "Impeditum est", "account.blocked": "Impeditum est",
"account.cancel_follow_request": "Withdraw follow request", "account.cancel_follow_request": "Petitio sequī retrāhere",
"account.domain_blocked": "Dominium impeditum", "account.domain_blocked": "Dominium impeditum",
"account.edit_profile": "Recolere notionem", "account.edit_profile": "Recolere notionem",
"account.featured_tags.last_status_never": "Nulla contributa", "account.featured_tags.last_status_never": "Nulla contributa",
@ -105,30 +116,30 @@
"keyboard_shortcuts.compose": "TextArea Compositi Attendere", "keyboard_shortcuts.compose": "TextArea Compositi Attendere",
"keyboard_shortcuts.description": "Descriptio", "keyboard_shortcuts.description": "Descriptio",
"keyboard_shortcuts.direct": "to open direct messages column", "keyboard_shortcuts.direct": "to open direct messages column",
"keyboard_shortcuts.down": "to move down in the list", "keyboard_shortcuts.down": "In īndice dēscend",
"keyboard_shortcuts.enter": "Aperire contributum", "keyboard_shortcuts.enter": "Aperire contributum",
"keyboard_shortcuts.federated": "to open federated timeline", "keyboard_shortcuts.federated": "Aperī chrōnologiam foederātam",
"keyboard_shortcuts.heading": "Keyboard Shortcuts", "keyboard_shortcuts.heading": "Keyboard Shortcuts",
"keyboard_shortcuts.home": "to open home timeline", "keyboard_shortcuts.home": "Aperī chrōnologiam domesticam",
"keyboard_shortcuts.legend": "to display this legend", "keyboard_shortcuts.legend": "Hanc legendam ostende",
"keyboard_shortcuts.local": "to open local timeline", "keyboard_shortcuts.local": "Aperī chrōnologiam locālem",
"keyboard_shortcuts.mention": "to mention author", "keyboard_shortcuts.mention": "Memēntō auctōris",
"keyboard_shortcuts.muted": "to open muted users list", "keyboard_shortcuts.muted": "Aperī indicem ūtentium silentiōrum",
"keyboard_shortcuts.my_profile": "to open your profile", "keyboard_shortcuts.my_profile": "Aperī prōfilum tuum",
"keyboard_shortcuts.notifications": "to open notifications column", "keyboard_shortcuts.notifications": "Aperī columnam nūntiātiōnum",
"keyboard_shortcuts.open_media": "to open media", "keyboard_shortcuts.open_media": "Aperi media",
"keyboard_shortcuts.pinned": "to open pinned posts list", "keyboard_shortcuts.pinned": "Aperī indicem nūntiōrum affixōrum",
"keyboard_shortcuts.profile": "to open author's profile", "keyboard_shortcuts.profile": "Aperi auctoris profile",
"keyboard_shortcuts.reply": "Respondere ad contributum", "keyboard_shortcuts.reply": "Respondere ad contributum",
"keyboard_shortcuts.requests": "to open follow requests list", "keyboard_shortcuts.requests": "Aperī indicem petītiōnum sequendī",
"keyboard_shortcuts.search": "to focus search", "keyboard_shortcuts.search": "Fōcum in tabellam quaerendī",
"keyboard_shortcuts.spoilers": "to show/hide CW field", "keyboard_shortcuts.spoilers": "Ostende / celare CW agri",
"keyboard_shortcuts.start": "to open \"get started\" column", "keyboard_shortcuts.start": "Aperī columnam 'īncipere'",
"keyboard_shortcuts.toggle_hidden": "to show/hide text behind CW", "keyboard_shortcuts.toggle_hidden": "Monstrare / celare textum post CW",
"keyboard_shortcuts.toggle_sensitivity": "to show/hide media", "keyboard_shortcuts.toggle_sensitivity": "Ostende / celare media",
"keyboard_shortcuts.toot": "to start a brand new post", "keyboard_shortcuts.toot": "Incipe nōvum nūntium.",
"keyboard_shortcuts.unfocus": "to un-focus compose textarea/search", "keyboard_shortcuts.unfocus": "Desinēre fōcum in ārēā componendī/inquīrendī",
"keyboard_shortcuts.up": "to move up in the list", "keyboard_shortcuts.up": "Sumē sūrsum in īndice",
"lightbox.close": "Claudere", "lightbox.close": "Claudere",
"lightbox.next": "Secundum", "lightbox.next": "Secundum",
"load_pending": "{count, plural, one {# novum item} other {# nova itema}}", "load_pending": "{count, plural, one {# novum item} other {# nova itema}}",
@ -142,7 +153,7 @@
"notification.favourite": "{name} nuntium tuum favit", "notification.favourite": "{name} nuntium tuum favit",
"notification.follow": "{name} te secutus est", "notification.follow": "{name} te secutus est",
"notification.follow_request": "{name} postulavit ut te sequeretur", "notification.follow_request": "{name} postulavit ut te sequeretur",
"notification.moderation_warning": "Accepistī monitionem moderationis.", "notification.moderation_warning": "Accepistī monitionem moderationis",
"notification.moderation_warning.action_disable": "Ratio tua debilitata est.", "notification.moderation_warning.action_disable": "Ratio tua debilitata est.",
"notification.moderation_warning.action_none": "Tua ratiō monitum moderātiōnis accēpit.", "notification.moderation_warning.action_none": "Tua ratiō monitum moderātiōnis accēpit.",
"notification.moderation_warning.action_sensitive": "Tua nuntia hinc sensibiliter notabuntur.", "notification.moderation_warning.action_sensitive": "Tua nuntia hinc sensibiliter notabuntur.",
@ -160,7 +171,7 @@
"notification_requests.confirm_dismiss_multiple.message": "Tu {count, plural, one {unam petitionem notificationis} other {# petitiones notificationum}} abrogāre prōximum es. {count, plural, one {Illa} other {Eae}} facile accessū nōn erit. Certus es tē procedere velle?", "notification_requests.confirm_dismiss_multiple.message": "Tu {count, plural, one {unam petitionem notificationis} other {# petitiones notificationum}} abrogāre prōximum es. {count, plural, one {Illa} other {Eae}} facile accessū nōn erit. Certus es tē procedere velle?",
"notifications.filter.all": "Omnia", "notifications.filter.all": "Omnia",
"notifications.filter.polls": "Eventus electionis", "notifications.filter.polls": "Eventus electionis",
"notifications.group": "Notificātiōnēs", "notifications.group": "{count} Notificātiōnēs",
"onboarding.profile.display_name_hint": "Tuum nomen completum aut tuum nomen ludens…", "onboarding.profile.display_name_hint": "Tuum nomen completum aut tuum nomen ludens…",
"onboarding.profile.note_hint": "Alios hominēs vel #hashtags @nōmināre potes…", "onboarding.profile.note_hint": "Alios hominēs vel #hashtags @nōmināre potes…",
"poll.closed": "Clausum", "poll.closed": "Clausum",
@ -191,7 +202,7 @@
"report.mute_explanation": "Non videbis eōrum nuntiōs. Possunt adhuc tē sequī et tuōs nuntiōs vidēre, nec sciēbunt sē tacitōs esse.", "report.mute_explanation": "Non videbis eōrum nuntiōs. Possunt adhuc tē sequī et tuōs nuntiōs vidēre, nec sciēbunt sē tacitōs esse.",
"report.next": "Secundum", "report.next": "Secundum",
"report.placeholder": "Commentāriī adiūnctī", "report.placeholder": "Commentāriī adiūnctī",
"report.reasons.legal_description": "Putās id legem tuae aut servientis patriae violāre.", "report.reasons.legal_description": "Putās id legem tuae aut servientis patriae violāre",
"report.reasons.violation_description": "Scis quod certa praecepta frangit", "report.reasons.violation_description": "Scis quod certa praecepta frangit",
"report.submit": "Mittere", "report.submit": "Mittere",
"report.target": "Report {target}", "report.target": "Report {target}",
@ -200,7 +211,7 @@
"report_notification.categories.other": "Altera", "report_notification.categories.other": "Altera",
"search.placeholder": "Quaerere", "search.placeholder": "Quaerere",
"search_results.all": "Omnis", "search_results.all": "Omnis",
"server_banner.active_users": "Usūrāriī āctīvī", "server_banner.active_users": "usūāriī āctīvī",
"server_banner.administered_by": "Administratur:", "server_banner.administered_by": "Administratur:",
"server_banner.is_one_of_many": "{domain} est unum ex multis independentibus servientibus Mastodon quos adhibere potes ut participes in fediverso.", "server_banner.is_one_of_many": "{domain} est unum ex multis independentibus servientibus Mastodon quos adhibere potes ut participes in fediverso.",
"sign_in_banner.sign_in": "Sign in", "sign_in_banner.sign_in": "Sign in",
@ -210,7 +221,7 @@
"status.copy": "Copy link to status", "status.copy": "Copy link to status",
"status.delete": "Oblitterare", "status.delete": "Oblitterare",
"status.edit": "Recolere", "status.edit": "Recolere",
"status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}", "status.edited_x_times": "Emendatum est {count, plural, one {{count} tempus} other {{count} tempora}}",
"status.favourites": "{count, plural, one {favoritum} other {favorita}}", "status.favourites": "{count, plural, one {favoritum} other {favorita}}",
"status.history.created": "{name} creatum {date}", "status.history.created": "{name} creatum {date}",
"status.history.edited": "{name} correxit {date}", "status.history.edited": "{name} correxit {date}",

View file

@ -453,6 +453,7 @@
"keyboard_shortcuts.toggle_hidden": "Rodyti / slėpti tekstą po TĮ", "keyboard_shortcuts.toggle_hidden": "Rodyti / slėpti tekstą po TĮ",
"keyboard_shortcuts.toggle_sensitivity": "Rodyti / slėpti mediją", "keyboard_shortcuts.toggle_sensitivity": "Rodyti / slėpti mediją",
"keyboard_shortcuts.toot": "Pradėti naują įrašą", "keyboard_shortcuts.toot": "Pradėti naują įrašą",
"keyboard_shortcuts.translate": "išversti įrašą",
"keyboard_shortcuts.unfocus": "Nebefokusuoti rengykles teksto sritį / paiešką", "keyboard_shortcuts.unfocus": "Nebefokusuoti rengykles teksto sritį / paiešką",
"keyboard_shortcuts.up": "Perkelti į viršų sąraše", "keyboard_shortcuts.up": "Perkelti į viršų sąraše",
"lightbox.close": "Uždaryti", "lightbox.close": "Uždaryti",
@ -821,6 +822,7 @@
"status.reblogs.empty": "Šio įrašo dar niekas nepakėlė. Kai kas nors tai padarys, jie bus rodomi čia.", "status.reblogs.empty": "Šio įrašo dar niekas nepakėlė. Kai kas nors tai padarys, jie bus rodomi čia.",
"status.redraft": "Ištrinti ir parengti iš naujo", "status.redraft": "Ištrinti ir parengti iš naujo",
"status.remove_bookmark": "Pašalinti žymę", "status.remove_bookmark": "Pašalinti žymę",
"status.remove_favourite": "Šalinti iš mėgstamų",
"status.replied_in_thread": "Atsakyta gijoje", "status.replied_in_thread": "Atsakyta gijoje",
"status.replied_to": "Atsakyta į {name}", "status.replied_to": "Atsakyta į {name}",
"status.reply": "Atsakyti", "status.reply": "Atsakyti",

View file

@ -52,7 +52,7 @@
"account.mute_notifications_short": "Izslēgt paziņojumu skaņu", "account.mute_notifications_short": "Izslēgt paziņojumu skaņu",
"account.mute_short": "Apklusināt", "account.mute_short": "Apklusināt",
"account.muted": "Apklusināts", "account.muted": "Apklusināts",
"account.mutual": "Savstarpējs", "account.mutual": "Abpusēji",
"account.no_bio": "Apraksts nav sniegts.", "account.no_bio": "Apraksts nav sniegts.",
"account.open_original_page": "Atvērt oriģinālo lapu", "account.open_original_page": "Atvērt oriģinālo lapu",
"account.posts": "Ieraksti", "account.posts": "Ieraksti",
@ -85,7 +85,9 @@
"alert.rate_limited.title": "Biežums ierobežots", "alert.rate_limited.title": "Biežums ierobežots",
"alert.unexpected.message": "Radās negaidīta kļūda.", "alert.unexpected.message": "Radās negaidīta kļūda.",
"alert.unexpected.title": "Ups!", "alert.unexpected.title": "Ups!",
"alt_text_badge.title": "Alt teksts",
"announcement.announcement": "Paziņojums", "announcement.announcement": "Paziņojums",
"annual_report.summary.archetype.oracle": "Orākuls",
"annual_report.summary.archetype.replier": "Sabiedriskais tauriņš", "annual_report.summary.archetype.replier": "Sabiedriskais tauriņš",
"annual_report.summary.followers.followers": "sekotāji", "annual_report.summary.followers.followers": "sekotāji",
"annual_report.summary.followers.total": "pavisam {count}", "annual_report.summary.followers.total": "pavisam {count}",
@ -401,13 +403,20 @@
"lightbox.previous": "Iepriekšējais", "lightbox.previous": "Iepriekšējais",
"limited_account_hint.action": "Tik un tā rādīt profilu", "limited_account_hint.action": "Tik un tā rādīt profilu",
"limited_account_hint.title": "{domain} moderatori ir paslēpuši šo profilu.", "limited_account_hint.title": "{domain} moderatori ir paslēpuši šo profilu.",
"link_preview.author": "Pēc {name}", "link_preview.author": "No {name}",
"link_preview.more_from_author": "Vairāk no {name}", "link_preview.more_from_author": "Vairāk no {name}",
"lists.add_member": "Pievienot",
"lists.add_to_list": "Pievienot sarakstam",
"lists.create": "Izveidot",
"lists.create_list": "Izveidot sarakstu",
"lists.delete": "Izdzēst sarakstu", "lists.delete": "Izdzēst sarakstu",
"lists.done": "Gatavs",
"lists.edit": "Labot sarakstu", "lists.edit": "Labot sarakstu",
"lists.remove_member": "Noņemt",
"lists.replies_policy.followed": "Jebkuram sekotajam lietotājam", "lists.replies_policy.followed": "Jebkuram sekotajam lietotājam",
"lists.replies_policy.list": "Saraksta dalībniekiem", "lists.replies_policy.list": "Saraksta dalībniekiem",
"lists.replies_policy.none": "Nevienam", "lists.replies_policy.none": "Nevienam",
"lists.save": "Saglabāt",
"load_pending": "{count, plural, zero{# jaunu vienumu} one {# jauns vienums} other {# jauni vienumi}}", "load_pending": "{count, plural, zero{# jaunu vienumu} one {# jauns vienums} other {# jauni vienumi}}",
"loading_indicator.label": "Ielādē…", "loading_indicator.label": "Ielādē…",
"media_gallery.hide": "Paslēpt", "media_gallery.hide": "Paslēpt",
@ -466,6 +475,8 @@
"notification.update": "{name} laboja ierakstu", "notification.update": "{name} laboja ierakstu",
"notification_requests.accept": "Pieņemt", "notification_requests.accept": "Pieņemt",
"notification_requests.dismiss": "Noraidīt", "notification_requests.dismiss": "Noraidīt",
"notification_requests.edit_selection": "Labot",
"notification_requests.exit_selection": "Gatavs",
"notification_requests.notifications_from": "Paziņojumi no {name}", "notification_requests.notifications_from": "Paziņojumi no {name}",
"notification_requests.title": "Atlasītie paziņojumi", "notification_requests.title": "Atlasītie paziņojumi",
"notifications.clear": "Notīrīt paziņojumus", "notifications.clear": "Notīrīt paziņojumus",
@ -501,6 +512,7 @@
"notifications.permission_denied": "Darbvirsmas paziņojumi nav pieejami, jo iepriekš tika noraidīts pārlūka atļauju pieprasījums", "notifications.permission_denied": "Darbvirsmas paziņojumi nav pieejami, jo iepriekš tika noraidīts pārlūka atļauju pieprasījums",
"notifications.permission_denied_alert": "Darbvirsmas paziņojumus nevar iespējot, jo pārlūkprogrammai atļauja tika iepriekš atteikta", "notifications.permission_denied_alert": "Darbvirsmas paziņojumus nevar iespējot, jo pārlūkprogrammai atļauja tika iepriekš atteikta",
"notifications.permission_required": "Darbvirsmas paziņojumi nav pieejami, jo nav piešķirta nepieciešamā atļauja.", "notifications.permission_required": "Darbvirsmas paziņojumi nav pieejami, jo nav piešķirta nepieciešamā atļauja.",
"notifications.policy.accept": "Pieņemt",
"notifications.policy.filter_new_accounts_title": "Jauni konti", "notifications.policy.filter_new_accounts_title": "Jauni konti",
"notifications.policy.filter_not_followers_title": "Cilvēki, kuri Tev neseko", "notifications.policy.filter_not_followers_title": "Cilvēki, kuri Tev neseko",
"notifications.policy.filter_not_following_hint": "Līdz tos pašrocīgi apstiprināsi", "notifications.policy.filter_not_following_hint": "Līdz tos pašrocīgi apstiprināsi",

View file

@ -72,6 +72,7 @@
"account.unmute_notifications_short": "Kā通知取消消音", "account.unmute_notifications_short": "Kā通知取消消音",
"account.unmute_short": "取消消音", "account.unmute_short": "取消消音",
"account_note.placeholder": "Tshi̍h tse加註kha", "account_note.placeholder": "Tshi̍h tse加註kha",
"admin.dashboard.daily_retention": "註冊以後ê用者維持率用kang計算",
"admin.dashboard.monthly_retention": "註冊以後ê用者維持率", "admin.dashboard.monthly_retention": "註冊以後ê用者維持率",
"admin.dashboard.retention.average": "平均", "admin.dashboard.retention.average": "平均",
"admin.dashboard.retention.cohort": "註冊ê月", "admin.dashboard.retention.cohort": "註冊ê月",
@ -96,15 +97,35 @@
"annual_report.summary.here_it_is": "下kha是lí {year} 年ê回顧:", "annual_report.summary.here_it_is": "下kha是lí {year} 年ê回顧:",
"annual_report.summary.highlighted_post.by_favourites": "Hōo足tsē lâng收藏ê PO文", "annual_report.summary.highlighted_post.by_favourites": "Hōo足tsē lâng收藏ê PO文",
"annual_report.summary.highlighted_post.by_reblogs": "Hōo足tsē lâng轉ê PO文", "annual_report.summary.highlighted_post.by_reblogs": "Hōo足tsē lâng轉ê PO文",
"annual_report.summary.highlighted_post.by_replies": "有上tsē回應ê PO文",
"annual_report.summary.highlighted_post.possessive": "{name} ê",
"annual_report.summary.most_used_app.most_used_app": "上tsē lâng用ê app",
"annual_report.summary.most_used_hashtag.most_used_hashtag": "上tsia̍p用ê hashtag",
"annual_report.summary.most_used_hashtag.none": "無",
"annual_report.summary.new_posts.new_posts": "新ê PO文",
"annual_report.summary.percentile.text": "<topLabel>Tse 予lí變做 {domain} ê用戶ê </topLabel><percentage></percentage><bottomLabel></bottomLabel>", "annual_report.summary.percentile.text": "<topLabel>Tse 予lí變做 {domain} ê用戶ê </topLabel><percentage></percentage><bottomLabel></bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Gún bē kā Bernie講。",
"annual_report.summary.thanks": "多謝成做Mastodon ê成員!",
"attachments_list.unprocessed": "Iáu bē處理",
"audio.hide": "Tshàng聲音",
"block_modal.remote_users_caveat": "Guán ē要求服侍器 {domain} 尊重lí ê決定。但是bô法度保證ta̍k ê服侍器lóng遵守因為tsi̍t-kuá服侍器huân-sè用別款方法處理封鎖。公開ê PO文可能iáu是ē hōo bô登入ê用者看著。",
"block_modal.show_less": "看khah少", "block_modal.show_less": "看khah少",
"block_modal.show_more": "顯示其他ê內容", "block_modal.show_more": "顯示其他ê內容",
"block_modal.they_cant_mention": "In buē-tàng 提起á是跟tuè lí。", "block_modal.they_cant_mention": "In buē-tàng 提起á是跟tuè lí。",
"block_modal.they_cant_see_posts": "Lín buē-tàng互相看著對方ê PO文。", "block_modal.they_cant_see_posts": "Lín buē-tàng互相看著對方ê PO文。",
"block_modal.they_will_know": "In通看見in hőng封鎖。", "block_modal.they_will_know": "In通看見in hőng封鎖。",
"block_modal.title": "Kám beh封鎖用者", "block_modal.title": "Kám beh封鎖用者",
"block_modal.you_wont_see_mentions": "Lí buē看見提起in ê PO文。",
"boost_modal.combo": "後擺lí thang tshi̍h {combo} 跳過",
"boost_modal.reblog": "Kám beh轉PO", "boost_modal.reblog": "Kám beh轉PO",
"boost_modal.undo_reblog": "Kám beh取消轉PO",
"bundle_column_error.copy_stacktrace": "Khóo-pih錯誤報告",
"bundle_column_error.error.body": "請求ê頁bē-tàng 畫出來。有可能是guán程式碼內底ê錯誤á是瀏覽器共存性ê議題。",
"bundle_column_error.error.title": "害ah", "bundle_column_error.error.title": "害ah",
"bundle_column_error.network.body": "佇載入tsit頁ê時出現錯誤。可能因為lí ê網路連線á是tsit臺服侍器ê暫時ê問題。",
"bundle_column_error.network.title": "網路錯誤",
"bundle_column_error.retry": "Koh試",
"bundle_column_error.return": "Tńg去頭頁",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "關", "bundle_modal_error.close": "關",
"compose.language.change": "換語言", "compose.language.change": "換語言",

View file

@ -10,6 +10,7 @@
"about.powered_by": "{mastodon} द्वारा संचालित विकेन्द्रीकृत सामाजिक मिडिया", "about.powered_by": "{mastodon} द्वारा संचालित विकेन्द्रीकृत सामाजिक मिडिया",
"about.rules": "सर्भर नियमहरू", "about.rules": "सर्भर नियमहरू",
"account.add_or_remove_from_list": "सूचीबाट थप्नुहोस् वा हटाउनुहोस्", "account.add_or_remove_from_list": "सूचीबाट थप्नुहोस् वा हटाउनुहोस्",
"account.badges.bot": "स्वचालित",
"account.badges.group": "समूह", "account.badges.group": "समूह",
"account.block": "@{name} लाई ब्लक गर्नुहोस्", "account.block": "@{name} लाई ब्लक गर्नुहोस्",
"account.block_domain": "{domain} डोमेनलाई ब्लक गर्नुहोस्", "account.block_domain": "{domain} डोमेनलाई ब्लक गर्नुहोस्",
@ -24,16 +25,29 @@
"account.enable_notifications": "@{name} ले पोस्ट गर्दा मलाई सूचित गर्नुहोस्", "account.enable_notifications": "@{name} ले पोस्ट गर्दा मलाई सूचित गर्नुहोस्",
"account.endorse": "प्रोफाइलमा फिचर गर्नुहोस्", "account.endorse": "प्रोफाइलमा फिचर गर्नुहोस्",
"account.featured_tags.last_status_never": "कुनै पोस्ट छैन", "account.featured_tags.last_status_never": "कुनै पोस्ट छैन",
"account.featured_tags.title": "{name}का विशेष ह्यासट्यागहरू",
"account.follow": "फलो गर्नुहोस", "account.follow": "फलो गर्नुहोस",
"account.follow_back": "फलो ब्याक गर्नुहोस्",
"account.followers": "फलोअरहरु",
"account.followers.empty": "यस प्रयोगकर्तालाई अहिलेसम्म कसैले फलो गर्दैन।", "account.followers.empty": "यस प्रयोगकर्तालाई अहिलेसम्म कसैले फलो गर्दैन।",
"account.followers_counter": "{count, plural, one {{counter} फलोअर} other {{counter} फलोअरहरू}}",
"account.following": "फलो गर्दै",
"account.following_counter": "{count, plural, one {{counter} फलो गर्दै} other {{counter} फलो गर्दै}}",
"account.follows.empty": "यो प्रयोगकर्ताले अहिलेसम्म कसैलाई फलो गरेको छैन।", "account.follows.empty": "यो प्रयोगकर्ताले अहिलेसम्म कसैलाई फलो गरेको छैन।",
"account.go_to_profile": "प्रोफाइलमा जानुहोस्", "account.go_to_profile": "प्रोफाइलमा जानुहोस्",
"account.hide_reblogs": "@{name} को बूस्टहरू लुकाउनुहोस्", "account.hide_reblogs": "@{name} को बूस्टहरू लुकाउनुहोस्",
"account.in_memoriam": "सम्झनामा।",
"account.link_verified_on": "यस लिङ्कको स्वामित्व {date} मा जाँच गरिएको थियो", "account.link_verified_on": "यस लिङ्कको स्वामित्व {date} मा जाँच गरिएको थियो",
"account.media": "मिडिया", "account.media": "मिडिया",
"account.mention": "@{name} लाई उल्लेख गर्नुहोस्", "account.mention": "@{name} लाई उल्लेख गर्नुहोस्",
"account.mute": "@{name}लाई म्यूट गर्नुहोस्",
"account.mute_notifications_short": "सूचनाहरू म्यूट गर्नुहोस्",
"account.mute_short": "म्युट",
"account.muted": "म्युट गरिएको",
"account.mutual": "आपसी",
"account.no_bio": "कुनै विवरण प्रदान गरिएको छैन।", "account.no_bio": "कुनै विवरण प्रदान गरिएको छैन।",
"account.posts": "पोस्टहरू", "account.posts": "पोस्टहरू",
"account.report": "@{name}लाई रिपोर्ट गर्नुहोस्",
"account.requested": "स्वीकृतिको पर्खाइमा। फलो अनुरोध रद्द गर्न क्लिक गर्नुहोस्", "account.requested": "स्वीकृतिको पर्खाइमा। फलो अनुरोध रद्द गर्न क्लिक गर्नुहोस्",
"account.requested_follow": "{name} ले तपाईंलाई फलो गर्न अनुरोध गर्नुभएको छ", "account.requested_follow": "{name} ले तपाईंलाई फलो गर्न अनुरोध गर्नुभएको छ",
"account.share": "@{name} को प्रोफाइल सेयर गर्नुहोस्", "account.share": "@{name} को प्रोफाइल सेयर गर्नुहोस्",
@ -43,15 +57,21 @@
"account.unblock_short": "अनब्लक गर्नुहोस्", "account.unblock_short": "अनब्लक गर्नुहोस्",
"account.unendorse": "प्रोफाइलमा फिचर नगर्नुहोस्", "account.unendorse": "प्रोफाइलमा फिचर नगर्नुहोस्",
"account.unfollow": "अनफलो गर्नुहोस्", "account.unfollow": "अनफलो गर्नुहोस्",
"account.unmute": "@{name}लाई अनम्युट गर्नुहोस्",
"account.unmute_notifications_short": "सूचनाहरू अनम्युट गर्नुहोस्",
"account.unmute_short": "अनम्यूट गर्नुहोस्",
"account_note.placeholder": "नोट लेख्न क्लिक गर्नुहोस्", "account_note.placeholder": "नोट लेख्न क्लिक गर्नुहोस्",
"admin.dashboard.retention.average": "औसत", "admin.dashboard.retention.average": "औसत",
"admin.dashboard.retention.cohort_size": "नयाँ प्रयोगकर्ताहरू", "admin.dashboard.retention.cohort_size": "नयाँ प्रयोगकर्ताहरू",
"alert.rate_limited.message": "कृपया {retry_time, time, medium} पछि पुन: प्रयास गर्नुहोस्।", "alert.rate_limited.message": "कृपया {retry_time, time, medium} पछि पुन: प्रयास गर्नुहोस्।",
"alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।", "alert.unexpected.message": "एउटा अनपेक्षित त्रुटि भयो।",
"announcement.announcement": "घोषणा", "announcement.announcement": "घोषणा",
"annual_report.summary.followers.followers": "फलोअरहरु",
"annual_report.summary.new_posts.new_posts": "नयाँ पोस्टहरू",
"block_modal.remote_users_caveat": "हामी सर्भर {domain} लाई तपाईंको निर्णयको सम्मान गर्न सोध्नेछौं। तर, हामी अनुपालनको ग्यारेन्टी दिन सक्दैनौं किनभने केही सर्भरहरूले ब्लकहरू फरक रूपमा ह्यान्डल गर्न सक्छन्। सार्वजनिक पोस्टहरू लग इन नभएका प्रयोगकर्ताहरूले देख्न सक्छन्।", "block_modal.remote_users_caveat": "हामी सर्भर {domain} लाई तपाईंको निर्णयको सम्मान गर्न सोध्नेछौं। तर, हामी अनुपालनको ग्यारेन्टी दिन सक्दैनौं किनभने केही सर्भरहरूले ब्लकहरू फरक रूपमा ह्यान्डल गर्न सक्छन्। सार्वजनिक पोस्टहरू लग इन नभएका प्रयोगकर्ताहरूले देख्न सक्छन्।",
"block_modal.show_less": "कम देखाउनुहोस्", "block_modal.show_less": "कम देखाउनुहोस्",
"block_modal.show_more": "थप देखाउनुहोस्", "block_modal.show_more": "थप देखाउनुहोस्",
"block_modal.title": "प्रयोगकर्तालाई ब्लक गर्ने हो?",
"bundle_column_error.copy_stacktrace": "त्रुटि रिपोर्ट प्रतिलिपि गर्नुहोस्", "bundle_column_error.copy_stacktrace": "त्रुटि रिपोर्ट प्रतिलिपि गर्नुहोस्",
"bundle_column_error.network.title": "नेटवर्क त्रुटि", "bundle_column_error.network.title": "नेटवर्क त्रुटि",
"bundle_column_error.retry": "पुन: प्रयास गर्नुहोस्", "bundle_column_error.retry": "पुन: प्रयास गर्नुहोस्",
@ -72,5 +92,34 @@
"compose.language.change": "भाषा परिवर्तन गर्नुहोस्", "compose.language.change": "भाषा परिवर्तन गर्नुहोस्",
"compose.language.search": "भाषाहरू खोज्नुहोस्...", "compose.language.search": "भाषाहरू खोज्नुहोस्...",
"compose_form.direct_message_warning_learn_more": "थप जान्नुहोस्", "compose_form.direct_message_warning_learn_more": "थप जान्नुहोस्",
"compose_form.publish_form": "नयाँ पोस्ट" "compose_form.publish_form": "नयाँ पोस्ट",
"confirmations.follow_to_list.confirm": "फलो गर्नुहोस र सूचीमा थप्नुहोस्",
"confirmations.follow_to_list.message": "सूचीमा {name}लाई थप्नको लागि तपाईंले तिनीहरूलाई फलो गरेको हुनुपर्छ।",
"confirmations.follow_to_list.title": "प्रयोगकर्तालाई फलो गर्ने हो?",
"confirmations.unfollow.confirm": "अनफलो गर्नुहोस्",
"confirmations.unfollow.message": "के तपाइँ पक्का हुनुहुन्छ कि तपाइँ {name}लाई अनफलो गर्न चाहनुहुन्छ?",
"confirmations.unfollow.title": "प्रयोगकर्तालाई अनफलो गर्ने हो?",
"empty_column.follow_requests": "तपाईंले अहिलेसम्म कुनै पनि फलो अनुरोधहरू प्राप्त गर्नुभएको छैन। तपाईंले कुनै प्राप्त गरेपछि त्यो यहाँ देखिनेछ।",
"empty_column.followed_tags": "तपाईंले अहिलेसम्म कुनै पनि ह्यासट्यागहरू फलो गर्नुभएको छैन। तपाईंले ह्यासट्याग फलो गरेपछि तिनीहरू यहाँ देखिनेछन्।",
"follow_suggestions.dismiss": "फेरि नदेखाउनुहोस्",
"follow_suggestions.hints.similar_to_recently_followed": "यो प्रोफाइल तपाईंले हालसालै फलो गर्नुभएका प्रोफाइलहरूसँग मिल्दोजुल्दो छ।",
"follow_suggestions.popular_suggestion": "लोकप्रिय सुझाव",
"follow_suggestions.popular_suggestion_longer": "{domain} मा लोकप्रिय",
"follow_suggestions.similar_to_recently_followed_longer": "तपाईंले हालसालै फलो गर्नुभएको प्रोफाइलहरू जस्तै",
"follow_suggestions.view_all": "सबै हेर्नुहोस्",
"follow_suggestions.who_to_follow": "कसलाई फलो गर्ने",
"followed_tags": "फलो गरिएका ह्यासट्यागहरू",
"hashtag.follow": "ह्यासट्याग फलो गर्नुहोस्",
"hashtag.unfollow": "ह्यासट्याग अनफलो गर्नुहोस्",
"interaction_modal.title.follow": "{name} लाई फलो गर्नुहोस्",
"mute_modal.they_wont_know": "उनीहरूलाई म्यूट गरिएको बारे थाहा हुँदैन।",
"mute_modal.title": "प्रयोगकर्तालाई म्युट गर्ने हो?",
"navigation_bar.blocks": "ब्लक गरिएको प्रयोगकर्ताहरु",
"navigation_bar.follow_requests": "फलो अनुरोधहरू",
"navigation_bar.followed_tags": "फलो गरिएका ह्यासट्यागहरू",
"report.unfollow": "@{name} लाई अनफलो गर्नुहोस्",
"search_results.hashtags": "ह्यासट्यागहरू",
"status.mute": "@{name}लाई म्यूट गर्नुहोस्",
"status.mute_conversation": "कुराकानी म्यूट गर्नुहोस्",
"status.unmute_conversation": "कुराकानी अनम्यूट गर्नुहोस्"
} }

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Inhoudswaarschuwing tonen/verbergen", "keyboard_shortcuts.toggle_hidden": "Inhoudswaarschuwing tonen/verbergen",
"keyboard_shortcuts.toggle_sensitivity": "Media tonen/verbergen", "keyboard_shortcuts.toggle_sensitivity": "Media tonen/verbergen",
"keyboard_shortcuts.toot": "Nieuw bericht schrijven", "keyboard_shortcuts.toot": "Nieuw bericht schrijven",
"keyboard_shortcuts.translate": "om een bericht te vertalen",
"keyboard_shortcuts.unfocus": "Tekst- en zoekveld ontfocussen", "keyboard_shortcuts.unfocus": "Tekst- en zoekveld ontfocussen",
"keyboard_shortcuts.up": "Naar boven in de lijst bewegen", "keyboard_shortcuts.up": "Naar boven in de lijst bewegen",
"lightbox.close": "Sluiten", "lightbox.close": "Sluiten",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Niemand heeft dit bericht nog geboost. Wanneer iemand dit doet, valt dat hier te zien.", "status.reblogs.empty": "Niemand heeft dit bericht nog geboost. Wanneer iemand dit doet, valt dat hier te zien.",
"status.redraft": "Verwijderen en herschrijven", "status.redraft": "Verwijderen en herschrijven",
"status.remove_bookmark": "Bladwijzer verwijderen", "status.remove_bookmark": "Bladwijzer verwijderen",
"status.remove_favourite": "Verwijderen uit favorieten",
"status.replied_in_thread": "Reageerde in gesprek", "status.replied_in_thread": "Reageerde in gesprek",
"status.replied_to": "Reageerde op {name}", "status.replied_to": "Reageerde op {name}",
"status.reply": "Reageren", "status.reply": "Reageren",

View file

@ -239,6 +239,10 @@
"disabled_account_banner.text": "Kontoen din, {disabledAccount} er for tida deaktivert.", "disabled_account_banner.text": "Kontoen din, {disabledAccount} er for tida deaktivert.",
"dismissable_banner.community_timeline": "Dette er dei nylegaste offentlege innlegga frå personar med kontoar frå {domain}.", "dismissable_banner.community_timeline": "Dette er dei nylegaste offentlege innlegga frå personar med kontoar frå {domain}.",
"dismissable_banner.dismiss": "Avvis", "dismissable_banner.dismiss": "Avvis",
"dismissable_banner.explore_links": "Desse nyhendesakene er mest delte på allheimen i dag. Sakene som er nyast og mest delte er rangert høgast.",
"dismissable_banner.explore_statuses": "Her er populære innlegg på allheimen nett no. Dei nyaste inlegga med flest favorittar og framhevingar er rangert høgast.",
"dismissable_banner.explore_tags": "Desse merkelappane er populære på allheimen i dag. Merkelappane som er brukte av flest folk er rangert høgast.",
"dismissable_banner.public_timeline": "Dette er dei nyaste offentlege innlegga frå menneske på allheimen som folk på {domain} fylgjer.",
"domain_block_modal.block": "Blokker tenaren", "domain_block_modal.block": "Blokker tenaren",
"domain_block_modal.block_account_instead": "Blokker @{name} i staden", "domain_block_modal.block_account_instead": "Blokker @{name} i staden",
"domain_block_modal.they_can_interact_with_old_posts": "Folk på denne tenaren kan samhandla med dei gamle innlegga dine.", "domain_block_modal.they_can_interact_with_old_posts": "Folk på denne tenaren kan samhandla med dei gamle innlegga dine.",
@ -287,7 +291,7 @@
"empty_column.community": "Den lokale tidslina er tom. Skriv noko offentleg å få ballen til å rulle!", "empty_column.community": "Den lokale tidslina er tom. Skriv noko offentleg å få ballen til å rulle!",
"empty_column.direct": "Du har ingen private omtaler enda. Etter du har sendt eller mottatt en, så vil den dukke opp her.", "empty_column.direct": "Du har ingen private omtaler enda. Etter du har sendt eller mottatt en, så vil den dukke opp her.",
"empty_column.domain_blocks": "Det er ingen blokkerte domene enno.", "empty_column.domain_blocks": "Det er ingen blokkerte domene enno.",
"empty_column.explore_statuses": "Ingenting er i støytet nett no. Prøv igjen seinare!", "empty_column.explore_statuses": "Ingenting er populært nett no. Prøv att seinare!",
"empty_column.favourited_statuses": "Du har ingen favoritt-statusar ennå. Når du merkjer ein som favoritt, dukkar han opp her.", "empty_column.favourited_statuses": "Du har ingen favoritt-statusar ennå. Når du merkjer ein som favoritt, dukkar han opp her.",
"empty_column.favourites": "Ingen har merkt denne statusen som favoritt enno. Når nokon gjer det, dukkar dei opp her.", "empty_column.favourites": "Ingen har merkt denne statusen som favoritt enno. Når nokon gjer det, dukkar dei opp her.",
"empty_column.follow_requests": "Ingen har spurt om å fylgja deg enno. Når nokon gjer det, vil det dukka opp her.", "empty_column.follow_requests": "Ingen har spurt om å fylgja deg enno. Når nokon gjer det, vil det dukka opp her.",
@ -358,8 +362,10 @@
"footer.privacy_policy": "Personvernsreglar", "footer.privacy_policy": "Personvernsreglar",
"footer.source_code": "Vis kjeldekode", "footer.source_code": "Vis kjeldekode",
"footer.status": "Status", "footer.status": "Status",
"footer.terms_of_service": "Brukarvilkår",
"generic.saved": "Lagra", "generic.saved": "Lagra",
"getting_started.heading": "Kom i gang", "getting_started.heading": "Kom i gang",
"hashtag.admin_moderation": "Opne moderasjonsgrensesnitt for #{name}",
"hashtag.column_header.tag_mode.all": "og {additional}", "hashtag.column_header.tag_mode.all": "og {additional}",
"hashtag.column_header.tag_mode.any": "eller {additional}", "hashtag.column_header.tag_mode.any": "eller {additional}",
"hashtag.column_header.tag_mode.none": "utan {additional}", "hashtag.column_header.tag_mode.none": "utan {additional}",
@ -401,6 +407,13 @@
"ignore_notifications_modal.not_followers_title": "Oversjå varsel frå folk som ikkje fylgjer deg?", "ignore_notifications_modal.not_followers_title": "Oversjå varsel frå folk som ikkje fylgjer deg?",
"ignore_notifications_modal.not_following_title": "Oversjå varsel frå folk du ikkje fylgjer?", "ignore_notifications_modal.not_following_title": "Oversjå varsel frå folk du ikkje fylgjer?",
"ignore_notifications_modal.private_mentions_title": "Oversjå varsel frå masseutsende private omtaler?", "ignore_notifications_modal.private_mentions_title": "Oversjå varsel frå masseutsende private omtaler?",
"interaction_modal.action.favourite": "Du må favorittmerka frå kontoen din for å halda fram.",
"interaction_modal.action.follow": "Du må fylgja frå kontoen din for å halda fram.",
"interaction_modal.action.reblog": "Du må framheva frå kontoen din for å halda fram.",
"interaction_modal.action.reply": "Du må svara frå kontoen din for å halda fram.",
"interaction_modal.action.vote": "Du må røysta frå kontoen din for å halda fram.",
"interaction_modal.go": "Gå",
"interaction_modal.no_account_yet": "Har du ikkje ein konto enno?",
"interaction_modal.on_another_server": "På ein annan tenar", "interaction_modal.on_another_server": "På ein annan tenar",
"interaction_modal.on_this_server": "På denne tenaren", "interaction_modal.on_this_server": "På denne tenaren",
"interaction_modal.title.favourite": "Marker innlegget til {name} som favoritt", "interaction_modal.title.favourite": "Marker innlegget til {name} som favoritt",
@ -408,6 +421,7 @@
"interaction_modal.title.reblog": "Framhev {name} sitt innlegg", "interaction_modal.title.reblog": "Framhev {name} sitt innlegg",
"interaction_modal.title.reply": "Svar på innlegge til {name}", "interaction_modal.title.reply": "Svar på innlegge til {name}",
"interaction_modal.title.vote": "Røyst i {name} si avrøysting", "interaction_modal.title.vote": "Røyst i {name} si avrøysting",
"interaction_modal.username_prompt": "T.d. {example}",
"intervals.full.days": "{number, plural, one {# dag} other {# dagar}}", "intervals.full.days": "{number, plural, one {# dag} other {# dagar}}",
"intervals.full.hours": "{number, plural, one {# time} other {# timar}}", "intervals.full.hours": "{number, plural, one {# time} other {# timar}}",
"intervals.full.minutes": "{number, plural, one {# minutt} other {# minutt}}", "intervals.full.minutes": "{number, plural, one {# minutt} other {# minutt}}",
@ -443,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Vis/gøym tekst bak innhaldsvarsel", "keyboard_shortcuts.toggle_hidden": "Vis/gøym tekst bak innhaldsvarsel",
"keyboard_shortcuts.toggle_sensitivity": "Vis/gøym media", "keyboard_shortcuts.toggle_sensitivity": "Vis/gøym media",
"keyboard_shortcuts.toot": "Lag nytt tut", "keyboard_shortcuts.toot": "Lag nytt tut",
"keyboard_shortcuts.translate": "å omsetje eit innlegg",
"keyboard_shortcuts.unfocus": "for å fokusere vekk skrive-/søkefeltet", "keyboard_shortcuts.unfocus": "for å fokusere vekk skrive-/søkefeltet",
"keyboard_shortcuts.up": "Flytt opp på lista", "keyboard_shortcuts.up": "Flytt opp på lista",
"lightbox.close": "Lukk", "lightbox.close": "Lukk",
@ -455,11 +470,32 @@
"link_preview.author": "Av {name}", "link_preview.author": "Av {name}",
"link_preview.more_from_author": "Meir frå {name}", "link_preview.more_from_author": "Meir frå {name}",
"link_preview.shares": "{count, plural,one {{counter} innlegg} other {{counter} innlegg}}", "link_preview.shares": "{count, plural,one {{counter} innlegg} other {{counter} innlegg}}",
"lists.add_member": "Legg til",
"lists.add_to_list": "Legg til i liste",
"lists.add_to_lists": "Legg til {name} i lister",
"lists.create": "Lag",
"lists.create_a_list_to_organize": "Lag ei ny liste for å organisera startskjermen din",
"lists.create_list": "Lag liste",
"lists.delete": "Slett liste", "lists.delete": "Slett liste",
"lists.done": "Ferdig",
"lists.edit": "Rediger liste", "lists.edit": "Rediger liste",
"lists.exclusive": "Gøym medlemer frå startskjermen",
"lists.exclusive_hint": "Viss nokon er på denne lista, blir dei gøymde frå startskjermen slik at du slepp sjå innlegga deira to gonger.",
"lists.find_users_to_add": "Finn brukarar å leggja til",
"lists.list_members": "Syn medlemer",
"lists.list_members_count": "{count, plural, one {# medlem} other {# medlemer}}",
"lists.list_name": "Namn på lista",
"lists.new_list_name": "Namn på den nye lista",
"lists.no_lists_yet": "Ingen lister enno.",
"lists.no_members_yet": "Ingen medlemer enno.",
"lists.no_results_found": "Fann ingenting.",
"lists.remove_member": "Fjern",
"lists.replies_policy.followed": "Alle fylgde brukarar", "lists.replies_policy.followed": "Alle fylgde brukarar",
"lists.replies_policy.list": "Medlemar i lista", "lists.replies_policy.list": "Medlemar i lista",
"lists.replies_policy.none": "Ingen", "lists.replies_policy.none": "Ingen",
"lists.save": "Lagre",
"lists.search": "Søk",
"lists.show_replies_to": "Inkluder svar frå listemedlemer til",
"load_pending": "{count, plural, one {# nytt element} other {# nye element}}", "load_pending": "{count, plural, one {# nytt element} other {# nye element}}",
"loading_indicator.label": "Lastar…", "loading_indicator.label": "Lastar…",
"media_gallery.hide": "Gøym", "media_gallery.hide": "Gøym",
@ -512,6 +548,8 @@
"notification.annual_report.view": "Sjå #Året ditt", "notification.annual_report.view": "Sjå #Året ditt",
"notification.favourite": "{name} markerte innlegget ditt som favoritt", "notification.favourite": "{name} markerte innlegget ditt som favoritt",
"notification.favourite.name_and_others_with_link": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> favorittmerka innlegget ditt", "notification.favourite.name_and_others_with_link": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> favorittmerka innlegget ditt",
"notification.favourite_pm": "{name} favorittmerka den private nemninga di",
"notification.favourite_pm.name_and_others_with_link": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> favorittmerka den private nemninga di",
"notification.follow": "{name} fylgde deg", "notification.follow": "{name} fylgde deg",
"notification.follow.name_and_others": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> fylgde deg", "notification.follow.name_and_others": "{name} og <a>{count, plural, one {# annan} other {# andre}}</a> fylgde deg",
"notification.follow_request": "{name} har bedt om å fylgja deg", "notification.follow_request": "{name} har bedt om å fylgja deg",
@ -616,7 +654,11 @@
"notifications_permission_banner.enable": "Skru på skrivebordsvarsel", "notifications_permission_banner.enable": "Skru på skrivebordsvarsel",
"notifications_permission_banner.how_to_control": "Aktiver skrivebordsvarsel for å få varsel når Mastodon ikkje er open. Du kan nøye bestemme kva samhandlingar som skal føre til skrivebordsvarsel gjennom {icon}-knappen ovanfor etter at varsel er aktivert.", "notifications_permission_banner.how_to_control": "Aktiver skrivebordsvarsel for å få varsel når Mastodon ikkje er open. Du kan nøye bestemme kva samhandlingar som skal føre til skrivebordsvarsel gjennom {icon}-knappen ovanfor etter at varsel er aktivert.",
"notifications_permission_banner.title": "Gå aldri glipp av noko", "notifications_permission_banner.title": "Gå aldri glipp av noko",
"onboarding.follows.back": "Tilbake",
"onboarding.follows.done": "Ferdig",
"onboarding.follows.empty": "Me kan ikkje visa deg nokon resultat no. Du kan prøva å søkja eller bla gjennom utforsk-sida for å finna folk å fylgja, eller du kan prøva att seinare.", "onboarding.follows.empty": "Me kan ikkje visa deg nokon resultat no. Du kan prøva å søkja eller bla gjennom utforsk-sida for å finna folk å fylgja, eller du kan prøva att seinare.",
"onboarding.follows.search": "Søk",
"onboarding.follows.title": "Fylg folk for å koma i gang",
"onboarding.profile.discoverable": "Gjer profilen min synleg", "onboarding.profile.discoverable": "Gjer profilen min synleg",
"onboarding.profile.discoverable_hint": "Når du vel å gjera profilen din synleg på Mastodon, vil innlegga dine syna i søkjeresultat og populære innlegg, og profilen din kan bli føreslegen for folk med liknande interesser som deg.", "onboarding.profile.discoverable_hint": "Når du vel å gjera profilen din synleg på Mastodon, vil innlegga dine syna i søkjeresultat og populære innlegg, og profilen din kan bli føreslegen for folk med liknande interesser som deg.",
"onboarding.profile.display_name": "Synleg namn", "onboarding.profile.display_name": "Synleg namn",
@ -654,6 +696,8 @@
"privacy_policy.title": "Personvernsreglar", "privacy_policy.title": "Personvernsreglar",
"recommended": "Tilrådd", "recommended": "Tilrådd",
"refresh": "Oppdater", "refresh": "Oppdater",
"regeneration_indicator.please_stand_by": "Vent litt.",
"regeneration_indicator.preparing_your_home_feed": "Gjer klar startskjermen din…",
"relative_time.days": "{number}dg", "relative_time.days": "{number}dg",
"relative_time.full.days": "{number, plural, one {# dag} other {# dagar}} sidan", "relative_time.full.days": "{number, plural, one {# dag} other {# dagar}} sidan",
"relative_time.full.hours": "{number, plural, one {# time} other {# timar}} sidan", "relative_time.full.hours": "{number, plural, one {# time} other {# timar}} sidan",
@ -737,8 +781,11 @@
"search_results.accounts": "Profiler", "search_results.accounts": "Profiler",
"search_results.all": "Alt", "search_results.all": "Alt",
"search_results.hashtags": "Emneknaggar", "search_results.hashtags": "Emneknaggar",
"search_results.no_results": "Ingen resultat.",
"search_results.no_search_yet": "Prøv å søkja etter innlegg, profilar eller merkelappar.",
"search_results.see_all": "Sjå alle", "search_results.see_all": "Sjå alle",
"search_results.statuses": "Tut", "search_results.statuses": "Tut",
"search_results.title": "Søk etter \"{q}\"",
"server_banner.about_active_users": "Personar som har brukt denne tenaren dei siste 30 dagane (Månadlege Aktive Brukarar)", "server_banner.about_active_users": "Personar som har brukt denne tenaren dei siste 30 dagane (Månadlege Aktive Brukarar)",
"server_banner.active_users": "aktive brukarar", "server_banner.active_users": "aktive brukarar",
"server_banner.administered_by": "Administrert av:", "server_banner.administered_by": "Administrert av:",
@ -811,6 +858,7 @@
"subscribed_languages.target": "Endre abonnerte språk for {target}", "subscribed_languages.target": "Endre abonnerte språk for {target}",
"tabs_bar.home": "Heim", "tabs_bar.home": "Heim",
"tabs_bar.notifications": "Varsel", "tabs_bar.notifications": "Varsel",
"terms_of_service.title": "Bruksvilkår",
"time_remaining.days": "{number, plural, one {# dag} other {# dagar}} igjen", "time_remaining.days": "{number, plural, one {# dag} other {# dagar}} igjen",
"time_remaining.hours": "{number, plural, one {# time} other {# timar}} igjen", "time_remaining.hours": "{number, plural, one {# time} other {# timar}} igjen",
"time_remaining.minutes": "{number, plural, one {# minutt} other {# minutt}} igjen", "time_remaining.minutes": "{number, plural, one {# minutt} other {# minutt}} igjen",

View file

@ -1,10 +1,10 @@
{ {
"about.blocks": "Servidores moderados", "about.blocks": "Servidores moderados",
"about.contact": "Contacto:", "about.contact": "Contacto:",
"about.disclaimer": "Mastodon é um software livre, de código aberto e uma marca registada do Mastodon gGmbH.", "about.disclaimer": "O Mastodon é um software livre, de código aberto e uma marca registada do Mastodon gGmbH.",
"about.domain_blocks.no_reason_available": "Motivo não disponível", "about.domain_blocks.no_reason_available": "Motivo não disponível",
"about.domain_blocks.preamble": "O Mastodon geralmente permite que veja e interaja com o conteúdo de utilizadores de qualquer outra instância no fediverso. Estas são as exceções desta instância em específico.", "about.domain_blocks.preamble": "O Mastodon geralmente permite ver e interagir com o conteúdo de utilizadores de qualquer outra instância no fediverso. Estas são as exceções desta instância em específico.",
"about.domain_blocks.silenced.explanation": "Normalmente não verá perfis e conteúdo deste servidor, a menos que os procure explicitamente ou opte por os seguir.", "about.domain_blocks.silenced.explanation": "Normalmente não verás perfis e conteúdos deste servidor, a não ser que os procures explicitamente ou optes por segui-los.",
"about.domain_blocks.silenced.title": "Limitados", "about.domain_blocks.silenced.title": "Limitados",
"about.domain_blocks.suspended.explanation": "Nenhum dado deste servidor será processado, armazenado ou trocado, tornando impossível qualquer interação ou comunicação com os utilizadores a partir deste servidor.", "about.domain_blocks.suspended.explanation": "Nenhum dado deste servidor será processado, armazenado ou trocado, tornando impossível qualquer interação ou comunicação com os utilizadores a partir deste servidor.",
"about.domain_blocks.suspended.title": "Suspensos", "about.domain_blocks.suspended.title": "Suspensos",
@ -20,7 +20,7 @@
"account.block_short": "Bloquear", "account.block_short": "Bloquear",
"account.blocked": "Bloqueado", "account.blocked": "Bloqueado",
"account.cancel_follow_request": "Retirar pedido para seguir", "account.cancel_follow_request": "Retirar pedido para seguir",
"account.copy": "Copiar hiperligação para o perfil", "account.copy": "Copiar hiperligação do perfil",
"account.direct": "Mencionar @{name} em privado", "account.direct": "Mencionar @{name} em privado",
"account.disable_notifications": "Parar de me notificar das publicações de @{name}", "account.disable_notifications": "Parar de me notificar das publicações de @{name}",
"account.domain_blocked": "Domínio bloqueado", "account.domain_blocked": "Domínio bloqueado",
@ -58,8 +58,8 @@
"account.posts": "Publicações", "account.posts": "Publicações",
"account.posts_with_replies": "Publicações e respostas", "account.posts_with_replies": "Publicações e respostas",
"account.report": "Denunciar @{name}", "account.report": "Denunciar @{name}",
"account.requested": "A aguardar aprovação. Clique para cancelar o pedido para seguir", "account.requested": "A aguardar aprovação. Clica para cancelar o pedido para seguir",
"account.requested_follow": "{name} pediu para segui-lo", "account.requested_follow": "{name} pediu para seguir-te",
"account.share": "Partilhar o perfil @{name}", "account.share": "Partilhar o perfil @{name}",
"account.show_reblogs": "Mostrar partilhas impulsionadas de @{name}", "account.show_reblogs": "Mostrar partilhas impulsionadas de @{name}",
"account.statuses_counter": "{count, plural, one {{counter} publicação} other {{counter} publicações}}", "account.statuses_counter": "{count, plural, one {{counter} publicação} other {{counter} publicações}}",
@ -71,7 +71,7 @@
"account.unmute": "Desocultar @{name}", "account.unmute": "Desocultar @{name}",
"account.unmute_notifications_short": "Desocultar notificações", "account.unmute_notifications_short": "Desocultar notificações",
"account.unmute_short": "Desocultar", "account.unmute_short": "Desocultar",
"account_note.placeholder": "Clique para adicionar nota", "account_note.placeholder": "Clicar para adicionar nota",
"admin.dashboard.daily_retention": "Taxa de retenção de utilizadores por dia após a inscrição", "admin.dashboard.daily_retention": "Taxa de retenção de utilizadores por dia após a inscrição",
"admin.dashboard.monthly_retention": "Taxa de retenção de utilizadores por mês após a inscrição", "admin.dashboard.monthly_retention": "Taxa de retenção de utilizadores por mês após a inscrição",
"admin.dashboard.retention.average": "Média", "admin.dashboard.retention.average": "Média",
@ -81,12 +81,12 @@
"admin.impact_report.instance_followers": "Seguidores que os nossos utilizadores perderiam", "admin.impact_report.instance_followers": "Seguidores que os nossos utilizadores perderiam",
"admin.impact_report.instance_follows": "Seguidores que os utilizadores deles perderiam", "admin.impact_report.instance_follows": "Seguidores que os utilizadores deles perderiam",
"admin.impact_report.title": "Resumo do impacto", "admin.impact_report.title": "Resumo do impacto",
"alert.rate_limited.message": "Volte a tentar depois das {retry_time, time, medium}.", "alert.rate_limited.message": "Volta a tentar depois das {retry_time, time, medium}.",
"alert.rate_limited.title": "Limite de tentativas", "alert.rate_limited.title": "Limite de tentativas",
"alert.unexpected.message": "Ocorreu um erro inesperado.", "alert.unexpected.message": "Ocorreu um erro inesperado.",
"alert.unexpected.title": "Bolas!", "alert.unexpected.title": "Bolas!",
"alt_text_badge.title": "Texto alternativo", "alt_text_badge.title": "Texto alternativo",
"announcement.announcement": "Anúncio", "announcement.announcement": "Mensagem de manutenção",
"annual_report.summary.archetype.booster": "O caçador de frescura", "annual_report.summary.archetype.booster": "O caçador de frescura",
"annual_report.summary.archetype.lurker": "O espreitador", "annual_report.summary.archetype.lurker": "O espreitador",
"annual_report.summary.archetype.oracle": "O oráculo", "annual_report.summary.archetype.oracle": "O oráculo",
@ -103,39 +103,39 @@
"annual_report.summary.most_used_hashtag.most_used_hashtag": "etiqueta mais utilizada", "annual_report.summary.most_used_hashtag.most_used_hashtag": "etiqueta mais utilizada",
"annual_report.summary.most_used_hashtag.none": "Nenhuma", "annual_report.summary.most_used_hashtag.none": "Nenhuma",
"annual_report.summary.new_posts.new_posts": "novas publicações", "annual_report.summary.new_posts.new_posts": "novas publicações",
"annual_report.summary.percentile.text": "<topLabel>Isso coloca-o no topo</topLabel><percentage></percentage><bottomLabel>dos utilizadores de {domain}.</bottomLabel>", "annual_report.summary.percentile.text": "<topLabel>Isso coloca-te no topo</topLabel><percentage></percentage><bottomLabel>dos utilizadores de {domain}.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Este segredo fica entre nós.", "annual_report.summary.percentile.we_wont_tell_bernie": "Este segredo fica entre nós.",
"annual_report.summary.thanks": "Obrigado por fazer parte do Mastodon!", "annual_report.summary.thanks": "Obrigado por fazeres parte do Mastodon!",
"attachments_list.unprocessed": "(não processado)", "attachments_list.unprocessed": "(não processado)",
"audio.hide": "Ocultar áudio", "audio.hide": "Ocultar áudio",
"block_modal.remote_users_caveat": "Vamos pedir ao servidor {domain} para respeitar a sua decisão. No entanto, não é garantido o seu cumprimento, uma vez que alguns servidores podem tratar os bloqueios de forma diferente. As publicações públicas podem continuar a ser visíveis para utilizadores não autenticados.", "block_modal.remote_users_caveat": "Vamos pedir ao servidor {domain} para respeitar a tua decisão. No entanto, não é garantido o seu cumprimento, uma vez que alguns servidores podem tratar os bloqueios de forma diferente. As publicações públicas podem continuar a ser visíveis para utilizadores não autenticados.",
"block_modal.show_less": "Mostrar menos", "block_modal.show_less": "Mostrar menos",
"block_modal.show_more": "Mostrar mais", "block_modal.show_more": "Mostrar mais",
"block_modal.they_cant_mention": "Ele não o pode mencionar nem seguir.", "block_modal.they_cant_mention": "Ele não te pode mencionar nem seguir.",
"block_modal.they_cant_see_posts": "Não verá as publicações dele e ele não poderá ver as suas publicações.", "block_modal.they_cant_see_posts": "Não verás as publicações dele e ele não poderá ver as tuas publicações.",
"block_modal.they_will_know": "Ele pode ver que o bloqueou.", "block_modal.they_will_know": "Ele pode ver que o bloqueaste.",
"block_modal.title": "Bloquear utilizador?", "block_modal.title": "Bloquear utilizador?",
"block_modal.you_wont_see_mentions": "Não verá publicações que mencionem este utilizador.", "block_modal.you_wont_see_mentions": "Não verás publicações que mencionem este utilizador.",
"boost_modal.combo": "Pode premir {combo} para não voltar a ver isto", "boost_modal.combo": "Podes premir {combo} para não voltares a ver isto",
"boost_modal.reblog": "Impulsionar a publicação?", "boost_modal.reblog": "Impulsionar a publicação?",
"boost_modal.undo_reblog": "Não impulsionar a publicação?", "boost_modal.undo_reblog": "Não impulsionar a publicação?",
"bundle_column_error.copy_stacktrace": "Copiar relatório de erros", "bundle_column_error.copy_stacktrace": "Copiar relatório de erros",
"bundle_column_error.error.body": "A página solicitada não pôde ser sintetizada. Isto pode ser devido a uma falha no nosso código ou a um problema de compatibilidade com o navegador.", "bundle_column_error.error.body": "A página solicitada não pôde ser sintetizada. Isto pode ser devido a uma falha no nosso código ou a um problema de compatibilidade com o navegador.",
"bundle_column_error.error.title": "Ó, não!", "bundle_column_error.error.title": "Ó, não!",
"bundle_column_error.network.body": "Houve um erro ao tentar carregar esta página. Isto pode ocorrer devido a um problema temporário com a sua conexão à internet ou a este servidor.", "bundle_column_error.network.body": "Houve um erro ao tentar carregar esta página. Isto pode ocorrer devido a um problema temporário com a tua conexão à internet ou a este servidor.",
"bundle_column_error.network.title": "Erro de rede", "bundle_column_error.network.title": "Erro de rede",
"bundle_column_error.retry": "Tente de novo", "bundle_column_error.retry": "Tenta de novo",
"bundle_column_error.return": "Voltar à página inicial", "bundle_column_error.return": "Voltar à página inicial",
"bundle_column_error.routing.body": "A página solicitada não foi encontrada. Tem a certeza que o URL na barra de endereços está correto?", "bundle_column_error.routing.body": "A página solicitada não foi encontrada. Tens a certeza que o URL na barra de endereços está correto?",
"bundle_column_error.routing.title": "404", "bundle_column_error.routing.title": "404",
"bundle_modal_error.close": "Fechar", "bundle_modal_error.close": "Fechar",
"bundle_modal_error.message": "Algo correu mal ao carregar este ecrã.", "bundle_modal_error.message": "Algo correu mal ao carregar este ecrã.",
"bundle_modal_error.retry": "Tente de novo", "bundle_modal_error.retry": "Tenta de novo",
"closed_registrations.other_server_instructions": "Visto que o Mastodon é descentralizado, pode criar uma conta noutro servidor e interagir com este na mesma.", "closed_registrations.other_server_instructions": "Visto que o Mastodon é descentralizado, podes criar uma conta noutro servidor e interagir com este na mesma.",
"closed_registrations_modal.description": "Neste momento não é possível criar uma conta em {domain}, mas lembramos que não é preciso ter uma conta especificamente em {domain} para usar o Mastodon.", "closed_registrations_modal.description": "Neste momento não é possível criar uma conta em {domain}, mas lembramos que não é preciso ter uma conta especificamente em {domain} para usar o Mastodon.",
"closed_registrations_modal.find_another_server": "Procurar outro servidor", "closed_registrations_modal.find_another_server": "Procurar outro servidor",
"closed_registrations_modal.preamble": "O Mastodon é descentralizado, por isso não importa onde a sua conta é criada, pois continuará a poder acompanhar e interagir com qualquer um neste servidor. Pode até alojar o seu próprio servidor!", "closed_registrations_modal.preamble": "O Mastodon é descentralizado, por isso não importa onde a tua conta é criada, pois continuarás a poder acompanhar e interagir com qualquer um neste servidor. Podes até alojar o teu próprio servidor!",
"closed_registrations_modal.title": "Inscrevendo-se no Mastodon", "closed_registrations_modal.title": "Criar uma conta no Mastodon",
"column.about": "Sobre", "column.about": "Sobre",
"column.blocks": "Utilizadores bloqueados", "column.blocks": "Utilizadores bloqueados",
"column.bookmarks": "Marcadores", "column.bookmarks": "Marcadores",
@ -155,8 +155,8 @@
"column.notifications": "Notificações", "column.notifications": "Notificações",
"column.pins": "Publicações afixadas", "column.pins": "Publicações afixadas",
"column.public": "Cronologia federada", "column.public": "Cronologia federada",
"column_back_button.label": "Retroceder", "column_back_button.label": "Voltar",
"column_header.hide_settings": "Esconder configurações", "column_header.hide_settings": "Ocultar configurações",
"column_header.moveLeft_settings": "Mover coluna para a esquerda", "column_header.moveLeft_settings": "Mover coluna para a esquerda",
"column_header.moveRight_settings": "Mover coluna para a direita", "column_header.moveRight_settings": "Mover coluna para a direita",
"column_header.pin": "Afixar", "column_header.pin": "Afixar",
@ -165,7 +165,7 @@
"column_search.cancel": "Cancelar", "column_search.cancel": "Cancelar",
"column_subheading.settings": "Configurações", "column_subheading.settings": "Configurações",
"community.column_settings.local_only": "Apenas local", "community.column_settings.local_only": "Apenas local",
"community.column_settings.media_only": "Apenas média", "community.column_settings.media_only": "Apenas multimédia",
"community.column_settings.remote_only": "Apenas remoto", "community.column_settings.remote_only": "Apenas remoto",
"compose.language.change": "Alterar idioma", "compose.language.change": "Alterar idioma",
"compose.language.search": "Pesquisar idiomas...", "compose.language.search": "Pesquisar idiomas...",
@ -173,11 +173,11 @@
"compose.published.open": "Abrir", "compose.published.open": "Abrir",
"compose.saved.body": "Publicação guardada.", "compose.saved.body": "Publicação guardada.",
"compose_form.direct_message_warning_learn_more": "Saber mais", "compose_form.direct_message_warning_learn_more": "Saber mais",
"compose_form.encryption_warning": "As publicações no Mastodon não são encriptadas de ponta a ponta. Não partilhe qualquer informação sensível através do Mastodon.", "compose_form.encryption_warning": "As publicações no Mastodon não são encriptadas de ponta a ponta. Não partilhes qualquer informação sensível através do Mastodon.",
"compose_form.hashtag_warning": "Esta publicação não será listada em qualquer etiqueta, pois não é pública. Apenas as publicações públicas podem ser pesquisadas por etiquetas.", "compose_form.hashtag_warning": "Esta publicação não será listada em qualquer etiqueta, pois não é pública. Apenas as publicações públicas podem ser pesquisadas por etiquetas.",
"compose_form.lock_disclaimer": "A sua conta não está {locked}. Qualquer pessoa pode segui-lo para ver as suas publicações destinadas apenas aos seus seguidores.", "compose_form.lock_disclaimer": "A tua conta não está {locked}. Qualquer pessoa pode seguir-te para ver as tuas publicações destinadas apenas aos teus seguidores.",
"compose_form.lock_disclaimer.lock": "fechada", "compose_form.lock_disclaimer.lock": "fechada",
"compose_form.placeholder": "Em que está a pensar?", "compose_form.placeholder": "Em que estás a pensar?",
"compose_form.poll.duration": "Duração da sondagem", "compose_form.poll.duration": "Duração da sondagem",
"compose_form.poll.multiple": "Escolha múltipla", "compose_form.poll.multiple": "Escolha múltipla",
"compose_form.poll.option_placeholder": "Opção {number}", "compose_form.poll.option_placeholder": "Opção {number}",
@ -195,31 +195,31 @@
"confirmation_modal.cancel": "Cancelar", "confirmation_modal.cancel": "Cancelar",
"confirmations.block.confirm": "Bloquear", "confirmations.block.confirm": "Bloquear",
"confirmations.delete.confirm": "Eliminar", "confirmations.delete.confirm": "Eliminar",
"confirmations.delete.message": "De certeza que quer eliminar esta publicação?", "confirmations.delete.message": "De certeza que queres eliminar esta publicação?",
"confirmations.delete.title": "Eliminar publicação?", "confirmations.delete.title": "Eliminar publicação?",
"confirmations.delete_list.confirm": "Eliminar", "confirmations.delete_list.confirm": "Eliminar",
"confirmations.delete_list.message": "Tem a certeza de que deseja eliminar permanentemente esta lista?", "confirmations.delete_list.message": "Tens a certeza de que desejas eliminar permanentemente esta lista?",
"confirmations.delete_list.title": "Eliminar lista?", "confirmations.delete_list.title": "Eliminar lista?",
"confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.confirm": "Descartar",
"confirmations.discard_edit_media.message": "Tem alterações por guardar na descrição da multimédia ou pré-visualização do conteúdo. Descartar mesmo assim?", "confirmations.discard_edit_media.message": "Tens alterações por guardar na descrição da multimédia ou pré-visualização do conteúdo. Descartar mesmo assim?",
"confirmations.edit.confirm": "Editar", "confirmations.edit.confirm": "Editar",
"confirmations.edit.message": "Editar agora irá substituir a mensagem que está a compor. Tem a certeza de que deseja continuar?", "confirmations.edit.message": "Editar agora irás substituir a mensagem que estás a compor. Tens a certeza de que desejas continuar?",
"confirmations.edit.title": "Substituir publicação?", "confirmations.edit.title": "Substituir publicação?",
"confirmations.follow_to_list.confirm": "Seguir e adicionar à lista", "confirmations.follow_to_list.confirm": "Seguir e adicionar à lista",
"confirmations.follow_to_list.message": "Tem de seguir {name} para o adicionar a uma lista.", "confirmations.follow_to_list.message": "Tens de seguir {name} para o adicionares a uma lista.",
"confirmations.follow_to_list.title": "Seguir utilizador?", "confirmations.follow_to_list.title": "Seguir utilizador?",
"confirmations.logout.confirm": "Terminar sessão", "confirmations.logout.confirm": "Terminar sessão",
"confirmations.logout.message": "Tem a certeza de que quer terminar a sessão?", "confirmations.logout.message": "Tens a certeza de que queres terminar a sessão?",
"confirmations.logout.title": "Terminar sessão?", "confirmations.logout.title": "Terminar sessão?",
"confirmations.mute.confirm": "Ocultar", "confirmations.mute.confirm": "Ocultar",
"confirmations.redraft.confirm": "Eliminar e reescrever", "confirmations.redraft.confirm": "Eliminar e reescrever",
"confirmations.redraft.message": "Tem a certeza de que quer eliminar e tornar a escrever esta publicação? Os favoritos e as publicações impulsionadas perder-se-ão e as respostas à publicação original ficarão órfãs.", "confirmations.redraft.message": "Tens a certeza de que queres eliminar e tornar a escrever esta publicação? Os favoritos e as publicações impulsionadas perder-se-ão e as respostas à publicação original ficarão órfãs.",
"confirmations.redraft.title": "Eliminar e reescrever publicação?", "confirmations.redraft.title": "Eliminar e reescrever publicação?",
"confirmations.reply.confirm": "Responder", "confirmations.reply.confirm": "Responder",
"confirmations.reply.message": "Se responder agora, a mensagem que está a escrever será substituída. Tem a certeza que pretende continuar?", "confirmations.reply.message": "Se responderes agora, a mensagem que estás a escrever será substituída. Tens a certeza que pretendes continuar?",
"confirmations.reply.title": "Substituir publicação?", "confirmations.reply.title": "Substituir publicação?",
"confirmations.unfollow.confirm": "Deixar de seguir", "confirmations.unfollow.confirm": "Deixar de seguir",
"confirmations.unfollow.message": "De certeza que quer deixar de seguir {name}?", "confirmations.unfollow.message": "De certeza que queres deixar de seguir {name}?",
"confirmations.unfollow.title": "Deixar de seguir o utilizador?", "confirmations.unfollow.title": "Deixar de seguir o utilizador?",
"content_warning.hide": "Ocultar publicação", "content_warning.hide": "Ocultar publicação",
"content_warning.show": "Mostrar mesmo assim", "content_warning.show": "Mostrar mesmo assim",
@ -236,7 +236,7 @@
"directory.new_arrivals": "Recém-chegados", "directory.new_arrivals": "Recém-chegados",
"directory.recently_active": "Recentemente ativo", "directory.recently_active": "Recentemente ativo",
"disabled_account_banner.account_settings": "Definições da conta", "disabled_account_banner.account_settings": "Definições da conta",
"disabled_account_banner.text": "A sua conta {disabledAccount} está atualmente desativada.", "disabled_account_banner.text": "A tua conta {disabledAccount} está atualmente desativada.",
"dismissable_banner.community_timeline": "Estas são as publicações públicas mais recentes de pessoas cujas contas são hospedadas por {domain}.", "dismissable_banner.community_timeline": "Estas são as publicações públicas mais recentes de pessoas cujas contas são hospedadas por {domain}.",
"dismissable_banner.dismiss": "Descartar", "dismissable_banner.dismiss": "Descartar",
"dismissable_banner.explore_links": "Estas notícias estão a ser mais partilhadas no fediverso hoje. As notícias mais recentes publicadas por mais pessoas diferentes têm uma classificação mais elevada.", "dismissable_banner.explore_links": "Estas notícias estão a ser mais partilhadas no fediverso hoje. As notícias mais recentes publicadas por mais pessoas diferentes têm uma classificação mais elevada.",
@ -245,27 +245,27 @@
"dismissable_banner.public_timeline": "Estas são as publicações públicas mais recentes de pessoas no fediverso que as pessoas em {domain} seguem.", "dismissable_banner.public_timeline": "Estas são as publicações públicas mais recentes de pessoas no fediverso que as pessoas em {domain} seguem.",
"domain_block_modal.block": "Bloquear servidor", "domain_block_modal.block": "Bloquear servidor",
"domain_block_modal.block_account_instead": "Bloquear antes @{name}", "domain_block_modal.block_account_instead": "Bloquear antes @{name}",
"domain_block_modal.they_can_interact_with_old_posts": "As pessoas deste servidor podem interagir com as suas publicações antigas.", "domain_block_modal.they_can_interact_with_old_posts": "As pessoas deste servidor podem interagir com as tuas publicações antigas.",
"domain_block_modal.they_cant_follow": "Ninguém deste servidor pode segui-lo.", "domain_block_modal.they_cant_follow": "Ninguém deste servidor pode seguir-te.",
"domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.", "domain_block_modal.they_wont_know": "Eles não saberão que foram bloqueados.",
"domain_block_modal.title": "Bloquear domínio?", "domain_block_modal.title": "Bloquear domínio?",
"domain_block_modal.you_will_lose_num_followers": "Irá perder {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} e {followingCount, plural, one {{followingCountDisplay} pessoa que segue} other {{followingCountDisplay} pessoas que segue}}.", "domain_block_modal.you_will_lose_num_followers": "Irás perder {followersCount, plural, one {{followersCountDisplay} seguidor} other {{followersCountDisplay} seguidores}} e {followingCount, plural, one {{followingCountDisplay} pessoa que estás a seguir} other {{followingCountDisplay} pessoas que estás a seguir}}.",
"domain_block_modal.you_will_lose_relationships": "Perderá todos os seguidores e pessoas que segue deste servidor.", "domain_block_modal.you_will_lose_relationships": "Irás perder todos os seguidores e pessoas que segues deste servidor.",
"domain_block_modal.you_wont_see_posts": "Não verá publicações ou notificações de utilizadores neste servidor.", "domain_block_modal.you_wont_see_posts": "Não verás publicações ou notificações de utilizadores neste servidor.",
"domain_pill.activitypub_lets_connect": "Permite-lhe conectar e interagir com pessoas não só no Mastodon, mas também em diferentes aplicações sociais.", "domain_pill.activitypub_lets_connect": "Permite-te conectar e interagir com pessoas não só no Mastodon, mas também em diferentes aplicações sociais.",
"domain_pill.activitypub_like_language": "O ActivityPub é como a linguagem que o Mastodon fala com outras redes sociais.", "domain_pill.activitypub_like_language": "O ActivityPub é como a linguagem que o Mastodon fala com outras redes sociais.",
"domain_pill.server": "Servidor", "domain_pill.server": "Servidor",
"domain_pill.their_handle": "O seu identificador:", "domain_pill.their_handle": "O identificador dele:",
"domain_pill.their_server": "A sua casa digital, onde se encontram todas as suas publicações.", "domain_pill.their_server": "A casa digital deste utilizador, onde se encontram todas as suas publicações.",
"domain_pill.their_username": "O seu identificador único no seu servidor. É possível encontrar utilizadores com o mesmo nome de utilizador em diferentes servidores.", "domain_pill.their_username": "O identificador único dele no seu servidor. É possível encontrar utilizadores com o mesmo nome de utilizador em servidores diferentes.",
"domain_pill.username": "Nome de utilizador", "domain_pill.username": "Nome de utilizador",
"domain_pill.whats_in_a_handle": "Em que consiste um identificador?", "domain_pill.whats_in_a_handle": "Em que consiste um identificador?",
"domain_pill.who_they_are": "Uma vez que os identificadores dizem quem é alguém e onde está, pode interagir com as pessoas através da rede social de <button>plataformas que suportam ActivityPub</button>.", "domain_pill.who_they_are": "Uma vez que os identificadores dizem quem é alguém e onde está, pode interagir com as pessoas através da rede social de <button>plataformas que suportam ActivityPub</button>.",
"domain_pill.who_you_are": "Uma vez que o seu identificador indica quem é e onde está, as pessoas podem interagir consigo através da rede social de <button>plataformas que suportam ActivityPub</button>.", "domain_pill.who_you_are": "Uma vez que o teu identificador indica quem és e onde estás, as pessoas podem interagir contigo através da rede social de <button>plataformas que suportam ActivityPub</button>.",
"domain_pill.your_handle": "O seu identificador:", "domain_pill.your_handle": "O teu identificador:",
"domain_pill.your_server": "A sua casa digital, onde se encontram todas as suas publicações. Não gosta deste? Mude de servidor a qualquer momento e leve também os seus seguidores.", "domain_pill.your_server": "A tua casa digital, onde se encontram todas as tuas publicações. Não gostas deste? Muda de servidor a qualquer momento e leva também os teus seguidores.",
"domain_pill.your_username": "O seu identificador único neste servidor. É possível encontrar utilizadores com o mesmo nome de utilizador em diferentes servidores.", "domain_pill.your_username": "O teu identificador único neste servidor. É possível encontrares utilizadores com o mesmo nome de utilizador em diferentes servidores.",
"embed.instructions": "Incorpore esta publicação no seu site copiando o código abaixo.", "embed.instructions": "Incorpora esta publicação no teu site copiando o código abaixo.",
"embed.preview": "Eis o aspeto que terá:", "embed.preview": "Eis o aspeto que terá:",
"emoji_button.activity": "Atividade", "emoji_button.activity": "Atividade",
"emoji_button.clear": "Limpar", "emoji_button.clear": "Limpar",
@ -286,27 +286,27 @@
"empty_column.account_suspended": "Conta suspensa", "empty_column.account_suspended": "Conta suspensa",
"empty_column.account_timeline": "Sem publicações por aqui!", "empty_column.account_timeline": "Sem publicações por aqui!",
"empty_column.account_unavailable": "Perfil indisponível", "empty_column.account_unavailable": "Perfil indisponível",
"empty_column.blocks": "Ainda não bloqueou nenhum utilizador.", "empty_column.blocks": "Ainda não bloqueaste nenhum utilizador.",
"empty_column.bookmarked_statuses": "Ainda não tem nenhuma publicação marcada. Quando marcar uma, ela aparecerá aqui.", "empty_column.bookmarked_statuses": "Ainda não tens nenhuma publicação marcada. Quando marcares uma, ela aparecerá aqui.",
"empty_column.community": "A cronologia local está vazia. Escreva algo publicamente para começar!", "empty_column.community": "A cronologia local está vazia. Escreve algo publicamente para começar!",
"empty_column.direct": "Ainda não tem qualquer menção privada. Quando enviar ou receber uma, ela irá aparecer aqui.", "empty_column.direct": "Ainda não tens qualquer menção privada. Quando enviares ou receberes uma, ela irá aparecer aqui.",
"empty_column.domain_blocks": "Ainda não há qualquer domínio bloqueado.", "empty_column.domain_blocks": "Ainda não há qualquer domínio bloqueado.",
"empty_column.explore_statuses": "Nada é tendência neste momento. Volte mais tarde!", "empty_column.explore_statuses": "Nada é tendência neste momento. Volta mais tarde!",
"empty_column.favourited_statuses": "Ainda não assinalou qualquer publicação como favorita. Quando o fizer, ela aparecerá aqui.", "empty_column.favourited_statuses": "Ainda não assinalaste qualquer publicação como favorita. Quando o fizeres, ela aparecerá aqui.",
"empty_column.favourites": "Ainda ninguém assinalou esta publicação como favorita. Quando alguém o fizer, ela aparecerá aqui.", "empty_column.favourites": "Ainda ninguém assinalou esta publicação como favorita. Quando alguém o fizer, ela aparecerá aqui.",
"empty_column.follow_requests": "Ainda não tem nenhum pedido de seguidor. Quando receber algum, ele irá aparecer aqui.", "empty_column.follow_requests": "Ainda não tens nenhum pedido de seguidor. Quando receberes algum, ele irá aparecer aqui.",
"empty_column.followed_tags": "Ainda não segue nenhuma etiqueta. Quando o fizer, ela aparecerá aqui.", "empty_column.followed_tags": "Ainda não segues nenhuma etiqueta. Quando o fizeres, ela aparecerá aqui.",
"empty_column.hashtag": "Não foram encontradas publicações com esta #etiqueta.", "empty_column.hashtag": "Não foram encontradas publicações com esta #etiqueta.",
"empty_column.home": "A sua linha cronológica inicial está vazia! Siga mais pessoas para a preencher.", "empty_column.home": "A tua linha cronológica inicial está vazia! Segue mais pessoas para a preencher.",
"empty_column.list": "Ainda não existem publicações nesta lista. Quando os membros desta lista fizerem novas publicações, elas aparecerão aqui.", "empty_column.list": "Ainda não existem publicações nesta lista. Quando os membros desta lista fizerem novas publicações, elas aparecerão aqui.",
"empty_column.mutes": "Ainda não ocultou nenhum utilizador.", "empty_column.mutes": "Ainda não ocultaste nenhum utilizador.",
"empty_column.notification_requests": "Tudo limpo! Não há nada aqui. Quando receber novas notificações, elas aparecerão aqui conforme as suas configurações.", "empty_column.notification_requests": "Tudo limpo! Não há nada aqui. Quando receberes novas notificações, elas aparecerão aqui conforme as tuas configurações.",
"empty_column.notifications": "Não tem notificações. Interaja com outros utilizadores para iniciar uma conversa.", "empty_column.notifications": "Ainda não tens quaisquer notificações. Quando outras pessoas interagirem contigo, verás isso aqui.",
"empty_column.public": "Não há nada aqui! Escreva algo publicamente ou siga outros utilizadores para ver aqui os conteúdos públicos", "empty_column.public": "Não há nada aqui! Escreve algo publicamente ou segue outros utilizadores para veres aqui os conteúdos públicos",
"error.unexpected_crash.explanation": "Devido a um erro no nosso código ou a um problema de compatibilidade do navegador, esta página não pode ser apresentada corretamente.", "error.unexpected_crash.explanation": "Devido a um erro no nosso código ou a um problema de compatibilidade do navegador, esta página não pode ser apresentada corretamente.",
"error.unexpected_crash.explanation_addons": "Esta página não pode ser mostrada corretamente. Este erro provavelmente é causado por um complemento do navegador ou ferramentas de tradução automática.", "error.unexpected_crash.explanation_addons": "Esta página não pode ser mostrada corretamente. Este erro provavelmente é causado por um complemento do navegador ou ferramentas de tradução automática.",
"error.unexpected_crash.next_steps": "Tente atualizar a página. Se isso não ajudar, pode usar o Mastodon através de um navegador diferente ou uma aplicação nativa.", "error.unexpected_crash.next_steps": "Tenta atualizar a página. Se isso não ajudar, podes usar o Mastodon através de um navegador diferente ou uma aplicação nativa.",
"error.unexpected_crash.next_steps_addons": "Tente desativá-los e atualizar a página. Se isso não ajudar, poderá ainda ser possível utilizar o Mastodon através de um navegador diferente ou de uma aplicação nativa.", "error.unexpected_crash.next_steps_addons": "Tenta desativá-los e atualizar a página. Se isso não ajudar, poderá ainda ser possível utilizar o Mastodon através de um navegador diferente ou de uma aplicação nativa.",
"errors.unexpected_crash.copy_stacktrace": "Copiar o stacktrace para a área de transferência", "errors.unexpected_crash.copy_stacktrace": "Copiar o stacktrace para a área de transferência",
"errors.unexpected_crash.report_issue": "Reportar problema", "errors.unexpected_crash.report_issue": "Reportar problema",
"explore.suggested_follows": "Pessoas", "explore.suggested_follows": "Pessoas",
@ -314,11 +314,11 @@
"explore.trending_links": "Notícias", "explore.trending_links": "Notícias",
"explore.trending_statuses": "Publicações", "explore.trending_statuses": "Publicações",
"explore.trending_tags": "#Etiquetas", "explore.trending_tags": "#Etiquetas",
"filter_modal.added.context_mismatch_explanation": "Esta categoria de filtro não se aplica ao contexto em que acedeu a esta publicação. Se pretender que esta publicação seja filtrada também neste contexto, terá que editar o filtro.", "filter_modal.added.context_mismatch_explanation": "Esta categoria de filtro não se aplica ao contexto em que acedeste a esta publicação. Se pretenderes que esta publicação seja filtrada também neste contexto, terás que editar o filtro.",
"filter_modal.added.context_mismatch_title": "Contexto incoerente!", "filter_modal.added.context_mismatch_title": "O contexto não coincide!",
"filter_modal.added.expired_explanation": "Esta categoria de filtro expirou, necessita alterar a data de validade para que ele seja aplicado.", "filter_modal.added.expired_explanation": "Esta categoria de filtro expirou, tens de alterar a data de validade para que ele seja aplicado.",
"filter_modal.added.expired_title": "Filtro expirado!", "filter_modal.added.expired_title": "Filtro expirado!",
"filter_modal.added.review_and_configure": "Para rever e configurar mais detalhadamente esta categoria de filtro, vá a {settings_link}.", "filter_modal.added.review_and_configure": "Para rever e configurar mais detalhadamente esta categoria de filtro, vai a {settings_link}.",
"filter_modal.added.review_and_configure_title": "Definições do filtro", "filter_modal.added.review_and_configure_title": "Definições do filtro",
"filter_modal.added.settings_link": "página de definições", "filter_modal.added.settings_link": "página de definições",
"filter_modal.added.short_explanation": "Esta publicação foi adicionada à seguinte categoria de filtro: {title}.", "filter_modal.added.short_explanation": "Esta publicação foi adicionada à seguinte categoria de filtro: {title}.",
@ -327,38 +327,38 @@
"filter_modal.select_filter.expired": "expirado", "filter_modal.select_filter.expired": "expirado",
"filter_modal.select_filter.prompt_new": "Nova categoria: {name}", "filter_modal.select_filter.prompt_new": "Nova categoria: {name}",
"filter_modal.select_filter.search": "Pesquisar ou criar", "filter_modal.select_filter.search": "Pesquisar ou criar",
"filter_modal.select_filter.subtitle": "Utilize uma categoria existente ou crie uma nova", "filter_modal.select_filter.subtitle": "Utiliza uma categoria existente ou cria uma nova",
"filter_modal.select_filter.title": "Filtrar esta publicação", "filter_modal.select_filter.title": "Filtrar esta publicação",
"filter_modal.title.status": "Filtrar uma publicação", "filter_modal.title.status": "Filtrar uma publicação",
"filter_warning.matches_filter": "Corresponde ao filtro “<span>{title}</span>”", "filter_warning.matches_filter": "Corresponde ao filtro “<span>{title}</span>”",
"filtered_notifications_banner.pending_requests": "De {count, plural, =0 {ninguém} one {uma pessoa} other {# pessoas}} que pode conhecer", "filtered_notifications_banner.pending_requests": "De {count, plural, =0 {ninguém} one {uma pessoa} other {# pessoas}} que talvez conheças",
"filtered_notifications_banner.title": "Notificações filtradas", "filtered_notifications_banner.title": "Notificações filtradas",
"firehose.all": "Todas", "firehose.all": "Todas",
"firehose.local": "Este servidor", "firehose.local": "Este servidor",
"firehose.remote": "Outros servidores", "firehose.remote": "Outros servidores",
"follow_request.authorize": "Autorizar", "follow_request.authorize": "Autorizar",
"follow_request.reject": "Rejeitar", "follow_request.reject": "Rejeitar",
"follow_requests.unlocked_explanation": "Apesar de a sua não ser privada, a administração de {domain} pensa que poderá querer rever manualmente os pedidos de seguimento dessas contas.", "follow_requests.unlocked_explanation": "Apesar da tua conta não ser privada, a administração de {domain} assinala que poderás querer rever manualmente os pedidos de seguimento destas contas.",
"follow_suggestions.curated_suggestion": "Escolha da equipe", "follow_suggestions.curated_suggestion": "Escolha da equipa",
"follow_suggestions.dismiss": "Não mostrar novamente", "follow_suggestions.dismiss": "Não mostrar novamente",
"follow_suggestions.featured_longer": "Escolhido a dedo pela equipa de {domain}", "follow_suggestions.featured_longer": "Escolhido a dedo pela equipa de {domain}",
"follow_suggestions.friends_of_friends_longer": "Popular entre as pessoas que segue", "follow_suggestions.friends_of_friends_longer": "Popular entre as pessoas que segues",
"follow_suggestions.hints.featured": "Este perfil foi escolhido a dedo pela equipe {domain}.", "follow_suggestions.hints.featured": "Este perfil foi escolhido a dedo pela equipa de {domain}.",
"follow_suggestions.hints.friends_of_friends": "Este perfil é popular entre as pessoas que você segue.", "follow_suggestions.hints.friends_of_friends": "Este perfil é popular entre as pessoas que estás a seguir.",
"follow_suggestions.hints.most_followed": "Este perfil é um dos mais seguidos no {domain}.", "follow_suggestions.hints.most_followed": "Este perfil é um dos mais seguidos em {domain}.",
"follow_suggestions.hints.most_interactions": "Este perfil tem recebido recentemente muita atenção no {domain}.", "follow_suggestions.hints.most_interactions": "Este perfil tem recebido recentemente muita atenção em {domain}.",
"follow_suggestions.hints.similar_to_recently_followed": "Este perfil é semelhante aos perfis que você seguiu mais recentemente.", "follow_suggestions.hints.similar_to_recently_followed": "Este perfil é semelhante aos perfis que seguiste recentemente.",
"follow_suggestions.personalized_suggestion": "Sugestão personalizada", "follow_suggestions.personalized_suggestion": "Sugestão personalizada",
"follow_suggestions.popular_suggestion": "Sugestão popular", "follow_suggestions.popular_suggestion": "Sugestão popular",
"follow_suggestions.popular_suggestion_longer": "Popular em {domain}", "follow_suggestions.popular_suggestion_longer": "Popular em {domain}",
"follow_suggestions.similar_to_recently_followed_longer": "Semelhantes aos perfis que seguiu recentemente", "follow_suggestions.similar_to_recently_followed_longer": "Semelhantes aos perfis que seguiste recentemente",
"follow_suggestions.view_all": "Ver tudo", "follow_suggestions.view_all": "Ver tudo",
"follow_suggestions.who_to_follow": "Quem seguir", "follow_suggestions.who_to_follow": "Quem seguir",
"followed_tags": "Etiquetas seguidas", "followed_tags": "Etiquetas seguidas",
"footer.about": "Sobre", "footer.about": "Sobre",
"footer.directory": "Diretório de perfis", "footer.directory": "Diretório de perfis",
"footer.get_app": "Obter a aplicação", "footer.get_app": "Obter a aplicação",
"footer.keyboard_shortcuts": "Atalhos do teclado", "footer.keyboard_shortcuts": "Atalhos de teclado",
"footer.privacy_policy": "Política de privacidade", "footer.privacy_policy": "Política de privacidade",
"footer.source_code": "Ver código-fonte", "footer.source_code": "Ver código-fonte",
"footer.status": "Estado", "footer.status": "Estado",
@ -381,39 +381,39 @@
"hashtag.follow": "Seguir #etiqueta", "hashtag.follow": "Seguir #etiqueta",
"hashtag.unfollow": "Deixar de seguir #etiqueta", "hashtag.unfollow": "Deixar de seguir #etiqueta",
"hashtags.and_other": "…e {count, plural, other {mais #}}", "hashtags.and_other": "…e {count, plural, other {mais #}}",
"hints.profiles.followers_may_be_missing": "Podem faltar seguidores neste perfil.", "hints.profiles.followers_may_be_missing": "É possível que não estejam a ser mostrados todos os seguidores deste perfil.",
"hints.profiles.follows_may_be_missing": "O número de perfis seguidos por este perfil pode faltar.", "hints.profiles.follows_may_be_missing": "É possível que não estejam a ser mostrados todos os seguidos por este perfil.",
"hints.profiles.posts_may_be_missing": "Podem faltar algumas publicações deste perfil.", "hints.profiles.posts_may_be_missing": "É possível que não estejam a ser mostradas todas as publicações deste perfil.",
"hints.profiles.see_more_followers": "Ver mais seguidores no {domain}", "hints.profiles.see_more_followers": "Ver mais seguidores em {domain}",
"hints.profiles.see_more_follows": "Veja mais perfis seguidos em {domain}", "hints.profiles.see_more_follows": "Ver mais perfis seguidos em {domain}",
"hints.profiles.see_more_posts": "Ver mais publicações em {domain}", "hints.profiles.see_more_posts": "Ver mais publicações em {domain}",
"hints.threads.replies_may_be_missing": "As respostas de outros servidores podem estar a faltar.", "hints.threads.replies_may_be_missing": "É possível que não estejam a ser mostradas todas as respostas de outros servidores.",
"hints.threads.see_more": "Veja mais respostas em {domain}", "hints.threads.see_more": "Ver mais respostas em {domain}",
"home.column_settings.show_reblogs": "Mostrar impulsos", "home.column_settings.show_reblogs": "Mostrar impulsos",
"home.column_settings.show_replies": "Mostrar respostas", "home.column_settings.show_replies": "Mostrar respostas",
"home.hide_announcements": "Ocultar comunicações", "home.hide_announcements": "Ocultar mensagens de manutenção",
"home.pending_critical_update.body": "Por favor, atualize o seu servidor Mastodon assim que possível!", "home.pending_critical_update.body": "Atualiza o teu servidor Mastodon assim que possível!",
"home.pending_critical_update.link": "Ver atualizações", "home.pending_critical_update.link": "Ver atualizações",
"home.pending_critical_update.title": "Atualização de segurança crítica disponível!", "home.pending_critical_update.title": "Está disponível uma atualização de segurança crítica!",
"home.show_announcements": "Exibir comunicações", "home.show_announcements": "Mostrar mensagens de manutenção",
"ignore_notifications_modal.disclaimer": "O Mastodon não pode informar os utilizadores de que ignorou as suas notificações. Ignorar as notificações não impedirá que as mensagens sejam enviadas.", "ignore_notifications_modal.disclaimer": "O Mastodon não pode informar os utilizadores de que ignoraste as notificações deles. Ignorar as notificações não impedirá que as mensagens sejam enviadas.",
"ignore_notifications_modal.filter_instead": "Filtrar em vez disso", "ignore_notifications_modal.filter_instead": "Em vez disso, filtrar",
"ignore_notifications_modal.filter_to_act_users": "Ainda poderá aceitar, rejeitar ou reportar utilizadores", "ignore_notifications_modal.filter_to_act_users": "Ainda poderás aceitar, rejeitar ou reportar utilizadores",
"ignore_notifications_modal.filter_to_avoid_confusion": "A filtragem ajuda a evitar potenciais equívocos", "ignore_notifications_modal.filter_to_avoid_confusion": "A filtragem ajuda a evitar potenciais equívocos",
"ignore_notifications_modal.filter_to_review_separately": "Pode rever as notificações filtradas separadamente", "ignore_notifications_modal.filter_to_review_separately": "Podes rever as notificações filtradas separadamente",
"ignore_notifications_modal.ignore": "Ignorar notificações", "ignore_notifications_modal.ignore": "Ignorar notificações",
"ignore_notifications_modal.limited_accounts_title": "Ignorar notificações de contas moderadas?", "ignore_notifications_modal.limited_accounts_title": "Ignorar notificações de contas moderadas?",
"ignore_notifications_modal.new_accounts_title": "Ignorar notificações de contas novas?", "ignore_notifications_modal.new_accounts_title": "Ignorar notificações de contas novas?",
"ignore_notifications_modal.not_followers_title": "Ignorar notificações de pessoas que não o seguem?", "ignore_notifications_modal.not_followers_title": "Ignorar notificações de pessoas que não te seguem?",
"ignore_notifications_modal.not_following_title": "Ignorar notificações de pessoas que não segue?", "ignore_notifications_modal.not_following_title": "Ignorar notificações de pessoas que não segues?",
"ignore_notifications_modal.private_mentions_title": "Ignorar notificações de Menções Privadas não solicitadas?", "ignore_notifications_modal.private_mentions_title": "Ignorar notificações de menções privadas não solicitadas?",
"interaction_modal.action.favourite": "Para continuar, precisa definir como favorito a partir da sua conta.", "interaction_modal.action.favourite": "Para continuar, tens de adicionar um favorito na tua conta.",
"interaction_modal.action.follow": "Para continuar, precisa seguir a partir da sua conta.", "interaction_modal.action.follow": "Para continuar, tens de seguir alguém na tua conta.",
"interaction_modal.action.reblog": "Para continuar, precisa republicar a partir da sua conta.", "interaction_modal.action.reblog": "Para continuar, tens de fazer uma republicação na tua conta.",
"interaction_modal.action.reply": "Para continuar, precisa responder a partir da sua conta.", "interaction_modal.action.reply": "Para continuar, tens de fazer uma resposta na tua conta.",
"interaction_modal.action.vote": "Para continuar é necessário votar a partir da sua conta.", "interaction_modal.action.vote": "Para continuar é necessário votar a partir da tua conta.",
"interaction_modal.go": "Ir", "interaction_modal.go": "Ir",
"interaction_modal.no_account_yet": "Ainda não tem conta?", "interaction_modal.no_account_yet": "Ainda não tens conta?",
"interaction_modal.on_another_server": "Num servidor diferente", "interaction_modal.on_another_server": "Num servidor diferente",
"interaction_modal.on_this_server": "Neste servidor", "interaction_modal.on_this_server": "Neste servidor",
"interaction_modal.title.favourite": "Assinalar a publicação de {name} como favorita", "interaction_modal.title.favourite": "Assinalar a publicação de {name} como favorita",
@ -421,11 +421,11 @@
"interaction_modal.title.reblog": "Impulsionar a publicação de {name}", "interaction_modal.title.reblog": "Impulsionar a publicação de {name}",
"interaction_modal.title.reply": "Responder à publicação de {name}", "interaction_modal.title.reply": "Responder à publicação de {name}",
"interaction_modal.title.vote": "Votar na sondagem de {name}", "interaction_modal.title.vote": "Votar na sondagem de {name}",
"interaction_modal.username_prompt": "Ex: {example}", "interaction_modal.username_prompt": "Por exemplo: {example}",
"intervals.full.days": "{number, plural, one {# dia} other {# dias}}", "intervals.full.days": "{number, plural, one {# dia} other {# dias}}",
"intervals.full.hours": "{number, plural, one {# hora} other {# horas}}", "intervals.full.hours": "{number, plural, one {# hora} other {# horas}}",
"intervals.full.minutes": "{number, plural, one {# minuto} other {# minutos}}", "intervals.full.minutes": "{number, plural, one {# minuto} other {# minutos}}",
"keyboard_shortcuts.back": "retroceder", "keyboard_shortcuts.back": "voltar atrás",
"keyboard_shortcuts.blocked": "abrir a lista de utilizadores bloqueados", "keyboard_shortcuts.blocked": "abrir a lista de utilizadores bloqueados",
"keyboard_shortcuts.boost": "impulsionar a publicação", "keyboard_shortcuts.boost": "impulsionar a publicação",
"keyboard_shortcuts.column": "focar uma publicação numa das colunas", "keyboard_shortcuts.column": "focar uma publicação numa das colunas",
@ -444,7 +444,7 @@
"keyboard_shortcuts.local": "abrir a cronologia local", "keyboard_shortcuts.local": "abrir a cronologia local",
"keyboard_shortcuts.mention": "mencionar o autor", "keyboard_shortcuts.mention": "mencionar o autor",
"keyboard_shortcuts.muted": "abrir a lista dos utilizadores ocultados", "keyboard_shortcuts.muted": "abrir a lista dos utilizadores ocultados",
"keyboard_shortcuts.my_profile": "abrir o seu perfil", "keyboard_shortcuts.my_profile": "abrir o teu perfil",
"keyboard_shortcuts.notifications": "abrir a coluna das notificações", "keyboard_shortcuts.notifications": "abrir a coluna das notificações",
"keyboard_shortcuts.open_media": "abrir multimédia", "keyboard_shortcuts.open_media": "abrir multimédia",
"keyboard_shortcuts.pinned": "abrir lista de publicações fixadas", "keyboard_shortcuts.pinned": "abrir lista de publicações fixadas",
@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "mostrar / esconder texto atrás do aviso de conteúdo", "keyboard_shortcuts.toggle_hidden": "mostrar / esconder texto atrás do aviso de conteúdo",
"keyboard_shortcuts.toggle_sensitivity": "mostrar / ocultar multimédia", "keyboard_shortcuts.toggle_sensitivity": "mostrar / ocultar multimédia",
"keyboard_shortcuts.toot": "criar uma nova publicação", "keyboard_shortcuts.toot": "criar uma nova publicação",
"keyboard_shortcuts.translate": "traduzir uma publicação",
"keyboard_shortcuts.unfocus": "remover o foco da área de texto / pesquisa", "keyboard_shortcuts.unfocus": "remover o foco da área de texto / pesquisa",
"keyboard_shortcuts.up": "mover para cima na lista", "keyboard_shortcuts.up": "mover para cima na lista",
"lightbox.close": "Fechar", "lightbox.close": "Fechar",
@ -464,7 +465,7 @@
"lightbox.previous": "Anterior", "lightbox.previous": "Anterior",
"lightbox.zoom_in": "Ampliar para o tamanho real", "lightbox.zoom_in": "Ampliar para o tamanho real",
"lightbox.zoom_out": "Ajustar para caber", "lightbox.zoom_out": "Ajustar para caber",
"limited_account_hint.action": "Exibir perfil mesmo assim", "limited_account_hint.action": "Mostrar perfil mesmo assim",
"limited_account_hint.title": "Este perfil foi ocultado pelos moderadores de {domain}.", "limited_account_hint.title": "Este perfil foi ocultado pelos moderadores de {domain}.",
"link_preview.author": "Por {name}", "link_preview.author": "Por {name}",
"link_preview.more_from_author": "Mais de {name}", "link_preview.more_from_author": "Mais de {name}",
@ -479,8 +480,8 @@
"lists.done": "Concluído", "lists.done": "Concluído",
"lists.edit": "Editar lista", "lists.edit": "Editar lista",
"lists.exclusive": "Ocultar membros na página inicial", "lists.exclusive": "Ocultar membros na página inicial",
"lists.exclusive_hint": "Se alguém estiver nesta lista, oculte-o na cronologia da sua página inicial para evitar ver as publicações deles duas vezes.", "lists.exclusive_hint": "Se alguém estiver nesta lista, oculta-o na cronologia da tua página inicial para evitar veres as publicações dessa pessoa duas vezes.",
"lists.find_users_to_add": "Encontrar utilizadores adicionar", "lists.find_users_to_add": "Encontrar utilizadores para adicionar",
"lists.list_members": "Membros da lista", "lists.list_members": "Membros da lista",
"lists.list_members_count": "{count, plural, one {# membro} other {# membros}}", "lists.list_members_count": "{count, plural, one {# membro} other {# membros}}",
"lists.list_name": "Nome da lista", "lists.list_name": "Nome da lista",
@ -498,16 +499,16 @@
"load_pending": "{count, plural, one {# novo item} other {# novos itens}}", "load_pending": "{count, plural, one {# novo item} other {# novos itens}}",
"loading_indicator.label": "A carregar…", "loading_indicator.label": "A carregar…",
"media_gallery.hide": "Esconder", "media_gallery.hide": "Esconder",
"moved_to_account_banner.text": "A sua conta {disabledAccount} está, no momento, desativada, porque você migrou para {movedToAccount}.", "moved_to_account_banner.text": "A tua conta {disabledAccount} está neste momento desativada porque migraste para {movedToAccount}.",
"mute_modal.hide_from_notifications": "Ocultar das notificações", "mute_modal.hide_from_notifications": "Ocultar das notificações",
"mute_modal.hide_options": "Ocultar opções", "mute_modal.hide_options": "Ocultar opções",
"mute_modal.indefinite": "Até que eu deixe de o ocultar", "mute_modal.indefinite": "Até que eu deixe de o ocultar",
"mute_modal.show_options": "Mostrar opções", "mute_modal.show_options": "Mostrar opções",
"mute_modal.they_can_mention_and_follow": "Ele pode mencioná-lo e segui-lo, mas você não o verá.", "mute_modal.they_can_mention_and_follow": "Ele pode mencionar-te e seguir-te, mas não o verás.",
"mute_modal.they_wont_know": "Ele não saberá que o ocultou.", "mute_modal.they_wont_know": "Ele não saberá que o ocultaste.",
"mute_modal.title": "Ocultar utilizador?", "mute_modal.title": "Ocultar utilizador?",
"mute_modal.you_wont_see_mentions": "Não verá publicações que mencionem este utilizador.", "mute_modal.you_wont_see_mentions": "Não verás publicações que mencionem este utilizador.",
"mute_modal.you_wont_see_posts": "Não verá as publicações dele e ele não poderá ver as suas publicações.", "mute_modal.you_wont_see_posts": "Não verás as publicações dele e ele não poderá ver as tuas publicações.",
"navigation_bar.about": "Sobre", "navigation_bar.about": "Sobre",
"navigation_bar.administration": "Administração", "navigation_bar.administration": "Administração",
"navigation_bar.advanced_interface": "Abrir na interface web avançada", "navigation_bar.advanced_interface": "Abrir na interface web avançada",
@ -528,71 +529,71 @@
"navigation_bar.logout": "Sair", "navigation_bar.logout": "Sair",
"navigation_bar.moderation": "Moderação", "navigation_bar.moderation": "Moderação",
"navigation_bar.mutes": "Utilizadores ocultados", "navigation_bar.mutes": "Utilizadores ocultados",
"navigation_bar.opened_in_classic_interface": "Por norma, publicações, contas, e outras páginas específicas são abertas na interface web clássica.", "navigation_bar.opened_in_classic_interface": "Por norma, publicações, contas e outras páginas específicas são abertas na interface web clássica.",
"navigation_bar.personal": "Pessoal", "navigation_bar.personal": "Pessoal",
"navigation_bar.pins": "Publicações fixadas", "navigation_bar.pins": "Publicações fixadas",
"navigation_bar.preferences": "Preferências", "navigation_bar.preferences": "Preferências",
"navigation_bar.public_timeline": "Cronologia federada", "navigation_bar.public_timeline": "Cronologia federada",
"navigation_bar.search": "Pesquisar", "navigation_bar.search": "Pesquisar",
"navigation_bar.security": "Segurança", "navigation_bar.security": "Segurança",
"not_signed_in_indicator.not_signed_in": "Necessita de iniciar sessão para utilizar esta funcionalidade.", "not_signed_in_indicator.not_signed_in": "Tens de iniciar a sessão para utilizares esta funcionalidade.",
"notification.admin.report": "{name} denunciou {target}", "notification.admin.report": "{name} denunciou {target}",
"notification.admin.report_account": "{name} denunciou {count, plural, one {uma publicação} other {# publicações}} de {target} por {category}", "notification.admin.report_account": "{name} denunciou {count, plural, one {uma publicação} other {# publicações}} de {target} por {category}",
"notification.admin.report_account_other": "{name} denunciou {count, plural, one {uma publicação} other {# publicações}} de {target}", "notification.admin.report_account_other": "{name} denunciou {count, plural, one {uma publicação} other {# publicações}} de {target}",
"notification.admin.report_statuses": "{name} denunicou {target} por {category}", "notification.admin.report_statuses": "{name} denunciou {target} por {category}",
"notification.admin.report_statuses_other": "{name} denunciou {target}", "notification.admin.report_statuses_other": "{name} denunciou {target}",
"notification.admin.sign_up": "{name} inscreveu-se", "notification.admin.sign_up": "{name} inscreveu-se",
"notification.admin.sign_up.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} inscreveram-se", "notification.admin.sign_up.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} inscreveram-se",
"notification.annual_report.message": "O seu #Wrapstodon {year} está à espera! Revela os destaques e os momentos memoráveis do seu ano no Mastodon!", "notification.annual_report.message": "O teu #Wrapstodon {year} está à espera! Ele revela os destaques e os momentos memoráveis do teu ano no Mastodon!",
"notification.annual_report.view": "Ver #Wrapstodon", "notification.annual_report.view": "Ver #Wrapstodon",
"notification.favourite": "{name} assinalou a sua publicação como favorita", "notification.favourite": "{name} assinalou a tua publicação como favorita",
"notification.favourite.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro} other {# outros}}</a> assinalou a sua publicação como favorita", "notification.favourite.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro} other {# outros}}</a> assinalaram a tua publicação como favorita",
"notification.favourite_pm": "{name} favoritou a sua menção privada", "notification.favourite_pm": "{name} assinalou como favorita a tua menção privada",
"notification.favourite_pm.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro favoritou} other {# outros favoritaram}}</a> a sua menção privada", "notification.favourite_pm.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro favoritou} other {# outros favoritaram}}</a> a tua menção privada",
"notification.follow": "{name} começou a seguir-te", "notification.follow": "{name} começou a seguir-te",
"notification.follow.name_and_others": "{name} e <a>{count, plural, one {# outro seguiu-o} other {# outros seguiram-no}}</a>", "notification.follow.name_and_others": "{name} e <a>{count, plural, one {# outro seguiram-te} other {# outros seguiram-te}}</a>",
"notification.follow_request": "{name} pediu para segui-lo", "notification.follow_request": "{name} pediu para seguir-te",
"notification.follow_request.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} pediram para segui-lo", "notification.follow_request.name_and_others": "{name} e {count, plural, one {# outro} other {# outros}} pediram para seguir-te",
"notification.label.mention": "Menção", "notification.label.mention": "Menção",
"notification.label.private_mention": "Menção privada", "notification.label.private_mention": "Menção privada",
"notification.label.private_reply": "Resposta privada", "notification.label.private_reply": "Resposta privada",
"notification.label.reply": "Resposta", "notification.label.reply": "Resposta",
"notification.mention": "Menção", "notification.mention": "Menção",
"notification.mentioned_you": "{name} mencionou-o", "notification.mentioned_you": "{name} mencionou-te",
"notification.moderation-warning.learn_more": "Saber mais", "notification.moderation-warning.learn_more": "Saber mais",
"notification.moderation_warning": "Recebeu um aviso de moderação", "notification.moderation_warning": "Recebeste um aviso de moderação",
"notification.moderation_warning.action_delete_statuses": "Algumas das suas publicações foram removidas.", "notification.moderation_warning.action_delete_statuses": "Algumas das tuas publicações foram removidas.",
"notification.moderation_warning.action_disable": "A sua conta foi desativada.", "notification.moderation_warning.action_disable": "A tua conta foi desativada.",
"notification.moderation_warning.action_mark_statuses_as_sensitive": "Algumas das suas publicações foram assinaladas como sensíveis.", "notification.moderation_warning.action_mark_statuses_as_sensitive": "Algumas das tuas publicações foram assinaladas como sensíveis.",
"notification.moderation_warning.action_none": "A sua conta recebeu um aviso de moderação.", "notification.moderation_warning.action_none": "A tua conta recebeu um aviso de moderação.",
"notification.moderation_warning.action_sensitive": "As suas publicações serão, a partir de agora, assinaladas como sensíveis.", "notification.moderation_warning.action_sensitive": "As tuas publicações serão, a partir de agora, assinaladas como sensíveis.",
"notification.moderation_warning.action_silence": "A sua conta foi limitada.", "notification.moderation_warning.action_silence": "A tua conta foi limitada.",
"notification.moderation_warning.action_suspend": "A sua conta foi suspensa.", "notification.moderation_warning.action_suspend": "A tua conta foi suspensa.",
"notification.own_poll": "A sua sondagem terminou", "notification.own_poll": "A tua sondagem terminou",
"notification.poll": "Terminou uma sondagem em que votou", "notification.poll": "Terminou uma sondagem em que votaste",
"notification.reblog": "{name} impulsionou a tua publicação", "notification.reblog": "{name} impulsionou a tua publicação",
"notification.reblog.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro} other {# outros}}</a> impulsionaram a sua publicação", "notification.reblog.name_and_others_with_link": "{name} e <a>{count, plural, one {# outro} other {# outros}}</a> impulsionaram a tua publicação",
"notification.relationships_severance_event": "Perdeu as ligações com {name}", "notification.relationships_severance_event": "Perdeu as ligações com {name}",
"notification.relationships_severance_event.account_suspension": "Um administrador de {from} suspendeu {target}, o que significa que já não pode receber atualizações dele ou interagir com ele.", "notification.relationships_severance_event.account_suspension": "Um administrador de {from} suspendeu {target}, o que significa que já não podes receber atualizações dele ou interagir com ele.",
"notification.relationships_severance_event.domain_block": "Um administrador de {from} bloqueou {target}, incluindo {followersCount} dos seus seguidores e {followingCount, plural, one {# conta} other {# contas}} que segue.", "notification.relationships_severance_event.domain_block": "Um administrador de {from} bloqueou {target}, incluindo {followersCount} dos teus seguidores e {followingCount, plural, one {# conta} other {# contas}} que segues.",
"notification.relationships_severance_event.learn_more": "Saber mais", "notification.relationships_severance_event.learn_more": "Saber mais",
"notification.relationships_severance_event.user_domain_block": "Bloqueou {target}, removendo {followersCount} dos seus seguidores e {followingCount, plural, one {# conta} other {# contas}} que segue.", "notification.relationships_severance_event.user_domain_block": "Bloqueaste {target}, removendo {followersCount} dos teus seguidores e {followingCount, plural, one {# conta} other {# contas}} que segues.",
"notification.status": "{name} acabou de publicar", "notification.status": "{name} acabou de publicar",
"notification.update": "{name} editou uma publicação", "notification.update": "{name} editou uma publicação",
"notification_requests.accept": "Aceitar", "notification_requests.accept": "Aceitar",
"notification_requests.accept_multiple": "{count, plural, one {Aceitar # pedidos…} other {Aceitar # pedidos…}}", "notification_requests.accept_multiple": "{count, plural, one {Aceitar # pedido…} other {Aceitar # pedidos…}}",
"notification_requests.confirm_accept_multiple.button": "{count, plural, one {Aceitar pedido} other {Aceitar pedidos}}", "notification_requests.confirm_accept_multiple.button": "{count, plural, one {Aceitar pedido} other {Aceitar pedidos}}",
"notification_requests.confirm_accept_multiple.message": "Está prestes a aceitar {count, plural, one {um pedido de notificação} other {# pedidos de notificação}}. Tem a certeza de que pretende continuar?", "notification_requests.confirm_accept_multiple.message": "Estás prestes a aceitar {count, plural, one {um pedido de notificação} other {# pedidos de notificação}}. Tens a certeza de que pretendes continuar?",
"notification_requests.confirm_accept_multiple.title": "Aceitar pedidos de notificação?", "notification_requests.confirm_accept_multiple.title": "Aceitar pedidos de notificação?",
"notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Rejeitar pedido} other {Rejeitar pedidos}}", "notification_requests.confirm_dismiss_multiple.button": "{count, plural, one {Rejeitar pedido} other {Rejeitar pedidos}}",
"notification_requests.confirm_dismiss_multiple.message": "Está prestes a rejeitar {count, plural, one {um pedido de notificação} other {# pedidos de notificação}}. Não será fácil voltar a {count, plural, one {aceder-lhe} other {aceder-lhes}}. Tem a certeza de que pretende continuar?", "notification_requests.confirm_dismiss_multiple.message": "Estás prestes a rejeitar {count, plural, one {um pedido de notificação} other {# pedidos de notificação}}. Não será fácil voltares a {count, plural, one {acederes-lhe} other {aceder-lhes}}. Tens a certeza de que pretendes continuar?",
"notification_requests.confirm_dismiss_multiple.title": "Rejeitar pedidos de notificação?", "notification_requests.confirm_dismiss_multiple.title": "Rejeitar pedidos de notificação?",
"notification_requests.dismiss": "Descartar", "notification_requests.dismiss": "Descartar",
"notification_requests.dismiss_multiple": "{count, plural, one {Rejeitar # pedido…} other {Rejeitar # pedidos…}}", "notification_requests.dismiss_multiple": "{count, plural, one {Rejeitar # pedido…} other {Rejeitar # pedidos…}}",
"notification_requests.edit_selection": "Editar", "notification_requests.edit_selection": "Editar",
"notification_requests.exit_selection": "Concluído", "notification_requests.exit_selection": "Concluído",
"notification_requests.explainer_for_limited_account": "As notificações desta conta foram filtradas porque a conta foi limitada por um moderador.", "notification_requests.explainer_for_limited_account": "As notificações desta conta foram filtradas porque a conta foi limitada por um moderador.",
"notification_requests.explainer_for_limited_remote_account": "As notificações desta conta foram filtradas porque a conta ou o seu servidor foram limitados por um moderador.", "notification_requests.explainer_for_limited_remote_account": "As notificações desta conta foram filtradas porque a conta ou o servidor desta foram limitados por um moderador.",
"notification_requests.maximize": "Maximizar", "notification_requests.maximize": "Maximizar",
"notification_requests.minimize_banner": "Minimizar o cabeçalho das notificações filtradas", "notification_requests.minimize_banner": "Minimizar o cabeçalho das notificações filtradas",
"notification_requests.notifications_from": "Notificações de {name}", "notification_requests.notifications_from": "Notificações de {name}",
@ -612,7 +613,7 @@
"notifications.column_settings.group": "Agrupar", "notifications.column_settings.group": "Agrupar",
"notifications.column_settings.mention": "Menções:", "notifications.column_settings.mention": "Menções:",
"notifications.column_settings.poll": "Resultados da sondagem:", "notifications.column_settings.poll": "Resultados da sondagem:",
"notifications.column_settings.push": "Notificações Push", "notifications.column_settings.push": "Notificações \"push\"",
"notifications.column_settings.reblog": "Impulsos:", "notifications.column_settings.reblog": "Impulsos:",
"notifications.column_settings.show": "Mostrar na coluna", "notifications.column_settings.show": "Mostrar na coluna",
"notifications.column_settings.sound": "Reproduzir som", "notifications.column_settings.sound": "Reproduzir som",
@ -626,13 +627,13 @@
"notifications.filter.follows": "Seguidores", "notifications.filter.follows": "Seguidores",
"notifications.filter.mentions": "Menções", "notifications.filter.mentions": "Menções",
"notifications.filter.polls": "Resultados da sondagem", "notifications.filter.polls": "Resultados da sondagem",
"notifications.filter.statuses": "Atualizações de pessoas que você segue", "notifications.filter.statuses": "Atualizações de pessoas que segues",
"notifications.grant_permission": "Conceder permissão.", "notifications.grant_permission": "Conceder permissão.",
"notifications.group": "{count} notificações", "notifications.group": "{count} notificações",
"notifications.mark_as_read": "Marcar todas as notificações como lidas", "notifications.mark_as_read": "Marcar todas as notificações como lidas",
"notifications.permission_denied": "Notificações no ambiente de trabalho não estão disponíveis porque a permissão, solicitada pelo navegador, foi recusada anteriormente", "notifications.permission_denied": "As notificações no ambiente de trabalho não estão disponíveis porque a permissão, solicitada pelo navegador, foi recusada anteriormente",
"notifications.permission_denied_alert": "Notificações no ambiente de trabalho não podem ser ativadas, pois a permissão do navegador foi recusada anteriormente", "notifications.permission_denied_alert": "As notificações no ambiente de trabalho não podem ser ativadas, pois a permissão do navegador foi recusada anteriormente",
"notifications.permission_required": "Notificações no ambiente de trabalho não estão disponíveis porque a permissão necessária não foi concedida.", "notifications.permission_required": "As notificações no ambiente de trabalho não estão disponíveis porque a permissão necessária não foi concedida.",
"notifications.policy.accept": "Aceitar", "notifications.policy.accept": "Aceitar",
"notifications.policy.accept_hint": "Mostrar nas notificações", "notifications.policy.accept_hint": "Mostrar nas notificações",
"notifications.policy.drop": "Ignorar", "notifications.policy.drop": "Ignorar",
@ -641,29 +642,29 @@
"notifications.policy.filter_hint": "Enviar para a caixa de notificações filtradas", "notifications.policy.filter_hint": "Enviar para a caixa de notificações filtradas",
"notifications.policy.filter_limited_accounts_hint": "Limitado pelos moderadores do servidor", "notifications.policy.filter_limited_accounts_hint": "Limitado pelos moderadores do servidor",
"notifications.policy.filter_limited_accounts_title": "Contas moderadas", "notifications.policy.filter_limited_accounts_title": "Contas moderadas",
"notifications.policy.filter_new_accounts.hint": "Criada nos últimos {days, plural, one {um dia} other {# dias}}", "notifications.policy.filter_new_accounts.hint": "Criada {days, plural, one {no último dia} other {nos últimos # dias}}",
"notifications.policy.filter_new_accounts_title": "Novas contas", "notifications.policy.filter_new_accounts_title": "Novas contas",
"notifications.policy.filter_not_followers_hint": "Incluindo pessoas que o seguem há menos de {days, plural, one {um dia} other {# dias}}", "notifications.policy.filter_not_followers_hint": "Incluindo pessoas que te seguem há menos de {days, plural, one {um dia} other {# dias}}",
"notifications.policy.filter_not_followers_title": "Pessoas não te seguem", "notifications.policy.filter_not_followers_title": "Pessoas não te seguem",
"notifications.policy.filter_not_following_hint": "Até que você os aprove manualmente", "notifications.policy.filter_not_following_hint": "Até que os aproves manualmente",
"notifications.policy.filter_not_following_title": "Pessoas que você não segue", "notifications.policy.filter_not_following_title": "Pessoas que não segues",
"notifications.policy.filter_private_mentions_hint": "Filtrado, a menos que seja em resposta à sua própria menção ou se você seguir o remetente", "notifications.policy.filter_private_mentions_hint": "Filtrado, a não ser que seja em resposta à tua própria menção ou se seguires o remetente",
"notifications.policy.filter_private_mentions_title": "Menções privadas não solicitadas", "notifications.policy.filter_private_mentions_title": "Menções privadas não solicitadas",
"notifications.policy.title": "Gerir notificações de…", "notifications.policy.title": "Gerir notificações de…",
"notifications_permission_banner.enable": "Ativar notificações no ambiente de trabalho", "notifications_permission_banner.enable": "Ativar notificações no ambiente de trabalho",
"notifications_permission_banner.how_to_control": "Para receber notificações quando o Mastodon não estiver aberto, ative as notificações no ambiente de trabalho. Depois da sua ativação, pode controlar precisamente quais tipos de interações geram notificações, através do botão {icon} acima.", "notifications_permission_banner.how_to_control": "Para receberes notificações quando o Mastodon não estiver aberto, ativa as notificações no ambiente de trabalho. Após isso, podes controlar precisamente que tipos de interações geram notificações no ambiente de trabalho através do botão {icon} acima.",
"notifications_permission_banner.title": "Nunca perca nada", "notifications_permission_banner.title": "Nunca percas nada",
"onboarding.follows.back": "Voltar", "onboarding.follows.back": "Voltar",
"onboarding.follows.done": "Concluído", "onboarding.follows.done": "Concluído",
"onboarding.follows.empty": "Infelizmente, não é possível mostrar resultados neste momento. Pode tentar utilizar a pesquisa ou navegar na página \"Explorar\" para encontrar pessoas para seguir ou tentar novamente mais tarde.", "onboarding.follows.empty": "Infelizmente não é possível mostrar resultados neste momento. Podes tentar pesquisar ou navegar na página \"Explorar\" para encontrares pessoas para seguires ou tentar novamente mais tarde.",
"onboarding.follows.search": "Pesquisar", "onboarding.follows.search": "Pesquisar",
"onboarding.follows.title": "Siga pessoas para começar", "onboarding.follows.title": "Segue pessoas para começar",
"onboarding.profile.discoverable": "Permitir que o meu perfil seja descoberto", "onboarding.profile.discoverable": "Permitir que o meu perfil seja descoberto",
"onboarding.profile.discoverable_hint": "Quando opta pela possibilidade de ser descoberto no Mastodon, as suas mensagens podem aparecer nos resultados de pesquisa e nas tendências, e o seu perfil pode ser sugerido a pessoas com interesses semelhantes aos seus.", "onboarding.profile.discoverable_hint": "Quando optas pela possibilidade de seres descoberto no Mastodon, as tuas publicações podem aparecer nos resultados de pesquisa e nas tendências, e o teu perfil pode ser sugerido a pessoas com interesses semelhantes aos teus.",
"onboarding.profile.display_name": "Nome a apresentar", "onboarding.profile.display_name": "Nome a apresentar",
"onboarding.profile.display_name_hint": "O seu nome completo ou o seu nome divertido…", "onboarding.profile.display_name_hint": "O teu nome completo ou o teu nome divertido…",
"onboarding.profile.note": "Bio", "onboarding.profile.note": "Biografia",
"onboarding.profile.note_hint": "Pode @mencionar outras pessoas e usar #etiquetas…", "onboarding.profile.note_hint": "Podes @mencionar outras pessoas e usar #etiquetas…",
"onboarding.profile.save_and_continue": "Guardar e continuar", "onboarding.profile.save_and_continue": "Guardar e continuar",
"onboarding.profile.title": "Configuração do perfil", "onboarding.profile.title": "Configuração do perfil",
"onboarding.profile.upload_avatar": "Enviar foto de perfil", "onboarding.profile.upload_avatar": "Enviar foto de perfil",
@ -677,26 +678,26 @@
"poll.total_people": "{count, plural, one {# pessoa} other {# pessoas}}", "poll.total_people": "{count, plural, one {# pessoa} other {# pessoas}}",
"poll.total_votes": "{count, plural, one {# voto} other {# votos}}", "poll.total_votes": "{count, plural, one {# voto} other {# votos}}",
"poll.vote": "Votar", "poll.vote": "Votar",
"poll.voted": "Votou nesta resposta", "poll.voted": "Votaste nesta resposta",
"poll.votes": "{votes, plural, one {# voto } other {# votos}}", "poll.votes": "{votes, plural, one {# voto } other {# votos}}",
"poll_button.add_poll": "Adicionar uma sondagem", "poll_button.add_poll": "Adicionar uma sondagem",
"poll_button.remove_poll": "Remover sondagem", "poll_button.remove_poll": "Remover sondagem",
"privacy.change": "Ajustar a privacidade da publicação", "privacy.change": "Alterar a privacidade da publicação",
"privacy.direct.long": "Todos os mencionados na publicação", "privacy.direct.long": "Todos os mencionados na publicação",
"privacy.direct.short": "Pessoas específicas", "privacy.direct.short": "Pessoas específicas",
"privacy.private.long": "Apenas os seus seguidores", "privacy.private.long": "Apenas os teus seguidores",
"privacy.private.short": "Seguidores", "privacy.private.short": "Seguidores",
"privacy.public.long": "Qualquer pessoa no Mastodon ou não", "privacy.public.long": "Qualquer pessoa no Mastodon ou não",
"privacy.public.short": "Público", "privacy.public.short": "Público",
"privacy.unlisted.additional": "Este comportamento é exatamente igual ao do público, exceto que a publicação não aparecerá em cronologias, nas etiquetas, ao explorar ou na pesquisa do Mastodon, mesmo que tenha optado por participar em toda a sua conta.", "privacy.unlisted.additional": "Este comportamento é exatamente igual ao do público, exceto que a publicação não aparecerá em cronologias, nas etiquetas, ao explorar ou na pesquisa do Mastodon, mesmo que tenhas optado por participar em toda a tua conta.",
"privacy.unlisted.long": "Menos fanfarras algorítmicas", "privacy.unlisted.long": "Menos fanfarras algorítmicas",
"privacy.unlisted.short": "Público silencioso", "privacy.unlisted.short": "Público silencioso",
"privacy_policy.last_updated": "Última atualização em {date}", "privacy_policy.last_updated": "Última atualização em {date}",
"privacy_policy.title": "Política de privacidade", "privacy_policy.title": "Política de privacidade",
"recommended": "Recomendado", "recommended": "Recomendado",
"refresh": "Atualizar", "refresh": "Atualizar",
"regeneration_indicator.please_stand_by": "Por favor, aguarde.", "regeneration_indicator.please_stand_by": "Aguarda um momento.",
"regeneration_indicator.preparing_your_home_feed": "A preparar a cronologia na sua página inicial…", "regeneration_indicator.preparing_your_home_feed": "A preparar a cronologia na tua página inicial…",
"relative_time.days": "{number}d", "relative_time.days": "{number}d",
"relative_time.full.days": "{number, plural,one {# dia} other {# dias}} atrás", "relative_time.full.days": "{number, plural,one {# dia} other {# dias}} atrás",
"relative_time.full.hours": "{number, plural,one {# hora}other {# horas}} atrás", "relative_time.full.hours": "{number, plural,one {# hora}other {# horas}} atrás",
@ -712,27 +713,27 @@
"reply_indicator.cancel": "Cancelar", "reply_indicator.cancel": "Cancelar",
"reply_indicator.poll": "Sondagem", "reply_indicator.poll": "Sondagem",
"report.block": "Bloquear", "report.block": "Bloquear",
"report.block_explanation": "Não verá as publicações deles. Eles não serão capazes de ver suas publicações ou de o seguir. Eles vão conseguir saber que estão bloqueados.", "report.block_explanation": "Não verás as publicações dele. Ele não poderá ver as tuas publicações nem seguir-te. Ele saberá que foi bloqueado por ti.",
"report.categories.legal": "Legal", "report.categories.legal": "Legal",
"report.categories.other": "Outro", "report.categories.other": "Outro",
"report.categories.spam": "Spam", "report.categories.spam": "Spam",
"report.categories.violation": "O conteúdo viola uma ou mais regras do servidor", "report.categories.violation": "O conteúdo viola uma ou mais regras do servidor",
"report.category.subtitle": "Escolha o mais adequado", "report.category.subtitle": "Escolhe o mais adequado",
"report.category.title": "Diga-nos o que se passa com esse {type}", "report.category.title": "Diz-nos o que se passa com este(a) {type}",
"report.category.title_account": "perfil", "report.category.title_account": "perfil",
"report.category.title_status": "publicação", "report.category.title_status": "publicação",
"report.close": "Concluído", "report.close": "Concluído",
"report.comment.title": "Há algo mais que pensa que devemos saber?", "report.comment.title": "Há algo mais que pensa que devemos saber?",
"report.forward": "Reencaminhar para {target}", "report.forward": "Reencaminhar para {target}",
"report.forward_hint": "A conta é de outro servidor. Enviar uma cópia da anónima da denúncia para lá também?", "report.forward_hint": "A conta pertence a outro servidor. Enviar uma cópia anónima da denúncia para esse servidor também?",
"report.mute": "Ocultar", "report.mute": "Ocultar",
"report.mute_explanation": "Não verá as publicações dele. Ele não poderá ver as suas publicações nem de o seguir. Ele não saberá que o ocultou.", "report.mute_explanation": "Não verás as publicações dele. Ele não poderá ver as tuas publicações nem seguir-te. Ele não saberá que o ocultaste.",
"report.next": "Seguinte", "report.next": "Seguinte",
"report.placeholder": "Comentários adicionais", "report.placeholder": "Comentários adicionais",
"report.reasons.dislike": "Não gosto disto", "report.reasons.dislike": "Não gosto disto",
"report.reasons.dislike_description": "Não é algo que deseje ver", "report.reasons.dislike_description": "Não é algo que deseje ver",
"report.reasons.legal": "É ilegal", "report.reasons.legal": "É ilegal",
"report.reasons.legal_description": "Acredita que isto viola a lei do seu país ou do país do servidor", "report.reasons.legal_description": "Acreditas que isto viola a lei do teu país ou do país do servidor",
"report.reasons.other": "É outra coisa", "report.reasons.other": "É outra coisa",
"report.reasons.other_description": "O problema não se encaixa nas outras categorias", "report.reasons.other_description": "O problema não se encaixa nas outras categorias",
"report.reasons.spam": "É spam", "report.reasons.spam": "É spam",
@ -748,9 +749,9 @@
"report.thanks.take_action": "Aqui estão as suas opções para controlar o que vê no Mastodon:", "report.thanks.take_action": "Aqui estão as suas opções para controlar o que vê no Mastodon:",
"report.thanks.take_action_actionable": "Enquanto revemos a sua denúncia, pode tomar medidas contra @{name}:", "report.thanks.take_action_actionable": "Enquanto revemos a sua denúncia, pode tomar medidas contra @{name}:",
"report.thanks.title": "Não quer ver isto?", "report.thanks.title": "Não quer ver isto?",
"report.thanks.title_actionable": "Obrigado por denunciar. Iremos analisar.", "report.thanks.title_actionable": "Obrigado por nos informares, vamos analisar a situação.",
"report.unfollow": "Deixar de seguir @{name}", "report.unfollow": "Deixar de seguir @{name}",
"report.unfollow_explanation": "Está a seguir esta conta. Para não voltar a ver as publicações desta conta na cronologia da sua página inicial, deixe de a seguir.", "report.unfollow_explanation": "Estás a seguir esta conta. Para não voltares a ver as publicações desta conta na cronologia da tua página inicial, deixa de a seguir.",
"report_notification.attached_statuses": "{count, plural,one {{count} publicação} other {{count} publicações}} em anexo", "report_notification.attached_statuses": "{count, plural,one {{count} publicação} other {{count} publicações}} em anexo",
"report_notification.categories.legal": "Legal", "report_notification.categories.legal": "Legal",
"report_notification.categories.legal_sentence": "conteúdo ilegal", "report_notification.categories.legal_sentence": "conteúdo ilegal",
@ -770,7 +771,7 @@
"search.quick_action.status_search": "Publicações com correspondência a {x}", "search.quick_action.status_search": "Publicações com correspondência a {x}",
"search.search_or_paste": "Pesquisar ou introduzir URL", "search.search_or_paste": "Pesquisar ou introduzir URL",
"search_popout.full_text_search_disabled_message": "Não disponível em {domain}.", "search_popout.full_text_search_disabled_message": "Não disponível em {domain}.",
"search_popout.full_text_search_logged_out_message": "Apenas disponível quando tem sessão iniciada.", "search_popout.full_text_search_logged_out_message": "Apenas disponível com sessão iniciada.",
"search_popout.language_code": "Código ISO do idioma", "search_popout.language_code": "Código ISO do idioma",
"search_popout.options": "Opções de pesquisa", "search_popout.options": "Opções de pesquisa",
"search_popout.quick_actions": "Ações rápidas", "search_popout.quick_actions": "Ações rápidas",
@ -781,20 +782,20 @@
"search_results.all": "Tudo", "search_results.all": "Tudo",
"search_results.hashtags": "Etiquetas", "search_results.hashtags": "Etiquetas",
"search_results.no_results": "Sem resultados.", "search_results.no_results": "Sem resultados.",
"search_results.no_search_yet": "Tente procurar por publicações, perfis ou etiquetas.", "search_results.no_search_yet": "Tenta procurar por publicações, perfis ou etiquetas.",
"search_results.see_all": "Ver todos", "search_results.see_all": "Ver todos",
"search_results.statuses": "Publicações", "search_results.statuses": "Publicações",
"search_results.title": "Pesquisar por \"{q}\"", "search_results.title": "Pesquisar por \"{q}\"",
"server_banner.about_active_users": "Pessoas que utilizaram este servidor nos últimos 30 dias (Utilizadores Ativos Mensais)", "server_banner.about_active_users": "Pessoas que utilizaram este servidor nos últimos 30 dias (utilizadores ativos mensais)",
"server_banner.active_users": "utilizadores ativos", "server_banner.active_users": "utilizadores ativos",
"server_banner.administered_by": "Administrado por:", "server_banner.administered_by": "Administrado por:",
"server_banner.is_one_of_many": "{domain} é um dos muitos servidores Mastodon independentes que pode utilizar para participar no fediverso.", "server_banner.is_one_of_many": "{domain} é um dos muitos servidores Mastodon independentes que podes utilizar para participar no fediverso.",
"server_banner.server_stats": "Estatísticas do servidor:", "server_banner.server_stats": "Estatísticas do servidor:",
"sign_in_banner.create_account": "Criar conta", "sign_in_banner.create_account": "Criar conta",
"sign_in_banner.follow_anyone": "Siga qualquer pessoa no fediverso e veja tudo por ordem cronológica. Sem algoritmos, anúncios ou caça-cliques à vista.", "sign_in_banner.follow_anyone": "Segue qualquer pessoa no fediverso e vê tudo por ordem cronológica. Sem algoritmos, anúncios ou caça-cliques à vista.",
"sign_in_banner.mastodon_is": "O Mastodon é a melhor maneira de acompanhar o que está a acontecer.", "sign_in_banner.mastodon_is": "O Mastodon é a melhor maneira de acompanhar o que está a acontecer.",
"sign_in_banner.sign_in": "Iniciar sessão", "sign_in_banner.sign_in": "Iniciar sessão",
"sign_in_banner.sso_redirect": "Inicie sessão ou registe-se", "sign_in_banner.sso_redirect": "Inicia a sessão ou cria uma conta",
"status.admin_account": "Abrir a interface de moderação para @{name}", "status.admin_account": "Abrir a interface de moderação para @{name}",
"status.admin_domain": "Abrir interface de moderação para {domain}", "status.admin_domain": "Abrir interface de moderação para {domain}",
"status.admin_status": "Abrir esta publicação na interface de moderação", "status.admin_status": "Abrir esta publicação na interface de moderação",
@ -818,14 +819,14 @@
"status.history.created": "{name} criado em {date}", "status.history.created": "{name} criado em {date}",
"status.history.edited": "{name} editado em {date}", "status.history.edited": "{name} editado em {date}",
"status.load_more": "Carregar mais", "status.load_more": "Carregar mais",
"status.media.open": "Clique para abrir", "status.media.open": "Clicar para abrir",
"status.media.show": "Clique para ver", "status.media.show": "Clicar para ver",
"status.media_hidden": "Media escondida", "status.media_hidden": "Multimédia oculta",
"status.mention": "Mencionar @{name}", "status.mention": "Mencionar @{name}",
"status.more": "Mais", "status.more": "Mais",
"status.mute": "Ocultar @{name}", "status.mute": "Ocultar @{name}",
"status.mute_conversation": "Ocultar conversa", "status.mute_conversation": "Ocultar conversa",
"status.open": "Expandir", "status.open": "Expandir esta publicação",
"status.pin": "Afixar no perfil", "status.pin": "Afixar no perfil",
"status.pinned": "Publicação afixada", "status.pinned": "Publicação afixada",
"status.read_more": "Ler mais", "status.read_more": "Ler mais",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Ainda ninguém impulsionou esta publicação. Quando alguém o fizer, aparecerá aqui.", "status.reblogs.empty": "Ainda ninguém impulsionou esta publicação. Quando alguém o fizer, aparecerá aqui.",
"status.redraft": "Eliminar e reescrever", "status.redraft": "Eliminar e reescrever",
"status.remove_bookmark": "Retirar dos marcadores", "status.remove_bookmark": "Retirar dos marcadores",
"status.remove_favourite": "Remover dos favoritos",
"status.replied_in_thread": "Responder na conversa", "status.replied_in_thread": "Responder na conversa",
"status.replied_to": "Respondeu a {name}", "status.replied_to": "Respondeu a {name}",
"status.reply": "Responder", "status.reply": "Responder",
@ -843,8 +845,8 @@
"status.report": "Denunciar @{name}", "status.report": "Denunciar @{name}",
"status.sensitive_warning": "Conteúdo sensível", "status.sensitive_warning": "Conteúdo sensível",
"status.share": "Partilhar", "status.share": "Partilhar",
"status.show_less_all": "Mostrar menos para todas", "status.show_less_all": "Ocultar conteúdo sensível em todas",
"status.show_more_all": "Mostrar mais para todas", "status.show_more_all": "Mostrar conteúdo sensível em todas",
"status.show_original": "Mostrar original", "status.show_original": "Mostrar original",
"status.title.with_attachments": "{user} publicou {attachmentCount, plural,one {um anexo} other {{attachmentCount} anexos}}", "status.title.with_attachments": "{user} publicou {attachmentCount, plural,one {um anexo} other {{attachmentCount} anexos}}",
"status.translate": "Traduzir", "status.translate": "Traduzir",
@ -852,20 +854,20 @@
"status.uncached_media_warning": "Pré-visualização não disponível", "status.uncached_media_warning": "Pré-visualização não disponível",
"status.unmute_conversation": "Desocultar esta conversa", "status.unmute_conversation": "Desocultar esta conversa",
"status.unpin": "Desafixar do perfil", "status.unpin": "Desafixar do perfil",
"subscribed_languages.lead": "Após a alteração, apenas as publicações nos idiomas selecionados aparecerão na sua página inicial e listas. Não selecione nenhum para receber publicações de todos os idiomas.", "subscribed_languages.lead": "Após a alteração, apenas as publicações nos idiomas selecionados aparecerão na cronologia da tua página inicial e das tuas listas. Não seleciones nenhum idioma para receberes publicações em todos os idiomas.",
"subscribed_languages.save": "Guardar alterações", "subscribed_languages.save": "Guardar alterações",
"subscribed_languages.target": "Alterar idiomas subscritos para {target}", "subscribed_languages.target": "Alterar idiomas subscritos para {target}",
"tabs_bar.home": "Início", "tabs_bar.home": "Início",
"tabs_bar.notifications": "Notificações", "tabs_bar.notifications": "Notificações",
"terms_of_service.title": "Termos do serviço", "terms_of_service.title": "Termos do serviço",
"time_remaining.days": "{número, plural, um {# day} outro {# days}} faltam", "time_remaining.days": "{number, plural, one {# dia restante} other {# dias restantes}}",
"time_remaining.hours": "{número, plural, um {# hour} outro {# hours}} faltam", "time_remaining.hours": "{number, plural, one {# hora restante} other {# horas restantes}}",
"time_remaining.minutes": "{número, plural, um {# minute} outro {# minutes}} faltam", "time_remaining.minutes": "{number, plural, one {# minuto restante} other {# minutos restantes}}",
"time_remaining.moments": "Momentos restantes", "time_remaining.moments": "Momentos restantes",
"time_remaining.seconds": "{número, plural, um {# second} outro {# seconds}} faltam", "time_remaining.seconds": "{number, plural, one {# segundo restante} other {# segundos restantes}}",
"trends.counter_by_accounts": "{count, plural, one {{counter} pessoa} other {{counter} pessoas}} {days, plural, one {no último dia} other {nos últimos {days} dias}}", "trends.counter_by_accounts": "{count, plural, one {{counter} pessoa} other {{counter} pessoas}} {days, plural, one {no último dia} other {nos últimos {days} dias}}",
"trends.trending_now": "Tendências atuais", "trends.trending_now": "Tendências atuais",
"ui.beforeunload": "O seu rascunho será perdido se abandonar o Mastodon.", "ui.beforeunload": "O teu rascunho será perdido se abandonares o Mastodon.",
"units.short.billion": "{count}MM", "units.short.billion": "{count}MM",
"units.short.million": "{count}M", "units.short.million": "{count}M",
"units.short.thousand": "{count}m", "units.short.thousand": "{count}m",
@ -901,7 +903,7 @@
"video.exit_fullscreen": "Sair do modo ecrã inteiro", "video.exit_fullscreen": "Sair do modo ecrã inteiro",
"video.expand": "Expandir vídeo", "video.expand": "Expandir vídeo",
"video.fullscreen": "Ecrã completo", "video.fullscreen": "Ecrã completo",
"video.hide": "Esconder vídeo", "video.hide": "Ocultar vídeo",
"video.mute": "Desativar som", "video.mute": "Desativar som",
"video.pause": "Pausar", "video.pause": "Pausar",
"video.play": "Reproduzir", "video.play": "Reproduzir",

View file

@ -11,6 +11,7 @@
"about.not_available": "Această informație nu a fost pusă la dispoziție pe acest server.", "about.not_available": "Această informație nu a fost pusă la dispoziție pe acest server.",
"about.powered_by": "Media socială descentralizată furnizată de {mastodon}", "about.powered_by": "Media socială descentralizată furnizată de {mastodon}",
"about.rules": "Reguli server", "about.rules": "Reguli server",
"account.account_note_header": "Notă personală",
"account.add_or_remove_from_list": "Adaugă sau elimină din liste", "account.add_or_remove_from_list": "Adaugă sau elimină din liste",
"account.badges.bot": "Robot", "account.badges.bot": "Robot",
"account.badges.group": "Grup", "account.badges.group": "Grup",
@ -29,11 +30,13 @@
"account.featured_tags.last_status_at": "Ultima postare pe {date}", "account.featured_tags.last_status_at": "Ultima postare pe {date}",
"account.featured_tags.last_status_never": "Fără postări", "account.featured_tags.last_status_never": "Fără postări",
"account.featured_tags.title": "Haștagurile recomandate de {name}", "account.featured_tags.title": "Haștagurile recomandate de {name}",
"account.follow": "Abonează-te", "account.follow": "Urmărește",
"account.follow_back": "Urmăreşte înapoi", "account.follow_back": "Urmăreşte înapoi",
"account.followers": "Urmăritori", "account.followers": "Urmăritori",
"account.followers.empty": "Acest utilizator nu are încă urmăritori.", "account.followers.empty": "Acest utilizator nu are încă urmăritori.",
"account.followers_counter": "{count, plural, one {{counter} urmăritor} few {{counter} urmăritori} other {{counter} urmăritori}}",
"account.following": "Urmăriți", "account.following": "Urmăriți",
"account.following_counter": "{count, plural, one {{counter} urmărit} few {{counter} urmărit} other {{counter} urmărit}}",
"account.follows.empty": "Momentan acest utilizator nu are niciun abonament.", "account.follows.empty": "Momentan acest utilizator nu are niciun abonament.",
"account.go_to_profile": "Mergi la profil", "account.go_to_profile": "Mergi la profil",
"account.hide_reblogs": "Ascunde distribuirile de la @{name}", "account.hide_reblogs": "Ascunde distribuirile de la @{name}",
@ -49,6 +52,7 @@
"account.mute_notifications_short": "Amuțește notificările", "account.mute_notifications_short": "Amuțește notificările",
"account.mute_short": "Ignoră", "account.mute_short": "Ignoră",
"account.muted": "Pus pe silențios", "account.muted": "Pus pe silențios",
"account.mutual": "Mutual",
"account.no_bio": "Nicio descriere furnizată.", "account.no_bio": "Nicio descriere furnizată.",
"account.open_original_page": "Deschide pagina originală", "account.open_original_page": "Deschide pagina originală",
"account.posts": "Postări", "account.posts": "Postări",
@ -58,12 +62,14 @@
"account.requested_follow": "{name} A cerut să vă urmărească", "account.requested_follow": "{name} A cerut să vă urmărească",
"account.share": "Distribuie profilul lui @{name}", "account.share": "Distribuie profilul lui @{name}",
"account.show_reblogs": "Afișează distribuirile de la @{name}", "account.show_reblogs": "Afișează distribuirile de la @{name}",
"account.statuses_counter": "{count, plural, one {{counter} postare} few {{counter} postări} other {{counter} postări}}",
"account.unblock": "Deblochează pe @{name}", "account.unblock": "Deblochează pe @{name}",
"account.unblock_domain": "Deblochează domeniul {domain}", "account.unblock_domain": "Deblochează domeniul {domain}",
"account.unblock_short": "Deblochează", "account.unblock_short": "Deblochează",
"account.unendorse": "Nu promova pe profil", "account.unendorse": "Nu promova pe profil",
"account.unfollow": "Nu mai urmări", "account.unfollow": "Nu mai urmări",
"account.unmute": "Nu mai ignora pe @{name}", "account.unmute": "Nu mai ignora pe @{name}",
"account.unmute_notifications_short": "Dezamuțire notificări",
"account.unmute_short": "Reafișare", "account.unmute_short": "Reafișare",
"account_note.placeholder": "Click to add a note", "account_note.placeholder": "Click to add a note",
"admin.dashboard.daily_retention": "Rata de retenţie a utilizatorului pe zi după înregistrare", "admin.dashboard.daily_retention": "Rata de retenţie a utilizatorului pe zi după înregistrare",
@ -71,12 +77,29 @@
"admin.dashboard.retention.average": "În medie", "admin.dashboard.retention.average": "În medie",
"admin.dashboard.retention.cohort": "Înregistrări lunar", "admin.dashboard.retention.cohort": "Înregistrări lunar",
"admin.dashboard.retention.cohort_size": "Utilizatori noi", "admin.dashboard.retention.cohort_size": "Utilizatori noi",
"admin.impact_report.instance_followers": "Urmăritori pe care utilizatorii noștri i-ar pierde",
"admin.impact_report.instance_follows": "Urmăritori pe care utilizatorii lor i-ar pierde",
"admin.impact_report.title": "Rezumatul impactului", "admin.impact_report.title": "Rezumatul impactului",
"alert.rate_limited.message": "Vă rugăm să reîncercați după {retry_time, time, medium}.", "alert.rate_limited.message": "Vă rugăm să reîncercați după {retry_time, time, medium}.",
"alert.rate_limited.title": "Debit limitat", "alert.rate_limited.title": "Debit limitat",
"alert.unexpected.message": "A apărut o eroare neașteptată.", "alert.unexpected.message": "A apărut o eroare neașteptată.",
"alert.unexpected.title": "Ups!", "alert.unexpected.title": "Ups!",
"alt_text_badge.title": "Text alternativ",
"announcement.announcement": "Anunț", "announcement.announcement": "Anunț",
"annual_report.summary.archetype.lurker": "Pânditorul",
"annual_report.summary.archetype.oracle": "Oracolul",
"annual_report.summary.archetype.pollster": "Sondatorul",
"annual_report.summary.archetype.replier": "Fluturele social",
"annual_report.summary.followers.followers": "urmăritori",
"annual_report.summary.followers.total": "{count} total",
"annual_report.summary.here_it_is": "Iată rezumatul dvs. al anului {year}:",
"annual_report.summary.highlighted_post.by_favourites": "cea mai favorizată postare",
"annual_report.summary.highlighted_post.by_reblogs": "cea mai boostată postare",
"annual_report.summary.highlighted_post.by_replies": "postarea cu cele mai multe răspunsuri",
"annual_report.summary.most_used_app.most_used_app": "cea mai utilizată aplicație",
"annual_report.summary.most_used_hashtag.most_used_hashtag": "cel mai utilizat hashtag",
"annual_report.summary.most_used_hashtag.none": "Niciunul",
"annual_report.summary.new_posts.new_posts": "postări noi",
"attachments_list.unprocessed": "(neprocesate)", "attachments_list.unprocessed": "(neprocesate)",
"audio.hide": "Ascunde audio", "audio.hide": "Ascunde audio",
"boost_modal.combo": "Poți apăsa {combo} pentru a sări peste asta data viitoare", "boost_modal.combo": "Poți apăsa {combo} pentru a sări peste asta data viitoare",

View file

@ -153,7 +153,7 @@
"column.lists": "Списки", "column.lists": "Списки",
"column.mutes": "Игнорируемые пользователи", "column.mutes": "Игнорируемые пользователи",
"column.notifications": "Уведомления", "column.notifications": "Уведомления",
"column.pins": "Закреплённый пост", "column.pins": "Закреплённые посты",
"column.public": "Глобальная лента", "column.public": "Глобальная лента",
"column_back_button.label": "Назад", "column_back_button.label": "Назад",
"column_header.hide_settings": "Скрыть настройки", "column_header.hide_settings": "Скрыть настройки",
@ -364,7 +364,7 @@
"footer.status": "Статус", "footer.status": "Статус",
"footer.terms_of_service": "Пользовательское соглашение", "footer.terms_of_service": "Пользовательское соглашение",
"generic.saved": "Сохранено", "generic.saved": "Сохранено",
"getting_started.heading": "Начать", "getting_started.heading": "Добро пожаловать",
"hashtag.admin_moderation": "Открыть интерфейс модератора для #{name}", "hashtag.admin_moderation": "Открыть интерфейс модератора для #{name}",
"hashtag.column_header.tag_mode.all": "и {additional}", "hashtag.column_header.tag_mode.all": "и {additional}",
"hashtag.column_header.tag_mode.any": "или {additional}", "hashtag.column_header.tag_mode.any": "или {additional}",
@ -453,7 +453,7 @@
"keyboard_shortcuts.requests": "перейти к запросам на подписку", "keyboard_shortcuts.requests": "перейти к запросам на подписку",
"keyboard_shortcuts.search": "перейти к поиску", "keyboard_shortcuts.search": "перейти к поиску",
"keyboard_shortcuts.spoilers": "показать/скрыть поле предупреждения о содержании", "keyboard_shortcuts.spoilers": "показать/скрыть поле предупреждения о содержании",
"keyboard_shortcuts.start": "Перейти к разделу \"Начать\"", "keyboard_shortcuts.start": "перейти к разделу \"добро пожаловать\"",
"keyboard_shortcuts.toggle_hidden": "показать/скрыть текст за предупреждением", "keyboard_shortcuts.toggle_hidden": "показать/скрыть текст за предупреждением",
"keyboard_shortcuts.toggle_sensitivity": "показать/скрыть медиафайлы", "keyboard_shortcuts.toggle_sensitivity": "показать/скрыть медиафайлы",
"keyboard_shortcuts.toot": "начать писать новый пост", "keyboard_shortcuts.toot": "начать писать новый пост",
@ -484,7 +484,7 @@
"lists.list_members": "Пользователи в списке", "lists.list_members": "Пользователи в списке",
"lists.list_members_count": "{count, plural, one {# пользователь} few {# пользователя} other {# пользователей}}", "lists.list_members_count": "{count, plural, one {# пользователь} few {# пользователя} other {# пользователей}}",
"lists.list_name": "Название списка", "lists.list_name": "Название списка",
"lists.new_list_name": "Новое имя списка", "lists.new_list_name": "Новый список",
"lists.no_lists_yet": "Пока нет списков.", "lists.no_lists_yet": "Пока нет списков.",
"lists.no_members_yet": "Пока нет пользователей в списке.", "lists.no_members_yet": "Пока нет пользователей в списке.",
"lists.no_results_found": "Не найдено.", "lists.no_results_found": "Не найдено.",

View file

@ -236,6 +236,7 @@
"domain_block_modal.they_cant_follow": "Nikto z tohoto servera ťa nemôže nasledovať.", "domain_block_modal.they_cant_follow": "Nikto z tohoto servera ťa nemôže nasledovať.",
"domain_block_modal.they_wont_know": "Nebude vedieť, že bol/a zablokovaný/á.", "domain_block_modal.they_wont_know": "Nebude vedieť, že bol/a zablokovaný/á.",
"domain_block_modal.title": "Blokovať doménu?", "domain_block_modal.title": "Blokovať doménu?",
"domain_block_modal.you_will_lose_relationships": "Stratíš všetkých sledovateľov a ľudí, ktorých ty na tomto serveri nasleduješ.",
"domain_block_modal.you_wont_see_posts": "Neuvidíš príspevky, ani oboznámenia od užívateľov na tomto serveri.", "domain_block_modal.you_wont_see_posts": "Neuvidíš príspevky, ani oboznámenia od užívateľov na tomto serveri.",
"domain_pill.activitypub_like_language": "ActivityPub je ako jazyk, ktorým Mastodon hovorí s ostatnými sociálnymi sieťami.", "domain_pill.activitypub_like_language": "ActivityPub je ako jazyk, ktorým Mastodon hovorí s ostatnými sociálnymi sieťami.",
"domain_pill.server": "Server", "domain_pill.server": "Server",
@ -315,6 +316,7 @@
"follow_requests.unlocked_explanation": "Aj keď váš účet nie je uzamknutý, tím domény {domain} si myslel, že môžete chcieť skontrolovať žiadosti o sledovanie z týchto účtov manuálne.", "follow_requests.unlocked_explanation": "Aj keď váš účet nie je uzamknutý, tím domény {domain} si myslel, že môžete chcieť skontrolovať žiadosti o sledovanie z týchto účtov manuálne.",
"follow_suggestions.curated_suggestion": "Výber redakcie", "follow_suggestions.curated_suggestion": "Výber redakcie",
"follow_suggestions.dismiss": "Znova nezobrazovať", "follow_suggestions.dismiss": "Znova nezobrazovať",
"follow_suggestions.friends_of_friends_longer": "Populárne medzi ľudmi ktorých nasleduješ",
"follow_suggestions.hints.featured": "Tento profil bol ručne zvolený tímom domény {domain}.", "follow_suggestions.hints.featured": "Tento profil bol ručne zvolený tímom domény {domain}.",
"follow_suggestions.hints.friends_of_friends": "Tento profil je obľúbený medzi účtami, ktoré sledujete.", "follow_suggestions.hints.friends_of_friends": "Tento profil je obľúbený medzi účtami, ktoré sledujete.",
"follow_suggestions.hints.most_followed": "Tento profil patrí na doméne {domain} medzi najsledovanejšie.", "follow_suggestions.hints.most_followed": "Tento profil patrí na doméne {domain} medzi najsledovanejšie.",
@ -353,6 +355,8 @@
"hashtag.follow": "Sledovať hashtag", "hashtag.follow": "Sledovať hashtag",
"hashtag.unfollow": "Prestať sledovať hashtag", "hashtag.unfollow": "Prestať sledovať hashtag",
"hashtags.and_other": "…a {count, plural, other {# ďalších}}", "hashtags.and_other": "…a {count, plural, other {# ďalších}}",
"hints.profiles.followers_may_be_missing": "Nasledovatelia tohto profilu môžu chýbať.",
"hints.profiles.follows_may_be_missing": "Nasledovatelia tohto profilu môžu chýbať.",
"hints.profiles.posts_may_be_missing": "Niektoré príspevky z tohto profilu môžu chýbať.", "hints.profiles.posts_may_be_missing": "Niektoré príspevky z tohto profilu môžu chýbať.",
"hints.profiles.see_more_followers": "Pozri viac nasledovateľov na {domain}", "hints.profiles.see_more_followers": "Pozri viac nasledovateľov na {domain}",
"hints.profiles.see_more_follows": "Pozri viac nasledovateľov na {domain}", "hints.profiles.see_more_follows": "Pozri viac nasledovateľov na {domain}",
@ -374,6 +378,10 @@
"ignore_notifications_modal.not_followers_title": "Nevšímať si oznámenia od ľudí, ktorí ťa nenasledujú?", "ignore_notifications_modal.not_followers_title": "Nevšímať si oznámenia od ľudí, ktorí ťa nenasledujú?",
"ignore_notifications_modal.not_following_title": "Nevšímať si oznámenia od ľudí, ktorých nenasleduješ?", "ignore_notifications_modal.not_following_title": "Nevšímať si oznámenia od ľudí, ktorých nenasleduješ?",
"ignore_notifications_modal.private_mentions_title": "Nevšímať si oznámenia o nevyžiadaných súkromných spomínaniach?", "ignore_notifications_modal.private_mentions_title": "Nevšímať si oznámenia o nevyžiadaných súkromných spomínaniach?",
"interaction_modal.action.reply": "Pre pokračovanie musíš odpovedať s tvojho účtu.",
"interaction_modal.action.vote": "Pre pokračovanie musíš hlasovať s tvojho účtu.",
"interaction_modal.go": "Prejdi",
"interaction_modal.no_account_yet": "Ešte nemáš účet?",
"interaction_modal.on_another_server": "Na inom serveri", "interaction_modal.on_another_server": "Na inom serveri",
"interaction_modal.on_this_server": "Na tomto serveri", "interaction_modal.on_this_server": "Na tomto serveri",
"interaction_modal.title.favourite": "Ohviezdičkovať príspevok od {name}", "interaction_modal.title.favourite": "Ohviezdičkovať príspevok od {name}",
@ -416,6 +424,7 @@
"keyboard_shortcuts.toggle_hidden": "Zobraziť/skryť text za varovaním o obsahu", "keyboard_shortcuts.toggle_hidden": "Zobraziť/skryť text za varovaním o obsahu",
"keyboard_shortcuts.toggle_sensitivity": "Zobraziť/skryť médiá", "keyboard_shortcuts.toggle_sensitivity": "Zobraziť/skryť médiá",
"keyboard_shortcuts.toot": "Vytvoriť nový príspevok", "keyboard_shortcuts.toot": "Vytvoriť nový príspevok",
"keyboard_shortcuts.translate": "preložiť príspevok",
"keyboard_shortcuts.unfocus": "Odísť z textového poľa", "keyboard_shortcuts.unfocus": "Odísť z textového poľa",
"keyboard_shortcuts.up": "Posunúť sa vyššie v zozname", "keyboard_shortcuts.up": "Posunúť sa vyššie v zozname",
"lightbox.close": "Zatvoriť", "lightbox.close": "Zatvoriť",

View file

@ -452,6 +452,7 @@
"keyboard_shortcuts.toggle_hidden": "Për shfaqje/fshehje teksti pas CW", "keyboard_shortcuts.toggle_hidden": "Për shfaqje/fshehje teksti pas CW",
"keyboard_shortcuts.toggle_sensitivity": "Për shfaqje/fshehje mediash", "keyboard_shortcuts.toggle_sensitivity": "Për shfaqje/fshehje mediash",
"keyboard_shortcuts.toot": "Për të filluar një mesazh të ri", "keyboard_shortcuts.toot": "Për të filluar një mesazh të ri",
"keyboard_shortcuts.translate": "për të përkthyer një postim",
"keyboard_shortcuts.unfocus": "Për heqjen e fokusit nga fusha e hartimit të mesazheve apo kërkimeve", "keyboard_shortcuts.unfocus": "Për heqjen e fokusit nga fusha e hartimit të mesazheve apo kërkimeve",
"keyboard_shortcuts.up": "Për ngjitje sipër nëpër listë", "keyboard_shortcuts.up": "Për ngjitje sipër nëpër listë",
"lightbox.close": "Mbylle", "lightbox.close": "Mbylle",
@ -831,6 +832,7 @@
"status.reblogs.empty": "Këtë mesazh se ka përforcuar njeri deri tani. Kur ta bëjë dikush, kjo do të duket këtu.", "status.reblogs.empty": "Këtë mesazh se ka përforcuar njeri deri tani. Kur ta bëjë dikush, kjo do të duket këtu.",
"status.redraft": "Fshijeni & rihartojeni", "status.redraft": "Fshijeni & rihartojeni",
"status.remove_bookmark": "Hiqe faqerojtësin", "status.remove_bookmark": "Hiqe faqerojtësin",
"status.remove_favourite": "Hiqe nga të parapëlqyerat",
"status.replied_in_thread": "U përgjigj te rrjedha", "status.replied_in_thread": "U përgjigj te rrjedha",
"status.replied_to": "Iu përgjigj {name}", "status.replied_to": "Iu përgjigj {name}",
"status.reply": "Përgjigjuni", "status.reply": "Përgjigjuni",

View file

@ -141,7 +141,7 @@
"column.bookmarks": "Bokmärken", "column.bookmarks": "Bokmärken",
"column.community": "Lokal tidslinje", "column.community": "Lokal tidslinje",
"column.create_list": "Skapa lista", "column.create_list": "Skapa lista",
"column.direct": "Privata nämningar", "column.direct": "Privata omnämnande",
"column.directory": "Bläddra bland profiler", "column.directory": "Bläddra bland profiler",
"column.domain_blocks": "Blockerade domäner", "column.domain_blocks": "Blockerade domäner",
"column.edit_list": "Redigera lista", "column.edit_list": "Redigera lista",
@ -239,6 +239,10 @@
"disabled_account_banner.text": "Ditt konto {disabledAccount} är för närvarande inaktiverat.", "disabled_account_banner.text": "Ditt konto {disabledAccount} är för närvarande inaktiverat.",
"dismissable_banner.community_timeline": "Dessa är de senaste offentliga inläggen från personer vars konton tillhandahålls av {domain}.", "dismissable_banner.community_timeline": "Dessa är de senaste offentliga inläggen från personer vars konton tillhandahålls av {domain}.",
"dismissable_banner.dismiss": "Avfärda", "dismissable_banner.dismiss": "Avfärda",
"dismissable_banner.explore_links": "Dessa nyhetshistorier delas mest på fediversum idag. Nyare nyhetshistorier som publiceras av fler olika personer rankas högre.",
"dismissable_banner.explore_statuses": "Dessa inlägg från fediversum vinner dragkraft idag. Nyare inlägg som många boostar och favoritmarkerar rankas högre.",
"dismissable_banner.explore_tags": "De här hashtaggarna vinner dragkraft i fediversum idag. Hashtaggar som används av fler olika personer rankas högre.",
"dismissable_banner.public_timeline": "De här är de aktuella publika inlägg från personer i fediversum som personer i {domain} följer.",
"domain_block_modal.block": "Blockera server", "domain_block_modal.block": "Blockera server",
"domain_block_modal.block_account_instead": "Blockera @{name} istället", "domain_block_modal.block_account_instead": "Blockera @{name} istället",
"domain_block_modal.they_can_interact_with_old_posts": "Personer från denna server kan interagera med dina gamla inlägg.", "domain_block_modal.they_can_interact_with_old_posts": "Personer från denna server kan interagera med dina gamla inlägg.",
@ -285,7 +289,7 @@
"empty_column.blocks": "Du har ännu ej blockerat några användare.", "empty_column.blocks": "Du har ännu ej blockerat några användare.",
"empty_column.bookmarked_statuses": "Du har inte bokmärkt några inlägg än. När du bokmärker ett inlägg kommer det synas här.", "empty_column.bookmarked_statuses": "Du har inte bokmärkt några inlägg än. När du bokmärker ett inlägg kommer det synas här.",
"empty_column.community": "Den lokala tidslinjen är tom. Skriv något offentligt för att sätta bollen i rullning!", "empty_column.community": "Den lokala tidslinjen är tom. Skriv något offentligt för att sätta bollen i rullning!",
"empty_column.direct": "Du har inga privata nämningar. När du skickar eller tar emot ett direktmeddelande kommer det att visas här.", "empty_column.direct": "Du har inga privata omnämninande. När du skickar eller tar emot ett direktmeddelande kommer det att visas här.",
"empty_column.domain_blocks": "Det finns ännu inga dolda domäner.", "empty_column.domain_blocks": "Det finns ännu inga dolda domäner.",
"empty_column.explore_statuses": "Ingenting är trendigt just nu. Kom tillbaka senare!", "empty_column.explore_statuses": "Ingenting är trendigt just nu. Kom tillbaka senare!",
"empty_column.favourited_statuses": "Du har inga favoritmarkerade inlägg ännu. När du favoritmärker ett så kommer det att dyka upp här.", "empty_column.favourited_statuses": "Du har inga favoritmarkerade inlägg ännu. När du favoritmärker ett så kommer det att dyka upp här.",
@ -402,7 +406,14 @@
"ignore_notifications_modal.new_accounts_title": "Vill du ignorera aviseringar från nya konton?", "ignore_notifications_modal.new_accounts_title": "Vill du ignorera aviseringar från nya konton?",
"ignore_notifications_modal.not_followers_title": "Vill du ignorera aviseringar från personer som inte följer dig?", "ignore_notifications_modal.not_followers_title": "Vill du ignorera aviseringar från personer som inte följer dig?",
"ignore_notifications_modal.not_following_title": "Vill du blockera aviseringar från personer som du inte följer dig?", "ignore_notifications_modal.not_following_title": "Vill du blockera aviseringar från personer som du inte följer dig?",
"ignore_notifications_modal.private_mentions_title": "Vill du ignorera aviseringar från oönskade privata omnämningar?", "ignore_notifications_modal.private_mentions_title": "Vill du ignorera aviseringar från oombedda privata omnämnanden?",
"interaction_modal.action.favourite": "För att fortsätta, måste du favoritmarkera från ditt konto.",
"interaction_modal.action.follow": "För att fortsätta, måste du följa från ditt konto.",
"interaction_modal.action.reblog": "För att fortsätta, måste du boosta från ditt konto.",
"interaction_modal.action.reply": "För att fortsätta, måste du svara från ditt konto.",
"interaction_modal.action.vote": "För att fortsätta, måste du rösta från ditt konto.",
"interaction_modal.go": "Vidare",
"interaction_modal.no_account_yet": "Har du inget konto än?",
"interaction_modal.on_another_server": "På en annan server", "interaction_modal.on_another_server": "På en annan server",
"interaction_modal.on_this_server": "På denna server", "interaction_modal.on_this_server": "På denna server",
"interaction_modal.title.favourite": "Favoritmarkera {name}s inlägg", "interaction_modal.title.favourite": "Favoritmarkera {name}s inlägg",
@ -410,6 +421,7 @@
"interaction_modal.title.reblog": "Boosta {name}s inlägg", "interaction_modal.title.reblog": "Boosta {name}s inlägg",
"interaction_modal.title.reply": "Svara på {name}s inlägg", "interaction_modal.title.reply": "Svara på {name}s inlägg",
"interaction_modal.title.vote": "Rösta i {name}s enkät", "interaction_modal.title.vote": "Rösta i {name}s enkät",
"interaction_modal.username_prompt": "T.ex. {example}",
"intervals.full.days": "{number, plural, one {# dag} other {# dagar}}", "intervals.full.days": "{number, plural, one {# dag} other {# dagar}}",
"intervals.full.hours": "{number, plural, one {# timme} other {# timmar}}", "intervals.full.hours": "{number, plural, one {# timme} other {# timmar}}",
"intervals.full.minutes": "{number, plural, one {# minut} other {# minuter}}", "intervals.full.minutes": "{number, plural, one {# minut} other {# minuter}}",
@ -419,7 +431,7 @@
"keyboard_shortcuts.column": "Fokusera kolumn", "keyboard_shortcuts.column": "Fokusera kolumn",
"keyboard_shortcuts.compose": "Fokusera skrivfältet", "keyboard_shortcuts.compose": "Fokusera skrivfältet",
"keyboard_shortcuts.description": "Beskrivning", "keyboard_shortcuts.description": "Beskrivning",
"keyboard_shortcuts.direct": "för att öppna privata nämningskolumnen", "keyboard_shortcuts.direct": "för att öppna privata omnämnandekolumnen",
"keyboard_shortcuts.down": "Flytta ner i listan", "keyboard_shortcuts.down": "Flytta ner i listan",
"keyboard_shortcuts.enter": "Öppna inlägg", "keyboard_shortcuts.enter": "Öppna inlägg",
"keyboard_shortcuts.favourite": "Favoritmarkera inlägg", "keyboard_shortcuts.favourite": "Favoritmarkera inlägg",
@ -445,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Visa/gömma text bakom CW", "keyboard_shortcuts.toggle_hidden": "Visa/gömma text bakom CW",
"keyboard_shortcuts.toggle_sensitivity": "Visa/gömma media", "keyboard_shortcuts.toggle_sensitivity": "Visa/gömma media",
"keyboard_shortcuts.toot": "Starta nytt inlägg", "keyboard_shortcuts.toot": "Starta nytt inlägg",
"keyboard_shortcuts.translate": "för att översätta ett inlägg",
"keyboard_shortcuts.unfocus": "Avfokusera skrivfält/sökfält", "keyboard_shortcuts.unfocus": "Avfokusera skrivfält/sökfält",
"keyboard_shortcuts.up": "Flytta uppåt i listan", "keyboard_shortcuts.up": "Flytta uppåt i listan",
"lightbox.close": "Stäng", "lightbox.close": "Stäng",
@ -466,6 +479,7 @@
"lists.delete": "Radera lista", "lists.delete": "Radera lista",
"lists.done": "Klar", "lists.done": "Klar",
"lists.edit": "Redigera lista", "lists.edit": "Redigera lista",
"lists.exclusive": "Dölj medlemmar i Hem flödet",
"lists.exclusive_hint": "Om någon är med på den här listan, göm dem i ditt Hemtidlinje för att undvika att se deras inlägg två gånger.", "lists.exclusive_hint": "Om någon är med på den här listan, göm dem i ditt Hemtidlinje för att undvika att se deras inlägg två gånger.",
"lists.find_users_to_add": "Hitta användare att lägga till", "lists.find_users_to_add": "Hitta användare att lägga till",
"lists.list_members": "Lista medlemmar", "lists.list_members": "Lista medlemmar",
@ -474,12 +488,14 @@
"lists.new_list_name": "Nytt listnamn", "lists.new_list_name": "Nytt listnamn",
"lists.no_lists_yet": "Ännu inga listor.", "lists.no_lists_yet": "Ännu inga listor.",
"lists.no_members_yet": "Inga medlemmar ännu.", "lists.no_members_yet": "Inga medlemmar ännu.",
"lists.no_results_found": "Inga resultat hittades.",
"lists.remove_member": "Ta bort", "lists.remove_member": "Ta bort",
"lists.replies_policy.followed": "Alla användare som följs", "lists.replies_policy.followed": "Alla användare som följs",
"lists.replies_policy.list": "Medlemmar i listan", "lists.replies_policy.list": "Medlemmar i listan",
"lists.replies_policy.none": "Ingen", "lists.replies_policy.none": "Ingen",
"lists.save": "Spara", "lists.save": "Spara",
"lists.search": "Sök", "lists.search": "Sök",
"lists.show_replies_to": "Inkludera svar från listmedlemmar till",
"load_pending": "{count, plural, one {# nytt objekt} other {# nya objekt}}", "load_pending": "{count, plural, one {# nytt objekt} other {# nya objekt}}",
"loading_indicator.label": "Laddar…", "loading_indicator.label": "Laddar…",
"media_gallery.hide": "Dölj", "media_gallery.hide": "Dölj",
@ -500,7 +516,7 @@
"navigation_bar.bookmarks": "Bokmärken", "navigation_bar.bookmarks": "Bokmärken",
"navigation_bar.community_timeline": "Lokal tidslinje", "navigation_bar.community_timeline": "Lokal tidslinje",
"navigation_bar.compose": "Författa nytt inlägg", "navigation_bar.compose": "Författa nytt inlägg",
"navigation_bar.direct": "Privata nämningar", "navigation_bar.direct": "Privata omnämnande",
"navigation_bar.discover": "Upptäck", "navigation_bar.discover": "Upptäck",
"navigation_bar.domain_blocks": "Dolda domäner", "navigation_bar.domain_blocks": "Dolda domäner",
"navigation_bar.explore": "Utforska", "navigation_bar.explore": "Utforska",
@ -532,12 +548,14 @@
"notification.annual_report.view": "Visa #Wrapstodon", "notification.annual_report.view": "Visa #Wrapstodon",
"notification.favourite": "{name} favoritmarkerade ditt inlägg", "notification.favourite": "{name} favoritmarkerade ditt inlägg",
"notification.favourite.name_and_others_with_link": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> har favoritmarkerat ditt inlägg", "notification.favourite.name_and_others_with_link": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> har favoritmarkerat ditt inlägg",
"notification.favourite_pm": "{name} favoritmarkerade ditt privata omnämnande",
"notification.favourite_pm.name_and_others_with_link": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> favoritmarkerade ditt privata omnämnande",
"notification.follow": "{name} följer dig", "notification.follow": "{name} följer dig",
"notification.follow.name_and_others": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> följer dig", "notification.follow.name_and_others": "{name} och <a>{count, plural, one {# annan} other {# andra}}</a> följer dig",
"notification.follow_request": "{name} har begärt att följa dig", "notification.follow_request": "{name} har begärt att följa dig",
"notification.follow_request.name_and_others": "{name} och {count, plural, one {# en annan} other {# andra}} har bett att följa dig", "notification.follow_request.name_and_others": "{name} och {count, plural, one {# en annan} other {# andra}} har bett att följa dig",
"notification.label.mention": "Nämn", "notification.label.mention": "Nämn",
"notification.label.private_mention": "Privat nämning", "notification.label.private_mention": "Privat omnämnande",
"notification.label.private_reply": "Privata svar", "notification.label.private_reply": "Privata svar",
"notification.label.reply": "Svar", "notification.label.reply": "Svar",
"notification.mention": "Nämn", "notification.mention": "Nämn",
@ -640,6 +658,7 @@
"onboarding.follows.done": "Färdig", "onboarding.follows.done": "Färdig",
"onboarding.follows.empty": "Tyvärr kan inga resultat visas just nu. Du kan prova att använda sökfunktionen eller utforska sidan för att hitta personer att följa, eller försök igen senare.", "onboarding.follows.empty": "Tyvärr kan inga resultat visas just nu. Du kan prova att använda sökfunktionen eller utforska sidan för att hitta personer att följa, eller försök igen senare.",
"onboarding.follows.search": "Sök", "onboarding.follows.search": "Sök",
"onboarding.follows.title": "Följ människor för att komma igång",
"onboarding.profile.discoverable": "Gör min profil upptäckbar", "onboarding.profile.discoverable": "Gör min profil upptäckbar",
"onboarding.profile.discoverable_hint": "När du väljer att vara upptäckbar på Mastodon kan dina inlägg visas i sök- och trendresultat, och din profil kan föreslås för personer med liknande intressen som du.", "onboarding.profile.discoverable_hint": "När du väljer att vara upptäckbar på Mastodon kan dina inlägg visas i sök- och trendresultat, och din profil kan föreslås för personer med liknande intressen som du.",
"onboarding.profile.display_name": "Visningsnamn", "onboarding.profile.display_name": "Visningsnamn",
@ -677,6 +696,7 @@
"privacy_policy.title": "Integritetspolicy", "privacy_policy.title": "Integritetspolicy",
"recommended": "Rekommenderas", "recommended": "Rekommenderas",
"refresh": "Läs om", "refresh": "Läs om",
"regeneration_indicator.please_stand_by": "Vänligen vänta.",
"relative_time.days": "{number}d", "relative_time.days": "{number}d",
"relative_time.full.days": "{number, plural, one {# dag} other {# dagar}} sedan", "relative_time.full.days": "{number, plural, one {# dag} other {# dagar}} sedan",
"relative_time.full.hours": "{number, plural, one {# timme} other {# timmar}} sedan", "relative_time.full.hours": "{number, plural, one {# timme} other {# timmar}} sedan",
@ -760,15 +780,18 @@
"search_results.accounts": "Profiler", "search_results.accounts": "Profiler",
"search_results.all": "Alla", "search_results.all": "Alla",
"search_results.hashtags": "Hashtaggar", "search_results.hashtags": "Hashtaggar",
"search_results.no_results": "Inga resultat.",
"search_results.no_search_yet": "Prova att söka efter inlägg, profiler eller hashtags.",
"search_results.see_all": "Visa alla", "search_results.see_all": "Visa alla",
"search_results.statuses": "Inlägg", "search_results.statuses": "Inlägg",
"search_results.title": "Sök efter \"{q}\"",
"server_banner.about_active_users": "Personer som använt denna server de senaste 30 dagarna (månatligt aktiva användare)", "server_banner.about_active_users": "Personer som använt denna server de senaste 30 dagarna (månatligt aktiva användare)",
"server_banner.active_users": "aktiva användare", "server_banner.active_users": "aktiva användare",
"server_banner.administered_by": "Administrerad av:", "server_banner.administered_by": "Administrerad av:",
"server_banner.is_one_of_many": "{domain} är en av de många oberoende Mastodon-servrar som du kan använda för att delta i Fediversen.", "server_banner.is_one_of_many": "{domain} är en av de många oberoende Mastodon-servrar som du kan använda för att delta i Fediversen.",
"server_banner.server_stats": "Serverstatistik:", "server_banner.server_stats": "Serverstatistik:",
"sign_in_banner.create_account": "Skapa konto", "sign_in_banner.create_account": "Skapa konto",
"sign_in_banner.follow_anyone": "Följ vem som helst över Fediverse och se allt i kronologisk ordning. Inga algoritmer, inga annonser och inga klickbeten i sikte.", "sign_in_banner.follow_anyone": "Följ vem som helst över Fediversum och se allt i kronologisk ordning. Inga algoritmer, annonser eller klickbeten i sikte.",
"sign_in_banner.mastodon_is": "Mastodon är det bästa sättet att hänga med i vad som händer.", "sign_in_banner.mastodon_is": "Mastodon är det bästa sättet att hänga med i vad som händer.",
"sign_in_banner.sign_in": "Logga in", "sign_in_banner.sign_in": "Logga in",
"sign_in_banner.sso_redirect": "Logga in eller registrera dig", "sign_in_banner.sso_redirect": "Logga in eller registrera dig",
@ -783,8 +806,8 @@
"status.copy": "Kopiera inläggslänk", "status.copy": "Kopiera inläggslänk",
"status.delete": "Radera", "status.delete": "Radera",
"status.detailed_status": "Detaljerad samtalsvy", "status.detailed_status": "Detaljerad samtalsvy",
"status.direct": "Nämn @{name} privat", "status.direct": "Omnämn @{name} privat",
"status.direct_indicator": "Privat nämning", "status.direct_indicator": "Privat omnämnande",
"status.edit": "Redigera", "status.edit": "Redigera",
"status.edited": "Senast ändrad {date}", "status.edited": "Senast ändrad {date}",
"status.edited_x_times": "Redigerad {count, plural, one {{count} gång} other {{count} gånger}}", "status.edited_x_times": "Redigerad {count, plural, one {{count} gång} other {{count} gånger}}",
@ -813,6 +836,7 @@
"status.reblogs.empty": "Ingen har boostat detta inlägg än. När någon gör det kommer de synas här.", "status.reblogs.empty": "Ingen har boostat detta inlägg än. När någon gör det kommer de synas här.",
"status.redraft": "Radera & gör om", "status.redraft": "Radera & gör om",
"status.remove_bookmark": "Ta bort bokmärke", "status.remove_bookmark": "Ta bort bokmärke",
"status.remove_favourite": "Ta bort från Favoriter",
"status.replied_in_thread": "Svarade i tråden", "status.replied_in_thread": "Svarade i tråden",
"status.replied_to": "Svarade på {name}", "status.replied_to": "Svarade på {name}",
"status.reply": "Svara", "status.reply": "Svara",
@ -834,6 +858,7 @@
"subscribed_languages.target": "Ändra språkprenumerationer för {target}", "subscribed_languages.target": "Ändra språkprenumerationer för {target}",
"tabs_bar.home": "Hem", "tabs_bar.home": "Hem",
"tabs_bar.notifications": "Aviseringar", "tabs_bar.notifications": "Aviseringar",
"terms_of_service.title": "Användarvillkor",
"time_remaining.days": "{number, plural, one {# dag} other {# dagar}} kvar", "time_remaining.days": "{number, plural, one {# dag} other {# dagar}} kvar",
"time_remaining.hours": "{number, plural, one {# timme} other {# timmar}} kvar", "time_remaining.hours": "{number, plural, one {# timme} other {# timmar}} kvar",
"time_remaining.minutes": "{number, plural, one {# minut} other {# minuter}} kvar", "time_remaining.minutes": "{number, plural, one {# minut} other {# minuter}} kvar",

View file

@ -400,6 +400,13 @@
"ignore_notifications_modal.not_followers_title": "เพิกเฉยการแจ้งเตือนจากผู้คนที่ไม่ได้ติดตามคุณ?", "ignore_notifications_modal.not_followers_title": "เพิกเฉยการแจ้งเตือนจากผู้คนที่ไม่ได้ติดตามคุณ?",
"ignore_notifications_modal.not_following_title": "เพิกเฉยการแจ้งเตือนจากผู้คนที่คุณไม่ได้ติดตาม?", "ignore_notifications_modal.not_following_title": "เพิกเฉยการแจ้งเตือนจากผู้คนที่คุณไม่ได้ติดตาม?",
"ignore_notifications_modal.private_mentions_title": "เพิกเฉยการแจ้งเตือนจากการกล่าวถึงแบบส่วนตัวที่ไม่พึงประสงค์?", "ignore_notifications_modal.private_mentions_title": "เพิกเฉยการแจ้งเตือนจากการกล่าวถึงแบบส่วนตัวที่ไม่พึงประสงค์?",
"interaction_modal.action.favourite": "เพื่อดำเนินการต่อ คุณจำเป็นต้องชื่นชอบจากบัญชีของคุณ",
"interaction_modal.action.follow": "เพื่อดำเนินการต่อ คุณจำเป็นต้องติดตามจากบัญชีของคุณ",
"interaction_modal.action.reblog": "เพื่อดำเนินการต่อ คุณจำเป็นต้องดันจากบัญชีของคุณ",
"interaction_modal.action.reply": "เพื่อดำเนินการต่อ คุณจำเป็นต้องตอบกลับจากบัญชีของคุณ",
"interaction_modal.action.vote": "เพื่อดำเนินการต่อ คุณจำเป็นต้องลงคะแนนจากบัญชีของคุณ",
"interaction_modal.go": "ไป",
"interaction_modal.no_account_yet": "ยังไม่มีบัญชี?",
"interaction_modal.on_another_server": "ในเซิร์ฟเวอร์อื่น", "interaction_modal.on_another_server": "ในเซิร์ฟเวอร์อื่น",
"interaction_modal.on_this_server": "ในเซิร์ฟเวอร์นี้", "interaction_modal.on_this_server": "ในเซิร์ฟเวอร์นี้",
"interaction_modal.title.favourite": "ชื่นชอบโพสต์ของ {name}", "interaction_modal.title.favourite": "ชื่นชอบโพสต์ของ {name}",
@ -407,6 +414,7 @@
"interaction_modal.title.reblog": "ดันโพสต์ของ {name}", "interaction_modal.title.reblog": "ดันโพสต์ของ {name}",
"interaction_modal.title.reply": "ตอบกลับโพสต์ของ {name}", "interaction_modal.title.reply": "ตอบกลับโพสต์ของ {name}",
"interaction_modal.title.vote": "ลงคะแนนในการสำรวจความคิดเห็นของ {name}", "interaction_modal.title.vote": "ลงคะแนนในการสำรวจความคิดเห็นของ {name}",
"interaction_modal.username_prompt": "เช่น {example}",
"intervals.full.days": "{number, plural, other {# วัน}}", "intervals.full.days": "{number, plural, other {# วัน}}",
"intervals.full.hours": "{number, plural, other {# ชั่วโมง}}", "intervals.full.hours": "{number, plural, other {# ชั่วโมง}}",
"intervals.full.minutes": "{number, plural, other {# นาที}}", "intervals.full.minutes": "{number, plural, other {# นาที}}",
@ -442,6 +450,7 @@
"keyboard_shortcuts.toggle_hidden": "แสดง/ซ่อนข้อความที่อยู่หลังคำเตือนเนื้อหา", "keyboard_shortcuts.toggle_hidden": "แสดง/ซ่อนข้อความที่อยู่หลังคำเตือนเนื้อหา",
"keyboard_shortcuts.toggle_sensitivity": "แสดง/ซ่อนสื่อ", "keyboard_shortcuts.toggle_sensitivity": "แสดง/ซ่อนสื่อ",
"keyboard_shortcuts.toot": "เริ่มโพสต์ใหม่", "keyboard_shortcuts.toot": "เริ่มโพสต์ใหม่",
"keyboard_shortcuts.translate": "เพื่อแปลโพสต์",
"keyboard_shortcuts.unfocus": "เลิกโฟกัสพื้นที่เขียนข้อความ/การค้นหา", "keyboard_shortcuts.unfocus": "เลิกโฟกัสพื้นที่เขียนข้อความ/การค้นหา",
"keyboard_shortcuts.up": "ย้ายขึ้นในรายการ", "keyboard_shortcuts.up": "ย้ายขึ้นในรายการ",
"lightbox.close": "ปิด", "lightbox.close": "ปิด",
@ -679,6 +688,8 @@
"privacy_policy.title": "นโยบายความเป็นส่วนตัว", "privacy_policy.title": "นโยบายความเป็นส่วนตัว",
"recommended": "แนะนำ", "recommended": "แนะนำ",
"refresh": "รีเฟรช", "refresh": "รีเฟรช",
"regeneration_indicator.please_stand_by": "โปรดรอสักครู่",
"regeneration_indicator.preparing_your_home_feed": "กำลังเตรียมฟีดหน้าแรกของคุณ…",
"relative_time.days": "{number} วัน", "relative_time.days": "{number} วัน",
"relative_time.full.days": "{number, plural, other {# วัน}}ที่แล้ว", "relative_time.full.days": "{number, plural, other {# วัน}}ที่แล้ว",
"relative_time.full.hours": "{number, plural, other {# ชั่วโมง}}ที่แล้ว", "relative_time.full.hours": "{number, plural, other {# ชั่วโมง}}ที่แล้ว",
@ -817,6 +828,7 @@
"status.reblogs.empty": "ยังไม่มีใครดันโพสต์นี้ เมื่อใครสักคนดัน เขาจะปรากฏที่นี่", "status.reblogs.empty": "ยังไม่มีใครดันโพสต์นี้ เมื่อใครสักคนดัน เขาจะปรากฏที่นี่",
"status.redraft": "ลบแล้วร่างใหม่", "status.redraft": "ลบแล้วร่างใหม่",
"status.remove_bookmark": "เอาที่คั่นหน้าออก", "status.remove_bookmark": "เอาที่คั่นหน้าออก",
"status.remove_favourite": "เอาออกจากรายการโปรด",
"status.replied_in_thread": "ตอบกลับในกระทู้", "status.replied_in_thread": "ตอบกลับในกระทู้",
"status.replied_to": "ตอบกลับ {name}", "status.replied_to": "ตอบกลับ {name}",
"status.reply": "ตอบกลับ", "status.reply": "ตอบกลับ",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "CW'den önceki yazıyı göstermek/gizlemek için", "keyboard_shortcuts.toggle_hidden": "CW'den önceki yazıyı göstermek/gizlemek için",
"keyboard_shortcuts.toggle_sensitivity": "Medyayı göstermek/gizlemek için", "keyboard_shortcuts.toggle_sensitivity": "Medyayı göstermek/gizlemek için",
"keyboard_shortcuts.toot": "Yeni bir gönderi başlat", "keyboard_shortcuts.toot": "Yeni bir gönderi başlat",
"keyboard_shortcuts.translate": "bir gönderiyi çevirmek için",
"keyboard_shortcuts.unfocus": "Aramada bir gönderiye odaklanmamak için", "keyboard_shortcuts.unfocus": "Aramada bir gönderiye odaklanmamak için",
"keyboard_shortcuts.up": "Listede yukarıya çıkmak için", "keyboard_shortcuts.up": "Listede yukarıya çıkmak için",
"lightbox.close": "Kapat", "lightbox.close": "Kapat",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Henüz hiç kimse bu gönderiyi yeniden paylaşmadı. Herhangi bir kullanıcı yeniden paylaştığında burada görüntülenecek.", "status.reblogs.empty": "Henüz hiç kimse bu gönderiyi yeniden paylaşmadı. Herhangi bir kullanıcı yeniden paylaştığında burada görüntülenecek.",
"status.redraft": "Sil,Düzenle ve yeniden-paylaş", "status.redraft": "Sil,Düzenle ve yeniden-paylaş",
"status.remove_bookmark": "Yer işaretini kaldır", "status.remove_bookmark": "Yer işaretini kaldır",
"status.remove_favourite": "Favorilerden kaldır",
"status.replied_in_thread": "Akışta yanıtlandı", "status.replied_in_thread": "Akışta yanıtlandı",
"status.replied_to": "{name} kullanıcısına yanıt verdi", "status.replied_to": "{name} kullanıcısına yanıt verdi",
"status.reply": "Yanıtla", "status.reply": "Yanıtla",

View file

@ -103,6 +103,7 @@
"annual_report.summary.most_used_hashtag.most_used_hashtag": "найчастіший хештег", "annual_report.summary.most_used_hashtag.most_used_hashtag": "найчастіший хештег",
"annual_report.summary.most_used_hashtag.none": "Немає", "annual_report.summary.most_used_hashtag.none": "Немає",
"annual_report.summary.new_posts.new_posts": "нові дописи", "annual_report.summary.new_posts.new_posts": "нові дописи",
"annual_report.summary.percentile.text": "<topLabel>Це виводить вас у топ</topLabel><percentage></percentage><bottomLabel> користувачів Mastodon.</bottomLabel>",
"annual_report.summary.percentile.we_wont_tell_bernie": "Ми не скажемо Bernie.", "annual_report.summary.percentile.we_wont_tell_bernie": "Ми не скажемо Bernie.",
"annual_report.summary.thanks": "Дякуємо, що ви є частиною Mastodon!", "annual_report.summary.thanks": "Дякуємо, що ви є частиною Mastodon!",
"attachments_list.unprocessed": "(не оброблено)", "attachments_list.unprocessed": "(не оброблено)",
@ -148,6 +149,7 @@
"column.firehose": "Стрічка новин", "column.firehose": "Стрічка новин",
"column.follow_requests": "Запити на підписку", "column.follow_requests": "Запити на підписку",
"column.home": "Головна", "column.home": "Головна",
"column.list_members": "Керувати учасниками списку",
"column.lists": "Списки", "column.lists": "Списки",
"column.mutes": "Приховані користувачі", "column.mutes": "Приховані користувачі",
"column.notifications": "Сповіщення", "column.notifications": "Сповіщення",
@ -237,6 +239,10 @@
"disabled_account_banner.text": "Ваш обліковий запис {disabledAccount} наразі вимкнений.", "disabled_account_banner.text": "Ваш обліковий запис {disabledAccount} наразі вимкнений.",
"dismissable_banner.community_timeline": "Це останні публічні дописи від людей, чиї облікові записи розміщені на {domain}.", "dismissable_banner.community_timeline": "Це останні публічні дописи від людей, чиї облікові записи розміщені на {domain}.",
"dismissable_banner.dismiss": "Відхилити", "dismissable_banner.dismiss": "Відхилити",
"dismissable_banner.explore_links": "Ці новини сьогодні найбільше поширюють у fediverse. Свіжіші новини, опубліковані більшою кількістю різних людей, оцінюються вище.",
"dismissable_banner.explore_statuses": "Ці дописи з усього fediverse сьогодні набирають популярності. Новіші дописи з більшою кількістю посилень і додавань у вибрані мають вищий рейтинг.",
"dismissable_banner.explore_tags": "Ці гештеґи сьогодні набувають популярності у fediverse. Гештеґи, якими користується більше людей, займають вищі позиції.",
"dismissable_banner.public_timeline": "Це найновіші загальнодоступні дописи від людей у федіверсі, на яких підписані люди в {domain}.",
"domain_block_modal.block": "Блокувати сервер", "domain_block_modal.block": "Блокувати сервер",
"domain_block_modal.block_account_instead": "Блокувати @{name} натомість", "domain_block_modal.block_account_instead": "Блокувати @{name} натомість",
"domain_block_modal.they_can_interact_with_old_posts": "Люди з цього сервера можуть взаємодіяти зі своїми старими дописами.", "domain_block_modal.they_can_interact_with_old_posts": "Люди з цього сервера можуть взаємодіяти зі своїми старими дописами.",
@ -325,7 +331,7 @@
"filter_modal.select_filter.title": "Фільтрувати цей допис", "filter_modal.select_filter.title": "Фільтрувати цей допис",
"filter_modal.title.status": "Фільтрувати допис", "filter_modal.title.status": "Фільтрувати допис",
"filter_warning.matches_filter": "Збігається з фільтром “<span>{title}</span>”", "filter_warning.matches_filter": "Збігається з фільтром “<span>{title}</span>”",
"filtered_notifications_banner.pending_requests": "Від {count, plural, =0 {жодної особи} one {однієї особи} few {# осіб} many {# осіб} other {# особи}}, котрих ви можете знати", "filtered_notifications_banner.pending_requests": "Від {count, plural, =0 {жодної особи} one {однієї особи} few {# осіб} many {# осіб} other {# особи}}, яких ви можете знати",
"filtered_notifications_banner.title": "Відфільтровані сповіщення", "filtered_notifications_banner.title": "Відфільтровані сповіщення",
"firehose.all": "Всі", "firehose.all": "Всі",
"firehose.local": "Цей сервер", "firehose.local": "Цей сервер",
@ -402,6 +408,10 @@
"ignore_notifications_modal.not_following_title": "Ігнорувати сповіщення від людей, на яких ви не підписалися?", "ignore_notifications_modal.not_following_title": "Ігнорувати сповіщення від людей, на яких ви не підписалися?",
"ignore_notifications_modal.private_mentions_title": "Ігнорувати сповіщення від небажаних приватних згадок?", "ignore_notifications_modal.private_mentions_title": "Ігнорувати сповіщення від небажаних приватних згадок?",
"interaction_modal.action.favourite": "Щоб продовжити, потрібно додати улюблене з вашого облікового запису.", "interaction_modal.action.favourite": "Щоб продовжити, потрібно додати улюблене з вашого облікового запису.",
"interaction_modal.action.follow": "Щоб іти далі, потрібно підписатися з вашого облікового запису.",
"interaction_modal.action.reblog": "Щоб іти далі, потрібно зробити реблог з вашого облікового запису.",
"interaction_modal.action.reply": "Щоб іти далі, потрібно відповісти з вашого облікового запису.",
"interaction_modal.action.vote": "Щоб іти далі, потрібно проголосувати з вашим обліковим записом.",
"interaction_modal.go": "Вперед", "interaction_modal.go": "Вперед",
"interaction_modal.no_account_yet": "Ще не зареєстровані?", "interaction_modal.no_account_yet": "Ще не зареєстровані?",
"interaction_modal.on_another_server": "На іншому сервері", "interaction_modal.on_another_server": "На іншому сервері",
@ -411,6 +421,7 @@
"interaction_modal.title.reblog": "Поширити допис {name}", "interaction_modal.title.reblog": "Поширити допис {name}",
"interaction_modal.title.reply": "Відповісти на допис {name}", "interaction_modal.title.reply": "Відповісти на допис {name}",
"interaction_modal.title.vote": "Проголосувати в опитуванні {name}", "interaction_modal.title.vote": "Проголосувати в опитуванні {name}",
"interaction_modal.username_prompt": "Наприклад, %{example}",
"intervals.full.days": "{number, plural, one {# день} few {# дні} other {# днів}}", "intervals.full.days": "{number, plural, one {# день} few {# дні} other {# днів}}",
"intervals.full.hours": "{number, plural, one {# година} few {# години} other {# годин}}", "intervals.full.hours": "{number, plural, one {# година} few {# години} other {# годин}}",
"intervals.full.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}", "intervals.full.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}",
@ -446,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "Показати/приховати текст під попередженням про вміст", "keyboard_shortcuts.toggle_hidden": "Показати/приховати текст під попередженням про вміст",
"keyboard_shortcuts.toggle_sensitivity": "Показати/приховати медіа", "keyboard_shortcuts.toggle_sensitivity": "Показати/приховати медіа",
"keyboard_shortcuts.toot": "Створити новий допис", "keyboard_shortcuts.toot": "Створити новий допис",
"keyboard_shortcuts.translate": "для перекладу повідомлення",
"keyboard_shortcuts.unfocus": "Розфокусуватися з нового допису чи пошуку", "keyboard_shortcuts.unfocus": "Розфокусуватися з нового допису чи пошуку",
"keyboard_shortcuts.up": "Рухатися вгору списком", "keyboard_shortcuts.up": "Рухатися вгору списком",
"lightbox.close": "Закрити", "lightbox.close": "Закрити",
@ -458,12 +470,32 @@
"link_preview.author": "Від {name}", "link_preview.author": "Від {name}",
"link_preview.more_from_author": "Більше від {name}", "link_preview.more_from_author": "Більше від {name}",
"link_preview.shares": "{count, plural, one {{counter} допис} few {{counter} дописи} many {{counter} дописів} other {{counter} допис}}", "link_preview.shares": "{count, plural, one {{counter} допис} few {{counter} дописи} many {{counter} дописів} other {{counter} допис}}",
"lists.add_member": "Додати",
"lists.add_to_list": "Додати до списку",
"lists.add_to_lists": "Додати {name} до списку",
"lists.create": "Створити",
"lists.create_a_list_to_organize": "Створіть новий список, щоб упорядкувати домашню стрічку",
"lists.create_list": "Створити список",
"lists.delete": "Видалити список", "lists.delete": "Видалити список",
"lists.done": "Готово",
"lists.edit": "Редагувати список", "lists.edit": "Редагувати список",
"lists.exclusive": "Сховати учасників на головній сторінці",
"lists.exclusive_hint": "Якщо хтось є у цьому списку, сховайте їх на своїй домашній сторінці, щоб не бачити їхні дописи двічі.",
"lists.find_users_to_add": "Знайти користувачів, щоб додати їх",
"lists.list_members": "Учасники списку",
"lists.list_members_count": "{count, plural, one {# member} other {# members}}",
"lists.list_name": "Назва списку",
"lists.new_list_name": "Нова назва списку",
"lists.no_lists_yet": "Поки що немає списків.",
"lists.no_members_yet": "Ще немає учасників.",
"lists.no_results_found": "Результатів не знайдено.",
"lists.remove_member": "Видалити",
"lists.replies_policy.followed": "Будь-який відстежуваний користувач", "lists.replies_policy.followed": "Будь-який відстежуваний користувач",
"lists.replies_policy.list": "Учасники списку", "lists.replies_policy.list": "Учасники списку",
"lists.replies_policy.none": "Ніхто", "lists.replies_policy.none": "Ніхто",
"lists.save": "Зберегти",
"lists.search": "Пошук", "lists.search": "Пошук",
"lists.show_replies_to": "Включати відповіді також зі списку учасників",
"load_pending": "{count, plural, one {# новий елемент} other {# нових елементів}}", "load_pending": "{count, plural, one {# новий елемент} other {# нових елементів}}",
"loading_indicator.label": "Завантаження…", "loading_indicator.label": "Завантаження…",
"media_gallery.hide": "Сховати", "media_gallery.hide": "Сховати",
@ -516,6 +548,8 @@
"notification.annual_report.view": "Переглянути #Wrapstodon", "notification.annual_report.view": "Переглянути #Wrapstodon",
"notification.favourite": "Ваш допис сподобався {name}", "notification.favourite": "Ваш допис сподобався {name}",
"notification.favourite.name_and_others_with_link": "{name} та <a>{count, plural, one {# інший} few {# інших} many {# інших} other {# інший}}</a> вподобали ваш допис", "notification.favourite.name_and_others_with_link": "{name} та <a>{count, plural, one {# інший} few {# інших} many {# інших} other {# інший}}</a> вподобали ваш допис",
"notification.favourite_pm": "{name} додав вашу особисту згадку до вибраного",
"notification.favourite_pm.name_and_others_with_link": "{name} та <a>{count, plural, one {# other} other {# others}}</a> додали вашу особисту згадку до вибраного",
"notification.follow": "{name} підписалися на вас", "notification.follow": "{name} підписалися на вас",
"notification.follow.name_and_others": "{name} та <a>{count, plural, one {# інший} few {# інших} many {# інших} other {# інший}}</a> стежать за вами", "notification.follow.name_and_others": "{name} та <a>{count, plural, one {# інший} few {# інших} many {# інших} other {# інший}}</a> стежать за вами",
"notification.follow_request": "{name} відправили запит на підписку", "notification.follow_request": "{name} відправили запит на підписку",
@ -663,6 +697,7 @@
"recommended": "Рекомендовано", "recommended": "Рекомендовано",
"refresh": "Оновити", "refresh": "Оновити",
"regeneration_indicator.please_stand_by": "Будь ласка, очікуйте.", "regeneration_indicator.please_stand_by": "Будь ласка, очікуйте.",
"regeneration_indicator.preparing_your_home_feed": "Готування вашої головної стрічки новин…",
"relative_time.days": "{number}д", "relative_time.days": "{number}д",
"relative_time.full.days": "{number, plural, one {# день} few {# дні} other {# днів}} тому", "relative_time.full.days": "{number, plural, one {# день} few {# дні} other {# днів}} тому",
"relative_time.full.hours": "{number, plural, one {# година} few {# години} other {# годин}} тому", "relative_time.full.hours": "{number, plural, one {# година} few {# години} other {# годин}} тому",
@ -802,6 +837,7 @@
"status.reblogs.empty": "Ніхто ще не поширив цей допис. Коли хтось це зроблять, вони будуть зображені тут.", "status.reblogs.empty": "Ніхто ще не поширив цей допис. Коли хтось це зроблять, вони будуть зображені тут.",
"status.redraft": "Видалити та виправити", "status.redraft": "Видалити та виправити",
"status.remove_bookmark": "Видалити закладку", "status.remove_bookmark": "Видалити закладку",
"status.remove_favourite": "Видалити з улюблених",
"status.replied_in_thread": "Відповідь у потоці", "status.replied_in_thread": "Відповідь у потоці",
"status.replied_to": "Відповідь для {name}", "status.replied_to": "Відповідь для {name}",
"status.reply": "Відповісти", "status.reply": "Відповісти",
@ -823,6 +859,7 @@
"subscribed_languages.target": "Змінити підписані мови для {target}", "subscribed_languages.target": "Змінити підписані мови для {target}",
"tabs_bar.home": "Головна", "tabs_bar.home": "Головна",
"tabs_bar.notifications": "Сповіщення", "tabs_bar.notifications": "Сповіщення",
"terms_of_service.title": "Умови використання",
"time_remaining.days": "{number, plural, one {# день} few {# дні} other {# днів}}", "time_remaining.days": "{number, plural, one {# день} few {# дні} other {# днів}}",
"time_remaining.hours": "{number, plural, one {# година} few {# години} other {# годин}}", "time_remaining.hours": "{number, plural, one {# година} few {# години} other {# годин}}",
"time_remaining.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}", "time_remaining.minutes": "{number, plural, one {# хвилина} few {# хвилини} other {# хвилин}}",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "ẩn/hiện nội dung ẩn", "keyboard_shortcuts.toggle_hidden": "ẩn/hiện nội dung ẩn",
"keyboard_shortcuts.toggle_sensitivity": "ẩn/hiện ảnh hoặc video", "keyboard_shortcuts.toggle_sensitivity": "ẩn/hiện ảnh hoặc video",
"keyboard_shortcuts.toot": "soạn tút mới", "keyboard_shortcuts.toot": "soạn tút mới",
"keyboard_shortcuts.translate": "dịch tút",
"keyboard_shortcuts.unfocus": "đưa con trỏ ra khỏi ô soạn thảo hoặc ô tìm kiếm", "keyboard_shortcuts.unfocus": "đưa con trỏ ra khỏi ô soạn thảo hoặc ô tìm kiếm",
"keyboard_shortcuts.up": "di chuyển lên trên danh sách", "keyboard_shortcuts.up": "di chuyển lên trên danh sách",
"lightbox.close": "Đóng", "lightbox.close": "Đóng",
@ -836,6 +837,7 @@
"status.reblogs.empty": "Tút này chưa có ai đăng lại. Nếu có, nó sẽ hiển thị ở đây.", "status.reblogs.empty": "Tút này chưa có ai đăng lại. Nếu có, nó sẽ hiển thị ở đây.",
"status.redraft": "Xóa và viết lại", "status.redraft": "Xóa và viết lại",
"status.remove_bookmark": "Bỏ lưu", "status.remove_bookmark": "Bỏ lưu",
"status.remove_favourite": "Bỏ thích",
"status.replied_in_thread": "Trả lời thảo luận", "status.replied_in_thread": "Trả lời thảo luận",
"status.replied_to": "Trả lời {name}", "status.replied_to": "Trả lời {name}",
"status.reply": "Trả lời", "status.reply": "Trả lời",

View file

@ -186,7 +186,7 @@
"compose_form.poll.switch_to_single": "将投票改为单选", "compose_form.poll.switch_to_single": "将投票改为单选",
"compose_form.poll.type": "类型", "compose_form.poll.type": "类型",
"compose_form.publish": "发布", "compose_form.publish": "发布",
"compose_form.publish_form": "新嘟文", "compose_form.publish_form": "新嘟文",
"compose_form.reply": "回复", "compose_form.reply": "回复",
"compose_form.save_changes": "更改", "compose_form.save_changes": "更改",
"compose_form.spoiler.marked": "移除内容警告", "compose_form.spoiler.marked": "移除内容警告",
@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "显示或隐藏被折叠的正文", "keyboard_shortcuts.toggle_hidden": "显示或隐藏被折叠的正文",
"keyboard_shortcuts.toggle_sensitivity": "显示/隐藏媒体", "keyboard_shortcuts.toggle_sensitivity": "显示/隐藏媒体",
"keyboard_shortcuts.toot": "发送新嘟文", "keyboard_shortcuts.toot": "发送新嘟文",
"keyboard_shortcuts.translate": "翻译嘟文",
"keyboard_shortcuts.unfocus": "取消输入/搜索", "keyboard_shortcuts.unfocus": "取消输入/搜索",
"keyboard_shortcuts.up": "在列表中让光标上移", "keyboard_shortcuts.up": "在列表中让光标上移",
"lightbox.close": "关闭", "lightbox.close": "关闭",
@ -836,6 +837,7 @@
"status.reblogs.empty": "还没有人转嘟过此条嘟文。转嘟此嘟文的人会显示在这里。", "status.reblogs.empty": "还没有人转嘟过此条嘟文。转嘟此嘟文的人会显示在这里。",
"status.redraft": "删除并重新编辑", "status.redraft": "删除并重新编辑",
"status.remove_bookmark": "取消收藏", "status.remove_bookmark": "取消收藏",
"status.remove_favourite": "从喜欢列表中移除",
"status.replied_in_thread": "回复嘟文串", "status.replied_in_thread": "回复嘟文串",
"status.replied_to": "回复 {name}", "status.replied_to": "回复 {name}",
"status.reply": "回复", "status.reply": "回复",

View file

@ -457,6 +457,7 @@
"keyboard_shortcuts.toggle_hidden": "顯示或隱藏於內容警告之後的嘟文", "keyboard_shortcuts.toggle_hidden": "顯示或隱藏於內容警告之後的嘟文",
"keyboard_shortcuts.toggle_sensitivity": "顯示或隱藏媒體", "keyboard_shortcuts.toggle_sensitivity": "顯示或隱藏媒體",
"keyboard_shortcuts.toot": "發個新嘟文", "keyboard_shortcuts.toot": "發個新嘟文",
"keyboard_shortcuts.translate": "翻譯嘟文",
"keyboard_shortcuts.unfocus": "跳離文字撰寫區塊或搜尋框", "keyboard_shortcuts.unfocus": "跳離文字撰寫區塊或搜尋框",
"keyboard_shortcuts.up": "向上移動", "keyboard_shortcuts.up": "向上移動",
"lightbox.close": "關閉", "lightbox.close": "關閉",
@ -835,7 +836,8 @@
"status.reblogs": "{count, plural, other {則轉嘟}}", "status.reblogs": "{count, plural, other {則轉嘟}}",
"status.reblogs.empty": "還沒有人轉嘟過這則嘟文。當有人轉嘟時,它將於此顯示。", "status.reblogs.empty": "還沒有人轉嘟過這則嘟文。當有人轉嘟時,它將於此顯示。",
"status.redraft": "刪除並重新編輯", "status.redraft": "刪除並重新編輯",
"status.remove_bookmark": "移除書籤", "status.remove_bookmark": "自書籤中移除",
"status.remove_favourite": "自最愛中移除",
"status.replied_in_thread": "於討論串中回覆", "status.replied_in_thread": "於討論串中回覆",
"status.replied_to": "回覆 {name}", "status.replied_to": "回覆 {name}",
"status.reply": "回覆", "status.reply": "回覆",

View file

@ -1,50 +1,11 @@
import { fromJS, Map as ImmutableMap, List as ImmutableList } from 'immutable'; import { fromJS, Map as ImmutableMap } from 'immutable';
import { blockDomainSuccess } from 'mastodon/actions/domain_blocks';
import { timelineDelete } from 'mastodon/actions/timelines_typed';
import { import {
authorizeFollowRequestSuccess,
blockAccountSuccess,
muteAccountSuccess,
rejectFollowRequestSuccess,
} from '../actions/accounts';
import {
focusApp,
unfocusApp,
} from '../actions/app';
import {
fetchMarkers,
} from '../actions/markers';
import { clearNotifications } from '../actions/notification_groups';
import {
notificationsUpdate,
NOTIFICATIONS_EXPAND_SUCCESS,
NOTIFICATIONS_EXPAND_REQUEST,
NOTIFICATIONS_EXPAND_FAIL,
NOTIFICATIONS_FILTER_SET,
NOTIFICATIONS_SCROLL_TOP,
NOTIFICATIONS_LOAD_PENDING,
NOTIFICATIONS_MOUNT,
NOTIFICATIONS_UNMOUNT,
NOTIFICATIONS_MARK_AS_READ,
NOTIFICATIONS_SET_BROWSER_SUPPORT, NOTIFICATIONS_SET_BROWSER_SUPPORT,
NOTIFICATIONS_SET_BROWSER_PERMISSION, NOTIFICATIONS_SET_BROWSER_PERMISSION,
} from '../actions/notifications'; } from '../actions/notifications';
import { disconnectTimeline } from '../actions/timelines';
import { compareId } from '../compare_id';
const initialState = ImmutableMap({ const initialState = ImmutableMap({
pendingItems: ImmutableList(),
items: ImmutableList(),
hasMore: true,
top: false,
mounted: 0,
unread: 0,
lastReadId: '0',
readMarkerId: '0',
isTabVisible: true,
isLoading: 0,
browserSupport: false, browserSupport: false,
browserPermission: 'default', browserPermission: 'default',
}); });
@ -62,248 +23,8 @@ export const notificationToMap = notification => ImmutableMap({
moderation_warning: notification.moderation_warning ? fromJS(notification.moderation_warning) : null, moderation_warning: notification.moderation_warning ? fromJS(notification.moderation_warning) : null,
}); });
const normalizeNotification = (state, notification, usePendingItems) => {
const top = state.get('top');
// Under currently unknown conditions, the client may receive duplicates from the server
if (state.get('pendingItems').some((item) => item?.get('id') === notification.id) || state.get('items').some((item) => item?.get('id') === notification.id)) {
return state;
}
if (usePendingItems || !state.get('pendingItems').isEmpty()) {
return state.update('pendingItems', list => list.unshift(notificationToMap(notification))).update('unread', unread => unread + 1);
}
if (shouldCountUnreadNotifications(state)) {
state = state.update('unread', unread => unread + 1);
} else {
state = state.set('lastReadId', notification.id);
}
return state.update('items', list => {
if (top && list.size > 40) {
list = list.take(20);
}
return list.unshift(notificationToMap(notification));
});
};
const expandNormalizedNotifications = (state, notifications, next, isLoadingMore, isLoadingRecent, usePendingItems) => {
// This method is pretty tricky because:
// - existing notifications might be out of order
// - the existing notifications may have gaps, most often explicitly noted with a `null` item
// - ideally, we don't want it to reorder existing items
// - `notifications` may include items that are already included
// - this function can be called either to fill in a gap, or load newer items
const lastReadId = state.get('lastReadId');
const newItems = ImmutableList(notifications.map(notificationToMap));
return state.withMutations(mutable => {
if (!newItems.isEmpty()) {
usePendingItems = isLoadingRecent && (usePendingItems || !mutable.get('pendingItems').isEmpty());
mutable.update(usePendingItems ? 'pendingItems' : 'items', oldItems => {
// If called to poll *new* notifications, we just need to add them on top without duplicates
if (isLoadingRecent) {
const idsToCheck = oldItems.map(item => item?.get('id')).toSet();
const insertedItems = newItems.filterNot(item => idsToCheck.includes(item.get('id')));
return insertedItems.concat(oldItems);
}
// If called to expand more (presumably older than any known to the WebUI), we just have to
// add them to the bottom without duplicates
if (isLoadingMore) {
const idsToCheck = oldItems.map(item => item?.get('id')).toSet();
const insertedItems = newItems.filterNot(item => idsToCheck.includes(item.get('id')));
return oldItems.concat(insertedItems);
}
// Now this gets tricky, as we don't necessarily know for sure where the gap to fill is,
// and some items in the timeline may not be properly ordered.
// However, we know that `newItems.last()` is the oldest item that was requested and that
// there is no “hole” between `newItems.last()` and `newItems.first()`.
// First, find the furthest (if properly sorted, oldest) item in the notifications that is
// newer than the oldest fetched one, as it's most likely that it delimits the gap.
// Start the gap *after* that item.
const lastIndex = oldItems.findLastIndex(item => item !== null && compareId(item.get('id'), newItems.last().get('id')) >= 0) + 1;
// Then, try to find the furthest (if properly sorted, oldest) item in the notifications that
// is newer than the most recent fetched one, as it delimits a section comprised of only
// items older or within `newItems` (or that were deleted from the server, so should be removed
// anyway).
// Stop the gap *after* that item.
const firstIndex = oldItems.take(lastIndex).findLastIndex(item => item !== null && compareId(item.get('id'), newItems.first().get('id')) > 0) + 1;
// At this point:
// - no `oldItems` after `firstIndex` is newer than any of the `newItems`
// - all `oldItems` after `lastIndex` are older than every of the `newItems`
// - it is possible for items in the replaced slice to be older than every `newItems`
// - it is possible for items before `firstIndex` to be in the `newItems` range
// Therefore:
// - to avoid losing items, items from the replaced slice that are older than `newItems`
// should be added in the back.
// - to avoid duplicates, `newItems` should be checked the first `firstIndex` items of
// `oldItems`
const idsToCheck = oldItems.take(firstIndex).map(item => item?.get('id')).toSet();
const insertedItems = newItems.filterNot(item => idsToCheck.includes(item.get('id')));
const olderItems = oldItems.slice(firstIndex, lastIndex).filter(item => item !== null && compareId(item.get('id'), newItems.last().get('id')) < 0);
return oldItems.take(firstIndex).concat(
insertedItems,
olderItems,
oldItems.skip(lastIndex),
);
});
}
if (!next) {
mutable.set('hasMore', false);
}
if (shouldCountUnreadNotifications(state)) {
mutable.set('unread', mutable.get('pendingItems').count(item => item !== null) + mutable.get('items').count(item => item && compareId(item.get('id'), lastReadId) > 0));
} else {
const mostRecent = newItems.find(item => item !== null);
if (mostRecent && compareId(lastReadId, mostRecent.get('id')) < 0) {
mutable.set('lastReadId', mostRecent.get('id'));
}
}
mutable.update('isLoading', (nbLoading) => nbLoading - 1);
});
};
const filterNotifications = (state, accountIds, type) => {
const helper = list => list.filterNot(item => item !== null && accountIds.includes(item.get('account')) && (type === undefined || type === item.get('type')));
return state.update('items', helper).update('pendingItems', helper);
};
const clearUnread = (state) => {
state = state.set('unread', state.get('pendingItems').size);
const lastNotification = state.get('items').find(item => item !== null);
return state.set('lastReadId', lastNotification ? lastNotification.get('id') : '0');
};
const updateTop = (state, top) => {
state = state.set('top', top);
if (!shouldCountUnreadNotifications(state)) {
state = clearUnread(state);
}
return state;
};
const deleteByStatus = (state, statusId) => {
const lastReadId = state.get('lastReadId');
if (shouldCountUnreadNotifications(state)) {
const deletedUnread = state.get('items').filter(item => item !== null && item.get('status') === statusId && compareId(item.get('id'), lastReadId) > 0);
state = state.update('unread', unread => unread - deletedUnread.size);
}
const helper = list => list.filterNot(item => item !== null && item.get('status') === statusId);
const deletedUnread = state.get('pendingItems').filter(item => item !== null && item.get('status') === statusId && compareId(item.get('id'), lastReadId) > 0);
state = state.update('unread', unread => unread - deletedUnread.size);
return state.update('items', helper).update('pendingItems', helper);
};
const updateMounted = (state) => {
state = state.update('mounted', count => count + 1);
if (!shouldCountUnreadNotifications(state, state.get('mounted') === 1)) {
state = state.set('readMarkerId', state.get('lastReadId'));
state = clearUnread(state);
}
return state;
};
const updateVisibility = (state, visibility) => {
state = state.set('isTabVisible', visibility);
if (!shouldCountUnreadNotifications(state)) {
state = state.set('readMarkerId', state.get('lastReadId'));
state = clearUnread(state);
}
return state;
};
const shouldCountUnreadNotifications = (state, ignoreScroll = false) => {
const isTabVisible = state.get('isTabVisible');
const isOnTop = state.get('top');
const isMounted = state.get('mounted') > 0;
const lastReadId = state.get('lastReadId');
const lastItem = state.get('items').findLast(item => item !== null);
const lastItemReached = !state.get('hasMore') || lastReadId === '0' || (lastItem && compareId(lastItem.get('id'), lastReadId) <= 0);
return !(isTabVisible && (ignoreScroll || isOnTop) && isMounted && lastItemReached);
};
const recountUnread = (state, last_read_id) => {
return state.withMutations(mutable => {
if (compareId(last_read_id, mutable.get('lastReadId')) > 0) {
mutable.set('lastReadId', last_read_id);
}
if (compareId(last_read_id, mutable.get('readMarkerId')) > 0) {
mutable.set('readMarkerId', last_read_id);
}
if (state.get('unread') > 0 || shouldCountUnreadNotifications(state)) {
mutable.set('unread', mutable.get('pendingItems').count(item => item !== null) + mutable.get('items').count(item => item && compareId(item.get('id'), last_read_id) > 0));
}
});
};
export default function notifications(state = initialState, action) { export default function notifications(state = initialState, action) {
switch(action.type) { switch(action.type) {
case fetchMarkers.fulfilled.type:
return action.payload.markers.notifications ? recountUnread(state, action.payload.markers.notifications.last_read_id) : state;
case NOTIFICATIONS_MOUNT:
return updateMounted(state);
case NOTIFICATIONS_UNMOUNT:
return state.update('mounted', count => count - 1);
case focusApp.type:
return updateVisibility(state, true);
case unfocusApp.type:
return updateVisibility(state, false);
case NOTIFICATIONS_LOAD_PENDING:
return state.update('items', list => state.get('pendingItems').concat(list.take(40))).set('pendingItems', ImmutableList()).set('unread', 0);
case NOTIFICATIONS_EXPAND_REQUEST:
return state.update('isLoading', (nbLoading) => nbLoading + 1);
case NOTIFICATIONS_EXPAND_FAIL:
return state.update('isLoading', (nbLoading) => nbLoading - 1);
case NOTIFICATIONS_FILTER_SET:
return state.set('items', ImmutableList()).set('pendingItems', ImmutableList()).set('hasMore', true);
case NOTIFICATIONS_SCROLL_TOP:
return updateTop(state, action.top);
case notificationsUpdate.type:
return normalizeNotification(state, action.payload.notification, action.payload.usePendingItems);
case NOTIFICATIONS_EXPAND_SUCCESS:
return expandNormalizedNotifications(state, action.notifications, action.next, action.isLoadingMore, action.isLoadingRecent, action.usePendingItems);
case blockAccountSuccess.type:
return filterNotifications(state, [action.payload.relationship.id]);
case muteAccountSuccess.type:
return action.payload.relationship.muting_notifications ? filterNotifications(state, [action.payload.relationship.id]) : state;
case blockDomainSuccess.type:
return filterNotifications(state, action.payload.accounts);
case authorizeFollowRequestSuccess.type:
case rejectFollowRequestSuccess.type:
return filterNotifications(state, [action.payload.id], 'follow_request');
case clearNotifications.pending.type:
return state.set('items', ImmutableList()).set('pendingItems', ImmutableList()).set('hasMore', false);
case timelineDelete.type:
return deleteByStatus(state, action.payload.statusId);
case disconnectTimeline.type:
return action.payload.timeline === 'home' ?
state.update(action.payload.usePendingItems ? 'pendingItems' : 'items', items => items.first() ? items.unshift(null) : items) :
state;
case NOTIFICATIONS_MARK_AS_READ: {
const lastNotification = state.get('items').find(item => item !== null);
return lastNotification ? recountUnread(state, lastNotification.get('id')) : state;
}
case NOTIFICATIONS_SET_BROWSER_SUPPORT: case NOTIFICATIONS_SET_BROWSER_SUPPORT:
return state.set('browserSupport', action.value); return state.set('browserSupport', action.value);
case NOTIFICATIONS_SET_BROWSER_PERMISSION: case NOTIFICATIONS_SET_BROWSER_PERMISSION:

View file

@ -1610,7 +1610,7 @@ body > [data-popper-placement] {
padding: 0 10px; padding: 0 10px;
.detailed-status__display-name { .detailed-status__display-name {
color: lighten($inverted-text-color, 16%); color: $dark-text-color;
span { span {
display: inline; display: inline;

View file

@ -671,6 +671,10 @@ code {
} }
} }
} }
.status-card {
contain: unset;
}
} }
.block-icon { .block-icon {

View file

@ -13,7 +13,7 @@ class ActivityPub::TagManager
}.freeze }.freeze
def public_collection?(uri) def public_collection?(uri)
uri == COLLECTIONS[:public] || uri == 'as:Public' || uri == 'Public' uri == COLLECTIONS[:public] || %w(as:Public Public).include?(uri)
end end
def url_for(target) def url_for(target)

View file

@ -1,6 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
class AnnualReport::CommonlyInteractedWithAccounts < AnnualReport::Source class AnnualReport::CommonlyInteractedWithAccounts < AnnualReport::Source
MINIMUM_INTERACTIONS = 1
SET_SIZE = 40 SET_SIZE = 40
def generate def generate
@ -17,6 +18,10 @@ class AnnualReport::CommonlyInteractedWithAccounts < AnnualReport::Source
private private
def commonly_interacted_with_accounts def commonly_interacted_with_accounts
report_statuses.where.not(in_reply_to_account_id: @account.id).group(:in_reply_to_account_id).having('count(*) > 1').order(count_all: :desc).limit(SET_SIZE).count report_statuses.where.not(in_reply_to_account_id: @account.id).group(:in_reply_to_account_id).having(minimum_interaction_count).order(count_all: :desc).limit(SET_SIZE).count
end
def minimum_interaction_count
Arel.star.count.gt(MINIMUM_INTERACTIONS)
end end
end end

View file

@ -1,6 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
class AnnualReport::MostRebloggedAccounts < AnnualReport::Source class AnnualReport::MostRebloggedAccounts < AnnualReport::Source
MINIMUM_REBLOGS = 1
SET_SIZE = 10 SET_SIZE = 10
def generate def generate
@ -17,6 +18,10 @@ class AnnualReport::MostRebloggedAccounts < AnnualReport::Source
private private
def most_reblogged_accounts def most_reblogged_accounts
report_statuses.where.not(reblog_of_id: nil).joins(reblog: :account).group(accounts: [:id]).having('count(*) > 1').order(count_all: :desc).limit(SET_SIZE).count report_statuses.where.not(reblog_of_id: nil).joins(reblog: :account).group(accounts: [:id]).having(minimum_reblog_count).order(count_all: :desc).limit(SET_SIZE).count
end
def minimum_reblog_count
Arel.star.count.gt(MINIMUM_REBLOGS)
end end
end end

View file

@ -1,6 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
class AnnualReport::TopHashtags < AnnualReport::Source class AnnualReport::TopHashtags < AnnualReport::Source
MINIMUM_TAGGINGS = 1
SET_SIZE = 40 SET_SIZE = 40
def generate def generate
@ -17,7 +18,11 @@ class AnnualReport::TopHashtags < AnnualReport::Source
private private
def top_hashtags def top_hashtags
Tag.joins(:statuses).where(statuses: { id: report_statuses.select(:id) }).group(coalesced_tag_names).having('count(*) > 1').order(count_all: :desc).limit(SET_SIZE).count Tag.joins(:statuses).where(statuses: { id: report_statuses.select(:id) }).group(coalesced_tag_names).having(minimum_taggings_count).order(count_all: :desc).limit(SET_SIZE).count
end
def minimum_taggings_count
Arel.star.count.gt(MINIMUM_TAGGINGS)
end end
def coalesced_tag_names def coalesced_tag_names

View file

@ -3,14 +3,18 @@
module ApplicationExtension module ApplicationExtension
extend ActiveSupport::Concern extend ActiveSupport::Concern
APP_NAME_LIMIT = 60
APP_REDIRECT_URI_LIMIT = 2_000
APP_WEBSITE_LIMIT = 2_000
included do included do
include Redisable include Redisable
has_many :created_users, class_name: 'User', foreign_key: 'created_by_application_id', inverse_of: :created_by_application has_many :created_users, class_name: 'User', foreign_key: 'created_by_application_id', inverse_of: :created_by_application
validates :name, length: { maximum: 60 } validates :name, length: { maximum: APP_NAME_LIMIT }
validates :website, url: true, length: { maximum: 2_000 }, if: :website? validates :redirect_uri, length: { maximum: APP_REDIRECT_URI_LIMIT }
validates :redirect_uri, length: { maximum: 2_000 } validates :website, url: true, length: { maximum: APP_WEBSITE_LIMIT }, if: :website?
# The relationship used between Applications and AccessTokens is using # The relationship used between Applications and AccessTokens is using
# dependent: delete_all, which means the ActiveRecord callback in # dependent: delete_all, which means the ActiveRecord callback in

View file

@ -56,7 +56,7 @@ class AdminMailer < ApplicationMailer
end end
def new_software_updates def new_software_updates
@software_updates = SoftwareUpdate.all.to_a.sort_by(&:gem_version) @software_updates = SoftwareUpdate.by_version
locale_for_account(@me) do locale_for_account(@me) do
mail subject: default_i18n_subject(instance: @instance) mail subject: default_i18n_subject(instance: @instance)
@ -64,7 +64,7 @@ class AdminMailer < ApplicationMailer
end end
def new_critical_software_updates def new_critical_software_updates
@software_updates = SoftwareUpdate.where(urgent: true).to_a.sort_by(&:gem_version) @software_updates = SoftwareUpdate.urgent.by_version
locale_for_account(@me) do locale_for_account(@me) do
mail subject: default_i18n_subject(instance: @instance) mail subject: default_i18n_subject(instance: @instance)

View file

@ -114,7 +114,7 @@ class Account < ApplicationRecord
validates_with UniqueUsernameValidator, if: -> { will_save_change_to_username? } validates_with UniqueUsernameValidator, if: -> { will_save_change_to_username? }
# Remote user validations, also applies to internal actors # Remote user validations, also applies to internal actors
validates :username, format: { with: USERNAME_ONLY_RE }, if: -> { (!local? || actor_type == 'Application') && will_save_change_to_username? } validates :username, format: { with: USERNAME_ONLY_RE }, if: -> { (remote? || actor_type == 'Application') && will_save_change_to_username? }
# Remote user validations # Remote user validations
validates :uri, presence: true, unless: :local?, on: :create validates :uri, presence: true, unless: :local?, on: :create
@ -125,6 +125,7 @@ class Account < ApplicationRecord
validates :display_name, length: { maximum: DISPLAY_NAME_LENGTH_LIMIT }, if: -> { local? && will_save_change_to_display_name? } validates :display_name, length: { maximum: DISPLAY_NAME_LENGTH_LIMIT }, if: -> { local? && will_save_change_to_display_name? }
validates :note, note_length: { maximum: NOTE_LENGTH_LIMIT }, if: -> { local? && will_save_change_to_note? } validates :note, note_length: { maximum: NOTE_LENGTH_LIMIT }, if: -> { local? && will_save_change_to_note? }
validates :fields, length: { maximum: DEFAULT_FIELDS_SIZE }, if: -> { local? && will_save_change_to_fields? } validates :fields, length: { maximum: DEFAULT_FIELDS_SIZE }, if: -> { local? && will_save_change_to_fields? }
validates_with EmptyProfileFieldNamesValidator, if: -> { local? && will_save_change_to_fields? }
with_options on: :create do with_options on: :create do
validates :uri, absence: true, if: :local? validates :uri, absence: true, if: :local?
validates :inbox_url, absence: true, if: :local? validates :inbox_url, absence: true, if: :local?
@ -192,6 +193,10 @@ class Account < ApplicationRecord
domain.nil? domain.nil?
end end
def remote?
domain.present?
end
def moved? def moved?
moved_to_account_id.present? moved_to_account_id.present?
end end
@ -339,7 +344,7 @@ class Account < ApplicationRecord
if attributes.is_a?(Hash) if attributes.is_a?(Hash)
attributes.each_value do |attr| attributes.each_value do |attr|
next if attr[:name].blank? next if attr[:name].blank? && attr[:value].blank?
previous = old_fields.find { |item| item['value'] == attr[:value] } previous = old_fields.find { |item| item['value'] == attr[:value] }

View file

@ -17,6 +17,6 @@ class AccountSummary < ApplicationRecord
has_many :follow_recommendation_suppressions, primary_key: :account_id, foreign_key: :account_id, inverse_of: false, dependent: nil has_many :follow_recommendation_suppressions, primary_key: :account_id, foreign_key: :account_id, inverse_of: false, dependent: nil
scope :safe, -> { where(sensitive: false) } scope :safe, -> { where(sensitive: false) }
scope :localized, ->(locale) { order(Arel::Nodes::Case.new.when(arel_table[:language].eq(locale)).then(1).else(0).desc) } scope :localized, ->(locale) { in_order_of(:language, [locale], filter: false) }
scope :filtered, -> { where.missing(:follow_recommendation_suppressions) } scope :filtered, -> { where.missing(:follow_recommendation_suppressions) }
end end

View file

@ -116,6 +116,10 @@ class Form::AdminSettings
favicon favicon
).freeze ).freeze
DIGEST_KEYS = %i(
custom_css
).freeze
OVERRIDEN_SETTINGS = { OVERRIDEN_SETTINGS = {
authorized_fetch: :authorized_fetch_mode?, authorized_fetch: :authorized_fetch_mode?,
}.freeze }.freeze
@ -176,6 +180,8 @@ class Form::AdminSettings
KEYS.each do |key| KEYS.each do |key|
next unless instance_variable_defined?(:"@#{key}") next unless instance_variable_defined?(:"@#{key}")
cache_digest_value(key) if DIGEST_KEYS.include?(key)
if UPLOAD_KEYS.include?(key) if UPLOAD_KEYS.include?(key)
public_send(key).save public_send(key).save
else else
@ -187,6 +193,18 @@ class Form::AdminSettings
private private
def cache_digest_value(key)
Rails.cache.delete(:"setting_digest_#{key}")
key_value = instance_variable_get(:"@#{key}")
if key_value.present?
Rails.cache.write(
:"setting_digest_#{key}",
Digest::SHA256.hexdigest(key_value)
)
end
end
def typecast_value(key, value) def typecast_value(key, value)
if BOOLEAN_KEYS.include?(key) if BOOLEAN_KEYS.include?(key)
value == '1' value == '1'

View file

@ -20,6 +20,9 @@ class Invite < ApplicationRecord
include Expireable include Expireable
COMMENT_SIZE_LIMIT = 420 COMMENT_SIZE_LIMIT = 420
ELIGIBLE_CODE_CHARACTERS = [*('a'..'z'), *('A'..'Z'), *('0'..'9')].freeze
HOMOGLYPHS = %w(0 1 I l O).freeze
VALID_CODE_CHARACTERS = ELIGIBLE_CODE_CHARACTERS - HOMOGLYPHS
belongs_to :user, inverse_of: :invites belongs_to :user, inverse_of: :invites
has_many :users, inverse_of: :invite, dependent: nil has_many :users, inverse_of: :invite, dependent: nil
@ -38,7 +41,7 @@ class Invite < ApplicationRecord
def set_code def set_code
loop do loop do
self.code = ([*('a'..'z'), *('A'..'Z'), *('0'..'9')] - %w(0 1 I l O)).sample(8).join self.code = VALID_CODE_CHARACTERS.sample(8).join
break if Invite.find_by(code: code).nil? break if Invite.find_by(code: code).nil?
end end
end end

View file

@ -20,7 +20,6 @@ class NotificationGroup < ActiveModelSerializers::Model
group_keys = grouped_notifications.pluck(:group_key) group_keys = grouped_notifications.pluck(:group_key)
with_emoji_reaction = grouped_notifications.any? { |notification| notification.type == :emoji_reaction } with_emoji_reaction = grouped_notifications.any? { |notification| notification.type == :emoji_reaction }
notifications.any? { |notification| notification.type == :list_status }
groups_data = load_groups_data(notifications.first.account_id, group_keys, pagination_range: pagination_range) groups_data = load_groups_data(notifications.first.account_id, group_keys, pagination_range: pagination_range)
accounts_map = Account.where(id: groups_data.values.pluck(1).flatten).index_by(&:id) accounts_map = Account.where(id: groups_data.values.pluck(1).flatten).index_by(&:id)
@ -74,6 +73,7 @@ class NotificationGroup < ActiveModelSerializers::Model
return [] if activity_ids.empty? return [] if activity_ids.empty?
EmojiReaction.where(id: activity_ids) EmojiReaction.where(id: activity_ids)
.order(id: :desc)
.each_with_object({}) { |e, h| h[e.name] = (h[e.name] || []).push(e) } .each_with_object({}) { |e, h| h[e.name] = (h[e.name] || []).push(e) }
.to_a .to_a
.map { |pair| NotificationEmojiReactionGroup.new(emoji_reaction: pair[1].first, sample_accounts: pair[1].take(SAMPLE_ACCOUNTS_SIZE).map(&:account)) } .map { |pair| NotificationEmojiReactionGroup.new(emoji_reaction: pair[1].first, sample_accounts: pair[1].take(SAMPLE_ACCOUNTS_SIZE).map(&:account)) }

View file

@ -61,11 +61,7 @@ class Poll < ApplicationRecord
votes.where(account: account).pluck(:choice) votes.where(account: account).pluck(:choice)
end end
delegate :local?, to: :account delegate :local?, :remote?, to: :account
def remote?
!local?
end
def emojis def emojis
@emojis ||= CustomEmoji.from_text(options.join(' '), account.domain) @emojis ||= CustomEmoji.from_text(options.join(' '), account.domain)

Some files were not shown because too many files have changed in this diff Show more